@font-face{font-family:'Tiempos Headline';src:url(fonts/tiempos-headline-regular.woff2) format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Tiempos Headline';src:url(fonts/tiempos-headline-regular-italic.woff2) format('woff2');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:'Tiempos Text';src:url(fonts/tiempos-text-regular.woff2) format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Söhne';src:url(fonts/soehne-buch.woff2) format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Söhne';src:url(fonts/soehne-kraftig.woff2) format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Söhne';src:url(fonts/soehne-halbfett.woff2) format('woff2');font-weight:600 700;font-style:normal;font-display:swap}

:root{
  --navy:#261F46;--deep-navy:#1A1628;--orange:#F09221;--orange-deep:#A85F0E;
  --sage:#7EB9A6;--sage-ink:#2a6b57;--lavender:#AAA6DC;
  --paper:#FBF8F3;--paper-deep:#F4EFE3;--white:#fff;--rule:#E8E2D5;
  --peach:#FDF0E0;--lilac:#F6F5FF;--mint:#E3FFF8;
  --ink:#261F46;--ink-2:#4F4966;--ink-3:#6C6781;
  /* evidence roles */
  --ev-acc:#261F46;--ev-acc-bg:#E9E7F5;
  --ev-ver:#2a6b57;--ev-ver-bg:#DDF2EA;
  --ev-vch:#A85F0E;--ev-vch-bg:#FCE9D2;
  --ev-sta:#6C6781;--ev-sta-bg:#EFEBE3;
  --serif:'Tiempos Headline',Georgia,serif;--serif-text:'Tiempos Text','Tiempos Headline',Georgia,serif;
  --sans:'Söhne',system-ui,-apple-system,'Segoe UI',Arial,sans-serif;
  --r:20px;--r-sm:12px;--wrap:1200px;--sec:clamp(3.5rem,7vw,6rem);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:120px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:1rem;line-height:1.6;-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums}
img{display:block;max-width:100%;height:auto}
a{color:inherit}h1,h2,h3,h4,p{margin:0}p{max-width:62ch}
button{font:inherit;color:inherit}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 clamp(1.15rem,4vw,2.5rem)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
:focus-visible{outline:2px solid var(--orange);outline-offset:3px;border-radius:6px}

/* type */
.eyebrow{font-weight:600;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--sage-ink);margin-bottom:.85rem;display:flex;align-items:center;gap:.6rem}
.eyebrow .n{color:var(--ink-3);font-weight:500;letter-spacing:.1em}
.h2{font-family:var(--serif);font-weight:400;font-size:clamp(1.9rem,3.4vw,2.8rem);line-height:1.08;letter-spacing:-.018em;color:var(--navy)}
.h2 em,.name em{font-style:italic;color:var(--orange)}
.lede{font-family:var(--serif-text);font-size:clamp(1.05rem,1.4vw,1.2rem);line-height:1.55;color:var(--ink-2);max-width:52ch}
.small{font-size:.84rem;color:var(--ink-3);line-height:1.5}
.k{font-size:.66rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--ink-3)}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:.5rem;font:500 .92rem/1 var(--sans);padding:.82rem 1.25rem;border-radius:999px;border:1px solid transparent;text-decoration:none;cursor:pointer;transition:background .2s,color .2s,border-color .2s;white-space:nowrap;background:none}
.btn-sm{padding:.58rem .95rem;font-size:.84rem}
.btn-navy{background:var(--navy);color:var(--paper)}.btn-navy:hover{background:var(--orange);color:var(--deep-navy)}
.btn-line{background:var(--white);color:var(--navy);border-color:var(--rule)}.btn-line:hover{border-color:var(--navy)}
.btn-light{background:var(--paper);color:var(--navy)}.btn-light:hover{background:var(--orange);color:var(--deep-navy)}
.btn-ghost-light{color:var(--paper);border-color:rgba(251,248,243,.28)}.btn-ghost-light:hover{border-color:var(--paper)}
.text-link{background:none;border:0;padding:0 0 2px;font:600 .88rem/1.3 var(--sans);color:var(--navy);text-decoration:none;border-bottom:1px solid var(--rule);cursor:pointer;white-space:nowrap}
.text-link:hover{border-color:var(--navy)}
.arrow{display:inline-block;transition:transform .2s}.btn:hover .arrow,.text-link:hover .arrow{transform:translateX(3px)}

