/* Oloropa secondary public footer + hero palette standardization
   Shared asset for about.php, services.php, contact.php, booking.php.
   Source visual grammar: index.php global Safari Help footer. */
:root{
  --ol-footer-earth:#2B211A;
  --ol-footer-earth-soft:#35281F;
  --ol-footer-ivory:#FDFBF7;
  --ol-footer-linen:#FAF8F5;
  --ol-footer-gold:#DCA66F;
  --ol-footer-line:rgba(253,251,247,.14);
}

body[data-cct-tool-page="about"],
body[data-cct-tool-page="services"],
body[data-cct-tool-page="contact"],
body[data-oloropa-page="booking.php"]{
  background:var(--ol-footer-ivory) !important;
}

body[data-cct-tool-page="about"] #main-content,
body[data-cct-tool-page="services"] #main-content,
body[data-cct-tool-page="contact"] #main-content,
body[data-oloropa-page="booking.php"] #main-content{
  background:var(--ol-footer-ivory) !important;
}

/* Hero palette harmonization: keep each page's existing media/story while seating it in the same dark charcoal/brown language as the index footer. */
body[data-cct-tool-page="about"] .sp-hero,
body[data-cct-tool-page="services"] .sp-hero,
body[data-cct-tool-page="contact"] .sp-hero,
body[data-oloropa-page="booking.php"] .sp-hero{
  position:relative !important;
  isolation:isolate !important;
  overflow:hidden !important;
  color:var(--ol-footer-ivory) !important;
  background:
    radial-gradient(circle at 14% 12%,rgba(220,166,111,.14),transparent 28%),
    radial-gradient(circle at 86% 16%,rgba(253,251,247,.08),transparent 30%),
    linear-gradient(365deg,var(--ol-footer-earth) 0%,var(--ol-footer-earth) 100%) !important;
  border-bottom:1px solid rgba(43,33,26,.12) !important;
}
body[data-cct-tool-page="about"] .sp-hero > video,
body[data-cct-tool-page="about"] .sp-hero > img,
body[data-cct-tool-page="services"] .sp-hero > video,
body[data-cct-tool-page="services"] .sp-hero > img,
body[data-cct-tool-page="contact"] .sp-hero > video,
body[data-cct-tool-page="contact"] .sp-hero > img,
body[data-oloropa-page="booking.php"] .sp-hero > video,
body[data-oloropa-page="booking.php"] .sp-hero > img{
  opacity:.36 !important;
  filter:saturate(.88) contrast(.96) brightness(.78) !important;
}
body[data-cct-tool-page="about"] .sp-hero::after,
body[data-cct-tool-page="services"] .sp-hero::after,
body[data-cct-tool-page="contact"] .sp-hero::after,
body[data-oloropa-page="booking.php"] .sp-hero::after{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  z-index:-1 !important;
  pointer-events:none !important;
  background:
    linear-gradient(90deg,rgba(43,33,26,.84) 0%,rgba(43,33,26,.56) 48%,rgba(43,33,26,.78) 100%),
    linear-gradient(180deg,rgba(43,33,26,.50) 0%,rgba(43,33,26,.14) 42%,rgba(43,33,26,.58) 100%) !important;
}

