/* ============ DESIGN TOKENS ============ */
:root{
  --navy:#4E3F22;
  --navy-light:#63512C;
  --navy-deep:#332811;
  --offwhite:#F6F2E9;
  --white:#FFFFFF;
  --silver:#C7CCD3;
  --gold:#9C7A3C;
  --gold-text:#7A5F2E; /* AA-accessible gold-family text color for light backgrounds */
  --gold-on-dark:#D4AE5C; /* AA-accessible gold-family text/border color for dark backgrounds */
  --muted-gray:#6b7280; /* AA-accessible muted numeral color for light backgrounds */
  --charcoal:#2E2717;
  --accent-blue:#2F80ED;
  --serif:'Cormorant Garamond', Georgia, serif;
  --sans:'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  --chrome-gradient: linear-gradient(115deg,#8b93a0 0%,#eef0f2 20%,#a7adb8 42%,#f5f6f7 58%,#959ca7 76%,#d3d7db 100%);
  --radius-sm:0px;
  --radius-md:0px;
  --space-1:8px; --space-2:16px; --space-3:24px; --space-4:32px;
  --space-5:48px; --space-6:64px; --space-7:96px; --space-8:140px;
  --maxw:1200px;
  --border-light: 1px solid rgba(46,39,23,0.09);
  --border-dark: 1px solid rgba(255,255,255,0.14);
}
*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0; font-family:var(--sans); color:var(--charcoal); background:var(--offwhite);
  -webkit-font-smoothing:antialiased; line-height:1.65;
}
h1,h2,h3,h4{font-family:var(--serif); font-weight:500; color:var(--navy); line-height:1.1; margin:0 0 var(--space-2); letter-spacing:-.01em;}
h1{font-size:clamp(2.6rem,5.4vw,4.4rem); font-weight:500;}
h2{font-size:clamp(1.9rem,3.2vw,2.7rem);}
h3{font-size:1.4rem;}
p{margin:0 0 var(--space-2); color:var(--charcoal);}
a{color:inherit; text-decoration:none;}
img,svg{max-width:100%; display:block;}
ul{margin:0; padding:0; list-style:none;}
button{font-family:var(--sans); cursor:pointer;}
.container{max-width:var(--maxw); margin:0 auto; padding:0 var(--space-3);}
.eyebrow{
  font-family:var(--sans); text-transform:uppercase; letter-spacing:.18em; font-size:.7rem;
  font-weight:600; color:var(--gold-text); margin-bottom:var(--space-2); display:flex; align-items:center; gap:10px;
}
.eyebrow::before{content:""; width:28px; height:1px; background:var(--gold); display:inline-block;}
.on-navy .eyebrow{color:var(--gold-on-dark);}
.section{padding:var(--space-7) 0;}
.section-tight{padding:var(--space-5) 0;}
.on-navy{background:var(--navy); color:var(--white);}
.on-navy h1,.on-navy h2,.on-navy h3{color:var(--white);}
.on-navy p{color:rgba(255,255,255,0.75);}
.center{text-align:center;}
.center .eyebrow{justify-content:center;}
.lede{font-size:1.18rem; color:rgba(34,34,34,.72); max-width:620px; font-weight:400; line-height:1.7;}
.on-navy .lede{color:rgba(255,255,255,0.7);}

/* Chrome hairline rule — the signature device */
.chrome-rule{height:2px; background:var(--chrome-gradient); border:none; opacity:.85;}

/* Skip link */
.skip-link{position:absolute; left:-999px; top:0; background:var(--navy); color:var(--white); padding:12px 20px; z-index:999;}
.skip-link:focus{left:8px; top:8px;}

/* Focus states */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:2px solid var(--accent-blue); outline-offset:3px;
}

