/* Martel Regular for headings, p and li: woff2 (was a 105 KB .otf). Licence: ../../fonts/martel/OFL.txt */
@font-face {
    font-family: 'martel';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../../fonts/martel/martel-latin-400.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
    font-family: 'martel';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../../fonts/martel/martel-latin-ext-400.woff2') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* Nunito Sans, self-hosted (was Google Fonts, which is blocked in mainland China).
   Variable font: one file per subset covers weights 200-800. Licence: ../../fonts/nunito-sans/OFL.txt */
@font-face {
    font-family: 'Nunito Sans';
    font-style: normal;
    font-weight: 200 800;
    font-display: swap;
    src: url('../../fonts/nunito-sans/nunito-sans-latin-variable.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
    font-family: 'Nunito Sans';
    font-style: normal;
    font-weight: 200 800;
    font-display: swap;
    src: url('../../fonts/nunito-sans/nunito-sans-latin-ext-variable.woff2') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* Fail-safe: lift the full-screen loading curtain after 3s even if a script never finishes.
   plataforma/js/main.js still removes it sooner when everything loads normally. */
#ftco-loader.show {
    -webkit-animation: ftco-loader-failsafe 0s linear 3s forwards;
    animation: ftco-loader-failsafe 0s linear 3s forwards;
}
@-webkit-keyframes ftco-loader-failsafe { to { opacity: 0; visibility: hidden; } }
@keyframes ftco-loader-failsafe { to { opacity: 0; visibility: hidden; } }

html, body{ margin: 0; padding: 0; overflow-x: hidden;}

/* Menu button icon: keep the 1px nudge the old Open Iconic glyph had */
.navbar-toggler .fa { position: relative; top: 1px; }

h1,h2,h3,h4,h5,h6, p, ul li, ol li { font-family: 'martel',serif; }
.h1,.h2,.h3,.h4,.h5,.h6 { font-family: 'martel',serif !important; }

.text-shadow{
    text-shadow: 0 1px 3px rgba(0,0,0,.4);
}

#main-header .navbar-brand img {
    width: auto;
    max-width: none;
    height: 54px;
}

#main-header {
	background: rgba(242,128,0,.9) !important;
    /* background: linear-gradient(270deg,rgba(156,112,204,.9) 157px,rgba(242,128,0,.9) 0)!important; */
}

.orange{
    color: #F68A33;
}

.btn-outline{
    border: 1px solid #000;
}

.btn-outline-white{
    border: 1px solid #fff;
}

.navbar-light .navbar-nav .nav-link {
	color: #fff;
	transition: background .2s ease,color .2s ease;
}

.navbar-light .navbar-nav .nav-link{
	position: relative;
	text-transform: uppercase;
	font-size: 12.8px;
	font-weight: 600;
	padding: 22px 1.75em 19px;
	border-bottom: 2px solid transparent;
	height: 100%;
	font-family: Helvetica;
}

.navbar-light .navbar-nav li:hover>.nav-link, .navbar-light .navbar-nav li.active>.nav-link{
    background: #fff;
    color: #505050;
}

blockquote {
    border: 0;
    margin: 0 0 -.8em;
    padding: 0;
    color: #F68A33;
    font-style: normal;
    font-weight: 600;
}

.block-content > h1,
.block-content > h2,
.block-content > h3,
.block-content > h4,
.block-content > h5,
.block-content > h6{
	color: #F68A33;
    margin-bottom: 0 !important;
}

a, a:hover{
	/* color: #F68A33; */
}

@media (max-width: 768px) {
	header.masterhead, header.innerhead, header.contacthead, header.best-culture{
	    padding-top: 50%;
	}
}

@media (max-width: 500px) {
	header.masterhead, header.innerhead, header.contacthead, header.best-culture{
	    padding-top: 80%;
	}
}

.ftco-navbar-light{
    z-index: 10;
}