/* Exact global footer architecture ported from index.php and hardened against legacy secondary-page footer systems. */
body[data-cct-tool-page="about"] .ol-cc-footer,
body[data-cct-tool-page="services"] .ol-cc-footer,
body[data-cct-tool-page="contact"] .ol-cc-footer,
body[data-oloropa-page="booking.php"] .ol-cc-footer{
  position:relative !important;
  overflow:hidden !important;
  box-sizing:border-box !important;
  width:100% !important;
  max-width:100% !important;
  margin:0 !important;
  padding:74px min(6vw,72px) 32px !important;
  color:var(--ol-footer-ivory) !important;
  background:
    radial-gradient(circle at 12% 10%,rgba(212,163,115,.17),transparent 24%),
    radial-gradient(circle at 86% 10%,rgba(253,251,247,.09),transparent 28%),
    linear-gradient(365deg,var(--ol-footer-earth),var(--ol-footer-earth)) !important;
}
body[data-cct-tool-page="about"] .ol-cc-footer *,
body[data-cct-tool-page="services"] .ol-cc-footer *,
body[data-cct-tool-page="contact"] .ol-cc-footer *,
body[data-oloropa-page="booking.php"] .ol-cc-footer *{
  box-sizing:border-box !important;
}
body[data-cct-tool-page="about"] .ol-cc-footer::before,
body[data-cct-tool-page="services"] .ol-cc-footer::before,
body[data-cct-tool-page="contact"] .ol-cc-footer::before,
body[data-oloropa-page="booking.php"] .ol-cc-footer::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  opacity:.14 !important;
  pointer-events:none !important;
  background-image:
    linear-gradient(365deg,transparent 0 42%,rgba(253,251,247,.22) 42.4%,transparent 43%),
    radial-gradient(circle at 20% 30%,rgba(253,251,247,.18) 0 1px,transparent 1.5px),
    radial-gradient(circle at 70% 68%,rgba(253,251,247,.16) 0 1px,transparent 1.5px) !important;
  background-size:160px 160px,70px 70px,96px 96px !important;
}
body[data-cct-tool-page="about"] .ol-cc-footer > *,
body[data-cct-tool-page="services"] .ol-cc-footer > *,
body[data-cct-tool-page="contact"] .ol-cc-footer > *,
body[data-oloropa-page="booking.php"] .ol-cc-footer > *{
  position:relative !important;
  z-index:1 !important;
}
body[data-cct-tool-page="about"] .ol-cc-footer-top,
body[data-cct-tool-page="services"] .ol-cc-footer-top,
body[data-cct-tool-page="contact"] .ol-cc-footer-top,
body[data-oloropa-page="booking.php"] .ol-cc-footer-top{
  display:grid !important;
  grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr) !important;
  gap:30px !important;
  align-items:end !important;
  padding-bottom:38px !important;
  border-bottom:1px solid rgba(253,251,247,.15) !important;
}
body[data-cct-tool-page="about"] .ol-cc-footer-mark,
body[data-cct-tool-page="services"] .ol-cc-footer-mark,
body[data-cct-tool-page="contact"] .ol-cc-footer-mark,
body[data-oloropa-page="booking.php"] .ol-cc-footer-mark{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  margin-bottom:18px !important;
}
body[data-cct-tool-page="about"] .ol-cc-footer-mark img,
body[data-cct-tool-page="services"] .ol-cc-footer-mark img,
body[data-cct-tool-page="contact"] .ol-cc-footer-mark img,
body[data-oloropa-page="booking.php"] .ol-cc-footer-mark img{
  width:46px !important;
  height:46px !important;
  object-fit:contain !important;
  border-radius:50% !important;
  background:linear-gradient(365deg,rgba(253,251,247,.08) 0%,rgba(253,251,247,.08) 100%) !important;
}
body[data-cct-tool-page="about"] .ol-cc-footer-mark span,
body[data-cct-tool-page="services"] .ol-cc-footer-mark span,
body[data-cct-tool-page="contact"] .ol-cc-footer-mark span,
body[data-oloropa-page="booking.php"] .ol-cc-footer-mark span{
  display:grid !important;
  gap:3px !important;
}
body[data-cct-tool-page="about"] .ol-cc-footer-mark small,
body[data-cct-tool-page="services"] .ol-cc-footer-mark small,
body[data-cct-tool-page="contact"] .ol-cc-footer-mark small,
body[data-oloropa-page="booking.php"] .ol-cc-footer-mark small{
  color:rgba(253,251,247,.64) !important;
  font-size:11px !important;
  font-weight:850 !important;
  letter-spacing:.18em !important;
  text-transform:uppercase !important;
}
body[data-cct-tool-page="about"] .ol-cc-footer-mark strong,
body[data-cct-tool-page="services"] .ol-cc-footer-mark strong,
body[data-cct-tool-page="contact"] .ol-cc-footer-mark strong,
body[data-oloropa-page="booking.php"] .ol-cc-footer-mark strong{
  color:var(--ol-footer-ivory) !important;
  font-size:20px !important;
}
body[data-cct-tool-page="about"] .ol-cc-footer h2,
body[data-cct-tool-page="services"] .ol-cc-footer h2,
body[data-cct-tool-page="contact"] .ol-cc-footer h2,
body[data-oloropa-page="booking.php"] .ol-cc-footer h2{
  max-width:820px !important;
  margin:0 !important;
  font-family:Georgia,"Times New Roman",serif !important;
  font-size:clamp(2rem,4vw,4.8rem) !important;
  line-height:.95 !important;
  letter-spacing:-.065em !important;
  color:var(--ol-footer-ivory) !important;
}
body[data-cct-tool-page="about"] .ol-cc-footer-intro,
body[data-cct-tool-page="services"] .ol-cc-footer-intro,
body[data-cct-tool-page="contact"] .ol-cc-footer-intro,
body[data-oloropa-page="booking.php"] .ol-cc-footer-intro{
  max-width:480px !important;
  margin:16px 0 0 !important;
  color:rgba(253,251,247,.72) !important;
  font-size:15px !important;
  line-height:1.75 !important;
}
body[data-cct-tool-page="about"] .ol-cc-footer-brief,
body[data-cct-tool-page="services"] .ol-cc-footer-brief,
body[data-cct-tool-page="contact"] .ol-cc-footer-brief,
body[data-oloropa-page="booking.php"] .ol-cc-footer-brief{
  display:grid !important;
  gap:14px !important;
  padding:22px !important;
  border:1px solid rgba(253,251,247,.15) !important;
  border-radius:30px !important;
  background:linear-gradient(365deg,rgba(253,251,247,.075) 0%,rgba(253,251,247,.075) 100%) !important;
  box-shadow:0 18px 60px rgba(43,33,26,.17) !important;
}
body[data-cct-tool-page="about"] .ol-cc-footer-brief span,
body[data-cct-tool-page="services"] .ol-cc-footer-brief span,
body[data-cct-tool-page="contact"] .ol-cc-footer-brief span,
body[data-oloropa-page="booking.php"] .ol-cc-footer-brief span{
  color:rgba(253,251,247,.68) !important;
  font-size:12px !important;
  font-weight:850 !important;
  letter-spacing:.17em !important;
  text-transform:uppercase !important;
}
body[data-cct-tool-page="about"] .ol-cc-footer-brief strong,
body[data-cct-tool-page="services"] .ol-cc-footer-brief strong,
body[data-cct-tool-page="contact"] .ol-cc-footer-brief strong,
body[data-oloropa-page="booking.php"] .ol-cc-footer-brief strong{
  color:var(--ol-footer-ivory) !important;
  font-size:22px !important;
  letter-spacing:-.035em !important;
}
body[data-cct-tool-page="about"] .ol-cc-footer-brief a,
body[data-cct-tool-page="services"] .ol-cc-footer-brief a,
body[data-cct-tool-page="contact"] .ol-cc-footer-brief a,
body[data-oloropa-page="booking.php"] .ol-cc-footer-brief a{
  display:inline-flex !important;
  justify-content:center !important;
  align-items:center !important;
  min-height:48px !important;
  padding:0 18px !important;
  border-radius:999px !important;
  background:linear-gradient(365deg,var(--ol-footer-ivory),#FDFBF7) !important;
  color:var(--ol-footer-earth) !important;
  text-decoration:none !important;
  font-weight:900 !important;
}
body[data-cct-tool-page="about"] .ol-cc-footer-grid,
body[data-cct-tool-page="services"] .ol-cc-footer-grid,
body[data-cct-tool-page="contact"] .ol-cc-footer-grid,
body[data-oloropa-page="booking.php"] .ol-cc-footer-grid{
  display:grid !important;
  grid-template-columns:1.1fr 1.1fr 1fr 1fr !important;
  gap:28px !important;
  padding:38px 0 !important;
  border-bottom:1px solid rgba(253,251,247,.12) !important;
}
body[data-cct-tool-page="about"] .ol-cc-footer-col h3,
body[data-cct-tool-page="services"] .ol-cc-footer-col h3,
body[data-cct-tool-page="contact"] .ol-cc-footer-col h3,
body[data-oloropa-page="booking.php"] .ol-cc-footer-col h3{
  margin:0 0 14px !important;
  font-family:Georgia,"Times New Roman",serif !important;
  color:var(--ol-footer-ivory) !important;
  font-size:clamp(1.8rem,2.8vw,3.35rem) !important;
  line-height:.92 !important;
  font-weight:500 !important;
  letter-spacing:-.045em !important;
  text-transform:uppercase !important;
}
body[data-cct-tool-page="about"] .ol-cc-footer-col ul,
body[data-cct-tool-page="services"] .ol-cc-footer-col ul,
body[data-cct-tool-page="contact"] .ol-cc-footer-col ul,
body[data-oloropa-page="booking.php"] .ol-cc-footer-col ul{
  display:grid !important;
  gap:9px !important;
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
}
body[data-cct-tool-page="about"] .ol-cc-footer-col a,
body[data-cct-tool-page="services"] .ol-cc-footer-col a,
body[data-cct-tool-page="contact"] .ol-cc-footer-col a,
body[data-oloropa-page="booking.php"] .ol-cc-footer-col a{
  display:inline-flex !important;
  color:rgba(253,251,247,.72) !important;
  text-decoration:none !important;
  font-size:14px !important;
  line-height:1.35 !important;
  transition:color .22s ease,transform .22s ease !important;
}
body[data-cct-tool-page="about"] .ol-cc-footer-col a:hover,
body[data-cct-tool-page="services"] .ol-cc-footer-col a:hover,
body[data-cct-tool-page="contact"] .ol-cc-footer-col a:hover,
body[data-oloropa-page="booking.php"] .ol-cc-footer-col a:hover{
  color:var(--ol-footer-ivory) !important;
  transform:translateX(2px) !important;
}
body[data-cct-tool-page="about"] .ol-cc-footer-contact,
body[data-cct-tool-page="services"] .ol-cc-footer-contact,
body[data-cct-tool-page="contact"] .ol-cc-footer-contact,
body[data-oloropa-page="booking.php"] .ol-cc-footer-contact{
  display:grid !important;
  gap:10px !important;
  padding:16px !important;
  border:1px solid rgba(253,251,247,.13) !important;
  border-radius:22px !important;
  background:linear-gradient(365deg,rgba(253,251,247,.055) 0%,rgba(253,251,247,.055) 100%) !important;
}
body[data-cct-tool-page="about"] .ol-cc-footer-contact p,
body[data-cct-tool-page="services"] .ol-cc-footer-contact p,
body[data-cct-tool-page="contact"] .ol-cc-footer-contact p,
body[data-oloropa-page="booking.php"] .ol-cc-footer-contact p{
  margin:0 !important;
  color:rgba(253,251,247,.68) !important;
  font-size:13px !important;
  line-height:1.55 !important;
}
body[data-cct-tool-page="about"] .ol-cc-social-row,
body[data-cct-tool-page="services"] .ol-cc-social-row,
body[data-cct-tool-page="contact"] .ol-cc-social-row,
body[data-oloropa-page="booking.php"] .ol-cc-social-row{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:9px !important;
  margin-top:8px !important;
}
body[data-cct-tool-page="about"] .ol-cc-social-row a,
body[data-cct-tool-page="services"] .ol-cc-social-row a,
body[data-cct-tool-page="contact"] .ol-cc-social-row a,
body[data-oloropa-page="booking.php"] .ol-cc-social-row a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:36px !important;
  padding:0 12px !important;
  border:1px solid rgba(253,251,247,.14) !important;
  border-radius:999px !important;
  background:linear-gradient(365deg,rgba(253,251,247,.06) 0%,rgba(253,251,247,.06) 100%) !important;
  color:var(--ol-footer-ivory) !important;
  font-size:12px !important;
  font-weight:800 !important;
}
body[data-cct-tool-page="about"] .ol-cc-footer-accordions,
body[data-cct-tool-page="services"] .ol-cc-footer-accordions,
body[data-cct-tool-page="contact"] .ol-cc-footer-accordions,
body[data-oloropa-page="booking.php"] .ol-cc-footer-accordions{
  display:none !important;
}
body[data-cct-tool-page="about"] .ol-cc-footer-bottom,
body[data-cct-tool-page="services"] .ol-cc-footer-bottom,
body[data-cct-tool-page="contact"] .ol-cc-footer-bottom,
body[data-oloropa-page="booking.php"] .ol-cc-footer-bottom{
  display:flex !important;
  justify-content:space-between !important;
  gap:18px !important;
  padding-top:22px !important;
  color:rgba(253,251,247,.55) !important;
  font-size:12px !important;
}
body[data-cct-tool-page="about"] .ol-cc-footer-bottom a,
body[data-cct-tool-page="services"] .ol-cc-footer-bottom a,
body[data-cct-tool-page="contact"] .ol-cc-footer-bottom a,
body[data-oloropa-page="booking.php"] .ol-cc-footer-bottom a{
  color:rgba(253,251,247,.7) !important;
  text-decoration:none !important;
}