/* ============ HEADER ============ */
header.site-header{
  position:sticky; top:0; z-index:100; background:rgba(46,39,23,0.96); backdrop-filter:blur(8px);
  border-bottom:1px solid transparent; background-image:linear-gradient(rgba(46,39,23,.96),rgba(46,39,23,.96)), var(--chrome-gradient);
  background-size:100% 100%, 100% 1px; background-position:0 0, 0 100%; background-repeat:no-repeat; background-origin:border-box;
  box-shadow:0 1px 0 0 transparent;
}
.header-inner{display:flex; align-items:center; justify-content:space-between; padding:20px var(--space-3); max-width:var(--maxw); margin:0 auto;}
.wordmark{font-family:var(--serif); font-size:1.55rem; letter-spacing:.05em; font-weight:600; display:flex; flex-direction:column; line-height:1.05;}
.wordmark .chrome-text{background:var(--chrome-gradient); -webkit-background-clip:text; background-clip:text; color:transparent;}
.wordmark .assets-text{color:var(--white); font-weight:400;}
.wordmark small{font-family:var(--sans); font-size:.53rem; letter-spacing:.26em; text-transform:uppercase; color:var(--silver); font-weight:600; margin-top:4px;}
.wordmark .byline{font-family:var(--serif); font-style:italic; font-size:.72rem; letter-spacing:.03em; color:var(--gold-on-dark); font-weight:400; margin-top:3px;}
nav.primary-nav{display:flex; align-items:center; gap:var(--space-4);}
.nav-links{display:flex; gap:var(--space-4); align-items:center;}
.nav-links > li{position:relative;}
.nav-links a.nav-link{
  color:rgba(255,255,255,0.78); font-size:.76rem; font-weight:500; padding:8px 0; position:relative;
  text-transform:uppercase; letter-spacing:.1em;
}
.nav-links a.nav-link::after{
  content:""; position:absolute; left:0; right:0; bottom:0; height:1.5px; background:var(--chrome-gradient);
  transform:scaleX(0); transform-origin:left; transition:transform .25s ease;
}
.nav-links a.nav-link:hover, .nav-links a.nav-link.active{color:var(--white);}
.nav-links a.nav-link:hover::after, .nav-links a.nav-link.active::after{transform:scaleX(1);}
.has-dropdown{display:flex; align-items:center; gap:4px;}
.dropdown{
  position:absolute; top:100%; left:0; background:var(--navy-light); border:var(--border-dark); min-width:210px;
  padding:10px 0; opacity:0; visibility:hidden; transform:translateY(6px); transition:all .15s ease; box-shadow:0 16px 32px rgba(0,0,0,.4);
}
.nav-links > li:hover .dropdown, .nav-links > li:focus-within .dropdown{opacity:1; visibility:visible; transform:translateY(0);}
.dropdown a{display:block; padding:11px 20px; color:rgba(255,255,255,0.75); font-size:.82rem; text-transform:none; letter-spacing:.02em; border-bottom:none;}
.dropdown a::after{display:none;}
.dropdown a:hover{color:var(--gold); background:rgba(255,255,255,0.04);}
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:15px 30px; font-size:.74rem; font-weight:600;
  letter-spacing:.14em; text-transform:uppercase; border-radius:0;
  border:1px solid transparent; transition:all .25s ease; text-align:center; position:relative; overflow:hidden;
}
.btn-gold{background:transparent; color:var(--gold-on-dark); border-color:var(--gold-on-dark);}
.btn-gold:hover{background:var(--gold-on-dark); color:var(--navy-deep);}
.btn-outline-light{border-color:rgba(255,255,255,0.4); color:var(--white);}
.btn-outline-light:hover{border-color:var(--white); background:rgba(255,255,255,0.07);}
.btn-outline-navy{border-color:var(--navy); color:var(--navy);}
.btn-outline-navy:hover{background:var(--navy); color:var(--white);}
.btn-navy{background:var(--navy); color:var(--white); border-color:var(--navy);}
.btn-navy:hover{background:var(--navy-light);}
.header-cta{display:none;}
@media(min-width:960px){.header-cta{display:inline-flex; padding:12px 22px;}}
.menu-toggle{display:none; background:none; border:1px solid rgba(255,255,255,.35); color:var(--white); padding:9px 14px; font-size:.72rem; letter-spacing:.1em; text-transform:uppercase;}
@media(max-width:959px){
  nav.primary-nav .nav-links, nav.primary-nav .header-cta{display:none;}
  .menu-toggle{display:inline-block;}
}
.mobile-panel{display:none; flex-direction:column; background:var(--navy-light); border-top:var(--border-dark);}
.mobile-panel.open{display:flex;}
.mobile-panel a{padding:15px var(--space-3); color:rgba(255,255,255,.85); border-bottom:1px solid rgba(255,255,255,.06); font-size:.92rem; text-transform:uppercase; letter-spacing:.08em; font-weight:500;}
.mobile-panel .sub-item{padding-left:var(--space-4); font-size:.8rem; color:rgba(255,255,255,.6); text-transform:none; letter-spacing:0;}
.mobile-panel .mobile-cta{margin:var(--space-2) var(--space-3);}

