/* ================================================================
   Tasheel Vista v1.6.8 — FINAL COLOR SAFETY / FRAMED HEADER
   Hard rules:
   - no red/pink text
   - each surface owns its foreground/background
   - every header group has its own frame
   - every logo sits on its own light frame
   This stylesheet MUST load last.
   ================================================================ */
:root{
  --v168-ink:#17372f;
  --v168-copy:#3b554a;
  --v168-copy-soft:#526b60;
  --v168-ivory:#fffdf8;
  --v168-cream:#f7efe2;
  --v168-mint:#eef7f1;
  --v168-sand:#f6ead5;
  --v168-dark:#123129;
  --v168-dark-2:#273b34;
  --v168-light:#fffdf8;
  --v168-light-copy:#e3eee8;
  --v168-teal:#1f6f66;
  --v168-teal-deep:#174c48;
  --v168-bronze:#8a5a1f;
  --v168-gold-light:#ffe3a2;
  --v168-line:rgba(23,76,72,.18);
  --v168-dark-line:rgba(255,255,255,.18);
}

/* ---------- ZERO RED TEXT ---------- */
h1 em,.hero h1 em,.detail-hero h1 em{color:var(--v168-bronze)!important}
.detail-back:hover,.text-link:hover,.section-more:hover{color:var(--v168-teal-deep)!important}
.notice.err,.notice.error,[role="alert"].error{color:var(--v168-ink)!important;background:#fff3d8!important;border-color:rgba(183,130,40,.48)!important}

/* ---------- HEADER: every unit owns a frame ---------- */
.site-header{
  background:rgba(255,253,248,.97)!important;
  border-bottom:1px solid rgba(23,76,72,.12)!important;
  box-shadow:0 8px 28px rgba(62,48,28,.07)!important;
  backdrop-filter:blur(18px) saturate(145%)!important;
}
.site-header .nav{
  min-height:88px!important;
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
}
/* Logo always owns a light plate — header AND footer AND any dark placement. */
.vista-logo-brand{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 auto!important;
  width:max-content!important;
  max-width:100%!important;
  padding:8px 12px!important;
  border-radius:20px!important;
  background:linear-gradient(145deg,#fffefb,#f7efe3)!important;
  border:1px solid rgba(23,76,72,.16)!important;
  box-shadow:0 8px 24px rgba(70,50,27,.10),inset 0 0 0 1px rgba(255,255,255,.9)!important;
}
.vista-logo-brand .vista-brand-logo,.vista-logo-brand .vista-brand-mark{filter:none!important}

.site-header .navlinks{
  display:flex;
  align-items:center;
  gap:16px!important;
  padding:9px 14px!important;
  border-radius:18px!important;
  background:#fffefb!important;
  border:1px solid var(--v168-line)!important;
  box-shadow:0 6px 18px rgba(70,50,27,.06)!important;
}
.site-header .navlinks a{color:var(--v168-ink)!important}
.site-header .navlinks a:hover{color:var(--v168-teal)!important}

.site-header .nav-actions{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  padding:6px!important;
  border-radius:18px!important;
  background:#fffefb!important;
  border:1px solid var(--v168-line)!important;
  box-shadow:0 6px 18px rgba(70,50,27,.06)!important;
}
.site-header .lang-switch{color:var(--v168-teal-deep)!important;background:#f5faf7!important;border-color:rgba(31,111,102,.18)!important}
.site-header .menu{
  flex:0 0 auto!important;
  display:none;
  width:50px!important;
  height:50px!important;
  margin:0!important;
  padding:12px!important;
  border-radius:17px!important;
  background:#fffefb!important;
  border:1px solid var(--v168-line)!important;
  box-shadow:0 6px 18px rgba(70,50,27,.07)!important;
  color:var(--v168-ink)!important;
}
.site-header .menu-bars span{background:var(--v168-ink)!important}

/* ---------- LIGHT SURFACES OWN DARK TEXT ---------- */
.section:not(.dark-band)>.container,
.hero>.container,.detail-hero>.container,
.card,.role,.metric,.preview-card,.steps,.form-panel,.sound-bar,.journey-step,
.journey-copy,.journey-flow,.inventory-shell,.inventory-canvas,.inventory-empty,
.partner-panel,.partner-stat,.related-card,.discovery-copy,.discovery-form,.planner-result,.choice,
.portal-tile,.login-shell,
.editorial-feature,.editorial-stack>a,.editorial-stack>div{
  color:var(--v168-ink)!important;
}
.section:not(.dark-band) h1,.section:not(.dark-band) h2,.section:not(.dark-band) h3,.section:not(.dark-band) h4,
.hero>.container h1,.hero>.container h2,.hero>.container h3,.detail-hero>.container h1,.detail-hero>.container h2,
.card h1,.card h2,.card h3,.card h4,.role h3,.metric strong,
.form-panel h1,.form-panel h2,.form-panel h3,.portal-tile strong,
.journey-copy h2,.journey-copy h3,.journey-step strong,
.partner-panel h2,.partner-panel h3,.partner-stat b,.partner-stat strong,
.inventory-shell h2,.inventory-shell h3,.inventory-empty h3,
.related-card span,.planner-result h3,
.editorial-feature h2,.editorial-feature h3,.editorial-stack h2,.editorial-stack h3{
  color:var(--v168-ink)!important;
  text-shadow:none!important;
}
.section:not(.dark-band) p,.section:not(.dark-band) li,.section:not(.dark-band) small,
.hero>.container p,.detail-hero>.container p,
.card p,.card small,.role p,.role small,.metric span:not(.kicker),
.form-panel p,.portal-tile span,.journey-copy p,.journey-step small,
.partner-panel p,.partner-panel small,.partner-stat p,.partner-stat small,
.inventory-shell p,.inventory-shell small,.inventory-empty p,.related-card p,
.planner-result p,.choice small,.editorial-feature p,.editorial-stack p{
  color:var(--v168-copy)!important;
}

/* Inputs on light forms */
.form-panel label,.field label{color:var(--v168-ink)!important}
.form-panel input,.form-panel select,.form-panel textarea,.inventory-search input{
  background:#fffefb!important;color:var(--v168-ink)!important;border-color:rgba(23,76,72,.20)!important;
}
.form-panel input::placeholder,.form-panel textarea::placeholder,.inventory-search input::placeholder{color:#687c72!important;opacity:1!important}

/* registration steps and portal tiles */
.steps,.portal-tile{background:#fffdf8!important;border-color:var(--v168-line)!important}
.step{color:#5d7167!important}.step.active,.step.done{color:var(--v168-ink)!important}
.step.active b,.step.done b{background:#edd19a!important;color:var(--v168-ink)!important;border-color:#d9b56c!important}

/* ---------- DARK SURFACES OWN LIGHT TEXT ---------- */
.dark-band>.container,.footer,.viewer-shell,.detail-model-card,.detail-immersive-link,
.experience-bar-inner,.navlinks.mobile-open,.hero-planner,
.partner-visual,.inventory-item,.detail-model-label{
  background-color:var(--v168-dark)!important;
  color:var(--v168-light)!important;
}
.dark-band h1,.dark-band h2,.dark-band h3,.dark-band h4,
.footer h1,.footer h2,.footer h3,.footer h4,
.viewer-shell h1,.viewer-shell h2,.viewer-shell h3,.viewer-shell h4,
.detail-model-card h1,.detail-model-card h2,.detail-model-card h3,
.detail-immersive-link h2,.detail-immersive-link h3,
.experience-bar b,.partner-visual strong,.inventory-item-info strong,.detail-model-label span,
.hero-planner b,.hero-planner strong{
  color:#fff!important;
  text-shadow:none!important;
}
.dark-band p,.dark-band small,.footer p,.footer small,.viewer-shell p,.viewer-shell small,
.detail-model-card p,.detail-immersive-link p,.experience-bar small,.partner-visual p,
.inventory-item-info small,.detail-model-label small,.hero-planner small,.hero-planner .planner-foot{
  color:var(--v168-light-copy)!important;
}
.dark-band .eyebrow,.dark-band .kicker,.footer .eyebrow,.hero-planner .planner-kicker,
.experience-bar .eyebrow{color:var(--v168-gold-light)!important}

/* Photo/media surfaces: dedicated overlay text only */
.destination-card h3,.destination-card p,.destination-card .coordinates,.destination-card .destination-more,
.media-card .media-overlay strong,.media-card .media-overlay p,.media-card .media-overlay small,
.detail-photo figcaption,.detail-media-caption{
  color:#fff!important;
  text-shadow:0 2px 12px rgba(0,0,0,.48)!important;
}

/* CRITICAL exception: light cards nested in dark immersive band */
.immersive-panel .metric,.dark-band .immersive-panel .metric{
  background:linear-gradient(145deg,#fffdf8,#f4efe5)!important;
  color:var(--v168-ink)!important;
  border:1px solid rgba(255,255,255,.9)!important;
}
.immersive-panel .metric .kicker{color:var(--v168-bronze)!important}
.immersive-panel .metric strong{color:var(--v168-ink)!important}
.immersive-panel .metric span:not(.kicker){color:var(--v168-copy)!important}

/* CRITICAL exception: partner statistics remain light even if their parent art is dark */
.partner-panel,.partner-stat{background:#fffdf8!important;color:var(--v168-ink)!important}
.partner-panel h3,.partner-stat b{color:var(--v168-ink)!important}
.partner-panel p,.partner-stat small{color:var(--v168-copy)!important}

/* CRITICAL exception: inventory shell is light; live item overlay is dark */
.inventory-shell,.inventory-toolbar,.inventory-canvas,.inventory-empty{background:#fffdf8!important;color:var(--v168-ink)!important}
.inventory-rail a{color:var(--v168-ink)!important;border-bottom-color:rgba(23,76,72,.12)!important}
.inventory-rail a:hover{color:var(--v168-teal)!important}
.filter-chip{background:#fffefb!important;color:var(--v168-ink)!important;border-color:var(--v168-line)!important}
.filter-chip.active,.filter-chip:hover{background:var(--v168-teal)!important;color:#fff!important}

/* Buttons/links: never red */
.section-more,.text-link,.destination-more{color:var(--v168-teal)!important}
.btn.primary{background:linear-gradient(135deg,#edc36d,#f6dda2)!important;color:var(--v168-ink)!important;border-color:transparent!important}
.section:not(.dark-band) .btn:not(.primary),.form-panel .btn:not(.primary){background:#fffdf8!important;color:var(--v168-ink)!important;border-color:var(--v168-line)!important}
.dark-band .btn:not(.primary),.footer .btn:not(.primary),.viewer-shell .btn:not(.primary){background:rgba(255,255,255,.10)!important;color:#fff!important;border-color:rgba(255,255,255,.28)!important}

/* Footer: dark field + logo on its own light frame */
.footer{background:var(--v168-dark)!important;color:#fff!important}
.footer .vista-logo-brand{background:linear-gradient(145deg,#fffefb,#f5ede0)!important;border-color:rgba(255,255,255,.9)!important}
.footer a{color:#eef5f1!important}.footer a:hover{color:var(--v168-gold-light)!important}
.footer-note,.footer .legal{color:#d7e4dd!important}

/* Spacing/format ownership */
.section-head h2{line-height:1.12!important;margin-bottom:.38em!important}
.section-head p{line-height:1.78!important;margin-top:.5em!important}
.card h3,.editorial-feature h3,.editorial-stack h3,.partner-panel h3,.partner-stat b{line-height:1.16!important;margin-bottom:.62em!important}
.card p,.editorial-feature p,.editorial-stack p,.partner-panel p,.partner-stat small{line-height:1.76!important}
.section-more,.text-link{margin-top:14px!important}

/* ---------- DESKTOP HEADER FRAME RHYTHM ---------- */
@media(min-width:1051px){
  .site-header .navlinks{margin-left:auto!important}
  [dir="rtl"] .site-header .navlinks{margin-left:0!important;margin-right:auto!important}
}

/* ---------- MOBILE HEADER FRAME RHYTHM ---------- */
@media(max-width:1050px){
  .site-header .nav{min-height:78px!important;gap:9px!important}
  .site-header .navlinks{display:none!important}
  .site-header .menu{display:grid!important;place-items:center!important;margin-inline-start:auto!important}
  .site-header .nav-actions{margin-inline-start:auto!important;padding:5px!important;border-radius:16px!important}
  .site-header .nav-actions .ghost,.site-header .nav-actions .primary{display:none!important}
  .site-header .navlinks.mobile-open{
    display:flex!important;
    position:absolute!important;
    top:84px!important;
    left:10px!important;right:10px!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:0!important;
    padding:14px!important;
    border-radius:22px!important;
    background:var(--v168-dark)!important;
    border:1px solid var(--v168-dark-line)!important;
    box-shadow:0 22px 54px rgba(8,30,22,.28)!important;
  }
  .site-header .navlinks.mobile-open a{color:#fff!important;padding:13px 12px!important;border-bottom:1px solid rgba(255,255,255,.10)!important}
  .site-header .navlinks.mobile-open a:last-child{border-bottom:0!important}
  .site-header .navlinks.mobile-open a:hover{color:var(--v168-gold-light)!important}
}
@media(max-width:720px){
  .site-header .container{width:calc(100% - 16px)!important}
  .site-header .nav{min-height:74px!important}
  .vista-logo-brand{padding:6px 9px!important;border-radius:16px!important}
  .vista-logo-brand .vista-brand-logo{height:43px!important;max-width:174px!important}
  .vista-logo-brand .vista-brand-mark{width:42px!important;height:42px!important}
  .site-header .nav-actions{padding:4px!important}
  .site-header .lang-switch{width:42px!important;height:42px!important}
  .site-header .menu{width:46px!important;height:46px!important;border-radius:15px!important}

  .section-head h2{font-size:clamp(30px,8vw,38px)!important;line-height:1.14!important}
  .section-head p,.lead{font-size:16.5px!important;line-height:1.78!important}
  .card h3,.editorial-feature h3,.editorial-stack h3,.partner-panel h3{font-size:clamp(27px,7.2vw,34px)!important;line-height:1.18!important}
  .card p,.editorial-feature p,.editorial-stack p,.partner-panel p{font-size:16.2px!important;line-height:1.78!important}

  .immersive-panel .metric{padding:25px 20px!important;border-radius:24px!important}
  .immersive-panel .metric strong{font-size:clamp(29px,8vw,37px)!important;line-height:1.14!important}
  .immersive-panel .metric span:not(.kicker){font-size:16px!important;line-height:1.68!important}

  .hero-planner{padding:18px!important;border-radius:24px!important}
  .hero-planner .planner-link b{font-size:18px!important;line-height:1.36!important}
  .hero-planner .planner-link small{font-size:14px!important;line-height:1.55!important}
}