@media (max-width: 1024px) { /*ipad pro*/
    .content-overlay {
        /* top: 1; */
        margin-top: 80% !important;
    }
}

@media (max-width: 768px) { /*ipad*/
    .content-overlay {
        /* top: 1; */
        margin-top: 80% !important;
    }
    .gpm-title{
        font-size: 1.8rem !important;
    }
    .sc-title{
        font-size: 1.4rem !important;
    }
}

@media (max-width: 412px) { /*phone*/
    .content-overlay {
        /* top: 1; */
        margin-top: 50% !important;
        text-align: center;
    }
    .gpm-title{
        font-size: 2rem !important;
    }
    .sc-title{
        font-size: 1rem !important;
    }
    .date-title{
        font-size: 1rem !important;
    }
}

._about-dubai-section:before {
    content: '';
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    z-index: 3;
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#004e84+0,7db9e8+93&1+0,1+1,0+17 */
background: -moz-linear-gradient(top,  rgba(0,78,132,1) 0%, rgba(1,79,133,1) 1%, rgba(23,97,150,0) 17%, rgba(125,185,232,0) 93%); /* FF3.6-15 */
background: -webkit-linear-gradient(top,  rgba(0,78,132,1) 0%,rgba(1,79,133,1) 1%,rgba(23,97,150,0) 17%,rgba(125,185,232,0) 93%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom,  rgba(0,78,132,1) 0%,rgba(1,79,133,1) 1%,rgba(23,97,150,0) 17%,rgba(125,185,232,0) 93%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#004e84', endColorstr='#007db9e8',GradientType=0 ); /* IE6-9 */
}

.ftco-section.about-dubai-section .hero-wrap .overlay,
.ftco-section.expo-2020-section .hero-wrap .overlay,
.ftco-section.hotel-info-section .hero-wrap .overlay{
    opacity: 0.5;
}

.ftco-section.about-dubai-section{
    /* -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 84%);
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 84%); */
}

.ftco-section.expo-2020-section{
    margin-top: -200px;
    -webkit-clip-path: polygon(0 0, 100% 14%, 100% 84%, 0 100%);
    clip-path: polygon(0 0, 100% 14%, 100% 84%, 0 100%);
}

.ftco-section.hotel-info-section{
    margin-top: -200px;
    /* -webkit-clip-path: polygon(0 14%, 100% 0, 100% 100%, 0 100%);
    -webkit-clip-path: polygon(0 14%, 100% 0, 100% 100%, 0 100%); */

    /*new*/
    /* -webkit-clip-path: polygon(0 0, 100% 14%, 100% 100%, 0 100%);
    clip-path: polygon(0 0, 100% 14%, 100% 100%, 0 100%); */
}

.ftco-section.expo-2020-section .hero-wrap,
.ftco-section.hotel-info-section .hero-wrap,
.ftco-section.about-dubai-section .hero-wrap{
    height: 100vh;
}

@media (max-width: 1366px) {
    .ftco-section.expo-2020-section .hero-wrap,
    .ftco-section.hotel-info-section .hero-wrap,
    .ftco-section.about-dubai-section .hero-wrap{
        height: calc(100vh + 100px);
    }
}

@media (max-width: 1024px) {
    .ftco-section.expo-2020-section{
        margin-top: -250px;
        -webkit-clip-path: polygon(0 0, 100% 14%, 100% 94%, 0 100%);
        clip-path: polygon(0 0, 100% 14%, 100% 94%, 0 100%);
    }

    .ftco-section.hotel-info-section{
        margin-top: -220px;
    }
}

@media (max-width: 412px) {
    .ftco-section.expo-2020-section .hero-wrap{
        height: calc(100vh + 400px);
    }

    .ftco-section.expo-2020-section{
        -webkit-clip-path: polygon(0 0, 100% 14%, 100% 94%, 0 100%);
        clip-path: polygon(0 0, 100% 14%, 100% 94%, 0 100%);
    }
}

.agenda.nav-link{
    background: #0B2254;
    color: #fff;
    /* padding: 20px; */
    margin: 0px 5px;
    margin-bottom: 5px;
    padding: 5px;
    font-size: 12px;
}

@media (max-width: 1200px) {
    .agenda.nav-link{
        padding: 5px;
        font-size: 12px;
    }
}

.agenda.nav-link.active{
    background: #fff;
    color: #000;
    border: 1px solid #000;
}

.background-image-holder {
    position: fixed;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    background-size: cover !important;
    background-position: 50% 50% !important;
    background-repeat: no-repeat;
    z-index: 0;
    transition: opacity .3s linear;
    -webkit-transition: opacity .3s linear;
    opacity: 0;
    background: #252525;
}

.bg-img {
    background-position: center center !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
}

/* activities section */

.single-activity-slide {
  position: relative;
  z-index: 1;
  height: 800px;
  overflow: hidden;
  border-right: 1px solid rgba(255, 255, 255, 0.2);
  border-left: 1px solid rgba(255, 255, 255, 0.2); }
  @media only screen and (max-width: 767px) {
    .single-activity-slide {
      height: 650px; } }
  @media only screen and (min-width: 992px) and (max-width: 1199px) {
    .single-activity-slide {
      height: 700px; } }
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .single-activity-slide {
      height: 650px; } }
  .single-activity-slide .project-content {
    position: absolute;
    width: 100%;
    height: 100px;
    bottom: 0;
    left: 0;
    z-index: 10;
    background-color: rgba(0, 0, 0, 0.3);
    padding: 0 30px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; }
    .single-activity-slide .project-content .text h6 {
      color: #ffffff; }
    .single-activity-slide .project-content .text h5 {
      color: #ffffff;
      margin-bottom: 0; }
  .single-activity-slide .hover-effects {
    position: absolute;
    width: 100%;
    bottom: 0;
    left: 0;
    background-color: #0B2254;
    z-index: 100;
    -webkit-transform: translateY(100%);
    -ms-transform: translateY(100%);
    transform: translateY(100%);
    opacity: 0;
    visibility: hidden;
    -webkit-transition-duration: 800ms;
    -o-transition-duration: 800ms;
    transition-duration: 800ms; }
    .single-activity-slide .hover-effects .text {
      padding: 30px; }
      .single-activity-slide .hover-effects .text h6 {
        color: #ffffff; }
      .single-activity-slide .hover-effects .text h5 {
        color: #ffffff;
        margin-bottom: 10px; }
      .single-activity-slide .hover-effects .text p {
        margin-bottom: 0;
        color: #ffffff; }
    .single-activity-slide .hover-effects .project-btn {
      font-size: 16px;
      padding: 0 30px;
      display: block;
      background-color: #0e2737;
      border-radius: 0;
      color: #ffffff;
      text-align: left;
      font-weight: 500;
      height: 100px;
      width: 100%;
      line-height: 100px; }
  .single-activity-slide.active .hover-effects {
    -webkit-transform: translateY(0%);
    -ms-transform: translateY(0%);
    transform: translateY(0%);
    opacity: 1;
    visibility: visible; }
/* end activities section */

.hero-wrap.hero-wrap-2 .overlay{
    opacity: 0.3;
}

.slider-text .breadcrumbs{
    text-transform: none;
}

.form-control{
    background: #fbfbfb !important;
    font-size: 14px !important;
    height: 40px !important;
}

/* ===================================================================
   GPM Shanghai 2027 brand layer
   Deep navy + gold from the Magnolia logo pack. The navy that was the
   Stanton Chase blue (#004E84) is already changed to #0B2254 in
   theme.css and above; this block adds the gold accent, keeps
   Bootstrap's own blue from showing through, and fixes a few spots the
   theme left to Bootstrap defaults.
   =================================================================== */
:root {
    --gpm-navy: #0B2254;
    --gpm-navy-rgb: 11, 34, 84;
    --gpm-gold: #B8894A;          /* gold for light backgrounds (borders, rules, icons, large headings) */
    --gpm-gold-bright: #E3B75E;   /* gold for navy backgrounds */
    /* keep Bootstrap's primary in step so its blue never appears */
    --bs-primary: #0B2254;
    --bs-primary-rgb: 11, 34, 84;
    --bs-link-color: #0B2254;
    --bs-link-color-rgb: 11, 34, 84;
    --bs-link-hover-color: #0B2254;
    --bs-link-hover-color-rgb: 11, 34, 84;
}

/* Bootstrap 5 leaks its own blue into the form controls the theme never styled */
.form-check-input:checked {
    background-color: var(--gpm-navy);
    border-color: var(--gpm-navy);
}
.form-check-input:focus {
    border-color: rgba(var(--gpm-navy-rgb), 0.5);
    box-shadow: 0 0 0 0.25rem rgba(var(--gpm-navy-rgb), 0.25);
}
.nav-link:focus-visible,
.btn:focus-visible,
.btn-close:focus {
    box-shadow: 0 0 0 0.25rem rgba(var(--gpm-navy-rgb), 0.25);
}
.form-control:focus {
    border-color: var(--gpm-navy);
}

/* The loader ring: a CSS rule beats the inline SVG stroke, so the layouts need no edit */
#ftco-loader .path {
    stroke: var(--gpm-navy);
}

/* Gold accent: a short rule under centred section headings */
.heading-section h2.gpm-accent,
.gpm-accent-heading h2 {
    position: relative;
    padding-bottom: 18px;
}
.heading-section h2.gpm-accent:after,
.gpm-accent-heading h2:after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 60px;
    height: 3px;
    margin-left: -30px;
    background: var(--gpm-gold);
}
/* left-aligned variant, for headings inside a wrap-about column */
.heading-section.gpm-accent-left h2:after {
    left: 0;
    margin-left: 0;
}

/* Primary button: add a gold hover (the theme leaves btn-primary with no hover change) */
.btn.btn-primary:hover,
.btn.btn-primary:focus {
    background: var(--gpm-gold) !important;
    border-color: var(--gpm-gold) !important;
    color: #fff !important;
}

/* Gold facts/figures (About Shanghai "at a glance", weather, transport icons) */
.gpm-figure { color: var(--gpm-gold); }

/* Agenda day heading above each day's table */
.gpm-agenda-day {
    font-size: 1.5rem;
    color: var(--gpm-navy);
    margin: 0 0 1rem;
}
.gpm-agenda-day small {
    display: inline-block;
    margin-left: .5rem;
    padding: 2px 10px;
    font-size: 12px;
    font-weight: 700;
    color: #fff;
    background: var(--gpm-gold);
    border-radius: 2px;
    vertical-align: middle;
}
/* "to be confirmed" marker the agenda template adds from a [TBC]/[TBA] suffix */
.gpm-tbc {
    display: inline-block;
    margin-left: 6px;
    padding: 1px 8px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .04em;
    color: var(--gpm-navy);
    background: var(--gpm-gold-bright);
    border-radius: 2px;
}

/* Inner-page hero title: give every page the white 3em title the Dubai pages
   each repeated in their own <style> block, so new views don't need one. */
.hero-wrap-2 .slider-text h1 { color: #fff; font-size: 3em; }
.hero-wrap-2 .slider-text p,
.hero-wrap-2 .slider-text .breadcrumbs span,
.hero-wrap-2 .slider-text .breadcrumbs span a,
.hero-wrap-2 .slider-text .breadcrumbs span i { color: #fff; }

/* Keep the desktop menu inside the 960px container between 992 and 1199px
   (Phase 5 left it ~172px too wide; the Shanghai nav has the same 8 items). */
@media (min-width: 992px) and (max-width: 1199.98px) {
    .ftco-navbar-light .navbar-nav > .nav-item > .nav-link {
        font-size: 13px;
        padding-left: 9px;
        padding-right: 9px;
    }
    .ftco-navbar-light .navbar-nav > .nav-item.cta > a,
    .ftco-navbar-light.scrolled .nav-item.cta > a {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }
}

/* New Shanghai heroes: hold the parallax photo still below 992px so no strip
   shows at the hero's bottom edge before the load event (see Phase 5 note). */
@media (max-width: 991.98px) {
    .hero-wrap { background-position: top center !important; }
}

/* Photo card used on the Shanghai content pages (About, Accommodation, Activities) */
.gpm-photo-card {
    width: 100%;
    height: 240px;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    border-radius: 5px;
}
.table th[scope="row"] { font-weight: 600; color: var(--gpm-navy); }

/* ---- Image lightbox / photo viewer (galleries of .gpm-photo-card.gpm-zoom) ---- */
.gpm-zoom { cursor: zoom-in; }
.gpm-zoom:focus-visible {
    outline: 2px solid var(--gpm-gold);
    outline-offset: 3px;
}

body.gpm-lb-open { overflow: hidden; }

.gpm-lightbox {
    position: fixed;
    inset: 0;
    z-index: 2000;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background: rgba(0, 0, 0, 0.92);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.25s ease, visibility 0s linear 0.25s;
}
.gpm-lightbox.is-open {
    opacity: 1;
    visibility: visible;
    transition: opacity 0.25s ease;
}

.gpm-lb-fig {
    margin: 0;
    max-width: 1200px;
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
    z-index: 1;
}
.gpm-lb-img {
    display: block;
    max-width: 90vw;
    max-height: 80vh;
    width: auto;
    height: auto;
    object-fit: contain;
    border-radius: 4px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.5);
    background: #0b2254;
}
.gpm-lb-cap {
    margin-top: 18px;
    text-align: center;
    max-width: 800px;
    color: #fff;
}
.gpm-lb-title {
    display: block;
    font-family: 'martel', serif;
    font-size: 1.25rem;
    margin-bottom: 4px;
}
.gpm-lb-desc {
    display: block;
    font-size: 0.95rem;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.75);
}

/* controls */
.gpm-lb-close,
.gpm-lb-prev,
.gpm-lb-next {
    position: absolute;
    z-index: 2;
    border: 0;
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
    cursor: pointer;
    line-height: 1;
    border-radius: 50%;
    transition: background 0.2s ease;
    -webkit-appearance: none;
    appearance: none;
}
.gpm-lb-close:hover,
.gpm-lb-prev:hover,
.gpm-lb-next:hover,
.gpm-lb-close:focus-visible,
.gpm-lb-prev:focus-visible,
.gpm-lb-next:focus-visible {
    background: rgba(255, 255, 255, 0.2);
    outline: none;
}
.gpm-lb-close {
    top: 18px;
    right: 18px;
    width: 46px;
    height: 46px;
    font-size: 28px;
}
.gpm-lb-prev,
.gpm-lb-next {
    top: 50%;
    transform: translateY(-50%);
    width: 54px;
    height: 54px;
    font-size: 34px;
}
.gpm-lb-prev { left: 18px; }
.gpm-lb-next { right: 18px; }
.gpm-lightbox.is-single .gpm-lb-prev,
.gpm-lightbox.is-single .gpm-lb-next { display: none; }

@media (max-width: 767.98px) {
    .gpm-lb-img { max-height: 70vh; max-width: 94vw; }
    .gpm-lb-prev, .gpm-lb-next { width: 42px; height: 42px; font-size: 26px; }
    .gpm-lb-prev { left: 8px; }
    .gpm-lb-next { right: 8px; }
    .gpm-lb-close { top: 10px; right: 10px; }
    .gpm-lb-title { font-size: 1.05rem; }
    .gpm-lb-desc { font-size: 0.85rem; }
}
