@font-face{font-family:"Cormorant Garamond";src:url("assets/cormorant-garamond.woff2") format("woff2");font-weight:500 600;font-display:swap}
@font-face{font-family:"Inter";src:url("assets/inter.woff2") format("woff2");font-weight:400 700;font-display:swap}
.number{font:600 1.05rem/1 var(--serif)}
:root{--dark:#1B2A3A;--ink:#2B2E34;--paper:#F0F1F2;--silver:#C7C9CC;--ice:#B8CCE0;--muted:#414751;--white:#FFFFFF;--sans:"Inter",Arial,sans-serif;--serif:"Cormorant Garamond",Georgia,"Times New Roman",serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:1rem/1.65 var(--sans)}
a{color:inherit;text-decoration:none}
a:focus-visible{outline:2px solid currentColor;outline-offset:5px}
.wrap{width:min(1170px,calc(100% - 96px));margin-inline:auto}
.top,.hero,.contact,footer{background:var(--dark);color:#f9f7f3}
.nav,.foot{display:flex;justify-content:space-between;align-items:center;gap:20px}
.nav{min-height:90px;border-bottom:1px solid #ffffff26}
.brand{display:block;width:clamp(185px,27vw,315px);min-width:0}
.brand img{display:block;width:100%;height:auto}
.brand span{display:block;color:var(--ice);font:600 .61rem/1.4 var(--sans);letter-spacing:.22em;text-transform:uppercase;margin-top:7px}
.navlink{font-size:.85rem}
.navlink span{color:var(--ice);margin-left:8px}
.hero-grid{display:grid;grid-template-columns:1.45fr 1fr;align-items:center;gap:clamp(32px,6vw,92px);padding-block:54px 62px}
.kicker{margin:0 0 16px;color:#77582a;font-size:.72rem;letter-spacing:.19em;text-transform:uppercase;font-weight:700}
.position .kicker,.offers .kicker{color:var(--ink)}
.hero .kicker,.contact .kicker{color:var(--ice)}
h1,h2,h3,blockquote{font-family:var(--serif);font-weight:600;line-height:1.03;margin:0;letter-spacing:-.035em;text-wrap:balance}
h1{font-family:var(--sans);font-size:clamp(3rem,5.1vw,4.65rem);letter-spacing:normal}
h2{font-size:clamp(2.35rem,4.5vw,4.1rem)}
h3{font-size:clamp(2rem,3.1vw,2.8rem)}
.intro{font-size:1.1rem;color:#e1e4e6;max-width:440px;margin:24px 0 30px}
.button{display:inline-flex;align-items:center;gap:15px;justify-content:space-between;background:var(--ice);color:#19212a;font-weight:700;font-size:.88rem;line-height:1.35;padding:16px 19px;min-height:52px;transition:background .18s}
.button:hover{background:#d7e4ef}
figure{margin:0;position:relative}
figure img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center top}
figcaption{position:absolute;bottom:0;left:0;padding:9px 14px;background:var(--dark);color:#fff;font-size:.71rem;letter-spacing:.09em}
.position,.offers,.contact{padding-block:clamp(64px,8vw,108px)}
.position-grid{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:clamp(30px,7vw,100px)}
.bodycopy{color:var(--ink);font-size:1.12rem}
.bodycopy p:first-child,.contact p:first-child{margin-top:0}
.bodycopy p:last-child{margin-bottom:0}
.offers{background:color-mix(in srgb,var(--silver) 55%,var(--white));scroll-margin-top:20px}
.cards{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:34px}
article{background:#fcfaf6;border-top:3px solid #9d8052;padding:clamp(24px,4vw,44px)}
article>p:not(.kicker){color:var(--muted);min-height:5.1em}
.detail{border-top:1px solid #d6d0c5;margin-top:22px;padding-top:18px}
.detail h4{font:600 1.4rem var(--serif);line-height:1.35;margin:0 0 7px}
.detail p{margin:0;color:#44515d}
.contact .position-grid>div:nth-child(2) p{margin:0 0 23px;color:#e1e4e6;font-size:1.1rem;max-width:460px}
.foot{padding-block:22px;border-top:1px solid #ffffff26;font-size:.76rem;color:#d2d7dd}
@media(max-width:800px){
  .wrap{width:calc(100% - 44px)}
  .hero-grid{gap:28px}
  .desktop{display:none}
  h1{font-size:clamp(2.5rem,6.25vw,4rem)}
  article>p:not(.kicker){min-height:0}
}
@media(max-width:620px){
  .nav{min-height:74px}
  .navlink{font-size:.76rem;white-space:nowrap}
  .navlink span{margin-left:1px}
  .hero-grid,.position-grid,.cards{grid-template-columns:1fr}
  .hero-grid{padding-block:42px 28px;gap:32px}
  figure img{aspect-ratio:5/4}
  .position-grid{gap:23px}
  .foot{align-items:flex-start;flex-direction:column;gap:4px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

.pressure-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(24px,6vw,76px);margin:clamp(30px,5vw,60px) 0 0}
.pressure-list div{border-top:1px solid var(--silver);padding:18px 0 22px}
.pressure-list dt{font-weight:700}
.pressure-list dd{margin:6px 0 0;color:var(--muted)}
.sparring{border-top:1px solid var(--silver)}
@media(max-width:620px){.pressure-list{grid-template-columns:1fr}}

.bio-grid{align-items:center}
.bio-copy{margin-top:24px}
.bio-portrait{display:block;width:100%;height:auto;max-width:500px;justify-self:end}
@media(max-width:620px){.bio-portrait{justify-self:start}}

.hero-claim{font:600 clamp(2rem,4vw,3.75rem)/1.12 var(--serif);letter-spacing:.075em;text-transform:uppercase;text-wrap:initial}
.result-table{width:100%;table-layout:fixed;border-collapse:collapse;text-align:left;margin-top:32px}
.result-table th,.result-table td{padding:14px clamp(8px,2vw,24px);border-bottom:1px solid var(--silver);vertical-align:top}
.result-table th{background:var(--silver)}
.result-table td{color:var(--muted)}


.hero-claim{font-size:clamp(2.4rem,4.6vw,4.45rem);letter-spacing:-.025em;text-transform:none;text-wrap:balance}
.hero .intro{max-width:540px}
.hero .kicker{max-width:520px;line-height:1.65}

.hero-quote{margin-top:30px;padding-left:16px;border-left:2px solid var(--ice);max-width:530px}
.hero-quote blockquote{font-size:clamp(1.25rem,2vw,1.65rem);line-height:1.25;letter-spacing:0;text-wrap:pretty}
.hero-quote figcaption{position:static;background:none;color:var(--ice);padding:0;margin-top:8px}
.study{margin-top:28px;padding:16px 20px;background:#e4ebf2;border-left:3px solid var(--ice)}
.study p{margin:0 0 4px}
.study a{font-size:.84rem;text-decoration:underline;text-underline-offset:.2em}
.reflection{margin:26px 0 0;font-style:italic;font-weight:600}
.foot-legal{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem}
.foot-legal a,.legal-page a{text-underline-offset:.2em}
.legal-page{max-width:48rem;padding-top:clamp(3rem,8vw,7rem);padding-bottom:clamp(3rem,8vw,7rem);overflow-wrap:anywhere}
.legal-page h1{font-size:clamp(2.5rem,7vw,5rem);margin:1.5rem 0}
.legal-page h2{font-size:clamp(1.6rem,4vw,2.4rem);margin:2rem 0 .5rem}
.legal-contact{font-style:normal;line-height:1.7;margin-bottom:1rem}
.foot-legal a:hover,.legal-page a{text-decoration:underline}
@media(max-width:620px){.foot{gap:16px}}
