/*
Theme Name: Visit to Syria
Theme URI: https://visittosyria.com
Author: GSPIKES
Author URI: https://visittosyria.com
Description: Custom theme for Visit to Syria, a global reference site about Syria's history, culture, and travel. Built from scratch on the Jasmine and Gold brand system.
Version: 1.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: visit-to-syria
*/

:root{
  --teal:#0B5D52; --teal-dark:#073F38; --gold:#C89B3C; --gold-light:#E4C878;
  --clay:#C1502E; --clay-dark:#8F3A20; --cream:#F6F1E4; --cream2:#EFE6D2; --ink:#262421;
}
*{box-sizing:border-box; margin:0; padding:0;}
body{font-family:'Poppins',sans-serif; color:var(--ink); background:var(--cream); line-height:1.5;}
a{color:inherit; text-decoration:none;}
img,svg{display:block;}
.wrap{max-width:1180px; margin:0 auto; padding:0 32px;}
.icon{width:22px; height:22px; stroke:currentColor; fill:none; stroke-width:1.6;}

/* HEADER */
header{position:sticky; top:0; background:var(--cream); z-index:30; border-bottom:1px solid rgba(38,36,33,0.1);}
.headbar{display:flex; align-items:center; justify-content:space-between; padding:16px 32px; max-width:1180px; margin:0 auto; gap:24px;}
.brand{display:flex; align-items:center; gap:12px; flex-shrink:0;}
.brand svg{width:34px; height:34px; color:var(--teal);}
.brand-text{display:flex; flex-direction:column; line-height:1.1;}
.brand-text b{font-weight:600; font-size:15.5px; letter-spacing:0.5px;}
.brand-text span{font-size:9.5px; letter-spacing:1px; color:var(--teal); font-weight:400;}
nav{display:flex; gap:26px; font-size:14px; font-weight:500; flex-shrink:0;}
nav ul{display:flex; gap:26px; list-style:none;}
nav a{opacity:0.85; transition:opacity .2s;}
nav a:hover{opacity:1;}
.head-search{flex:1; max-width:280px; display:flex; align-items:center; gap:10px; background:var(--cream2); border-radius:20px; padding:9px 16px;}
.head-search input{border:none; background:none; font-family:'Poppins'; font-size:13.5px; width:100%; outline:none; color:var(--ink);}
.head-search svg{width:16px; height:16px; opacity:0.6; flex-shrink:0;}
.head-actions{display:flex; align-items:center; gap:16px; flex-shrink:0;}
.btn{display:inline-block; padding:11px 22px; border-radius:26px; font-size:14px; font-weight:500; cursor:pointer; white-space:nowrap;}
.btn-clay{background:var(--clay); color:var(--cream);}
.btn-gold{background:var(--gold); color:var(--ink);}
.btn-outline{border:1.5px solid var(--cream); color:var(--cream);}

/* QUICK FACTS STRIP, SCROLLABLE */
.facts{background:var(--teal-dark); color:var(--cream); padding:34px 0;}
.facts-scroll{display:flex; gap:0; overflow-x:auto; scroll-snap-type:x proximity; padding-bottom:6px;}
.facts-scroll::-webkit-scrollbar{height:5px;}
.facts-scroll::-webkit-scrollbar-thumb{background:rgba(246,241,228,0.3); border-radius:3px;}
.fact{flex:0 0 220px; padding:0 26px; border-left:1px solid rgba(246,241,228,0.2); scroll-snap-align:start;}
.fact:first-child{border-left:none; padding-left:0;}
.fact b{display:block; font-size:22px; font-weight:600; margin-bottom:4px;}
.fact span{font-size:12.5px; font-weight:300; opacity:0.8; line-height:1.4;}
.facts-hint{font-size:11.5px; opacity:0.55; margin-top:14px; font-style:italic;}
.petal-mark path{fill:currentColor;}

/* HERO */
.hero{background:var(--teal); color:var(--cream); position:relative; overflow:hidden; padding:80px 0 64px;}
.hero .wrap{position:relative; z-index:2; display:grid; grid-template-columns:1.15fr 0.85fr; gap:40px; align-items:center;}
.hero h1{font-size:54px; font-weight:600; line-height:1.08; letter-spacing:-0.5px; max-width:14ch;}
.nowrap{white-space:nowrap;}
.hero p.lede{margin-top:20px; font-size:18px; font-weight:300; max-width:42ch; opacity:0.92;}
.hero .cta-row{margin-top:30px; display:flex; gap:14px;}
.hero-mark{justify-self:end; opacity:0.9;}
.hero-mark svg{width:240px; height:240px;}
.hero-bg-petal{position:absolute; top:-120px; right:-160px; width:600px; height:600px; opacity:0.08; z-index:1;}

section{padding:88px 0;}

/* EDITORIAL STATEMENT */
.statement{background:var(--cream);}
.statement .wrap{max-width:900px;}
.statement h2{font-size:32px; font-weight:300; line-height:1.35; color:var(--ink);}
.statement h2 b{font-weight:600; color:var(--teal);}
.statement .cols{display:grid; grid-template-columns:1fr 1fr; gap:48px; margin-top:40px;}
.statement .cols p{font-size:15px; font-weight:400; opacity:0.85; line-height:1.7;}

/* FULL GUIDE INDEX */
.fullguide{background:var(--teal-dark); color:var(--cream);}
.fullguide-head{max-width:640px; margin-bottom:52px;}
.fullguide-head h2{font-size:34px; font-weight:600; margin-bottom:14px;}
.fullguide-head p{font-size:15px; font-weight:300; opacity:0.8;}
.fg-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:0 40px;}
.fg-cluster h3{font-size:13px; font-weight:600; letter-spacing:0.3px; color:var(--gold-light); margin-bottom:20px; padding-bottom:12px; border-bottom:1px solid rgba(246,241,228,0.25);}
.fg-cluster a{display:block; font-size:14.5px; font-weight:400; opacity:0.85; padding:9px 0; transition:opacity .15s;}
.fg-cluster a:hover{opacity:1; text-decoration:underline;}

/* DESTINATIONS */
.destinations{background:var(--cream);}
.dest-head{display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:44px;}
.dest-head h2{font-size:32px; font-weight:600;}
.dest-head a{font-size:14px; font-weight:500; color:var(--teal); border-bottom:1.5px solid var(--teal); padding-bottom:2px;}
.dest-grid{display:grid; grid-template-columns:1.3fr 1fr; gap:28px;}
.dest-feature{background:linear-gradient(155deg, var(--teal) 0%, var(--teal-dark) 100%); border-radius:6px; padding:40px 38px; color:var(--cream); min-height:400px; display:flex; flex-direction:column; justify-content:flex-end; position:relative; overflow:hidden;}
.dest-feature .petal-mark{position:absolute; top:30px; right:30px; width:56px; height:56px; opacity:0.35; color:var(--gold);}
.dest-feature .tag{font-size:12.5px; font-weight:500; color:var(--gold-light); margin-bottom:10px;}
.dest-feature h3{font-size:28px; font-weight:600;}
.dest-feature p{margin-top:10px; font-size:14px; font-weight:300; max-width:34ch; opacity:0.9;}
.dest-list{display:flex; flex-direction:column;}
.dest-row{display:flex; align-items:center; gap:16px; padding:18px 0; border-bottom:1px solid rgba(38,36,33,0.12);}
.dest-row:first-child{padding-top:2px;}
.dest-row .petal-mark{width:28px; height:28px; flex-shrink:0;}
.dest-row .info b{font-size:16px; font-weight:600; display:block;}
.dest-row .info span{font-size:13px; opacity:0.7; font-weight:300;}

/* FEATURED LONG READ */
.spotlight{background:var(--gold); color:var(--ink); padding:96px 0;}
.spotlight .wrap{display:grid; grid-template-columns:0.9fr 1.1fr; gap:56px; align-items:center;}
.spotlight .kicker{font-size:13px; font-weight:600; color:var(--teal-dark); margin-bottom:16px;}
.spotlight h2{font-size:36px; font-weight:600; line-height:1.2; margin-bottom:20px;}
.spotlight p{font-size:15px; font-weight:400; opacity:0.85; margin-bottom:26px; max-width:42ch;}
.spotlight-figure{background:var(--teal-dark); border-radius:6px; height:280px; display:flex; align-items:center; justify-content:center;}
.spotlight-figure svg{width:90px; height:90px; color:var(--gold-light); opacity:0.6;}

/* HISTORY TIMELINE */
.history{background:var(--cream2);}
.history .wrap > p.intro{max-width:56ch; font-size:15px; opacity:0.8; margin-bottom:48px;}
.timeline{display:flex; gap:0; position:relative; overflow-x:auto; padding-bottom:8px;}
.tl-item{flex:1; min-width:190px; padding-right:28px; position:relative;}
.tl-item::before{content:""; position:absolute; top:9px; left:0; right:28px; height:1px; background:rgba(38,36,33,0.2);}
.tl-item:last-child::before{display:none;}
.tl-dot{width:9px; height:9px; border-radius:50%; background:var(--clay); margin-bottom:18px;}
.tl-item .era{font-size:12.5px; font-weight:500; color:var(--teal); letter-spacing:0.3px; margin-bottom:6px;}
.tl-item h4{font-size:16.5px; font-weight:600; margin-bottom:8px;}
.tl-item p{font-size:13px; font-weight:300; opacity:0.75; line-height:1.55;}

/* REVOLUTION */
.revolution{background:var(--ink); color:var(--cream);}
.rev-head{max-width:640px; margin-bottom:44px;}
.rev-kicker{font-size:12.5px; font-weight:600; color:var(--gold-light); letter-spacing:0.4px; margin-bottom:14px;}
.revolution h2{font-size:32px; font-weight:600; margin-bottom:14px;}
.revolution > .wrap > .rev-head > p{font-size:14.5px; font-weight:300; opacity:0.75; line-height:1.6;}
.rev-scroll{display:flex; gap:20px; overflow-x:auto; padding-bottom:12px; margin-bottom:8px;}
.rev-card{flex:0 0 220px; background:rgba(246,241,228,0.05); border:1px solid rgba(246,241,228,0.15); border-radius:4px; padding:24px 22px; transition:background .2s, border-color .2s;}
.rev-card:hover{background:rgba(246,241,228,0.09); border-color:rgba(246,241,228,0.3);}
.rev-card-final{background:rgba(200,155,60,0.12); border-color:var(--gold);}
.rev-year{font-size:13px; font-weight:600; color:var(--clay); display:block; margin-bottom:14px;}
.rev-card-final .rev-year{color:var(--gold);}
.rev-card h4{font-size:16px; font-weight:600; margin-bottom:10px; line-height:1.3;}
.rev-card p{font-size:12.5px; font-weight:300; opacity:0.7; line-height:1.5;}

/* STAY */
.stay{background:var(--cream2);}
.stay-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:34px; margin-top:8px;}
.stay-card{border:1.5px solid var(--ink); background:var(--cream);}
.stay-card:nth-child(2){transform:translateY(20px);}
.stay-photo{height:170px; background:linear-gradient(135deg, var(--gold-light), var(--gold)); display:flex; align-items:center; justify-content:center;}
.stay-photo svg{width:44px; height:44px; color:var(--teal); opacity:0.5;}
.stay-body{padding:20px 22px 24px;}
.stay-body .city{font-size:11.5px; font-weight:500; color:var(--clay); margin-bottom:6px;}
.stay-body h4{font-size:17px; font-weight:600; margin-bottom:8px;}
.stay-body p{font-size:13px; font-weight:300; opacity:0.75; font-style:italic;}

/* TRUST / FAQ */
.trust{background:var(--cream);}
.trust-head{display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:8px;}
.trust-head h2{font-size:32px; font-weight:600;}
.trust-updated{font-size:12.5px; opacity:0.6; font-style:italic;}
.trust-grid{display:grid; grid-template-columns:1fr 1fr; gap:36px 48px; margin-top:36px;}
.trust-item h4{font-size:16px; font-weight:600; margin-bottom:8px; display:flex; align-items:center; gap:10px;}
.trust-item h4 svg{width:18px; height:18px; color:var(--teal); flex-shrink:0;}
.trust-item p{font-size:14px; opacity:0.75; font-weight:300; line-height:1.6; padding-left:28px;}
.trust-item a{color:var(--teal); font-weight:500;}
.trust-more{margin-top:36px; font-size:14px; font-weight:500; color:var(--teal); border-bottom:1.5px solid var(--teal); padding-bottom:2px; display:inline-block;}

/* VOICE */
.voice{background:var(--clay); color:var(--cream); padding:100px 0;}
.voice .wrap{max-width:820px;}
.voice blockquote{font-size:26px; font-weight:300; line-height:1.5;}
.voice .attr{margin-top:26px; font-size:14px; font-weight:500;}
.voice .attr span{display:block; font-weight:300; opacity:0.8; font-size:13px; margin-top:2px;}
.attr-row{display:flex; align-items:center; gap:14px; margin-top:26px;}
.attr-avatar{width:42px; height:42px; border-radius:50%; background:rgba(246,241,228,0.15); border:1px solid rgba(246,241,228,0.3); display:flex; align-items:center; justify-content:center; font-size:13px; font-weight:600; flex-shrink:0; overflow:hidden;}
.attr-avatar img{width:100%; height:100%; object-fit:cover;}
.attr-row .attr{margin-top:0;}

/* NEWS */
.newsfeed{background:var(--cream2);}
.news-row{display:flex; align-items:baseline; gap:22px; padding:22px 0; border-top:1px solid rgba(38,36,33,0.12);}
.news-row:last-child{border-bottom:1px solid rgba(38,36,33,0.12);}
.news-date{font-size:12.5px; opacity:0.55; flex:0 0 90px;}
.news-tag{font-size:11px; font-weight:600; color:var(--teal); flex:0 0 130px; text-transform:uppercase; letter-spacing:0.4px;}
.news-row h4{font-size:15.5px; font-weight:500; flex:1;}

/* TOOLS */
.tools{background:var(--cream);}
.tools-head{max-width:640px; margin-bottom:44px;}
.tools-head h2{font-size:32px; font-weight:600; margin-bottom:14px;}
.tools-head p{font-size:15px; opacity:0.8;}
.tool-row{display:flex; align-items:center; gap:22px; padding:22px 0; border-top:1px solid rgba(38,36,33,0.12);}
.tool-row:last-child{border-bottom:1px solid rgba(38,36,33,0.12);}
.tool-dot{width:11px; height:11px; border-radius:50%; background:var(--teal); flex-shrink:0;}
.tool-row h4{font-size:16.5px; font-weight:600; flex:0 0 240px;}
.tool-row p{font-size:13.5px; opacity:0.75; font-weight:300; flex:1;}
.pill{font-size:11.5px; font-weight:500; background:var(--cream2); color:var(--ink); padding:5px 12px; border-radius:20px; flex-shrink:0;}

/* NEWSLETTER */
.newsletter{background:var(--teal); color:var(--cream); padding:76px 0; text-align:center;}
.newsletter h3{font-size:25px; font-weight:600; margin-bottom:12px;}
.newsletter p{font-size:14.5px; opacity:0.85; margin-bottom:28px;}
.nl-form{display:flex; justify-content:center; gap:12px;}
.nl-form input{padding:13px 18px; border-radius:26px; border:none; width:300px; font-family:'Poppins'; font-size:14px;}

/* FOOTER */
footer{background:var(--ink); color:var(--cream); padding:60px 0 28px;}
.foot-grid{display:grid; grid-template-columns:1.3fr repeat(5,1fr); gap:26px;}
.foot-brand svg{width:30px; height:30px; color:var(--gold); margin-bottom:14px;}
.foot-brand p{font-size:12.5px; opacity:0.65; max-width:24ch; line-height:1.6;}
.foot-col h5{font-size:12.5px; font-weight:600; margin-bottom:16px; color:var(--gold-light);}
.foot-col a{display:block; font-size:13px; opacity:0.75; margin-bottom:10px;}
.foot-bottom{margin-top:50px; padding-top:24px; border-top:1px solid rgba(246,241,228,0.15); display:flex; justify-content:space-between; font-size:12px; opacity:0.6;}

@media (max-width:960px){
  .headbar nav, .head-search{display:none;}
  .hero .wrap{grid-template-columns:1fr;}
  .hero-mark{justify-self:start; margin-top:20px;}
  .hero h1{font-size:38px;}
  .facts .wrap{grid-template-columns:1fr 1fr;}
  .statement .cols{grid-template-columns:1fr;}
  .fg-grid{grid-template-columns:1fr 1fr; row-gap:32px;}
  .dest-grid{grid-template-columns:1fr;}
  .spotlight .wrap{grid-template-columns:1fr;}
  .stay-grid{grid-template-columns:1fr;}
  .stay-card:nth-child(2){transform:none;}
  .rev-card{flex:0 0 200px;}
  .trust-grid{grid-template-columns:1fr;}
  .foot-grid{grid-template-columns:1fr 1fr;}
  .tool-row, .news-row{flex-wrap:wrap;}
  .tool-row h4{flex:1 1 100%;}
  .dh-grid{grid-template-columns:1fr 1fr;}
  .dg-grid{grid-template-columns:1fr 1fr;}
  .dest-links-grid{grid-template-columns:1fr;}
  .dest-quickfacts{flex-wrap:wrap; gap:20px 32px;}
}


/* BREADCRUMB */
.breadcrumb{background:var(--cream2); padding:14px 0; font-size:13px;}
.breadcrumb a{opacity:0.65;}
.breadcrumb span{opacity:0.4; margin:0 8px;}
.breadcrumb b{font-weight:500;}

/* DESTINATION HERO */
.dest-hero{background:linear-gradient(155deg, var(--teal) 0%, var(--teal-dark) 100%); background-size:cover; background-position:center; color:var(--cream); position:relative; overflow:hidden; padding:64px 0 0;}
.dest-hero-inner{position:relative; z-index:2;}
.dest-hero-tag{font-size:12.5px; font-weight:600; letter-spacing:0.5px; color:var(--gold-light); margin-bottom:14px;}
.dest-hero h1{font-size:42px; font-weight:600; line-height:1.15;}
.dest-hero .lede{margin-top:14px; font-size:16.5px; font-weight:300; max-width:56ch; opacity:0.92;}

.quick-answer{background:rgba(246,241,228,0.08); border:1px solid rgba(246,241,228,0.25); border-radius:8px; padding:22px 26px; margin-top:32px; max-width:640px;}
.quick-answer .qa-label{font-size:11.5px; font-weight:600; letter-spacing:0.4px; color:var(--gold-light); margin-bottom:8px;}
.quick-answer p{font-size:14.5px; font-weight:300; line-height:1.6;}
.quick-answer a{color:var(--gold-light); font-weight:500; text-decoration:underline;}

.dest-quickfacts{display:flex; gap:0; margin-top:36px; border-top:1px solid rgba(246,241,228,0.15); flex-wrap:wrap;}
.dest-quickfacts > div{flex:1; min-width:150px; padding:20px 26px 20px 0;}
.dest-quickfacts span{display:block; font-size:11px; opacity:0.65; margin-bottom:5px; text-transform:uppercase; letter-spacing:0.3px;}
.dest-quickfacts b{font-size:14.5px; font-weight:600;}

/* TOC */
.toc{background:var(--cream2); position:sticky; top:0; z-index:10; border-bottom:1px solid rgba(38,36,33,0.1);}
.toc-scroll{display:flex; gap:28px; overflow-x:auto; padding:16px 0;}
.toc a{font-size:13.5px; font-weight:500; white-space:nowrap; opacity:0.7;}
.toc a:hover{opacity:1; color:var(--teal);}

/* SECTION HEADS */
.sec-head{max-width:720px; margin-bottom:40px;}
.sec-head h2{font-size:30px; font-weight:600; margin-bottom:10px;}
.sec-head p{font-size:14.5px; opacity:0.75; line-height:1.6;}
.sec-kicker{font-size:12px; font-weight:600; color:var(--teal); letter-spacing:0.4px; margin-bottom:10px;}

/* INTRO */
.dest-intro{background:var(--cream);}
.intro-grid{display:grid; grid-template-columns:1.4fr 0.9fr; gap:56px;}
.intro-body p{font-size:15.5px; line-height:1.75; opacity:0.9; margin-bottom:18px;}
.intro-aside{background:var(--cream2); border-radius:8px; padding:26px 24px; align-self:start;}
.intro-aside h4{font-size:13px; font-weight:600; color:var(--teal); margin-bottom:14px; letter-spacing:0.3px;}
.intro-aside ul{list-style:none;}
.intro-aside li{font-size:13.5px; padding:8px 0; border-bottom:1px solid rgba(38,36,33,0.08); display:flex; justify-content:space-between; gap:12px;}
.intro-aside li:last-child{border-bottom:none;}
.intro-aside li span:first-child{opacity:0.6;}
.intro-aside li span:last-child{font-weight:500; text-align:right;}

/* HIGHLIGHTS */
.dest-highlights{background:var(--cream2);}
.dh-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
.dh-card{background:var(--cream); border-radius:8px; overflow:hidden;}
.dh-photo{height:150px; background:linear-gradient(135deg, var(--gold-light), var(--gold)); display:flex; align-items:center; justify-content:center;}
.dh-photo svg{width:36px; height:36px; color:var(--teal-dark); opacity:0.55;}
.dh-body{padding:20px 22px 24px;}
.dh-body .dh-tag{font-size:10.5px; font-weight:600; color:var(--clay); text-transform:uppercase; letter-spacing:0.3px; margin-bottom:8px;}
.dh-body h4{font-size:16px; font-weight:600; margin-bottom:8px;}
.dh-body p{font-size:13px; opacity:0.75; line-height:1.55; font-weight:300;}

/* HISTORY SNAPSHOT */
.dest-history{background:var(--cream);}
.dh-timeline{display:flex; overflow-x:auto; gap:0; padding-bottom:8px;}
.dh-tl-item{flex:1; min-width:170px; padding-right:24px; position:relative;}
.dh-tl-item::before{content:""; position:absolute; top:8px; left:0; right:24px; height:1px; background:rgba(38,36,33,0.18);}
.dh-tl-item:last-child::before{display:none;}
.dh-tl-dot{width:8px; height:8px; border-radius:50%; background:var(--clay); margin-bottom:14px;}
.dh-tl-item .era{font-size:12px; font-weight:600; color:var(--teal); margin-bottom:6px;}
.dh-tl-item h5{font-size:14.5px; font-weight:600; margin-bottom:6px;}
.dh-tl-item p{font-size:12.5px; opacity:0.7; font-weight:300; line-height:1.5;}
.history-cta{margin-top:32px;}
.link-more{font-size:14px; font-weight:500; color:var(--teal); border-bottom:1.5px solid var(--teal); padding-bottom:2px; display:inline-block;}

/* PRACTICAL / GETTING THERE */
.dest-practical{background:var(--cream2);}
.practical-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:0; border:1px solid rgba(38,36,33,0.12); border-radius:8px; overflow:hidden;}
.practical-col{padding:28px 26px; background:var(--cream); border-right:1px solid rgba(38,36,33,0.1);}
.practical-col:last-child{border-right:none;}
.practical-col svg{width:26px; height:26px; color:var(--teal); margin-bottom:16px;}
.practical-col h4{font-size:15.5px; font-weight:600; margin-bottom:10px;}
.practical-col p{font-size:13px; opacity:0.75; line-height:1.6; font-weight:300; margin-bottom:8px;}
.practical-col a{color:var(--teal); font-weight:500; font-size:13px;}

/* DAY TRIPS */
.dest-daytrips{background:var(--cream);}
.dt-scroll{display:flex; gap:20px; overflow-x:auto; padding-bottom:10px;}
.dt-card{flex:0 0 240px; background:var(--cream2); border-radius:8px; padding:22px 20px;}
.dt-dist{font-size:11.5px; font-weight:600; color:var(--clay); margin-bottom:10px; text-transform:uppercase;}
.dt-card h4{font-size:15.5px; font-weight:600; margin-bottom:8px;}
.dt-card p{font-size:12.5px; opacity:0.72; font-weight:300; line-height:1.5;}

/* GALLERY */
.dest-gallery{background:var(--cream2);}
.dg-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:14px;}
.dg-grid div{aspect-ratio:1; border-radius:6px; background:linear-gradient(135deg, var(--cream), var(--gold-light)); display:flex; align-items:center; justify-content:center;}
.dg-grid svg{width:26px; height:26px; color:var(--teal); opacity:0.35;}
.gallery-note{font-size:12.5px; opacity:0.55; font-style:italic; margin-top:16px;}

/* MAP */
.dest-map{background:var(--cream);}
.map-box{display:grid; grid-template-columns:1.3fr 1fr; gap:0; border-radius:8px; overflow:hidden; border:1px solid rgba(38,36,33,0.12);}
.map-visual{background:var(--teal); min-height:280px; position:relative; display:flex; align-items:center; justify-content:center;}
.map-pin{width:40px; height:40px; color:var(--gold-light);}
.map-info{background:var(--cream2); padding:32px 28px;}
.map-info h4{font-size:15px; font-weight:600; margin-bottom:14px;}
.map-info p{font-size:13.5px; opacity:0.75; line-height:1.7; margin-bottom:6px;}

/* FAQ */
.dest-faq{background:var(--cream2);}
.faq-list{display:flex; flex-direction:column;}
.faq-item{padding:22px 0; border-top:1px solid rgba(38,36,33,0.12);}
.faq-item:last-child{border-bottom:1px solid rgba(38,36,33,0.12);}
.faq-item h4{font-size:15.5px; font-weight:600; margin-bottom:8px;}
.faq-item p{font-size:13.5px; opacity:0.75; line-height:1.65; font-weight:300;}
.faq-item p a{color:var(--teal); font-weight:500;}

/* RELATED ARTICLES */
.dest-related{background:var(--cream);}
.related-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
.related-card{background:var(--cream2); border-radius:8px; padding:24px 22px; display:block;}
.related-card .rc-pillar{font-size:10.5px; font-weight:600; color:var(--clay); text-transform:uppercase; letter-spacing:0.3px; margin-bottom:10px;}
.related-card h4{font-size:15px; font-weight:600; line-height:1.35; margin-bottom:8px;}
.related-card p{font-size:12.5px; opacity:0.7; font-weight:300; line-height:1.5;}

.dest-more{background:var(--cream2);}

/* BOTTOM CTA */
.dest-cta{background:var(--teal); color:var(--cream); text-align:center; padding:70px 0;}
.dest-cta h3{font-size:24px; font-weight:600; margin-bottom:12px;}
.dest-cta p{font-size:14.5px; opacity:0.85; margin-bottom:26px;}

