/* Asonfu public-site appearance, November 2026.
   Lightweight cascade on top of site.css: leaves admin pages and PHP behavior untouched. */
:root {
  color-scheme:light;
  --a-page:#eef4f8;
  --a-surface:#ffffff;
  --a-surface-muted:#e3edf5;
  --a-ink:#172f3f;
  --a-muted:#567080;
  --a-border:#d5e3ea;
  --a-card:#102734;
  --a-card-ink:#f7fbff;
  --a-card-muted:#bdcfd9;
  --a-chip:#1e3d4e;
  --a-field:#fff;
}
html[data-asonfu-theme="dark"] {
  color-scheme:dark;
  --ink:#eaf4f8;
  --cream:#071822;
  --sand:#102937;
  --white:#152c3a;
  --muted:#b3c8d5;
  --a-page:#081720;
  --a-surface:#122a39;
  --a-surface-muted:#1a3a4d;
  --a-ink:#eaf4f8;
  --a-muted:#b1c7d3;
  --a-border:#294657;
  --a-card:#153344;
  --a-card-ink:#f7fbff;
  --a-card-muted:#c6d7e2;
  --a-chip:#244b5e;
  --a-field:#183a4e;
}
body {background:var(--a-page)!important;color:var(--a-ink)}
.section-soft {background:var(--a-page)!important}
.section:not(.section-soft):not(.location-section){background-color:var(--a-page)}
.eyebrow.dark {color:#15669b!important}
html[data-asonfu-theme="dark"] .eyebrow.dark {color:#8dcaed!important}

/* Header controls available in EN, FR, AR, on desktop and on mobile. */
.site-header .asonfu-theme-toggle{
  flex:0 0 38px!important;width:38px!important;min-width:38px!important;height:38px!important;min-height:38px!important;
  padding:0!important;display:inline-grid!important;place-items:center!important;cursor:pointer;
  border-radius:50%!important;color:#f9fcff!important;
  background:rgba(16,39,52,.75)!important;border:1px solid rgba(255,255,255,.42)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 5px 16px rgba(0,0,0,.14)!important;
  line-height:1!important;transition:background .2s ease,border-color .2s ease!important;
}
.site-header .asonfu-theme-toggle:hover {background:#1b4a64!important;border-color:#b4e0fa!important}
.site-header .asonfu-theme-toggle:focus-visible {outline:3px solid #ffcd64!important;outline-offset:3px!important}
.site-header .asonfu-theme-toggle svg{display:block;width:20px;height:20px}
.site-header .asonfu-theme-toggle .asonfu-theme-sun{display:none}
html[data-asonfu-theme="dark"] .site-header .asonfu-theme-toggle .asonfu-theme-sun{display:block}
html[data-asonfu-theme="dark"] .site-header .asonfu-theme-toggle .asonfu-theme-moon{display:none}
html[data-asonfu-theme="dark"] .site-header .asonfu-theme-toggle{background:#294e61!important;color:#ffd88a!important}
@media (max-width:820px){
  .site-header .mobile-header-tools .asonfu-theme-toggle{
    width:36px!important;min-width:36px!important;height:36px!important;min-height:36px!important;
    flex:0 0 36px!important;align-self:center!important;
  }
}
@media (min-width:821px) and (max-width:1149px){
  .site-header .header-actions .asonfu-theme-toggle{width:34px!important;min-width:34px!important;height:34px!important;min-height:34px!important;flex-basis:34px!important}
}
@media (min-width:1150px){
  .site-header.is-scrolled{background:rgba(9,29,40,.80)!important}
  html[data-asonfu-theme="dark"] .site-header.is-scrolled{background:rgba(3,14,22,.93)!important}
  .site-header .main-nav{background:rgba(11,34,47,.86)!important}
}
html[data-asonfu-theme="dark"] .site-header .main-nav{background:rgba(4,22,34,.96)!important}

/* Fix: Mini-photos always sit in a single neat bottom row, never overlap. */
.page-stay-activities .section-soft > .stay-cabin-grid > .stay-cabin-card > .stay-cabin-image{
  isolation:isolate!important;
}
.page-stay-activities .section-soft > .stay-cabin-grid > .stay-cabin-card > .stay-cabin-image > .stay-photo-secondary,
.page-stay-activities .section-soft > .stay-cabin-grid > .stay-cabin-card > .stay-cabin-image > .card-photo-three{
  position:absolute!important;display:block!important;
  top:auto!important;bottom:12px!important;
  left:auto!important;
  width:30%!important;height:30%!important;
  border:3px solid #fff!important;border-radius:13px!important;
  object-fit:cover!important;object-position:center!important;
  box-shadow:0 7px 18px rgba(3,22,36,.28)!important;
  z-index:8!important;transform:none!important;
}
.page-stay-activities .section-soft > .stay-cabin-grid > .stay-cabin-card > .stay-cabin-image > .stay-photo-secondary{
  right:12px!important;
}
.page-stay-activities .section-soft > .stay-cabin-grid > .stay-cabin-card > .stay-cabin-image > .card-photo-three{
  right:calc(30% + 20px)!important;
}
.page-stay-activities .section-soft > .stay-cabin-grid > .stay-cabin-card > .stay-cabin-image > .stay-price-badge,
html[dir="rtl"] body.lang-ar.page-stay-activities .section-soft > .stay-cabin-grid > .stay-cabin-card > .stay-cabin-image > .stay-price-badge{
  position:absolute!important;left:12px!important;right:auto!important;top:12px!important;bottom:auto!important;
  max-width:calc(100% - 24px)!important;min-height:38px!important;
  padding:0 14px!important;z-index:12!important;
  background:#fff!important;color:#0e2a3b!important;
  border:1px solid rgba(8,39,56,.15)!important;
}
@media (max-width:680px){
 .page-stay-activities .section-soft > .stay-cabin-grid > .stay-cabin-card > .stay-cabin-image > .stay-photo-secondary,
 .page-stay-activities .section-soft > .stay-cabin-grid > .stay-cabin-card > .stay-cabin-image > .card-photo-three{
   bottom:10px!important;width:30%!important;height:30%!important;border-width:3px!important;border-radius:12px!important;
 }
 .page-stay-activities .section-soft > .stay-cabin-grid > .stay-cabin-card > .stay-cabin-image > .stay-photo-secondary{right:10px!important}
 .page-stay-activities .section-soft > .stay-cabin-grid > .stay-cabin-card > .stay-cabin-image > .card-photo-three{right:calc(30% + 18px)!important}
}

/* Brand-consistent blue/navy cards, photos and package details. */
.page-stay-activities .section-soft > .stay-cabin-grid > .stay-cabin-card,
.page-blog .blog-index-section .blog-card,
.page-home .home-blog-section .blog-card,
.page-home .home-cabins-section .cabin-card{
 background:var(--a-card)!important;
 border:1px solid #285064!important;
 box-shadow:0 10px 30px rgba(3,21,34,.16)!important;
}
.page-stay-activities .stay-cabin-grid > .stay-cabin-card .stay-cabin-body,
.page-blog .blog-index-section .blog-card .blog-card-body,
.page-home .home-blog-section .blog-card .blog-card-body,
.page-home .home-cabins-section .cabin-card .cabin-body{background:transparent!important}
.page-stay-activities .stay-cabin-grid > .stay-cabin-card :is(.stay-cabin-head h2,.stay-cabin-head h2 a),
.page-blog .blog-index-section .blog-card :is(.blog-card-body h2,.blog-card-body h2 a),
.page-home .home-cabins-section .cabin-card :is(.cabin-head h2,.cabin-head h3,.cabin-head h2 a,.cabin-head h3 a),
.page-home .home-blog-section .blog-card :is(h2,h3,h2 a,h3 a){color:var(--a-card-ink)!important}
.page-stay-activities .stay-cabin-grid > .stay-cabin-card .stay-cabin-body > p,
.page-blog .blog-index-section .blog-card .blog-card-body > p,
.page-home .home-cabins-section .cabin-card .cabin-body > p,
.page-home .home-blog-section .blog-card .blog-card-body > p:not(.eyebrow){color:var(--a-card-muted)!important}
.page-stay-activities .stay-cabin-grid > .stay-cabin-card .cabin-facts span,
.page-home .home-cabins-section .cabin-card .cabin-facts span{
  background:var(--a-chip)!important;color:#e9f4fa!important;border:1px solid #35556a!important
}
.page-cabins .section-soft > .cabin-grid > .cabin-card{
  background:var(--a-card)!important;border-color:#285064!important;
}
.page-cabins .section-soft > .cabin-grid > .cabin-card .cabin-body > p{color:var(--a-card-muted)!important}

/* Shared light/dark surfaces for the rest of the website. */
html[data-asonfu-theme="dark"] :is(.panel-form,.booking-card,.stay-booking-card,.booking-bar,.reference-card,.reservation-result,.blog-empty,.included-box,.masonry-gallery figure,.home-team-card,.team-home-card-v2,.team-directory-card){
 background:var(--a-surface)!important;color:var(--a-ink)!important;border-color:var(--a-border)!important;
}
html[data-asonfu-theme="dark"] :is(.panel-form,.booking-card,.stay-booking-card,.booking-bar,.booking-note,.reference-card,.reservation-result,.blog-empty,.included-box,.masonry-gallery figure,.home-team-card,.team-home-card-v2,.team-directory-card) :is(h1,h2,h3,h4,strong,small,p,span,label,li){
 color:inherit;
}
html[data-asonfu-theme="dark"] :is(.home-team-card,.team-home-card-v2,.team-directory-card) :is(h2,h3,p){color:var(--a-ink)!important}
html[data-asonfu-theme="dark"] :is(.booking-card,.panel-form,.stay-booking-card,.included-box,.booking-bar) :is(p,li,span,small){color:var(--a-muted)}
html[data-asonfu-theme="dark"] :is(.panel-form,.booking-card,.booking-bar,.stay-booking-card) :is(input,textarea,select,option),
html[data-asonfu-theme="dark"] :is(input,textarea,select){color-scheme:dark}
html[data-asonfu-theme="dark"] :is(.panel-form,.booking-card,.stay-booking-card) :is(input,textarea,select){
 background:var(--a-field)!important;color:var(--a-ink)!important;border-color:#426174!important;
}
html[data-asonfu-theme="dark"] :is(.panel-form,.booking-card,.stay-booking-card) :is(input,textarea)::placeholder{color:#b6c9d5}
html[data-asonfu-theme="dark"] .page-home .booking-bar{background:var(--a-surface)!important;color:var(--a-ink)!important;border-color:var(--a-border)!important}
html[data-asonfu-theme="dark"] .page-home .booking-bar label{border-color:var(--a-border)!important}
html[data-asonfu-theme="dark"] .page-home .booking-bar input,
html[data-asonfu-theme="dark"] .page-home .booking-bar select{color:var(--a-ink)!important}
html[data-asonfu-theme="dark"] :is(.amenity-list li,.facts-stack span,.blog-json-fact,.blog-json-subsection,.blog-json-facts > div){background:var(--a-surface-muted)!important;color:var(--a-ink)!important}
html[data-asonfu-theme="dark"] :is(.intro-grid > p,.location-page > p,.detail-grid p,.contact-grid p,.empty-content p,.stay-activity-lead,.rich-content,.blog-json-content,.blog-article-shell,.blog-detail-body){color:var(--a-muted)!important}
html[data-asonfu-theme="dark"] :is(.rich-content h2,.rich-content h3,.blog-json-content h2,.blog-json-content h3,.blog-article-shell h2,.blog-article-shell h3){color:var(--a-ink)!important}
html[data-asonfu-theme="dark"] .site-footer{background:#06131d!important}
html[data-asonfu-theme="dark"] .location-section{background:#0a2939!important}
html[data-asonfu-theme="dark"] .site-footer :is(a,p){color:#c2d7e5!important}
html[data-asonfu-theme="dark"] .booking-price-summary{background:#254252!important;border-color:#547286!important}
html[data-asonfu-theme="dark"] .booking-price-summary :is(span,strong,p){color:#f5f8ff!important}
html[data-asonfu-theme="dark"] .language-menu-panel{background:#123449!important;border-color:#436478!important}
html[data-asonfu-theme="dark"] .language-menu-panel a{color:#e4f5fb!important}
html[data-asonfu-theme="dark"] .language-menu-panel a:hover{background:#24485d!important}
html[data-asonfu-theme="dark"] .mobile-bottom-nav{background:#0a2535!important;color:#f3f8fc!important}
html[data-asonfu-theme="dark"] .scroll-top-actions{background:#102b3c!important;color:#f3f8fc!important}

@media (prefers-reduced-motion:reduce){.site-header .asonfu-theme-toggle{transition:none!important}}
/* =====================================================================
   v5: True two-tone appearance.  DAY = white + cool greys + dark text.
   NIGHT = graphite/black gradients + white text. Images are untouched.
   Scoped to public site; the admin dashboard is intentionally unaffected.
   ===================================================================== */
:root, html[data-asonfu-theme="light"] {
  color-scheme:light;
  --ink:#182027; --cream:#f5f7f9; --sand:#edf2f5; --white:#ffffff; --muted:#51606b;
  --forest:#eef3f6; --deep:#ffffff; --gold:#edf2f5;
  --booking-blue:#edf2f5; --booking-blue-hover:#e2eaf0;
  --booking-blue-dark:#e7eef2; --booking-blue-deep:#ffffff;
  --booking-yellow:#b6c7d3; --booking-bg:#f6f8fa;
  --booking-line:#dde5eb; --booking-text:#182027; --booking-muted:#647481;
  --a-page:#f6f8fa; --a-surface:#ffffff; --a-surface-muted:#edf2f5;
  --a-ink:#17212b; --a-muted:#5d6b77; --a-border:#e0e7ec;
  --a-card:#ffffff; --a-card-ink:#17212b; --a-card-muted:#5a6772;
  --a-chip:#f1f4f6; --a-field:#ffffff;
  --t-section:#f6f8fa; --t-panel:#ffffff; --t-panel-alt:#f0f4f7;
  --t-stroke:#dce5eb; --t-ink:#17212b; --t-muted:#5d6b77;
  --t-shadow:0 12px 30px rgba(31,47,59,.07);
  --t-btn:#eaf0f4; --t-btn-hover:#dfe9ef;
}
html[data-asonfu-theme="dark"]{
  color-scheme:dark;
  --ink:#f6f6f7; --cream:#080808; --sand:#111111; --white:#141414; --muted:#c7c7cb;
  --forest:#080808; --deep:#050505; --gold:#242424;
  --booking-blue:#202020; --booking-blue-hover:#303030;
  --booking-blue-dark:#161616; --booking-blue-deep:#070707;
  --booking-yellow:#6a6a6a; --booking-bg:#080808;
  --booking-line:#303030; --booking-text:#ffffff; --booking-muted:#c4c4c8;
  --a-page:#080808; --a-surface:#141414; --a-surface-muted:#202020;
  --a-ink:#fafafa; --a-muted:#c4c4c8; --a-border:#353535;
  --a-card:#111111; --a-card-ink:#ffffff; --a-card-muted:#d0d0d3;
  --a-chip:#252525; --a-field:#191919;
  --t-section:#080808; --t-panel:#121212; --t-panel-alt:#1b1b1b;
  --t-stroke:#333333; --t-ink:#ffffff; --t-muted:#c4c4c8;
  --t-shadow:0 16px 38px rgba(0,0,0,.42);
  --t-btn:#242424; --t-btn-hover:#353535;
}
html[data-asonfu-theme] body{
  color:var(--t-ink)!important;
  background:var(--t-section)!important;
  transition:background-color .24s ease,color .24s ease;
}
html[data-asonfu-theme] :is(.section,.section-soft,.page-home .home-blog-section,.page-home .home-team-section,.page-home .team-home-v2,.team-page-section,.blog-content-section,.blog-detail-body,.home-section,.team-home-section,.stay-content-section){
  background:var(--t-section)!important;
  color:var(--t-ink)!important;
}
html[data-asonfu-theme] :is(.section-heading h2,.intro-grid h2,.detail-grid h2,.location-grid h2,.contact-grid h2,.booking-note h2,.section h1,.section h2,.section h3){color:var(--t-ink)!important}
html[data-asonfu-theme] :is(.intro-grid>p,.location-grid p,.detail-grid p,.contact-grid p,.home-team-description,.team-home-description-v2,.team-directory-copy p,.home-team-card p,.section-heading p:not(.eyebrow)){
  color:var(--t-muted)!important;
}
html[data-asonfu-theme] .eyebrow.dark{color:var(--t-muted)!important}

/* Header and navigation: never leave a blue/black navbar in DAY. */
html[data-asonfu-theme="light"] .site-header,
html[data-asonfu-theme="light"] .site-header.is-scrolled{
  color:#17212b!important;
  background:linear-gradient(180deg,rgba(255,255,255,.99),rgba(248,250,252,.97))!important;
  border-bottom:1px solid #e4ebf0!important;
  box-shadow:0 8px 26px rgba(35,52,65,.09)!important;
}
html[data-asonfu-theme="dark"] .site-header,
html[data-asonfu-theme="dark"] .site-header.is-scrolled{
  color:#ffffff!important;
  background:linear-gradient(115deg,#030303 0%,#161616 58%,#080808 100%)!important;
  border-bottom:1px solid #303030!important;
  box-shadow:0 8px 28px rgba(0,0,0,.55)!important;
}
html[data-asonfu-theme] .site-header :is(.brand,.brand strong,.brand small,.main-nav>a,.language-menu-toggle){color:var(--t-ink)!important}
html[data-asonfu-theme] .site-header .brand small{opacity:.75!important}
html[data-asonfu-theme] .site-header .main-nav{
  background:var(--t-panel)!important;
  border:1px solid var(--t-stroke)!important;
  box-shadow:0 5px 20px rgba(0,0,0,.04)!important;
}
html[data-asonfu-theme="dark"] .site-header .main-nav{
  background:linear-gradient(125deg,#0b0b0b,#1b1b1b 63%,#0d0d0d)!important;
  box-shadow:0 6px 24px rgba(0,0,0,.45)!important;
}
html[data-asonfu-theme] .site-header .main-nav>a.active,
html[data-asonfu-theme] .site-header .main-nav>a:hover{
  background:var(--t-panel-alt)!important;
  color:var(--t-ink)!important;
  border-color:var(--t-stroke)!important;
}
html[data-asonfu-theme] .site-header .main-nav>a:after{background:var(--t-muted)!important}
html[data-asonfu-theme] .site-header .language-menu-toggle,
html[data-asonfu-theme] .site-header .asonfu-theme-toggle{
  color:var(--t-ink)!important;
  background:var(--t-panel-alt)!important;
  border:1px solid var(--t-stroke)!important;
  box-shadow:none!important;
}
html[data-asonfu-theme] .site-header .asonfu-theme-toggle:hover,
html[data-asonfu-theme] .site-header .language-menu-toggle:hover{
  background:var(--t-btn-hover)!important;
}
html[data-asonfu-theme] .language-menu-panel{
  background:var(--t-panel)!important;border:1px solid var(--t-stroke)!important;
  color:var(--t-ink)!important;box-shadow:var(--t-shadow)!important;
}
html[data-asonfu-theme] .language-menu-panel :is(a,small,span){color:var(--t-ink)!important}
html[data-asonfu-theme] .language-menu-panel :is(a:hover,a.active){background:var(--t-panel-alt)!important}
html[data-asonfu-theme="light"] .menu-toggle span{background:#17212b!important}
html[data-asonfu-theme="dark"] .menu-toggle span{background:#fff!important}
@media(max-width:820px){
 html[data-asonfu-theme] body.menu-open .site-header .main-nav{background:var(--t-panel)!important}
 html[data-asonfu-theme] .site-header .main-nav{box-shadow:var(--t-shadow)!important}
}

/* Photo heroes: DAY uses a milky overlay so dark letters remain readable;
   NIGHT uses a charcoal tint so white letters remain readable. */
html[data-asonfu-theme="light"] .hero-overlay{
 background:linear-gradient(90deg,rgba(255,255,255,.94) 0%,rgba(255,255,255,.72) 47%,rgba(255,255,255,.18) 100%),linear-gradient(0deg,rgba(255,255,255,.50),transparent 60%)!important;
}
html[data-asonfu-theme="dark"] .hero-overlay{
 background:linear-gradient(90deg,rgba(0,0,0,.86),rgba(0,0,0,.49) 58%,rgba(0,0,0,.25)),linear-gradient(0deg,rgba(0,0,0,.70),transparent 67%)!important;
}
html[data-asonfu-theme="light"] :is(.page-hero:before,.cabin-detail-hero:after,.blog-detail-hero:after,.stay-detail-hero:after){
 background:linear-gradient(0deg,rgba(255,255,255,.85),rgba(255,255,255,.12) 72%)!important;
}
html[data-asonfu-theme="dark"] :is(.page-hero:before,.cabin-detail-hero:after,.blog-detail-hero:after,.stay-detail-hero:after){
 background:linear-gradient(0deg,rgba(0,0,0,.86),rgba(0,0,0,.14) 70%)!important;
}
html[data-asonfu-theme] :is(.home-hero,.page-hero,.cabin-detail-hero,.blog-detail-hero,.stay-detail-hero,.detail-title,.blog-detail-title,.hero-content){color:var(--t-ink)!important}
html[data-asonfu-theme] :is(.hero-content h1,.home-hero .hero-copy,.page-hero h1,.page-hero p,.detail-title h1,.detail-title p,.blog-detail-title h1,.blog-detail-title p){
 color:var(--t-ink)!important;
 text-shadow:none!important;
}
html[data-asonfu-theme] :is(.home-hero .eyebrow,.page-hero .eyebrow,.detail-title .eyebrow,.blog-detail-title .eyebrow){color:var(--t-muted)!important}

/* Cards, content panels, sidebars, FAQs and overlays. */
html[data-asonfu-theme] :is(
 .cabin-card,.stay-cabin-card,.blog-card,.home-blog-card,
 .home-team-card,.team-home-card-v2,.team-directory-card,.team-card,
 .booking-card,.panel-form,.reference-card,.reservation-result,.blog-empty,.booking-note,
 .booking-bar,.booking-price-summary,.stay-booking-card,.included-box,.masonry-gallery figure,
 .blog-article-shell,.blog-json-intro-card,.blog-json-section,.blog-json-tips,.blog-json-links,.blog-json-facts,.blog-json-toc,
 .blog-json-highlight-box,.blog-json-quote,.blog-json-note,.blog-json-subsection,.blog-json-faq details,
 .map-placeholder,.calendar-popover,.date-picker-panel,.booking-calendar,.tc-custom-select-options
 ){
  color:var(--t-ink)!important;
  background:var(--t-panel)!important;
  border-color:var(--t-stroke)!important;
  box-shadow:var(--t-shadow)!important;
}
html[data-asonfu-theme="dark"] :is(
 .cabin-card,.stay-cabin-card,.blog-card,.home-blog-card,
 .home-team-card,.team-home-card-v2,.team-directory-card,.team-card,
 .booking-card,.panel-form,.reference-card,.reservation-result,.blog-empty,.booking-note,
 .booking-bar,.booking-price-summary,.stay-booking-card,.included-box,.masonry-gallery figure,
 .blog-article-shell,.blog-json-intro-card,.blog-json-section,.blog-json-tips,.blog-json-links,.blog-json-facts,.blog-json-toc,
 .blog-json-highlight-box,.blog-json-quote,.blog-json-note,.blog-json-subsection,.blog-json-faq details,
 .map-placeholder,.calendar-popover,.date-picker-panel,.booking-calendar,.tc-custom-select-options
 ){
  background:linear-gradient(145deg,#090909,#171717 58%,#0b0b0b)!important;
}
html[data-asonfu-theme] :is(
 .page-cabins .section-soft>.cabin-grid>.cabin-card,
 .page-stay-activities .section-soft>.stay-cabin-grid>.stay-cabin-card,
 .page-blog .blog-index-section .blog-card,
 .page-home .home-cabins-section .cabin-card,
 .page-home .home-blog-section .blog-card
 ){
  background:var(--t-panel)!important;border-color:var(--t-stroke)!important;
  box-shadow:var(--t-shadow)!important;
}
html[data-asonfu-theme="dark"] :is(
 .page-cabins .section-soft>.cabin-grid>.cabin-card,
 .page-stay-activities .section-soft>.stay-cabin-grid>.stay-cabin-card,
 .page-blog .blog-index-section .blog-card,
 .page-home .home-cabins-section .cabin-card,
 .page-home .home-blog-section .blog-card
 ){
  background:linear-gradient(135deg,#0a0a0a,#1c1c1c 55%,#0c0c0c)!important;
}
html[data-asonfu-theme] :is(.cabin-body,.stay-cabin-body,.blog-card-body){background:transparent!important;color:var(--t-ink)!important}
html[data-asonfu-theme] :is(.cabin-head h2,.cabin-head h3,.cabin-head a,.stay-cabin-head h2,.stay-cabin-head a,.blog-card-body h2,.blog-card-body h3,.blog-card-body h2 a,.blog-card-body h3 a,.home-blog-card h3,.home-blog-card a,.team-home-card-v2 h3,.team-directory-copy h2,.home-team-card h3,.team-card h2,.team-card h3){color:var(--t-ink)!important}
html[data-asonfu-theme] :is(.cabin-body>p,.stay-cabin-body>p,.blog-card-body>p:not(.eyebrow),.home-blog-card p,.team-card-bio,.team-card-identity p){color:var(--t-muted)!important}
html[data-asonfu-theme] :is(.page-cabins .section-soft>.cabin-grid>.cabin-card .cabin-head h2,.page-cabins .section-soft>.cabin-grid>.cabin-card .cabin-head h2 a){color:var(--t-ink)!important}
html[data-asonfu-theme] .page-cabins .section-soft>.cabin-grid>.cabin-card .cabin-body>p{color:var(--t-muted)!important}
html[data-asonfu-theme] :is(.cabin-facts span,.stay-cabin-facts span,.facts-stack span,.blog-json-fact,.blog-json-subsection,.amenity-list li,.blog-json-bullets li,.blog-json-check-list li,.blog-json-faq summary){
  background:var(--t-panel-alt)!important;color:var(--t-ink)!important;
  border-color:var(--t-stroke)!important;
}
html[data-asonfu-theme] :is(.page-cabins .section-soft>.cabin-grid>.cabin-card .cabin-facts span,.page-stay-activities .stay-cabin-grid>.stay-cabin-card .stay-cabin-facts span){
 background:var(--t-panel-alt)!important;color:var(--t-ink)!important;border-color:var(--t-stroke)!important;
}
html[data-asonfu-theme] :is(.cabin-image .card-price-badge,.cabin-body>.card-price-badge,.stay-price-badge,.blog-card-image span,.blog-json-fact strong){
 background:var(--t-panel-alt)!important;color:var(--t-ink)!important;border-color:var(--t-stroke)!important;
}
html[data-asonfu-theme] .page-cabins .section-soft>.cabin-grid>.cabin-card .cabin-body>.card-price-badge{
 background:var(--t-panel-alt)!important;color:var(--t-ink)!important;border-color:var(--t-stroke)!important;
}
html[data-asonfu-theme] .page-stay-activities .section-soft>.stay-cabin-grid>.stay-cabin-card .stay-cabin-image>.stay-price-badge{
 background:var(--t-panel)!important;color:var(--t-ink)!important;border-color:var(--t-stroke)!important;
}
html[data-asonfu-theme] :is(.blog-json-content,.blog-json-content p,.blog-json-intro,.blog-article-excerpt,.blog-json-section p,.blog-json-section-lead,.rich-content,.detail-grid p,.stay-activity-lead,.team-directory-copy p,.blog-json-faq details>div,.booking-card>span){
 color:var(--t-muted)!important;
}
html[data-asonfu-theme] :is(.blog-json-content h1,.blog-json-content h2,.blog-json-content h3,.blog-json-content h4,.blog-json-faq summary,.blog-json-toc-head strong,.blog-json-fact strong,.rich-content h2,.rich-content h3,.blog-title-block h1){color:var(--t-ink)!important}
html[data-asonfu-theme="dark"] :is(.blog-json-content a,.blog-json-links a,.rich-content a,.text-link,.blog-back){color:#eaeaea!important;border-color:#bbb!important}
html[data-asonfu-theme="light"] :is(.blog-json-content a,.blog-json-links a,.rich-content a,.text-link,.blog-back){color:#263c4b!important;border-color:#95a7b4!important}
html[data-asonfu-theme] :is(.booking-note p,.booking-note li,.included-box p,.reference-card p,.booking-price-summary p,.blog-json-note p){color:var(--t-muted)!important}

/* All interactive calls-to-action adopt the selected palette, not the old blue/green. */
html[data-asonfu-theme] :is(.btn-gold,.btn-dark,.btn-whatsapp,.booking-submit,.team-more-btn,.team-home-button-v2,.mobile-book,.mobile-bottom-book,.whatsapp-float,.booking-pair .btn){
 color:var(--t-ink)!important;
 background:var(--t-btn)!important;
 border:1px solid var(--t-stroke)!important;
 box-shadow:none!important;
}
html[data-asonfu-theme="dark"] :is(.btn-gold,.btn-dark,.btn-whatsapp,.booking-submit,.team-more-btn,.team-home-button-v2,.mobile-book,.mobile-bottom-book,.whatsapp-float,.booking-pair .btn){
 color:#fff!important;
 background:linear-gradient(140deg,#151515,#292929 60%,#111)!important;
}
html[data-asonfu-theme] :is(.btn-gold,.btn-dark,.btn-whatsapp,.booking-submit,.team-more-btn,.team-home-button-v2,.mobile-book,.mobile-bottom-book,.whatsapp-float,.booking-pair .btn):hover{
 background:var(--t-btn-hover)!important;color:var(--t-ink)!important;border-color:var(--t-muted)!important;
}
html[data-asonfu-theme] :is(.btn-outline-light,.booking-bar .booking-submit){color:var(--t-ink)!important;border-color:var(--t-stroke)!important;background:var(--t-btn)!important}
html[data-asonfu-theme="dark"] :is(.btn-outline-light,.booking-bar .booking-submit){background:linear-gradient(135deg,#171717,#2b2b2b)!important;color:#fff!important}
html[data-asonfu-theme] .team-more-btn span:last-child,
html[data-asonfu-theme] .team-home-button-arrow-v2{background:var(--t-panel-alt)!important;color:var(--t-ink)!important}

/* Booking forms + dropdowns + date controls: no isolated bright blocks in night. */
html[data-asonfu-theme] :is(input:not([type="checkbox"]):not([type="radio"]),textarea,select,.tc-custom-select-toggle,.calendar-day,.booking-bar label){
 color:var(--t-ink)!important;
 border-color:var(--t-stroke)!important;
}
html[data-asonfu-theme] :is(.panel-form input,.panel-form select,.panel-form textarea,.booking-card input,.booking-card select,.booking-card textarea,.stay-booking-card input,.stay-booking-card select,.booking-bar input,.booking-bar select,.tc-custom-select-toggle,.calendar-day){
 background:var(--t-panel)!important;color:var(--t-ink)!important;border-color:var(--t-stroke)!important;
}
html[data-asonfu-theme] :is(input,textarea)::placeholder{color:var(--t-muted)!important;opacity:1}
html[data-asonfu-theme] :is(.calendar-day.is-selected,.calendar-day.selected,.calendar-day.is-range-start,.calendar-day.is-range-end,.calendar-day.is-in-range,.calendar-day.in-range){background:var(--t-panel-alt)!important;color:var(--t-ink)!important;border-color:var(--t-muted)!important}
html[data-asonfu-theme] :is(.calendar-day .day-price,.calendar-price,.booking-price-summary>strong,.booking-bar label span){color:var(--t-muted)!important}

/* Footer, map info, floating actions, mobile quick navigation. */
html[data-asonfu-theme="light"] :is(.site-footer,.location-section){
 background:linear-gradient(150deg,#f4f7f9,#ffffff 60%,#edf2f5)!important;
 color:var(--t-ink)!important;
 border-top:1px solid var(--t-stroke)!important;
}
html[data-asonfu-theme="dark"] :is(.site-footer,.location-section){
 background:linear-gradient(145deg,#030303,#161616 55%,#060606)!important;
 color:#fff!important;
 border-top:1px solid var(--t-stroke)!important;
}
html[data-asonfu-theme] :is(.site-footer a,.site-footer h3,.site-footer h4,.site-footer p,.site-footer small,.site-footer span,.footer-top a,.footer-top p,.location-grid p,.location-grid h2,.location-section a){color:var(--t-ink)!important}
html[data-asonfu-theme] .footer-bottom{border-color:var(--t-stroke)!important}
html[data-asonfu-theme] :is(.mobile-bottom-nav,.scroll-top-actions){
 color:var(--t-ink)!important;background:var(--t-panel)!important;
 border:1px solid var(--t-stroke)!important;box-shadow:var(--t-shadow)!important;
}
html[data-asonfu-theme="dark"] :is(.mobile-bottom-nav,.scroll-top-actions){
 background:linear-gradient(135deg,#090909,#202020 60%,#090909)!important;
}
html[data-asonfu-theme] :is(.mobile-bottom-nav a,.scroll-top-actions a){color:var(--t-ink)!important}
html[data-asonfu-theme] :is(.mobile-bottom-nav a.active,.scroll-top-actions a.active){color:var(--t-ink)!important;background:var(--t-panel-alt)!important}
html[data-asonfu-theme] :is(.mobile-bottom-nav .mobile-bottom-book,.mobile-bottom-nav .mobile-bottom-book.active){color:var(--t-ink)!important;background:var(--t-btn)!important;border-color:var(--t-stroke)!important}
html[data-asonfu-theme="dark"] :is(.mobile-bottom-nav .mobile-bottom-book,.mobile-bottom-nav .mobile-bottom-book.active){color:#fff!important;background:linear-gradient(115deg,#191919,#292929)!important}
html[data-asonfu-theme] .map-placeholder{color:var(--t-ink)!important}

/* Team pages historically used a strong blue background and tinted tiles. */
html[data-asonfu-theme] :is(.team-page-intro,.team-page-section,.team-home-v2,.home-team-section){
 background:var(--t-section)!important;color:var(--t-ink)!important;
}
html[data-asonfu-theme] .team-page-intro :is(h1,p,.eyebrow){color:var(--t-ink)!important}
html[data-asonfu-theme] :is(.team-card,.team-profile-photo,.team-home-avatar-v2,.home-team-photo,.team-directory-photo){
 background:var(--t-panel-alt)!important;border-color:var(--t-stroke)!important;color:var(--t-ink)!important;
}
html[data-asonfu-theme="dark"] .team-card{background:linear-gradient(135deg,#111,#242424,#0f0f0f)!important}
html[data-asonfu-theme] .team-card :is(h2,h3,p){color:var(--t-ink)!important}
html[data-asonfu-theme] .team-card-number{color:var(--t-muted)!important;opacity:.16}

/* The assistant also follows the chosen appearance and keeps its package blocks. */
html[data-asonfu-theme] .asonfu-bot{color:var(--t-ink)!important}
html[data-asonfu-theme] .asonfu-bot__launcher,
html[data-asonfu-theme] .asonfu-bot__head,
html[data-asonfu-theme] .asonfu-bot__send{
 background:var(--t-panel-alt)!important;color:var(--t-ink)!important;border-color:var(--t-stroke)!important;
}
html[data-asonfu-theme="dark"] :is(.asonfu-bot__launcher,.asonfu-bot__head,.asonfu-bot__send){
 background:linear-gradient(120deg,#050505,#272727)!important;color:#fff!important;
}
html[data-asonfu-theme] .asonfu-bot__dialog,
html[data-asonfu-theme] .asonfu-bot__messages,
html[data-asonfu-theme] .asonfu-bot__notice,
html[data-asonfu-theme] .asonfu-bot__form,
html[data-asonfu-theme] .asonfu-bot__foot{
 background:var(--t-panel)!important;color:var(--t-ink)!important;border-color:var(--t-stroke)!important;
}
html[data-asonfu-theme="dark"] :is(.asonfu-bot__dialog,.asonfu-bot__messages){background:linear-gradient(145deg,#080808,#181818)!important}
html[data-asonfu-theme] .asonfu-bot__heading :is(strong,small),
html[data-asonfu-theme] .asonfu-bot__foot :is(span,button),
html[data-asonfu-theme] .asonfu-bot__notice{color:var(--t-ink)!important}
html[data-asonfu-theme] .asonfu-bot__bubble--assistant{
 background:var(--t-panel-alt)!important;border:1px solid var(--t-stroke)!important;color:var(--t-ink)!important;
}
html[data-asonfu-theme="dark"] .asonfu-bot__bubble--assistant{background:linear-gradient(145deg,#161616,#272727)!important}
html[data-asonfu-theme] .asonfu-bot__bubble--user{background:var(--t-btn)!important;color:var(--t-ink)!important}
html[data-asonfu-theme="dark"] .asonfu-bot__bubble--user{background:linear-gradient(145deg,#222,#333)!important;color:#fff!important}
html[data-asonfu-theme] :is(.asonfu-bot__bubble--assistant .asonfu-bot__rich-item,.asonfu-bot__bubble--assistant .asonfu-bot__link-block){
 background:var(--t-panel)!important;border-color:var(--t-stroke)!important;
}
html[data-asonfu-theme] :is(.asonfu-bot__bubble--assistant .asonfu-bot__rich-item-title,.asonfu-bot__bubble--assistant .asonfu-bot__rich-item-meta,.asonfu-bot__bubble--assistant .asonfu-bot__p,.asonfu-bot__bubble--assistant .asonfu-bot__link-label,.asonfu-bot__bubble a){color:var(--t-ink)!important}
html[data-asonfu-theme] :is(.asonfu-bot__form textarea,.asonfu-bot__close){
 background:var(--t-panel-alt)!important;color:var(--t-ink)!important;border-color:var(--t-stroke)!important;
}
html[data-asonfu-theme] .asonfu-bot__status{color:var(--t-muted)!important}

@media(prefers-reduced-motion:reduce){html[data-asonfu-theme] body{transition:none!important}}


/* Force responsive booking CTAs and third-party-accented card buttons into monochrome. */
html[data-asonfu-theme] body.page-stay-activities .stay-cabin-grid>.stay-cabin-card .card-actions .btn,
html[data-asonfu-theme] body.page-cabins .section-soft>.cabin-grid>.cabin-card .card-actions .btn,
html[data-asonfu-theme] body.page-home .hero-buttons .btn,
html[data-asonfu-theme] body.page-home .booking-bar .booking-submit,
html[data-asonfu-theme] body .header-actions .btn.btn-gold{
  background:var(--t-btn)!important;
  border-color:var(--t-stroke)!important;
  color:var(--t-ink)!important;
}
html[data-asonfu-theme="dark"] body.page-stay-activities .stay-cabin-grid>.stay-cabin-card .card-actions .btn,
html[data-asonfu-theme="dark"] body.page-cabins .section-soft>.cabin-grid>.cabin-card .card-actions .btn,
html[data-asonfu-theme="dark"] body.page-home .hero-buttons .btn,
html[data-asonfu-theme="dark"] body.page-home .booking-bar .booking-submit,
html[data-asonfu-theme="dark"] body .header-actions .btn.btn-gold{
  background:linear-gradient(135deg,#161616,#303030 60%,#151515)!important;
  color:#fff!important;
}
html[data-asonfu-theme] body.page-cabins .section-soft>.cabin-grid>.cabin-card>.cabin-image{
  background:var(--t-panel-alt)!important;
}
html[data-asonfu-theme] .booking-bar select option,
html[data-asonfu-theme] .panel-form select option,
html[data-asonfu-theme] .booking-card select option{
  background:var(--t-panel)!important;color:var(--t-ink)!important;
}
html[data-asonfu-theme="dark"] .site-header .asonfu-theme-toggle .asonfu-theme-sun{color:#fff!important}
html[data-asonfu-theme="light"] .site-header .asonfu-theme-toggle .asonfu-theme-moon{color:#17212b!important}
/* ================================================================
  Asonfu v6 | contrast and accessibility audit
  Works with v4/v5 and retains card sizes, images, prices, and PHP.
  Light = light surfaces/dark type. Dark = black gradients/white type.
  --------------------------------------------------------------- */
html[data-asonfu-theme="light"]{
  --a6-surface:#ffffff;
  --a6-alt:#edf1f4;
  --a6-text:#18252f;
  --a6-subtle:#4e5e69;
  --a6-border:#cdd7de;
  --a6-cta:#e7edf1;
  --a6-cta-hover:#dae4eb;
  --a6-accent:#283d4a;
  --a6-photo-pill:#ffffff;
  --a6-photo-text:#1a2730;
  --a6-focus:#315f7f;
  --a6-unavailable:#f9eded;
  --a6-unavailable-text:#973c35;
}
html[data-asonfu-theme="dark"]{
  --a6-surface:#111111;
  --a6-alt:#242424;
  --a6-text:#f9fafb;
  --a6-subtle:#d0d0d2;
  --a6-border:#454545;
  --a6-cta:#252525;
  --a6-cta-hover:#363636;
  --a6-accent:#ffffff;
  --a6-photo-pill:#1b1b1b;
  --a6-photo-text:#ffffff;
  --a6-focus:#e1e1e1;
  --a6-unavailable:#322121;
  --a6-unavailable-text:#ffc1b7;
}

/* --- Clear type on chips, hero CTAs, blog/category links, and cabin prices. --- */
html[data-asonfu-theme] body.page-home .home-cabins-section .cabin-card .cabin-image .card-price-badge,
html[data-asonfu-theme] body.page-home .home-cabins-section .cabin-card .cabin-image > span.card-price-badge,
html[data-asonfu-theme] body.page-cabins .section-soft .cabin-card .cabin-body > span.card-price-badge,
html[data-asonfu-theme] body.page-stay-activities .stay-cabin-grid .stay-cabin-card .stay-cabin-image > span.stay-price-badge,
html[data-asonfu-theme] body.page-blog .blog-index-section .blog-card-image > span,
html[data-asonfu-theme] body.page-home .home-blog-section .blog-card-image > span{
  color:var(--a6-photo-text)!important;
  -webkit-text-fill-color:var(--a6-photo-text)!important;
  background:var(--a6-photo-pill)!important;
  border:1px solid var(--a6-border)!important;
  opacity:1!important;
  text-shadow:none!important;
}
html[data-asonfu-theme] body.page-home .home-cabins-section .cabin-card .cabin-facts span,
html[data-asonfu-theme] body.page-cabins .section-soft .cabin-card .cabin-facts span,
html[data-asonfu-theme] body.page-stay-activities .stay-cabin-card .cabin-facts span,
html[data-asonfu-theme] body .blog-json-fact,
html[data-asonfu-theme] body .blog-json-facts > div{
  background:var(--a6-alt)!important;
  color:var(--a6-text)!important;
  -webkit-text-fill-color:var(--a6-text)!important;
  border-color:var(--a6-border)!important;
}
html[data-asonfu-theme] body .section-heading > a.text-link,
html[data-asonfu-theme] body .section-heading a.text-link,
html[data-asonfu-theme] body .section-heading .btn,
html[data-asonfu-theme] body .home-blog-section .blog-card .text-link,
html[data-asonfu-theme] body .blog-index-section .blog-card .text-link{
  background:var(--a6-cta)!important;
  color:var(--a6-text)!important;
  -webkit-text-fill-color:var(--a6-text)!important;
  border:1px solid var(--a6-border)!important;
  text-shadow:none!important;
  opacity:1!important;
}
html[data-asonfu-theme] body .section-heading a.text-link:hover,
html[data-asonfu-theme] body .home-blog-section .blog-card .text-link:hover,
html[data-asonfu-theme] body .blog-index-section .blog-card .text-link:hover{
  background:var(--a6-cta-hover)!important;
  color:var(--a6-text)!important;
}
html[data-asonfu-theme] body :is(.card-actions,.hero-buttons,.booking-pair) :is(.btn,.btn-gold,.btn-whatsapp),
html[data-asonfu-theme] body :is(.booking-submit,.booking-wa-submit,.btn-outline-light,.header-actions .btn-gold),
html[data-asonfu-theme] body :is(.team-more-btn,.team-home-button-v2,.mobile-bottom-book){
  color:var(--a6-text)!important;
  -webkit-text-fill-color:var(--a6-text)!important;
  background:var(--a6-cta)!important;
  border-color:var(--a6-border)!important;
  text-shadow:none!important;
  opacity:1!important;
}
html[data-asonfu-theme="dark"] body :is(.card-actions,.hero-buttons,.booking-pair) :is(.btn,.btn-gold,.btn-whatsapp),
html[data-asonfu-theme="dark"] body :is(.booking-submit,.booking-wa-submit,.btn-outline-light,.header-actions .btn-gold),
html[data-asonfu-theme="dark"] body :is(.team-more-btn,.team-home-button-v2,.mobile-bottom-book){
  background:linear-gradient(135deg,#171717,#303030 60%,#161616)!important;
}
html[data-asonfu-theme] body :is(.card-actions,.hero-buttons,.booking-pair) :is(.btn,.btn-gold,.btn-whatsapp):hover,
html[data-asonfu-theme] body :is(.booking-submit,.booking-wa-submit,.header-actions .btn-gold):hover{
  background:var(--a6-cta-hover)!important;
  color:var(--a6-text)!important;
  -webkit-text-fill-color:var(--a6-text)!important;
}

/* --- The home booking bar, labels and custom-select MUST share one palette. --- */
html[data-asonfu-theme] body.page-home .booking-bar,
html[data-asonfu-theme] body.page-home .booking-bar label,
html[data-asonfu-theme] body.page-home .booking-bar-actions{
  color:var(--a6-text)!important;
  border-color:var(--a6-border)!important;
}
html[data-asonfu-theme="light"] body.page-home .booking-bar{
  background:rgba(255,255,255,.97)!important;
}
html[data-asonfu-theme="dark"] body.page-home .booking-bar{
  background:linear-gradient(130deg,#090909,#202020 66%,#0c0c0c)!important;
}
html[data-asonfu-theme] body.page-home .booking-bar label > span{
  color:var(--a6-subtle)!important;
  -webkit-text-fill-color:var(--a6-subtle)!important;
  opacity:1!important;
}
html[data-asonfu-theme] body.page-home .booking-bar :is(input,select,.tc-custom-select-toggle,.tc-custom-select-value){
  background:transparent!important;
  color:var(--a6-text)!important;
  -webkit-text-fill-color:var(--a6-text)!important;
  opacity:1!important;
  caret-color:var(--a6-text)!important;
}
html[data-asonfu-theme] body.page-home .booking-bar input::placeholder{
  color:var(--a6-subtle)!important;
  -webkit-text-fill-color:var(--a6-subtle)!important;
  opacity:1!important;
}
html[data-asonfu-theme] body.page-home .booking-bar :is(.tc-custom-select-menu,.tc-custom-select-option){
  color:var(--a6-text)!important;
  -webkit-text-fill-color:var(--a6-text)!important;
  border-color:var(--a6-border)!important;
}
html[data-asonfu-theme] body.page-home .tc-custom-select-menu{
  background:var(--a6-surface)!important;
  border:1px solid var(--a6-border)!important;
  box-shadow:0 16px 40px rgba(0,0,0,.19)!important;
}
html[data-asonfu-theme="dark"] body.page-home .tc-custom-select-menu{
  background:linear-gradient(145deg,#101010,#202020 68%,#101010)!important;
}
html[data-asonfu-theme] body.page-home :is(.tc-custom-select-option,.tc-custom-select-option-label,.tc-custom-select-option-check){
  color:var(--a6-text)!important;
  -webkit-text-fill-color:var(--a6-text)!important;
  opacity:1!important;
}
html[data-asonfu-theme] body.page-home .tc-custom-select-option:hover,
html[data-asonfu-theme] body.page-home .tc-custom-select-option:focus-visible,
html[data-asonfu-theme] body.page-home .tc-custom-select-option.is-selected{
  background:var(--a6-alt)!important;
  color:var(--a6-text)!important;
}
html[data-asonfu-theme] body.page-home .tc-custom-select-option-mark{
  border-color:var(--a6-subtle)!important;
  background:var(--a6-surface)!important;
}
html[data-asonfu-theme] body.page-home .tc-custom-select-option.is-selected .tc-custom-select-option-mark{
  background:var(--a6-accent)!important;
}

/* --- Real JS date picker: it is appended directly to <body> (not a
   .booking-calendar). Cover every calendar state, month title & prices. --- */
html[data-asonfu-theme] body > .tc-calendar{
  background:var(--a6-surface)!important;
  color:var(--a6-text)!important;
  border:1px solid var(--a6-border)!important;
  box-shadow:0 22px 60px rgba(0,0,0,.26)!important;
  color-scheme:light;
}
html[data-asonfu-theme="dark"] body > .tc-calendar{
  background:linear-gradient(145deg,#101010,#1c1c1c 65%,#0b0b0b)!important;
  color-scheme:dark;
}
html[data-asonfu-theme] body > .tc-calendar :is(.tc-calendar-title,.tc-calendar-head,.tc-calendar-day-number){
  color:var(--a6-text)!important;
  -webkit-text-fill-color:var(--a6-text)!important;
  opacity:1!important;
}
html[data-asonfu-theme] body > .tc-calendar .tc-calendar-nav{
  background:var(--a6-alt)!important;
  color:var(--a6-text)!important;
  -webkit-text-fill-color:var(--a6-text)!important;
  border:1px solid var(--a6-border)!important;
}
html[data-asonfu-theme] body > .tc-calendar .tc-calendar-nav:hover{
  background:var(--a6-cta-hover)!important;
}
html[data-asonfu-theme] body > .tc-calendar .tc-calendar-weekdays span,
html[data-asonfu-theme] body > .tc-calendar .tc-calendar-legend,
html[data-asonfu-theme] body > .tc-calendar .tc-calendar-price-note{
  color:var(--a6-subtle)!important;
  -webkit-text-fill-color:var(--a6-subtle)!important;
  opacity:1!important;
}
html[data-asonfu-theme] body > .tc-calendar .tc-calendar-legend{
  border-top:1px solid var(--a6-border)!important;
}
html[data-asonfu-theme] body > .tc-calendar .tc-calendar-day{
  background:transparent!important;
  color:var(--a6-text)!important;
  -webkit-text-fill-color:var(--a6-text)!important;
  border:1px solid transparent!important;
  opacity:1!important;
}
html[data-asonfu-theme] body > .tc-calendar .tc-calendar-day-price{
  color:var(--a6-subtle)!important;
  -webkit-text-fill-color:var(--a6-subtle)!important;
}
html[data-asonfu-theme] body > .tc-calendar .tc-calendar-day:hover:not(:disabled){
  background:var(--a6-alt)!important;
  border-color:var(--a6-border)!important;
}
html[data-asonfu-theme] body > .tc-calendar .tc-calendar-day.is-today{
  border-color:var(--a6-accent)!important;
}
html[data-asonfu-theme] body > .tc-calendar .tc-calendar-day.is-selected{
  background:var(--a6-alt)!important;
  color:var(--a6-text)!important;
  border-color:var(--a6-accent)!important;
}
html[data-asonfu-theme] body > .tc-calendar .tc-calendar-day.is-disabled:not(.is-unavailable),
html[data-asonfu-theme] body > .tc-calendar .tc-calendar-day:disabled:not(.is-unavailable){
  background:var(--a6-alt)!important;
  color:var(--a6-subtle)!important;
  -webkit-text-fill-color:var(--a6-subtle)!important;
  opacity:.62!important;
}
html[data-asonfu-theme] body > .tc-calendar .tc-calendar-day.is-disabled:not(.is-unavailable) .tc-calendar-day-number,
html[data-asonfu-theme] body > .tc-calendar .tc-calendar-day:disabled:not(.is-unavailable) .tc-calendar-day-number{
  color:var(--a6-subtle)!important;
  -webkit-text-fill-color:var(--a6-subtle)!important;
}
html[data-asonfu-theme] body > .tc-calendar .tc-calendar-day.is-unavailable{
  background:var(--a6-unavailable)!important;
  color:var(--a6-unavailable-text)!important;
  border-color:transparent!important;
}
html[data-asonfu-theme] body > .tc-calendar .tc-calendar-day.is-unavailable :is(.tc-calendar-day-number,.tc-calendar-day-price){
  color:var(--a6-unavailable-text)!important;
  -webkit-text-fill-color:var(--a6-unavailable-text)!important;
}
html[data-asonfu-theme] body > .tc-calendar .tc-calendar-legend i{
  background:var(--a6-unavailable)!important;
  border:1px solid var(--a6-unavailable-text)!important;
}

/* --- All native forms, popup menus, detail/FAQ panels --- */
html[data-asonfu-theme] body :is(.panel-form,.booking-card,.stay-booking-card,.reservation-result,.booking-price-summary,.included-box,.blog-json-faq details,.blog-json-note,.blog-json-section,.blog-json-subsection,.contact-card,.reference-card){
  color:var(--a6-text)!important;
  border-color:var(--a6-border)!important;
}
html[data-asonfu-theme] body :is(.panel-form,.booking-card,.stay-booking-card,.contact-grid,.booking-form,.reservation-result) :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea),
html[data-asonfu-theme] body .tc-custom-select-menu select{
  background:var(--a6-surface)!important;
  color:var(--a6-text)!important;
  -webkit-text-fill-color:var(--a6-text)!important;
  border:1px solid var(--a6-border)!important;
  color-scheme:light;
}
html[data-asonfu-theme="dark"] body :is(.panel-form,.booking-card,.stay-booking-card,.contact-grid,.booking-form,.reservation-result) :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea){
  color-scheme:dark;
}
html[data-asonfu-theme] body :is(input,textarea)::placeholder{
  color:var(--a6-subtle)!important;
  opacity:1!important;
}
html[data-asonfu-theme] body select option{
  color:var(--a6-text)!important;
  background:var(--a6-surface)!important;
}
html[data-asonfu-theme] body :is(.booking-card,.panel-form,.stay-booking-card,.blog-json-note,.reference-card,.reservation-result,.included-box) :is(h1,h2,h3,h4,strong){
  color:var(--a6-text)!important;
}
html[data-asonfu-theme] body :is(.booking-card,.panel-form,.stay-booking-card,.blog-json-note,.reference-card,.reservation-result,.included-box) :is(p,small,li){
  color:var(--a6-subtle)!important;
}

/* Maintain black text on pale decorative overlays in day and white on
   charcoal panels at night; the text should never inherit photo white. */
html[data-asonfu-theme] body :is(.language-menu-panel,.language-menu-panel a,.mobile-bottom-nav,.mobile-bottom-nav a,.site-footer,.site-footer a,.footer-bottom){
  color:var(--a6-text)!important;
}
html[data-asonfu-theme] body :is(.tc-custom-select-option,.tc-custom-select-toggle,.tc-calendar-day,.tc-calendar-nav,
  .asonfu-theme-toggle,.language-menu-toggle):focus-visible{
  outline:2px solid var(--a6-focus)!important;
  outline-offset:2px!important;
}

/* v6: high-specificity booking actions that the historic site CSS gave blue
   important backgrounds; keep them legible in both modes. */
html[data-asonfu-theme] body.page-home .home-cabins-section .cabin-card .card-actions a.btn,
html[data-asonfu-theme] body.page-home .home-cabins-section .cabin-card .card-actions a.btn-gold,
html[data-asonfu-theme] body.page-home .home-cabins-section .cabin-card .card-actions a.btn-whatsapp,
html[data-asonfu-theme] body.page-cabins .section-soft > .cabin-grid > .cabin-card .card-actions a.btn,
html[data-asonfu-theme] body.page-stay-activities .section-soft > .stay-cabin-grid > .stay-cabin-card .card-actions a.btn,
html[data-asonfu-theme] body.page-home .booking-bar-actions button.booking-submit,
html[data-asonfu-theme] body.page-home .booking-bar-actions button.booking-wa-submit{
  background:var(--a6-cta)!important;
  color:var(--a6-text)!important;
  -webkit-text-fill-color:var(--a6-text)!important;
  border-color:var(--a6-border)!important;
}
html[data-asonfu-theme="dark"] body.page-home .home-cabins-section .cabin-card .card-actions a.btn,
html[data-asonfu-theme="dark"] body.page-cabins .section-soft > .cabin-grid > .cabin-card .card-actions a.btn,
html[data-asonfu-theme="dark"] body.page-stay-activities .section-soft > .stay-cabin-grid > .stay-cabin-card .card-actions a.btn,
html[data-asonfu-theme="dark"] body.page-home .booking-bar-actions button.booking-submit,
html[data-asonfu-theme="dark"] body.page-home .booking-bar-actions button.booking-wa-submit{
  background:linear-gradient(135deg,#161616,#303030 62%,#151515)!important;
}
html[data-asonfu-theme] body.page-home .home-cabins-section .cabin-card .card-actions a.btn:hover,
html[data-asonfu-theme] body.page-cabins .section-soft > .cabin-grid > .cabin-card .card-actions a.btn:hover,
html[data-asonfu-theme] body.page-stay-activities .section-soft > .stay-cabin-grid > .stay-cabin-card .card-actions a.btn:hover,
html[data-asonfu-theme] body.page-home .booking-bar-actions button:hover{
  color:var(--a6-text)!important;
  -webkit-text-fill-color:var(--a6-text)!important;
  background:var(--a6-cta-hover)!important;
}

/* Navigation selected state: never a pale active pill with white lettering. */
html[data-asonfu-theme="light"] body .site-header .main-nav > a.active,
html[data-asonfu-theme="light"] body .site-header .main-nav > a:hover{
  background:#e7edf1!important;
  color:#18252f!important;
  -webkit-text-fill-color:#18252f!important;
  border-color:#d1dce3!important;
}
html[data-asonfu-theme="dark"] body .site-header .main-nav > a.active,
html[data-asonfu-theme="dark"] body .site-header .main-nav > a:hover{
  background:#252525!important;
  color:#fafafa!important;
  -webkit-text-fill-color:#fafafa!important;
  border-color:#515151!important;
}

/* ================================================================
   ASONFU v7 — Boutique hospitality color system (Nov 2026)
   Deliberate hierarchy: warm neutral canvas, elevated cards, restrained
   sandstone accent, evergreen WhatsApp action. Preserve original
   centered-capsule navigation structure and all layouts/functionality.
   ================================================================ */
html[data-asonfu-theme="light"] {
  --v7-bg:#faf8f5;--v7-section:#f6f3ee;--v7-paper:#ffffff;
  --v7-subtle:#f2eee8;--v7-ink:#242b2e;--v7-muted:#53616a;
  --v7-line:#e0d9cf;--v7-accent:#886338;--v7-accent-soft:#f2e4d0;
  --v7-action:#e8d4b3;--v7-action-hover:#dcbf90;--v7-action-ink:#272821;
  --v7-nav:rgba(255,253,249,.96);--v7-nav-active:#eee0ca;
  --v7-photo-tag:#ffffff;--v7-photo-ink:#282c2d;
  --v7-shadow:0 12px 34px rgba(47,39,27,.085);
  --ink:var(--v7-ink);--cream:var(--v7-bg);--sand:var(--v7-subtle);
  --white:#fff;--muted:var(--v7-muted);--forest:var(--v7-bg);--deep:var(--v7-paper);
  --a-page:var(--v7-bg);--a-surface:var(--v7-paper);--a-surface-muted:var(--v7-subtle);
  --a-ink:var(--v7-ink);--a-muted:var(--v7-muted);--a-border:var(--v7-line);
  --a-card:var(--v7-paper);--a-card-ink:var(--v7-ink);--a-card-muted:var(--v7-muted);
  --a-chip:var(--v7-subtle);--a-field:var(--v7-paper);
  --t-section:var(--v7-bg);--t-panel:var(--v7-paper);--t-panel-alt:var(--v7-subtle);
  --t-stroke:var(--v7-line);--t-ink:var(--v7-ink);--t-muted:var(--v7-muted);
  --t-btn:var(--v7-action);--t-btn-hover:var(--v7-action-hover);--t-shadow:var(--v7-shadow);
  --a6-surface:var(--v7-paper);--a6-alt:var(--v7-subtle);--a6-text:var(--v7-ink);
  --a6-subtle:var(--v7-muted);--a6-border:var(--v7-line);--a6-cta:var(--v7-action);
  --a6-cta-hover:var(--v7-action-hover);--a6-photo-pill:var(--v7-photo-tag);
  --a6-photo-text:var(--v7-photo-ink);--a6-accent:var(--v7-accent);
  --booking-blue:var(--v7-action);--booking-blue-hover:var(--v7-action-hover);
  --booking-blue-dark:var(--v7-accent);--booking-text:var(--v7-ink);
  --booking-muted:var(--v7-muted);--booking-bg:var(--v7-bg);--booking-line:var(--v7-line);
}
html[data-asonfu-theme="dark"] {
  --v7-bg:#080808;--v7-section:#0c0c0c;--v7-paper:#151515;
  --v7-subtle:#242424;--v7-ink:#f7f5f2;--v7-muted:#c5c1bb;
  --v7-line:#404040;--v7-accent:#d6b17b;--v7-accent-soft:#292929;
  --v7-action:#262626;--v7-action-hover:#353535;--v7-action-ink:#ffffff;
  --v7-nav:linear-gradient(135deg,rgba(11,11,11,.97),rgba(31,31,31,.97),rgba(12,12,12,.97));
  --v7-nav-active:#333333;--v7-photo-tag:#222222;--v7-photo-ink:#ffffff;
  --v7-shadow:0 16px 38px rgba(0,0,0,.42);
  --ink:var(--v7-ink);--cream:var(--v7-bg);--sand:var(--v7-subtle);
  --white:var(--v7-paper);--muted:var(--v7-muted);--forest:var(--v7-bg);--deep:#080808;
  --a-page:var(--v7-bg);--a-surface:var(--v7-paper);--a-surface-muted:var(--v7-subtle);
  --a-ink:var(--v7-ink);--a-muted:var(--v7-muted);--a-border:var(--v7-line);
  --a-card:var(--v7-paper);--a-card-ink:var(--v7-ink);--a-card-muted:var(--v7-muted);
  --a-chip:var(--v7-subtle);--a-field:var(--v7-paper);
  --t-section:var(--v7-bg);--t-panel:var(--v7-paper);--t-panel-alt:var(--v7-subtle);
  --t-stroke:var(--v7-line);--t-ink:var(--v7-ink);--t-muted:var(--v7-muted);
  --t-btn:var(--v7-action);--t-btn-hover:var(--v7-action-hover);--t-shadow:var(--v7-shadow);
  --a6-surface:var(--v7-paper);--a6-alt:var(--v7-subtle);--a6-text:var(--v7-ink);
  --a6-subtle:var(--v7-muted);--a6-border:var(--v7-line);--a6-cta:var(--v7-action);
  --a6-cta-hover:var(--v7-action-hover);--a6-photo-pill:var(--v7-photo-tag);
  --a6-photo-text:var(--v7-photo-ink);--a6-accent:var(--v7-accent);
  --booking-blue:var(--v7-action);--booking-blue-hover:var(--v7-action-hover);
  --booking-blue-dark:var(--v7-action);--booking-text:var(--v7-ink);
  --booking-muted:var(--v7-muted);--booking-bg:var(--v7-bg);--booking-line:var(--v7-line);
}
/* Clear visual rhythm: alternating near-neutral section and white elevated surfaces. */
html[data-asonfu-theme="light"] body{background:var(--v7-bg)!important}
html[data-asonfu-theme="light"] body :is(.section-soft,.home-blog-section,.blog-content-section,.team-page-section){background:var(--v7-section)!important}
html[data-asonfu-theme="dark"] body,
html[data-asonfu-theme="dark"] body :is(.section,.section-soft,.home-blog-section,.team-page-section){background:var(--v7-bg)!important}
html[data-asonfu-theme] body :is(.eyebrow.dark,.section-heading .eyebrow,.blog-card-body .eyebrow){color:var(--v7-accent)!important}
html[data-asonfu-theme] body :is(.section-heading h2,.cabin-body h2,.blog-card-body h2,.stay-cabin-head h2){color:var(--v7-ink)!important}

/* Restore the original floating centered pill navigation, rather than a flat strip.
   Header geometry/links stay controlled by the existing site.css. */
html[data-asonfu-theme="light"] body .site-header,
html[data-asonfu-theme="light"] body .site-header.is-scrolled{
  background:linear-gradient(180deg,rgba(255,253,248,.96),rgba(255,252,247,.9))!important;
  border-color:rgba(224,217,207,.75)!important;
  box-shadow:0 6px 20px rgba(50,40,30,.06)!important;
}
html[data-asonfu-theme="dark"] body .site-header,
html[data-asonfu-theme="dark"] body .site-header.is-scrolled{
  background:linear-gradient(110deg,rgba(6,6,6,.97),rgba(23,23,23,.97),rgba(6,6,6,.97))!important;
  border-color:#333!important;
  box-shadow:0 7px 24px rgba(0,0,0,.27)!important;
}
@media (min-width:1151px) {
  html[data-asonfu-theme] body .site-header .main-nav,
  html[data-asonfu-theme] body .site-header.is-scrolled .main-nav{
    padding:4px!important;gap:2px!important;border-radius:999px!important;
    background:var(--v7-nav)!important;border:1px solid var(--v7-line)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 5px 20px rgba(27,23,18,.06)!important;
    backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important;
  }
  html[data-asonfu-theme="dark"] body .site-header .main-nav,
  html[data-asonfu-theme="dark"] body .site-header.is-scrolled .main-nav{
    box-shadow:inset 0 1px 0 rgba(255,255,255,.075),0 8px 24px rgba(0,0,0,.30)!important;
  }
  html[data-asonfu-theme] body .site-header .main-nav>a:not(.mobile-book){
    border-radius:999px!important;color:var(--v7-ink)!important;-webkit-text-fill-color:var(--v7-ink)!important;
    background:transparent!important;border:1px solid transparent!important;
  }
  html[data-asonfu-theme] body .site-header .main-nav>a:not(.mobile-book):is(.active,:hover,:focus-visible){
    background:var(--v7-nav-active)!important;
    border-color:var(--v7-line)!important;
    color:var(--v7-ink)!important;-webkit-text-fill-color:var(--v7-ink)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.16)!important;
  }
}
@media (max-width:1150px){
  html[data-asonfu-theme] body .site-header .main-nav{
    background:var(--v7-paper)!important;color:var(--v7-ink)!important;
    border-color:var(--v7-line)!important;
  }
  html[data-asonfu-theme] body .site-header .main-nav>a:not(.mobile-book){color:var(--v7-ink)!important;-webkit-text-fill-color:var(--v7-ink)!important}
  html[data-asonfu-theme] body .site-header .main-nav>a.active{background:var(--v7-accent-soft)!important;color:var(--v7-ink)!important}
}
/* Existing language/theme controls keep shape and receive the matching surface. */
html[data-asonfu-theme] body .site-header :is(.asonfu-theme-toggle,.language-menu-toggle){
  background:var(--v7-paper)!important;color:var(--v7-ink)!important;
  border-color:var(--v7-line)!important;-webkit-text-fill-color:var(--v7-ink)!important;
}
html[data-asonfu-theme="dark"] body .site-header :is(.asonfu-theme-toggle,.language-menu-toggle){background:#222!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
html[data-asonfu-theme] body .site-header :is(.asonfu-theme-toggle,.language-menu-toggle):hover{background:var(--v7-subtle)!important}
html[data-asonfu-theme] body .site-header .brand :is(strong,small){color:var(--v7-ink)!important}

/* Primary bookings — warm sand on day, quiet charcoal on night; never confused with WA. */
html[data-asonfu-theme] body :is(.btn-gold,.btn-dark,.booking-submit,.team-more-btn,.team-home-button-v2,.mobile-book,.mobile-bottom-book,.btn-outline-light){
  color:var(--v7-action-ink)!important;-webkit-text-fill-color:var(--v7-action-ink)!important;
  background:var(--v7-action)!important;border-color:var(--v7-line)!important;
  box-shadow:none!important;
}
html[data-asonfu-theme="dark"] body :is(.btn-gold,.btn-dark,.booking-submit,.team-more-btn,.team-home-button-v2,.mobile-book,.mobile-bottom-book,.btn-outline-light){
  color:#fff!important;-webkit-text-fill-color:#fff!important;
  background:linear-gradient(140deg,#181818,#2d2d2d 60%,#181818)!important;
  border-color:#4c4c4c!important;
}
html[data-asonfu-theme] body :is(.btn-gold,.btn-dark,.booking-submit,.team-more-btn,.team-home-button-v2,.mobile-book,.mobile-bottom-book,.btn-outline-light):hover{
  background:var(--v7-action-hover)!important;border-color:var(--v7-accent)!important;
}
html[data-asonfu-theme] body :is(.section-heading .text-link,.blog-card .text-link){
  color:var(--v7-accent)!important;-webkit-text-fill-color:var(--v7-accent)!important;
  background:var(--v7-accent-soft)!important;border:1px solid var(--v7-line)!important;
}
/* Stronger specificities for the previous v5/v6 booking buttons. */
html[data-asonfu-theme] body.page-home .booking-bar-actions button.booking-submit,
html[data-asonfu-theme] body.page-cabins .section-soft>.cabin-grid>.cabin-card .card-actions a.btn:not(.btn-whatsapp),
html[data-asonfu-theme] body.page-stay-activities .section-soft>.stay-cabin-grid>.stay-cabin-card .card-actions a.btn:not(.btn-whatsapp),
html[data-asonfu-theme] body.page-home .home-cabins-section .cabin-card .card-actions a.btn:not(.btn-whatsapp),
html[data-asonfu-theme] body.page-home .hero-buttons a.btn:not(.btn-whatsapp),
html[data-asonfu-theme] body .header-actions a.btn-gold{
  background:var(--v7-action)!important;color:var(--v7-action-ink)!important;
  -webkit-text-fill-color:var(--v7-action-ink)!important;border-color:var(--v7-line)!important;
}
html[data-asonfu-theme="dark"] body.page-home .booking-bar-actions button.booking-submit,
html[data-asonfu-theme="dark"] body.page-cabins .section-soft>.cabin-grid>.cabin-card .card-actions a.btn:not(.btn-whatsapp),
html[data-asonfu-theme="dark"] body.page-stay-activities .section-soft>.stay-cabin-grid>.stay-cabin-card .card-actions a.btn:not(.btn-whatsapp),
html[data-asonfu-theme="dark"] body.page-home .home-cabins-section .cabin-card .card-actions a.btn:not(.btn-whatsapp),
html[data-asonfu-theme="dark"] body.page-home .hero-buttons a.btn:not(.btn-whatsapp),
html[data-asonfu-theme="dark"] body .header-actions a.btn-gold{
  background:linear-gradient(140deg,#181818,#2e2e2e 60%,#161616)!important;
  color:#fff!important;-webkit-text-fill-color:#fff!important;border-color:#484848!important;
}

/* WhatsApp must ALWAYS be WhatsApp green in BOTH light and dark modes. */
html[data-asonfu-theme] body :is(a.btn-whatsapp,button.booking-wa-submit,a.booking-wa-submit,a.whatsapp-float,a.btn[href*="wa.me"],.booking-pair a[href*="wa.me"]),
html[data-asonfu-theme] body.page-home .booking-bar-actions button.booking-wa-submit,
html[data-asonfu-theme] body.page-cabins .section-soft>.cabin-grid>.cabin-card .card-actions a.btn-whatsapp,
html[data-asonfu-theme] body.page-stay-activities .section-soft>.stay-cabin-grid>.stay-cabin-card .card-actions a.btn-whatsapp,
html[data-asonfu-theme] body.page-home .home-cabins-section .cabin-card .card-actions a.btn-whatsapp{
  background:#087d45!important;background-image:none!important;color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;border:1px solid #087d45!important;
  box-shadow:0 5px 16px rgba(6,109,58,.17)!important;opacity:1!important;
}
html[data-asonfu-theme] body :is(a.btn-whatsapp,button.booking-wa-submit,a.booking-wa-submit,a.whatsapp-float,a.btn[href*="wa.me"],.booking-pair a[href*="wa.me"]):hover,
html[data-asonfu-theme] body.page-home .booking-bar-actions button.booking-wa-submit:hover,
html[data-asonfu-theme] body.page-cabins .section-soft>.cabin-grid>.cabin-card .card-actions a.btn-whatsapp:hover,
html[data-asonfu-theme] body.page-stay-activities .section-soft>.stay-cabin-grid>.stay-cabin-card .card-actions a.btn-whatsapp:hover{
  background:#066a3b!important;background-image:none!important;color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;border-color:#066a3b!important;
}

/* Content: restrained borders and badge emphasis; preserve four-column grids. */
html[data-asonfu-theme="light"] body :is(.cabin-card,.stay-cabin-card,.blog-card,.home-blog-card,.booking-card,.panel-form,.booking-note,.reference-card,.blog-article-shell){
  background:#ffffff!important;border-color:var(--v7-line)!important;box-shadow:var(--v7-shadow)!important;
}
html[data-asonfu-theme="dark"] body :is(.cabin-card,.stay-cabin-card,.blog-card,.home-blog-card,.booking-card,.panel-form,.booking-note,.reference-card,.blog-article-shell){
  background:linear-gradient(145deg,#111111,#1c1c1c 57%,#111111)!important;
  border-color:var(--v7-line)!important;box-shadow:var(--v7-shadow)!important;
}
html[data-asonfu-theme] body :is(.card-price-badge,.stay-price-badge,.blog-card-image>span){
  background:var(--v7-photo-tag)!important;color:var(--v7-photo-ink)!important;
  -webkit-text-fill-color:var(--v7-photo-ink)!important;border:1px solid var(--v7-line)!important;
}
html[data-asonfu-theme] body .cabin-card :is(.cabin-facts span,.stay-cabin-facts span){background:var(--v7-subtle)!important;color:var(--v7-ink)!important;-webkit-text-fill-color:var(--v7-ink)!important;border-color:var(--v7-line)!important}
html[data-asonfu-theme] body .cabin-card .cabin-body>p,
html[data-asonfu-theme] body .blog-card .blog-card-body>p:not(.eyebrow){color:var(--v7-muted)!important}
html[data-asonfu-theme] body :is(.site-footer,.location-section){background:var(--v7-bg)!important;color:var(--v7-ink)!important;border-color:var(--v7-line)!important}
html[data-asonfu-theme="dark"] body :is(.site-footer,.location-section){background:linear-gradient(125deg,#060606,#161616 65%,#060606)!important}
html[data-asonfu-theme] body :is(.site-footer,.location-section) :is(a,p,h2,h3,h4,span,small){color:var(--v7-ink)!important}
html[data-asonfu-theme] body :is(.site-footer,.location-section) :is(p,small){color:var(--v7-muted)!important}
/* Form controls retain real state and distinct labels rather than tinting everything. */
html[data-asonfu-theme] body.page-home .booking-bar{border-color:var(--v7-line)!important;box-shadow:var(--v7-shadow)!important;background:var(--v7-paper)!important}
html[data-asonfu-theme="dark"] body.page-home .booking-bar{background:linear-gradient(135deg,#121212,#222222,#111111)!important}
html[data-asonfu-theme] body :is(.booking-card,.panel-form,.booking-bar,.tc-custom-select-menu,.tc-calendar){color:var(--v7-ink)!important}
html[data-asonfu-theme] body > .tc-calendar .tc-calendar-title{color:var(--v7-ink)!important;-webkit-text-fill-color:var(--v7-ink)!important}
html[data-asonfu-theme] body .booking-bar label>span{color:var(--v7-muted)!important;-webkit-text-fill-color:var(--v7-muted)!important}
html[data-asonfu-theme] body :is(.tc-custom-select-toggle,.tc-custom-select-option,.tc-custom-select-option-label){color:var(--v7-ink)!important;-webkit-text-fill-color:var(--v7-ink)!important}
html[data-asonfu-theme] body .asonfu-bot__heading :is(strong,small){color:var(--v7-ink)!important}
html[data-asonfu-theme] body .asonfu-bot__bubble--assistant .asonfu-bot__rich-item-meta{color:var(--v7-accent)!important}
/* Distinguishable keyboard focus regardless of theme. */
html[data-asonfu-theme] body :is(a,button,input,select,textarea):focus-visible{outline:2px solid var(--v7-accent)!important;outline-offset:3px!important}