/* evidence chips + dots */
.ev{display:inline-flex;align-items:center;gap:.35rem;font:600 .66rem/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;padding:.36rem .55rem .34rem;border-radius:999px;white-space:nowrap;border:1px solid transparent}
.ev::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;flex:none}
.ev-acc{color:var(--ev-acc);background:var(--ev-acc-bg)}
.ev-ver{color:var(--ev-ver);background:var(--ev-ver-bg)}
.ev-vch{color:var(--ev-vch);background:var(--ev-vch-bg)}
.ev-sta{color:var(--ev-sta);background:transparent;border:1px dashed #BDB6A8}
.ev-sta::before{background:transparent;border:1.5px solid currentColor;width:6px;height:6px}
.dot{display:inline-block;width:8px;height:8px;border-radius:50%;vertical-align:middle;margin-left:.35rem;position:relative;top:-1px}
.dot.acc{background:var(--ev-acc)}.dot.ver{background:var(--ev-ver)}.dot.vch{background:var(--orange)}.dot.sta{border:1.5px solid var(--ev-sta)}

/* evidence lens — highlighter */
[data-ev]{transition:background-color .25s,box-shadow .25s,padding .25s}
body.lens [data-ev="acc"]{background-image:linear-gradient(transparent 58%,var(--ev-acc-bg) 58%)}
body.lens [data-ev="ver"]{background-image:linear-gradient(transparent 58%,var(--ev-ver-bg) 58%)}
body.lens [data-ev="vch"]{background-image:linear-gradient(transparent 58%,#FBDDB8 58%)}
body.lens [data-ev="sta"]{background-image:linear-gradient(transparent 92%,#C9C2B4 92%)}
/* blocks: coloured left rule instead of highlighter */
body.lens :is(.card,.row,.tile,.open-cell,.bio,.lab,li,.tag,b)[data-ev]{background-image:none}
body.lens :is(.card,.row,.tile,.open-cell)[data-ev="acc"]{box-shadow:inset 4px 0 0 var(--ev-acc)}
body.lens :is(.card,.row,.tile,.open-cell)[data-ev="ver"]{box-shadow:inset 4px 0 0 var(--sage)}
body.lens :is(.card,.row,.tile,.open-cell)[data-ev="vch"]{box-shadow:inset 4px 0 0 var(--orange)}
body.lens :is(.card,.row,.tile,.open-cell)[data-ev="sta"]{box-shadow:inset 4px 0 0 #C9C2B4}
body.lens :is(.bio,.lab,li)[data-ev]{padding-left:.7rem;box-shadow:inset 3px 0 0 #C9C2B4}
body.lens :is(.bio,.lab,li)[data-ev="acc"]{box-shadow:inset 3px 0 0 var(--ev-acc)}
body.lens :is(.bio,.lab,li)[data-ev="ver"]{box-shadow:inset 3px 0 0 var(--sage)}
body.lens .tag[data-ev="acc"]{background:var(--ev-acc-bg);border-color:var(--ev-acc-bg)}
body.lens .tag[data-ev="sta"]{border-style:dashed;border-color:#BDB6A8;background:transparent}
body.lens b[data-ev="sta"]{box-shadow:inset 0 -2px 0 #C9C2B4}
body.lens .q.peer[data-ev]{box-shadow:inset 4px 0 0 var(--orange)}

/* ───────── top strip + header ───────── */
.strip{background:var(--deep-navy);color:rgba(251,248,243,.78);font-size:.76rem}
.strip .wrap{display:flex;align-items:center;gap:.7rem;min-height:34px}
.strip img{width:12px;height:auto}
.strip b{color:var(--paper);font-weight:600;letter-spacing:.14em;font-size:.66rem}
.strip a{color:var(--sage);text-decoration:underline;text-underline-offset:2px}
.strip .sep{opacity:.35}
.hdr{background:var(--paper);border-bottom:1px solid var(--rule)}
.hdr .wrap{display:flex;align-items:center;justify-content:space-between;min-height:68px;gap:1rem}
.logo{display:flex;align-items:center;gap:.65rem;text-decoration:none}
.logo img{width:30px;height:30px}
.logo .wm{font-weight:600;letter-spacing:.2em;font-size:.78rem}
.logo .tag{white-space:nowrap;font-size:.66rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--sage-ink);border-left:1px solid var(--rule);padding-left:.65rem}
.hdr nav{display:flex;align-items:center;gap:1.4rem}
.hdr nav a.l{font-size:.86rem;text-decoration:none;color:var(--ink-2)}
.hdr nav a.l:hover{color:var(--navy)}

/* ───────── record masthead ───────── */
.mast{padding:clamp(1.6rem,3.5vw,2.6rem) 0 clamp(2.4rem,5vw,3.4rem);border-bottom:1px solid var(--rule)}
.mast+.subnav+section.s{padding-top:clamp(3rem,6vw,4.5rem)}
.meta{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem 1.4rem;padding:.7rem 0;border-top:1px solid var(--navy);border-bottom:1px solid var(--rule);font-size:.76rem;color:var(--ink-3);margin-bottom:clamp(1.8rem,4vw,2.8rem)}
.meta .id{font-weight:600;color:var(--navy);letter-spacing:.08em}
.live{display:inline-flex;align-items:center;gap:.45rem;color:var(--sage-ink);font-weight:600}
.pulse{width:8px;height:8px;border-radius:50%;background:var(--sage);position:relative}
.pulse::after{content:"";position:absolute;inset:-4px;border-radius:50%;border:1.5px solid var(--sage);animation:pulse 2.2s ease-out infinite}
@keyframes pulse{0%{transform:scale(.5);opacity:1}100%{transform:scale(1.6);opacity:0}}
.meta .push{margin-left:auto}
.mast-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(2rem,5vw,4.5rem);align-items:start}
.idrow{display:flex;gap:clamp(1rem,2.4vw,1.6rem);align-items:flex-end;margin-bottom:1.4rem}
.photo{position:relative;flex:none;width:clamp(92px,11vw,124px);aspect-ratio:4/5;border-radius:14px;overflow:hidden;background:var(--paper-deep);box-shadow:0 0 0 1px var(--rule)}
.photo img{width:100%;height:100%;object-fit:cover;object-position:50% 20%}
.photo .stamp{position:absolute;left:6px;right:6px;bottom:6px;background:rgba(26,22,40,.82);color:var(--paper);font:600 .56rem/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;padding:.38rem .3rem;border-radius:6px;text-align:center;backdrop-filter:blur(4px)}
.name{font-family:var(--serif);font-weight:400;font-size:clamp(2.6rem,6.2vw,4.9rem);line-height:.95;letter-spacing:-.025em;color:var(--navy)}
.standing-pill{display:inline-flex;align-items:center;gap:.55rem;margin-bottom:.8rem;padding:.38rem .8rem .38rem .38rem;border-radius:999px;background:var(--navy);color:var(--paper);font-size:.8rem;font-weight:500}
.standing-pill img{width:20px;height:20px}
.standing-pill .sep{opacity:.4}
.prop{font-family:var(--serif-text);font-size:clamp(1.12rem,1.6vw,1.32rem);line-height:1.5;color:var(--ink-2);max-width:40ch;margin-bottom:1.1rem}
.prop strong{font-weight:400;color:var(--navy)}
.tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1.6rem}
.tag{font-size:.8rem;padding:.38rem .75rem;border-radius:999px;background:var(--white);border:1px solid var(--rule);color:var(--ink-2)}
.tag.spec{border-color:var(--navy);color:var(--navy);font-weight:500}
.actions{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}
.actions .text-link{margin-left:.4rem}

/* at-a-glance ledger */
.ledger{background:var(--white);border:1px solid var(--rule);border-radius:var(--r);overflow:hidden}
.ledger-h{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem .85rem;border-bottom:1px solid var(--rule)}
.ledger-h h2{font:600 .7rem/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--navy)}
.ledger dl{margin:0}
.lrow{display:grid;grid-template-columns:7.6rem 1fr auto;gap:.8rem;align-items:center;padding:.72rem 1.25rem;border-bottom:1px solid #F1ECE2;font-size:.9rem}
.lrow dt{font-size:.74rem;color:var(--ink-3)}
.lrow dd{margin:0;color:var(--navy);font-weight:500;min-width:0}
.lrow dd span{color:var(--ink-3);font-weight:400}
.ledger-f{display:flex;align-items:center;gap:.9rem;padding:.9rem 1.25rem;background:var(--paper)}
.ledger-f img{width:44px;height:44px;padding:4px;background:var(--white);border-radius:6px;border:1px solid var(--rule)}
.ledger-f p{font-size:.78rem;color:var(--ink-3);line-height:1.4;flex:1}
.ledger-f p b{color:var(--navy);font-weight:600;display:block;font-size:.84rem}

/* ───────── sticky subnav + lens ───────── */
.subnav{position:sticky;top:0;z-index:40;background:rgba(251,248,243,.92);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--rule);transition:box-shadow .2s}
.subnav.stuck{box-shadow:0 6px 20px -14px rgba(38,31,70,.35)}
.subnav .wrap{display:flex;align-items:center;gap:1rem;min-height:56px}
.subnav .mini{display:flex;align-items:center;gap:.55rem;opacity:0;width:0;overflow:hidden;transition:opacity .25s,width .25s;white-space:nowrap}
.subnav.stuck .mini{opacity:1;width:auto}
.subnav .mini img{width:26px;height:26px;border-radius:50%;object-fit:cover;object-position:50% 15%}
.subnav .mini b{font-family:var(--serif);font-weight:400;font-size:1rem}
.chips{display:flex;gap:.2rem;overflow-x:auto;scrollbar-width:none;flex:1;min-width:0;mask-image:linear-gradient(90deg,#000 92%,transparent)}
.chips::-webkit-scrollbar{display:none}
.chips a{font-size:.82rem;text-decoration:none;color:var(--ink-3);padding:.45rem .75rem;border-radius:999px;white-space:nowrap;transition:background .2s,color .2s}
.chips a:hover{color:var(--navy)}
.chips a.on{background:var(--navy);color:var(--paper)}
.lens-btn{display:inline-flex;align-items:center;gap:.6rem;border:1px solid var(--rule);background:var(--white);border-radius:999px;padding:.4rem .5rem .4rem .85rem;cursor:pointer;font-size:.8rem;font-weight:500;white-space:nowrap;flex:none}
.lens-btn .sw{width:32px;height:18px;border-radius:999px;background:#DCD5C7;position:relative;transition:background .2s}
.lens-btn .sw::after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:var(--white);transition:transform .2s;box-shadow:0 1px 2px rgba(0,0,0,.2)}
.lens-btn[aria-pressed="true"]{border-color:var(--navy)}
.lens-btn[aria-pressed="true"] .sw{background:var(--navy)}
.lens-btn[aria-pressed="true"] .sw::after{transform:translateX(14px)}
.legend{max-height:0;overflow:hidden;transition:max-height .3s ease;border-top:1px solid transparent}
body.lens .legend{max-height:120px;border-top-color:var(--rule)}
.legend .wrap{display:flex;flex-wrap:wrap;gap:.5rem 1.4rem;align-items:center;min-height:48px;padding-top:.5rem;padding-bottom:.5rem;font-size:.78rem;color:var(--ink-3)}
.legend .ev{margin-right:.35rem}
.legend .item{display:flex;align-items:center}

/* ───────── sections ───────── */
section.s{padding:var(--sec) 0;border-top:1px solid var(--rule)}
section.s:first-of-type{border-top:0}
.s-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:2rem 4rem;align-items:end;margin-bottom:clamp(1.8rem,4vw,2.8rem)}
.s-head .lede{justify-self:end}
.card{background:var(--white);border:1px solid var(--rule);border-radius:var(--r)}

/* standing meters */
.standing{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(1.5rem,4vw,3rem)}
.meters{padding:clamp(1.3rem,3vw,2rem)}
.meter+.meter{margin-top:2.2rem}
.meter-h{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.9rem;gap:1rem}
.meter-h .big{font-family:var(--serif);font-size:clamp(2rem,3.4vw,2.6rem);line-height:1;color:var(--navy);letter-spacing:-.02em}
.meter-h .big small{font-family:var(--sans);font-size:.8rem;color:var(--ink-3);letter-spacing:0;margin-left:.3rem}
.track{position:relative;height:44px}
.track .base{position:absolute;left:0;right:0;top:18px;height:8px;border-radius:99px;background:var(--paper-deep)}
.track .fill{position:absolute;left:0;top:18px;height:8px;border-radius:99px;background:linear-gradient(90deg,var(--sage) 0%,var(--sage-ink) 100%);width:0;transition:width 1.4s cubic-bezier(.2,.7,.2,1)}
.track .ticks{position:absolute;left:0;right:0;top:30px;height:6px;background:repeating-linear-gradient(90deg,#D9D2C3 0 1px,transparent 1px calc(10% - .1px));}
.track .th{position:absolute;top:4px;height:36px;width:0;border-left:1.5px dashed var(--navy)}
.track .th span{position:absolute;bottom:100%;transform:translateX(-50%);font-size:.66rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--navy);white-space:nowrap;padding-bottom:3px}
.track .me{position:absolute;top:10px;width:24px;height:24px;margin-left:-12px;border-radius:50%;background:var(--orange);border:3px solid var(--white);box-shadow:0 0 0 1px var(--orange),0 4px 10px -2px rgba(240,146,33,.6);left:0;transition:left 1.4s cubic-bezier(.2,.7,.2,1)}
.scale{display:flex;justify-content:space-between;font-size:.68rem;color:var(--ink-3);margin-top:.2rem}
.ladder{display:flex;gap:0;margin-top:2.2rem;border:1px solid var(--rule);border-radius:var(--r-sm);overflow:hidden}
.ladder div{flex:1;padding:.75rem .85rem;font-size:.78rem;color:var(--ink-3);border-right:1px solid var(--rule);background:var(--paper)}
.ladder div:last-child{border-right:0}
.ladder div b{display:block;font-weight:600;color:var(--ink-2);font-size:.82rem;margin-bottom:.15rem}
.ladder div.here{background:var(--navy);color:rgba(251,248,243,.75)}
.ladder div.here b{color:var(--paper)}
.ladder div.done b::after{content:" ✓";color:var(--sage-ink)}
.auth{padding:clamp(1.3rem,3vw,1.8rem);display:flex;flex-direction:column}
.auth h3{font-family:var(--serif);font-weight:400;font-size:1.35rem;color:var(--navy);margin-bottom:.3rem}
.auth ul{list-style:none;margin:1rem 0 0;padding:0}
.auth li{display:flex;gap:.75rem;padding:.75rem 0;border-top:1px solid #F1ECE2;font-size:.9rem;color:var(--navy);font-weight:500;line-height:1.35}
.auth li span{display:block;font-weight:400;font-size:.8rem;color:var(--ink-3);margin-top:.15rem}
.auth li i{flex:none;width:20px;height:20px;border-radius:50%;background:var(--ev-ver-bg);color:var(--sage-ink);display:grid;place-items:center;font-style:normal;font-size:.7rem;font-weight:700;margin-top:1px}
.auth .afoot{margin-top:auto;padding-top:1rem;font-size:.76rem;color:var(--ink-3);border-top:1px solid #F1ECE2}

/* qualifications table */
.qtable{width:100%;border-collapse:collapse}
.qtable th{font:600 .66rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);text-align:left;padding:0 1rem .8rem;border-bottom:1px solid var(--navy)}
.qtable td{padding:1rem;border-bottom:1px solid var(--rule);vertical-align:middle;font-size:.9rem;color:var(--ink-2)}
.qtable tbody tr{cursor:pointer;transition:background .15s}
.qtable tbody tr:hover{background:var(--white)}
.qtable .qt{font-family:var(--serif);font-size:1.12rem;color:var(--navy);line-height:1.25}
.qtable .num{text-align:right;white-space:nowrap}
.qtable .go{width:28px;color:var(--ink-3);text-align:right;font-size:1.1rem}
.qtable tr:hover .go{color:var(--navy)}
.specs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:2rem}
.tile{display:flex;gap:1rem;align-items:center;padding:1rem 1.2rem;background:var(--white);border:1px solid var(--rule);border-radius:var(--r-sm)}
.tile img{width:62px;height:62px;flex:none}
.tile h4{font-family:var(--serif);font-weight:400;font-size:1.2rem;color:var(--navy);line-height:1.2}
.tile p{font-size:.8rem;color:var(--ink-3);line-height:1.4;margin:.15rem 0 .45rem}

/* experience ruler */
.ruler-wrap{overflow-x:auto;scrollbar-width:thin;padding:0 1.2rem .5rem;margin:0 -1.2rem}
.ruler{position:relative;min-width:860px;height:250px}
.ruler .axis{position:absolute;left:0;right:0;top:170px;height:1px;background:var(--navy)}
.ruler .yr{position:absolute;top:170px;width:0}
.ruler .yr::before{content:"";position:absolute;left:0;top:0;height:8px;border-left:1px solid var(--navy)}
.ruler .yr.minor::before{height:5px;border-color:#BDB6A8}
.ruler .yr.now span{color:var(--orange-deep);font-weight:600}
.ruler .yr span{position:absolute;top:13px;transform:translateX(-50%);font-size:.68rem;color:var(--ink-3);white-space:nowrap}
.ruler .yr.minor span{display:none}
.band{position:absolute;border-radius:6px;display:flex;align-items:center;padding:0 .7rem;font-size:.72rem;font-weight:500;white-space:nowrap;overflow:hidden}
.band.load{top:112px;height:28px;background:var(--lilac);border:1px solid #DCD9F2;color:var(--navy)}
.band.load.now{background:var(--mint);border-color:#BFE7DB}
.band.load b{font-weight:600;margin-right:.3rem}
.ms{position:absolute;bottom:80px;width:0}
.ms .stem{position:absolute;bottom:0;left:0;border-left:1px dashed #BDB6A8}
.ms .pin{position:absolute;left:-5px;width:11px;height:11px;border-radius:50%;background:var(--paper);border:2px solid var(--navy)}
.ms .lab{position:absolute;left:-2px;width:max-content;max-width:190px;font-size:.78rem;line-height:1.3;color:var(--ink-2)}
.ms .lab b{display:block;font-family:var(--serif);font-weight:400;font-size:.98rem;color:var(--navy)}
.ms.right .lab{left:auto;right:-8px;text-align:right}
.ms.now .pin{background:var(--orange);border-color:var(--orange)}
.exp-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(1.5rem,4vw,3.5rem);margin-top:clamp(1.8rem,4vw,2.6rem)}
.bio .lead{font-family:var(--serif);font-size:clamp(1.4rem,2.2vw,1.8rem);line-height:1.2;color:var(--navy);letter-spacing:-.012em;margin-bottom:1rem}
.bio p+p{margin-top:.8rem}
.bio p:not(.lead){color:var(--ink-2);font-size:.98rem}
.how{padding:1.3rem 1.4rem}
.how h3{font:600 .66rem/1 var(--sans);letter-spacing:.15em;text-transform:uppercase;color:var(--ink-3);margin-bottom:.8rem}
.how .tags{margin-bottom:1.2rem}
.how .tags:last-child{margin-bottom:0}
.how .tag{background:var(--paper)}

/* work with */
.open-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--rule);border-radius:var(--r);overflow:hidden;background:var(--white)}
.open-cell{padding:1.3rem 1.35rem 1.25rem;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);display:flex;flex-direction:column;gap:.45rem;min-height:178px;position:relative;transition:background .2s}
.open-cell:nth-child(3n){border-right:0}
.open-cell:nth-last-child(-n+3){border-bottom:0}
.open-cell:hover{background:var(--paper)}
.open-cell .st{display:flex;align-items:center;gap:.4rem;font-size:.7rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}
.open-cell .st i{width:7px;height:7px;border-radius:50%}
.st.open{color:var(--sage-ink)}.st.open i{background:var(--sage);box-shadow:0 0 0 3px var(--ev-ver-bg)}
.st.enq{color:var(--ink-3)}.st.enq i{background:#C9C2B4}
.open-cell h3{font-family:var(--serif);font-weight:400;font-size:1.25rem;color:var(--navy);line-height:1.2}
.open-cell p{font-size:.84rem;color:var(--ink-3);line-height:1.45}
.open-cell .text-link{margin-top:auto;align-self:flex-start}

/* what's on */
.tickets{display:grid;gap:.75rem}
.ticket{display:grid;grid-template-columns:86px 1fr auto;background:var(--white);border:1px solid var(--rule);border-radius:var(--r-sm);overflow:hidden}
.ticket .stub{background:var(--paper-deep);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.8rem .4rem;border-right:1px dashed #D3CBBB;text-align:center}
.ticket .stub b{font-family:var(--serif);font-weight:400;font-size:1.9rem;line-height:1;color:var(--navy)}
.ticket .stub span{font-size:.64rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-top:.25rem}
.ticket .body{padding:1rem 1.2rem;min-width:0}
.ticket .body .k{color:var(--sage-ink);margin-bottom:.3rem}
.ticket h3{font-family:var(--serif);font-weight:400;font-size:1.18rem;color:var(--navy);line-height:1.25}
.ticket .body p{font-size:.82rem;color:var(--ink-3);margin-top:.2rem}
.ticket .side{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:.5rem;padding:1rem 1.2rem}
.ticket .price{font-family:var(--serif);font-size:1.3rem;color:var(--navy);line-height:1}
.pill{font-size:.7rem;font-weight:600;padding:.3rem .6rem;border-radius:999px;border:1px solid}
.pill.ok{color:var(--sage-ink);border-color:#BFE0D3;background:var(--ev-ver-bg)}
.pill.cover{color:var(--orange-deep);border-color:#F3D3A9;background:var(--peach)}
.src{font-size:.74rem;color:var(--ink-3);margin-top:.9rem}

/* reviews */
.rev-top{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:1rem}
.overview{padding:clamp(1.3rem,3vw,1.8rem)}
.score{display:flex;align-items:baseline;gap:.8rem;margin-bottom:1.1rem}
.score b{font-family:var(--serif);font-weight:400;font-size:3rem;line-height:1;color:var(--navy);letter-spacing:-.02em}
.stars{color:var(--orange);letter-spacing:.12em;font-size:.95rem}
.ai-k{display:inline-flex;align-items:center;gap:.4rem;font-size:.66rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--navy);border-bottom:1px solid var(--navy);padding-bottom:.4rem;margin-bottom:.8rem}
.overview .sum{font-family:var(--serif-text);font-size:1.12rem;line-height:1.5;color:var(--navy);max-width:none}
.themes{display:flex;flex-wrap:wrap;gap:.4rem;margin:1rem 0 .4rem}
.themes span{font-size:.78rem;padding:.35rem .7rem;border-radius:999px;background:var(--paper);border:1px solid var(--rule);color:var(--ink-2)}
.themes span b{font-weight:600;color:var(--navy);margin-left:.25rem}
.disc{font-size:.74rem;color:var(--ink-3);margin-top:.9rem;padding-top:.9rem;border-top:1px solid #F1ECE2;max-width:none}
.endorse{padding:clamp(1.3rem,3vw,1.8rem)}
.endorse h3{font:600 .66rem/1 var(--sans);letter-spacing:.15em;text-transform:uppercase;color:var(--navy);margin-bottom:1.1rem;border-bottom:1px solid var(--navy);padding-bottom:.4rem;display:flex;justify-content:space-between}
.endorse h3 span{color:var(--ink-3);letter-spacing:.05em;text-transform:none;font-weight:500}
.erow{margin-bottom:.95rem}
.erow .l{display:flex;justify-content:space-between;font-size:.86rem;color:var(--navy);font-weight:500;margin-bottom:.35rem}
.erow .l span{color:var(--ink-3);font-weight:400}
.erow .bar{height:6px;border-radius:99px;background:var(--paper-deep);overflow:hidden}
.erow .bar i{display:block;height:100%;border-radius:99px;background:var(--navy);width:0;transition:width 1.1s cubic-bezier(.2,.7,.2,1)}
.endorse .small{margin-top:1rem}
.quotes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1rem}
.q{padding:1.3rem 1.35rem;display:flex;flex-direction:column;gap:.9rem}
.q .typ{display:flex;justify-content:space-between;align-items:center;font-size:.64rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}
.q .rec{display:inline-flex;align-items:center;gap:.3rem;color:var(--sage-ink);letter-spacing:.04em;text-transform:none;font-size:.74rem}
.q blockquote{margin:0;font-family:var(--serif-text);font-size:1rem;line-height:1.5;color:var(--navy)}
.q .who{margin-top:auto;font-size:.8rem;color:var(--ink-3)}
.q .who b{color:var(--navy);font-weight:600}
.q.peer{background:var(--navy);border-color:var(--navy)}
.q.peer .typ{color:var(--lavender)}
.q.peer blockquote{color:var(--paper)}
.q.peer .who{color:rgba(251,248,243,.65)}
.q.peer .who b{color:var(--paper)}
.q.peer .vp{display:inline-flex;align-items:center;gap:.3rem;font-size:.7rem;color:var(--sage);margin-left:.3rem}

/* lineage */
.chain{display:grid;grid-template-columns:1fr 64px 1.15fr 64px 1fr;align-items:center}
.node{padding:1.3rem 1.3rem 1.2rem;position:relative}
.node .k{margin-bottom:.8rem;display:block}
.node .face{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;font-family:var(--serif);font-size:1.05rem;background:var(--paper-deep);color:var(--navy);margin-bottom:.8rem;border:1px solid var(--rule)}
.node .face img{width:100%;height:100%;border-radius:50%;object-fit:cover;object-position:50% 15%}
.node h3{font-family:var(--serif);font-weight:400;font-size:1.3rem;color:var(--navy);line-height:1.2}
.node p{font-size:.82rem;color:var(--ink-3);margin-top:.25rem;line-height:1.45}
.node.me{background:var(--navy);border-color:var(--navy)}
.node.me .k{color:var(--sage)}
.node.me h3{color:var(--paper)}
.node.me p{color:rgba(251,248,243,.7)}
.node.me .face{border:2px solid var(--orange);background:var(--deep-navy)}
.link{height:2px;background:repeating-linear-gradient(90deg,var(--navy) 0 6px,transparent 6px 11px);position:relative}
.link::after{content:"";position:absolute;right:-2px;top:-4px;border:5px solid transparent;border-left-color:var(--navy);border-right:0}
.swarm{display:grid;grid-template-columns:repeat(10,10px);gap:5px;margin-bottom:.8rem}
.swarm i{width:10px;height:10px;border-radius:50%;background:var(--sage);opacity:0;transform:scale(.4);transition:opacity .3s,transform .3s}
.swarm.on i{opacity:1;transform:none}
.chain-note{margin-top:1.2rem;font-family:var(--serif);font-style:italic;color:var(--ink-3);font-size:1rem}

/* verify */
.verify{background:var(--deep-navy);color:var(--paper);border-radius:calc(var(--r) + 4px);padding:clamp(1.6rem,4vw,3rem);display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(1.5rem,4vw,3.5rem);position:relative;overflow:hidden}
.verify .eyebrow{color:var(--sage)}
.verify .h2{color:var(--paper)}
.verify .lede{color:rgba(251,248,243,.72)}
.verify .actions{margin-top:1.6rem}
.chainline{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:1.6rem;font-size:.78rem;color:rgba(251,248,243,.6);align-items:center}
.chainline b{color:var(--paper);font-weight:500;padding:.3rem .6rem;border:1px solid rgba(251,248,243,.2);border-radius:999px}
.chainline b.here{background:var(--orange);border-color:var(--orange);color:var(--deep-navy)}
.passcard{background:var(--paper);color:var(--navy);border-radius:var(--r);padding:1.2rem;display:grid;grid-template-columns:1fr auto;gap:1rem;align-self:center;box-shadow:0 30px 60px -30px rgba(0,0,0,.6);transform:rotate(-1.5deg);transition:transform .3s}
.passcard:hover{transform:rotate(0)}
.passcard .k{color:var(--sage-ink)}
.passcard h3{font-family:var(--serif);font-weight:400;font-size:1.45rem;line-height:1.1;margin:.35rem 0 .6rem}
.passcard ul{list-style:none;margin:0;padding:0;font-size:.8rem}
.passcard li{display:flex;justify-content:space-between;gap:1rem;padding:.38rem 0;border-top:1px solid var(--rule)}
.passcard li span{color:var(--ink-3)}
.passcard li b{font-weight:600}
.passcard li b.g{color:var(--sage-ink)}
.passcard .qr{width:96px;display:flex;flex-direction:column;align-items:center;gap:.4rem;font-size:.62rem;color:var(--ink-3);text-align:center;letter-spacing:.06em;text-transform:uppercase}
.passcard .qr img{width:96px;height:96px;padding:6px;background:var(--white);border-radius:8px;border:1px solid var(--rule)}
.embed{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:1rem;align-items:center;padding-top:1.4rem;border-top:1px solid rgba(251,248,243,.12);font-size:.84rem;color:rgba(251,248,243,.7)}
.mark{display:inline-flex;align-items:center;gap:.55rem;background:var(--paper);color:var(--navy);border-radius:999px;padding:.35rem .85rem .35rem .35rem;font-size:.78rem;font-weight:600}
.mark img{width:22px;height:22px}
.mark .dotg{width:7px;height:7px;border-radius:50%;background:var(--sage)}
.copy{margin-left:auto}

/* brand link */
.brandlink{display:flex;align-items:center;gap:1.1rem;padding:1.1rem 1.3rem;margin-top:1rem;text-decoration:none;transition:border-color .2s}
.brandlink:hover{border-color:var(--navy)}
.brandlink img{width:54px;height:54px;border-radius:12px;flex:none}
.brandlink div{flex:1;min-width:0}
.brandlink h3{font-family:var(--serif);font-weight:400;font-size:1.2rem;color:var(--navy)}
.brandlink p{font-size:.82rem;color:var(--ink-3)}
.brandlink .k{color:var(--sage-ink);display:block;margin-bottom:.15rem}

/* contact */
.contact{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(1.5rem,4vw,4rem);align-items:start}
.form{padding:clamp(1.3rem,3vw,1.8rem)}
.fl{display:block;font:600 .66rem/1 var(--sans);letter-spacing:.15em;text-transform:uppercase;color:var(--sage-ink);margin:0 0 .65rem}
.fl+.opts,.opts+.fl,.field+.fl{margin-top:0}
.opts{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1.3rem}
.opt{border:1px solid var(--rule);background:var(--white);border-radius:999px;padding:.5rem .85rem;font-size:.84rem;cursor:pointer;color:var(--ink-2);transition:all .15s}
.opt:hover{border-color:var(--navy)}
.opt[aria-pressed="true"]{background:var(--navy);border-color:var(--navy);color:var(--paper)}
.field{width:100%;border:1px solid var(--rule);background:var(--paper);border-radius:var(--r-sm);padding:.85rem 1rem;font:400 .95rem/1.4 var(--sans);color:var(--navy);margin-bottom:1.3rem}
.field:focus{outline:none;border-color:var(--navy);background:var(--white)}
textarea.field{min-height:110px;resize:vertical}
.form .small{margin-top:.8rem}
.sent{display:none;padding:1rem;border-radius:var(--r-sm);background:var(--ev-ver-bg);color:var(--sage-ink);font-size:.9rem;margin-top:1rem}
.form.done .sent{display:block}
.reach{margin-top:1.6rem;display:grid;gap:.1rem}
.reach div{display:flex;justify-content:space-between;gap:1rem;padding:.7rem 0;border-top:1px solid var(--rule);font-size:.88rem}
.reach div span{color:var(--ink-3)}
.reach div b{font-weight:500;color:var(--navy);text-align:right}

/* footer */
.foot{background:var(--deep-navy);color:rgba(251,248,243,.7);margin-top:clamp(2rem,4vw,3rem);font-size:.82rem}
.foot .wrap{display:flex;flex-wrap:wrap;gap:1rem 2rem;align-items:center;justify-content:space-between;padding-top:2rem;padding-bottom:2rem}
.foot .logo .wm{color:var(--paper)}
.foot .logo img{width:22px;height:auto}
.foot .motto{font-family:var(--serif);font-style:italic;color:var(--paper);font-size:1rem}
.foot .motto em{color:var(--orange)}

/* modal */
.modal{position:fixed;inset:0;z-index:100;display:none;align-items:center;justify-content:center;padding:1rem;background:rgba(26,22,40,.55);backdrop-filter:blur(4px)}
.modal.open{display:flex}
.cert{background:var(--paper);border-radius:var(--r);max-width:520px;width:100%;padding:clamp(1.4rem,4vw,2.2rem);position:relative;box-shadow:0 40px 80px -30px rgba(0,0,0,.5);border:1px solid var(--rule);animation:pop .25s ease}
@keyframes pop{from{transform:translateY(10px) scale(.98);opacity:0}}
.cert .x{position:absolute;top:.8rem;right:.8rem;width:36px;height:36px;border-radius:50%;border:1px solid var(--rule);background:var(--white);cursor:pointer;font-size:1.1rem}
.cert .top{display:flex;align-items:center;gap:.6rem;margin-bottom:1.4rem}
.cert .top img{width:28px;height:28px}
.cert .top b{font-weight:600;letter-spacing:.18em;font-size:.72rem}
.cert h3{font-family:var(--serif);font-weight:400;font-size:1.75rem;line-height:1.1;color:var(--navy);margin:.3rem 0 1.2rem}
.cert dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:.55rem 1.4rem;font-size:.9rem;padding:1rem 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.cert dt{color:var(--ink-3)}
.cert dd{margin:0;color:var(--navy);font-weight:500}
.cert .note{font-size:.8rem;color:var(--ink-3);margin-top:1rem}

/* reveal */
.rv{opacity:0;transform:translateY(14px);transition:opacity .7s ease,transform .7s ease}
.rv.in{opacity:1;transform:none}

/* ───────── responsive ───────── */
@media (max-width:980px){
  .mast-grid,.standing,.exp-grid,.rev-top,.contact,.verify{grid-template-columns:1fr}
  .s-head{grid-template-columns:1fr;gap:1rem}
  .s-head .lede{justify-self:start}
  .quotes{grid-template-columns:1fr 1fr}
  .quotes .peer{grid-column:1/-1}
  .open-grid{grid-template-columns:1fr 1fr}
  .open-cell:nth-child(3n){border-right:1px solid var(--rule)}
  .open-cell:nth-child(2n){border-right:0}
  .open-cell:nth-last-child(-n+3){border-bottom:1px solid var(--rule)}
  .open-cell:nth-last-child(-n+2){border-bottom:0}
  .chain{grid-template-columns:1fr;gap:0}
  .link{width:2px;height:34px;margin-left:2.2rem;background:repeating-linear-gradient(180deg,var(--navy) 0 6px,transparent 6px 11px)}
  .link::after{right:auto;top:auto;bottom:-2px;left:-4px;border:5px solid transparent;border-top-color:var(--navy);border-bottom:0}
  .hdr nav a.l{display:none}
  .passcard{transform:none}
}
@media (max-width:640px){
  body{font-size:.97rem}
  .strip .hide-m{display:none}
  .meta .push{margin-left:0}
  .meta .hide-m{display:none}
  .idrow{align-items:center}
  .lrow{grid-template-columns:6.4rem 1fr;row-gap:.35rem}
  .lrow .ev{grid-column:2;justify-self:start}
  .qtable thead{display:none}
  .qtable,.qtable tbody,.qtable tr,.qtable td{display:block;width:100%}
  .qtable tr{display:grid;grid-template-columns:1fr auto;gap:.15rem .8rem;padding:1rem 0;border-bottom:1px solid var(--rule)}
  .qtable td{padding:0;border:0;font-size:.84rem}
  .qtable td.t{grid-column:1/-1}
  .qtable td.by{grid-column:1}
  .qtable td.yr,.qtable td.hr{display:none}
  .qtable td.evc{grid-column:1;margin-top:.45rem}
  .qtable td.go{grid-row:1;grid-column:2;align-self:start}
  .qtable td.t{grid-column:1}
  .specs{grid-template-columns:1fr}
  .open-grid{grid-template-columns:1fr}
  .open-cell{border-right:0!important;border-bottom:1px solid var(--rule)!important;min-height:0}
  .open-cell:last-child{border-bottom:0!important}
  .open-cell .text-link{margin-top:.4rem}
  .ticket{grid-template-columns:70px 1fr}
  .ticket .side{grid-column:1/-1;flex-direction:row;justify-content:space-between;align-items:center;border-top:1px solid var(--rule);padding:.75rem 1rem}
  .ticket .body{padding:.9rem 1rem}
  .quotes{grid-template-columns:1fr}
  .ladder{flex-direction:column}
  .ladder div{border-right:0;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between;gap:1rem}
  .ladder div:last-child{border-bottom:0}
  .ladder div b{margin:0}
  .passcard{grid-template-columns:1fr}
  .passcard .qr{flex-direction:row;width:auto;text-align:left}
  .passcard .qr img{width:72px;height:72px}
  .copy{margin-left:0}
  .lens-btn .lt{display:none}
  .lens-btn{padding:.4rem .5rem .4rem .7rem}
  .subnav.stuck .mini{display:none}
  .brandlink .btn{display:none}
}

@media print{
  .strip,.hdr nav,.subnav,.actions,.ledger-f,#work .text-link,.verify .actions,.embed,.contact form,.foot,.modal,#printBtn{display:none!important}
  body{background:#fff;font-size:11pt}
  section.s{padding:1.2rem 0;break-inside:avoid}
  .rv{opacity:1!important;transform:none!important}
  .verify{background:#fff;color:var(--navy);border:1px solid var(--rule)}
  .verify .h2,.verify .lede{color:var(--navy)}
}

/* mobile vertical timeline */
.vt{display:none;list-style:none;margin:0;padding:0 0 0 1.4rem;position:relative}
.vt::before{content:"";position:absolute;left:5px;top:8px;bottom:8px;border-left:1px solid var(--navy)}
.vt li{position:relative;padding:0 0 1.3rem}
.vt li::before{content:"";position:absolute;left:calc(-1.4rem + 0px);top:6px;width:11px;height:11px;border-radius:50%;background:var(--paper);border:2px solid var(--navy)}
.vt li.now::before{background:var(--orange);border-color:var(--orange)}
.vt .y{font-size:.68rem;font-weight:600;letter-spacing:.12em;color:var(--orange-deep)}
.vt b{display:block;font-family:var(--serif);font-weight:400;font-size:1.1rem;color:var(--navy);line-height:1.25}
.vt span.d{font-size:.84rem;color:var(--ink-3)}
.vt .load{display:inline-block;margin-top:.35rem;font-size:.74rem;padding:.25rem .55rem;border-radius:6px;background:var(--lilac);border:1px solid #DCD9F2;color:var(--navy)}
.vt .load.now{background:var(--mint);border-color:#BFE7DB}
/* mobile action bar */
.mbar{display:none;position:fixed;left:0;right:0;bottom:0;z-index:60;gap:.5rem;padding:.7rem 1rem calc(.7rem + env(safe-area-inset-bottom));background:rgba(251,248,243,.94);backdrop-filter:blur(10px);border-top:1px solid var(--rule);transform:translateY(110%);transition:transform .3s ease}
.mbar.show{transform:none}
.mbar .btn{flex:1;justify-content:center}
@media print{.mbar{display:none!important}}
@media (max-width:640px){
  .lrow{grid-template-columns:6rem 1fr auto;gap:.6rem;padding:.62rem 1.05rem;font-size:.86rem}
  .lrow .ev{grid-column:auto;justify-self:end;font-size:.6rem;padding:.3rem .45rem}
  .lrow dd span{display:none}
  .ledger-h .small{display:none}
  .standing-pill .since{display:none}
  .ruler-wrap{display:none}
  .vt{display:block}
  .mbar{display:flex}
  body{padding-bottom:76px}
  .logo .tag{display:none}
  .open-cell{padding:1.05rem 1.1rem}
  .actions .text-link{margin:.3rem 0 0 .2rem}
}
.lens-btn .ls{display:none}
@media (max-width:640px){.lens-btn .ls{display:inline;font-size:.76rem}}

/* ───────── v3: brands ───────── */
.bgroup+.bgroup{margin-top:2rem}
.bg-h{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.4rem 1rem;padding-bottom:.7rem;margin-bottom:1rem;border-bottom:1px solid var(--navy)}
.bg-h .k{color:var(--navy)}
.bgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.9rem}
.bgrid.two{grid-template-columns:repeat(4,minmax(0,1fr))}
.btile{background:var(--white);border:1px solid var(--rule);border-radius:var(--r-sm);padding:1.1rem 1.15rem 1rem;display:flex;flex-direction:column;gap:.45rem;transition:border-color .2s,transform .2s}
.btile:hover{border-color:var(--navy);transform:translateY(-2px)}
.bt-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:.35rem}
.bt-top img{width:44px;height:44px;border-radius:10px}
.mono{width:44px;height:44px;border-radius:10px;display:grid;place-items:center;font-family:var(--serif);font-size:1.05rem;background:var(--paper-deep);color:var(--navy);border:1px solid var(--rule)}
.role{font-size:.66rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--sage-ink);background:var(--ev-ver-bg);padding:.32rem .55rem;border-radius:999px}
.btile h3{font-family:var(--serif);font-weight:400;font-size:1.18rem;color:var(--navy);line-height:1.2}
.btile p{font-size:.82rem;color:var(--ink-3);line-height:1.45}
.bt-foot{margin-top:auto;padding-top:.6rem;display:flex;justify-content:space-between;align-items:center;gap:.5rem;flex-wrap:wrap}
.specm{font-family:var(--sans);font-size:.56rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);border:1px solid var(--rule);border-radius:4px;padding:.12rem .3rem;vertical-align:middle;white-space:nowrap}
body.lens .btile[data-ev="acc"]{box-shadow:inset 4px 0 0 var(--ev-acc)}
body.lens .btile[data-ev="ver"]{box-shadow:inset 4px 0 0 var(--sage)}
body.lens .btile[data-ev="sta"]{box-shadow:inset 4px 0 0 #C9C2B4}

/* ───────── v3: events ───────── */
.ev-bar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.8rem;margin-bottom:1.1rem}
.seg{display:flex;gap:.25rem;overflow-x:auto;scrollbar-width:none;max-width:100%}
.seg::-webkit-scrollbar{display:none}
.seg button{border:1px solid var(--rule);background:var(--white);border-radius:999px;padding:.5rem .85rem;font-size:.84rem;cursor:pointer;white-space:nowrap;color:var(--ink-2)}
.seg button sup{font-size:.62rem;margin-left:.2rem;color:var(--ink-3)}
.seg button[aria-selected="true"]{background:var(--navy);border-color:var(--navy);color:var(--paper)}
.seg button[aria-selected="true"] sup{color:var(--lavender)}
.price-view{display:flex;align-items:center;gap:.25rem;background:var(--white);border:1px solid var(--rule);border-radius:999px;padding:.2rem .2rem .2rem .7rem}
.price-view .small{margin-right:.25rem}
.pv{border:0;background:none;border-radius:999px;padding:.4rem .75rem;font-size:.8rem;cursor:pointer;color:var(--ink-2)}
.pv[aria-pressed="true"]{background:var(--paper-deep);color:var(--navy);font-weight:600}
.ticket{grid-template-columns:86px minmax(0,1fr) auto auto}
.ticket .stub i{font-style:normal;font-size:.62rem;color:var(--ink-3);margin-top:.15rem}
.ticket .stub.any b{font-size:1.2rem}
.ticket h3 a{text-decoration:none}.ticket h3 a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.ticket .warn{color:var(--orange-deep)!important}
.ticket .mid{display:flex;align-items:center;padding:0 .4rem}
.hrs{width:60px;height:60px;border-radius:50%;background:var(--paper);border:1px solid var(--navy);color:var(--navy);display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:.56rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;line-height:1}
.hrs b{font-family:var(--serif);font-weight:400;font-size:1.25rem;letter-spacing:0;text-transform:none;margin-bottom:.12rem}
.hrs.cpd{background:var(--navy);color:var(--paper)}
.ticket .side{min-width:150px}
.pr{display:flex;flex-direction:column;align-items:flex-end;gap:.15rem}
.pr .mp{font-size:.72rem;color:var(--ink-3)}
.pr .was{font-size:.74rem;color:var(--ink-3);text-decoration:line-through}
.pill.soft{color:var(--ink-2);border-color:var(--rule);background:var(--paper)}
.t-course .stub{background:var(--lilac)}
.t-retreat .stub{background:var(--mint)}
.more-week{display:flex;justify-content:space-between;align-items:center;width:100%;text-align:left;border:1px dashed #CFC7B6;background:transparent;border-radius:var(--r-sm);padding:1rem 1.2rem;cursor:pointer;font-size:.88rem;color:var(--ink-2)}
.more-week:hover{border-color:var(--navy);color:var(--navy)}
.more-week b{color:var(--navy);font-weight:600}
.week{background:var(--white);border:1px solid var(--rule);border-radius:var(--r-sm);overflow:hidden}
.wday{display:grid;grid-template-columns:80px 1fr;border-bottom:1px solid var(--rule)}
.dname{background:var(--paper-deep);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:1.15rem;color:var(--navy);border-right:1px dashed #D3CBBB}
.wrow{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:.8rem;align-items:baseline;padding:.8rem 1.2rem}
.wrow+.wrow{border-top:1px solid #F1ECE2}
.wrow b{font-weight:600;color:var(--navy)}
.wt{font-family:var(--serif);font-size:1.05rem;color:var(--navy)}
@media (max-width:980px){.bgrid,.bgrid.two{grid-template-columns:1fr 1fr}}
@media (max-width:640px){
  .bgrid,.bgrid.two{grid-template-columns:1fr}
  .ticket{grid-template-columns:70px minmax(0,1fr)}
  .ticket .mid{display:none}
  .ticket .side{grid-column:1/-1;min-width:0}
  .pr{flex-direction:row;align-items:baseline;gap:.5rem}
  .ev-bar{flex-direction:column;align-items:stretch}
  .price-view{align-self:flex-start}
  .wday{grid-template-columns:52px 1fr}
  .wrow{grid-template-columns:48px 1fr;padding:.7rem .9rem}
  .wrow .small{grid-column:2}
}

/* ───────── v3: sub-pages ───────── */
.crumb{display:flex;align-items:center;gap:.6rem;font-size:.84rem;color:var(--ink-3);padding:1.1rem 0}
.crumb a{color:var(--navy);text-decoration:none;font-weight:500;display:inline-flex;align-items:center;gap:.5rem}
.crumb a img{width:24px;height:24px;border-radius:50%;object-fit:cover;object-position:50% 15%}
.crumb a:hover{text-decoration:underline}
.page-h{padding:clamp(1.4rem,4vw,2.6rem) 0 clamp(1.6rem,4vw,2.4rem);border-top:1px solid var(--navy)}
.page-h .h1{font-family:var(--serif);font-weight:400;font-size:clamp(2.3rem,5vw,3.9rem);line-height:1;letter-spacing:-.022em;color:var(--navy)}
.page-h .h1 em{font-style:italic;color:var(--orange)}
.page-h .lede{margin-top:1rem}
.pp{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:clamp(1.5rem,4vw,3rem);align-items:start}
.pp-card{background:var(--deep-navy);color:var(--paper);border-radius:calc(var(--r) + 4px);padding:1.5rem;position:sticky;top:1.2rem;overflow:hidden}
.pp-card::after{content:"";position:absolute;right:-60px;top:-60px;width:220px;height:220px;border-radius:50%;border:1px solid rgba(170,166,220,.18);box-shadow:0 0 0 30px rgba(170,166,220,.05),0 0 0 60px rgba(170,166,220,.035)}
.pp-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.3rem;position:relative;z-index:1}
.pp-top .logo .wm{color:var(--paper);font-size:.7rem}
.pp-top .logo img{width:20px}
.pp-top .k{color:var(--lavender)}
.pp-id{display:flex;gap:1rem;align-items:center;position:relative;z-index:1}
.pp-id .ph{width:84px;height:104px;border-radius:12px;overflow:hidden;flex:none;box-shadow:0 0 0 2px var(--orange)}
.pp-id .ph img{width:100%;height:100%;object-fit:cover;object-position:50% 15%}
.pp-id h1{font-family:var(--serif);font-weight:400;font-size:1.9rem;line-height:1.02;color:var(--paper)}
.pp-id .lvl{display:inline-block;margin-top:.55rem;background:var(--orange);color:var(--deep-navy);font-size:.74rem;font-weight:600;padding:.3rem .65rem;border-radius:999px}
.pp-rows{margin:1.3rem 0 0;padding:0;list-style:none;position:relative;z-index:1}
.pp-rows li{display:flex;justify-content:space-between;gap:1rem;padding:.6rem 0;border-top:1px solid rgba(251,248,243,.1);font-size:.86rem}
.pp-rows span{color:rgba(251,248,243,.6)}
.pp-rows b{font-weight:500;text-align:right}
.pp-rows b.g{color:var(--sage)}
.pp-qr{display:flex;gap:1rem;align-items:center;margin-top:1.1rem;padding:1rem;background:var(--paper);border-radius:var(--r-sm);color:var(--navy);position:relative;z-index:1}
.pp-qr img{width:84px;height:84px}
.pp-qr p{font-size:.78rem;color:var(--ink-3);line-height:1.45}
.pp-qr p b{display:block;color:var(--navy);font-size:.95rem;letter-spacing:.06em;margin-bottom:.2rem}
.pp-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem;position:relative;z-index:1}
.block{background:var(--white);border:1px solid var(--rule);border-radius:var(--r);padding:clamp(1.2rem,3vw,1.7rem)}
.block+.block{margin-top:1rem}
.block-h{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding-bottom:.7rem;border-bottom:1px solid var(--navy);margin-bottom:.4rem}
.block-h h2{font-family:var(--serif);font-weight:400;font-size:1.4rem;color:var(--navy)}
.srow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.3rem 1rem;align-items:center;padding:.8rem 0;border-bottom:1px solid #F1ECE2}
.srow:last-child{border-bottom:0}
.srow .t{color:var(--navy);font-weight:500;font-size:.94rem}
.srow .d{grid-column:1;font-size:.8rem;color:var(--ink-3)}
.srow .ev{grid-row:1/span 2;grid-column:2}
.states{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;border:1px solid var(--rule);border-radius:var(--r-sm);overflow:hidden;margin-top:.8rem}
.states div{padding:.8rem;font-size:.76rem;color:var(--ink-3);border-right:1px solid var(--rule);background:var(--paper);line-height:1.35}
.states div:last-child{border-right:0}
.states b{display:block;color:var(--navy);font-size:.82rem;margin-bottom:.2rem}
.states .n{font-family:var(--serif);font-size:1.3rem;color:var(--orange);display:block;line-height:1;margin-bottom:.3rem}
.privacy{display:flex;gap:.9rem;align-items:flex-start;padding:1rem 1.2rem;border-radius:var(--r-sm);background:var(--lilac);border:1px solid #DCD9F2;font-size:.86rem;color:var(--ink-2);margin-top:1rem}
.privacy b{color:var(--navy)}
.cpdbar{display:flex;align-items:flex-end;gap:.5rem;height:90px;margin:1rem 0 .4rem}
.cpdbar div{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;font-size:.68rem;color:var(--ink-3);gap:.3rem}
.cpdbar i{display:block;width:100%;max-width:46px;border-radius:6px 6px 2px 2px;background:var(--sage)}
.cpdbar i.z{background:var(--paper-deep);height:4px}
.cpdbar b{font-size:.74rem;color:var(--navy)}

/* verify page */
.vbox{display:flex;gap:.5rem;background:var(--white);border:1px solid var(--navy);border-radius:999px;padding:.35rem;max-width:620px}
.vbox input{flex:1;min-width:0;border:0;background:none;font:500 1rem/1 var(--sans);color:var(--navy);padding:.6rem .9rem;letter-spacing:.05em}
.vbox input:focus{outline:none}
.vways{display:flex;flex-wrap:wrap;gap:.5rem 1.4rem;margin-top:.9rem;font-size:.82rem;color:var(--ink-3)}
.vways b{color:var(--navy);font-weight:600}
.vres{margin-top:2rem;max-width:880px}
.vres-ok{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:1.2rem;align-items:center;padding:1.2rem 1.4rem;border-radius:var(--r) var(--r) 0 0;background:var(--navy);color:var(--paper)}
.vres-ok .tick{width:46px;height:46px;border-radius:50%;background:var(--sage);color:var(--deep-navy);display:grid;place-items:center;font-size:1.3rem;font-weight:700}
.vres-ok h2{font-family:var(--serif);font-weight:400;font-size:1.5rem;line-height:1.1}
.vres-ok p{font-size:.82rem;color:rgba(251,248,243,.7)}
.vres-ok img{width:58px;height:58px;border-radius:50%;object-fit:cover;object-position:50% 15%;border:2px solid var(--orange)}
.vres-body{background:var(--white);border:1px solid var(--rule);border-top:0;border-radius:0 0 var(--r) var(--r);padding:.4rem 1.4rem 1.2rem}
.vgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 2rem}
.vno{padding:1.4rem;border-radius:var(--r);background:var(--peach);border:1px solid #F3D3A9;color:var(--ink-2)}
.vno h2{font-family:var(--serif);font-weight:400;font-size:1.4rem;color:var(--navy);margin-bottom:.4rem}

/* event page */
.evp{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:clamp(1.5rem,4vw,3rem);align-items:start}
.evp .lede{margin:1rem 0 1.4rem}
.facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--rule);border-radius:var(--r-sm);overflow:hidden;background:var(--white)}
.facts div{padding:.9rem 1rem;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.facts div:nth-child(3n){border-right:0}
.facts span{display:block;font-size:.66rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:.25rem}
.facts b{font-weight:500;color:var(--navy);font-size:.95rem}
.book{position:sticky;top:1.2rem}
.book .big{font-family:var(--serif);font-size:2.4rem;color:var(--navy);line-height:1}
.book .btn{width:100%;justify-content:center;margin-top:1rem}
.accr{display:flex;gap:1rem;align-items:center;margin-top:1rem;padding:1rem 1.1rem;border-radius:var(--r-sm);background:var(--lilac);border:1px solid #DCD9F2;text-decoration:none}
.accr:hover{border-color:var(--navy)}
.accr img{width:40px;height:40px}
.accr p{font-size:.8rem;color:var(--ink-3);line-height:1.4}
.accr p b{display:block;color:var(--navy);font-size:.88rem}
.leader{display:flex;gap:.9rem;align-items:center;margin-top:1.4rem;padding-top:1.2rem;border-top:1px solid var(--rule);text-decoration:none}
.leader img{width:52px;height:64px;border-radius:10px;object-fit:cover;object-position:50% 15%}
.leader b{display:block;font-family:var(--serif);font-weight:400;font-size:1.15rem;color:var(--navy)}
.leader span{font-size:.8rem;color:var(--ink-3)}
.others{margin-top:2.6rem}

/* checks page */
.chk-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.chk{padding:1.3rem;border-radius:var(--r-sm);background:var(--white);border:1px solid var(--rule)}
.chk .ev{margin-bottom:.9rem}
.chk h3{font-family:var(--serif);font-weight:400;font-size:1.2rem;color:var(--navy);margin-bottom:.35rem}
.chk p{font-size:.84rem;color:var(--ink-3);line-height:1.5}
.ctable{width:100%;border-collapse:collapse;margin-top:1rem;background:var(--white);border:1px solid var(--rule);border-radius:var(--r-sm)}
.ctable th,.ctable td{text-align:left;padding:.85rem 1rem;border-bottom:1px solid var(--rule);font-size:.88rem;vertical-align:top}
.ctable th{font:600 .66rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}
.ctable td:first-child{color:var(--navy);font-weight:500;white-space:nowrap}
.ctable td{color:var(--ink-2)}
@media (max-width:980px){
  .pp,.evp{grid-template-columns:1fr}
  .pp-card{position:relative;top:auto}
  .book{position:static}
  .chk-grid{grid-template-columns:1fr 1fr}
  .states{grid-template-columns:1fr 1fr}
  .states div{border-bottom:1px solid var(--rule)}
}
@media (max-width:640px){
  .vgrid{grid-template-columns:1fr}
  .facts{grid-template-columns:1fr 1fr}
  .facts div:nth-child(3n){border-right:1px solid var(--rule)}
  .facts div:nth-child(2n){border-right:0}
  .chk-grid{grid-template-columns:1fr}
  .vres-ok{grid-template-columns:auto 1fr}
  .vres-ok img{display:none}
  .ctable thead{display:none}
  .ctable tr{display:block;padding:.7rem 0;border-bottom:1px solid var(--rule)}
  .ctable td{display:block;border:0;padding:.15rem 1rem}
  .vbox{border-radius:var(--r-sm);flex-direction:column}
}
@media (max-width:640px){
  .btile{display:grid;grid-template-columns:44px minmax(0,1fr);column-gap:.9rem;row-gap:.2rem;padding:.95rem 1rem}
  .bt-top{grid-row:1/span 2;margin:0;flex-direction:column;align-items:flex-start}
  .bt-top .role{display:none}
  .btile h3{font-size:1.08rem}
  .btile p{grid-column:2}
  .bt-foot{grid-column:1/-1;padding-top:.5rem}
  .btile h3::after{content:attr(data-role)}
}
.mrole{display:none;font-family:var(--sans);font-size:.72rem;color:var(--sage-ink);font-weight:600}
@media (max-width:640px){.mrole{display:inline}.btile h3::after{content:none}}

/* ═════════ v4 · Full / Proof ═════════ */
.hdr nav button.l{font:inherit;font-size:.86rem;color:var(--ink-2);background:none;border:0;padding:0;cursor:pointer}
.hdr nav button.l:hover{color:var(--navy)}
.viewsw{display:inline-flex;padding:3px;border-radius:999px;background:var(--white);border:1px solid var(--rule)}
.viewsw button{font:600 .7rem/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;padding:.48rem .8rem;border-radius:999px;border:0;background:none;color:var(--ink-3);cursor:pointer;white-space:nowrap}
.viewsw button[aria-pressed="true"]{background:var(--navy);color:var(--paper)}
.viewsw button:focus-visible{outline:2px solid var(--orange);outline-offset:2px}
.proof{display:none}
body.v-proof .proof{display:block;margin-top:1.6rem;animation:pop .25s ease}
body.v-proof .full-only,
body.v-proof .mast .prop,body.v-proof .mast .tags,body.v-proof .mast .actions,body.v-proof .ledger,body.v-proof .lens-btn{display:none!important}
body.v-proof .mast-grid{grid-template-columns:1fr}
.proof{border-radius:var(--r);overflow:hidden;border:1px solid var(--rule);background:var(--white)}
.proof-band{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:1.1rem;align-items:center;padding:1.2rem 1.4rem;background:var(--navy);color:var(--paper)}
.proof-band .tick{width:46px;height:46px;border-radius:50%;background:var(--sage);color:var(--deep-navy);display:grid;place-items:center;font-size:1.3rem;font-weight:700}
.proof-band h2{font-family:var(--serif);font-weight:400;font-size:1.55rem;line-height:1.1}
.proof-band p{font-size:.82rem;color:rgba(251,248,243,.72);margin-top:.2rem}
.proof-acts{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:flex-end}
.proof-body{padding:.4rem 1.4rem 1.3rem}
.ptable{width:100%;border-collapse:collapse;font-size:.88rem}
.ptable th{text-align:left;font:600 .66rem/1.2 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);padding:1rem .8rem .6rem 0;border-bottom:1px solid var(--navy)}
.ptable td{padding:.78rem .8rem .78rem 0;border-bottom:1px solid var(--rule);color:var(--ink-2);vertical-align:middle}
.ptable td:first-child{color:var(--navy);font-weight:600}
.ptable td:nth-child(4),.ptable td:nth-child(5){white-space:nowrap;font-variant-numeric:tabular-nums}
.proof-foot{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,340px);gap:1.4rem;margin-top:1.3rem}
.history .k,.pvqr b{display:block;font:600 .68rem/1.2 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);margin-bottom:.7rem}
.history ol{list-style:none;margin:0;padding:0 0 0 1rem;border-left:2px solid var(--rule)}
.history li{position:relative;font-size:.86rem;color:var(--ink-2);padding:.25rem 0}
.history li::before{content:"";position:absolute;left:calc(-1rem - 6px);top:.62rem;width:10px;height:10px;border-radius:50%;background:var(--white);border:2px solid var(--sage-ink)}
.history li b{display:inline-block;min-width:5.2rem;color:var(--navy);font-weight:600}
.pvqr{display:flex;gap:1rem;align-items:center;padding:1rem;border-radius:12px;background:var(--paper);border:1px solid var(--rule)}
.pvqr img{width:92px;height:92px;flex:none;background:#fff;padding:6px;border-radius:8px}
.pvqr p{font-size:.84rem;color:var(--ink-2);margin:0}
.privacy-l{margin-top:1.1rem;font-size:.8rem;color:var(--ink-3)}
.privacy-l .dot{margin:0 .45rem 0 0}.privacy-l .specm{margin-left:.4rem}
.vmodal .cert{max-width:560px}
.vmodal .vbox{max-width:none}
@media (max-width:760px){
  .proof-band{grid-template-columns:auto minmax(0,1fr);padding:1.1rem}
  .proof-acts{grid-column:1/-1;justify-content:flex-start}
  .proof-body{padding:.2rem 1rem 1.1rem}
  .ptable thead{display:none}
  .ptable,.ptable tbody,.ptable tr,.ptable td{display:block}
  .ptable tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.25rem .8rem;padding:.85rem 0;border-bottom:1px solid var(--rule)}
  .ptable td{border:0;padding:0}
  .ptable td:nth-child(3){grid-column:1/-1;font-size:.84rem}
  .ptable td:nth-child(4)::before{content:"Checked "}
  .ptable td:nth-child(5)::before{content:"Valid until "}
  .ptable td:nth-child(4),.ptable td:nth-child(5){font-size:.76rem;color:var(--ink-3)}
  .ptable td:nth-child(5){text-align:right}
  .proof-foot{grid-template-columns:1fr}
  .meta .viewsw{order:-1}
}
@media print{.viewsw,.proof-acts{display:none!important}}
@media (max-width:760px){
  .ptable td:nth-child(2){justify-self:end}
  .ptable td.na{visibility:hidden}
  .hdr nav button.l{display:none}
}

/* ═════════ v5 · Engagement ═════════ */
.now{width:fit-content;display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .7rem;margin:0 0 1.1rem;padding:.6rem .9rem;border-radius:12px;background:var(--white);border:1px dashed #BDB6A8;max-width:560px}
.now-k{display:inline-flex;align-items:center;gap:.45rem;font:600 .64rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--sage-ink)}
.now-t{font-family:var(--serif);font-size:1.02rem;color:var(--navy)}
.now-m{font-size:.74rem;color:var(--ink-3);margin-left:auto}
.engage{margin-top:1.4rem;padding-top:1.2rem;border-top:1px solid var(--rule);display:flex;flex-direction:column;gap:.9rem}
.eg-btns{display:flex;flex-wrap:wrap;gap:.5rem}
.eg{display:inline-flex;align-items:center;gap:.45rem;font:600 .84rem/1 var(--sans);color:var(--navy);background:var(--white);border:1px solid var(--rule);border-radius:999px;padding:.6rem .85rem;cursor:pointer;transition:border-color .2s,background .2s,color .2s,transform .15s}
.eg:hover{border-color:var(--navy)}
.eg:active{transform:scale(.97)}
.eg b{font-weight:500;color:var(--ink-3);font-variant-numeric:tabular-nums;padding-left:.45rem;border-left:1px solid var(--rule)}
.eg-follow{background:var(--navy);color:var(--paper);border-color:var(--navy)}
.eg-follow b{color:rgba(251,248,243,.7);border-color:rgba(251,248,243,.25)}
.eg-follow[aria-pressed="true"]{background:var(--ev-ver-bg);color:var(--sage-ink);border-color:#BFE0D3}
.eg-follow[aria-pressed="true"] b{color:var(--sage-ink);border-color:#BFE0D3}
.eg-follow[aria-pressed="true"] svg{transform:rotate(45deg)}
.eg svg{transition:transform .2s}
.eg-ico{padding:.6rem}
.eg-ico.ok{background:var(--ev-ver-bg);color:var(--sage-ink)}
.socials{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem}
.soc-k{font:600 .64rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-right:.35rem}
.socials a{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;color:var(--navy);border:1px solid var(--rule);background:var(--white);transition:background .2s,color .2s,border-color .2s}
.socials a:hover{background:var(--navy);color:var(--paper);border-color:var(--navy)}
.soc-n{font-size:.72rem;color:var(--ink-3);margin-left:.4rem}
body.lens .now,body.lens .socials a{outline:2px dashed #BDB6A8;outline-offset:2px}
.voices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:1rem}
.voice{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);gap:.9rem;padding:1.2rem 1.2rem 3rem;border-radius:var(--r);background:var(--white);border:1px solid var(--rule)}
.voice .vi{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--paper-deep);color:var(--navy)}
.voice b{font-family:var(--serif);font-weight:400;font-size:1.9rem;line-height:1;color:var(--navy);margin-right:.45rem}
.vk{font:600 .7rem/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--navy)}
.voice p{font-size:.84rem;color:var(--ink-2);margin-top:.45rem}
.voice .ev{position:absolute;left:1.2rem;bottom:1rem}
.rec-by{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.9rem 1.1rem;border-radius:var(--r);background:var(--paper-deep);margin-bottom:clamp(1.6rem,3vw,2.2rem);font-size:.84rem;color:var(--ink-2)}
.rec-by .k{font:600 .64rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--navy);margin-right:.3rem}
.rec-by>span:not(.k):not(.specm){background:var(--white);border:1px solid var(--rule);border-radius:999px;padding:.35rem .7rem}
.rec-by b{color:var(--navy);font-weight:600;margin-left:.2rem}
.rec-by .btn{margin-left:auto}
.emodal .cert{max-width:540px;max-height:calc(100vh - 2rem);overflow:auto}
.eform{display:flex;flex-direction:column;gap:.55rem}
.fk{font:600 .66rem/1 var(--sans);letter-spacing:.13em;text-transform:uppercase;color:var(--ink-3);margin-top:.5rem}
.mopts{display:flex;flex-wrap:wrap;gap:.4rem}
.mopt{position:relative;cursor:pointer}
.mopt input{position:absolute;opacity:0;inset:0;cursor:pointer}
.mopt span{display:inline-block;font-size:.84rem;padding:.48rem .8rem;border-radius:999px;border:1px solid var(--rule);background:var(--white);color:var(--ink-2);transition:all .15s}
.mopt input:checked+span{background:var(--navy);border-color:var(--navy);color:var(--paper)}
.mopt input:focus-visible+span{outline:2px solid var(--orange);outline-offset:2px}
.fin{font:500 .95rem/1.2 var(--sans);color:var(--navy);padding:.75rem .9rem;border:1px solid var(--rule);border-radius:10px;background:var(--white);width:100%}
.fin:focus{outline:none;border-color:var(--navy)}
.eform>.btn{margin-top:.7rem;align-self:flex-start}
.fnote{font-size:.78rem;color:var(--ink-3);margin-top:.2rem}
.gate{display:flex;gap:.8rem;align-items:flex-start;padding:.85rem 1rem;border-radius:12px;background:var(--lilac);border:1px solid #DCD9F5;margin-top:.6rem}
.gate img{width:28px;height:28px;flex:none}
.gate p{font-size:.84rem;color:var(--ink-2);margin:0}
.gate b{display:block;color:var(--navy)}
.edone{display:flex;flex-direction:column;align-items:flex-start;gap:.8rem;padding:.4rem 0}
.edone .tick{width:42px;height:42px;border-radius:50%;background:var(--sage);color:var(--deep-navy);display:grid;place-items:center;font-weight:700}
.edone p{color:var(--ink-2)}
.mfollow{display:inline-flex;align-items:center;gap:.35rem}
.mfollow[aria-pressed="true"]{background:var(--ev-ver-bg);color:var(--sage-ink);border-color:#BFE0D3}
@media (max-width:900px){.voices{grid-template-columns:1fr}}
@media (max-width:640px){
  .now-m{margin-left:0;flex-basis:100%}
  .eg{padding:.58rem .75rem;font-size:.8rem}
  .soc-n{flex-basis:100%;margin:.2rem 0 0}
  .rec-by .btn{margin-left:0}
}
@media print{.engage,.now,.voices,.rec-by{display:none!important}}

/* ═════════ v6 · Definitive hero (insurance-pillar style, cut-out Y) ═════════ */
.hero{position:relative;overflow:hidden;background:var(--deep-navy);color:var(--paper);isolation:isolate}
.hero-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:76px;position:relative;z-index:2}
.hero .logo{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--paper)}
.hero .logo img{width:22px;height:auto}
.hero .logo .wm{font:600 .78rem/1 var(--sans);letter-spacing:.2em}
.hero nav{display:flex;align-items:center;gap:1.5rem}
.hero nav .l{font:500 .86rem/1 var(--sans);color:rgba(251,248,243,.78);text-decoration:none;background:none;border:0;padding:0;cursor:pointer}
.hero nav .l:hover{color:var(--paper)}
.hero-in{position:relative;z-index:2;padding-top:clamp(2.6rem,6vw,4.6rem);padding-bottom:clamp(3.6rem,8vw,6rem);max-width:var(--wrap,1180px)}
.hero-in>*{max-width:760px}
.back{display:inline-block;font-size:.8rem;color:rgba(251,248,243,.62);text-decoration:none;margin-bottom:.6rem}
.back:hover{color:var(--paper)}
.hk{font:600 .7rem/1.3 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--orange);margin-bottom:1.4rem}
.hero-id{display:flex;align-items:flex-end;gap:clamp(1rem,2.6vw,1.8rem)}
.hphoto{position:relative;flex:none;width:clamp(78px,9vw,112px);aspect-ratio:4/5;border-radius:14px;overflow:hidden;box-shadow:0 0 0 1px rgba(251,248,243,.18)}
.hphoto img{width:100%;height:100%;object-fit:cover;object-position:50% 20%}
.hphoto .stamp{position:absolute;left:5px;right:5px;bottom:5px;background:var(--sage);color:var(--deep-navy);font:700 .52rem/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;padding:.34rem .2rem;border-radius:5px;text-align:center}
.hname{font-family:var(--serif);font-weight:400;font-size:clamp(3rem,8.4vw,6.6rem);line-height:.92;letter-spacing:-.03em;color:var(--paper)}
.hsub{font-size:clamp(1rem,1.5vw,1.14rem);line-height:1.55;color:rgba(251,248,243,.78);margin-top:1.5rem;max-width:560px}
.hsub b{color:var(--paper);font-weight:600}
.hnow{display:flex;align-items:center;gap:.6rem;margin-top:1rem;font-size:.9rem;color:var(--paper)}
.hnow>span:nth-child(2){font:600 .62rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--sage)}
.hacts{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin-top:1.9rem}
.hacts .eg-follow{display:inline-flex;align-items:center;gap:.5rem;background:transparent;border:1px solid rgba(251,248,243,.28)}
.hacts .eg-follow b{font-weight:500;color:rgba(251,248,243,.6);padding-left:.5rem;border-left:1px solid rgba(251,248,243,.22)}
.hacts .eg-follow[aria-pressed="true"]{background:var(--sage);color:var(--deep-navy);border-color:var(--sage)}
.hacts .eg-follow[aria-pressed="true"] b{color:var(--deep-navy);border-color:rgba(26,22,40,.25)}
.viewsw.dark{background:rgba(251,248,243,.06);border-color:rgba(251,248,243,.18)}
.viewsw.dark button{color:rgba(251,248,243,.65)}
.viewsw.dark button[aria-pressed="true"]{background:var(--paper);color:var(--navy)}
/* the canonical figure-Y, unmodified, scaled and cropped by the hero's bottom edge */
.hero-y{position:absolute;z-index:1;right:clamp(-30px,4vw,90px);bottom:-14%;width:clamp(220px,28vw,400px);height:auto;pointer-events:none;user-select:none}
.hero+main .subnav{border-top:0}
/* record at a glance */
.glance-g{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(2rem,5vw,4.5rem);align-items:start}
.glance .tags{margin-top:1.4rem}
.glance-acts{display:flex;gap:1.4rem;margin-top:1.6rem;flex-wrap:wrap}
.proof-s{display:none}
body.v-proof .proof-s{display:block;padding:clamp(2rem,4vw,3rem) 0 clamp(2.4rem,5vw,3.6rem)}
body.v-proof .proof{margin-top:0}
body.v-proof .hero-in{padding-bottom:clamp(3rem,6vw,4.4rem)}
/* engagement no longer in masthead */
.engage,.now{display:none}
@media (max-width:900px){.glance-g{grid-template-columns:1fr}}
@media (max-width:760px){
  .hero nav .l{display:none}
  .hero-in>*{max-width:none}
  .hero-y{width:180px;right:-34px;bottom:-12%;opacity:.95}
  .hname{font-size:clamp(2.7rem,13vw,3.6rem)}
  .hero-id{align-items:flex-end}
  .hsub{margin-top:1.2rem;padding-right:96px}
  .hacts{gap:.5rem}
  .hacts .btn{flex:1 1 auto;justify-content:center}
  .viewsw.dark{margin-left:0;flex:1 1 100%;max-width:max-content}
  .hk .h-pr{display:none}
}
@media print{.hero{background:none;color:var(--navy)}.hero-y,.hacts,.hero nav{display:none}.hname{color:var(--navy)}}
.hnow>span:nth-child(2){white-space:nowrap}
.hnow .pulse{flex:none}
@media (max-width:760px){
  .hero-in{padding-bottom:128px}
  .hero-y{width:136px;right:-18px;bottom:-26px}
  .hsub{padding-right:0}
  .hnow{align-items:flex-start;flex-wrap:wrap;row-gap:.3rem}
  .hnow .pulse{margin-top:.35rem}
}
/* sub-page heroes */
.htitle{font-family:var(--serif);font-weight:400;font-size:clamp(2.6rem,6.4vw,5.2rem);line-height:.98;letter-spacing:-.028em;color:var(--paper);max-width:820px}
.htitle em{font-style:italic;color:var(--orange)}
.hnote{margin-top:.8rem;font-size:.86rem;color:var(--orange)}
.hnote:empty{display:none}
.sub-hero+main .page-h{border-top:0;padding-top:clamp(2.2rem,4vw,3rem)}
.sub-pad{height:clamp(2.2rem,4vw,3rem)}
@media (min-width:761px){.hero-in>*{max-width:min(760px,62%)}}

/* ═════════ v7 · Lean hero: name, grade, specialism · style · place ═════════ */
.hero-in{padding-top:clamp(2.4rem,5.5vw,4.2rem)}
.hk{margin-bottom:1.3rem}
.hero-id{align-items:center}
.hero-id>div{min-width:0}
.hname .pn{font-family:var(--sans);font-size:.2em;font-weight:600;letter-spacing:.14em;color:var(--sage);text-decoration:none;vertical-align:.32em;margin-left:.55em;border:1px solid rgba(126,185,166,.5);border-radius:6px;padding:.32em .5em .26em;line-height:1;white-space:nowrap}
.n-doc{display:none}
body.v-proof .n-cv{display:none}
body.v-proof .n-doc{display:inline}
.n-doc{font-size:.78em;letter-spacing:-.01em}
.n-doc .sn{font-family:var(--sans);font-weight:600;letter-spacing:.06em;font-size:.86em}
.hgrade{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem .6rem;margin-top:.9rem;font:600 .98rem/1.2 var(--sans);color:var(--paper)}
.hgrade .gt{width:22px;height:22px;border-radius:50%;background:var(--sage);color:var(--deep-navy);display:grid;place-items:center;font-size:.72rem;font-weight:800}
.hgrade .gs{font-weight:500;font-size:.8rem;color:rgba(251,248,243,.6)}
.hline{display:flex;flex-wrap:wrap;align-items:center;margin-top:1.6rem;font-size:clamp(1rem,1.5vw,1.12rem);color:rgba(251,248,243,.82)}
.hline>span{display:inline-flex;align-items:center}
.hline>span+span::before{content:"";width:4px;height:4px;border-radius:50%;background:var(--orange);margin:0 .8rem}
.hl-sp{color:var(--paper);font-weight:600}
.hacts{margin-top:1.8rem}
.hproof{font:600 .9rem/1 var(--sans);color:var(--paper);text-decoration:none;padding:.4rem .3rem;margin-left:.4rem;border-bottom:1px solid rgba(251,248,243,.35)}
.hproof:hover{border-color:var(--orange);color:var(--orange)}
.proof-only{display:none!important}
body.v-proof .proof-only{display:inline-flex!important}
/* switch now in the sticky bar */
.subnav .viewsw{flex:none;padding:2px}
.subnav .viewsw button{padding:.42rem .7rem;font-size:.64rem}
/* right-now card in the record section */
.nowc{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem .6rem;width:fit-content;max-width:100%;margin-bottom:1.3rem;padding:.55rem .85rem;border-radius:12px;border:1px dashed #BDB6A8;background:var(--white);font-size:.88rem;color:var(--navy)}
.nowc .nk{font:600 .62rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--sage-ink)}
.nowc .nm{font-size:.74rem;color:var(--ink-3)}
.glance .h2{font-size:clamp(1.8rem,3.4vw,2.6rem)}
@media (max-width:760px){
  .hero-in{padding-bottom:120px}
  .hero-id{align-items:center;gap:.9rem}
  .hphoto{width:72px}
  .hname{font-size:clamp(2.3rem,11vw,3rem)}
  .hname .pn{font-size:.26em;margin-left:.45em}
  .hgrade{font-size:.88rem;margin-top:.6rem}
  .hline{flex-direction:column;align-items:flex-start;gap:.35rem;margin-top:1.3rem}
  .hline>span+span::before{margin:0 .55rem 0 0}
  .hline>span:first-child::before{content:"";width:4px;height:4px;border-radius:50%;background:var(--orange);margin:0 .55rem 0 0}
  .hacts .hproof{flex:0 0 auto}
  .subnav .lens-btn .ls{display:none}
}
.hk .n-doc{font-size:inherit;letter-spacing:inherit}
.nowc{display:inline-flex}
.hphoto .stamp{white-space:nowrap;letter-spacing:.06em}
@media (max-width:760px){.hphoto .stamp{font-size:.46rem;left:3px;right:3px;padding:.3rem .1rem}}

/* ═════════ v8 · Spacious elite hero ═════════ */
.hero-in.elite{display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);gap:clamp(2.5rem,6vw,5.5rem);align-items:center;
  padding-top:clamp(3.5rem,8vw,7rem);padding-bottom:clamp(4.5rem,10vw,8.5rem);min-height:min(820px,calc(100vh - 76px))}
.hero-in.elite>*{max-width:none}
.eport{position:relative;margin:0;width:100%}
.eport::before{content:"";position:absolute;inset:18px -18px -18px 18px;border:1px solid rgba(240,146,33,.55);border-radius:2px;z-index:-1}
.eport img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 18%;border-radius:2px;filter:saturate(.92) contrast(1.02);box-shadow:0 30px 60px -30px rgba(0,0,0,.7)}
.eport figcaption{display:flex;align-items:center;gap:.5rem;margin-top:1.9rem;font:600 .64rem/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:rgba(251,248,243,.62)}
.eport .gt,.egrade .gt{width:18px;height:18px;border-radius:50%;background:var(--sage);color:var(--deep-navy);display:inline-grid;place-items:center;font-size:.6rem;font-weight:800;letter-spacing:0}
.ebody{min-width:0;max-width:min(640px,100%)}
.elite .hk{display:flex;align-items:center;gap:.7rem;margin-bottom:clamp(1.6rem,3vw,2.4rem);letter-spacing:.22em}
.elite .hk .sep{color:rgba(251,248,243,.3)}
.ename{display:inline-grid;justify-items:end;text-transform:uppercase;line-height:1;margin:0}
.ename .fn{font:500 clamp(.9rem,1.6vw,1.2rem)/1 var(--sans);letter-spacing:.42em;margin-right:-.42em;color:rgba(251,248,243,.78);margin-bottom:.5rem}
.ename .sn{font-family:var(--serif);font-weight:400;font-size:clamp(3.4rem,8.6vw,7.4rem);line-height:.86;letter-spacing:.015em;color:var(--paper)}
.erule{display:block;width:56px;height:2px;background:var(--orange);margin:clamp(1.8rem,3vw,2.4rem) 0 clamp(1.3rem,2.4vw,1.7rem)}
.egrade{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem 1rem;font-family:var(--serif);font-size:clamp(1.25rem,2vw,1.6rem);line-height:1.2;color:var(--paper)}
.egrade .gv{display:inline-flex;align-items:center;gap:.45rem;font:600 .64rem/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--sage)}
.eline{display:flex;flex-wrap:wrap;align-items:center;margin-top:.9rem;font-size:clamp(.95rem,1.3vw,1.05rem);color:rgba(251,248,243,.7)}
.eline>span{display:inline-flex;align-items:center}
.eline>span+span::before{content:"";width:3px;height:3px;border-radius:50%;background:rgba(251,248,243,.45);margin:0 .75rem}
.eline .hl-sp{color:var(--paper);font-weight:500}
.elite .hacts{margin-top:clamp(2.2rem,4vw,3rem)}
/* proof: document-style order */
body.v-proof .ename .fn{order:2;margin:.6rem -.42em 0 0}
body.v-proof .ename .sn::after{content:","}
/* Y stays bottom-right, behind the content */
.hero:has(.elite) .hero-y{width:clamp(200px,22vw,330px);right:clamp(-40px,2vw,40px);bottom:-12%;opacity:1}
@media (max-width:1100px){.hero:has(.elite) .hero-y{width:200px;right:-30px}}
@media (max-width:860px){
  .hero-in.elite{grid-template-columns:1fr;gap:2.4rem;min-height:0;padding-top:2.2rem;padding-bottom:150px}
  .eport{width:min(70%,300px)}
  .eport::before{inset:12px -12px -12px 12px}
  .eport figcaption{margin-top:1.4rem}
  .ename .sn{font-size:clamp(3.2rem,17vw,5rem)}
  .ename .fn{letter-spacing:.34em;margin-right:-.34em}
  .eline{flex-direction:column;align-items:flex-start;gap:.3rem}
  .eline>span+span::before{display:none}
  .hero:has(.elite) .hero-y{width:150px;right:-20px;bottom:-30px}
  .elite .hacts .btn{flex:1 1 auto;justify-content:center}
}
/* more air below the hero */
.glance{padding-top:clamp(4rem,9vw,7rem)}
.eport::before{content:none}
.eimg{position:relative;isolation:isolate}
.eimg::before{content:"";position:absolute;inset:18px -18px -18px 18px;border:1px solid rgba(240,146,33,.55);border-radius:2px;z-index:-1}
@media (max-width:860px){.eimg::before{inset:12px -12px -12px 12px}.eport{width:min(62%,300px)}}

/* ═════════ v9 · Elite, mobile-first hero ═════════ */
.show-m{display:none!important}
.hero-in.e9{display:grid;grid-template-columns:minmax(240px,320px) minmax(0,1fr);grid-template-areas:"port hk" "port name" "port meta" "port acts";
  column-gap:clamp(3rem,7vw,6rem);row-gap:0;align-content:center;align-items:start}
.e9 .hk{grid-area:hk;align-self:end}
.e9 .ename{grid-area:name;justify-self:start}
.e9 .eport{grid-area:port;align-self:center}
.e9 .emeta{grid-area:meta;margin-top:clamp(1.8rem,3vw,2.4rem);padding-top:clamp(1.3rem,2.4vw,1.7rem);border-top:1px solid rgba(251,248,243,.14);max-width:600px}
.e9 .hacts{grid-area:acts}
.hk.rec{display:flex;align-items:center;flex-wrap:wrap;gap:.55rem;color:var(--sage);letter-spacing:.2em}
.hk.rec .n-cv,.hk.rec .n-doc{color:var(--orange)}
.hk.rec .sep{color:rgba(251,248,243,.3)}
.hk.rec .hk-d{color:rgba(251,248,243,.55);letter-spacing:.14em}
/* portrait: Brand-page treatment, plate carries proof */
.e9 .eport img{border-radius:22px;aspect-ratio:4/5;box-shadow:0 40px 80px -40px rgba(0,0,0,.75)}
.plate{position:absolute;left:14px;bottom:14px;right:auto;display:flex;align-items:center;gap:.55rem;margin:0;padding:.6rem .8rem .6rem .65rem;border-radius:12px;
  background:rgba(251,248,243,.94);backdrop-filter:blur(6px);color:var(--navy);text-transform:none;letter-spacing:0;box-shadow:0 8px 24px -10px rgba(0,0,0,.4);max-width:calc(100% - 28px)}
.plate b{display:block;font:600 .8rem/1.15 var(--sans);color:var(--navy)}
.plate .pl-s{display:block;font:400 .7rem/1.25 var(--sans);color:var(--ink-3)}
.plate .gt{flex:none;width:22px;height:22px;border-radius:50%;background:var(--sage-ink);color:#fff;display:grid;place-items:center;font-size:.66rem;font-weight:800}
.eopen{display:flex;align-items:center;gap:.6rem;margin-top:1rem;font-size:.9rem;color:rgba(251,248,243,.82)}
.eopen .od{width:7px;height:7px;border-radius:50%;background:var(--sage);box-shadow:0 0 0 4px rgba(126,185,166,.18)}
.e9 .hacts{margin-top:clamp(2rem,3.6vw,2.8rem)}
.e9 .hacts .btn{min-height:46px}
.e9 .hproof{margin:0;padding:.85rem 1.2rem;border-bottom:1px solid rgba(251,248,243,.28);font:600 .9rem/1 var(--sans)}
.e9 .hproof:hover{color:var(--paper);border-color:var(--paper)}
/* entrance */
@media (prefers-reduced-motion:no-preference){
  .e9>*{animation:rise .8s cubic-bezier(.2,.7,.2,1) both}
  .e9 .ename{animation-delay:.08s}.e9 .eport{animation-delay:.16s}.e9 .emeta{animation-delay:.24s}.e9 .hacts{animation-delay:.32s}
}
@keyframes rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
/* teaching photo */
.teach{position:relative;margin:0 0 clamp(2rem,4vw,3rem)}
.teach img{display:block;width:100%;aspect-ratio:16/7;object-fit:cover;object-position:50% 55%;border-radius:22px}
.teach .plate{left:16px;bottom:16px}
/* shared six facts */
.six{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:1.8rem 0 0;border-top:1px solid var(--rule)}
.six>div{padding:1rem 1rem 1rem 0;border-bottom:1px solid var(--rule)}
.six dt{font:600 .64rem/1.2 var(--sans);letter-spacing:.13em;text-transform:uppercase;color:var(--sage-ink);margin-bottom:.45rem}
.six dd{margin:0;font-family:var(--serif);font-size:1.12rem;line-height:1.25;color:var(--navy)}
.six .specm{vertical-align:middle;margin-left:.3rem}
.six-n{display:flex;align-items:center;gap:.5rem;margin-top:1rem;font-size:.8rem;color:var(--ink-3)}
@media (max-width:860px){
  .show-m{display:inline-flex!important}
  .hide-m{display:none!important}
  .hero-in.e9{grid-template-columns:118px minmax(0,1fr);grid-template-areas:"hk hk" "name name" "port meta" "acts acts" "links links";column-gap:1.1rem;padding-top:1.4rem;padding-bottom:96px;min-height:0}
  .e9 .hk{margin-bottom:1.1rem;font-size:.6rem;letter-spacing:.16em}
  .e9 .hk .hk-d{display:none}
  .e9 .ename{margin-bottom:1.5rem}
  .e9 .ename .sn{font-size:clamp(3.4rem,18vw,4.8rem)}
  .e9 .eport{width:118px;align-self:start}
  .e9 .eport img{border-radius:14px}
  .e9 .plate{left:6px;right:6px;bottom:6px;padding:.32rem .4rem;gap:.3rem;border-radius:8px;max-width:none}
  .e9 .plate .gt{width:15px;height:15px;font-size:.5rem}
  .e9 .plate b{font-size:.56rem;letter-spacing:.02em}
  .e9 .plate .pl-s{display:none}
  .e9 .emeta{margin:0;padding:0;border:0;align-self:center}
  .e9 .egrade{font-size:1.18rem;flex-direction:column;align-items:flex-start;gap:.45rem}
  .e9 .eline{margin-top:.75rem;font-size:.86rem;gap:.2rem}
  .e9 .eopen{font-size:.8rem;margin-top:.7rem;align-items:flex-start}
  .e9 .eopen .od{margin-top:.38rem;flex:none}
  .e9 .hacts{margin-top:1.6rem;display:grid;grid-template-columns:1fr 1fr;gap:.5rem}
  .e9 .hacts .btn-light{grid-column:1/-1}
  .e9 .hproof{border:1px solid rgba(251,248,243,.28);border-radius:999px;justify-content:center}
  .hero:has(.e9) .hero-y{width:120px;right:-14px;bottom:-22px}
  .teach img{aspect-ratio:4/3;border-radius:16px}
  .six{grid-template-columns:1fr 1fr}
}
@media (max-width:360px){.hero-in.e9{grid-template-columns:100px minmax(0,1fr)}.e9 .eport{width:100px}}
.eport .plate{text-transform:none;letter-spacing:0;margin:0;color:var(--navy);font:inherit}
.eport .plate b{letter-spacing:0}
.hk.rec .pulse{flex:none}
@media (max-width:860px){body.v-proof .hero-in.e9{padding-bottom:112px}}
@media (min-width:861px){
  .hero-in.e9{min-height:min(780px,calc(100svh - 76px));padding-top:clamp(2rem,6vh,5.5rem);padding-bottom:clamp(3rem,9vh,7rem)}
  .hero:has(.e9) .hero-y{width:clamp(170px,17vw,290px);right:clamp(-40px,-1vw,10px);bottom:-10%}
}

/* ═════════ v10 · place + flag under the surname ═════════ */
.ename-w{grid-area:name;justify-self:start;display:inline-grid;justify-items:end}
.e9 .ename-w .ename{grid-area:auto}
.eplace{display:inline-flex;align-items:center;gap:.6rem;margin-top:clamp(.7rem,1.4vw,1rem);font:500 clamp(.8rem,1.1vw,.92rem)/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:rgba(251,248,243,.72)}
.eplace img{width:20px;height:10px;flex:none;border-radius:2px;box-shadow:0 0 0 1px rgba(251,248,243,.25)}
@media (max-width:860px){
  .ename-w{margin-bottom:1.5rem}
  .e9 .ename-w .ename{margin-bottom:0}
  .eplace{font-size:.7rem;letter-spacing:.14em;margin-top:.6rem}
  .eplace img{width:18px;height:9px}
}

/* ═════════ v14 · Y raised: most of the stem shows, base still cut by the hero edge ═════════
   Mark is 279 × 312.91 (h = 1.1216w). The foot bar is the bottom 4.5% of its height;
   hiding ~2.4% of height cuts through the foot, so the stem reads in full but the base doesn't. */
.hero .hero-y{bottom:calc(var(--yw) * -.027)!important;width:var(--yw)!important}
.hero{--yw:clamp(220px,28vw,400px)}
.hero:has(.e9){--yw:clamp(170px,17vw,290px)}
@media (max-width:1100px){.hero:has(.e9){--yw:200px}}
@media (max-width:860px){
  .hero:has(.e9){--yw:108px}
  .hero-in.e9,body.v-proof .hero-in.e9{padding-bottom:136px}
  .hero:has(.e9) .hero-y{right:-10px}
}
@media (max-width:760px){
  .hero:not(:has(.e9)){--yw:120px}
  .sub-hero .hero-in{padding-bottom:140px}
  .sub-hero .hero-y{right:-10px}
}
@media (min-width:861px) and (max-width:1180px){
  .hero:has(.e9){--yw:180px}
  .hero-in.e9{padding-bottom:calc(var(--yw) * 1.12 + 1.5rem)}
}

/* v15 · Y nudged 5mm left, 3mm down (CSS mm: 1mm = 3.78px) */
.hero .hero-y{transform:translate(-5mm,3mm)}
/* v16 · Y a further 10mm left, 1.5mm up (net from v14: 15mm left, 1.5mm down) */
.hero .hero-y{transform:translate(-15mm,1.5mm)}

/* ═════════ v16 · Figures strip (same component as the Brand page) ═════════ */
.figs-s{padding:clamp(1.6rem,3.4vw,2.6rem) 0 0}
.figs{display:grid;grid-template-columns:minmax(0,1.7fr) repeat(5,minmax(0,1fr));background:var(--white);border:1px solid var(--rule);border-radius:18px;overflow:hidden}
.figs>div{padding:1.15rem 1rem;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-width:0}
.figs>div+div{border-left:1px solid var(--rule)}
.figs .fg b{font-family:var(--serif);font-weight:400;font-size:clamp(1.5rem,2.3vw,1.95rem);line-height:1;color:var(--navy);font-variant-numeric:lining-nums}
.figs .fg span{margin-top:.4rem;font-size:.78rem;color:var(--ink-3)}
.fg-id{flex-direction:row!important;justify-content:flex-start!important;gap:.8rem;text-align:left!important;padding-left:1.3rem!important}
.fg-id img{flex:none}
.fg-id b{display:block;font:600 .92rem/1.2 var(--sans);color:var(--navy)}
.fg-id>div>span{display:block;margin-top:.2rem;font-size:.76rem;color:var(--ink-3)}
.fg-id .fgn{display:inline;font:600 .76rem/1 var(--sans);color:var(--navy);letter-spacing:.06em;margin-left:.2rem}
body.lens .figs [data-ev="ver"]{box-shadow:inset 0 -3px 0 var(--sage)}
body.lens .figs [data-ev="acc"]{box-shadow:inset 0 -3px 0 var(--lavender)}
body.lens .figs [data-ev="vch"]{box-shadow:inset 0 -3px 0 var(--orange)}
.figs-s+.subnav,.figs-s~.subnav{margin-top:clamp(1.6rem,3.4vw,2.6rem)}
@media (max-width:900px){
  .figs{grid-template-columns:repeat(6,minmax(0,1fr))}
  .figs>div+div{border-left:0}
  .fg-id{grid-column:1/-1;border-bottom:1px solid var(--rule);justify-content:center!important}
  .figs .fg{grid-column:span 2;padding:1rem .5rem}
  .figs .fg:nth-child(5),.figs .fg:nth-child(6){grid-column:span 3;border-top:1px solid var(--rule)}
  .figs .fg:nth-child(3),.figs .fg:nth-child(4),.figs .fg:nth-child(6){border-left:1px solid var(--rule)}
  .figs .fg span{font-size:.72rem}
}
/* v17 · strip: experience level first, active events links to What's on */
.fg-id .fgk{display:block;font:600 .62rem/1.2 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--sage-ink);margin-bottom:.3rem}
.fg-id b{font-family:var(--serif);font-weight:400;font-size:1.22rem;line-height:1.15}
a.fg{text-decoration:none;transition:background .2s}
a.fg:hover{background:var(--paper)}
a.fg:hover span{color:var(--navy)}
.figs>a{padding:1.15rem 1rem;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-width:0;border-left:1px solid var(--rule);color:inherit}
.figs .fg b{display:block}
.figs .fg span{display:block}
@media (max-width:900px){
  .figs>a{border-left:0;padding:1rem .5rem}
  .figs .fg:nth-child(5),.figs .fg:nth-child(6){grid-column:span 3;border-top:1px solid var(--rule)}
  .figs .fg:nth-child(6){border-left:1px solid var(--rule)}
}
.figs>a+div{border-left:1px solid var(--rule)}
@media (max-width:900px){.figs>a+div{border-left:1px solid var(--rule)}}
/* v18 · 7 cells: grade | years | teaching hrs | CPD hrs | quals | events | reviews */
.figs{grid-template-columns:minmax(0,1.55fr) repeat(6,minmax(0,1fr))}
.figs .fg b{font-size:clamp(1.4rem,2.1vw,1.85rem)}
.fg-id b{font-size:1.2rem}
@media (max-width:1100px) and (min-width:901px){.figs .fg span{font-size:.72rem}.fg-id{padding-left:1rem!important}.fg-id b{font-size:1.05rem}}
@media (max-width:900px){
  .figs .fg,.figs .fg:nth-child(5),.figs .fg:nth-child(6){grid-column:span 2;border-left:0;border-top:0}
  .figs .fg:nth-child(3),.figs .fg:nth-child(4),.figs .fg:nth-child(6),.figs .fg:nth-child(7){border-left:1px solid var(--rule)}
  .figs .fg:nth-child(5),.figs .fg:nth-child(6),.figs .fg:nth-child(7){border-top:1px solid var(--rule)}
}
.figs{grid-template-columns:max-content repeat(6,minmax(0,1fr))}
.fg-id b{white-space:nowrap}
.fg-id{padding-right:1.4rem!important}
@media (max-width:900px){.figs{grid-template-columns:repeat(6,minmax(0,1fr))}.figs .fg span{white-space:nowrap}}
@media (max-width:370px){.figs .fg span{font-size:.66rem}}
@media (max-width:1080px){
  .figs{grid-template-columns:repeat(6,minmax(0,1fr))}
  .figs>div+div,.figs>a,.figs>a+div{border-left:0}
  .fg-id{grid-column:1/-1;border-bottom:1px solid var(--rule);justify-content:center!important;padding:1rem!important}
  .fg-id b{font-size:1.2rem!important}
  .figs .fg,.figs .fg:nth-child(5),.figs .fg:nth-child(6){grid-column:span 2;border-top:0}
  .figs .fg:nth-child(3),.figs .fg:nth-child(4),.figs .fg:nth-child(6),.figs .fg:nth-child(7){border-left:1px solid var(--rule)}
  .figs .fg:nth-child(5),.figs .fg:nth-child(6),.figs .fg:nth-child(7){border-top:1px solid var(--rule)}
  .figs .fg span{white-space:nowrap;font-size:.76rem}
}
@media (max-width:900px){.figs .fg span{font-size:.72rem}}
@media (max-width:370px){.figs .fg span{font-size:.66rem}}