@media (max-width:1120px){
  body[data-cct-tool-page="about"] .ol-cc-footer-top,
  body[data-cct-tool-page="services"] .ol-cc-footer-top,
  body[data-cct-tool-page="contact"] .ol-cc-footer-top,
  body[data-oloropa-page="booking.php"] .ol-cc-footer-top{
    grid-template-columns:1fr !important;
    align-items:start !important;
  }
  body[data-cct-tool-page="about"] .ol-cc-footer-grid,
  body[data-cct-tool-page="services"] .ol-cc-footer-grid,
  body[data-cct-tool-page="contact"] .ol-cc-footer-grid,
  body[data-oloropa-page="booking.php"] .ol-cc-footer-grid{
    grid-template-columns:1fr 1fr !important;
  }
}
@media (max-width:760px){
  body[data-cct-tool-page="about"] .ol-cc-footer,
  body[data-cct-tool-page="services"] .ol-cc-footer,
  body[data-cct-tool-page="contact"] .ol-cc-footer,
  body[data-oloropa-page="booking.php"] .ol-cc-footer{
    padding:58px 18px 26px !important;
  }
  body[data-cct-tool-page="about"] .ol-cc-footer h2,
  body[data-cct-tool-page="services"] .ol-cc-footer h2,
  body[data-cct-tool-page="contact"] .ol-cc-footer h2,
  body[data-oloropa-page="booking.php"] .ol-cc-footer h2{
    font-size:clamp(2.35rem,14vw,4.1rem) !important;
  }
  body[data-cct-tool-page="about"] .ol-cc-footer-grid,
  body[data-cct-tool-page="services"] .ol-cc-footer-grid,
  body[data-cct-tool-page="contact"] .ol-cc-footer-grid,
  body[data-oloropa-page="booking.php"] .ol-cc-footer-grid{
    display:none !important;
  }
  body[data-cct-tool-page="about"] .ol-cc-footer-accordions,
  body[data-cct-tool-page="services"] .ol-cc-footer-accordions,
  body[data-cct-tool-page="contact"] .ol-cc-footer-accordions,
  body[data-oloropa-page="booking.php"] .ol-cc-footer-accordions{
    display:grid !important;
    gap:10px !important;
    padding:26px 0 !important;
    border-bottom:1px solid rgba(253,251,247,.12) !important;
  }
  body[data-cct-tool-page="about"] .ol-cc-footer-accordions details,
  body[data-cct-tool-page="services"] .ol-cc-footer-accordions details,
  body[data-cct-tool-page="contact"] .ol-cc-footer-accordions details,
  body[data-oloropa-page="booking.php"] .ol-cc-footer-accordions details{
    border:1px solid rgba(253,251,247,.13) !important;
    border-radius:20px !important;
    background:linear-gradient(365deg,rgba(253,251,247,.055) 0%,rgba(253,251,247,.055) 100%) !important;
    overflow:hidden !important;
  }
  body[data-cct-tool-page="about"] .ol-cc-footer-accordions summary,
  body[data-cct-tool-page="services"] .ol-cc-footer-accordions summary,
  body[data-cct-tool-page="contact"] .ol-cc-footer-accordions summary,
  body[data-oloropa-page="booking.php"] .ol-cc-footer-accordions summary{
    cursor:pointer !important;
    padding:15px 16px !important;
    color:var(--ol-footer-ivory) !important;
    font-size:12px !important;
    font-weight:900 !important;
    letter-spacing:.15em !important;
    text-transform:uppercase !important;
    list-style:none !important;
  }
  body[data-cct-tool-page="about"] .ol-cc-footer-accordions summary::-webkit-details-marker,
  body[data-cct-tool-page="services"] .ol-cc-footer-accordions summary::-webkit-details-marker,
  body[data-cct-tool-page="contact"] .ol-cc-footer-accordions summary::-webkit-details-marker,
  body[data-oloropa-page="booking.php"] .ol-cc-footer-accordions summary::-webkit-details-marker{
    display:none !important;
  }
  body[data-cct-tool-page="about"] .ol-cc-footer-accordions ul,
  body[data-cct-tool-page="services"] .ol-cc-footer-accordions ul,
  body[data-cct-tool-page="contact"] .ol-cc-footer-accordions ul,
  body[data-oloropa-page="booking.php"] .ol-cc-footer-accordions ul{
    display:grid !important;
    gap:10px !important;
    margin:0 !important;
    padding:0 16px 16px !important;
    list-style:none !important;
  }
  body[data-cct-tool-page="about"] .ol-cc-footer-accordions a,
  body[data-cct-tool-page="services"] .ol-cc-footer-accordions a,
  body[data-cct-tool-page="contact"] .ol-cc-footer-accordions a,
  body[data-oloropa-page="booking.php"] .ol-cc-footer-accordions a{
    color:rgba(253,251,247,.76) !important;
    text-decoration:none !important;
    font-size:14px !important;
  }
  body[data-cct-tool-page="about"] .ol-cc-footer-bottom,
  body[data-cct-tool-page="services"] .ol-cc-footer-bottom,
  body[data-cct-tool-page="contact"] .ol-cc-footer-bottom,
  body[data-oloropa-page="booking.php"] .ol-cc-footer-bottom{
    display:grid !important;
  }
}