/* DESTINATIONS ARCHIVE */
.archive-grid-section{background:var(--cream); padding:80px 0;}
.arch-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:28px;}
.arch-card{display:block; background:var(--cream2); border-radius:8px; overflow:hidden; transition:transform .2s;}
.arch-card:hover{transform:translateY(-4px);}
.arch-card-media{height:190px; display:flex; align-items:center; justify-content:center;}
.arch-card-body{padding:22px 24px 26px;}
.arch-card-region{font-size:11px; font-weight:600; color:var(--clay); text-transform:uppercase; letter-spacing:0.3px; margin-bottom:8px;}
.arch-card-body h3{font-size:19px; font-weight:600; margin-bottom:8px; color:var(--ink);}
.arch-card-body p{font-size:13.5px; opacity:0.72; font-weight:300; line-height:1.5; color:var(--ink);}
.arch-pagination{display:flex; justify-content:center; gap:10px; margin-top:48px;}
.arch-pagination a, .arch-pagination span{padding:9px 15px; border-radius:6px; font-size:14px; font-weight:500; background:var(--cream2); color:var(--ink);}
.arch-pagination span.current{background:var(--teal); color:var(--cream);}
.arch-empty{text-align:center; padding:60px 20px; font-size:15px; opacity:0.7;}

@media (max-width:900px){
  .arch-grid{grid-template-columns:1fr;}
}

@media (max-width:900px){
  .dest-hero h1{font-size:30px;}
  .intro-grid, .practical-grid, .dh-grid, .related-grid{grid-template-columns:1fr;}
  .practical-col{border-right:none; border-bottom:1px solid rgba(38,36,33,0.1);}
  .map-box{grid-template-columns:1fr;}
  .dg-grid{grid-template-columns:1fr 1fr;}
  .dest-quickfacts > div{flex:1 1 45%;}
}

/* ============================================================
   HISTORY PILLAR: shared
   ============================================================ */
:root{ --ink2:#1A1815; }
.hist-breadcrumb{background:var(--ink2); padding:14px 0; font-size:13px; color:var(--cream);}
.hist-breadcrumb a{opacity:0.55;}
.hist-breadcrumb span{opacity:0.35; margin:0 8px;}
.hist-breadcrumb b{font-weight:500; color:var(--gold-light);}

/* ---------- HISTORY HUB ---------- */
.hist-hub .sec-kicker{font-size:12px; font-weight:600; letter-spacing:0.4px; margin-bottom:12px;}
.hist-hub .sec-head{max-width:720px; margin-bottom:44px;}
.hist-hub .sec-head h2{font-size:32px; font-weight:600; margin-bottom:12px;}
.hist-hub .sec-head p{font-size:14.5px; opacity:0.75; line-height:1.6;}

.hist-hero{background:var(--ink2); color:var(--cream); position:relative; overflow:hidden; padding:72px 0 0;}
.hist-hero-bg{position:absolute; top:0; right:0; width:50%; height:100%; opacity:0.05; background-image:repeating-linear-gradient(0deg, transparent, transparent 38px, var(--gold-light) 39px);}
.hist-hero-inner{position:relative; z-index:2;}
.hist-tag{font-size:12.5px; font-weight:600; letter-spacing:1px; color:var(--gold-light); margin-bottom:16px;}
.hist-hero h1{font-size:46px; font-weight:600; line-height:1.15; max-width:16ch;}
.hist-hero .lede{margin-top:16px; font-size:16.5px; font-weight:300; max-width:58ch; opacity:0.85;}
.hist-hub .quick-answer{background:rgba(200,155,60,0.08); border:1px solid rgba(200,155,60,0.35); border-radius:6px; padding:22px 26px; margin-top:32px; max-width:680px;}
.hist-hub .quick-answer .qa-label{color:var(--gold-light);}
.hist-hub .quick-answer b{color:var(--gold-light); font-weight:500;}
.hist-search{margin-top:32px; max-width:480px; display:flex; align-items:center; gap:10px; background:rgba(246,241,228,0.07); border:1px solid rgba(246,241,228,0.2); border-radius:30px; padding:13px 20px;}
.hist-search svg{width:17px; height:17px; opacity:0.6; flex-shrink:0;}
.hist-search input[type=text]{background:none; border:none; color:var(--cream); font-family:'Poppins'; font-size:14px; width:100%; outline:none;}
.hist-search input::placeholder{color:rgba(246,241,228,0.5);}

.filmstrip-wrap{margin-top:56px; border-top:1px solid rgba(246,241,228,0.12);}
.filmstrip-label{font-size:11px; font-weight:600; letter-spacing:0.5px; opacity:0.5; padding:20px 0 4px;}
.filmstrip{display:flex; overflow-x:auto; padding-bottom:0;}
.film-item{flex:0 0 150px; padding:20px 20px 26px 0; border-right:1px solid rgba(246,241,228,0.1); display:block; color:var(--cream);}
.film-item.live:hover{background:rgba(200,155,60,0.08);}
.film-item.soon{opacity:0.45;}
.film-item .fdot{width:7px; height:7px; border-radius:50%; background:var(--gold); margin-bottom:12px;}
.film-item .fdate{font-size:11px; font-weight:600; color:var(--gold-light); margin-bottom:6px;}
.film-item .fname{font-size:13px; font-weight:500; line-height:1.4;}
.film-item .fsoon{font-size:9.5px; opacity:0.6; margin-top:6px; letter-spacing:0.3px; text-transform:uppercase;}

.spotlights{background:var(--cream);}
.spot-grid{display:grid; grid-template-columns:1fr 1fr; gap:28px;}
.spot-card{border-radius:8px; padding:36px 34px; color:var(--cream); position:relative; overflow:hidden; display:block;}
.spot-card.c1{background:linear-gradient(155deg, var(--teal), var(--teal-dark));}
.spot-card.c2{background:linear-gradient(155deg, var(--clay), var(--clay-dark));}
.spot-eyebrow{font-size:11.5px; font-weight:600; letter-spacing:0.4px; opacity:0.85; padding-top:8px;}
.spot-top{display:flex; justify-content:space-between; align-items:flex-start; margin-bottom:14px; gap:20px;}
.spot-card h3{font-size:24px; font-weight:600; margin-bottom:12px; line-height:1.25;}
.spot-card p{font-size:14px; font-weight:300; opacity:0.9; line-height:1.6; margin-bottom:20px; max-width:42ch;}
.spot-link{font-size:13.5px; font-weight:600; border-bottom:1.5px solid currentColor; padding-bottom:2px; display:inline-block;}
.spot-stat{text-align:right; flex-shrink:0; white-space:nowrap; display:flex; align-items:baseline;}
.spot-stat b{display:inline; font-size:26px; font-weight:600; margin-right:8px;}
.spot-stat span{font-size:10px; opacity:0.75; letter-spacing:0.3px; white-space:nowrap;}

.civ-index{background:var(--cream2);}
.civ-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:rgba(38,36,33,0.12); border:1px solid rgba(38,36,33,0.12);}
.civ-card{background:var(--cream2); padding:30px 26px; transition:background .2s;}
.civ-card:hover{background:var(--cream);}
.civ-card .civ-range{font-size:11px; font-weight:600; color:var(--clay); letter-spacing:0.3px; margin-bottom:12px; text-transform:uppercase;}
.civ-card h4{font-size:15.5px; font-weight:600; margin-bottom:14px;}
.civ-card ul{list-style:none;}
.civ-card li{font-size:12.5px; padding:5px 0; opacity:0.7; border-top:1px solid rgba(38,36,33,0.08);}
.civ-card li:first-child{border-top:none;}

.rev-spot{background:var(--ink2); color:var(--cream); padding:70px 0;}
.rev-spot-inner{display:flex; justify-content:space-between; align-items:center; gap:40px; flex-wrap:wrap;}
.rev-spot .sec-kicker{color:var(--gold-light);}
.rev-spot h2{font-size:28px; font-weight:600; margin-bottom:10px;}
.rev-spot p{font-size:14px; opacity:0.75; max-width:52ch; font-weight:300;}
.rev-spot .btn{white-space:nowrap;}

.hist-faq{background:var(--cream);}
.faq-grid{display:grid; grid-template-columns:1fr 1fr; gap:16px 48px;}
.hist-faq .faq-item{border-bottom:none;}

.cross-pillar{background:var(--cream2);}
.cross-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
.cross-card{background:var(--cream); border-radius:8px; padding:26px 24px; display:block;}
.cross-card .cc-label{font-size:10.5px; font-weight:600; color:var(--teal); text-transform:uppercase; letter-spacing:0.3px; margin-bottom:10px;}
.cross-card h4{font-size:15px; font-weight:600; margin-bottom:8px;}
.cross-card p{font-size:12.5px; opacity:0.7; font-weight:300; line-height:1.5;}

/* ---------- ERA ARTICLE ---------- */
.era-page{--era:#C89B3C; --era-light:#E4C878;}
.era-page .hist-breadcrumb b{color:var(--era-light);}
.era-page .sec-kicker{font-size:12px; font-weight:600; letter-spacing:0.5px; margin-bottom:12px; color:var(--era);}
.era-page h2.sec-title{font-size:28px; font-weight:600; margin-bottom:12px;}
.era-page p.sec-sub{font-size:14px; opacity:0.7; max-width:60ch; margin-bottom:36px;}

.art-hero{background:var(--ink2); color:var(--cream); padding:56px 0 0; position:relative; overflow:hidden;}
.hero-grid{display:grid; grid-template-columns:1.3fr 0.7fr; gap:48px; align-items:end;}
.art-era-tag{font-size:12.5px; font-weight:600; letter-spacing:1px; color:var(--era-light); margin-bottom:16px;}
.art-hero h1{font-size:44px; font-weight:600; line-height:1.15; max-width:18ch;}
.art-hero .lede{margin-top:16px; font-size:16px; font-weight:300; max-width:58ch; opacity:0.85;}
.hero-meta{margin-top:20px; font-size:12.5px; opacity:0.55; display:flex; gap:22px;}
.big-date{text-align:right; padding-bottom:8px;}
.big-date b{display:block; font-size:72px; font-weight:600; line-height:1; color:var(--era); letter-spacing:-2px;}
.big-date span{font-size:12px; opacity:0.55; letter-spacing:0.5px;}
.index-card{margin-top:36px; display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid rgba(246,241,228,0.15);}
.index-card > div{padding:20px 24px 20px 0;}
.index-card span{display:block; font-size:10.5px; opacity:0.55; text-transform:uppercase; letter-spacing:0.3px; margin-bottom:6px;}
.index-card b{font-size:14px; font-weight:600;}
.era-strip{margin-top:28px; border-top:1px solid rgba(246,241,228,0.12); display:flex;}
.era-strip > *{flex:1; padding:14px 0 14px 10px; font-size:10.5px; opacity:0.35; border-right:1px solid rgba(246,241,228,0.08); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; color:var(--cream);}
.era-strip > a{opacity:0.6;}
.era-strip > a:hover{opacity:1;}
.era-strip > .here{opacity:1; color:var(--era-light); font-weight:600; background:rgba(200,155,60,0.08);}

.art-body-section{background:var(--cream);}
.body-grid{display:grid; grid-template-columns:1.5fr 0.85fr; gap:56px;}
.art-copy p{font-size:15.5px; line-height:1.8; opacity:0.9; margin-bottom:20px;}
.pull-quote{border-left:3px solid var(--era); padding:6px 0 6px 26px; margin:36px 0;}
.pull-quote p{font-size:22px; font-weight:300; line-height:1.5; margin-bottom:0; opacity:1;}
.sidebar-box{background:var(--cream2); border-radius:8px; padding:24px 22px; margin-bottom:22px;}
.sidebar-box h4{font-size:12.5px; font-weight:600; color:var(--era); margin-bottom:14px; letter-spacing:0.4px;}
.sidebar-box p, .sidebar-box li{font-size:13px; opacity:0.8; line-height:1.65;}
.sidebar-box ul{list-style:none;}
.sidebar-box li{padding:6px 0; border-top:1px solid rgba(38,36,33,0.08);}
.sidebar-box li:first-child{border-top:none; padding-top:0;}

.artifact{background:var(--ink2); color:var(--cream); padding:0;}
.artifact-grid{display:grid; grid-template-columns:1.1fr 0.9fr; min-height:440px;}
.artifact-visual{background:linear-gradient(155deg, var(--era) 0%, var(--ink2) 100%); display:flex; align-items:center; justify-content:center; position:relative; min-height:280px;}
.artifact-visual svg{width:80px; height:80px; color:var(--cream); opacity:0.5;}
.artifact-caption{position:absolute; bottom:18px; left:22px; font-size:11px; opacity:0.6; font-style:italic;}
.artifact-body{padding:60px 56px; display:flex; flex-direction:column; justify-content:center;}
.artifact-body .sec-kicker{color:var(--era-light);}
.artifact-body h2{font-size:30px; font-weight:600; margin-bottom:16px; line-height:1.2;}
.artifact-body p{font-size:14.5px; font-weight:300; opacity:0.85; line-height:1.7; margin-bottom:20px;}
.artifact-body .where{font-size:12.5px; color:var(--era-light); font-weight:500;}

.life{background:var(--cream2);}
.life-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:24px;}
.life-card{background:var(--cream); border-radius:8px; padding:30px 28px; display:flex; gap:20px;}
.life-card .life-icon{width:44px; height:44px; border-radius:50%; background:var(--ink2); display:flex; align-items:center; justify-content:center; flex-shrink:0;}
.life-card .life-icon svg{width:20px; height:20px; color:var(--era-light);}
.life-card h4{font-size:15.5px; font-weight:600; margin-bottom:8px;}
.life-card p{font-size:13.5px; opacity:0.75; font-weight:300; line-height:1.65;}

.words{background:var(--cream);}
.words-block{max-width:820px; margin:0 auto; text-align:center; padding:12px 0;}
.words-block .quote-mark{font-size:64px; color:var(--era); line-height:0.5; margin-bottom:24px; font-weight:300;}
.words-block blockquote{font-size:24px; font-weight:300; line-height:1.55; margin-bottom:22px;}
.words-block cite{font-style:normal; font-size:13px; opacity:0.65;}
.words-block cite b{font-weight:600; color:var(--ink); opacity:1;}

.figures{background:var(--cream2);}
.fig-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
.fig-card{background:var(--cream); border-radius:8px; overflow:hidden; text-align:center;}
.fig-portrait{height:140px; background:linear-gradient(155deg, var(--ink2), var(--ink)); display:flex; align-items:center; justify-content:center;}
.fig-portrait svg{width:38px; height:38px; color:var(--era-light); opacity:0.7;}
.fig-body{padding:20px 18px 24px;}
.fig-body .fig-role{font-size:10.5px; font-weight:600; color:var(--era); text-transform:uppercase; letter-spacing:0.3px; margin-bottom:8px;}
.fig-body h4{font-size:15.5px; font-weight:600; margin-bottom:8px;}
.fig-body p{font-size:12.5px; opacity:0.72; font-weight:300; line-height:1.5;}

.tp-section{background:var(--cream);}
.tp-item{display:flex; gap:18px; padding-bottom:22px; position:relative;}
.tp-item::before{content:""; position:absolute; left:5px; top:18px; bottom:-4px; width:1px; background:rgba(38,36,33,0.15);}
.tp-item:last-child::before{display:none;}
.tp-dot{width:11px; height:11px; border-radius:50%; background:var(--era); flex-shrink:0; margin-top:4px;}
.tp-item .tp-date{font-size:11.5px; font-weight:600; color:var(--era); margin-bottom:3px;}
.tp-item h5{font-size:14.5px; font-weight:600; margin-bottom:4px;}
.tp-item p{font-size:13px; opacity:0.75; line-height:1.5;}

.legacy{background:var(--cream2);}
.legacy-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:rgba(38,36,33,0.12); border:1px solid rgba(38,36,33,0.12);}
.legacy-card{background:var(--cream2); padding:28px 24px;}
.legacy-card .lc-icon{width:26px; height:26px; color:var(--era); margin-bottom:14px;}
.legacy-card h4{font-size:15px; font-weight:600; margin-bottom:8px;}
.legacy-card p{font-size:13px; opacity:0.72; font-weight:300; line-height:1.55;}

.see-person{background:var(--cream);}
.sp-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
.sp-card{background:var(--cream2); border-radius:8px; padding:24px 22px; display:block;}
.sp-card .sp-label{font-size:10.5px; font-weight:600; color:var(--teal); text-transform:uppercase; letter-spacing:0.3px; margin-bottom:10px;}
.sp-card h4{font-size:15px; font-weight:600; margin-bottom:8px;}
.sp-card p{font-size:12.5px; opacity:0.7; font-weight:300; line-height:1.5;}

.art-faq{background:var(--cream2);}

.era-nav{background:var(--ink2); color:var(--cream);}
.era-nav-grid{display:grid; grid-template-columns:1fr 1fr; gap:20px;}
.era-nav-card{padding:28px 30px; border:1px solid rgba(246,241,228,0.15); border-radius:8px; display:block; color:var(--cream);}
.era-nav-card.next{text-align:right;}
.era-nav-label{font-size:11px; font-weight:600; color:var(--era-light); letter-spacing:0.4px; margin-bottom:10px;}
.era-nav-card h4{font-size:19px; font-weight:600;}

@media (max-width:900px){
  .hist-hero h1{font-size:32px;}
  .spot-grid, .faq-grid, .cross-grid{grid-template-columns:1fr;}
  .civ-grid{grid-template-columns:1fr 1fr;}
  .rev-spot-inner{flex-direction:column; align-items:flex-start;}
  .art-hero h1{font-size:30px;}
  .hero-grid, .body-grid, .artifact-grid, .life-grid, .fig-grid, .sp-grid, .legacy-grid, .era-nav-grid{grid-template-columns:1fr;}
  .life-card{flex-direction:column; gap:14px;}
  .big-date{text-align:left; margin-top:20px;}
  .big-date b{font-size:52px;}
  .index-card{grid-template-columns:1fr 1fr;}
  .era-strip{display:none;}
  .era-nav-card.next{text-align:left;}
  .artifact-body{padding:40px 28px;}
}

/* ============================================================
   CULTURE AND HERITAGE PILLAR
   ============================================================ */
