.visually-hidden:not(:focus):not(:active) {
  clip: rect(0 0 0 0);
  clip-path: inset(100%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px; }

header {
  background: #000;
  font-family: "Agenda Medium", Arial, Helvetica, sans-serif; }
  @media screen and (min-width: 960px) {
    header {
      position: relative;
      z-index: 95; } }
  header ul li {
    padding: 0;
    margin: 0; }
    header ul li:before {
      display: none; }
  header #header-region > div, header .header-bottom > div {
    max-width: 1340px;
    margin: 0 auto;
    position: relative;
    padding: 0;
    width: 100%; }
    @media screen and (min-width: 768px) {
      header #header-region > div, header .header-bottom > div {
        box-sizing: border-box;
        padding: 0 30px; } }
  header #header-region {
    border-bottom: 1px solid #484c50;
    padding: 20px 0; }
    @media screen and (min-width: 960px) {
      header #header-region {
        padding: 15px 0; } }
    header #header-region section {
      background: none; }
    header #header-region section.logo {
      padding: 0; }
      header #header-region section.logo > div {
        padding: 0;
        max-width: none;
        margin: 0; }
    @media screen and (min-width: 768px) {
      header #header-region section.logo {
        display: table;
        width: 100%;
        height: 100px; } }
    @media screen and (min-width: 768px) {
      header #header-region section.logo > div {
        display: table-cell;
        vertical-align: middle; } }
    header #header-region section.topco_logo {
      display: block;
      height: auto; }
      @media screen and (max-width: 767px) {
        header #header-region section.topco_logo {
          display: none; } }
      header #header-region section.topco_logo > div {
        display: block; }
    header #header-region .topco_logo .logowrap > a {
      display: block;
      width: 92px;
      height: 35px;
      text-indent: -9999px;
      text-align: left;
      background: url(../img/logos/contact-devere-logo.png) no-repeat center center;
      background-size: 92px auto;
      margin: 0 auto; }
      @media screen and (min-width: 768px) {
        header #header-region .topco_logo .logowrap > a {
          top: 50%;
          left: 40px;
          margin: -17px 0 0;
          position: absolute;
          z-index: 32; } }
      @media screen and (min-width: 960px) {
        header #header-region .topco_logo .logowrap > a {
          width: 132px !important;
          background-size: 132px auto;
          height: 50px;
          margin: -25px 0 0; } }
      header #header-region .topco_logo .logowrap > a img {
        display: none !important; }
    header #header-region .logo .logo {
      width: 100%;
      box-sizing: border-box;
      padding: 0 20px;
      margin: 0 auto;
      position: relative;
      z-index: 30; }
      @media screen and (min-width: 768px) {
        header #header-region .logo .logo {
          width: 480px; }
          header #header-region .logo .logo.with-name {
            padding-top: 6px; } }
      @media screen and (min-width: 960px) {
        header #header-region .logo .logo {
          width: 600px; } }
      @media screen and (min-width: 960px) {
        header #header-region .logo .logo.logo-general .img {
          height: 83px;
          background-size: 221px 83px;
          width: 221px; } }
    header #header-region section.block-ph-booking {
      padding: 0;
      margin: 20px 0 -21px; }
      @media screen and (min-width: 768px) {
        header #header-region section.block-ph-booking {
          margin: 20px -30px -21px;
          border-top: 1px solid #e4e5e6;
          border-bottom: 1px solid #e4e5e6; } }
      @media screen and (min-width: 960px) {
        header #header-region section.block-ph-booking {
          display: none; } }
      header #header-region section.block-ph-booking > div {
        padding: 0; }
      header #header-region section.block-ph-booking .item-list ul {
        margin: 0; }
        header #header-region section.block-ph-booking .item-list ul li {
          margin: 0; }
      header #header-region section.block-ph-booking a {
        background: #f5f4f4;
        display: block;
        padding: 14px 20px;
        text-align: center;
        font-size: 14px;
        text-decoration: none; }
        header #header-region section.block-ph-booking a .contact-label {
          background: url(../img/icons/phone-mono.png) no-repeat 0 center;
          background-size: 11px auto;
          padding: 0 0 0 20px;
          display: inline-block;
          line-height: 20px; }
    header #header-region .guest-signup-header {
      display: block;
      height: 100px;
      align-items: center;
      box-sizing: border-box; }
      @media screen and (min-width: 500px) {
        header #header-region .guest-signup-header {
          display: flex; } }
      header #header-region .guest-signup-header section.block-ph-guest-portal.logo {
        height: auto;
        display: block;
        margin-bottom: 25px; }
        @media screen and (min-width: 500px) {
          header #header-region .guest-signup-header section.block-ph-guest-portal.logo {
            width: 50%;
            margin-bottom: 0; } }
        header #header-region .guest-signup-header section.block-ph-guest-portal.logo .applause-logo {
          text-align: center;
          width: auto; }
          @media screen and (min-width: 500px) {
            header #header-region .guest-signup-header section.block-ph-guest-portal.logo .applause-logo {
              text-align: right; } }
        header #header-region .guest-signup-header section.block-ph-guest-portal.logo .showtime-logo {
          text-align: center;
          width: auto; }
          header #header-region .guest-signup-header section.block-ph-guest-portal.logo .showtime-logo .img {
            width: 225px;
            background-size: auto 43px;
            height: 43px; }
            @media screen and (min-width: 960px) {
              header #header-region .guest-signup-header section.block-ph-guest-portal.logo .showtime-logo .img {
                background-size: auto 51px;
                height: 51px;
                width: 267px; } }
            @media screen and (min-width: 1180px) {
              header #header-region .guest-signup-header section.block-ph-guest-portal.logo .showtime-logo .img {
                background-size: auto 62px;
                height: 62px;
                width: 325px; } }
          @media screen and (min-width: 500px) {
            header #header-region .guest-signup-header section.block-ph-guest-portal.logo .showtime-logo {
              text-align: left; } }
        header #header-region .guest-signup-header section.block-ph-guest-portal.logo > div {
          display: block; }
      header #header-region .guest-signup-header section.topco_logo {
        position: absolute; }
        header #header-region .guest-signup-header section.topco_logo .logowrap a {
          left: 26px; }
  header .header-bottom {
    position: relative;
    z-index: 25; }
    @media screen and (min-width: 960px) {
      header .header-bottom {
        position: relative; } }
    header .header-bottom .utility {
      text-align: center;
      margin: 0;
      padding: 40px 0 0;
      background: none;
      position: relative; }
      @media screen and (min-width: 768px) {
        header .header-bottom .utility {
          padding: 0; } }
      header .header-bottom .utility > div {
        margin: 0;
        padding: 0;
        max-width: none; }
      header .header-bottom .utility .menu-block-wrapper > ul {
        margin: 0; }
        header .header-bottom .utility .menu-block-wrapper > ul > li {
          font-size: 16px;
          padding: 0;
          list-style: none;
          margin: 0;
          position: static; }
          header .header-bottom .utility .menu-block-wrapper > ul > li > span, header .header-bottom .utility .menu-block-wrapper > ul > li a {
            display: block;
            line-height: 40px;
            color: #fff;
            text-decoration: none !important;
            cursor: pointer; }
            header .header-bottom .utility .menu-block-wrapper > ul > li > span span, header .header-bottom .utility .menu-block-wrapper > ul > li a span {
              display: inline-block;
              vertical-align: top; }
          header .header-bottom .utility .menu-block-wrapper > ul > li > span {
            position: absolute;
            left: 0;
            top: 0;
            width: 29%; }
          @media screen and (min-width: 768px) {
            header .header-bottom .utility .menu-block-wrapper > ul > li.call {
              display: none; } }
          header .header-bottom .utility .menu-block-wrapper > ul > li.call > span, header .header-bottom .utility .menu-block-wrapper > ul > li.call a {
            position: absolute;
            left: 0;
            top: 0;
            width: 29%; }
          header .header-bottom .utility .menu-block-wrapper > ul > li.call span span, header .header-bottom .utility .menu-block-wrapper > ul > li.call a span {
            padding-left: 21px;
            background: url(../img/icons/phone.png) no-repeat 0 center;
            background-size: 11px auto; }
          header .header-bottom .utility .menu-block-wrapper > ul > li.call span.active span, header .header-bottom .utility .menu-block-wrapper > ul > li.call a.active span {
            padding-left: 22px;
            background: url(../img/icons/widget-close.png) no-repeat 0 center;
            background-size: 15px auto; }
          header .header-bottom .utility .menu-block-wrapper > ul > li.call ul {
            margin: 0 auto;
            padding: 17px 20px 30px;
            display: none;
            max-width: 280px; }
            header .header-bottom .utility .menu-block-wrapper > ul > li.call ul li {
              padding: 0;
              list-style: none;
              border-left: 1px solid #484c50;
              float: left;
              width: 50%;
              box-sizing: border-box; }
              header .header-bottom .utility .menu-block-wrapper > ul > li.call ul li:first-child {
                border: none; }
              header .header-bottom .utility .menu-block-wrapper > ul > li.call ul li a {
                line-height: 1.2;
                padding: 12px 8px;
                -webkit-transition: all 0.25s ease-in-out;
                -moz-transition: all 0.25s ease-in-out;
                -ms-transition: all 0.25s ease-in-out;
                transition: all 0.25s ease-in-out;
                font-family: "Agenda Regular", Arial, Helvetica, sans-serif;
                color: #cbc9c7; }
                header .header-bottom .utility .menu-block-wrapper > ul > li.call ul li a:hover {
                  background: #4c4c4c; }
                header .header-bottom .utility .menu-block-wrapper > ul > li.call ul li a span {
                  display: block;
                  vertical-align: auto;
                  color: #fff;
                  font-family: "Agenda Medium", Arial, Helvetica, sans-serif; }
          @media screen and (min-width: 768px) {
            header .header-bottom .utility .menu-block-wrapper > ul > li.book {
              float: none;
              margin: 0 auto;
              width: 135px; } }
          @media screen and (min-width: 1180px) {
            header .header-bottom .utility .menu-block-wrapper > ul > li.book {
              position: absolute;
              z-index: 10;
              right: 0;
              top: 0; } }
          header .header-bottom .utility .menu-block-wrapper > ul > li.book > span {
            font-size: 17px;
            min-width: 0;
            padding: 0;
            color: #fff;
            left: 29%;
            width: 42%; }
            @media screen and (min-width: 768px) {
              header .header-bottom .utility .menu-block-wrapper > ul > li.book > span {
                line-height: 37px;
                position: relative;
                left: auto !important;
                width: auto !important; } }
            @media screen and (min-width: 960px) {
              header .header-bottom .utility .menu-block-wrapper > ul > li.book > span {
                line-height: 44px; }
                header .header-bottom .utility .menu-block-wrapper > ul > li.book > span.active span {
                  background-size: 21px auto;
                  padding-left: 31px; } }
            header .header-bottom .utility .menu-block-wrapper > ul > li.book > span span {
              padding-left: 26px;
              background: url(../img/icons/bell.png) no-repeat 0 center;
              background-size: 16px auto; }
            header .header-bottom .utility .menu-block-wrapper > ul > li.book > span.active-snuggle-booking-state {
              background: #606060; }
              header .header-bottom .utility .menu-block-wrapper > ul > li.book > span.active-snuggle-booking-state span {
                background: url(../img/icons/widget-close.png) no-repeat 0 center;
                background-size: 18px auto;
                padding-left: 28px; }
          @media screen and (min-width: 768px) {
            header .header-bottom .utility .menu-block-wrapper > ul > li.menu {
              float: none;
              width: auto; } }
          header .header-bottom .utility .menu-block-wrapper > ul > li.menu > span {
            display: none; }
          header .header-bottom .utility .menu-block-wrapper > ul > li .menu-toggle {
            display: block;
            line-height: 40px;
            color: #fff;
            cursor: pointer;
            position: absolute;
            left: 71%;
            width: 29%;
            top: 0;
            right: 0; }
            @media screen and (min-width: 768px) {
              header .header-bottom .utility .menu-block-wrapper > ul > li .menu-toggle {
                position: absolute;
                top: -83px;
                z-index: 10;
                line-height: 26px;
                box-sizing: border-box;
                background: #000;
                text-align: right;
                height: 26px;
                left: auto !important;
                width: auto !important; } }
            @media screen and (min-width: 768px) {
              header .header-bottom .utility .menu-block-wrapper > ul > li .menu-toggle .txt {
                display: none !important; } }
            header .header-bottom .utility .menu-block-wrapper > ul > li .menu-toggle .txt.close {
              display: none; }
            @media screen and (min-width: 768px) {
              header .header-bottom .utility .menu-block-wrapper > ul > li .menu-toggle .txt {
                margin: 0 14px 0 0; }
                header .header-bottom .utility .menu-block-wrapper > ul > li .menu-toggle .txt.open {
                  display: none !important; } }
            header .header-bottom .utility .menu-block-wrapper > ul > li .menu-toggle .icon {
              line-height: 1;
              display: inline-block;
              vertical-align: top; }
              @media screen and (min-width: 768px) {
                header .header-bottom .utility .menu-block-wrapper > ul > li .menu-toggle .icon {
                  width: 26px !important;
                  height: 26px !important;
                  margin: 0 !important;
                  text-align: center;
                  line-height: 26px;
                  position: absolute;
                  right: 0;
                  top: 0; } }
              header .header-bottom .utility .menu-block-wrapper > ul > li .menu-toggle .icon.close {
                display: none; }
                @media screen and (min-width: 768px) {
                  header .header-bottom .utility .menu-block-wrapper > ul > li .menu-toggle .icon.close {
                    font-size: 30px; } }
              header .header-bottom .utility .menu-block-wrapper > ul > li .menu-toggle .icon.open {
                display: inline-block;
                vertical-align: top;
                width: 14px;
                height: 14px;
                position: relative;
                margin: 14px 0 0 10px; }
                header .header-bottom .utility .menu-block-wrapper > ul > li .menu-toggle .icon.open .line {
                  display: block;
                  width: 14px;
                  height: 2px;
                  background: #fff;
                  text-indent: -9999px;
                  text-align: left;
                  position: absolute;
                  top: 0;
                  left: 0; }
                  @media screen and (min-width: 768px) {
                    header .header-bottom .utility .menu-block-wrapper > ul > li .menu-toggle .icon.open .line {
                      width: 26px;
                      height: 4px; } }
                  header .header-bottom .utility .menu-block-wrapper > ul > li .menu-toggle .icon.open .line.line-2 {
                    top: 6px; }
                    @media screen and (min-width: 768px) {
                      header .header-bottom .utility .menu-block-wrapper > ul > li .menu-toggle .icon.open .line.line-2 {
                        top: 11px; } }
                  header .header-bottom .utility .menu-block-wrapper > ul > li .menu-toggle .icon.open .line.line-3 {
                    top: 12px; }
                    @media screen and (min-width: 768px) {
                      header .header-bottom .utility .menu-block-wrapper > ul > li .menu-toggle .icon.open .line.line-3 {
                        top: 22px; } }
            @media screen and (min-width: 768px) {
              header .header-bottom .utility .menu-block-wrapper > ul > li .menu-toggle.active {
                width: 100% !important; } }
            header .header-bottom .utility .menu-block-wrapper > ul > li .menu-toggle.active .txt.close {
              display: inline; }
            header .header-bottom .utility .menu-block-wrapper > ul > li .menu-toggle.active .txt.open {
              display: none; }
            header .header-bottom .utility .menu-block-wrapper > ul > li .menu-toggle.active .icon.close {
              margin: 13px 0 0 10px;
              font-size: 18px;
              font-weight: 600;
              display: inline-block; }
              @media screen and (min-width: 768px) {
                header .header-bottom .utility .menu-block-wrapper > ul > li .menu-toggle.active .icon.close {
                  font-size: 30px; } }
            header .header-bottom .utility .menu-block-wrapper > ul > li .menu-toggle.active .icon.open {
              display: none; }
            @media screen and (min-width: 768px) {
              header .header-bottom .utility .menu-block-wrapper > ul > li .menu-toggle.active .open {
                display: none !important; } }
          header .header-bottom .utility .menu-block-wrapper > ul > li.account {
            display: none; }
            @media screen and (min-width: 768px) {
              header .header-bottom .utility .menu-block-wrapper > ul > li.account {
                float: none;
                position: absolute;
                right: 50px;
                top: -83px;
                line-height: 1;
                display: block;
                width: auto; }
                header .header-bottom .utility .menu-block-wrapper > ul > li.account a {
                  line-height: 26px; } }
    header .header-bottom .utility-old {
      display: none; }
    header .header-bottom nav {
      padding: 17px 20px 30px;
      display: none; }
      @media screen and (min-width: 768px) {
        header .header-bottom nav {
          position: absolute;
          right: 0;
          top: -6px;
          width: 180px;
          background: #000;
          z-index: 80;
          padding: 0 0 40px 44px;
          box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2); } }
      @media screen and (min-width: 1180px) {
        header .header-bottom nav {
          display: block !important;
          position: static;
          right: auto;
          top: auto;
          width: auto;
          background: none;
          padding: 0;
          box-shadow: none; } }
      header .header-bottom nav section {
        padding: 0;
        max-width: none;
        margin: 0;
        background: none; }
        header .header-bottom nav section > div {
          padding: 0;
          margin: 0;
          max-width: none; }
      header .header-bottom nav ul {
        margin: 0; }
        header .header-bottom nav ul li {
          list-style: none;
          padding: 0;
          margin: 0;
          border-bottom: 1px solid #484c50;
          line-height: 1.2; }
          header .header-bottom nav ul li a, header .header-bottom nav ul li span {
            padding: 12px 8px;
            display: block;
            font-size: 16px;
            text-decoration: none !important;
            color: #fff;
            -webkit-transition: all 0.25s ease-in-out;
            -moz-transition: all 0.25s ease-in-out;
            -ms-transition: all 0.25s ease-in-out;
            transition: all 0.25s ease-in-out; }
            @media screen and (min-width: 768px) {
              header .header-bottom nav ul li a, header .header-bottom nav ul li span {
                padding-top: 0;
                padding-bottom: 0;
                line-height: 44px; } }
            header .header-bottom nav ul li a:hover, header .header-bottom nav ul li span:hover {
              background: #4c4c4c;
              color: #fff; }
          header .header-bottom nav ul li span {
            cursor: default; }
          header .header-bottom nav ul li.active-trail > a, header .header-bottom nav ul li.active-hdr > a, header .header-bottom nav ul li.active-hdr > span {
            background: #4c4c4c;
            color: #fff; }
          header .header-bottom nav ul li ul li {
            border-bottom: none; }
            header .header-bottom nav ul li ul li a {
              padding-left: 20px;
              padding-right: 20px; }
              @media screen and (min-width: 768px) {
                header .header-bottom nav ul li ul li a {
                  line-height: 1.4;
                  padding: 10px 20px; } }
      header .header-bottom nav .mainnav {
        display: none; }
        @media screen and (max-width: 1179px) {
          header .header-bottom nav .mainnav ul li ul {
            display: block !important;
            opacity: 1 !important; } }
        @media screen and (min-width: 1180px) {
          header .header-bottom nav .mainnav {
            text-align: left;
            display: block; }
            header .header-bottom nav .mainnav ul {
              display: inline-block;
              vertical-align: top; }
              header .header-bottom nav .mainnav ul.contextual-links {
                display: none; }
                header .header-bottom nav .mainnav ul.contextual-links li {
                  float: none; }
              header .header-bottom nav .mainnav ul li {
                float: left;
                border: none;
                position: relative; }
                header .header-bottom nav .mainnav ul li a, header .header-bottom nav .mainnav ul li span {
                  padding: 0 22px; }
                header .header-bottom nav .mainnav ul li ul {
                  position: absolute;
                  left: 0;
                  top: 44px;
                  z-index: 80;
                  background: #000;
                  width: 200px;
                  text-align: left;
                  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
                  display: none; }
                  header .header-bottom nav .mainnav ul li ul li {
                    float: none;
                    border-top: 1px solid #242628; }
                    header .header-bottom nav .mainnav ul li ul li:first-child {
                      border: none !important; }
                    header .header-bottom nav .mainnav ul li ul li a {
                      padding: 10px 20px; } }
        @media screen and (min-width: 1400px) {
          header .header-bottom nav .mainnav {
            text-align: center; } }
        header .header-bottom nav .mainnav .account {
          display: none; }
      @media screen and (min-width: 768px) {
        header .header-bottom nav .hamburger_nav {
          max-height: 50vh;
          overflow: scroll; } }
      @media screen and (min-width: 1180px) {
        header .header-bottom nav .hamburger_nav {
          display: none;
          background: #000;
          padding: 0 45px 45px;
          position: absolute;
          right: 0;
          top: -45px;
          width: 240px;
          z-index: 90;
          box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
          /*
          .mobile-only {
            display: none;
          }
          */ } }
      header .header-bottom nav .hamburger_nav li {
        position: relative; }
        @media screen and (min-width: 768px) {
          header .header-bottom nav .hamburger_nav li.account {
            display: none; } }
      header .header-bottom nav .hamburger_nav .accordion-plus-minus {
        box-sizing: border-box;
        margin: 0;
        padding: 0;
        position: absolute;
        right: 15px;
        top: 15px;
        z-index: 13; }
        header .header-bottom nav .hamburger_nav .accordion-plus-minus:hover {
          background-color: transparent; }
  @media screen and (min-width: 1180px) {
    header .header-bottom-holder {
      position: relative; } }
  header .header-booking {
    display: none;
    background: #606060;
    position: relative;
    z-index: 20; }
    @media screen and (min-width: 768px) {
      header .header-booking {
        /*box-shadow: 0 5px 3px -3px rgba(0, 0, 0, 0.2);*/ } }
    @media screen and (min-width: 1180px) {
      header .header-booking {
        position: absolute;
        left: 0;
        right: 0;
        top: 44px;
        width: 100%;
        z-index: 5; } }
    header .header-booking > div {
      padding: 30px 0; }
      header .header-booking > div .booking-block {
        padding: 0;
        background: none;
        border: none; }
        header .header-booking > div .booking-block h3 {
          display: none; }
        header .header-booking > div .booking-block .booking-widget {
          padding: 0; }
  header .fixed {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    width: 100%;
    z-index: 80; }
    header .fixed > .wrap {
      max-width: 1800px;
      margin: 0 auto;
      position: relative;
      border-bottom: 1px solid #484c50; }
    header .fixed .header-bottom {
      background: #000; }

.ph-cookie-bar {
  background: #2f2f2f;
  padding: 14px 0;
  color: #cbc9c7;
  text-align: center;
  box-shadow: 0px -15px 10px -10px rgba(0, 0, 0, 0.2) inset; }
  .ph-cookie-bar a {
    color: #cbc9c7; }
  @media screen and (min-width: 768px) {
    .ph-cookie-bar .cookie-bar-text {
      display: inline-block;
      vertical-align: middle;
      margin: 0 22px 0 0; } }
  .ph-cookie-bar .cookie-bar-text p {
    margin: 0;
    font-size: 15px; }
  .ph-cookie-bar .cookie-bar-buttons {
    margin: 20px 0 0; }
    @media screen and (min-width: 768px) {
      .ph-cookie-bar .cookie-bar-buttons {
        display: inline-block;
        vertical-align: middle;
        margin: 0; } }
    .ph-cookie-bar .cookie-bar-buttons button {
      background: none;
      text-transform: uppercase;
      text-decoration: underline;
      position: relative;
      padding: 0 0 0 0;
      line-height: 22px;
      width: auto; }

.block-ph-file-link-block {
  padding-top: 0;
  padding-bottom: 0;
  text-align: center; }

/*# sourceMappingURL=header.css.map */