/* O16 dark-canvas parity hotfix
   Scope: secondary public support pages where the core Alabaster pass was overriding
   the index footer/header dark luxury canvas. Keep main content linen, but re-seat
   the header, hero arrival, and global Safari Help footer on the same charcoal/brown token. */
:root{
  --ol-o16-index-footer-canvas:#2B211A;
  --ol-o16-index-footer-canvas-2:#35281F;
  --ol-o16-index-footer-lift:#4A3B32;
  --ol-o16-index-footer-ivory:#FDFBF7;
  --ol-o16-index-footer-linen:#FAF8F5;
  --ol-o16-index-footer-gold:#D4A373;
  --ol-o16-index-footer-line:rgba(253,251,247,.14);
  --ol-o16-index-footer-muted:rgba(253,251,247,.72);
  --ol-o16-index-footer-bg:
    radial-gradient(circle at 12% 8%,rgba(212,163,115,.17),transparent 26%),
    radial-gradient(circle at 88% 12%,rgba(253,251,247,.08),transparent 30%),
    linear-gradient(365deg,var(--ol-o16-index-footer-canvas) 0%,var(--ol-o16-index-footer-canvas-2) 58%,var(--ol-o16-index-footer-canvas) 100%);
}

/* Keep the document shell linen, but never let the first dark arrival/footer areas flatten to white. */
html body[data-cct-tool-page],
html body[data-oloropa-page="booking.php"]{
  background:#FDFBF7!important;
  color:#2B211A!important;
}