:root{ --gold-deep:#9C7420; }

/* ---------- CULTURE HUB ---------- */
.cul-hub .sec-kicker{font-size:12px; font-weight:600; letter-spacing:0.5px; margin-bottom:12px; color:var(--gold-deep);}
.cul-hub .sec-head{max-width:720px; margin-bottom:42px;}
.cul-hub .sec-head h2{font-size:32px; font-weight:600; margin-bottom:12px;}
.cul-hub .sec-head p{font-size:14.5px; opacity:0.75; line-height:1.6;}

.cul-hero{background:linear-gradient(135deg, var(--gold) 0%, var(--gold-deep) 60%, var(--clay-dark) 100%); color:var(--cream); position:relative; overflow:hidden; padding:80px 0 0;}
.cul-hero::before{content:""; position:absolute; inset:0; background-image:repeating-linear-gradient(45deg, transparent, transparent 14px, rgba(246,241,228,0.05) 15px); pointer-events:none;}
.cul-hero-inner{position:relative; z-index:2;}
.cul-tag{font-size:12.5px; font-weight:600; letter-spacing:1px; opacity:0.85; margin-bottom:16px;}
.cul-hero h1{font-size:46px; font-weight:600; line-height:1.12; max-width:26ch;}
.cul-hero .lede{margin-top:16px; font-size:16.5px; font-weight:300; max-width:58ch; opacity:0.92;}
.cul-hub .quick-answer{background:rgba(246,241,228,0.12); border:1px solid rgba(246,241,228,0.35); border-radius:8px; padding:22px 26px; margin-top:32px; max-width:680px;}
.cul-hub .quick-answer .qa-label{color:var(--cream); opacity:0.85;}
.cul-hub .quick-answer b{font-weight:600; color:var(--cream);}
.sig-strip{margin-top:52px; border-top:1px solid rgba(246,241,228,0.25); display:flex; overflow-x:auto;}
.sig-item{flex:1; min-width:150px; padding:22px 20px 26px 22px; border-right:1px solid rgba(246,241,228,0.18);}
.sig-item:first-child{padding-left:0;}
.sig-item:last-child{border-right:none;}
.sig-item b{display:block; font-size:14px; font-weight:600; margin-bottom:6px;}
.sig-item span{display:block; font-size:11.5px; opacity:0.75; line-height:1.35;}

.crafts{background:var(--cream);}
.craft-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
.craft-card{background:var(--cream2); border-radius:8px; overflow:hidden; display:block; transition:transform .2s; color:var(--ink);}
a.craft-card:hover{transform:translateY(-4px);}
.craft-card.soon{opacity:0.7;}
.craft-media{height:170px; background:linear-gradient(145deg, var(--gold-light), var(--gold)); display:flex; align-items:center; justify-content:center; position:relative;}
.craft-media svg{width:40px; height:40px; color:var(--ink); opacity:0.45;}
.craft-media .city{position:absolute; top:14px; left:16px; font-size:10.5px; font-weight:600; letter-spacing:0.4px; color:var(--ink); background:rgba(246,241,228,0.85); padding:4px 10px; border-radius:12px;}
.craft-body{padding:20px 22px 24px;}
.craft-body h3{font-size:17px; font-weight:600; margin-bottom:8px;}
.craft-body p{font-size:13px; opacity:0.72; font-weight:300; line-height:1.55;}
.craft-body .age{font-size:11px; color:var(--clay); font-weight:600; margin-top:12px; text-transform:uppercase; letter-spacing:0.3px;}

.traditions{background:var(--cream2);}
.trad-list{display:grid; grid-template-columns:1fr 1fr; gap:0 48px;}
.trad-row{display:flex; gap:18px; padding:22px 0; border-top:1px solid rgba(38,36,33,0.12); color:var(--ink);}
.trad-row.soon{opacity:0.6;}
.trad-icon{width:42px; height:42px; border-radius:50%; background:var(--gold); display:flex; align-items:center; justify-content:center; flex-shrink:0;}
.trad-icon svg{width:19px; height:19px; color:var(--ink);}
.trad-row h4{font-size:15.5px; font-weight:600; margin-bottom:5px;}
.trad-row p{font-size:13px; opacity:0.72; font-weight:300; line-height:1.55;}

.unesco{background:var(--ink2); color:var(--cream);}
.unesco .sec-kicker{color:var(--gold-light);}
.unesco-grid{display:grid; grid-template-columns:repeat(5,1fr); gap:1px; background:rgba(246,241,228,0.12); border:1px solid rgba(246,241,228,0.12);}
.unesco-card{background:var(--ink2); padding:26px 20px;}
.unesco-card .yr{font-size:11px; font-weight:600; color:var(--gold-light); margin-bottom:10px;}
.unesco-card h4{font-size:14px; font-weight:600; line-height:1.35; margin-bottom:8px;}
.unesco-card p{font-size:11.5px; opacity:0.6; font-weight:300; line-height:1.5;}

.see{background:var(--cream);}
.see-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
.see-card{background:var(--cream2); border-radius:8px; padding:26px 24px; border-left:4px solid var(--clay); display:block; color:var(--ink);}
.see-card .sc-label{font-size:10.5px; font-weight:600; color:var(--teal); text-transform:uppercase; letter-spacing:0.3px; margin-bottom:10px;}
.see-card h4{font-size:15.5px; font-weight:600; margin-bottom:8px;}
.see-card p{font-size:12.5px; opacity:0.7; font-weight:300; line-height:1.5;}

.cul-faq{background:var(--cream2);}
.cul-faq .faq-item{border-bottom:none;}
.cul-hub .cross{background:var(--cream);}
.cul-hub .cross-card{background:var(--cream2);}
.cul-hub .cross-card .cc-label{color:var(--gold-deep);}

/* ---------- CULTURE ITEM (single) ---------- */
.cul-page .sec-kicker{font-size:12px; font-weight:600; letter-spacing:0.5px; margin-bottom:12px; color:var(--gold-deep);}
.cul-page h2.sec-title{font-size:28px; font-weight:600; margin-bottom:12px;}
.cul-page p.sec-sub{font-size:14px; opacity:0.7; max-width:60ch; margin-bottom:36px;}

.cul-art-hero{background:linear-gradient(135deg, var(--gold) 0%, var(--gold-deep) 70%, var(--clay-dark) 100%); color:var(--cream); position:relative; overflow:hidden; padding:64px 0 0;}
.cul-art-hero::before{content:""; position:absolute; inset:0; background-image:repeating-linear-gradient(45deg, transparent, transparent 14px, rgba(246,241,228,0.05) 15px); pointer-events:none;}
.cul-page .hero-inner{position:relative; z-index:2;}
.cul-page .hero-grid{display:grid; grid-template-columns:1.2fr 0.8fr; gap:48px; align-items:end;}
.type-tag{display:inline-block; font-size:11px; font-weight:600; letter-spacing:0.6px; background:rgba(38,36,33,0.35); padding:6px 12px; border-radius:14px; margin-bottom:18px;}
.cul-art-hero h1{font-size:44px; font-weight:600; line-height:1.12; max-width:18ch;}
.cul-art-hero .lede{margin-top:16px; font-size:16px; font-weight:300; max-width:56ch; opacity:0.92;}
.cul-page .hero-meta{margin-top:20px; font-size:12.5px; opacity:0.75; display:flex; gap:22px;}
.hero-photo{height:300px; border-radius:8px; background:rgba(38,36,33,0.25); border:1px solid rgba(246,241,228,0.25); display:flex; align-items:center; justify-content:center; position:relative;}
.hero-photo svg{width:48px; height:48px; opacity:0.5;}
.fact-strip{margin-top:40px; display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid rgba(246,241,228,0.25);}
.fact-strip > div{padding:20px 24px 22px 0;}
.fact-strip span{display:block; font-size:10.5px; opacity:0.7; text-transform:uppercase; letter-spacing:0.3px; margin-bottom:6px;}
.fact-strip b{font-size:14px; font-weight:600;}

.cul-page .body-section{background:var(--cream);}
.cul-page .body-grid{display:grid; grid-template-columns:1.5fr 0.85fr; gap:56px;}
.cul-page .copy p{font-size:15.5px; line-height:1.8; opacity:0.9; margin-bottom:20px;}
.cul-page .pull-quote{border-left:3px solid var(--gold);}
.cul-page .sidebar-box h4{color:var(--gold-deep);}

.process{background:var(--cream2);}
.steps{display:grid; grid-template-columns:repeat(2,1fr); gap:20px;}
.step{background:var(--cream); border-radius:8px; padding:26px 24px; display:flex; gap:18px;}
.step-num{width:38px; height:38px; border-radius:50%; background:var(--gold); color:var(--ink); font-weight:600; font-size:15px; display:flex; align-items:center; justify-content:center; flex-shrink:0;}
.step h4{font-size:15.5px; font-weight:600; margin-bottom:6px;}
.step p{font-size:13px; opacity:0.75; font-weight:300; line-height:1.6;}

.visual{background:var(--ink2); color:var(--cream); padding:0;}
.visual-grid{display:grid; grid-template-columns:1fr 1fr; min-height:400px;}
.visual-media{background:linear-gradient(155deg, var(--gold) 0%, var(--ink2) 100%); display:flex; align-items:center; justify-content:center; position:relative; min-height:260px;}
.visual-media svg{width:72px; height:72px; opacity:0.5;}
.visual-media span{position:absolute; bottom:18px; left:22px; font-size:11px; opacity:0.6; font-style:italic;}
.visual-body{padding:56px 52px; display:flex; flex-direction:column; justify-content:center;}
.visual-body .sec-kicker{color:var(--gold-light);}
.visual-body h2{font-size:28px; font-weight:600; margin-bottom:14px; line-height:1.2;}
.visual-body p{font-size:14.5px; font-weight:300; opacity:0.85; line-height:1.7;}

.checklist{background:var(--cream);}
.check-grid{display:grid; grid-template-columns:1fr 1fr; gap:28px;}
.check-col{background:var(--cream2); border-radius:8px; padding:28px 26px;}
.check-col h3{font-size:14px; font-weight:600; letter-spacing:0.3px; margin-bottom:16px;}
.check-col.good h3{color:var(--teal);} .check-col.bad h3{color:var(--clay);}
.check-col ul{list-style:none;}
.check-col li{font-size:13.5px; padding:9px 0 9px 26px; border-top:1px solid rgba(38,36,33,0.08); position:relative; line-height:1.5;}
.check-col li:first-child{border-top:none;}
.check-col li::before{position:absolute; left:0; top:9px; font-weight:600;}
.check-col.good li::before{content:"\2713"; color:var(--teal);}
.check-col.bad li::before{content:"\2715"; color:var(--clay);}

.hist-snap{background:var(--cream2);}
.ctl{display:flex; overflow-x:auto;}
.ctl-item{flex:1; min-width:170px; padding-right:24px; position:relative;}
.ctl-item::before{content:""; position:absolute; top:8px; left:0; right:24px; height:1px; background:rgba(38,36,33,0.18);}
.ctl-item:last-child::before{display:none;}
.ctl-dot{width:8px; height:8px; border-radius:50%; background:var(--gold-deep); margin-bottom:14px;}
.ctl-item .era{font-size:12px; font-weight:600; color:var(--gold-deep); margin-bottom:6px;}
.ctl-item h5{font-size:14.5px; font-weight:600; margin-bottom:6px;}
.ctl-item p{font-size:12.5px; opacity:0.7; font-weight:300; line-height:1.5;}

.where{background:var(--cream);}
.where-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
.where-card{background:var(--cream2); border-radius:8px; padding:24px 22px; border-left:4px solid var(--clay); display:block; color:var(--ink);}
.where-card .wl{font-size:10.5px; font-weight:600; color:var(--teal); text-transform:uppercase; letter-spacing:0.3px; margin-bottom:10px;}
.where-card h4{font-size:15px; font-weight:600; margin-bottom:8px;}
.where-card p{font-size:12.5px; opacity:0.7; font-weight:300; line-height:1.5;}

.cul-page .art-faq{background:var(--cream2);}
.related{background:var(--cream);}
.rel-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
.rel-card{background:var(--cream2); border-radius:8px; padding:24px 22px; display:block; color:var(--ink);}
.rel-card .rl{font-size:10.5px; font-weight:600; color:var(--gold-deep); text-transform:uppercase; letter-spacing:0.3px; margin-bottom:10px;}
.rel-card h4{font-size:15px; font-weight:600; margin-bottom:8px;}
.rel-card p{font-size:12.5px; opacity:0.7; font-weight:300; line-height:1.5;}

@media (max-width:900px){
  .cul-hero h1{font-size:32px;}
  .cul-hero h1 br{display:none;}
  .craft-grid, .trad-list, .see-grid, .cul-hub .cross-grid{grid-template-columns:1fr;}
  .unesco-grid{grid-template-columns:1fr 1fr;}
  .cul-art-hero h1{font-size:30px;}
  .cul-page .hero-grid, .cul-page .body-grid, .steps, .visual-grid, .check-grid, .where-grid, .rel-grid{grid-template-columns:1fr;}
  .fact-strip{grid-template-columns:1fr 1fr;}
  .hero-photo{height:200px;}
  .visual-body{padding:36px 28px;}
}

/* ============================================================
   RELIGION AND SACRED SITES PILLAR
   ============================================================ */
:root{ --teal-deep:#052E29; }
.rel-hub .sec-kicker, .rel-page .sec-kicker{font-size:12px; font-weight:600; letter-spacing:0.6px; margin-bottom:12px; color:var(--teal);}
.rel-hub .sec-head{max-width:720px; margin-bottom:42px;}
.rel-hub .sec-head h2, .rel-page h2.sec-title{font-size:30px; font-weight:600; margin-bottom:12px; line-height:1.2;}
.rel-hub .sec-head p, .rel-page p.sec-sub{font-size:14.5px; opacity:0.72; line-height:1.6; max-width:60ch;}
.rel-page p.sec-sub{margin-bottom:36px;}
.rel-hub section, .rel-page section{padding:84px 0;}
.rel-bg2{background:var(--cream2);}
.rel-dark{background:var(--teal-deep); color:var(--cream);}
.rel-dark .sec-kicker{color:var(--gold-light) !important;}
.rel-dark .sec-head p{opacity:0.8;}
.rel-dark h2{color:var(--cream);}

.rel-hero{background:var(--teal-deep); color:var(--cream); position:relative; overflow:hidden; padding:80px 0 0;}
.rel-hero::before{content:""; position:absolute; inset:0; background-image:radial-gradient(rgba(246,241,228,0.07) 1px, transparent 1px); background-size:22px 22px; pointer-events:none;}
.rel-arches{position:absolute; right:-40px; top:0; bottom:0; width:46%; display:flex; align-items:flex-end; gap:18px; opacity:0.16; pointer-events:none;}
.rel-arches i{display:block; flex:1; background:var(--cream); border-radius:200px 200px 0 0; height:70%;}
.rel-arches i:nth-child(2){height:88%;} .rel-arches i:nth-child(3){height:60%;}
.rel-hero-inner{position:relative; z-index:2;}
.rel-tag{font-size:12.5px; font-weight:600; letter-spacing:1px; color:var(--gold-light); margin-bottom:16px;}
.rel-hero h1{font-size:46px; font-weight:600; line-height:1.12; max-width:20ch;}
.rel-hero .lede{margin-top:16px; font-size:16.5px; font-weight:300; max-width:56ch; opacity:0.88;}
.rel-hub .quick-answer{background:rgba(246,241,228,0.06); border:1px solid rgba(246,241,228,0.22); border-radius:8px; padding:22px 26px; margin-top:32px; max-width:680px;}
.rel-hub .quick-answer .qa-label{color:var(--gold-light);}
.rel-hub .quick-answer b{font-weight:600; color:var(--gold-light);}
.rel-page .hero-meta{margin-top:20px; font-size:12.5px; opacity:0.6; display:flex; gap:22px;}
.rel-hero .fact-strip{border-top:1px solid rgba(246,241,228,0.15);}
.rel-hero .fact-strip span{opacity:0.55;}
.site-hero-grid{display:grid; grid-template-columns:1.1fr 0.9fr; gap:48px; align-items:end;}
.arch-photo{height:320px; background:rgba(246,241,228,0.08); border:1px solid rgba(246,241,228,0.2); border-radius:200px 200px 8px 8px; display:flex; align-items:center; justify-content:center;}
.arch-photo svg{width:48px; height:48px; opacity:0.5;}

.rel-page .body-section{background:var(--cream);}
.rel-page .body-grid{display:grid; grid-template-columns:1.5fr 0.85fr; gap:56px;}
.rel-page .copy p{font-size:15.5px; line-height:1.8; opacity:0.9; margin-bottom:20px;}
.rel-page .pull-quote{border-left:3px solid var(--teal);}
.rel-page .sidebar-box h4{color:var(--teal);}
.rel-page .sidebar-box.note{background:var(--teal-deep); color:var(--cream);}
.rel-page .sidebar-box.note h4{color:var(--gold-light);}
.rel-page .sidebar-box.note p{opacity:0.88;}

.comm-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}
.comm-card{background:var(--cream2); border-radius:8px; padding:28px 24px; border-top:4px solid var(--teal); display:block; color:var(--ink);}
.comm-card.soon{opacity:0.65;}
.comm-card .sym{width:40px; height:40px; border-radius:50%; background:var(--teal-deep); display:flex; align-items:center; justify-content:center; margin-bottom:16px;}
.comm-card .sym svg{width:18px; height:18px; color:var(--gold-light);}
.comm-card h3{font-size:16px; font-weight:600; margin-bottom:8px;}
.comm-card p{font-size:12.5px; opacity:0.72; font-weight:300; line-height:1.55;}
.comm-card .where{font-size:11px; color:var(--teal); font-weight:600; margin-top:12px;}

.rarch-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
.rarch-card{background:var(--cream2); border-radius:8px; overflow:hidden; display:block; color:var(--ink); transition:transform .2s;}
a.rarch-card:hover{transform:translateY(-4px);}
.rarch-card.soon{opacity:0.7;}
.rarch-media{height:180px; background:linear-gradient(160deg, var(--teal), var(--teal-deep)); position:relative; display:flex; align-items:flex-end; justify-content:center; overflow:hidden;}
.rarch-media:not(.has-img)::after{content:""; width:58%; height:75%; background:rgba(246,241,228,0.16); border-radius:200px 200px 0 0;}
.rarch-media .faith{position:absolute; top:14px; left:16px; font-size:10.5px; font-weight:600; letter-spacing:0.4px; color:var(--ink); background:rgba(246,241,228,0.9); padding:4px 10px; border-radius:12px;}
.rarch-body{padding:20px 22px 24px;}
.rarch-body .city{font-size:11px; font-weight:600; color:var(--clay); text-transform:uppercase; letter-spacing:0.3px; margin-bottom:8px;}
.rarch-body h3{font-size:16.5px; font-weight:600; margin-bottom:8px;}
.rarch-body p{font-size:13px; opacity:0.72; font-weight:300; line-height:1.55;}

.info-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
.info-card{background:var(--cream); border-radius:8px; padding:26px 24px;}
.info-card.alt{background:var(--cream2);}
.info-card.on-dark{background:rgba(246,241,228,0.06); color:var(--cream);}
.info-card.on-dark p{opacity:0.8;}
.info-card .num{width:34px; height:34px; border-radius:50%; background:var(--teal); color:var(--cream); font-weight:600; font-size:14px; display:flex; align-items:center; justify-content:center; margin-bottom:14px;}
.info-card h4{font-size:15.5px; font-weight:600; margin-bottom:8px;}
.info-card p{font-size:13px; opacity:0.75; font-weight:300; line-height:1.6;}

.two-col{display:grid; grid-template-columns:1fr 1fr; gap:28px;}
.col-box{background:var(--cream2); border-radius:8px; padding:28px 26px;}
.rel-bg2 .col-box{background:var(--cream);}
.col-box h3{font-size:14px; font-weight:600; letter-spacing:0.3px; margin-bottom:16px;}
.col-box.a h3{color:var(--clay);} .col-box.b h3{color:var(--teal);}
.col-box ul{list-style:none;}
.col-box li{font-size:13.5px; padding:9px 0 9px 26px; border-top:1px solid rgba(38,36,33,0.08); position:relative; line-height:1.5;}
.col-box li:first-child{border-top:none;}
.col-box li::before{position:absolute; left:0; top:9px; font-weight:600;}
.col-box.a li::before{content:"\2715"; color:var(--clay);}
.col-box.b li::before{content:"\2713"; color:var(--teal);}

.rtl{display:flex; overflow-x:auto;}
.rtl-i{flex:1; min-width:170px; padding-right:24px; position:relative;}
.rtl-i::before{content:""; position:absolute; top:8px; left:0; right:24px; height:1px; background:rgba(38,36,33,0.18);}
.rtl-i:last-child::before{display:none;}
.rtl-d{width:8px; height:8px; border-radius:50%; background:var(--gold); margin-bottom:14px;}
.rtl-i .era{font-size:12px; font-weight:600; color:var(--teal); margin-bottom:6px;}
.rtl-i h5{font-size:14.5px; font-weight:600; margin-bottom:6px;}
.rtl-i p{font-size:12.5px; opacity:0.7; font-weight:300; line-height:1.5;}

.link-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
.link-card{background:var(--cream2); border-radius:8px; padding:24px 22px; border-left:4px solid var(--gold); display:block; color:var(--ink);}
.rel-bg2 .link-card{background:var(--cream);}
.link-card.on-dark{background:rgba(246,241,228,0.06); color:var(--cream);}
.link-card.on-dark .lbl{color:var(--gold-light);}
.link-card.on-dark p{opacity:0.8;}
.link-card .lbl{font-size:10.5px; font-weight:600; color:var(--teal); text-transform:uppercase; letter-spacing:0.3px; margin-bottom:10px;}
.link-card h4{font-size:15px; font-weight:600; margin-bottom:8px;}
.link-card p{font-size:12.5px; opacity:0.7; font-weight:300; line-height:1.5;}

.rel-page .fig-card{background:var(--cream);}
.rel-page .fig-portrait{background:linear-gradient(155deg, var(--teal-deep), var(--teal)); height:130px;}
.rel-page .fig-portrait svg{color:var(--gold-light);}
.rel-page .fig-body .fig-role{color:var(--clay);}
.rel-hub .faq-grid .faq-item{border-bottom:none;}

@media (max-width:900px){
  .rel-hero h1{font-size:32px;}
  .rel-arches{display:none;}
  .site-hero-grid{grid-template-columns:1fr;}
  .arch-photo{height:200px;}
  .rel-page .body-grid, .rarch-grid, .info-grid, .two-col, .link-grid{grid-template-columns:1fr;}
  .comm-grid{grid-template-columns:1fr 1fr;}
}

/* ============================================================
   ARTS, LITERATURE AND MUSIC PILLAR
   ============================================================ */
.arts-hub .sec-kicker, .arts-page .sec-kicker{font-size:12px; font-weight:600; letter-spacing:0.8px; margin-bottom:14px; color:var(--clay);}
.arts-hub .sec-head, .arts-page .sec-head{max-width:720px; margin-bottom:48px;}
.arts-hub .sec-head h2, .arts-page .sec-head h2, .arts-page h2.sec-title{font-size:34px; font-weight:600; margin-bottom:14px; line-height:1.15; letter-spacing:-0.3px;}
.arts-hub .sec-head p, .arts-page .sec-head p, .arts-page p.sec-sub{font-size:15px; opacity:0.72; line-height:1.65; max-width:58ch;}
.arts-page p.sec-sub{margin-bottom:40px;}
.arts-hub section, .arts-page section{padding:96px 0;}
.arts-bg2{background:var(--cream2);}
.arts-dark{background:var(--ink2); color:var(--cream);}
.arts-dark .sec-kicker{color:var(--gold-light) !important;}
.arts-dark .sec-head p{opacity:0.8;}
.arts-dark h2{color:var(--cream);}

.arts-hero{background:var(--ink2); color:var(--cream); position:relative; overflow:hidden; padding:96px 0 0;}
.arts-hero .glyph{position:absolute; right:-60px; top:-40px; font-size:520px; line-height:1; color:var(--clay); opacity:0.12; font-weight:600; pointer-events:none; user-select:none;}
.arts-hero-inner{position:relative; z-index:2;}
.arts-tag{font-size:12.5px; font-weight:600; letter-spacing:1.2px; color:var(--gold-light); margin-bottom:22px;}
.arts-hero h1{font-size:60px; font-weight:600; line-height:1.05; max-width:16ch; letter-spacing:-1px;}
.arts-hero .lede{margin-top:22px; font-size:17px; font-weight:300; max-width:54ch; opacity:0.85; line-height:1.7;}
.arts-page .hero-meta{margin-top:24px; font-size:12.5px; opacity:0.55; display:flex; gap:22px;}
.big-verse{margin-top:56px; padding:40px 0; border-top:1px solid rgba(246,241,228,0.15); max-width:820px;}
.big-verse p{font-size:30px; font-weight:300; line-height:1.4; color:var(--cream);}
.big-verse cite{display:block; margin-top:18px; font-style:normal; font-size:13px; color:var(--gold-light);}
.arts-hub .quick-answer{background:rgba(246,241,228,0.06); border:1px solid rgba(246,241,228,0.2); border-radius:8px; padding:22px 26px; margin-top:36px; max-width:680px;}
.arts-hub .quick-answer .qa-label{color:var(--gold-light);}
.arts-hub .quick-answer b{font-weight:600; color:var(--gold-light);}
.arts-hero .fact-strip{border-top:1px solid rgba(246,241,228,0.15);}
.arts-hero .fact-strip span{opacity:0.55;}
.portrait-grid{display:grid; grid-template-columns:0.8fr 1.2fr; gap:56px; align-items:center;}
.portrait{aspect-ratio:3/4; background:linear-gradient(160deg, var(--clay), var(--ink2)); border-radius:8px; display:flex; align-items:center; justify-content:center; position:relative;}
.portrait svg{width:56px; height:56px; color:var(--cream); opacity:0.5;}

.arts-page .body-grid{display:grid; grid-template-columns:1.5fr 0.85fr; gap:64px;}
.arts-page .copy p{font-size:16px; line-height:1.85; opacity:0.9; margin-bottom:22px;}
.arts-page .copy > p:first-of-type::first-letter{font-size:64px; font-weight:600; float:left; line-height:0.85; margin:6px 12px 0 0; color:var(--clay);}
.arts-page .pull-quote{border-left:3px solid var(--clay); margin:40px 0;}
.arts-page .pull-quote p{font-size:24px; line-height:1.45;}
.arts-page .sidebar-box h4{color:var(--clay); letter-spacing:0.5px;}

.disc-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}
.disc-card{background:var(--cream2); border-radius:8px; padding:30px 26px 28px; display:block; color:var(--ink); position:relative; overflow:hidden; min-height:220px; transition:transform .2s;}
a.disc-card:hover{transform:translateY(-4px);}
.disc-card.soon{opacity:0.65;}
.disc-card.dark-card{background:var(--ink2); color:var(--cream);}
.disc-card.dark-card p{opacity:0.8;}
.disc-card.dark-card .dnum{color:var(--gold); opacity:0.5;}
.disc-card.dark-card .dmore{color:var(--gold-light);}
.disc-card .dnum{font-size:52px; font-weight:600; color:var(--clay); opacity:0.18; position:absolute; top:10px; right:18px; line-height:1;}
.disc-card h3{font-size:19px; font-weight:600; margin-bottom:10px; margin-top:28px;}
.disc-card p{font-size:13px; opacity:0.72; font-weight:300; line-height:1.55;}
.disc-card .dmore{font-size:11.5px; color:var(--clay); font-weight:600; margin-top:16px; letter-spacing:0.3px;}

.names{background:var(--cream2);}
.arts-page .names{background:var(--cream);}
.name-row{display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:rgba(38,36,33,0.12); border:1px solid rgba(38,36,33,0.12);}
.name-card{background:var(--cream2); padding:30px 28px; display:block; color:var(--ink);}
.arts-page .name-card{background:var(--cream);}
a.name-card:hover{background:var(--cream);}
.arts-page a.name-card:hover{background:var(--cream2);}
.name-card.soon{opacity:0.65;}
.name-card .role{font-size:10.5px; font-weight:600; color:var(--teal); text-transform:uppercase; letter-spacing:0.4px; margin-bottom:12px;}
.name-card h3{font-size:22px; font-weight:600; margin-bottom:8px; letter-spacing:-0.2px;}
.name-card .years{font-size:12px; opacity:0.55; margin-bottom:12px;}
.name-card p{font-size:13px; opacity:0.72; font-weight:300; line-height:1.55;}

.arts-hub .info-card .num, .arts-page .info-card .num{background:var(--clay);}
.arts-page .info-card{background:var(--cream);}
.arts-page .info-card.on-dark{background:rgba(246,241,228,0.06);}

.works{display:grid; grid-template-columns:1fr 1fr; gap:0 48px;}
.work{display:flex; gap:18px; padding:22px 0; border-top:1px solid rgba(38,36,33,0.12);}
.work .wyear{font-size:13px; font-weight:600; color:var(--clay); min-width:56px; padding-top:2px;}
.work h4{font-size:16px; font-weight:600; margin-bottom:5px;}
.work p{font-size:13px; opacity:0.72; font-weight:300; line-height:1.55;}

.atl{display:flex; overflow-x:auto;}
.atl-i{flex:1; min-width:170px; padding-right:24px; position:relative;}
.atl-i::before{content:""; position:absolute; top:8px; left:0; right:24px; height:1px; background:rgba(38,36,33,0.18);}
.atl-i:last-child::before{display:none;}
.atl-d{width:8px; height:8px; border-radius:50%; background:var(--clay); margin-bottom:14px;}
.atl-i .era{font-size:12px; font-weight:600; color:var(--clay); margin-bottom:6px;}
.atl-i h5{font-size:14.5px; font-weight:600; margin-bottom:6px;}
.atl-i p{font-size:12.5px; opacity:0.7; font-weight:300; line-height:1.5;}

.verse{background:var(--cream);}
.verse-block{max-width:860px; margin:0 auto; text-align:center;}
.verse-block .vmark{font-size:72px; color:var(--clay); line-height:0.5; margin-bottom:28px; font-weight:300;}
.verse-block blockquote{font-size:28px; font-weight:300; line-height:1.5; margin-bottom:24px;}
.verse-block cite{font-style:normal; font-size:13px; opacity:0.65;}
.verse-block cite b{font-weight:600; color:var(--ink); opacity:1;}

.arts-hub .link-card, .arts-page .link-card{border-left-color:var(--gold);}
.arts-bg2 .link-card{background:var(--cream);}
.arts-hub .faq-grid .faq-item{border-bottom:none;}

@media (max-width:900px){
  .arts-hero h1{font-size:36px;}
  .arts-hero .glyph{display:none;}
  .big-verse p{font-size:22px;}
  .arts-page .body-grid, .name-row, .works, .portrait-grid{grid-template-columns:1fr;}
  .disc-grid{grid-template-columns:1fr 1fr;}
  .verse-block blockquote{font-size:22px;}
}

/* ============================================================
   ARCHAEOLOGY AND MUSEUMS PILLAR
   ============================================================ */
