:root{
  --bg:#0A0F1E;
  --panel:#121A2E;
  --panel-2:#161F38;
  --line:#233052;
  --line-soft:#1B2540;
  --accent:#2D6BE4;
  --accent-soft:#4A7FE8;
  --text:#E8ECF5;
  --muted:#9AA7C2;
  --s1:8px; --s2:16px; --s3:24px; --s4:40px; --s5:64px; --s6:96px; --s7:128px;
  --wrap:1180px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:'Raleway',system-ui,sans-serif;
  color:var(--text);
  background:var(--bg);
  line-height:1.65;
  font-size:16.5px;
  -webkit-font-smoothing:antialiased;
}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--s3)}

/* NAV */
.nav{position:sticky;top:0;z-index:50;background:rgba(10,15,30,.9);backdrop-filter:blur(10px);border-bottom:1px solid var(--line-soft)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:66px}
.nav .mark{font-family:'Cormorant Garamond',serif;font-size:23px;color:#fff;letter-spacing:.02em}
.nav ul{display:flex;gap:var(--s3);list-style:none;flex-wrap:wrap}
.nav a{text-decoration:none;color:var(--muted);font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;font-weight:500}
.nav a:hover,.nav a:focus{color:var(--accent-soft)}

/* HERO */
.hero{padding:var(--s7) 0 var(--s6);border-bottom:1px solid var(--line-soft);background:linear-gradient(180deg,#0C1324 0%,var(--bg) 100%)}
.hero h1{font-family:'Outfit',sans-serif;font-weight:600;font-size:clamp(46px,7vw,84px);line-height:1.02;color:#fff;letter-spacing:-.02em}
.hero h1 em{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:400}
.hero .strap{margin-top:var(--s3);font-size:15px;color:var(--muted);max-width:62ch;line-height:1.75}
.hero .tag{margin-top:var(--s2);font-family:'Cormorant Garamond',serif;font-style:italic;font-size:23px;color:var(--text)}
.hero .rule{width:60px;height:2px;background:var(--accent);margin-top:var(--s4)}

/* SECTION */
.section{padding:var(--s6) 0;border-bottom:1px solid var(--line-soft)}
.section--alt{background:var(--panel)}
.eyebrow{font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--accent-soft);font-weight:600;margin-bottom:var(--s2)}
.h2{margin-top:0;font-family:'Outfit',sans-serif;font-weight:600;font-size:clamp(34px,4.6vw,52px);line-height:1.08;color:#fff;margin-bottom:var(--s4);letter-spacing:-.01em}
.h2 em{font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:400;color:var(--text)}
.lede{max-width:74ch}
.lede p{margin-bottom:var(--s3);color:var(--text)}
.lede p:last-child{margin-bottom:0}

/* CAREER */
.employer{margin-top:var(--s5)}
.employer:first-of-type{margin-top:0}
.employer-head{display:flex;align-items:baseline;gap:var(--s2);border-bottom:1px solid var(--accent);padding-bottom:var(--s1);margin-bottom:var(--s4)}
.employer-head h2{font-family:'Outfit',sans-serif;font-weight:600;font-size:21px;color:#fff}
.employer-head span{font-size:13px;color:var(--muted)}
.role{padding:var(--s4) 0;border-bottom:1px solid var(--line-soft)}
.role:last-child{border-bottom:none}
.role-dates{font-family:'Outfit',sans-serif;font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-soft);font-weight:500}
.role-title{font-family:'Outfit',sans-serif;font-size:19px;font-weight:500;color:#fff;margin-top:var(--s1);line-height:1.35}
.stats{display:flex;flex-wrap:wrap;gap:var(--s1) var(--s2);margin-top:var(--s2)}
.stat{font-family:'Outfit',sans-serif;font-size:12.5px;color:var(--text);background:var(--panel-2);border:1px solid var(--line);border-radius:3px;padding:6px 12px;white-space:nowrap}
.section--alt .stat{background:#0E1729}
.mandate{margin-top:var(--s3);max-width:78ch;color:var(--muted)}
.role ul{list-style:none;margin-top:var(--s3);max-width:78ch}
.role li{position:relative;padding-left:22px;margin-bottom:var(--s2);line-height:1.62;color:var(--text)}
.role li:last-child{margin-bottom:0}
.role li::before{content:"";position:absolute;left:0;top:11px;width:6px;height:6px;background:var(--accent)}

/* CARDS */
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:var(--s3)}
.card{background:var(--panel-2);border:1px solid var(--line);border-radius:4px;padding:var(--s3)}
.card .chip{width:38px;height:38px;border:1px solid var(--line);border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--accent-soft);font-family:'Outfit',sans-serif;font-size:13px;font-weight:600;margin-bottom:var(--s2)}
.card h3{font-family:'Outfit',sans-serif;font-size:17px;font-weight:600;color:#fff;margin-bottom:var(--s1);line-height:1.35}
.card p{font-size:15px;color:var(--muted);line-height:1.62}

/* PRINCIPLES */
.principle{padding:var(--s4) 0;border-bottom:1px solid var(--line-soft);display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s2)}
.principle:last-child{border-bottom:none}
@media(min-width:880px){.principle{grid-template-columns:300px minmax(0,1fr);gap:var(--s4)}}
.principle h3{font-family:'Outfit',sans-serif;font-weight:600;font-size:17px;line-height:1.35;color:#fff;display:block}
.principle .body{max-width:74ch}
.principle .evidence{color:var(--text)}
.principle .draw{margin-top:var(--s2);color:var(--muted)}

/* PAIRS */
.pairs{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:var(--s3)}
.pair{border-left:2px solid var(--accent);padding-left:var(--s2)}
.pair .label{font-family:'Outfit',sans-serif;font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--accent-soft);font-weight:600}
.pair h3{font-family:'Outfit',sans-serif;font-size:17px;font-weight:600;color:#fff;margin-bottom:var(--s1);line-height:1.35}
.pair p{font-size:15px;color:var(--muted);line-height:1.62}

/* QUOTES */
.quotes{display:grid;gap:var(--s4)}
.quote{border-left:2px solid var(--accent);padding-left:var(--s3)}
.quote blockquote{font-family:'Cormorant Garamond',serif;font-size:clamp(21px,2.4vw,29px);font-style:italic;line-height:1.42;color:#fff}
.quote cite{display:block;margin-top:var(--s2);font-family:'Outfit',sans-serif;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-style:normal}

/* MEDIA */
.media-list{border-top:1px solid var(--line-soft)}
.media-item{display:grid;grid-template-columns:minmax(0,1fr);gap:4px;padding:var(--s3) 0;border-bottom:1px solid var(--line-soft)}
@media(min-width:880px){.media-item{grid-template-columns:210px minmax(0,1fr) 100px;align-items:baseline;gap:var(--s3)}}
.media-item .outlet{font-family:'Outfit',sans-serif;font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-soft);font-weight:500}
.media-item .headline{font-size:17px;line-height:1.45;color:#fff}
.media-item .headline span{display:block;font-size:14px;color:var(--muted);margin-top:3px}
.media-item a{color:var(--accent-soft);text-decoration:none;font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;font-weight:600;white-space:nowrap}
.media-item a:hover{color:#fff}

/* CONTACT */
.contact-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s5)}
@media(min-width:920px){.contact-grid{grid-template-columns:1fr 1fr;gap:var(--s6)}}
label{display:block;font-family:'Outfit',sans-serif;font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:6px;font-weight:500}
input,select,textarea{width:100%;padding:12px 13px;border:1px solid var(--line);border-radius:3px;font-family:inherit;font-size:15px;margin-bottom:var(--s2);background:#0E1729;color:var(--text)}
input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:1px}
.btn{background:var(--accent);color:#fff;border:none;padding:14px 32px;font-family:'Outfit',sans-serif;font-size:13.5px;letter-spacing:.09em;text-transform:uppercase;cursor:pointer;border-radius:3px;width:auto;font-weight:600}
.btn:hover{background:var(--accent-soft)}

/* FOOTER */
.foot{background:#080C18;color:var(--muted);padding:var(--s5) 0 var(--s4);font-size:14px}
.foot-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--s4);margin-bottom:var(--s4)}
.foot h6{font-family:'Outfit',sans-serif;color:#fff;font-size:11.5px;letter-spacing:.15em;text-transform:uppercase;margin-bottom:var(--s2);font-weight:600}
.foot ul{list-style:none}
.foot li{margin-bottom:8px}
.foot a{color:var(--muted);text-decoration:none}
.foot a:hover{color:#fff}
.foot .legal{border-top:1px solid var(--line-soft);padding-top:var(--s3);font-size:13px}


/* SHARED CHIP + HOVER */
.chip{width:38px;height:38px;border:1px solid var(--line);border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--accent-soft);font-family:'Outfit',sans-serif;font-size:13px;font-weight:600;margin-bottom:var(--s2);transition:background .22s ease,border-color .22s ease,color .22s ease}
.card,.pair,.quote,.media-item{transition:border-color .22s ease,background .22s ease}
.card:hover,.pair:hover,.quote:hover,.media-item:hover{border-color:var(--accent)}
.card:hover .chip,.pair:hover .chip,.quote:hover .chip,.media-item:hover .chip{background:var(--accent);border-color:var(--accent);color:#fff}
.card:focus-within .chip,.pair:focus-within .chip,.media-item:focus-within .chip{background:var(--accent);border-color:var(--accent);color:#fff}

/* PAIRS AS PANELS */
.pair{background:var(--panel-2);border:1px solid var(--line);border-radius:4px;padding:var(--s3)}
.section--alt .pair{background:#0E1729}
.pair .label{margin-bottom:6px}

/* QUOTES AS PANELS */
.quotes{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr));gap:var(--s3)}
.quote{background:var(--panel-2);border:1px solid var(--line);border-left:1px solid var(--line);border-radius:4px;padding:var(--s3)}
.section--alt .quote{background:#0E1729}
.quote blockquote{font-size:clamp(19px,2vw,23px)}

/* MEDIA ITEMS */
.media-item{border:1px solid var(--line);border-radius:4px;padding:var(--s3);margin-bottom:var(--s2);background:var(--panel-2)}
.section--alt .media-item{background:#0E1729}
.media-list{border-top:none}
@media(min-width:880px){.media-item{grid-template-columns:56px 200px minmax(0,1fr) 100px;align-items:start;gap:var(--s3)}}
.media-item .chip{margin-bottom:0}


/* ROLE ROWS, EXPANDABLE */
.role{border:1px solid var(--line);border-radius:4px;background:var(--panel-2);margin-bottom:var(--s2);padding:0;transition:border-color .22s ease}
.section--alt .role{background:#0E1729}
.role:last-child{border-bottom:1px solid var(--line)}
.role:hover{border-color:var(--accent)}
.role summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:56px minmax(0,1fr) 84px;align-items:center;gap:var(--s3);padding:var(--s3)}
.role summary::-webkit-details-marker{display:none}
.role summary:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.role:hover .chip,.role[open] .chip{background:var(--accent);border-color:var(--accent);color:#fff}
.role .chip{margin-bottom:0}
.role-meta .role-dates{margin-bottom:2px}
.role .expand{font-family:'Outfit',sans-serif;font-size:12.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--accent-soft);font-weight:600;text-align:right;white-space:nowrap}
.role .expand::after{content:"View +"}
.role[open] .expand::after{content:"Close -"}
.role-body{padding:0 var(--s3) var(--s3) calc(56px + var(--s3) + var(--s3))}
@media(max-width:700px){
  .role summary{grid-template-columns:44px minmax(0,1fr);gap:var(--s2)}
  .role .expand{grid-column:2;text-align:left;margin-top:4px}
  .role-body{padding:0 var(--s3) var(--s3) var(--s3)}
}
.role-body .stats{margin-top:0;margin-bottom:var(--s3)}


/* stats visible when closed */
.role summary .stats{margin-top:var(--s2)}
.role summary{align-items:start}
.role .chip{margin-top:2px}
.role .expand{margin-top:2px}
.role-body{padding-top:0}


/* PROGRESSION CONNECTOR */
.employer{position:relative}
.role{position:relative}
.role::before{content:"";position:absolute;left:calc(var(--s3) + 19px);top:0;bottom:0;width:1px;background:var(--line);z-index:0}
.role:first-of-type::before{top:calc(var(--s3) + 19px)}
.role:last-of-type::before{bottom:calc(100% - var(--s3) - 19px)}
.role summary{position:relative;z-index:1}
.role .chip{position:relative;z-index:2;background:var(--panel-2)}
.section--alt .role .chip{background:#0E1729}
.role:hover .chip,.role[open] .chip{background:var(--accent)}
@media(max-width:700px){.role::before{left:calc(var(--s3) + 22px)}}


/* HERO SCALE UP */
.hero .strap{font-size:clamp(17px,1.9vw,21px);max-width:70ch;line-height:1.6;color:#C3CEE6}
.hero .tag{font-size:clamp(26px,3.1vw,34px);line-height:1.3}

/* UNIFORM CLICK AND HOVER TREATMENT */
.pair,.quote,.media-item,.card,.role{cursor:pointer}
.pair:hover,.quote:hover,.media-item:hover,.card:hover,.role:hover{border-color:var(--accent)}
.pair:active,.quote:active,.media-item:active,.card:active,.role:active,
.pair:focus-within,.quote:focus-within,.media-item:focus-within,.card:focus-within,.role[open]{
  border-color:var(--accent);
  box-shadow:inset 0 0 0 1px var(--accent);
}
.pair .label,.media-item .outlet{transition:color .22s ease}
.pair:hover .label,.media-item:hover .outlet{color:#fff}

/* label squares on pairs, matching the chip device */
.pair .label{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:30px;padding:0 10px;border:1px solid var(--line);border-radius:8px;color:var(--accent-soft);margin-bottom:var(--s2);transition:background .22s ease,border-color .22s ease,color .22s ease}
.pair:hover .label{background:var(--accent);border-color:var(--accent);color:#fff}


/* CHIPS FILLED BY DEFAULT */
.chip{background:var(--accent);border-color:var(--accent);color:#fff}
.card:hover .chip,.pair:hover .chip,.quote:hover .chip,.media-item:hover .chip,
.role:hover .chip,.role[open] .chip{background:var(--accent-soft);border-color:var(--accent-soft);color:#fff}
.section--alt .role .chip,.role .chip{background:var(--accent)}
.role:hover .chip,.role[open] .chip{background:var(--accent-soft)}

/* CONNECTOR STRONGER */
.role::before{background:var(--accent);opacity:.55;width:2px;left:calc(var(--s3) + 18px)}
@media(max-width:700px){.role::before{left:calc(var(--s3) + 21px)}}


/* CHIP FILL, HIGH SPECIFICITY SO NOTHING OVERRIDES IT */
.card .chip,.pair .chip,.quote .chip,.media-item .chip,.role .chip,
.section .card .chip,.section .pair .chip,.section .quote .chip,
.section .media-item .chip,.section .role .chip,
.section--alt .card .chip,.section--alt .pair .chip,.section--alt .quote .chip,
.section--alt .media-item .chip,.section--alt .role .chip{
  background:var(--accent);
  border:1px solid var(--accent);
  color:#fff;
}
.section .card:hover .chip,.section .pair:hover .chip,.section .quote:hover .chip,
.section .media-item:hover .chip,.section .role:hover .chip,.section .role[open] .chip,
.section--alt .card:hover .chip,.section--alt .pair:hover .chip,.section--alt .quote:hover .chip,
.section--alt .media-item:hover .chip,.section--alt .role:hover .chip,.section--alt .role[open] .chip{
  background:var(--accent-soft);
  border-color:var(--accent-soft);
  color:#fff;
}


/* PANELS ALWAYS LIFT ABOVE THEIR SECTION */
.section .card,.section .pair,.section .quote,.section .media-item,.section .role{background:#161F38}
.section--alt .card,.section--alt .pair,.section--alt .quote,
.section--alt .media-item,.section--alt .role{background:#1C2745}
.section .stat{background:#0E1729;border-color:#2A3760}
.section--alt .stat{background:#131C33;border-color:#31406B}
.section--alt{background:#0E1526}
.section .card,.section .pair,.section .quote,.section .media-item,.section .role,
.section--alt .card,.section--alt .pair,.section--alt .quote,
.section--alt .media-item,.section--alt .role{border-color:#2A3760}


/* PRINCIPLES AS PANELS */
.principle{background:#161F38;border:1px solid #2A3760;border-radius:4px;padding:var(--s3);margin-bottom:var(--s2);align-items:start}
.section--alt .principle{background:#1C2745}
.principle:last-child{border-bottom:1px solid #2A3760}
.principle h3{margin-top:var(--s2)}
.principle .chip{margin-bottom:0}
.p-head{display:block}

/* RESTORE HOVER AND CLICK OUTLINES, HIGHEST SPECIFICITY LAST */
.section .card:hover,.section .pair:hover,.section .quote:hover,.section .media-item:hover,
.section .role:hover,.section .principle:hover,
.section--alt .card:hover,.section--alt .pair:hover,.section--alt .quote:hover,
.section--alt .media-item:hover,.section--alt .role:hover,.section--alt .principle:hover{
  border-color:var(--accent);
}
.section .role[open],.section--alt .role[open],
.section .card:focus-within,.section--alt .card:focus-within,
.section .media-item:focus-within,.section--alt .media-item:focus-within{
  border-color:var(--accent);
  box-shadow:inset 0 0 0 1px var(--accent);
}
.section .principle:hover .chip,.section--alt .principle:hover .chip{background:var(--accent-soft);border-color:var(--accent-soft)}
.section .principle .chip,.section--alt .principle .chip{background:var(--accent);border:1px solid var(--accent);color:#fff}


/* NAV MONOGRAM */
.nav .mark{display:inline-flex;align-items:center;line-height:0;text-decoration:none;border-radius:10px}
.nav .mark svg{display:block;border-radius:10px;transition:transform .22s ease}
.nav .mark:hover svg rect{fill:#141C33}
.nav .mark:hover svg{transform:translateY(-1px)}
.nav .mark:focus-visible{outline:2px solid var(--accent);outline-offset:3px}


/* PRINCIPLE BODY TEXT TO MATCH CARDS */
.principle .body p{font-size:15px;line-height:1.62}
.principle .evidence{color:var(--text)}
.principle .draw{color:var(--muted)}
.mandate{font-size:15px}
.role li{font-size:15px}
.lede p{font-size:16.5px}


/* EMPLOYER NAMES LARGER */
.employer-head{border-bottom:2px solid var(--accent);padding-bottom:var(--s2);margin-bottom:var(--s3)}
.employer-head h2{font-family:'Outfit',sans-serif;font-weight:600;font-size:clamp(26px,3vw,36px);color:#fff;letter-spacing:-.01em;line-height:1.1}
.employer{margin-top:var(--s6)}
.employer:first-of-type{margin-top:0}


/* HERO PORTRAIT */
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s4);align-items:center}
@media(min-width:900px){.hero-grid{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:var(--s6)}}
.hero-portrait{position:relative}
.hero-portrait img{width:100%;height:auto;display:block;border-radius:6px;border:1px solid var(--line);object-fit:cover;aspect-ratio:13/16}
.hero-portrait::after{content:"";position:absolute;left:-10px;bottom:-10px;width:64px;height:64px;border-left:2px solid var(--accent);border-bottom:2px solid var(--accent);border-bottom-left-radius:6px}
@media(max-width:899px){.hero-portrait{max-width:320px}.hero-grid{gap:var(--s5)}}


/* HERO WITH FADED PHOTO */





.hero-inner{position:relative;z-index:2}
.hero h1{max-width:16ch}
.hero .strap,.hero .tag{max-width:52ch}
@media(max-width:899px){
  .hero{min-height:auto;padding:var(--s6) 0 var(--s5)}
  
  
  .hero .strap,.hero .tag{max-width:none}
}


/* SPLIT HERO */
.hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr);min-height:auto;padding:0;overflow:hidden;background:var(--bg);border-bottom:1px solid var(--line-soft)}
@media(min-width:900px){.hero{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);min-height:82vh}}
.hero-left{position:relative;display:flex;align-items:center;background:var(--bg);padding:var(--s6) var(--s3) var(--s6) 0;z-index:2}
.hero-left::before{content:"";position:absolute;top:-15%;left:-25%;width:90%;height:130%;
  background:radial-gradient(ellipse at 40% 50%, rgba(26,58,143,.55) 0%, transparent 62%);pointer-events:none}
.hero-inner{position:relative;z-index:2;max-width:var(--wrap);margin-left:auto;padding-left:var(--s3);width:100%}
@media(min-width:1180px){.hero-inner{padding-left:calc((100vw - var(--wrap))/2 + var(--s3));max-width:none}}
.hero h1{max-width:none;margin-bottom:var(--s2)}
.hero .strap{max-width:30ch;margin-top:var(--s2)}
.hero .tag{max-width:34ch}
.hero-right{position:relative;min-height:52vh}
@media(min-width:900px){.hero-right{min-height:auto}}
.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:58% 16%;display:block;opacity:1}
.hero-right::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(90deg,#0A0F1E 0%, rgba(10,15,30,.55) 14%, rgba(10,15,30,0) 34%)}
.hero-right::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(180deg,rgba(10,15,30,.35) 0%, rgba(10,15,30,0) 22%, rgba(10,15,30,0) 72%, rgba(10,15,30,.55) 100%)}
@media(max-width:899px){
  .hero-left{padding:var(--s6) 0 var(--s4) 0;order:2}
  .hero-right{order:1;min-height:46vh}
  .hero-right::before{background:linear-gradient(180deg,rgba(10,15,30,0) 40%, #0A0F1E 100%)}
  .hero-inner{padding-left:var(--s3);padding-right:var(--s3)}
  .hero .strap,.hero .tag{max-width:none}
}


/* WAVE DIVIDERS */
.wave{position:relative;width:100%;height:40px;overflow:hidden;pointer-events:none;margin-bottom:var(--s5)}
.wave svg{display:block;width:100%;height:40px}
.wave path{fill:none;stroke:var(--accent);stroke-width:1;opacity:.42;vector-effect:non-scaling-stroke}
.wave circle{fill:var(--accent-soft);opacity:.7}
.section{padding-top:0}
.section .wrap{padding-top:0}
.wave-nav{margin-bottom:0;height:34px;background:rgba(8,13,24,.85);border-bottom:1px solid var(--line-soft)}
.wave-nav svg{height:34px}
.wave-nav path{opacity:.55}

/* HERO BLOB SHAPES */
.hero-left::after{content:"";position:absolute;right:-4%;top:8%;width:46%;height:84%;z-index:0;pointer-events:none;
  background:
    radial-gradient(ellipse at 70% 30%, rgba(45,107,228,.22) 0%, transparent 58%),
    radial-gradient(ellipse at 30% 78%, rgba(26,58,143,.30) 0%, transparent 60%);
  border-radius:48% 52% 40% 60% / 55% 42% 58% 45%;
  filter:blur(6px)}


/* HERO RIGHT, EXPLICIT HEIGHT SO THE CELL CANNOT COLLAPSE */
.hero-right{position:relative;min-height:52vh}
@media(min-width:900px){.hero-right{min-height:82vh}}
.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:58% 16%;display:block;opacity:1;z-index:0}


/* BLOB TONED DOWN, SMALLER AND FURTHER RIGHT */
.hero-left::after{content:"";position:absolute;right:-14%;top:22%;width:34%;height:52%;z-index:0;pointer-events:none;
  background:
    radial-gradient(ellipse at 65% 35%, rgba(45,107,228,.16) 0%, transparent 60%),
    radial-gradient(ellipse at 35% 75%, rgba(26,58,143,.20) 0%, transparent 62%);
  border-radius:48% 52% 40% 60% / 55% 42% 58% 45%;
  filter:blur(10px)}
.hero-left::before{background:radial-gradient(ellipse at 34% 52%, rgba(26,58,143,.38) 0%, transparent 60%)}

/* IMAGE FALLBACK, ALT TEXT NEVER SPILLS ACROSS THE HERO */
.hero-photo{color:transparent;font-size:0;background:#0E1526}
.hero-right{background:#0E1526}

@media (prefers-reduced-motion:reduce){*{animation:none;transition:none}.chip{transition:none}html{scroll-behavior:auto}}
.faq-cards{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:stretch}
@media(min-width:1000px){.faq-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}
.faq-card{padding:var(--s3);display:flex;flex-direction:column}
.faq-card .faq-cat{font-family:'Outfit',sans-serif;font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;color:#fff;font-weight:500;margin:0 0 var(--s2)}
.faq-item{border-top:1px solid var(--line);padding:14px 0 0;margin-top:14px}
.faq-item:first-of-type{border-top:none;margin-top:0;padding-top:0}
.faq-item summary{cursor:pointer;list-style:none;display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";font-family:'Outfit',sans-serif;font-size:16px;line-height:1.5;color:var(--accent);flex:0 0 auto;transition:color .22s ease}
.faq-item[open] summary::after{content:"\2013"}
.faq-card details.faq-item .faq-q{font-family:'Raleway',system-ui,sans-serif;font-size:15px;line-height:1.5;font-weight:400;color:var(--accent-soft);margin:0;transition:color .22s ease}
.faq-card details.faq-item summary:hover .faq-q{color:#fff}
.faq-card details.faq-item[open] .faq-q{color:#fff}
.faq-item summary:hover::after{color:#fff}
.faq-item[open] summary::after{color:#fff}
.faq-card .faq-a{font-family:'Raleway',system-ui,sans-serif;font-size:13.5px;line-height:1.6;font-weight:400;color:var(--muted);margin:8px 0 0}
.faq-card .faq-a + .faq-a{margin-top:10px}
.faq-card .faq-a:last-child{margin-bottom:4px}
.form-note{font-size:13px;line-height:1.5;margin:var(--s2) 0 0;min-height:1.2em}
.form-note--err{color:#FF9B9B}
.form-note--ok{color:#8FD3A8}

/* UNIFIED HOVER, MODELLED ON THE MEDIA SECTION */
.card,.pair,.quote,.principle,.media-item,.role{
  transition:border-color .22s ease,background .22s ease,box-shadow .22s ease;
}
.section .card:hover,.section .pair:hover,.section .quote:hover,.section .principle:hover,
.section .media-item:hover,.section .role:hover,
.section--alt .card:hover,.section--alt .pair:hover,.section--alt .quote:hover,
.section--alt .principle:hover,.section--alt .media-item:hover,.section--alt .role:hover{
  border-color:var(--accent-soft);
  box-shadow:0 0 0 1px rgba(74,127,232,.22),0 10px 30px rgba(45,107,228,.10);
}
.card:hover h3,.pair:hover h3,.principle:hover h3,.media-item:hover .headline,.role:hover .role-title{
  color:#fff;
}
.card:hover .label,.pair:hover .label,.media-item:hover .outlet,
.principle:hover .eyebrow,.faq-card:hover .faq-cat{
  color:#fff;
  transition:color .22s ease;
}
.section-note{font-size:14px;line-height:1.6;color:var(--muted);margin:calc(var(--s2) * -1) 0 var(--s4);max-width:60ch}
.role-note{font-family:'Outfit',sans-serif;font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-soft);font-weight:600;margin:var(--s2) 0 var(--s2)}
/* Mobile navigation: hamburger toggle + dropdown (<=700px) */
.nav-toggle{display:none;position:relative;width:44px;height:44px;padding:0;margin:0;background:transparent;border:1px solid var(--line-soft);border-radius:10px;cursor:pointer;flex:0 0 auto;align-items:center;justify-content:center}
.nav-toggle-bar{display:block;position:absolute;left:50%;width:22px;height:2px;background:var(--accent-soft);border-radius:2px;transform:translateX(-50%);transition:transform .25s ease,opacity .2s ease,top .25s ease}
.nav-toggle-bar:nth-child(1){top:15px}
.nav-toggle-bar:nth-child(2){top:21px}
.nav-toggle-bar:nth-child(3){top:27px}
.nav-toggle[aria-expanded="true"] .nav-toggle-bar:nth-child(1){top:21px;transform:translateX(-50%) rotate(45deg)}
.nav-toggle[aria-expanded="true"] .nav-toggle-bar:nth-child(2){opacity:0}
.nav-toggle[aria-expanded="true"] .nav-toggle-bar:nth-child(3){top:21px;transform:translateX(-50%) rotate(-45deg)}
.nav-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
@media(max-width:700px){
  .nav .wrap{position:relative}
  .nav-toggle{display:inline-flex}
  .nav ul{position:absolute;top:calc(100% + 1px);right:0;left:0;flex-direction:column;flex-wrap:nowrap;gap:0;background:rgba(10,15,30,.98);backdrop-filter:blur(10px);border-bottom:1px solid var(--line-soft);box-shadow:0 12px 28px rgba(0,0,0,.35);padding:var(--s1) 0;max-height:0;overflow:hidden;opacity:0;visibility:hidden;transition:max-height .3s ease,opacity .25s ease,visibility .25s ease}
  .nav ul.open{max-height:80vh;opacity:1;visibility:visible;overflow:auto}
  .nav ul li{width:100%}
  .nav ul li a{display:block;padding:14px var(--s3);font-size:13px;border-bottom:1px solid var(--line-soft)}
  .nav ul li:last-child a{border-bottom:0}
  .nav ul li a:hover,.nav ul li a:focus{background:rgba(45,107,228,.12)}
}