html body[data-cct-tool-page] :is(.sp-hero,.cct-hero),
html body[data-oloropa-page="booking.php"] :is(.sp-hero,.cct-hero){
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  color:var(--ol-o16-index-footer-ivory)!important;
  background:var(--ol-o16-index-footer-bg)!important;
  background-color:var(--ol-o16-index-footer-canvas)!important;
}
html body[data-cct-tool-page] :is(.sp-hero,.cct-hero)::before,
html body[data-oloropa-page="booking.php"] :is(.sp-hero,.cct-hero)::before{
  background:transparent!important;
  opacity:0!important;
}
html body[data-cct-tool-page] :is(.sp-hero,.cct-hero)::after,
html body[data-oloropa-page="booking.php"] :is(.sp-hero,.cct-hero)::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  pointer-events:none!important;
  opacity:1!important;
  background:
    linear-gradient(90deg,rgba(43,33,26,.88) 0%,rgba(43,33,26,.58) 48%,rgba(43,33,26,.82) 100%),
    linear-gradient(180deg,rgba(43,33,26,.55) 0%,rgba(43,33,26,.18) 46%,rgba(43,33,26,.62) 100%)!important;
}
html body[data-cct-tool-page] :is(.sp-hero,.cct-hero) > :not(video):not(img):not(picture),
html body[data-oloropa-page="booking.php"] :is(.sp-hero,.cct-hero) > :not(video):not(img):not(picture){
  position:relative!important;
  z-index:2!important;
}
html body[data-cct-tool-page] :is(.sp-hero,.cct-hero) :is(h1,h2,h3,p,span,small,strong,em,label),
html body[data-oloropa-page="booking.php"] :is(.sp-hero,.cct-hero) :is(h1,h2,h3,p,span,small,strong,em,label){
  color:var(--ol-o16-index-footer-ivory)!important;
}
html body[data-cct-tool-page] :is(.sp-hero,.cct-hero) :is(video,img),
html body[data-oloropa-page="booking.php"] :is(.sp-hero,.cct-hero) :is(video,img){
  opacity:.48!important;
  filter:saturate(.88) contrast(1.02) brightness(.72)!important;
}