:root{ --sand:#D9C39A; --sand-dark:#B89C6A; --earth:#5C4A32; --earth-dark:#3B2F20; }
.arc-hub .sec-kicker, .arc-page .sec-kicker{font-size:12px; font-weight:600; letter-spacing:0.6px; margin-bottom:12px; color:var(--earth);}
.arc-hub .sec-head, .arc-page .sec-head{max-width:720px; margin-bottom:44px;}
.arc-hub .sec-head h2, .arc-page .sec-head h2, .arc-page h2.sec-title{font-size:32px; font-weight:600; margin-bottom:12px; line-height:1.18;}
.arc-hub .sec-head p, .arc-page .sec-head p, .arc-page p.sec-sub{font-size:14.5px; opacity:0.72; line-height:1.65; max-width:60ch;}
.arc-page p.sec-sub{margin-bottom:36px;}
.arc-hub section, .arc-page section{padding:88px 0;}
.arc-bg2{background:var(--cream2);}
.arc-dark{background:var(--earth-dark); color:var(--cream);}
.arc-dark .sec-kicker{color:var(--sand) !important;}
.arc-dark .sec-head p{opacity:0.82;}
.arc-dark h2{color:var(--cream);}

.arc-hero{background:var(--earth-dark); color:var(--cream); position:relative; overflow:hidden; padding:80px 0 0;}
.strata{position:absolute; left:0; right:0; bottom:0; height:100%; pointer-events:none; opacity:0.55;}
.strata i{display:block; position:absolute; left:0; right:0; height:14%;}
.strata i:nth-child(1){bottom:0; background:var(--earth);}
.strata i:nth-child(2){bottom:14%; background:var(--sand-dark); opacity:0.5; height:9%;}
.strata i:nth-child(3){bottom:23%; background:var(--clay-dark); opacity:0.45; height:11%;}
.strata i:nth-child(4){bottom:34%; background:var(--earth); opacity:0.35; height:7%;}
.arc-hero-inner{position:relative; z-index:2;}
.arc-tag{font-size:12.5px; font-weight:600; letter-spacing:1px; color:var(--sand); margin-bottom:16px; display:flex; align-items:center; gap:8px; flex-wrap:wrap;}
.arc-hero h1{font-size:46px; font-weight:600; line-height:1.12; max-width:18ch;}
.arc-hero .lede{margin-top:16px; font-size:16.5px; font-weight:300; max-width:56ch; opacity:0.88;}
.arc-hub .quick-answer{background:rgba(246,241,228,0.07); border:1px solid rgba(217,195,154,0.35); border-radius:8px; padding:22px 26px; margin-top:32px; max-width:680px;}
.arc-hub .quick-answer .qa-label{color:var(--sand);}
.arc-hub .quick-answer b{font-weight:600; color:var(--sand);}
.arc-page .hero-meta{margin-top:20px; font-size:12.5px; opacity:0.6; display:flex; gap:22px;}
.unesco-strip{margin-top:52px; border-top:1px solid rgba(217,195,154,0.25); display:flex; overflow-x:auto;}
.unesco-strip > div{flex:1; min-width:160px; padding:22px 20px 26px 22px; border-right:1px solid rgba(217,195,154,0.18);}
.unesco-strip > div:first-child{padding-left:0;} .unesco-strip > div:last-child{border-right:none;}
.unesco-strip b{display:block; font-size:14px; font-weight:600; margin-bottom:6px;}
.unesco-strip span{display:block; font-size:11.5px; opacity:0.7; line-height:1.35;}
.arc-hero .fact-strip{border-top:1px solid rgba(217,195,154,0.25);}
.arc-hero .fact-strip span{opacity:0.6;}
.status-pill{display:inline-block; font-size:10.5px; font-weight:600; letter-spacing:0.4px; padding:4px 10px; border-radius:12px; text-transform:uppercase; line-height:1.3;}
.status-pill.open{background:var(--teal); color:var(--cream);}
.status-pill.partial{background:var(--gold); color:var(--ink);}
.status-pill.closed{background:var(--clay); color:var(--cream);}
.status-pill.dmg{background:var(--clay-dark); color:var(--cream);}

.arc-page .body-grid{display:grid; grid-template-columns:1.5fr 0.85fr; gap:56px;}
.arc-page .copy p{font-size:15.5px; line-height:1.8; opacity:0.9; margin-bottom:20px;}
.arc-page .pull-quote{border-left:3px solid var(--sand-dark);}
.arc-page .sidebar-box h4{color:var(--earth);}
.arc-page .sidebar-box.dark{background:var(--earth-dark); color:var(--cream);}
.arc-page .sidebar-box.dark h4{color:var(--sand);}
.arc-page .sidebar-box.dark p{opacity:0.88;}

.site-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
.site-card{background:var(--cream2); border-radius:8px; overflow:hidden; display:block; color:var(--ink); transition:transform .2s;}
a.site-card:hover{transform:translateY(-4px);}
.site-card.soon{opacity:0.7;}
.site-media{height:170px; background:linear-gradient(180deg, var(--sand) 0%, var(--sand-dark) 55%, var(--earth) 100%); position:relative;}
.site-media::after{content:""; position:absolute; left:0; right:0; bottom:28%; height:1px; background:rgba(246,241,228,0.35);}
.site-media .era{position:absolute; top:14px; left:16px; font-size:10.5px; font-weight:600; letter-spacing:0.4px; color:var(--ink); background:rgba(246,241,228,0.9); padding:4px 10px; border-radius:12px;}
.site-media .status-pill{position:absolute; top:14px; right:16px;}
.site-body{padding:20px 22px 24px;}
.site-body .where{font-size:11px; font-weight:600; color:var(--clay); text-transform:uppercase; letter-spacing:0.3px; margin-bottom:8px;}
.site-body h3{font-size:17px; font-weight:600; margin-bottom:8px;}
.site-body p{font-size:13px; opacity:0.72; font-weight:300; line-height:1.55;}

.museum-list{border-top:1px solid rgba(38,36,33,0.15);}
.museum-row{display:grid; grid-template-columns:1.4fr 1fr 1fr auto; gap:24px; align-items:center; padding:22px 0; border-bottom:1px solid rgba(38,36,33,0.15); color:var(--ink);}
.museum-row.soon{opacity:0.7;}
.museum-row h4{font-size:16px; font-weight:600; margin-bottom:4px;}
.museum-row p{font-size:12.5px; opacity:0.65; font-weight:300;}
.museum-row .city{font-size:13px; opacity:0.75;}

.disc-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:24px;}
.disc-card{background:var(--cream); border-radius:8px; padding:30px 28px; display:flex; gap:22px; border-top:4px solid var(--sand-dark);}
.arc-bg2 .disc-card{background:var(--cream);}
.disc-card .dyear{font-size:22px; font-weight:600; color:var(--earth); min-width:88px; line-height:1.1;}
.disc-card .dyear small{display:block; font-size:10.5px; font-weight:600; opacity:0.55; letter-spacing:0.3px; text-transform:uppercase; margin-top:4px;}
.disc-card h4{font-size:16.5px; font-weight:600; margin-bottom:8px;}
.disc-card p{font-size:13.5px; opacity:0.75; font-weight:300; line-height:1.6;}

.arc-hub .info-card .num, .arc-page .info-card .num{background:var(--earth);}
.arc-page .info-card{background:var(--cream);}
.arc-page .info-card.alt{background:var(--cream2);}
.arc-hub .info-card.on-dark, .arc-page .info-card.on-dark{background:rgba(246,241,228,0.07);}
.arc-hub .info-card.on-dark .num{background:var(--sand); color:var(--ink);}

.layers{border-left:3px solid var(--sand-dark); margin-left:6px;}
.layer{padding:18px 0 18px 28px; position:relative; border-bottom:1px dashed rgba(38,36,33,0.15);}
.layer:last-child{border-bottom:none;}
.layer::before{content:""; position:absolute; left:-9px; top:24px; width:15px; height:15px; border-radius:50%; background:var(--sand-dark); border:3px solid var(--cream2);}
.layer .lyear{font-size:12px; font-weight:600; color:var(--earth); margin-bottom:4px;}
.layer h5{font-size:15.5px; font-weight:600; margin-bottom:5px;}
.layer p{font-size:13px; opacity:0.72; font-weight:300; line-height:1.55;}

.arc-hub .col-box, .arc-page .col-box{background:var(--cream2);}
.arc-bg2 .col-box{background:var(--cream);}

.obj-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
.obj-card{background:var(--cream); border-radius:8px; overflow:hidden;}
.obj-media{height:200px; background:linear-gradient(160deg, var(--earth), var(--earth-dark)); display:flex; align-items:center; justify-content:center;}
.obj-media svg{width:40px; height:40px; color:var(--sand); opacity:0.6;}
.obj-body{padding:18px 20px 22px;}
.obj-body .hall{font-size:10.5px; font-weight:600; color:var(--clay); text-transform:uppercase; letter-spacing:0.3px; margin-bottom:8px;}
.obj-body h4{font-size:15px; font-weight:600; margin-bottom:6px;}
.obj-body p{font-size:12.5px; opacity:0.72; font-weight:300; line-height:1.5;}

.arc-hub .link-card, .arc-page .link-card{border-left-color:var(--sand-dark);}
.arc-bg2 .link-card{background:var(--cream);}
.arc-dark .link-card.on-dark .lbl{color:var(--sand);}
.arc-hub .faq-grid .faq-item{border-bottom:none;}

@media (max-width:900px){
  .arc-hero h1{font-size:32px;}
  .arc-page .body-grid, .site-grid, .disc-grid, .obj-grid{grid-template-columns:1fr;}
  .museum-row{grid-template-columns:1fr; gap:8px;}
}

/* ============================================================
   NATURE AND GEOGRAPHY PILLAR
   ============================================================ */