/* ============ HERO ============ */
.hero{padding:var(--space-8) 0 var(--space-7); position:relative; overflow:hidden;}
.hero.on-navy{background:linear-gradient(165deg, var(--navy-deep) 0%, var(--navy) 85%);}
.hero::before{
  content:""; position:absolute; left:0; top:0; bottom:0; width:1px; background:var(--chrome-gradient); opacity:.35;
  display:none;
}
@media(min-width:960px){.hero::before{display:block; left:calc(var(--space-3) + 2px);}}
.hero-inner{max-width:780px; position:relative; z-index:1;}
.hero-cta-row{display:flex; gap:var(--space-2); flex-wrap:wrap; margin-top:var(--space-5);}
.hero-locations{margin-top:var(--space-5); font-size:.76rem; letter-spacing:.14em; text-transform:uppercase; color:var(--silver); font-weight:500;}

/* ============ TRUST BAR ============ */
.trust-bar{background:var(--white); border-top:var(--border-light); border-bottom:var(--border-light);}
.trust-grid{display:flex; flex-wrap:wrap; padding:var(--space-4) 0;}
.trust-item{flex:1; min-width:180px; text-align:left; padding:var(--space-2) var(--space-3); border-left:1px solid rgba(46,39,23,.1);}
.trust-item:first-child{border-left:none; padding-left:0;}
.trust-item strong{
  display:block; font-family:var(--serif); font-size:1.9rem; font-weight:500; margin-bottom:4px; font-style:italic;
  color:var(--navy);
}
.trust-item span{font-size:.78rem; color:rgba(34,34,34,.6); letter-spacing:.03em;}