/* Header dark canvas parity: override the linen/white nav pass only on secondary public pages. */
html body[data-cct-tool-page] .ol-cc-header[data-oloropa-concierge-header],
html body[data-cct-tool-page] header.ol-cc-header[data-oloropa-concierge-header],
html body[data-cct-tool-page] .ol-cc-header[data-ol-phase1-header="command-bar"],
html body[data-oloropa-page="booking.php"] .ol-cc-header[data-oloropa-concierge-header],
html body[data-oloropa-page="booking.php"] header.ol-cc-header[data-oloropa-concierge-header],
html body[data-oloropa-page="booking.php"] .ol-cc-header[data-ol-phase1-header="command-bar"]{
  color:var(--ol-o16-index-footer-ivory)!important;
  background:
    radial-gradient(circle at 12% 20%,rgba(212,163,115,.16),transparent 28%),
    linear-gradient(365deg,rgba(43,33,26,.95) 0%,rgba(53,40,31,.90) 100%)!important;
  background-color:var(--ol-o16-index-footer-canvas)!important;
  border-color:rgba(253,251,247,.16)!important;
  box-shadow:0 22px 72px rgba(43,33,26,.34)!important;
}
html body[data-cct-tool-page] .ol-cc-header[data-oloropa-concierge-header] :is(.ol-cc-brand strong,.ol-cc-brand small,.ol-cc-link,.ol-cc-menu-button),
html body[data-cct-tool-page] .ol-cc-header[data-ol-phase1-header="command-bar"] :is(.ol-cc-brand strong,.ol-cc-brand small,.ol-cc-link,.ol-cc-menu-button),
html body[data-oloropa-page="booking.php"] .ol-cc-header[data-oloropa-concierge-header] :is(.ol-cc-brand strong,.ol-cc-brand small,.ol-cc-link,.ol-cc-menu-button),
html body[data-oloropa-page="booking.php"] .ol-cc-header[data-ol-phase1-header="command-bar"] :is(.ol-cc-brand strong,.ol-cc-brand small,.ol-cc-link,.ol-cc-menu-button){
  color:var(--ol-o16-index-footer-ivory)!important;
}
html body[data-cct-tool-page] .ol-cc-header[data-oloropa-concierge-header] .ol-cc-brand small,
html body[data-cct-tool-page] .ol-cc-header[data-ol-phase1-header="command-bar"] .ol-cc-brand small,
html body[data-oloropa-page="booking.php"] .ol-cc-header[data-oloropa-concierge-header] .ol-cc-brand small,
html body[data-oloropa-page="booking.php"] .ol-cc-header[data-ol-phase1-header="command-bar"] .ol-cc-brand small{
  color:rgba(253,251,247,.64)!important;
}
html body[data-cct-tool-page] .ol-cc-header[data-oloropa-concierge-header] .ol-cc-nav,
html body[data-cct-tool-page] .ol-cc-header[data-ol-phase1-header="command-bar"] .ol-cc-nav,
html body[data-oloropa-page="booking.php"] .ol-cc-header[data-oloropa-concierge-header] .ol-cc-nav,
html body[data-oloropa-page="booking.php"] .ol-cc-header[data-ol-phase1-header="command-bar"] .ol-cc-nav{
  background:rgba(253,251,247,.07)!important;
  border-color:rgba(253,251,247,.12)!important;
  box-shadow:inset 0 1px 0 rgba(253,251,247,.10)!important;
}
html body[data-cct-tool-page] .ol-cc-header[data-oloropa-concierge-header] .ol-cc-link::after,
html body[data-cct-tool-page] .ol-cc-header[data-ol-phase1-header="command-bar"] .ol-cc-link::after,
html body[data-oloropa-page="booking.php"] .ol-cc-header[data-oloropa-concierge-header] .ol-cc-link::after,
html body[data-oloropa-page="booking.php"] .ol-cc-header[data-ol-phase1-header="command-bar"] .ol-cc-link::after{
  background:var(--ol-o16-index-footer-gold)!important;
  opacity:.72!important;
}
html body[data-cct-tool-page] .ol-cc-header[data-oloropa-concierge-header] .ol-cc-link:hover,
html body[data-cct-tool-page] .ol-cc-header[data-oloropa-concierge-header] .ol-cc-link:focus-visible,
html body[data-cct-tool-page] .ol-cc-header[data-oloropa-concierge-header] .ol-cc-link.is-active,
html body[data-cct-tool-page] .ol-cc-header[data-ol-phase1-header="command-bar"] .ol-cc-link:hover,
html body[data-cct-tool-page] .ol-cc-header[data-ol-phase1-header="command-bar"] .ol-cc-link:focus-visible,
html body[data-cct-tool-page] .ol-cc-header[data-ol-phase1-header="command-bar"] .ol-cc-link.is-active,
html body[data-oloropa-page="booking.php"] .ol-cc-header[data-oloropa-concierge-header] .ol-cc-link:hover,
html body[data-oloropa-page="booking.php"] .ol-cc-header[data-oloropa-concierge-header] .ol-cc-link:focus-visible,
html body[data-oloropa-page="booking.php"] .ol-cc-header[data-oloropa-concierge-header] .ol-cc-link.is-active,
html body[data-oloropa-page="booking.php"] .ol-cc-header[data-ol-phase1-header="command-bar"] .ol-cc-link:hover,
html body[data-oloropa-page="booking.php"] .ol-cc-header[data-ol-phase1-header="command-bar"] .ol-cc-link:focus-visible,
html body[data-oloropa-page="booking.php"] .ol-cc-header[data-ol-phase1-header="command-bar"] .ol-cc-link.is-active{
  color:var(--ol-o16-index-footer-ivory)!important;
  background:rgba(253,251,247,.12)!important;
  box-shadow:inset 0 0 0 1px rgba(253,251,247,.12),0 8px 18px rgba(0,0,0,.10)!important;
}
html body[data-cct-tool-page] .ol-cc-header[data-oloropa-concierge-header] .ol-cc-menu-button,
html body[data-cct-tool-page] .ol-cc-header[data-ol-phase1-header="command-bar"] .ol-cc-menu-button,
html body[data-oloropa-page="booking.php"] .ol-cc-header[data-oloropa-concierge-header] .ol-cc-menu-button,
html body[data-oloropa-page="booking.php"] .ol-cc-header[data-ol-phase1-header="command-bar"] .ol-cc-menu-button{
  border-color:rgba(253,251,247,.16)!important;
  background:rgba(253,251,247,.08)!important;
}