:root{ --sky:#7FA8B5; --sky-light:#B8D2DA; --sky-deep:#3E6B78; --sky-dark:#1F3E48; --sea:#2E5E6B; }
.nat-hub .sec-kicker, .nat-page .sec-kicker{font-size:12px; font-weight:600; letter-spacing:0.6px; margin-bottom:12px; color:var(--sky-deep);}
.nat-hub .sec-head, .nat-page .sec-head{max-width:720px; margin-bottom:48px;}
.nat-hub .sec-head h2, .nat-page .sec-head h2, .nat-page h2.sec-title{font-size:32px; font-weight:600; margin-bottom:12px; line-height:1.18;}
.nat-hub .sec-head p, .nat-page .sec-head p, .nat-page p.sec-sub{font-size:14.5px; opacity:0.72; line-height:1.65; max-width:60ch;}
.nat-page p.sec-sub{margin-bottom:40px;}
.nat-hub section, .nat-page section{padding:92px 0;}
.nat-bg2{background:var(--cream2);}
.nat-dark, .rivers{background:var(--sky-dark); color:var(--cream);}
.nat-dark .sec-kicker, .rivers .sec-kicker{color:var(--sky-light) !important;}
.nat-dark .sec-head p, .rivers .sec-head p{opacity:0.82;}
.nat-dark h2, .rivers h2{color:var(--cream);}

.nat-hero{background:linear-gradient(180deg, var(--sky-light) 0%, var(--sky) 55%, var(--sky-deep) 100%); color:var(--ink); position:relative; overflow:hidden; padding:88px 0 0;}
.nat-hero::after{content:""; position:absolute; left:0; right:0; bottom:0; height:38%; background:linear-gradient(180deg, transparent, var(--sky-deep)); pointer-events:none;}
.horizon{position:absolute; left:-5%; right:-5%; bottom:0; height:46%; pointer-events:none;}
.horizon i{position:absolute; bottom:0; display:block; border-radius:50% 50% 0 0;}
.horizon i:nth-child(1){left:0; width:45%; height:60%; background:var(--sky-deep); opacity:0.55;}
.horizon i:nth-child(2){left:30%; width:50%; height:80%; background:var(--sea); opacity:0.5;}
.horizon i:nth-child(3){left:65%; width:40%; height:50%; background:var(--sky-deep); opacity:0.6;}
.nat-hero-inner{position:relative; z-index:2;}
.nat-tag{font-size:12.5px; font-weight:600; letter-spacing:1px; color:var(--sky-dark); margin-bottom:16px;}
.nat-hero h1{font-size:48px; font-weight:600; line-height:1.1; max-width:18ch; color:var(--sky-dark);}
.nat-hero .lede{margin-top:16px; font-size:16.5px; font-weight:300; max-width:56ch; color:var(--sky-dark); opacity:0.9;}
.nat-hub .quick-answer{background:rgba(246,241,228,0.55); border:1px solid rgba(246,241,228,0.8); border-radius:8px; padding:22px 26px; margin-top:32px; max-width:680px; backdrop-filter:blur(4px); color:var(--ink);}
.nat-hub .quick-answer .qa-label{color:var(--sky-deep);}
.nat-hub .quick-answer b{font-weight:600; color:var(--ink);}
.nat-page .hero-meta{margin-top:20px; font-size:12.5px; color:var(--sky-dark); opacity:0.7; display:flex; gap:22px;}
.land-strip{margin-top:64px; display:grid; grid-template-columns:repeat(6,1fr); position:relative; z-index:2;}
.land-strip > div{padding:22px 18px 30px 0; color:var(--cream); border-top:1px solid rgba(246,241,228,0.4);}
.land-strip b{display:block; font-size:14px; font-weight:600; margin-bottom:4px;}
.land-strip span{display:block; font-size:11.5px; opacity:0.85; line-height:1.35;}
.nat-hero .fact-strip{margin-top:44px; border-top:1px solid rgba(246,241,228,0.4);}
.nat-hero .fact-strip > div{color:var(--cream);}
.nat-hero .fact-strip span{opacity:0.75;}

.nat-page .body-grid{display:grid; grid-template-columns:1.5fr 0.85fr; gap:56px;}
.nat-page .copy p{font-size:15.5px; line-height:1.8; opacity:0.9; margin-bottom:20px;}
.nat-page .pull-quote{border-left:3px solid var(--sky);}
.nat-page .sidebar-box h4{color:var(--sky-deep);}
.nat-page .sidebar-box.blue{background:var(--sky-dark); color:var(--cream);}
.nat-page .sidebar-box.blue h4{color:var(--sky-light);}
.nat-page .sidebar-box.blue p{opacity:0.88;}

.land-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
.land-card{background:var(--cream2); border-radius:8px; overflow:hidden; display:block; color:var(--ink); transition:transform .2s;}
a.land-card:hover{transform:translateY(-4px);}
.land-card.soon{opacity:0.7;}
.land-media{height:200px; position:relative; display:flex; align-items:flex-end;}
.land-media.coast{background:linear-gradient(180deg, var(--sky-light), var(--sea));}
.land-media.mountain{background:linear-gradient(180deg, var(--sky-light) 0%, #8A9A8C 60%, #4A5A4C 100%);}
.land-media.valley{background:linear-gradient(180deg, var(--sky-light) 0%, #7A9A5E 55%, #3D5C30 100%);}
.land-media.river{background:linear-gradient(180deg, var(--sky-light) 0%, #C9B98A 45%, var(--sea) 100%);}
.land-media.desert{background:linear-gradient(180deg, var(--sky-light) 0%, #D9C39A 50%, #B89C6A 100%);}
.land-media.basalt{background:linear-gradient(180deg, var(--sky-light) 0%, #6B6558 55%, #3B3833 100%);}
.land-media .lm-tag{position:absolute; top:14px; left:16px; font-size:10.5px; font-weight:600; letter-spacing:0.4px; color:var(--ink); background:rgba(246,241,228,0.9); padding:4px 10px; border-radius:12px;}
.land-body{padding:20px 22px 24px;}
.land-body h3{font-size:17.5px; font-weight:600; margin-bottom:8px;}
.land-body p{font-size:13px; opacity:0.72; font-weight:300; line-height:1.55;}
.land-body .stat{font-size:11px; color:var(--sky-deep); font-weight:600; margin-top:12px; letter-spacing:0.3px; text-transform:uppercase;}

.river-list{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
.river-card{background:rgba(246,241,228,0.07); border-radius:8px; padding:28px 26px; border-top:3px solid var(--sky); display:block; color:var(--cream);}
.river-card .rlen{font-size:26px; font-weight:600; color:var(--sky-light); margin-bottom:4px;}
.river-card .rlen small{font-size:11px; opacity:0.7; font-weight:500; margin-left:6px;}
.river-card h4{font-size:17px; font-weight:600; margin-bottom:8px;}
.river-card p{font-size:13px; opacity:0.82; font-weight:300; line-height:1.55;}

.seasons{background:var(--cream2);}
.season-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}
.season-card{background:var(--cream); border-radius:8px; padding:26px 24px;}
.season-card.alt{background:var(--cream2);}
.season-card .months{font-size:11px; font-weight:600; letter-spacing:0.4px; text-transform:uppercase; color:var(--sky-deep); margin-bottom:10px;}
.season-card h4{font-size:17px; font-weight:600; margin-bottom:8px;}
.season-card .temp{font-size:13px; font-weight:600; color:var(--clay); margin-bottom:10px;}
.season-card p{font-size:13px; opacity:0.72; font-weight:300; line-height:1.55;}
.season-card .best{font-size:11px; font-weight:600; color:var(--teal); margin-top:12px;}

/* info cards in this pillar (fixes the invisible-text issue in dark bands) */
.nat-hub .info-card, .nat-page .info-card{background:var(--cream); color:var(--ink);}
.nat-page .info-card.alt{background:var(--cream2);}
.nat-hub .info-card .num, .nat-page .info-card .num{background:var(--sky-deep); color:var(--cream);}
.nat-hub .info-card.on-dark, .nat-page .info-card.on-dark{background:rgba(246,241,228,0.07); color:var(--cream);}
.nat-hub .info-card.on-dark p, .nat-page .info-card.on-dark p{opacity:0.82;}
.nat-hub .info-card.on-dark .num, .nat-page .info-card.on-dark .num{background:var(--sky); color:var(--cream);}
.nat-hub a.info-card{display:block; color:var(--ink);}

.photo-band{height:380px; background:linear-gradient(180deg, var(--sky-light) 0%, var(--sky) 50%, var(--sea) 100%); position:relative; display:flex; align-items:center; justify-content:center;}
.photo-band svg{width:56px; height:56px; color:var(--cream); opacity:0.6;}
.photo-band span{position:absolute; bottom:18px; left:32px; font-size:12px; color:var(--cream); opacity:0.85; font-style:italic; text-shadow:0 1px 3px rgba(0,0,0,0.4);}

.along{border-top:1px solid rgba(38,36,33,0.15);}
.along-row{display:grid; grid-template-columns:120px 1fr auto; gap:24px; align-items:center; padding:22px 0; border-bottom:1px solid rgba(38,36,33,0.15); color:var(--ink);}
.along-row .km{font-size:15px; font-weight:600; color:var(--sky-deep);}
.along-row h4{font-size:16px; font-weight:600; margin-bottom:4px;}
.along-row p{font-size:12.5px; opacity:0.65; font-weight:300;}
.along-row .arrow{opacity:0.3; font-size:20px;}

.nat-hub .link-card, .nat-page .link-card{border-left-color:var(--sky); background:var(--cream2);}
.nat-bg2 .link-card{background:var(--cream);}
.nat-page .col-box.on-dark{background:rgba(246,241,228,0.07); color:var(--cream);}
.nat-page .col-box.on-dark.a h3{color:var(--gold-light);}
.nat-page .col-box.on-dark.b h3{color:var(--sky-light);}
.nat-page .col-box.on-dark li{border-top-color:rgba(246,241,228,0.12);}
.nat-hub .faq-grid .faq-item{border-bottom:none;}
/* hub section tints: mountains green, wildlife earthy */
.nat-hub .peaks .sec-kicker{color:#4E6B3F !important;}
.nat-hub .peaks .info-card .num{background:#4E6B3F;}
.nat-hub .peaks{background:#E4EAD9;}
.nat-hub .peaks .info-card{background:var(--cream);}

@media (max-width:900px){
  .nat-hero h1{font-size:34px;}
  .land-strip{grid-template-columns:1fr 1fr;}
  .nat-page .body-grid, .land-grid, .river-list{grid-template-columns:1fr;}
  .season-grid{grid-template-columns:1fr 1fr;}
  .along-row{grid-template-columns:1fr; gap:6px;}
  .photo-band{height:220px;}
}

/* ============================================================
   PLAN YOUR TRIP PILLAR
   ============================================================ */
:root{ --green-ok:#2E7D5B; --amber:#C98B1E; --line:rgba(38,36,33,0.14); }
.plan-hub .sec-kicker, .plan-page .sec-kicker{font-size:12px; font-weight:600; letter-spacing:0.6px; margin-bottom:12px; color:var(--teal);}
.plan-hub .sec-head, .plan-page .sec-head{max-width:700px; margin-bottom:40px;}
.plan-hub .sec-head h2, .plan-page .sec-head h2, .plan-page h2.sec-title{font-size:30px; font-weight:600; margin-bottom:12px; line-height:1.2;}
.plan-hub .sec-head p, .plan-page .sec-head p, .plan-page p.sec-sub{font-size:14.5px; opacity:0.75; line-height:1.65; max-width:62ch;}
.plan-page p.sec-sub{margin-bottom:32px;}
.plan-hub section, .plan-page section{padding:76px 0;}
.plan-bg2{background:var(--cream2);}
.plan-dark{background:var(--teal-deep); color:var(--cream);}
.plan-dark .sec-kicker{color:var(--gold-light) !important;}
.plan-dark .sec-head p{opacity:0.85;}
.plan-dark h2{color:var(--cream);}

.plan-hero{background:var(--teal-deep); color:var(--cream); padding:64px 0 0;}
.plan-tag{font-size:12.5px; font-weight:600; letter-spacing:1px; color:var(--gold-light); margin-bottom:14px;}
.plan-hero h1{font-size:42px; font-weight:600; line-height:1.14; max-width:20ch;}
.plan-hero .lede{margin-top:14px; font-size:16px; font-weight:300; max-width:58ch; opacity:0.88;}
.plan-page .hero-meta, .plan-hub .hero-meta{margin-top:18px; font-size:12.5px; opacity:0.6; display:flex; gap:22px;}
.status-box{background:rgba(246,241,228,0.08); border:1px solid rgba(246,241,228,0.28); border-left:4px solid var(--gold); border-radius:6px; padding:24px 26px; margin-top:30px; max-width:760px;}
.status-box .sb-top{display:flex; align-items:center; gap:12px; margin-bottom:12px; flex-wrap:wrap;}
.status-box .sb-label{font-size:11.5px; font-weight:600; letter-spacing:0.5px; color:var(--gold-light);}
.status-box .sb-date{font-size:11.5px; opacity:0.6; margin-left:auto;}
.status-box p{font-size:15px; font-weight:300; line-height:1.65;}
.status-box b{font-weight:600; color:var(--gold-light);}
.ppill{display:inline-block; font-size:10.5px; font-weight:600; letter-spacing:0.4px; padding:4px 10px; border-radius:11px; text-transform:uppercase; line-height:1.3;}
.ppill.ok{background:var(--green-ok); color:var(--cream);}
.ppill.caution{background:var(--amber); color:var(--ink);}
.ppill.no{background:var(--clay); color:var(--cream);}
.plan-hero .fact-strip{margin-top:36px; border-top:1px solid rgba(246,241,228,0.2);}
.plan-hero .fact-strip span{opacity:0.6;}

.ess-grid{display:grid; grid-template-columns:repeat(5,1fr); gap:16px;}
.ess-card{background:var(--cream2); border-radius:8px; padding:26px 22px 24px; display:block; color:var(--ink); border-top:3px solid var(--teal); transition:transform .18s;}
a.ess-card:hover{transform:translateY(-3px);}
.ess-card.soon{opacity:0.68;}
.ess-card .ec-icon{width:36px; height:36px; border-radius:8px; background:var(--teal); display:flex; align-items:center; justify-content:center; margin-bottom:14px;}
.ess-card .ec-icon svg{width:18px; height:18px; color:var(--cream);}
.ess-card h3{font-size:16px; font-weight:600; margin-bottom:6px;}
.ess-card p{font-size:12.5px; opacity:0.72; font-weight:300; line-height:1.5;}
.ess-card .ec-a{font-size:11.5px; font-weight:600; color:var(--teal); margin-top:12px;}

.psteps{border-top:1px solid var(--line);}
.pstep{display:grid; grid-template-columns:56px 1fr auto; gap:22px; align-items:start; padding:22px 0; border-bottom:1px solid var(--line); color:var(--ink);}
.pstep .psn{width:34px; height:34px; border-radius:50%; background:var(--teal); color:var(--cream); font-weight:600; font-size:14px; display:flex; align-items:center; justify-content:center; flex-shrink:0;}
.pstep .psn.ok{background:var(--green-ok);} .pstep .psn.caution{background:var(--amber); color:var(--ink);} .pstep .psn.no{background:var(--clay);}
.pstep h4{font-size:16.5px; font-weight:600; margin-bottom:5px;}
.pstep p{font-size:13.5px; opacity:0.72; font-weight:300; line-height:1.55;}
.pstep .pwhen{font-size:11.5px; font-weight:600; color:var(--clay); text-transform:uppercase; letter-spacing:0.3px; text-align:right; max-width:190px; padding-top:8px; line-height:1.4;}

.itin-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}
.itin-card{background:var(--cream); border:1px solid var(--line); border-radius:8px; padding:26px 22px; display:block; color:var(--ink);}
.itin-card.soon{opacity:0.68;}
.itin-card .days{font-size:30px; font-weight:600; color:var(--teal); line-height:1;}
.itin-card .days small{font-size:12px; font-weight:500; opacity:0.6; display:block; margin-top:4px; letter-spacing:0.3px;}
.itin-card h4{font-size:16px; font-weight:600; margin:14px 0 8px;}
.itin-card p{font-size:12.5px; opacity:0.72; font-weight:300; line-height:1.5;}
.itin-card .route{font-size:11.5px; color:var(--clay); font-weight:600; margin-top:12px; line-height:1.4;}

.real-grid{display:grid; grid-template-columns:1fr 1fr; gap:0 44px;}
.real{display:flex; gap:16px; padding:20px 0; border-top:1px solid var(--line);}
.real .rm{width:30px; height:30px; border-radius:6px; background:var(--cream); display:flex; align-items:center; justify-content:center; flex-shrink:0; font-size:15px;}
.real h4{font-size:15px; font-weight:600; margin-bottom:4px;}
.real p{font-size:13px; opacity:0.72; font-weight:300; line-height:1.55;}

.plan-page .body-grid{display:grid; grid-template-columns:1.55fr 0.8fr; gap:52px;}
.plan-page .copy p{font-size:15.5px; line-height:1.8; opacity:0.9; margin-bottom:18px;}
.plan-page .copy h3{font-size:19px; font-weight:600; margin:32px 0 12px;}
.callout{background:var(--cream2); border-left:4px solid var(--teal); border-radius:0 6px 6px 0; padding:20px 24px; margin:28px 0;}
.callout p{font-size:14.5px; margin:0 !important; line-height:1.65;}
.plan-page .sidebar-box h4{color:var(--teal);}
.plan-page .sidebar-box.dark{background:var(--teal-deep); color:var(--cream);}
.plan-page .sidebar-box.dark h4{color:var(--gold-light);}
.plan-page .sidebar-box.dark p{opacity:0.88;}

.plan-hub .info-card, .plan-page .info-card{background:var(--cream2);}
.plan-bg2 .info-card{background:var(--cream);}
.plan-hub .info-card .num, .plan-page .info-card .num{background:var(--teal);}
.plan-dark .info-card.on-dark{background:rgba(246,241,228,0.08); color:var(--cream);}
.plan-dark .info-card.on-dark p{opacity:0.85;}

.days-list{border-left:3px solid var(--teal); margin-left:8px;}
.day{padding:22px 0 22px 30px; position:relative; border-bottom:1px dashed var(--line);}
.day:last-child{border-bottom:none;}
.day::before{content:""; position:absolute; left:-9px; top:28px; width:15px; height:15px; border-radius:50%; background:var(--teal); border:3px solid var(--cream2);}
.day .dnum{font-size:11.5px; font-weight:600; color:var(--clay); letter-spacing:0.4px; text-transform:uppercase; margin-bottom:5px;}
.day h4{font-size:17px; font-weight:600; margin-bottom:7px;}
.day p{font-size:13.5px; opacity:0.75; font-weight:300; line-height:1.6; margin-bottom:10px;}
.day .dmeta{display:flex; gap:18px; flex-wrap:wrap; font-size:11.5px; font-weight:600; color:var(--teal);}

.plan-hub .col-box, .plan-page .col-box{background:var(--cream2);}
.plan-bg2 .col-box{background:var(--cream);}
.plan-hub .link-card, .plan-page .link-card{border-left-color:var(--gold); background:var(--cream2);}
.plan-bg2 .link-card{background:var(--cream);}
.plan-dark .link-card.on-dark{background:rgba(246,241,228,0.08); color:var(--cream);}
.plan-dark .link-card.on-dark .lbl{color:var(--gold-light);}
.plan-dark .link-card.on-dark p{opacity:0.82;}
.plan-dark .link-card.soon{opacity:0.7;}
.plan-hub .faq-grid .faq-item{border-bottom:none;}

.review-note{background:var(--cream2); border-top:1px solid var(--line); padding:26px 0; font-size:13px; opacity:0.78; line-height:1.6;}
.review-note b{font-weight:600; opacity:1;}

@media (max-width:900px){
  .plan-hero h1{font-size:30px;}
  .ess-grid{grid-template-columns:1fr 1fr;}
  .itin-grid{grid-template-columns:1fr 1fr;}
  .plan-page .body-grid, .real-grid{grid-template-columns:1fr;}
  .pstep{grid-template-columns:44px 1fr;}
  .pstep .pwhen{grid-column:2; text-align:left; padding-top:6px; max-width:none;}
}

/* ============================================================
   LANGUAGE PILLAR
   ============================================================ */
.lang-hub .sec-kicker, .lang-page .sec-kicker{font-size:12px; font-weight:600; letter-spacing:0.7px; margin-bottom:12px; color:var(--clay);}
.lang-hub .sec-head, .lang-page .sec-head{max-width:720px; margin-bottom:44px;}
.lang-hub .sec-head h2, .lang-page .sec-head h2, .lang-page h2.sec-title{font-size:33px; font-weight:600; margin-bottom:12px; line-height:1.16; letter-spacing:-0.2px;}
.lang-hub .sec-head p, .lang-page .sec-head p, .lang-page p.sec-sub{font-size:14.5px; opacity:0.74; line-height:1.65; max-width:60ch;}
.lang-page p.sec-sub{margin-bottom:36px;}
.lang-hub section, .lang-page section{padding:88px 0;}
.lang-bg2{background:var(--cream2);}
.lang-dark{background:var(--ink2); color:var(--cream);}
.lang-dark .sec-kicker{color:var(--gold-light) !important;}
.lang-dark .sec-head p{opacity:0.85;}
.lang-dark h2{color:var(--cream);}

.lang-hero{background:var(--ink2); color:var(--cream); position:relative; overflow:hidden; padding:92px 0 0;}
.lang-hero .glyph{position:absolute; right:2%; top:-8%; font-size:440px; line-height:1; color:var(--gold); opacity:0.11; font-weight:400; pointer-events:none; user-select:none; font-family:Georgia,'Times New Roman',serif;}
.lang-hero-inner{position:relative; z-index:2;}
.lang-tag{font-size:12.5px; font-weight:600; letter-spacing:1.1px; color:var(--gold-light); margin-bottom:18px;}
.lang-hero h1{font-size:52px; font-weight:600; line-height:1.08; max-width:19ch; letter-spacing:-0.6px;}
.lang-hero .lede{margin-top:18px; font-size:16.5px; font-weight:300; max-width:56ch; opacity:0.87; line-height:1.7;}
.lang-page .hero-meta{margin-top:20px; font-size:12.5px; opacity:0.55; display:flex; gap:22px;}
.lang-hub .quick-answer{background:rgba(246,241,228,0.06); border:1px solid rgba(246,241,228,0.2); border-radius:8px; padding:22px 26px; margin-top:32px; max-width:700px;}
.lang-hub .quick-answer .qa-label{color:var(--gold-light);}
.lang-hub .quick-answer b{font-weight:600; color:var(--gold-light);}
.lang-hero .fact-strip{margin-top:40px; border-top:1px solid rgba(246,241,228,0.16);}
.lang-hero .fact-strip span{opacity:0.55;}

.lg-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}
.lg-card{background:var(--cream2); border-radius:8px; overflow:hidden; display:block; color:var(--ink); transition:transform .18s;}
a.lg-card:hover{transform:translateY(-4px);}
.lg-card.soon{opacity:0.7;}
.lg-card.dark-card{background:var(--ink2); color:var(--cream);}
.lg-card.dark-card .lg-script{background:rgba(246,241,228,0.06);}
.lg-card.dark-card p{opacity:0.82;}
.lg-card.dark-card .sp, .lg-card.dark-card .where{color:var(--gold-light);}
.lg-script{height:120px; background:var(--ink2); display:flex; align-items:center; justify-content:center; position:relative; padding:0 12px;}
.lg-script > span:first-child{font-size:40px; color:var(--gold-light); font-family:Georgia,'Times New Roman',serif; line-height:1.1; text-align:center;}
.lg-script .fam{position:absolute; bottom:10px; left:14px; font-size:10px; font-weight:600; letter-spacing:0.4px; color:var(--cream); opacity:0.5; text-transform:uppercase;}
.lg-body{padding:20px 20px 24px;}
.lg-body h3{font-size:17px; font-weight:600; margin-bottom:6px;}
.lg-body .sp{font-size:11.5px; font-weight:600; color:var(--clay); margin-bottom:9px; text-transform:uppercase; letter-spacing:0.3px;}
.lg-body p{font-size:12.5px; opacity:0.73; font-weight:300; line-height:1.55;}
.lg-body .where{font-size:11.5px; color:var(--teal); font-weight:600; margin-top:11px;}

.lang-feature{background:var(--ink2); color:var(--cream); padding:0 !important; overflow:hidden;}
.feature-grid{display:grid; grid-template-columns:1fr 1fr; min-height:440px;}
.feature-media{background:linear-gradient(155deg, var(--clay-dark), var(--ink2)); display:flex; align-items:center; justify-content:center; position:relative; min-height:280px;}
.feature-media .big{font-size:110px; color:var(--gold-light); opacity:0.85; font-family:Georgia,serif; line-height:1;}
.feature-media .cap{position:absolute; bottom:18px; left:22px; font-size:11px; opacity:0.6; font-style:italic;}
.feature-body{padding:70px 58px; display:flex; flex-direction:column; justify-content:center;}
.feature-body .sec-kicker{color:var(--gold-light) !important;}
.feature-body h2{font-size:34px; font-weight:600; margin-bottom:16px; line-height:1.15;}
.feature-body p{font-size:15px; font-weight:300; opacity:0.87; line-height:1.75; margin-bottom:14px;}
.feature-body .fb-cta{display:inline-block; margin-top:16px; font-size:13px; font-weight:600; color:var(--gold-light);}

.scripts{display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:rgba(38,36,33,0.14); border:1px solid rgba(38,36,33,0.14);}
.script-cell{background:var(--cream); padding:28px 24px;}
.lang-bg2 .script-cell{background:var(--cream);}
.script-cell .sample{font-size:36px; color:var(--clay); font-family:Georgia,serif; line-height:1.1; margin-bottom:14px;}
.script-cell h4{font-size:15.5px; font-weight:600; margin-bottom:7px;}
.script-cell p{font-size:12.5px; opacity:0.72; font-weight:300; line-height:1.55;}

.phrases{border-top:2px solid var(--ink2);}
.ph-group{margin-bottom:34px;}
.ph-group h3{font-size:13px; font-weight:600; letter-spacing:0.5px; color:var(--clay); text-transform:uppercase; padding:20px 0 12px;}
.ph-row{display:grid; grid-template-columns:1.1fr 1fr 1fr; gap:24px; padding:15px 0; border-top:1px solid rgba(38,36,33,0.14); align-items:baseline;}
.ph-row .en{font-size:14.5px; font-weight:500;}
.ph-row .ar{font-size:19px; font-family:Georgia,serif; color:var(--teal); direction:rtl;}
.ph-row .tr{font-size:13.5px; opacity:0.68; font-style:italic;}
.ph-row .note{font-size:12px; opacity:0.6; grid-column:1 / -1; margin-top:2px;}

.wlist{display:grid; grid-template-columns:1fr 1fr; gap:0 44px;}
.wlist .word{display:grid; grid-template-columns:auto 1fr; gap:18px; padding:18px 0; border-top:1px solid rgba(38,36,33,0.14); align-items:baseline;}
.wlist .word .w{font-size:22px; font-family:Georgia,serif; color:var(--teal); min-width:82px;}
.wlist .word h4{font-size:14.5px; font-weight:600; margin-bottom:4px;}
.wlist .word p{font-size:12.5px; opacity:0.7; font-weight:300; line-height:1.5;}

.ltl{display:flex; overflow-x:auto;}
.ltl-i{flex:1; min-width:168px; padding-right:24px; position:relative;}
.ltl-i::before{content:""; position:absolute; top:8px; left:0; right:24px; height:1px; background:rgba(38,36,33,0.18);}
.ltl-i:last-child::before{display:none;}
.ltl-d{width:8px; height:8px; border-radius:50%; background:var(--clay); margin-bottom:14px;}
.ltl-i .era{font-size:12px; font-weight:600; color:var(--clay); margin-bottom:6px;}
.ltl-i h5{font-size:14.5px; font-weight:600; margin-bottom:6px;}
.ltl-i p{font-size:12.5px; opacity:0.7; font-weight:300; line-height:1.5;}

.lang-hub .info-card, .lang-page .info-card{background:var(--cream2);}
.lang-bg2 .info-card{background:var(--cream);}
.lang-hub .info-card .num, .lang-page .info-card .num{background:var(--clay);}
.lang-hub .info-card.on-dark, .lang-page .info-card.on-dark{background:rgba(246,241,228,0.07); color:var(--cream);}
.lang-hub .info-card.on-dark p, .lang-page .info-card.on-dark p{opacity:0.84;}
.lang-page .col-box.on-dark{background:rgba(246,241,228,0.07); color:var(--cream);}
.lang-page .col-box.on-dark.a h3, .lang-page .col-box.on-dark.b h3{color:var(--gold-light);}
.lang-page .col-box.on-dark li{border-top-color:rgba(246,241,228,0.12);}
.lang-page .pull-quote{border-left:3px solid var(--gold);}
.lang-page .sidebar-box h4{color:var(--clay);}
.lang-page .sidebar-box.dark{background:var(--ink2); color:var(--cream);}
.lang-page .sidebar-box.dark h4{color:var(--gold-light);}
.lang-page .sidebar-box.dark p{opacity:0.88;}
.lang-hub .link-card, .lang-page .link-card{border-left-color:var(--gold); background:var(--cream2);}
.lang-bg2 .link-card{background:var(--cream);}
.lang-hub .faq-grid .faq-item{border-bottom:none;}

@media (max-width:900px){
  .lang-hero h1{font-size:34px;}
  .lang-hero .glyph{display:none;}
  .lg-grid{grid-template-columns:1fr 1fr;}
  .feature-grid, .lang-page .body-grid, .wlist{grid-template-columns:1fr;}
  .scripts{grid-template-columns:1fr 1fr;}
  .feature-body{padding:40px 28px;}
  .ph-row{grid-template-columns:1fr; gap:4px;}
}

/* ============================================================
   STAY: HOTELS AND GUIDES PILLAR
   ============================================================ */
:root{ --warm:#8A5A32; --warm-dark:#4A2F1A; --cream3:#E8DCC0; }
.stay-hub .sec-kicker, .stay-page .sec-kicker{font-size:12px; font-weight:600; letter-spacing:0.6px; margin-bottom:12px; color:var(--gold-deep);}
.stay-hub .sec-head, .stay-page .sec-head{max-width:720px; margin-bottom:44px;}
.stay-hub .sec-head h2, .stay-page .sec-head h2, .stay-page h2.sec-title{font-size:32px; font-weight:600; margin-bottom:12px; line-height:1.18;}
.stay-hub .sec-head p, .stay-page .sec-head p, .stay-page p.sec-sub{font-size:14.5px; opacity:0.74; line-height:1.65; max-width:60ch;}
.stay-page p.sec-sub{margin-bottom:36px;}
.stay-hub section, .stay-page section{padding:86px 0;}
.stay-bg2{background:var(--cream2);}
.stay-dark{background:var(--warm-dark); color:var(--cream);}
.stay-dark .sec-kicker{color:var(--gold-light) !important;}
.stay-dark .sec-head p{opacity:0.86;}
.stay-dark h2{color:var(--cream);}

.stay-hero, .prop-hero{background:linear-gradient(140deg, var(--warm) 0%, var(--clay-dark) 55%, var(--warm-dark) 100%); color:var(--cream); position:relative; overflow:hidden;}
.stay-hero{padding:84px 0 0;} .prop-hero{padding:70px 0 0;}
.stay-hero::before, .prop-hero::before{content:""; position:absolute; inset:0; background-image:repeating-linear-gradient(135deg, transparent, transparent 18px, rgba(246,241,228,0.04) 19px); pointer-events:none;}
.keymotif{position:absolute; right:4%; top:-4%; width:340px; height:auto; opacity:0.15; pointer-events:none; color:var(--cream); z-index:1;}
.keymotif svg{width:100%; height:auto;}
.stay-hero-inner, .prop-inner{position:relative; z-index:2;}
.stay-tag{font-size:12.5px; font-weight:600; letter-spacing:1px; color:var(--gold-light); margin-bottom:16px;}
.stay-hero h1{font-size:46px; font-weight:600; line-height:1.12; max-width:20ch;}
.stay-hero .lede{margin-top:16px; font-size:16.5px; font-weight:300; max-width:56ch; opacity:0.9; line-height:1.7;}
.stay-page .hero-meta{margin-top:20px; font-size:12.5px; opacity:0.6; display:flex; gap:22px;}
.stay-hub .quick-answer{background:rgba(246,241,228,0.12); border:1px solid rgba(246,241,228,0.35); border-radius:8px; padding:22px 26px; margin-top:32px; max-width:700px;}
.stay-hub .quick-answer .qa-label{color:var(--gold-light);}
.stay-hub .quick-answer b{font-weight:600; color:var(--gold-light);}
.stay-hero .fact-strip{margin-top:40px; border-top:1px solid rgba(246,241,228,0.3);}
.stay-hero .fact-strip span{opacity:0.7;}

.city-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
.city-card{background:var(--cream2); border-radius:8px; overflow:hidden; display:block; color:var(--ink); transition:transform .18s;}
a.city-card:hover{transform:translateY(-4px);}
.city-card.soon{opacity:0.7;}
.stay-bg2 .city-card{background:var(--cream);}
.city-media{height:180px; background:linear-gradient(150deg, var(--gold-light), var(--warm)); display:flex; align-items:center; justify-content:center; position:relative;}
.city-media svg{width:34px; height:34px; color:var(--cream); opacity:0.55;}
.city-media .pill{position:absolute; top:14px; left:16px; font-size:10.5px; font-weight:600; letter-spacing:0.3px; color:var(--ink); background:rgba(246,241,228,0.92); padding:4px 10px; border-radius:12px;}
.city-body{padding:20px 22px 24px;}
.city-body h3{font-size:17.5px; font-weight:600; margin-bottom:8px;}
.city-body p{font-size:13px; opacity:0.73; font-weight:300; line-height:1.55;}
.city-body .area{font-size:11.5px; color:var(--gold-deep); font-weight:600; margin-top:12px; letter-spacing:0.2px;}

.type-grid{display:grid; grid-template-columns:repeat(5,1fr); gap:18px;}
.type-card{background:var(--cream); border:1px solid rgba(38,36,33,0.14); border-radius:8px; padding:24px 20px;}
.type-card .ti{width:38px; height:38px; border-radius:9px; background:var(--gold); display:flex; align-items:center; justify-content:center; margin-bottom:14px;}
.type-card .ti svg{width:19px; height:19px; color:var(--ink);}
.type-card h4{font-size:15px; font-weight:600; margin-bottom:7px;}
.type-card p{font-size:12.5px; opacity:0.73; font-weight:300; line-height:1.55;}
.type-card .price{font-size:11px; font-weight:600; color:var(--clay); margin-top:11px; text-transform:uppercase; letter-spacing:0.3px;}

.stay-hub .steps, .stay-page .steps{border-top:1px solid rgba(38,36,33,0.14);}
.stay-hub .step, .stay-page .step{display:grid; grid-template-columns:52px 1fr; gap:22px; align-items:start; padding:24px 0; border-bottom:1px solid rgba(38,36,33,0.14);}
.stay-hub .step .sn, .stay-page .step .sn{width:34px; height:34px; border-radius:50%; background:var(--gold-deep); color:var(--cream); font-weight:600; font-size:14px; display:flex; align-items:center; justify-content:center;}
.stay-hub .step h4, .stay-page .step h4{font-size:16.5px; font-weight:600; margin-bottom:6px;}
.stay-hub .step p, .stay-page .step p{font-size:13.5px; opacity:0.74; font-weight:300; line-height:1.6;}

.exp-grid{display:grid; grid-template-columns:1fr 1fr; gap:0 44px;}
.exp{display:flex; gap:16px; padding:20px 0; border-top:1px solid rgba(38,36,33,0.14);}
.exp .em{width:32px; height:32px; border-radius:7px; background:var(--cream3); display:flex; align-items:center; justify-content:center; flex-shrink:0; font-size:15px;}
.exp h4{font-size:15px; font-weight:600; margin-bottom:4px;}
.exp p{font-size:13px; opacity:0.73; font-weight:300; line-height:1.55;}

.hoods{border-top:2px solid var(--warm-dark);}
.hood{display:grid; grid-template-columns:200px 1fr; gap:28px; padding:26px 0; border-bottom:1px solid rgba(38,36,33,0.14);}
.hood .hname h4{font-size:18px; font-weight:600; margin-bottom:6px;}
.hood .hname .tagline{font-size:11.5px; font-weight:600; color:var(--clay); text-transform:uppercase; letter-spacing:0.3px;}
.hood p{font-size:13.5px; opacity:0.78; font-weight:300; line-height:1.65; margin-bottom:12px;}
.hood .hmeta{display:flex; gap:20px; flex-wrap:wrap; font-size:11.5px; font-weight:600; color:var(--gold-deep);}

/* property hero */
.prop-top{display:grid; grid-template-columns:1.15fr 0.85fr; gap:46px; align-items:end;}
.vpill{display:inline-flex; align-items:center; gap:7px; font-size:11px; font-weight:600; letter-spacing:0.4px; padding:5px 12px; border-radius:12px; text-transform:uppercase; background:var(--teal); color:var(--cream);}
.vpill.unver{background:var(--gold); color:var(--ink);}
.vpill.closed{background:var(--clay); color:var(--cream);}
.prop-title-row{display:flex; align-items:center; gap:14px; flex-wrap:wrap; margin-bottom:14px;}
.prop-hero h1{font-size:40px; font-weight:600; line-height:1.14; max-width:22ch;}
.prop-sub{margin-top:14px; font-size:16px; font-weight:300; max-width:52ch; opacity:0.9; line-height:1.7;}
.prop-quickmeta{margin-top:20px; display:flex; gap:24px; flex-wrap:wrap; font-size:13px; opacity:0.85;}
.prop-quickmeta b{font-weight:600;}
.prop-photo{aspect-ratio:4/3; background:rgba(246,241,228,0.1); border:1px solid rgba(246,241,228,0.3); border-radius:8px; display:flex; align-items:center; justify-content:center; position:relative;}
.prop-photo svg{width:44px; height:44px; opacity:0.5;}
.prop-photo span{position:absolute; bottom:14px; left:16px; font-size:11px; opacity:0.75; font-style:italic; text-shadow:0 1px 3px rgba(0,0,0,0.4);}
.prop-facts{margin-top:40px; display:grid; grid-template-columns:repeat(5,1fr); border-top:1px solid rgba(246,241,228,0.3);}
.prop-facts > div{padding:20px 20px 24px 0;}
.prop-facts span{display:block; font-size:10.5px; opacity:0.7; text-transform:uppercase; letter-spacing:0.3px; margin-bottom:6px;}
.prop-facts b{font-size:14px; font-weight:600;}

.gal{display:grid; grid-template-columns:repeat(4,1fr); gap:12px;}
.gal-cell{aspect-ratio:4/3; background:linear-gradient(150deg, var(--gold-light), var(--warm)); border-radius:6px;}

.pros-cons{display:grid; grid-template-columns:1fr 1fr; gap:26px;}
.ptable{border-top:1px solid rgba(38,36,33,0.14);}
.prow{display:grid; grid-template-columns:200px 1fr; gap:26px; padding:16px 0; border-bottom:1px solid rgba(38,36,33,0.14); align-items:baseline;}
.prow .pk{font-size:12px; font-weight:600; letter-spacing:0.3px; text-transform:uppercase; color:var(--gold-deep);}
.prow .pv{font-size:14px; line-height:1.6;}
.prow .pv small{display:block; font-size:12.5px; opacity:0.65; margin-top:3px;}

.contact-box{background:var(--warm-dark); color:var(--cream); border-radius:10px; padding:34px 36px;}
.contact-box h3{font-size:22px; font-weight:600; margin-bottom:10px;}
.contact-box p{font-size:14px; opacity:0.87; font-weight:300; line-height:1.7; margin-bottom:20px; max-width:58ch;}
.contact-rows{display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-bottom:22px;}
.contact-rows > div{background:rgba(246,241,228,0.1); border-radius:8px; padding:18px 20px;}
.contact-rows span{display:block; font-size:10.5px; font-weight:600; letter-spacing:0.4px; text-transform:uppercase; color:var(--gold-light); margin-bottom:7px;}
.contact-rows b{font-size:14px; font-weight:600;}
.contact-note{font-size:12.5px; opacity:0.75; line-height:1.6; border-top:1px solid rgba(246,241,228,0.2); padding-top:18px;}

.stay-hub .info-card, .stay-page .info-card{background:var(--cream2);}
.stay-bg2 .info-card{background:var(--cream);}
.stay-hub .info-card .num, .stay-page .info-card .num{background:var(--gold-deep);}
.stay-hub .info-card.on-dark, .stay-page .info-card.on-dark{background:rgba(246,241,228,0.1); color:var(--cream);}
.stay-hub .info-card.on-dark p, .stay-page .info-card.on-dark p{opacity:0.85;}
.stay-hub .info-card.on-dark .num, .stay-page .info-card.on-dark .num{background:var(--gold); color:var(--ink);}
.stay-hub .col-box, .stay-page .col-box{background:var(--cream2);}
.stay-bg2 .col-box{background:var(--cream);}
.stay-hub .col-box.on-dark, .stay-page .col-box.on-dark{background:rgba(246,241,228,0.1); color:var(--cream);}
.stay-hub .col-box.on-dark h3, .stay-page .col-box.on-dark h3{color:var(--gold-light);}
.stay-hub .col-box.on-dark li, .stay-page .col-box.on-dark li{border-top-color:rgba(246,241,228,0.14);}
.stay-page .pull-quote{border-left:3px solid var(--gold);}
.stay-page .callout{background:var(--cream2); border-left:4px solid var(--gold-deep);}
.stay-page .sidebar-box h4{color:var(--gold-deep);}
.stay-page .sidebar-box.warm{background:var(--warm-dark); color:var(--cream);}
.stay-page .sidebar-box.warm h4{color:var(--gold-light);}
.stay-page .sidebar-box.warm p{opacity:0.88;}
.stay-hub .link-card, .stay-page .link-card{border-left-color:var(--gold); background:var(--cream2);}
.stay-bg2 .link-card{background:var(--cream);}
.stay-dark .link-card.on-dark{background:rgba(246,241,228,0.1); color:var(--cream);}
.stay-dark .link-card.on-dark .lbl{color:var(--gold-light);}
.stay-dark .link-card.on-dark p{opacity:0.85;}
.stay-hub .faq-grid .faq-item{border-bottom:none;}

@media (max-width:900px){
  .stay-hero h1{font-size:32px;}
  .keymotif{display:none;}
  .city-grid, .exp-grid, .pros-cons, .prop-top{grid-template-columns:1fr;}
  .type-grid, .gal{grid-template-columns:1fr 1fr;}
  .prop-facts{grid-template-columns:1fr 1fr;}
  .prop-hero h1{font-size:29px;}
  .hood{grid-template-columns:1fr; gap:10px;}
  .stay-hub .step, .stay-page .step{grid-template-columns:44px 1fr;}
  .prow{grid-template-columns:1fr; gap:4px;}
  .contact-rows{grid-template-columns:1fr;}
  .contact-box{padding:26px 24px;}
}

/* ---------- STAY: hotel directory ---------- */
.city-group{margin-bottom:56px;}
.city-group:last-child{margin-bottom:0;}
.cg-head{display:flex; align-items:baseline; justify-content:space-between; gap:20px; padding-bottom:18px; margin-bottom:26px; border-bottom:2px solid var(--warm-dark);}
.cg-head h2{margin-bottom:0 !important;}
.cg-count{font-size:12px; font-weight:600; letter-spacing:0.4px; text-transform:uppercase; color:var(--gold-deep); white-space:nowrap;}
.prop-card .city-media{height:170px;}
.vpill.on-card{position:absolute; top:14px; left:16px;}
.empty-note{background:var(--cream); border:1px dashed rgba(38,36,33,0.25); border-radius:10px; padding:44px 40px; text-align:center; max-width:640px; margin:0 auto;}
.empty-note h3{font-size:19px; font-weight:600; margin-bottom:10px;}
.empty-note p{font-size:14px; opacity:0.75; line-height:1.7; max-width:52ch; margin:0 auto;}
.dir-cta{display:flex; align-items:center; gap:22px; flex-wrap:wrap; margin-top:34px;}
.dir-cta span{font-size:13px; opacity:0.7;}
.btn-gold{background:var(--gold); color:var(--ink); padding:12px 24px; border-radius:24px; font-size:13.5px; font-weight:600; display:inline-block;}
@media (max-width:900px){
  .cg-head{flex-direction:column; align-items:flex-start; gap:6px;}
}

/* ============================================================
   PEOPLE AND DIASPORA PILLAR
   ============================================================ */
.dia-hub .sec-kicker, .dia-page .sec-kicker{font-size:12px; font-weight:600; letter-spacing:0.7px; margin-bottom:12px; color:var(--gold-deep);}
.dia-hub .sec-head, .dia-page .sec-head{max-width:730px; margin-bottom:46px;}
.dia-hub .sec-head h2, .dia-page .sec-head h2, .dia-page h2.sec-title{font-size:33px; font-weight:600; margin-bottom:13px; line-height:1.17;}
.dia-hub .sec-head p, .dia-page .sec-head p, .dia-page p.sec-sub{font-size:15px; opacity:0.76; line-height:1.7; max-width:62ch;}
.dia-page p.sec-sub{margin-bottom:38px;}
.dia-hub section, .dia-page section{padding:88px 0;}
.dia-bg2{background:var(--cream2);}

.dia-hero{background:var(--teal-deep); color:var(--cream); position:relative; overflow:hidden; padding:80px 0 0;}
.dia-hero::before{content:""; position:absolute; inset:0; background:radial-gradient(circle at 78% 34%, rgba(200,155,60,0.16), transparent 58%); pointer-events:none;}
.dia-grid{display:grid; grid-template-columns:1.12fr 0.88fr; gap:52px; align-items:center; position:relative; z-index:2;}
.dia-tag{font-size:12.5px; font-weight:600; letter-spacing:1.1px; color:var(--gold-light); margin-bottom:18px;}
.dia-hero h1{font-size:48px; font-weight:600; line-height:1.09; max-width:19ch; letter-spacing:-0.4px;}
.dia-hero .lede{margin-top:18px; font-size:16.5px; font-weight:300; max-width:54ch; opacity:0.88; line-height:1.72;}
.dia-hub .hero-meta, .dia-page .hero-meta{margin-top:20px; font-size:12.5px; opacity:0.55; display:flex; gap:22px;}
.portrait-slot{aspect-ratio:4/5; background:linear-gradient(165deg, rgba(200,155,60,0.22), rgba(246,241,228,0.06)); border:1px solid rgba(246,241,228,0.22); border-radius:10px; display:flex; align-items:center; justify-content:center; position:relative;}
.portrait-slot svg{width:52px; height:52px; color:var(--gold-light); opacity:0.5;}
.portrait-slot span{position:absolute; bottom:16px; left:18px; font-size:11px; opacity:0.72; font-style:italic; text-shadow:0 1px 3px rgba(0,0,0,0.4);}
.dia-hub .quick-answer, .dia-page .quick-answer{background:rgba(246,241,228,0.07); border:1px solid rgba(246,241,228,0.22); border-radius:8px; padding:22px 26px; margin-top:30px; max-width:640px;}
.dia-hub .quick-answer .qa-label, .dia-page .quick-answer .qa-label{color:var(--gold-light);}
.dia-hub .quick-answer b, .dia-page .quick-answer b{font-weight:600; color:var(--gold-light);}
.dia-hero .fact-strip{margin-top:44px; border-top:1px solid rgba(246,241,228,0.18); position:relative; z-index:2;}
.dia-hero .fact-strip span{opacity:0.58;}

.waves{border-left:3px solid var(--gold); margin-left:8px;}
.wave{padding:26px 0 26px 32px; position:relative; border-bottom:1px dashed rgba(38,36,33,0.14);}
.wave:last-child{border-bottom:none;}
.wave::before{content:""; position:absolute; left:-10px; top:33px; width:17px; height:17px; border-radius:50%; background:var(--gold); border:3px solid var(--cream);}
.dia-bg2 .wave::before{border-color:var(--cream2);}
.wave .wyear{font-size:12.5px; font-weight:600; color:var(--clay); letter-spacing:0.4px; text-transform:uppercase; margin-bottom:6px;}
.wave h4{font-size:19px; font-weight:600; margin-bottom:8px;}
.wave p{font-size:14px; opacity:0.78; font-weight:300; line-height:1.72; margin-bottom:10px; max-width:70ch;}
.wave .wmeta{display:flex; gap:20px; flex-wrap:wrap; font-size:11.5px; font-weight:600; color:var(--gold-deep);}

.country-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}
.country-card{background:var(--cream2); border-radius:8px; padding:26px 22px; display:block; color:var(--ink); border-top:3px solid var(--teal); transition:transform .18s;}
a.country-card:hover{transform:translateY(-4px);}
.country-card.soon{opacity:0.72;}
.dia-bg2 .country-card{background:var(--cream);}
.country-card .cnum{font-size:26px; font-weight:600; color:var(--teal); line-height:1.1;}
.country-card .cnum small{display:block; font-size:10.5px; font-weight:600; opacity:0.6; letter-spacing:0.4px; text-transform:uppercase; margin-top:5px;}
.country-card h3{font-size:17px; font-weight:600; margin:14px 0 7px;}
.country-card p{font-size:12.5px; opacity:0.73; font-weight:300; line-height:1.55;}
.country-card .since{font-size:11px; color:var(--gold-deep); font-weight:600; margin-top:11px; letter-spacing:0.2px;}

.people-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:22px;}
.person{background:var(--cream2); border-radius:8px; overflow:hidden; display:block; color:var(--ink);}
.dia-bg2 .person{background:var(--cream);}
.person.dark-person{background:var(--teal-deep); color:var(--cream);}
.person.dark-person .person-img{background:rgba(246,241,228,0.07);}
.person.dark-person .role{color:var(--gold-light);}
.person.dark-person p{opacity:0.84;}
.person-img{aspect-ratio:1/1; background:linear-gradient(160deg, var(--teal), var(--teal-deep)); display:flex; align-items:center; justify-content:center;}
.person-img svg{width:34px; height:34px; color:var(--gold-light); opacity:0.55;}
.person-body{padding:18px 20px 22px;}
.person-body .role{font-size:10.5px; font-weight:600; color:var(--clay); text-transform:uppercase; letter-spacing:0.4px; margin-bottom:7px;}
.person-body h4{font-size:16px; font-weight:600; margin-bottom:5px;}
.person-body .link{font-size:11.5px; opacity:0.62; margin-bottom:8px;}
.person-body p{font-size:12.5px; opacity:0.74; font-weight:300; line-height:1.55;}

.return-band{background:var(--teal-deep); color:var(--cream);}
.return-band .sec-kicker{color:var(--gold-light) !important;}
.return-band .sec-head p{opacity:0.87;}
.return-band h2{color:var(--cream);}
.return-band .info-card{background:rgba(246,241,228,0.08); color:var(--cream);}
.return-band .info-card p{opacity:0.86;}
.return-band .info-card .num{background:var(--gold); color:var(--ink);}
.return-band .col-box{background:rgba(246,241,228,0.08); color:var(--cream);}
.return-band .col-box h3{color:var(--gold-light) !important;}
.return-band .col-box li{border-top-color:rgba(246,241,228,0.14);}
.return-band .col-box.a li::before, .return-band .col-box.b li::before{color:var(--gold-light);}
.return-band .link-card{background:rgba(246,241,228,0.08); color:var(--cream); border-left-color:var(--gold);}
.return-band .link-card .lbl{color:var(--gold-light);}
.return-band .link-card p{opacity:0.86;}
.return-band .link-card.soon{opacity:0.68;}

.dia-hub .info-card, .dia-page .info-card{background:var(--cream2);}
.dia-bg2 .info-card{background:var(--cream);}
.dia-hub .info-card .num, .dia-page .info-card .num{background:var(--teal);}
.dia-hub .col-box, .dia-page .col-box{background:var(--cream2);}
.dia-bg2 .col-box{background:var(--cream);}
.dia-page .pull-quote{border-left:3px solid var(--gold);}
.dia-page .callout{background:var(--cream2); border-left:4px solid var(--teal);}
.dia-page .sidebar-box h4{color:var(--gold-deep);}
.dia-page .sidebar-box.dark{background:var(--teal-deep); color:var(--cream);}
.dia-page .sidebar-box.dark h4{color:var(--gold-light);}
.dia-page .sidebar-box.dark p{opacity:0.88;}
.dia-hub .link-card, .dia-page .link-card{border-left-color:var(--gold); background:var(--cream2);}
.dia-bg2 .link-card{background:var(--cream);}
.dia-hub .faq-grid .faq-item{border-bottom:none;}

@media (max-width:900px){
  .dia-hero h1{font-size:33px;}
  .dia-grid{grid-template-columns:1fr; gap:34px;}
  .portrait-slot{aspect-ratio:3/2;}
  .country-grid, .people-grid{grid-template-columns:1fr 1fr;}
  .dia-page .body-grid{grid-template-columns:1fr;}
}

/* Diaspora: return band overrides (must beat .dia-hub/.dia-page card rules) */
.dia-hub .return-band .info-card, .dia-page .return-band .info-card{background:rgba(246,241,228,0.08); color:var(--cream);}
.dia-hub .return-band .info-card h4, .dia-page .return-band .info-card h4{color:var(--cream);}
.dia-hub .return-band .info-card p, .dia-page .return-band .info-card p{color:var(--cream); opacity:0.86;}
.dia-hub .return-band .info-card .num, .dia-page .return-band .info-card .num{background:var(--gold); color:var(--ink);}
.dia-hub .return-band .col-box, .dia-page .return-band .col-box{background:rgba(246,241,228,0.08); color:var(--cream);}
.dia-hub .return-band .col-box h3, .dia-page .return-band .col-box h3{color:var(--gold-light) !important;}
.dia-hub .return-band .col-box li, .dia-page .return-band .col-box li{color:var(--cream); border-top-color:rgba(246,241,228,0.14);}
.dia-hub .return-band .col-box.a li::before, .dia-page .return-band .col-box.a li::before,
.dia-hub .return-band .col-box.b li::before, .dia-page .return-band .col-box.b li::before{color:var(--gold-light);}
.dia-hub .return-band .link-card, .dia-page .return-band .link-card{background:rgba(246,241,228,0.08); color:var(--cream); border-left-color:var(--gold);}
.dia-hub .return-band .link-card .lbl, .dia-page .return-band .link-card .lbl{color:var(--gold-light);}
.dia-hub .return-band .link-card h4, .dia-page .return-band .link-card h4{color:var(--cream);}
.dia-hub .return-band .link-card p, .dia-page .return-band .link-card p{color:var(--cream); opacity:0.86;}
.dia-hub .return-band .link-card.soon, .dia-page .return-band .link-card.soon{opacity:0.7;}

/* ============================================================
   NEWS PILLAR
   ============================================================ */
.news-hub .sec-kicker, .news-page .sec-kicker{font-size:11.5px; font-weight:700; letter-spacing:0.9px; margin-bottom:10px; color:var(--clay); text-transform:uppercase;}
.news-hub section, .news-page section{padding:60px 0;}
.news-hub .wrap-narrow, .news-page .wrap-narrow{max-width:760px; margin:0 auto; padding:0 32px;}
h2.news-h2{font-size:30px; font-weight:600; margin-bottom:12px; line-height:1.2;}
p.news-sub{font-size:14.5px; opacity:0.74; max-width:62ch; line-height:1.68; margin-bottom:32px;}

.newsbar{background:var(--teal-deep, #04241F); color:var(--cream); padding:11px 0; font-size:12.5px;}
.newsbar .wrap{display:flex; align-items:center; gap:14px; flex-wrap:wrap;}
.newsbar .live-dot{width:8px; height:8px; border-radius:50%; background:#4ADE80; flex-shrink:0;}
.newsbar b{font-weight:600; color:var(--gold-light);}
.newsbar span{opacity:0.72;}

.news-head{background:var(--cream); padding:44px 0 30px; border-bottom:2px solid var(--ink);}
.news-head h1{font-size:44px; font-weight:700; letter-spacing:-0.8px; line-height:1.05;}
.news-head .sub{margin-top:12px; font-size:15px; opacity:0.72; max-width:64ch; line-height:1.65;}
.news-head .meta{margin-top:18px; display:flex; gap:22px; flex-wrap:wrap; font-size:12px; opacity:0.6;}

.cats{background:var(--cream); border-bottom:1px solid rgba(28,26,24,0.13); position:sticky; top:0; z-index:10;}
.cats-scroll{display:flex; gap:4px; overflow-x:auto; padding:12px 0;}
.cats a{font-size:13px; font-weight:600; white-space:nowrap; padding:7px 15px; border-radius:20px; opacity:0.78;}
.cats a.on{background:var(--teal); color:var(--cream); opacity:1;}

.lead{display:grid; grid-template-columns:1.25fr 0.75fr; gap:40px; padding:48px 0 44px; border-bottom:1px solid rgba(28,26,24,0.13); color:var(--ink);}
.lead-media{aspect-ratio:16/10; background:linear-gradient(150deg, var(--teal), var(--teal-deep, #04241F)); border-radius:8px; display:flex; align-items:center; justify-content:center; position:relative;}
.lead-media svg{width:46px; height:46px; color:var(--gold-light); opacity:0.45;}
.tagpill{position:absolute; top:14px; left:16px; font-size:10.5px; font-weight:700; letter-spacing:0.5px; text-transform:uppercase; padding:5px 11px; border-radius:4px; background:var(--clay); color:var(--cream);}
.lead-body h2{font-size:34px; font-weight:700; line-height:1.14; letter-spacing:-0.4px; margin-bottom:14px;}
.lead-body .dek{font-size:16px; opacity:0.76; line-height:1.68; margin-bottom:16px;}
.byline{display:flex; align-items:center; gap:10px; font-size:12.5px; opacity:0.65; flex-wrap:wrap;}
.byline .av{width:26px; height:26px; border-radius:50%; background:var(--teal); flex-shrink:0;}
.byline b{font-weight:600; opacity:1;}

.stories{display:grid; grid-template-columns:1fr 1fr; gap:0 40px;}
.story{display:grid; grid-template-columns:150px 1fr; gap:20px; padding:24px 0; border-bottom:1px solid rgba(28,26,24,0.13); align-items:start; color:var(--ink);}
.story-media{aspect-ratio:4/3; background:linear-gradient(150deg, var(--gold-light), var(--clay-dark, #8F3A20)); border-radius:6px; position:relative; overflow:hidden;}
.story-media .mini{position:absolute; top:8px; left:8px; font-size:9px; font-weight:700; letter-spacing:0.4px; text-transform:uppercase; padding:3px 7px; border-radius:3px; background:rgba(246,241,228,0.92); color:var(--ink);}
.story h3{font-size:17.5px; font-weight:600; line-height:1.3; margin-bottom:7px;}
.story p{font-size:13px; opacity:0.7; line-height:1.55; margin-bottom:8px;}
.story .sm{font-size:11.5px; opacity:0.58; display:flex; gap:12px; flex-wrap:wrap;}

.empty-news{background:var(--cream2); border:1px dashed rgba(28,26,24,0.25); border-radius:10px; padding:52px 40px; text-align:center; max-width:640px; margin:0 auto;}
.empty-news h3{font-size:20px; font-weight:600; margin-bottom:10px;}
.empty-news p{font-size:14.5px; opacity:0.74; line-height:1.7; max-width:54ch; margin:0 auto;}

.log{background:var(--cream2);}
.log-list{border-top:2px solid var(--ink);}
.log-row{display:grid; grid-template-columns:120px 1fr auto; gap:24px; padding:18px 0; border-bottom:1px solid rgba(28,26,24,0.13); align-items:baseline; color:var(--ink);}
.log-row .date{font-size:12px; font-weight:700; color:var(--clay); letter-spacing:0.3px;}
.log-row h4{font-size:15.5px; font-weight:600; margin-bottom:4px;}
.log-row p{font-size:13px; opacity:0.7; line-height:1.55;}
.log-row .pil{font-size:10px; font-weight:700; letter-spacing:0.4px; text-transform:uppercase; padding:4px 9px; border-radius:3px; background:var(--teal); color:var(--cream); white-space:nowrap;}

.news-hub .topics{display:grid; grid-template-columns:repeat(4,1fr); gap:18px;}
.news-hub .topic{background:var(--cream2); border-radius:8px; padding:22px 20px; display:block; color:var(--ink); border-left:4px solid var(--gold);}
.news-hub .topic h4{font-size:15.5px; font-weight:600; margin-bottom:6px;}
.news-hub .topic p{font-size:12.5px; opacity:0.7; line-height:1.55;}
.news-hub .topic .ct{font-size:11px; font-weight:700; color:var(--gold-deep); margin-top:10px; letter-spacing:0.3px;}

.news-dark{background:var(--teal-deep, #04241F); color:var(--cream);}
.news-dark .sec-kicker{color:var(--gold-light) !important;}
.news-dark h2{font-size:30px; font-weight:600; margin-bottom:13px; line-height:1.2; color:var(--cream);}
.news-dark .lead-p{font-size:15px; opacity:0.87; line-height:1.72; max-width:64ch; margin-bottom:34px;}
.std-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}
.std{background:rgba(246,241,228,0.08); border-radius:8px; padding:24px 22px;}
.std .n{width:30px; height:30px; border-radius:50%; background:var(--gold); color:var(--ink); font-weight:700; font-size:13px; display:flex; align-items:center; justify-content:center; margin-bottom:13px;}
.std h4{font-size:15px; font-weight:600; margin-bottom:7px; color:var(--cream);}
.std p{font-size:12.5px; opacity:0.85; line-height:1.6; color:var(--cream);}

/* article */
.news-page .art-head{padding:44px 0 0;}
.news-page .art-cat{font-size:11.5px; font-weight:700; letter-spacing:0.9px; text-transform:uppercase; color:var(--clay); margin-bottom:14px;}
.news-page .art-head h1{font-size:40px; font-weight:700; line-height:1.12; letter-spacing:-0.6px; max-width:24ch;}
.news-page .art-dek{margin-top:16px; font-size:18px; font-weight:300; opacity:0.78; line-height:1.6; max-width:60ch;}
.news-page .art-byline{margin-top:24px; padding:18px 0; border-top:1px solid rgba(28,26,24,0.13); border-bottom:1px solid rgba(28,26,24,0.13); display:flex; align-items:center; gap:14px; flex-wrap:wrap; font-size:13px;}
.news-page .art-byline .av{width:38px; height:38px; border-radius:50%; background:var(--teal); flex-shrink:0;}
.news-page .art-byline .who b{font-weight:600; display:block;}
.news-page .art-byline .who span{opacity:0.6; font-size:12px;}
.news-page .art-byline .times{margin-left:auto; text-align:right; font-size:12px; opacity:0.62; line-height:1.5;}
.news-page .art-byline .times b{font-weight:600; opacity:1;}
.news-page .art-hero{aspect-ratio:16/9; background:linear-gradient(150deg, var(--teal), var(--teal-deep, #04241F)); border-radius:8px; margin:28px 0 10px; display:flex; align-items:center; justify-content:center;}
.news-page .art-hero svg{width:46px; height:46px; color:var(--gold-light); opacity:0.45;}
.news-page .art-caption{font-size:12px; opacity:0.6; font-style:italic; margin-bottom:34px;}

.news-page .keypoints{background:var(--cream2); border-left:4px solid var(--teal); border-radius:0 8px 8px 0; padding:24px 26px; margin:0 0 32px;}
.news-page .keypoints h4{font-size:11.5px; font-weight:700; letter-spacing:0.7px; text-transform:uppercase; color:var(--teal); margin-bottom:13px;}
.news-page .keypoints ul{list-style:none;}
.news-page .keypoints li{font-size:14px; line-height:1.62; padding:7px 0 7px 20px; position:relative;}
.news-page .keypoints li::before{content:""; position:absolute; left:0; top:15px; width:7px; height:7px; border-radius:50%; background:var(--gold);}

.news-page .art-body p{font-size:17px; line-height:1.82; margin-bottom:22px;}
.news-page .art-body h2{font-size:24px; font-weight:600; margin:38px 0 14px; line-height:1.25;}
.news-page .art-body h3{font-size:19px; font-weight:600; margin:30px 0 12px;}
.news-page .art-body blockquote{border-left:3px solid var(--gold); padding:4px 0 4px 24px; margin:30px 0;}
.news-page .art-body blockquote p{font-size:21px; font-weight:300; line-height:1.55; margin:0;}
.news-page .art-body ul{margin:0 0 22px 0; list-style:none; padding-left:0;}
.news-page .art-body ul li{font-size:16.5px; line-height:1.75; padding:5px 0 5px 22px; position:relative;}
.news-page .art-body ul li::before{content:""; position:absolute; left:2px; top:16px; width:6px; height:6px; border-radius:50%; background:var(--clay);}
.news-page .callout{background:var(--cream2); border-radius:8px; padding:22px 24px; margin:30px 0; border-left:none;}
.news-page .callout .cl{font-size:11px; font-weight:700; letter-spacing:0.6px; text-transform:uppercase; color:var(--gold-deep); margin-bottom:9px;}
.news-page .callout p{font-size:15px; line-height:1.68; margin:0 !important;}

.news-page .means{background:var(--teal-deep, #04241F); color:var(--cream); border-radius:10px; padding:30px 32px; margin:34px 0;}
.news-page .means h4{font-size:12px; font-weight:700; letter-spacing:0.7px; text-transform:uppercase; color:var(--gold-light); margin-bottom:14px;}
.news-page .means ul{list-style:none; margin:0; padding:0;}
.news-page .means li{font-size:14.5px; line-height:1.68; padding:8px 0 8px 22px; position:relative; opacity:0.92; color:var(--cream);}
.news-page .means li::before{content:""; position:absolute; left:0; top:17px; width:7px; height:7px; border-radius:50%; background:var(--gold);}

.news-page .sources{border-top:1px solid rgba(28,26,24,0.13); padding-top:24px; margin-top:38px;}
.news-page .sources h4{font-size:11.5px; font-weight:700; letter-spacing:0.7px; text-transform:uppercase; color:var(--clay); margin-bottom:13px;}
.news-page .sources ol{padding-left:20px;}
.news-page .sources li{font-size:13.5px; line-height:1.68; margin-bottom:8px; opacity:0.78;}

.news-page .corrections{background:var(--cream2); border-left:4px solid var(--clay); border-radius:0 8px 8px 0; padding:20px 24px; margin-top:26px;}
.news-page .corrections h4{font-size:11px; font-weight:700; letter-spacing:0.6px; text-transform:uppercase; color:var(--clay); margin-bottom:9px;}
.news-page .corrections p{font-size:13.5px !important; line-height:1.65; opacity:0.8; margin:0 0 6px !important;}

.news-page .authorbox{display:grid; grid-template-columns:auto 1fr; gap:20px; background:var(--cream2); border-radius:10px; padding:26px 28px; margin-top:34px; align-items:start;}
.news-page .authorbox .av{width:66px; height:66px; border-radius:50%; background:var(--teal);}
.news-page .authorbox h4{font-size:16.5px; font-weight:600; margin-bottom:5px;}
.news-page .authorbox .role{font-size:12px; color:var(--gold-deep); font-weight:600; margin-bottom:9px;}
.news-page .authorbox p{font-size:13.5px !important; opacity:0.76; line-height:1.68; margin:0 !important;}

.news-related{background:var(--cream2);}
.nrel-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:22px;}
.nrel{background:var(--cream); border-radius:8px; overflow:hidden; display:block; color:var(--ink);}
.nrel-media{aspect-ratio:16/10; background:linear-gradient(150deg, var(--gold-light), var(--clay-dark, #8F3A20));}
.nrel-body{padding:18px 20px 22px;}
.nrel-body .rc{font-size:10.5px; font-weight:700; letter-spacing:0.5px; text-transform:uppercase; color:var(--clay); margin-bottom:8px;}
.nrel-body h4{font-size:15.5px; font-weight:600; line-height:1.32; margin-bottom:7px;}
.nrel-body .rd{font-size:11.5px; opacity:0.58;}

@media (max-width:900px){
  .news-head h1{font-size:30px;}
  .lead{grid-template-columns:1fr; gap:22px;}
  .lead-body h2{font-size:25px;}
  .stories{grid-template-columns:1fr; gap:0;}
  .story{grid-template-columns:110px 1fr; gap:14px;}
  .news-hub .topics, .std-grid, .nrel-grid{grid-template-columns:1fr 1fr;}
  .log-row{grid-template-columns:1fr; gap:6px;}
  .news-page .art-head h1{font-size:28px;}
  .news-page .art-body p{font-size:16px;}
  .news-page .art-byline .times{margin-left:0; text-align:left; width:100%;}
  .news-page .authorbox{grid-template-columns:1fr;}
}

/* ============================================================
   FAQ AND MYTH-BUSTING PILLAR
   ============================================================ */
.faq-hub .sec-kicker, .faq-page .sec-kicker{font-size:11.5px; font-weight:700; letter-spacing:0.9px; margin-bottom:11px; color:var(--gold-deep); text-transform:uppercase;}
.faq-hub h2.sec-title, .faq-page h2.sec-title{font-size:31px; font-weight:600; margin-bottom:12px; line-height:1.2;}
.faq-hub p.sec-sub, .faq-page p.sec-sub{font-size:15px; opacity:0.74; line-height:1.7; max-width:64ch; margin-bottom:38px;}
.faq-hub section, .faq-page section{padding:72px 0;}
.faq-hub .wrap-narrow, .faq-page .wrap-narrow{max-width:800px; margin:0 auto; padding:0 32px;}

.faq-hero{background:var(--cream2); padding:56px 0 48px; border-bottom:2px solid var(--ink);}
.faq-tag{font-size:12px; font-weight:700; letter-spacing:1px; color:var(--clay); margin-bottom:15px; text-transform:uppercase;}
.faq-hero h1{font-size:46px; font-weight:700; letter-spacing:-0.8px; line-height:1.06; max-width:20ch;}
.faq-hero .lede{margin-top:16px; font-size:16.5px; opacity:0.76; max-width:60ch; line-height:1.68;}
.faq-search{margin-top:30px; max-width:560px; display:flex; border:2px solid var(--ink); border-radius:8px; overflow:hidden; background:var(--cream);}
.faq-search input[type="search"]{flex:1; border:none; background:transparent; padding:15px 18px; font-family:inherit; font-size:15px; color:var(--ink); outline:none;}
.faq-search button{border:none; background:var(--ink); color:var(--cream); padding:0 24px; font-family:inherit; font-size:14px; font-weight:600; cursor:pointer;}
.faq-stats{margin-top:20px; display:flex; gap:26px; flex-wrap:wrap; font-size:12.5px; opacity:0.62;}

.topfive{display:grid; grid-template-columns:repeat(5,1fr); gap:16px;}
.tf{background:var(--cream2); border-radius:8px; padding:22px 20px; display:block; color:var(--ink); border-top:3px solid var(--teal); transition:transform .18s;}
a.tf:hover{transform:translateY(-3px);}
.tf .q{font-size:15px; font-weight:600; line-height:1.34; margin-bottom:9px;}
.tf .a{font-size:12.5px; opacity:0.7; line-height:1.55;}
.tf .go{font-size:11px; font-weight:700; color:var(--teal); margin-top:11px; letter-spacing:0.3px;}

.gnav{background:var(--cream); border-bottom:1px solid rgba(31,29,26,0.13); position:sticky; top:0; z-index:10;}
.gnav-scroll{display:flex; gap:4px; overflow-x:auto; padding:12px 0;}
.gnav a{font-size:13px; font-weight:600; white-space:nowrap; padding:7px 15px; border-radius:20px; opacity:0.78;}
.gnav a.on{background:var(--teal); color:var(--cream); opacity:1;}

.qgroup{margin-bottom:52px;}
.qgroup > h3{font-size:13px; font-weight:700; letter-spacing:0.8px; text-transform:uppercase; color:var(--clay); padding-bottom:14px; margin-bottom:6px; border-bottom:2px solid var(--ink);}
details.qa{border-bottom:1px solid rgba(31,29,26,0.13);}
details.qa summary{cursor:pointer; list-style:none; padding:19px 40px 19px 0; position:relative; font-size:17px; font-weight:600; line-height:1.4;}
details.qa summary::-webkit-details-marker{display:none;}
details.qa summary::after{content:"+"; position:absolute; right:6px; top:17px; font-size:22px; font-weight:400; color:var(--gold-deep); line-height:1;}
details.qa[open] summary::after{content:"\2212";}
details.qa .ans{padding:0 40px 22px 0;}
details.qa .ans p{font-size:15.5px; line-height:1.75; opacity:0.85; margin-bottom:12px;}
details.qa .ans p:last-child{margin-bottom:0;}
details.qa .more{display:inline-block; margin-top:10px; font-size:12.5px; font-weight:600; color:var(--teal); border-bottom:1px solid rgba(11,93,82,0.3); padding-bottom:1px;}

.myths{background:var(--teal-deep, #04241F); color:var(--cream);}
.myths .sec-kicker{color:var(--gold-light) !important;}
.myths h2.sec-title{color:var(--cream);}
.myths p.sec-sub{opacity:0.86; color:var(--cream);}
.myth-list{display:grid; grid-template-columns:1fr 1fr; gap:24px;}
.myth{background:rgba(246,241,228,0.07); border-radius:10px; padding:26px 28px; border-left:4px solid var(--clay);}
.myth .lbl{font-size:10.5px; font-weight:700; letter-spacing:0.6px; text-transform:uppercase; color:var(--clay); margin-bottom:9px;}
.myth .claim{font-size:18px; font-weight:600; line-height:1.36; margin-bottom:16px; text-decoration:line-through; text-decoration-color:rgba(193,80,46,0.85); text-decoration-thickness:2px; opacity:0.72;}
.myth .lbl2{font-size:10.5px; font-weight:700; letter-spacing:0.6px; text-transform:uppercase; color:var(--gold-light); margin-bottom:9px;}
.myth .truth{font-size:14.5px; line-height:1.72; opacity:0.92;}

.ask{background:var(--cream2); border-radius:10px; padding:34px 36px; display:grid; grid-template-columns:1fr auto; gap:28px; align-items:center;}
.ask h3{font-size:21px; font-weight:600; margin-bottom:8px;}
.ask p{font-size:14px; opacity:0.74; line-height:1.68; max-width:56ch;}
.faq-hub .btn-gold{background:var(--gold); color:var(--ink); padding:13px 26px; border-radius:24px; font-weight:600; font-size:13.5px; display:inline-block; white-space:nowrap;}

.q-head{padding:50px 0 0;}
.q-cat{font-size:11.5px; font-weight:700; letter-spacing:0.9px; text-transform:uppercase; color:var(--clay); margin-bottom:14px;}
.q-head h1{font-size:40px; font-weight:700; line-height:1.14; letter-spacing:-0.5px; max-width:24ch;}
.q-answer{margin-top:28px; background:var(--teal-deep, #04241F); color:var(--cream); border-radius:10px; padding:28px 32px;}
.q-answer .al{font-size:11px; font-weight:700; letter-spacing:0.7px; text-transform:uppercase; color:var(--gold-light); margin-bottom:11px;}
.q-answer p{font-size:17px; line-height:1.68; font-weight:300; color:var(--cream);}
.q-answer b{font-weight:600; color:var(--gold-light);}
.q-meta{margin-top:20px; padding:16px 0; border-top:1px solid rgba(31,29,26,0.13); border-bottom:1px solid rgba(31,29,26,0.13); display:flex; gap:22px; flex-wrap:wrap; font-size:12.5px; opacity:0.62;}
.q-body{padding:36px 0 0;}
.q-body p{font-size:16.5px; line-height:1.82; margin-bottom:21px;}
.q-body h2{font-size:24px; font-weight:600; margin:36px 0 14px; line-height:1.25;}
.q-body h3{font-size:19px; font-weight:600; margin:28px 0 11px;}
.q-body ul{list-style:none; margin:0 0 21px; padding-left:0;}
.q-body ul li{font-size:16px; line-height:1.76; padding:5px 0 5px 22px; position:relative;}
.q-body ul li::before{content:""; position:absolute; left:2px; top:16px; width:6px; height:6px; border-radius:50%; background:var(--gold);}
.q-body blockquote{border-left:3px solid var(--gold); padding:4px 0 4px 24px; margin:28px 0;}
.q-body blockquote p{font-size:20px; font-weight:300; line-height:1.55; margin:0;}
.factbox{background:var(--cream2); border-radius:8px; padding:24px 26px; margin:30px 0;}
.factbox h4{font-size:11.5px; font-weight:700; letter-spacing:0.7px; text-transform:uppercase; color:var(--gold-deep); margin-bottom:13px;}
.factbox ul{list-style:none; margin:0; padding-left:0;}
.factbox li{font-size:14.5px; line-height:1.66; padding:7px 0 7px 0 !important; border-top:1px solid rgba(31,29,26,0.08);}
.factbox li:first-child{border-top:none;}
.factbox li::before{display:none !important;}
.rel-q{border-top:1px solid rgba(31,29,26,0.13); margin-top:40px; padding-top:28px;}
.rel-q h4{font-size:11.5px; font-weight:700; letter-spacing:0.7px; text-transform:uppercase; color:var(--clay); margin-bottom:16px;}
.rel-q a{display:block; padding:13px 0; border-bottom:1px solid rgba(31,29,26,0.13); font-size:15.5px; font-weight:600;}
.rel-q a::after{content:" \2192"; color:var(--gold-deep);}

.faq-hub .link-card, .faq-page .link-card{border-left-color:var(--gold); background:var(--cream2);}
.faq-hub .bg2 .link-card, .faq-page .bg2 .link-card{background:var(--cream);}

@media (max-width:900px){
  .faq-hero h1{font-size:31px;}
  .topfive{grid-template-columns:1fr 1fr;}
  .myth-list{grid-template-columns:1fr;}
  .ask{grid-template-columns:1fr; gap:20px;}
  .q-head h1{font-size:28px;}
  .q-body p{font-size:16px;}
}

/* ============================================================
   ECONOMY AND INVESTMENT PILLAR
   ============================================================ */
.inv-hub, .inv-page{--green:#2F7D5B; --teal-deepest:#04211C;}
.inv-hub .sec-kicker, .inv-page .sec-kicker{font-size:11.5px; font-weight:700; letter-spacing:0.9px; margin-bottom:11px; color:var(--gold-deep); text-transform:uppercase;}
.inv-hub h2.sec-title, .inv-page h2.sec-title{font-size:32px; font-weight:600; margin-bottom:12px; line-height:1.19;}
.inv-hub p.sec-sub, .inv-page p.sec-sub{font-size:15px; opacity:0.75; line-height:1.7; max-width:64ch; margin-bottom:38px;}
.inv-hub section, .inv-page section{padding:74px 0;}
.inv-hub .wrap-narrow, .inv-page .wrap-narrow{max-width:820px; margin:0 auto; padding:0 32px;}
.inv-bg2{background:var(--cream2);}

.inv-hero{background:#04211C; color:var(--cream); padding:62px 0 0; position:relative; overflow:hidden;}
.inv-hero::before{content:""; position:absolute; inset:0; background-image:linear-gradient(rgba(246,241,228,0.045) 1px, transparent 1px), linear-gradient(90deg, rgba(246,241,228,0.045) 1px, transparent 1px); background-size:56px 56px; pointer-events:none;}
.inv-inner{position:relative; z-index:2;}
.inv-tag{font-size:12px; font-weight:700; letter-spacing:1.1px; color:var(--gold-light); margin-bottom:16px; text-transform:uppercase;}
.inv-hero h1{font-size:45px; font-weight:600; line-height:1.09; max-width:22ch; letter-spacing:-0.5px; color:var(--cream);}
.inv-hero .lede{margin-top:17px; font-size:16.5px; font-weight:300; max-width:60ch; opacity:0.88; line-height:1.72;}
.inv-hero .lede b{color:var(--gold-light); font-weight:600;}
.notadvice{margin-top:26px; background:rgba(193,80,46,0.16); border:1px solid rgba(193,80,46,0.5); border-radius:8px; padding:16px 20px; max-width:660px; font-size:13.5px; line-height:1.65;}
.notadvice b{color:var(--gold-light); font-weight:600;}
.answerbox{margin-top:26px; background:rgba(246,241,228,0.09); border:1px solid rgba(246,241,228,0.28); border-radius:9px; padding:24px 28px; max-width:700px;}
.answerbox .al{font-size:11px; font-weight:700; letter-spacing:0.7px; text-transform:uppercase; color:var(--gold-light); margin-bottom:11px;}
.answerbox p{font-size:16px; font-weight:300; line-height:1.7;}
.answerbox b{font-weight:600; color:var(--gold-light);}
.figs{margin-top:44px; display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:rgba(246,241,228,0.18); border-top:1px solid rgba(246,241,228,0.18); position:relative; z-index:2;}
.ifig{background:#04211C; padding:24px 22px 26px 0;}
.ifig .v{font-size:27px; font-weight:600; line-height:1.1; color:var(--gold-light);}
.ifig .l{font-size:11px; opacity:0.72; text-transform:uppercase; letter-spacing:0.4px; margin-top:8px;}
.ifig .s{font-size:10.5px; opacity:0.5; margin-top:7px; line-height:1.5;}

.board{border:1px solid rgba(27,26,23,0.13); border-radius:10px; overflow:hidden; background:var(--cream);}
.board-head{display:grid; grid-template-columns:1.5fr 110px 130px 1fr; gap:18px; padding:14px 22px; background:var(--ink); color:var(--cream); font-size:10.5px; font-weight:700; letter-spacing:0.5px; text-transform:uppercase;}
.brow{display:grid; grid-template-columns:1.5fr 110px 130px 1fr; gap:18px; padding:18px 22px; border-top:1px solid rgba(27,26,23,0.13); align-items:start;}
.brow:nth-child(odd){background:var(--cream2);}
.brow .what{font-size:14.5px; font-weight:600; line-height:1.45;}
.brow .what small{display:block; font-size:12px; font-weight:400; opacity:0.68; margin-top:4px; line-height:1.5;}
.spill{font-size:10.5px; font-weight:700; letter-spacing:0.4px; text-transform:uppercase; padding:5px 10px; border-radius:4px; display:inline-block; white-space:nowrap;}
.spill.lifted{background:#2F7D5B; color:#fff;}
.spill.partial{background:var(--gold); color:var(--ink);}
.spill.remains{background:var(--clay); color:#fff;}
.brow .when{font-size:13px; font-weight:600; opacity:0.8;}
.brow .src{font-size:11.5px; opacity:0.62; line-height:1.55;}
.board-foot{padding:16px 22px; background:#E7DCC4; font-size:12px; opacity:0.85; line-height:1.6; border:1px solid rgba(27,26,23,0.13);}

.sectors{display:grid; grid-template-columns:repeat(3,1fr); gap:22px;}
.sector{background:var(--cream2); border-radius:9px; padding:26px 24px; display:block; color:var(--ink); border-top:3px solid var(--teal); transition:transform .18s;}
a.sector:hover{transform:translateY(-3px);}
.sector.soon{opacity:0.72;}
.inv-bg2 .sector{background:var(--cream);}
.sector .st{font-size:10.5px; font-weight:700; letter-spacing:0.4px; text-transform:uppercase; color:var(--clay); margin-bottom:10px;}
.sector h3{font-size:18px; font-weight:600; margin-bottom:9px;}
.sector p{font-size:13px; opacity:0.74; line-height:1.62;}
.sector .need{font-size:12px; font-weight:600; color:var(--gold-deep); margin-top:13px; padding-top:12px; border-top:1px solid rgba(27,26,23,0.1);}

.dtable{width:100%; border-collapse:collapse; font-size:14px;}
.dtable th{text-align:left; padding:13px 16px; background:var(--ink); color:var(--cream); font-size:10.5px; font-weight:700; letter-spacing:0.5px; text-transform:uppercase;}
.dtable td{padding:14px 16px; border-top:1px solid rgba(27,26,23,0.13); line-height:1.6;}
.dtable tr:nth-child(even) td{background:var(--cream2);}
.inv-bg2 .dtable tr:nth-child(even) td{background:var(--cream);}
.dtable td.num{font-weight:600; font-variant-numeric:tabular-nums;}
.dtable td small{display:block; font-size:11.5px; opacity:0.6; margin-top:3px;}
.tnote{font-size:12px; opacity:0.75; margin-top:14px; line-height:1.6;}

.projects{border-top:2px solid var(--ink);}
.project{display:grid; grid-template-columns:150px 1fr auto; gap:24px; padding:20px 0; border-bottom:1px solid rgba(27,26,23,0.13); align-items:start;}
.project .who{font-size:13px; font-weight:700; color:var(--teal); line-height:1.4;}
.project h4{font-size:15.5px; font-weight:600; margin-bottom:5px;}
.project p{font-size:13px; opacity:0.72; line-height:1.6;}
.project .stage{font-size:10.5px; font-weight:700; letter-spacing:0.4px; text-transform:uppercase; padding:4px 10px; border-radius:4px; background:#E7DCC4; white-space:nowrap;}

.inv-dark{background:#04211C; color:var(--cream);}
.inv-dark .sec-kicker{color:var(--gold-light) !important;}
.inv-dark h2.sec-title{color:var(--cream);}
.inv-dark p.sec-sub{opacity:0.87; color:var(--cream);}
.risks{display:grid; grid-template-columns:repeat(3,1fr); gap:20px;}
.risk{background:rgba(246,241,228,0.08); border-radius:9px; padding:24px 22px; border-left:4px solid var(--clay);}
.risk h4{font-size:15.5px; font-weight:600; margin-bottom:8px; color:var(--cream);}
.risk p{font-size:13px; opacity:0.87; line-height:1.65; color:var(--cream);}
.risk .lvl{font-size:10.5px; font-weight:700; letter-spacing:0.4px; text-transform:uppercase; color:var(--gold-light); margin-bottom:9px;}

.isteps{border-top:1px solid rgba(27,26,23,0.13);}
.istep{display:grid; grid-template-columns:52px 1fr; gap:22px; padding:22px 0; border-bottom:1px solid rgba(27,26,23,0.13); align-items:start;}
.istep .n{width:34px; height:34px; border-radius:50%; background:var(--teal); color:var(--cream); font-weight:600; font-size:14px; display:flex; align-items:center; justify-content:center;}
.istep h4{font-size:16.5px; font-weight:600; margin-bottom:6px;}
.istep p{font-size:13.5px; opacity:0.75; line-height:1.62;}

.chrono{border-left:3px solid var(--gold); margin-left:8px;}
.centry{padding:22px 0 22px 30px; position:relative; border-bottom:1px dashed rgba(27,26,23,0.13);}
.centry:last-child{border-bottom:none;}
.centry::before{content:""; position:absolute; left:-10px; top:28px; width:17px; height:17px; border-radius:50%; background:var(--gold); border:3px solid var(--cream2);}
.centry .cdate{font-size:12.5px; font-weight:700; color:var(--clay); letter-spacing:0.4px; text-transform:uppercase; margin-bottom:6px;}
.centry h4{font-size:17.5px; font-weight:600; margin-bottom:7px;}
.centry p{font-size:14px; opacity:0.78; line-height:1.7; max-width:70ch; margin-bottom:8px;}
.centry .csrc{font-size:11.5px; opacity:0.6; font-style:italic;}

.twocol{display:grid; grid-template-columns:1fr 1fr; gap:26px;}
.colbox{background:var(--cream2); border-radius:9px; padding:28px 26px;}
.inv-bg2 .colbox{background:var(--cream);}
.colbox h3{font-size:13.5px; font-weight:700; letter-spacing:0.4px; margin-bottom:16px; text-transform:uppercase;}
.colbox.do h3{color:#2F7D5B;} .colbox.dont h3{color:var(--clay);}
.colbox ul{list-style:none;}
.colbox li{font-size:13.5px; padding:10px 0 10px 26px; border-top:1px solid rgba(27,26,23,0.08); position:relative; line-height:1.62;}
.colbox li:first-child{border-top:none;}
.colbox li::before{position:absolute; left:0; top:10px; font-weight:700;}
.colbox.do li::before{content:"\2713"; color:#2F7D5B;}
.colbox.dont li::before{content:"\2715"; color:var(--clay);}

.ichecklist{background:var(--cream2); border-radius:9px; padding:30px 32px;}
.ichecklist h3{font-size:18px; font-weight:600; margin-bottom:6px;}
.ichecklist .ci{font-size:13.5px; opacity:0.74; line-height:1.65; margin-bottom:20px;}
.ichecklist ol{list-style:none; counter-reset:c; padding-left:0;}
.ichecklist li{counter-increment:c; font-size:14.5px; padding:13px 0 13px 42px; border-top:1px solid rgba(27,26,23,0.1); position:relative; line-height:1.62;}
.ichecklist li:first-child{border-top:none;}
.ichecklist li::before{content:counter(c); position:absolute; left:0; top:12px; width:26px; height:26px; border-radius:50%; background:var(--ink); color:var(--cream); font-size:12px; font-weight:700; display:flex; align-items:center; justify-content:center;}

.srcbox{border-top:2px solid var(--ink); padding-top:24px; margin-top:0;}
.srcbox h4{font-size:11.5px; font-weight:700; letter-spacing:0.7px; text-transform:uppercase; color:var(--clay); margin-bottom:14px;}
.srcbox ol{padding-left:22px;}
.srcbox li{font-size:13.5px; line-height:1.7; margin-bottom:9px; opacity:0.8;}

.inv-page .sidebar-box.warn{background:rgba(193,80,46,0.1); border:1px solid rgba(193,80,46,0.35);}
.inv-page .sidebar-box.warn h4{color:var(--clay);}
.review-note.inv-review{background:#E7DCC4; border-top:2px solid var(--clay); padding:28px 0; opacity:0.9;}
.inv-hub .link-card, .inv-page .link-card{border-left-color:var(--gold); background:var(--cream2);}
.inv-bg2 .link-card{background:var(--cream);}
.inv-hub .faq-grid .faq-item{border-bottom:none;}

@media (max-width:900px){
  .inv-hero h1{font-size:31px;}
  .figs{grid-template-columns:1fr 1fr;}
  .ifig{padding-right:16px;}
  .board-head{display:none;}
  .brow{grid-template-columns:1fr; gap:8px;}
  .sectors, .risks, .twocol{grid-template-columns:1fr;}
  .project{grid-template-columns:1fr; gap:8px;}
  .dtable{font-size:13px;}
  .inv-page .body-grid{grid-template-columns:1fr;}
}

/* Invest status board: stop long status pills overflowing into the date column */
.board-head, .brow{grid-template-columns:1.5fr 136px 112px 1.3fr;}
.spill{white-space:normal; overflow-wrap:break-word; line-height:1.34; max-width:100%; text-align:center;}
@media (max-width:1100px){
  .board-head, .brow{grid-template-columns:1.4fr 124px 104px 1.2fr; gap:14px;}
  .brow{padding:18px 18px;}
  .board-head{padding:14px 18px;}
}
@media (max-width:900px){
  .board-head{display:none;}
  .brow{grid-template-columns:1fr; gap:8px; padding:18px 20px;}
  .spill{text-align:left;}
}

/* ============================================================
   COMPANY AND LEGAL PAGES  (all scoped under .co-page)
   ============================================================ */
.co-page{--green:#2F7D5B;}
.co-page .sec-kicker{font-size:11.5px; font-weight:700; letter-spacing:0.9px; margin-bottom:11px; color:var(--gold-deep); text-transform:uppercase;}
.co-page h2.sec-title{font-size:31px; font-weight:600; margin-bottom:12px; line-height:1.2;}
.co-page p.sec-sub{font-size:15px; opacity:0.75; line-height:1.7; max-width:64ch; margin-bottom:38px;}
.co-page section{padding:72px 0;}
.co-page .wrap-narrow{max-width:790px; margin:0 auto; padding:0 32px;}
.co-bg2{background:var(--cream2);}

.co-page .co-hero{background:var(--teal-deep, #04241F); color:var(--cream); padding:70px 0; position:relative; overflow:hidden;}
.co-page .co-hero::before{content:""; position:absolute; inset:0; background:radial-gradient(circle at 82% 28%, rgba(200,155,60,0.16), transparent 58%); pointer-events:none;}
.co-inner{position:relative; z-index:2;}
.co-tag{font-size:12px; font-weight:700; letter-spacing:1.1px; color:var(--gold-light); margin-bottom:16px; text-transform:uppercase;}
.co-page .co-hero h1{font-size:44px; font-weight:600; line-height:1.1; max-width:22ch; letter-spacing:-0.4px; color:var(--cream);}
.co-page .co-hero .lede{margin-top:17px; font-size:17px; font-weight:300; max-width:58ch; opacity:0.9; line-height:1.72;}
.co-grid{display:grid; grid-template-columns:1.15fr 0.85fr; gap:52px; align-items:center;}
.co-portrait{aspect-ratio:4/5; background:linear-gradient(165deg, rgba(200,155,60,0.22), rgba(246,241,228,0.06)); border:1px solid rgba(246,241,228,0.22); border-radius:10px; display:flex; align-items:center; justify-content:center; position:relative;}
.co-portrait svg{width:52px; height:52px; color:var(--gold-light); opacity:0.5;}
.co-portrait span{position:absolute; bottom:16px; left:18px; font-size:11px; opacity:0.62; font-style:italic;}

.co-copy p{font-size:16.5px; line-height:1.85; margin-bottom:21px;}
.co-copy h3{font-size:20px; font-weight:600; margin:34px 0 12px;}
.co-pull{border-left:3px solid var(--gold); padding:6px 0 6px 26px; margin:36px 0;}
.co-pull p{font-size:23px; font-weight:300; line-height:1.5; margin:0;}

.co-cards3{display:grid; grid-template-columns:repeat(3,1fr); gap:22px;}
.co-card{background:var(--cream2); border-radius:9px; padding:26px 24px;}
.co-bg2 .co-card{background:var(--cream);}
.co-card .n{width:32px; height:32px; border-radius:50%; background:var(--teal); color:var(--cream); font-weight:600; font-size:14px; display:flex; align-items:center; justify-content:center; margin-bottom:14px;}
.co-card h4{font-size:16px; font-weight:600; margin-bottom:8px;}
.co-card p{font-size:13px; opacity:0.76; line-height:1.65;}

.co-twocol{display:grid; grid-template-columns:1fr 1fr; gap:26px;}
.co-colbox{background:var(--cream2); border-radius:9px; padding:28px 26px;}
.co-bg2 .co-colbox{background:var(--cream);}
.co-colbox h3{font-size:13.5px; font-weight:700; letter-spacing:0.4px; margin-bottom:16px; text-transform:uppercase;}
.co-colbox.do h3{color:#2F7D5B;} .co-colbox.dont h3{color:var(--clay);}
.co-colbox ul{list-style:none; padding-left:0; margin:0;}
.co-colbox li{font-size:13.5px; padding:10px 0 10px 26px; border-top:1px solid rgba(33,31,28,0.08); position:relative; line-height:1.62;}
.co-colbox li:first-child{border-top:none;}
.co-colbox li::before{position:absolute; left:0; top:10px; font-weight:700;}
.co-colbox.do li::before{content:"\2713"; color:#2F7D5B;}
.co-colbox.dont li::before{content:"\2715"; color:var(--clay);}

.co-tl{border-left:3px solid var(--gold); margin-left:8px;}
.co-tlrow{padding:20px 0 20px 30px; position:relative; border-bottom:1px dashed rgba(33,31,28,0.13);}
.co-tlrow:last-child{border-bottom:none;}
.co-tlrow::before{content:""; position:absolute; left:-10px; top:26px; width:17px; height:17px; border-radius:50%; background:var(--gold); border:3px solid var(--cream2);}
.co-tlrow .d{font-size:12.5px; font-weight:700; color:var(--clay); letter-spacing:0.4px; text-transform:uppercase; margin-bottom:6px;}
.co-tlrow h4{font-size:17px; font-weight:600; margin-bottom:7px;}
.co-tlrow p{font-size:14px; opacity:0.78; line-height:1.7; max-width:68ch;}

.co-fstrip{display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:rgba(33,31,28,0.13); border-top:1px solid rgba(33,31,28,0.13); margin-top:40px;}
.co-fstrip > div{background:var(--cream2); padding:22px 20px 24px 0;}
.co-fstrip span{display:block; font-size:10.5px; opacity:0.62; text-transform:uppercase; letter-spacing:0.4px; margin-bottom:7px;}
.co-fstrip b{font-size:14.5px; font-weight:600;}

.co-contact{display:grid; grid-template-columns:repeat(3,1fr); gap:22px;}
.co-ccard{background:var(--cream2); border-radius:9px; padding:28px 26px; border-top:3px solid var(--teal);}
.co-ccard .ct{font-size:10.5px; font-weight:700; letter-spacing:0.5px; text-transform:uppercase; color:var(--clay); margin-bottom:10px;}
.co-ccard h3{font-size:17px; font-weight:600; margin-bottom:9px;}
.co-ccard p{font-size:13px; opacity:0.75; line-height:1.65; margin-bottom:14px;}
.co-ccard a.em{font-size:14.5px; font-weight:600; color:var(--teal); border-bottom:1px solid rgba(11,93,82,0.3); padding-bottom:1px; word-break:break-all;}
.co-ccard .rt{font-size:11.5px; opacity:0.6; margin-top:12px;}

.co-dark{background:var(--teal-deep, #04241F); color:var(--cream);}
.co-dark .sec-kicker{color:var(--gold-light) !important;}
.co-dark h2.sec-title{color:var(--cream);}
.co-dark p.sec-sub{opacity:0.88; color:var(--cream);}
.co-dark .co-card{background:rgba(246,241,228,0.08);}
.co-dark .co-card h4{color:var(--cream);}
.co-dark .co-card p{opacity:0.87; color:var(--cream);}
.co-dark .co-card .n{background:var(--gold); color:var(--ink);}
.co-firewall{background:rgba(193,80,46,0.16); border:1px solid rgba(193,80,46,0.5); border-radius:10px; padding:28px 32px; max-width:76ch;}
.co-firewall h3{font-size:19px; font-weight:600; margin-bottom:12px; color:var(--gold-light);}
.co-firewall p{font-size:14.5px; line-height:1.72; opacity:0.92; margin-bottom:12px; color:var(--cream);}
.co-firewall p:last-child{margin-bottom:0;}
.co-firewall b{font-weight:600; color:var(--gold-light);}

.co-ftable{width:100%; border-collapse:collapse; font-size:14px;}
.co-ftable th{text-align:left; padding:13px 16px; background:var(--ink); color:var(--cream); font-size:10.5px; font-weight:700; letter-spacing:0.5px; text-transform:uppercase;}
.co-ftable td{padding:15px 16px; border-top:1px solid rgba(33,31,28,0.13); line-height:1.6; vertical-align:top;}
.co-ftable tr:nth-child(even) td{background:var(--cream);}
.co-ftable td b{font-weight:600;}
.co-ftable td small{display:block; font-size:12px; opacity:0.66; margin-top:4px;}

.co-btn{background:var(--gold); color:var(--ink); padding:13px 26px; border-radius:24px; font-weight:600; font-size:13.5px; display:inline-block;}
.co-links{display:grid; grid-template-columns:repeat(3,1fr); gap:22px;}
.co-link{background:var(--cream2); border-radius:8px; padding:24px 22px; border-left:4px solid var(--gold); display:block; color:var(--ink);}
.co-link .lbl{font-size:10.5px; font-weight:700; color:var(--teal); text-transform:uppercase; letter-spacing:0.3px; margin-bottom:10px;}
.co-link h4{font-size:15px; font-weight:600; margin-bottom:8px;}
.co-link p{font-size:12.5px; opacity:0.72; line-height:1.55;}

/* legal pages */
.co-legal-hero{background:var(--cream2); padding:52px 0 44px; border-bottom:2px solid var(--ink);}
.co-legal-hero h1{font-size:40px; font-weight:700; letter-spacing:-0.6px; line-height:1.1;}
.co-legal-hero .meta{margin-top:16px; display:flex; gap:24px; flex-wrap:wrap; font-size:12.5px; opacity:0.66;}
.co-legal-hero .summary{margin-top:24px; background:var(--cream); border-left:4px solid var(--teal); border-radius:0 8px 8px 0; padding:20px 24px; max-width:70ch;}
.co-legal-hero .summary p{font-size:14.5px; line-height:1.7;}
.co-legal-hero .summary b{font-weight:600;}
.co-legal-grid{display:grid; grid-template-columns:230px 1fr; gap:54px; align-items:start;}
.co-legal-toc{position:sticky; top:32px;}
.co-legal-toc h4{font-size:11px; font-weight:700; letter-spacing:0.7px; text-transform:uppercase; color:var(--gold-deep); margin-bottom:14px;}
.co-legal-toc a{display:block; font-size:13px; padding:7px 0; opacity:0.72; line-height:1.45; border-top:1px solid rgba(33,31,28,0.13);}
.co-legal-toc a:first-of-type{border-top:none;}
.co-legal .lsec{padding:0 0 38px;}
.co-legal h2{font-size:21px; font-weight:600; margin:0 0 12px; line-height:1.3;}
.co-legal p{font-size:15px; line-height:1.8; margin-bottom:15px; opacity:0.88;}
.co-legal ul{list-style:none; margin:0 0 16px; padding-left:0;}
.co-legal li{font-size:14.5px; line-height:1.72; padding:5px 0 5px 22px; position:relative; opacity:0.88;}
.co-legal li::before{content:""; position:absolute; left:3px; top:15px; width:6px; height:6px; border-radius:50%; background:var(--gold);}
.co-legal .note{background:var(--cream2); border-radius:8px; padding:18px 22px; margin:6px 0 18px;}
.co-legal .note p{font-size:14px; margin:0; line-height:1.7;}
.co-legal b{font-weight:600;}
.co-legal a.ilink{color:var(--teal); font-weight:500; border-bottom:1px solid rgba(11,93,82,0.3); padding-bottom:1px;}
.co-page .review-note{background:#E7DCC4; border-top:1px solid rgba(33,31,28,0.13); padding:26px 0; font-size:13px; opacity:0.85; line-height:1.7;}
.co-page .review-note b{font-weight:600; opacity:1;}

@media (max-width:900px){
  .co-page .co-hero h1{font-size:31px;}
  .co-grid{grid-template-columns:1fr; gap:34px;}
  .co-portrait{aspect-ratio:3/2;}
  .co-legal-hero h1{font-size:29px;}
  .co-legal-grid{grid-template-columns:1fr; gap:28px;}
  .co-legal-toc{position:static;}
  .co-cards3, .co-twocol, .co-contact, .co-links{grid-template-columns:1fr;}
  .co-fstrip{grid-template-columns:1fr 1fr;}
  .co-ftable{font-size:13px;}
}

/* ============================================================
   MOBILE HARDENING — prevents sideways page scroll
   ============================================================ */
/* Tables cannot shrink below their content width, so they scroll inside
   their own container rather than pushing the page wider. */
.tscroll{overflow-x:auto; -webkit-overflow-scrolling:touch; max-width:100%;}
.tscroll table{min-width:560px;}
.tscroll::-webkit-scrollbar{height:6px;}
.tscroll::-webkit-scrollbar-thumb{background:rgba(38,36,33,0.28); border-radius:3px;}

/* Nothing may exceed the viewport. */
html{overflow-x:clip;}
img, svg, video, iframe, table, pre{max-width:100%;}
body{overflow-wrap:break-word;}

/* The era strip was a non-wrapping flex row of nowrap items. */
.era-strip{overflow-x:auto; -webkit-overflow-scrolling:touch;}

@media (max-width:760px){
  /* Long unbroken tokens: emails, URLs, slugs */
  .co-ccard a.em, .co-legal a, .legal-body a, .sources li, .srcbox li{overflow-wrap:anywhere;}
  /* Two-column grids that were still two columns on a phone */
  .figs, .co-fstrip, .fstrip, .topfive, .news-hub .topics, .std-grid,
  .nrel-grid, .rel-grid, .myth-list, .risks, .sectors, .co-cards3,
  .cards3, .link-grid, .co-links, .faq-grid, .wlist,
  .era-nav-grid, .dest-quickfacts{grid-template-columns:1fr !important;}
  /* Tighter gutters so text is not squeezed into a narrow column */
  .wrap, .wrap-narrow, .headbar, .breadcrumb .wrap{padding-left:20px; padding-right:20px;}
  /* Section rhythm */
  .inv-hub section, .inv-page section, .co-page section,
  .faq-hub section, .faq-page section, .news-hub section, .news-page section{padding:48px 0;}
  /* Headlines: keep the largest ones from forcing width */
  .inv-hero h1, .co-page .co-hero h1, .faq-hero h1,
  .co-legal-hero h1, .news-head h1, .art-head h1, .q-head h1{font-size:27px; letter-spacing:-0.2px;}
  .art-body p, .q-body p, .co-copy p, .copy p{font-size:15.5px;}
  h2.sec-title{font-size:25px;}
  /* Fact and figure cells: drop the right padding that overhung the edge */
  .ifig, .co-fstrip > div, .fstrip > div{padding-right:0;}
  /* Status board rows already stack; make the pills sit left */
  .brow{padding-left:18px; padding-right:18px;}
  /* Sticky strips must not trap the page */
  .toc-scroll, .cats-scroll, .gnav-scroll{padding-left:0; padding-right:0;}
}

@media (max-width:420px){
  .wrap, .wrap-narrow, .headbar{padding-left:16px; padding-right:16px;}
  .inv-hero h1, .co-page .co-hero h1, .faq-hero h1,
  .co-legal-hero h1, .news-head h1, .art-head h1, .q-head h1{font-size:24px;}
  .tscroll table{min-width:480px;}
  .co-legal-hero .meta, .faq-stats, .q-meta, .inv-hub .figs{gap:10px 16px;}
}

/* ============================================================
   HEADER AT PHONE WIDTHS
   The brand tagline plus a long CTA exceeded a 390px viewport,
   which pushed every page sideways. Both are reined in here.
   ============================================================ */
@media (max-width:760px){
  .headbar{gap:12px; padding-left:20px; padding-right:20px;}
  .brand-text b{font-size:14px; letter-spacing:0.3px;}
  .brand-text span{font-size:8px; letter-spacing:0.5px;}
  .head-actions{gap:10px;}
  .headbar .btn{padding:9px 15px; font-size:12.5px;}
  .petal-mark{width:28px; height:28px;}
}
@media (max-width:520px){
  .brand-text b{font-size:13px;}
  .headbar{gap:10px; padding-left:16px; padding-right:16px;}
  .headbar .btn{padding:8px 13px; font-size:12px;}
}
@media (max-width:380px){
  .brand-text b{font-size:12.5px;}
  .headbar .btn{padding:8px 11px; font-size:11.5px;}
}

/* ============================================================
   MOBILE NAVIGATION  (CSS-only, no JavaScript dependency)
   ============================================================ */
.menu-cb{position:absolute; opacity:0; pointer-events:none; width:0; height:0;}
.menu-btn{display:none; flex-direction:column; justify-content:center; gap:5px; width:40px; height:40px; padding:9px; cursor:pointer; border-radius:8px; flex-shrink:0;}
.menu-btn span{display:block; height:2px; width:100%; background:var(--ink, #262421); border-radius:2px; transition:transform .22s ease, opacity .18s ease;}
.menu-cb:checked + .menu-btn span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.menu-cb:checked + .menu-btn span:nth-child(2){opacity:0;}
.menu-cb:checked + .menu-btn span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.mobile-panel{display:none;}

@media (max-width:960px){
  .menu-btn{display:flex;}
  .mobile-panel{display:block; max-height:0; overflow:hidden; background:var(--cream, #F6F1E4); border-top:1px solid rgba(38,36,33,0.1); transition:max-height .28s ease;}
  .menu-cb:checked ~ .mobile-panel,
  header:has(.menu-cb:checked) .mobile-panel{max-height:85vh; overflow-y:auto;}
  .mob-search{padding:16px 20px 6px;}
  .mob-search input{width:100%; padding:12px 16px; border-radius:24px; border:1px solid rgba(38,36,33,0.18); background:#fff; font-family:'Poppins'; font-size:14px; outline:none;}
  .mob-nav ul{list-style:none; margin:0; padding:8px 20px 0;}
  .mob-nav li{border-bottom:1px solid rgba(38,36,33,0.08);}
  .mob-nav li:last-child{border-bottom:none;}
  .mob-nav a{display:block; padding:13px 0; font-size:15.5px; font-weight:500; color:var(--ink, #262421);}
  .mob-foot{display:flex; flex-wrap:wrap; gap:16px; padding:14px 20px 20px; margin-top:6px; border-top:1px solid rgba(38,36,33,0.12);}
  .mob-foot a{font-size:12.5px; font-weight:500; opacity:0.68;}
}

/* ============================================================
   HOMEPAGE AT PHONE WIDTHS
   The newsletter input was a fixed 300px, which with its button
   and gutters exceeded a 390px viewport and slid the page.
   ============================================================ */
@media (max-width:760px){
  .nl-form{flex-direction:column; align-items:stretch; gap:10px;}
  .nl-form input{width:100%; max-width:100%;}
  .nl-form .btn{width:100%; text-align:center;}
  .fg-grid{grid-template-columns:1fr !important; row-gap:28px;}
  .facts .wrap{grid-template-columns:1fr !important;}
  .foot-grid{grid-template-columns:1fr !important;}
  .hero h1{font-size:30px;}
  .cta-row{flex-wrap:wrap; gap:10px;}
  .cta-row .btn{flex:1 1 auto; text-align:center;}
  .attr-row{flex-wrap:wrap;}
}
@media (max-width:420px){
  .hero h1{font-size:26px;}
  .fact{flex:0 0 180px; padding:0 18px;}
}

/* ============================================================
   BRAND LOCKUP ON PHONES
   The tagline stays visible. It wraps to two lines rather than
   being dropped, and the lockup is capped so it cannot push the
   header wider than the screen.
   ============================================================ */
@media (max-width:760px){
  .brand-text span{display:block; font-size:8px; letter-spacing:0.4px; line-height:1.3; white-space:normal;}
  .brand-text{max-width:190px;}
}
@media (max-width:520px){
  .brand-text{max-width:150px;}
  .brand-text span{font-size:7.5px; letter-spacing:0.25px;}
  .brand a{gap:8px !important;}
}
@media (max-width:380px){
  .brand-text{max-width:132px;}
  .brand-text b{font-size:12.5px;}
  .brand-text span{font-size:7px; letter-spacing:0.15px;}
  .headbar .btn{padding:8px 10px; font-size:11px;}
  .menu-btn{width:36px; height:36px; padding:8px;}
}
/* The mobile panel's nav must survive the desktop-nav hide rule. */
@media (max-width:960px){
  nav.mob-nav{display:block;}
  nav.mob-nav ul{list-style:none; margin:0; padding:8px 20px 0;}
  nav.mob-nav li{border-bottom:1px solid rgba(38,36,33,0.08);}
  nav.mob-nav li:last-child{border-bottom:none;}
  nav.mob-nav a{display:block; padding:13px 0; font-size:15.5px; font-weight:500; color:var(--ink, #262421);}
  nav.mob-nav ul ul{padding:0 0 8px 14px;}
  nav.mob-nav ul ul a{font-size:14px; opacity:0.78; padding:9px 0;}
}

/* ============================================================
   MOBILE MENU MUST STACK VERTICALLY
   The desktop rule "nav ul{display:flex}" was also hitting the
   mobile panel, laying its items out as a horizontal row that
   ran off the right edge. Force a vertical list here.
   ============================================================ */
@media (max-width:960px){
  nav.mob-nav ul{display:block !important; flex-direction:column; gap:0 !important;}
  nav.mob-nav li{display:block; width:100%;}
  nav.mob-nav a{display:block; width:100%; white-space:normal;}
}

/* ============================================================
   COMING SOON STATES (homepage revolution cards, tools)
   ============================================================ */
.rev-card.rev-soon{cursor:default; position:relative;}
.rev-card.rev-soon:hover{transform:none !important;}
.soon-badge{display:inline-block; margin-top:14px; font-size:10px; font-weight:700; letter-spacing:0.6px; text-transform:uppercase; padding:4px 10px; border-radius:20px; background:rgba(200,155,60,0.18); color:var(--gold-light, #E4C878); border:1px solid rgba(200,155,60,0.45);}
.soon-link{cursor:default; opacity:0.75;}
.fg-soon{display:block; opacity:0.55; cursor:default;}
.fg-soon em{font-style:normal; font-size:0.82em; letter-spacing:0.3px;}

/* Homepage: live news rows are links now; contact block has a single button */
a.news-row{color:inherit; text-decoration:none; transition:opacity .15s;}
a.news-row:hover h4{text-decoration:underline; text-underline-offset:3px;}
.newsletter p{max-width:60ch; margin-left:auto; margin-right:auto;}
.nl-form.nl-contact{justify-content:center;}
.nl-form.nl-contact .btn{white-space:normal;}

/* ============================================================
   HOMEPAGE TIMELINE AS A GRID
   Fifteen entries now, so they wrap into rows rather than
   hiding behind a sideways scroll.
   ============================================================ */
.timeline.tl-grid{display:grid; grid-template-columns:repeat(5, 1fr); row-gap:40px; overflow:visible;}
.timeline.tl-grid .tl-item{min-width:0;}
.timeline.tl-grid .tl-item:nth-child(5n)::before{display:none;}
.timeline.tl-grid .tl-item:last-child::before{display:none;}
/* The three that matter most right now */
.tl-item.tl-key .tl-dot{background:var(--gold); box-shadow:0 0 0 4px rgba(200,155,60,0.22);}
.tl-item.tl-key .era{color:var(--clay); font-weight:600;}
.newsletter p{max-width:72ch;}
@media (max-width:960px){
  .timeline.tl-grid{grid-template-columns:repeat(3, 1fr);}
  .timeline.tl-grid .tl-item:nth-child(5n)::before{display:block;}
  .timeline.tl-grid .tl-item:nth-child(3n)::before{display:none;}
}
@media (max-width:620px){
  .timeline.tl-grid{grid-template-columns:1fr 1fr; row-gap:30px;}
  .timeline.tl-grid .tl-item::before{display:none !important;}
}
@media (max-width:400px){
  .timeline.tl-grid{grid-template-columns:1fr;}
}

/* Homepage hero eyebrow: carries the target keyword above the H1 */
.hero-eyebrow{font-size:12px; font-weight:700; letter-spacing:1.2px; text-transform:uppercase; color:var(--gold-light, #E4C878); margin-bottom:16px;}
@media (max-width:520px){ .hero-eyebrow{font-size:10.5px; letter-spacing:0.8px;} }

/* Homepage culture spotlight: shows the linked article's featured image */
.spotlight-figure{display:flex; overflow:hidden;}
.spotlight-figure.has-img{background-size:cover; background-position:center; background-repeat:no-repeat;}
a.spotlight-figure{transition:transform .25s ease, box-shadow .25s ease;}
a.spotlight-figure:hover{transform:translateY(-3px); box-shadow:0 12px 30px rgba(38,36,33,0.18);}
@media (max-width:760px){ .spotlight-figure{height:220px;} }

/* Destination map: static image, plus a link out. No third-party embed. */
.map-open{display:inline-block; margin-top:14px; font-size:13px; font-weight:600; color:var(--teal); border-bottom:1px solid rgba(11,93,82,0.35); padding-bottom:2px;}

/* Destination gallery: up to ten images, square crops */
/* Gallery keeps each photo's own shape, arranged in balanced columns */
.dg-grid{display:grid; grid-template-columns:repeat(3, 1fr); gap:18px; align-items:start;}
.dg-grid img.dg-img{width:100%; height:auto; aspect-ratio:auto; object-fit:contain; border-radius:8px; display:block;}
@media (max-width:900px){ .dg-grid{grid-template-columns:1fr 1fr; gap:14px;} }
@media (max-width:520px){ .dg-grid{grid-template-columns:1fr;} }

/* Destination quick answer: show the question above the answer */
.quick-answer .qa-question{font-size:19px; font-weight:600; margin:6px 0 10px; color:var(--cream);}

/* Destination sight cards that link to the full page */
a.dh-card{display:block; color:inherit; text-decoration:none; transition:transform .18s ease, box-shadow .18s ease;}
a.dh-card:hover{transform:translateY(-3px); box-shadow:0 12px 28px rgba(38,36,33,0.14);}
.dh-more{display:inline-block; margin-top:10px; font-size:12px; font-weight:700; letter-spacing:0.3px; color:var(--teal);}
a.dh-card:hover .dh-more{border-bottom:1px solid rgba(11,93,82,0.4);}
.dh-photo{overflow:hidden;}

/* Gallery images must not be squashed by plugin-applied CSS containment */
/* The wrapper sets the frame, so plugin-applied CSS containment on the image
   cannot stretch the layout. The image simply fills its cell. */
.dg-grid{display:grid; grid-template-columns:repeat(3, 1fr); gap:18px;}
.dg-cell{margin:0; position:relative; width:100%; aspect-ratio:4/3; overflow:hidden; border-radius:8px; background:var(--cream3, #E7DCC4);}
.dg-cell img{position:absolute; inset:0; width:100% !important; height:100% !important; object-fit:cover; object-position:center; border-radius:0; display:block; max-width:none; contain:none !important; contain-intrinsic-size:auto !important;}
@media (max-width:900px){ .dg-grid{grid-template-columns:1fr 1fr; gap:14px;} }
@media (max-width:520px){ .dg-grid{grid-template-columns:1fr;} }

/* Homepage featured destination card: linked, with the page's own hero photo */
a.dest-feature{display:flex; flex-direction:column; justify-content:flex-end; color:var(--cream); text-decoration:none; position:relative; overflow:hidden; transition:transform .25s ease, box-shadow .25s ease;}
a.dest-feature.has-img{background-size:cover; background-position:center;}
a.dest-feature:hover{transform:translateY(-3px); box-shadow:0 16px 36px rgba(38,36,33,0.22);}
a.dest-feature h3, a.dest-feature p, a.dest-feature .tag{position:relative; z-index:2;}
.dest-feature-more{position:relative; z-index:2; display:inline-block; margin-top:14px; font-size:12.5px; font-weight:700; letter-spacing:0.4px; color:var(--gold-light, #E4C878);}
a.dest-feature:hover .dest-feature-more{border-bottom:1px solid rgba(228,200,120,0.5); padding-bottom:2px;}
a.dest-row-link{color:inherit; text-decoration:none;}
a.dest-row-link:hover .info b{text-decoration:underline; text-underline-offset:3px;}

/* Destination overview: breathing room around subheadings */
.intro-body h2{margin-top:44px; margin-bottom:14px; line-height:1.25;}
.intro-body h2:first-child{margin-top:0;}
.intro-body h3{margin-top:34px; margin-bottom:12px;}
.intro-body ul, .intro-body ol{margin-bottom:26px;}
.intro-body li{margin-bottom:8px;}
.intro-body p{margin-bottom:18px;}
@media (max-width:760px){ .intro-body h2{margin-top:34px;} }

/* Plan pages: FAQ sits left with the rest of the page, not centred */
.plan-faq-inner{max-width:820px; margin-left:0; margin-right:auto;}

/* Tighter rhythm between the overview and the section that follows it */
.stay-page .body-grid{padding-bottom:0;}
.stay-page .copy > *:last-child{margin-bottom:0;}
.stay-page section + section{padding-top:56px;}
.dia-page .body-grid{padding-bottom:0;}
.dia-page .copy > *:last-child{margin-bottom:0;}
.dia-page section + section{padding-top:56px;}
.plan-page section + section{padding-top:56px;}

/* =========================================================
   Body copy headings: space above, site-wide.
   The reset zeroes heading margins, so H2s sat flush against
   the paragraph before them on every article template.
   ========================================================= */
.copy h2, .intro-body h2, .art-body h2, .q-body h2, .co-copy h2,
.news-page .art-body h2, .inv-body h2, .faq-body h2,
h2.wp-block-heading{
  margin-top:46px; margin-bottom:14px; line-height:1.3;
}
.copy h3, .intro-body h3, .art-body h3, .q-body h3, .co-copy h3,
.inv-body h3, .faq-body h3,
h3.wp-block-heading{
  margin-top:34px; margin-bottom:12px; line-height:1.35;
}
.copy h4, .intro-body h4, .art-body h4, h4.wp-block-heading{
  margin-top:28px; margin-bottom:10px;
}
/* never push the first heading away from the top of its column */
.copy > *:first-child, .intro-body > *:first-child, .art-body > *:first-child,
.q-body > *:first-child, .co-copy > *:first-child{ margin-top:0; }
/* lists in body copy need room too */
.copy ul, .copy ol, .intro-body ul, .intro-body ol, .art-body ul, .art-body ol{ margin-bottom:22px; }
.copy li, .intro-body li, .art-body li{ margin-bottom:8px; }
/* a heading straight after a pull quote or callout should not double up */
.pull-quote + h2, .callout + h2{ margin-top:36px; }
@media (max-width:760px){
  .copy h2, .intro-body h2, .art-body h2, .q-body h2, .co-copy h2, h2.wp-block-heading{ margin-top:34px; }
  .copy h3, .intro-body h3, .art-body h3, h3.wp-block-heading{ margin-top:26px; }
}

/* Diaspora hub: people photos when supplied */
.person-img{overflow:hidden;}
.person-img img{width:100%; height:100%; object-fit:cover; display:block; border-radius:inherit;}
/* Admin shortcut shown only to logged-in editors */
.vts-edit-hub{position:fixed; right:18px; bottom:18px; z-index:9999; background:var(--teal); color:var(--cream);
  padding:10px 16px; border-radius:30px; font-size:13px; font-weight:600; text-decoration:none; box-shadow:0 8px 24px rgba(38,36,33,0.25);}
.vts-edit-hub:hover{background:var(--clay); color:#fff;}

/* Diaspora hero portrait */
.portrait-slot.has-img{background-size:cover; background-position:center; border:0;}

/* Diaspora single: breathing room under the hero portrait before the nav */
.dia-page .dia-hero{padding-bottom:64px;}
.dia-page .portrait-slot{margin-bottom:8px;}
@media (max-width:860px){ .dia-page .dia-hero{padding-bottom:40px;} }

/* Famous Syrians card: keep the dark overlay readable when a photo is used */
.dark-person .person-img img{width:100%; height:100%; object-fit:cover; display:block; opacity:0.85;}

/* Stay pages: body copy region that renders without a sidebar (after <!--vts-split-->). */
.copy-solo{ max-width:780px; }

/* Stay hub: wide banner band under the hero. Images are absolutely positioned
   inside a sized figure so LiteSpeed's contain:size cannot stretch them. */
.stay-hub .hub-banner-sec{padding:56px 0 0;}
.hub-banner{margin:0; position:relative; width:100%; aspect-ratio:21/9; overflow:hidden; border-radius:10px; background:var(--cream2);}
.hub-banner .hub-banner-img{position:absolute; inset:0; width:100% !important; height:100% !important; object-fit:cover; display:block;}
.hub-banner figcaption{position:absolute; right:0; bottom:0; margin:0; background:rgba(38,36,33,0.72);
  color:var(--cream); font-size:11px; font-weight:300; letter-spacing:0.2px; padding:6px 11px; border-radius:7px 0 0 0;}

/* Stay hub: photo band on an accommodation type card, replacing its gold icon. */
.type-card.has-media{padding:0; overflow:hidden; display:flex; flex-direction:column;}
.type-card.has-media .type-body{padding:17px 20px 22px;}
.type-media{margin:0; position:relative; width:100%; aspect-ratio:16/10; overflow:hidden; background:var(--cream2);}
.type-media .type-media-img{position:absolute; inset:0; width:100% !important; height:100% !important; object-fit:cover; display:block;}

@media (max-width:900px){
  .stay-hub .hub-banner-sec{padding:40px 0 0;}
  .hub-banner{aspect-ratio:16/9;}
}

/* Stay FAQ: narrow column aligned to the left edge of the wrap, not centred. */
.stay-faq-inner{ max-width:820px; margin-left:0; margin-right:auto; }

/* Body copy paragraphs: the reset zeroes margins, and only some page types
   restored them. Stay and Diaspora pages had none, so paragraphs ran together. */
.stay-page .copy p, .stay-hub .copy p, .dia-page .copy p,
.copy .wp-block-paragraph, .copy > p{
  font-size:15.5px; line-height:1.8; opacity:0.9; margin-bottom:20px;
}
.stay-page .copy h2, .dia-page .copy h2{ margin-top:48px; margin-bottom:16px; }
.stay-page .copy h3, .dia-page .copy h3{ margin-top:36px; margin-bottom:12px; }
.stay-page .copy > *:first-child, .dia-page .copy > *:first-child{ margin-top:0; }
.stay-page .copy ul, .stay-page .copy ol,
.dia-page .copy ul, .dia-page .copy ol{ margin-bottom:22px; padding-left:20px; }
.stay-page .copy li, .dia-page .copy li{ margin-bottom:8px; }