/* ============ TWO COLUMN STORY ============ */
.story{display:grid; grid-template-columns:1fr 1fr; gap:var(--space-7); align-items:center;}
@media(max-width:840px){.story{grid-template-columns:1fr; gap:var(--space-4);}}
.story.reverse .story-media{order:2;}
@media(max-width:840px){.story.reverse .story-media{order:0;}}
.media-block{
  aspect-ratio:4/3; background:linear-gradient(150deg,#3A2E17 0%, #4E3F20 50%, #3A2E17 100%);
  display:flex; align-items:flex-end; padding:var(--space-3); position:relative; overflow:hidden;
}
.media-block::before{content:""; position:absolute; top:0; left:0; right:0; height:2px; background:var(--chrome-gradient); opacity:.55;}
.media-block.tall{aspect-ratio:3/4;}
.media-caption{
  color:rgba(255,255,255,.7); font-size:.7rem; letter-spacing:.06em; text-transform:uppercase; padding:0;
}

/* ============ CARD GRID ============ */
.card-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:var(--space-4);}
@media(max-width:900px){.card-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:620px){.card-grid{grid-template-columns:1fr;}}
.card{
  background:transparent; border:none; border-bottom:var(--border-light); overflow:hidden;
  display:flex; flex-direction:column; transition:transform .3s ease;
}
.card:hover{transform:translateY(-1px);}
.card-media{aspect-ratio:16/10; background:linear-gradient(155deg,#3A2E17 0%,#4E3F20 55%, #3A2E17 100%); position:relative; overflow:hidden;}
.card-media::after{content:""; position:absolute; left:0; right:0; bottom:0; height:2px; background:var(--chrome-gradient); opacity:0; transition:opacity .3s ease;}
.card:hover .card-media::after{opacity:.7;}
.card-media .placeholder-tag{
  position:absolute; top:12px; left:12px; background:transparent; color:rgba(255,255,255,.75); font-size:.6rem; border:1px solid rgba(255,255,255,.3);
  font-weight:600; text-transform:uppercase; letter-spacing:.1em; padding:5px 9px;
}
.card-body{padding:var(--space-3) 0 var(--space-3); display:flex; flex-direction:column; gap:8px; flex:1;}
.card-body h3{font-size:1.3rem; margin-bottom:2px;}
.card-body .cat{font-size:.68rem; text-transform:uppercase; letter-spacing:.14em; color:var(--gold-text); font-weight:600;}
.card-body p{font-size:.9rem; color:rgba(34,34,34,.65); margin-bottom:0; flex:1;}
.card-link{margin-top:var(--space-1); font-size:.76rem; font-weight:600; letter-spacing:.08em; text-transform:uppercase; color:var(--navy); border-bottom:1px solid var(--gold); align-self:flex-start; padding-bottom:2px;}

/* ============ PROCESS ============ */
.process-grid{display:grid; grid-template-columns:repeat(6,1fr); gap:var(--space-3); margin-top:var(--space-5);}
@media(max-width:900px){.process-grid{grid-template-columns:repeat(3,1fr);}}
@media(max-width:560px){.process-grid{grid-template-columns:1fr 1fr;}}
.process-step{border-top:1px solid rgba(255,255,255,.18); padding-top:var(--space-2);}
.section:not(.on-navy) .process-step{border-top:1px solid rgba(46,39,23,.14);}
.process-step .num{
  font-family:var(--serif); font-style:italic; font-size:2.6rem; display:block; margin-bottom:6px; font-weight:500; line-height:1;
  color:var(--silver);
}
.section:not(.on-navy) .process-step .num{color:var(--navy); opacity:.5;}
.process-step h4{font-size:.86rem; margin-bottom:4px; color:var(--navy); font-family:var(--sans); font-weight:600; text-transform:uppercase; letter-spacing:.06em;}
.on-navy .process-step h4{color:var(--white);}
.process-step p{font-size:.84rem; color:rgba(34,34,34,.65); margin:0;}
.on-navy .process-step p{color:rgba(255,255,255,.6);}

/* ============ OPPORTUNITY CARD ============ */
.opportunity-card{background:var(--white); border:none; border-bottom:var(--border-light); overflow:hidden; display:flex; flex-direction:column;}
.opp-media{aspect-ratio:16/9; background:linear-gradient(155deg,#3A2E17 0%,#4E3F20 55%,#3A2E17 100%); position:relative;}
.opp-media::after{content:""; position:absolute; left:0; right:0; bottom:0; height:2px; background:var(--chrome-gradient); opacity:.55;}
.status-chip{position:absolute; top:12px; right:12px; background:transparent; color:var(--gold); font-size:.6rem; font-weight:700; text-transform:uppercase; letter-spacing:.1em; padding:5px 10px; border:1px solid var(--gold);}
.opp-body{padding:var(--space-3) 0; display:flex; flex-direction:column; gap:6px;}
.opp-meta{display:flex; flex-wrap:wrap; gap:6px 16px; font-size:.76rem; color:rgba(34,34,34,.58); margin:4px 0 6px;}
.opp-meta b{color:var(--navy); font-weight:600;}
.verify-note{font-size:.7rem; color:#8a5a1c; background:transparent; border-left:2px solid var(--gold); padding:6px 0 6px 10px; margin-top:8px;}
.verify-note-confirmed{color:var(--gold-text); border-left-color:var(--gold-on-dark, var(--gold));}

/* ============ FAQ ============ */
.faq-item{border-bottom:var(--border-light);}
.faq-q{width:100%; background:none; border:none; text-align:left; padding:20px 0; display:flex; justify-content:space-between; align-items:center; font-weight:500; color:var(--navy); font-size:1.08rem; font-family:var(--serif);}
.faq-q .icon{font-size:1.2rem; color:var(--gold-text); transition:transform .25s; font-family:var(--sans); font-weight:300;}
.faq-item.open .icon{transform:rotate(45deg);}
.faq-a{max-height:0; overflow:hidden; transition:max-height .3s ease; font-size:.9rem; color:rgba(34,34,34,.68); line-height:1.7;}
.faq-item.open .faq-a{max-height:400px; padding-bottom:20px;}

/* ============ FORM ============ */
.form-wrap{background:transparent; border:none; border-top:2px solid; border-image:var(--chrome-gradient) 1; padding:var(--space-4) 0 0; max-width:720px;}
.form-grid{display:grid; grid-template-columns:1fr 1fr; gap:var(--space-3) var(--space-3);}
@media(max-width:640px){.form-grid{grid-template-columns:1fr;}}
.field{display:flex; flex-direction:column; gap:8px; margin-bottom:var(--space-2);}
.field.full{grid-column:1 / -1;}
.field label{font-size:.72rem; font-weight:600; color:var(--navy); text-transform:uppercase; letter-spacing:.08em;}
.field .req{color:#b23b3b;}
.field input,.field select,.field textarea{
  padding:11px 2px; border:none; border-bottom:1px solid var(--silver); border-radius:0; font-family:var(--sans); font-size:.95rem; background:transparent;
  transition:border-color .2s ease;
}
.field input:focus,.field select:focus,.field textarea:focus{border-bottom-color:var(--navy);}
.field small.hint{color:rgba(34,34,34,.5); font-size:.72rem; text-transform:none; letter-spacing:0; font-weight:400;}
.field.error input,.field.error select,.field.error textarea{border-bottom-color:#b23b3b;}
.field .err-msg{color:#b23b3b; font-size:.72rem; display:none;}
.field.error .err-msg{display:block;}
.consent-row{display:flex; gap:10px; align-items:flex-start; margin:var(--space-3) 0;}
.consent-row input{margin-top:4px;}
.consent-row label{font-size:.8rem; color:rgba(34,34,34,.7);}
.form-success{display:none; text-align:center; padding:var(--space-5) var(--space-3);}
.form-success.show{display:block;}
.form-success .checkmark{width:56px;height:56px;border-radius:50%;background:var(--navy);color:var(--gold);display:flex;align-items:center;justify-content:center;font-size:1.6rem;margin:0 auto var(--space-2);}

/* ============ FINAL CTA ============ */
.final-cta{background:linear-gradient(165deg, var(--navy-deep) 0%, var(--navy) 90%); color:var(--white); text-align:center; padding:var(--space-6) 0; position:relative;}
.final-cta::before{content:""; position:absolute; top:0; left:0; right:0; height:2px; background:var(--chrome-gradient); opacity:.5;}
.final-cta h2{color:var(--white);}
.final-cta .btn-gold{margin-top:var(--space-3);}

/* ============ FOOTER ============ */
footer.site-footer{background:var(--navy-deep); color:rgba(255,255,255,0.72); padding:var(--space-6) 0 var(--space-3); font-size:.86rem; position:relative;}
footer.site-footer::before{content:""; position:absolute; top:0; left:0; right:0; height:1px; background:var(--chrome-gradient); opacity:.4;}
.footer-grid{display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr; gap:var(--space-4);}
@media(max-width:800px){.footer-grid{grid-template-columns:1fr 1fr; row-gap:var(--space-4);}}
.footer-grid h4{color:var(--white); font-family:var(--sans); font-size:.72rem; text-transform:uppercase; letter-spacing:.14em; margin-bottom:var(--space-3); font-weight:600;}
.footer-grid a{display:block; color:rgba(255,255,255,0.58); margin-bottom:10px; font-size:.86rem;}
.footer-grid a:hover{color:var(--gold);}
.footer-legal{border-top:1px solid rgba(255,255,255,.09); margin-top:var(--space-4); padding-top:var(--space-3); font-size:.74rem; color:rgba(255,255,255,.45); line-height:1.8;}
.footer-bottom{display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px; margin-top:var(--space-2); font-size:.72rem; color:rgba(255,255,255,.35); letter-spacing:.03em;}
.placeholder-inline{border-bottom:1px dashed rgba(255,255,255,.4);}

/* ============ MISC UTILITY ============ */
.tag-chip{display:inline-block; font-size:.66rem; font-weight:600; text-transform:uppercase; letter-spacing:.08em; background:transparent; color:#8a5a1c; border:1px solid var(--gold); padding:4px 10px; margin-bottom:var(--space-2);}
.confirm-banner{background:transparent; border:none; border-left:2px solid var(--gold); color:#6b4a17; padding:var(--space-2) 0 var(--space-2) var(--space-3); font-size:.85rem; margin-bottom:var(--space-4);}
.values-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:var(--space-3); margin-top:var(--space-3);}
@media(max-width:700px){.values-grid{grid-template-columns:1fr 1fr;}}
.value-item{padding:var(--space-3) 0 0; border-top:1px solid rgba(46,39,23,.12);}
.value-item h4{font-family:var(--serif); font-size:1.15rem; font-weight:500; color:var(--navy); margin-bottom:6px;}
.value-item p{font-size:.85rem; color:rgba(34,34,34,.62); margin:0;}
.timeline{border-left:2px solid; border-image:var(--chrome-gradient) 1; padding-left:var(--space-3); display:flex; flex-direction:column; gap:var(--space-4); margin-top:var(--space-3);}
.timeline-item{position:relative;}
.timeline-item::before{content:""; position:absolute; left:-27px; top:4px; width:9px; height:9px; border-radius:50%; background:var(--gold);}
.timeline-item h4{margin-bottom:6px; font-size:1.2rem;}
.timeline-item p{font-size:.9rem; color:rgba(34,34,34,.62); margin:0;}
.compare-table{width:100%; border-collapse:collapse; margin-top:var(--space-3);}
.compare-table th,.compare-table td{padding:14px 16px; border:none; border-bottom:var(--border-light); font-size:.86rem; text-align:left;}
.compare-table th{background:var(--navy); color:var(--white); font-family:var(--sans); font-size:.72rem; text-transform:uppercase; letter-spacing:.08em; font-weight:600;}
.compare-table td:first-child{font-weight:600; color:var(--navy);}
.pathways-row{display:flex; flex-wrap:wrap; gap:0; margin-top:var(--space-2); border-top:1px solid rgba(46,39,23,.1); border-left:1px solid rgba(46,39,23,.1);}
.pathway-chip{background:transparent; border-right:1px solid rgba(46,39,23,.1); border-bottom:1px solid rgba(46,39,23,.1); padding:12px 20px; font-size:.78rem; color:var(--navy); font-weight:500; letter-spacing:.02em;}
.filter-row{display:flex; flex-wrap:wrap; gap:0; margin-bottom:var(--space-4); border-top:1px solid rgba(46,39,23,.12);}
.filter-btn{background:transparent; border:none; border-bottom:2px solid transparent; padding:12px 20px 10px; font-size:.76rem; font-weight:600; color:rgba(34,34,34,.5); text-transform:uppercase; letter-spacing:.08em;}
.filter-btn.active{color:var(--navy); border-bottom-color:var(--gold);}
.breadcrumb{font-size:.74rem; color:rgba(255,255,255,.5); margin-bottom:var(--space-2); text-transform:uppercase; letter-spacing:.1em;}
.breadcrumb a{color:rgba(255,255,255,.7);}
.route-section{display:none;}
.route-section.active{display:block;}
[data-scale]{background:transparent;}
.assumption-list li{margin-bottom:6px; font-size:.85rem; color:rgba(34,34,34,.7);}
.visually-hidden{position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap;}

/* ============ SCROLL REVEAL ============ */
.reveal{opacity:0; transform:translateY(16px); transition:opacity .6s ease, transform .6s ease;}
.reveal.in-view{opacity:1; transform:translateY(0);}
@media(prefers-reduced-motion: reduce){.reveal{opacity:1; transform:none; transition:none;}}

/* ============ HOMEPAGE — EDITORIAL REBUILD ============ */
.home-hero{background:linear-gradient(165deg, var(--navy-deep) 0%, var(--navy) 100%); color:#fff; padding:clamp(100px,14vw,150px) 0 var(--space-7); position:relative; overflow:hidden;}
.home-hero-grid{max-width:1200px; display:grid; grid-template-columns:1.1fr .9fr; gap:var(--space-6); align-items:center;}
.home-hero-copy{max-width:560px;}
.home-hero-portrait{position:relative;}
.home-hero-portrait img{width:100%; height:auto; display:block; border:1px solid rgba(255,255,255,.14); box-shadow:0 30px 60px -20px rgba(0,0,0,.5);}
.home-hero-portrait-tint{position:absolute; inset:1px; background:linear-gradient(155deg, rgba(156,122,60,.12) 0%, rgba(51,40,17,.04) 55%, rgba(212,174,92,.1) 100%); mix-blend-mode:multiply; pointer-events:none;}
@media(max-width:900px){
  .home-hero-grid{grid-template-columns:1fr;}
  .home-hero-portrait{order:-1; margin-bottom:var(--space-4);}
}
.home-hero-index{display:flex; flex-wrap:wrap; gap:0; margin-bottom:var(--space-6); font-size:.66rem; text-transform:uppercase; letter-spacing:.2em; color:rgba(255,255,255,.45); font-weight:600;}
.home-hero-index span{position:relative; padding-right:20px; margin-right:20px;}
.home-hero-index span::after{content:""; position:absolute; right:0; top:50%; transform:translateY(-50%); width:3px; height:3px; border-radius:50%; background:var(--gold);}
.home-hero-index span:last-child{padding-right:0; margin-right:0;}
.home-hero-index span:last-child::after{display:none;}
.home-hero-title{font-family:var(--serif); font-weight:400; font-size:clamp(3.4rem,9vw,7.2rem); line-height:.98; color:#fff; margin:0 0 var(--space-3); letter-spacing:-.01em;}
.home-hero-title .chrome-text{background:var(--chrome-gradient); -webkit-background-clip:text; background-clip:text; color:transparent;}
.home-hero-tagline{font-family:var(--sans); text-transform:uppercase; letter-spacing:.2em; font-size:.82rem; color:rgba(255,255,255,.72); margin:0 0 var(--space-5); font-weight:600;}
.home-hero-sub{font-size:1.12rem; color:rgba(255,255,255,.6); max-width:460px; margin-bottom:var(--space-5); line-height:1.75; font-weight:400;}

.thesis-section{background:var(--offwhite); padding:clamp(80px,14vw,150px) 0;}
.thesis-grid{display:grid; grid-template-columns:220px 1fr; gap:var(--space-4); align-items:start;}
@media(max-width:760px){.thesis-grid{grid-template-columns:1fr; gap:var(--space-3);}}
.thesis-margin{padding-top:10px;}
.thesis-quote{font-family:var(--serif); font-style:italic; font-weight:400; font-size:clamp(1.7rem,3.3vw,2.7rem); color:var(--navy); line-height:1.4; margin:0; max-width:800px;}
.thesis-attrib{display:block; margin-top:var(--space-4); font-family:var(--sans); font-style:normal; font-size:.78rem; text-transform:uppercase; letter-spacing:.1em; color:rgba(46,39,23,.5); font-weight:600;}

.destination-index-section{background:var(--white); padding:clamp(70px,10vw,120px) 0; border-top:var(--border-light); border-bottom:var(--border-light);}
.section-head-row{display:flex; justify-content:space-between; align-items:flex-end; flex-wrap:wrap; gap:16px; margin-bottom:var(--space-6);}
.section-head-row h2{margin:0; max-width:520px;}
.destination-index{border-top:1px solid rgba(46,39,23,.14);}
.dest-row{display:grid; grid-template-columns:60px 1fr 2fr 34px; align-items:center; gap:var(--space-4); padding:var(--space-4) 0; border-bottom:1px solid rgba(46,39,23,.14); transition:padding-left .3s ease;}
.dest-row:hover{padding-left:14px;}
.dest-num{font-family:var(--serif); font-style:italic; color:var(--muted-gray); font-size:1.05rem;}
.dest-name{font-family:var(--serif); font-size:clamp(1.7rem,3vw,2.5rem); font-weight:500; color:var(--navy);}
.dest-desc{font-size:.92rem; color:rgba(34,34,34,.58); max-width:440px;}
.dest-arrow{font-size:1.25rem; color:var(--gold-text); transition:transform .3s ease; text-align:right;}
.dest-row:hover .dest-arrow{transform:translateX(6px);}
@media(max-width:760px){
  .dest-row{grid-template-columns:36px 1fr; row-gap:8px; padding:var(--space-3) 0;}
  .dest-desc{grid-column:2/3;}
  .dest-arrow{display:none;}
}

.process-section{padding:clamp(80px,12vw,140px) 0;}
.process-list{margin-top:var(--space-5); border-top:1px solid rgba(255,255,255,.15);}
.proc-row{display:grid; grid-template-columns:64px 220px 1fr; gap:var(--space-4); padding:var(--space-3) 0; border-bottom:1px solid rgba(255,255,255,.15); align-items:baseline;}
.proc-row .p-num{font-family:var(--serif); font-style:italic; color:var(--silver); font-size:1.2rem;}
.proc-row h4{margin:0; font-family:var(--sans); text-transform:uppercase; letter-spacing:.09em; font-size:.82rem; color:#fff; font-weight:600;}
.proc-row p{margin:0; font-size:.88rem; color:rgba(255,255,255,.5); max-width:520px;}
@media(max-width:700px){.proc-row{grid-template-columns:1fr; row-gap:6px;}}
.process-list.light{border-top-color:rgba(46,39,23,.15);}
.process-list.light .proc-row{border-bottom-color:rgba(46,39,23,.12);}
.process-list.light .proc-row h4{color:var(--navy);}
.process-list.light .proc-row .p-num{color:var(--muted-gray);}

.founder-split-grid{display:grid; grid-template-columns:1fr 1fr; min-height:480px;}
@media(max-width:840px){.founder-split-grid{grid-template-columns:1fr;}}
.founder-media{background:linear-gradient(150deg,#3A2E17 0%,#4E3F20 60%,#3A2E17 100%); position:relative; min-height:400px;}
.founder-media::before{content:""; position:absolute; top:0; left:0; right:0; height:2px; background:var(--chrome-gradient); opacity:.5; z-index:1;}
.founder-media-photo{background-image:url('images/charlie-singh-founder.jpg'); background-size:contain; background-repeat:no-repeat; background-position:bottom center;}
.founder-media-caption{position:absolute; bottom:var(--space-3); left:var(--space-3); color:rgba(255,255,255,.55); font-size:.68rem; text-transform:uppercase; letter-spacing:.08em;}
.founder-copy{background:var(--offwhite); display:flex; flex-direction:column; justify-content:center; padding:var(--space-7) var(--space-6);}
@media(max-width:840px){.founder-copy{padding:var(--space-5) var(--space-3);}}
.founder-copy blockquote{font-family:var(--serif); font-style:italic; font-weight:400; font-size:clamp(1.4rem,2.4vw,1.8rem); color:var(--navy); line-height:1.5; margin:0 0 var(--space-3);}
.founder-copy p.founder-name{font-size:.78rem; text-transform:uppercase; letter-spacing:.1em; color:var(--gold-text); font-weight:600; margin-bottom:var(--space-3);}

.feature-split{display:grid; grid-template-columns:1.15fr 1fr; gap:var(--space-6); align-items:stretch;}
@media(max-width:840px){.feature-split{grid-template-columns:1fr;}}
.feature-media{background:linear-gradient(155deg,#3A2E17,#4E3F20 60%,#3A2E17); min-height:400px; position:relative;}
.feature-media::after{content:""; position:absolute; left:0; right:0; bottom:0; height:2px; background:var(--chrome-gradient); opacity:.5;}
.feature-copy{display:flex; flex-direction:column; justify-content:center; gap:6px;}
.feature-list-extra{margin-top:var(--space-3); border-top:1px solid rgba(46,39,23,.12);}
.feature-list-row{display:flex; justify-content:space-between; padding:12px 0; border-bottom:1px solid rgba(46,39,23,.12); font-size:.85rem;}
.feature-list-row span:first-child{color:var(--navy); font-weight:600;}
.feature-list-row span:last-child{color:rgba(34,34,34,.48); font-size:.76rem;}

.research-list{border-top:1px solid rgba(46,39,23,.14); margin-top:var(--space-4);}
.research-row{display:flex; justify-content:space-between; align-items:baseline; padding:var(--space-3) 0; border-bottom:1px solid rgba(46,39,23,.14); gap:var(--space-3);}
.research-row .r-left{display:flex; flex-direction:column; gap:5px;}
.research-row .r-cat{font-size:.66rem; text-transform:uppercase; letter-spacing:.1em; color:var(--gold-text); font-weight:600;}
.research-row .r-title{font-family:var(--serif); font-size:1.3rem; color:var(--navy); font-weight:500;}
.research-row .r-date{font-size:.74rem; color:rgba(34,34,34,.42); white-space:nowrap;}
.research-row .r-arrow{font-size:1rem; color:var(--navy); flex-shrink:0;}