/* Footer dark canvas parity: neutralize late Alabaster/background utility collisions. */
html body[data-cct-tool-page] footer.ol-cc-footer,
html body[data-cct-tool-page] .ol-cc-footer,
html body[data-oloropa-page="booking.php"] footer.ol-cc-footer,
html body[data-oloropa-page="booking.php"] .ol-cc-footer{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  background:var(--ol-o16-index-footer-bg)!important;
  background-color:var(--ol-o16-index-footer-canvas)!important;
  color:var(--ol-o16-index-footer-ivory)!important;
  border-top:1px solid rgba(253,251,247,.10)!important;
}
html body[data-cct-tool-page] footer.ol-cc-footer::before,
html body[data-cct-tool-page] .ol-cc-footer::before,
html body[data-oloropa-page="booking.php"] footer.ol-cc-footer::before,
html body[data-oloropa-page="booking.php"] .ol-cc-footer::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  opacity:.14!important;
  pointer-events:none!important;
  background-image:
    linear-gradient(365deg,transparent 0 42%,rgba(253,251,247,.22) 42.4%,transparent 43%),
    radial-gradient(circle at 20% 30%,rgba(253,251,247,.18) 0 1px,transparent 1.5px),
    radial-gradient(circle at 70% 68%,rgba(253,251,247,.16) 0 1px,transparent 1.5px)!important;
  background-size:160px 160px,70px 70px,96px 96px!important;
}
html body[data-cct-tool-page] .ol-cc-footer > *,
html body[data-oloropa-page="booking.php"] .ol-cc-footer > *{
  position:relative!important;
  z-index:1!important;
}
html body[data-cct-tool-page] .ol-cc-footer :is(h1,h2,h3,h4,strong,b,summary),
html body[data-oloropa-page="booking.php"] .ol-cc-footer :is(h1,h2,h3,h4,strong,b,summary){
  color:var(--ol-o16-index-footer-ivory)!important;
}
html body[data-cct-tool-page] .ol-cc-footer :is(p,li,span,small),
html body[data-oloropa-page="booking.php"] .ol-cc-footer :is(p,li,span,small){
  color:var(--ol-o16-index-footer-muted)!important;
}
html body[data-cct-tool-page] .ol-cc-footer :is(a),
html body[data-oloropa-page="booking.php"] .ol-cc-footer :is(a){
  color:rgba(253,251,247,.78)!important;
}
html body[data-cct-tool-page] .ol-cc-footer :is(a:hover,a:focus-visible),
html body[data-oloropa-page="booking.php"] .ol-cc-footer :is(a:hover,a:focus-visible){
  color:var(--ol-o16-index-footer-ivory)!important;
}
html body[data-cct-tool-page] .ol-cc-footer :is(.ol-cc-footer-top,.ol-cc-footer-grid,.ol-cc-footer-bottom),
html body[data-oloropa-page="booking.php"] .ol-cc-footer :is(.ol-cc-footer-top,.ol-cc-footer-grid,.ol-cc-footer-bottom){
  border-color:rgba(253,251,247,.13)!important;
}
html body[data-cct-tool-page] .ol-cc-footer :is(.ol-cc-footer-brief,.ol-cc-footer-contact,.ol-cc-footer-accordions details),
html body[data-oloropa-page="booking.php"] .ol-cc-footer :is(.ol-cc-footer-brief,.ol-cc-footer-contact,.ol-cc-footer-accordions details){
  background:linear-gradient(365deg,rgba(253,251,247,.075),rgba(253,251,247,.045))!important;
  border-color:rgba(253,251,247,.14)!important;
  box-shadow:0 18px 60px rgba(0,0,0,.12)!important;
}
html body[data-cct-tool-page] .ol-cc-footer .ol-cc-footer-brief a,
html body[data-oloropa-page="booking.php"] .ol-cc-footer .ol-cc-footer-brief a{
  color:var(--ol-o16-index-footer-canvas)!important;
  background:linear-gradient(365deg,#FDFBF7 0%,#F0CA79 100%)!important;
  box-shadow:0 14px 34px rgba(212,163,115,.20)!important;
}
html body[data-cct-tool-page] .ol-cc-footer .ol-cc-social-row a,
html body[data-oloropa-page="booking.php"] .ol-cc-footer .ol-cc-social-row a{
  color:var(--ol-o16-index-footer-ivory)!important;
  background:rgba(253,251,247,.06)!important;
  border-color:rgba(253,251,247,.14)!important;
}
