@font-face{font-family:'Newsreader';font-style:normal;font-weight:300;font-display:swap;src:url('../fonts/newsreader-latin-300-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Newsreader';font-style:normal;font-weight:300;font-display:swap;src:url('../fonts/newsreader-latin-ext-300-normal.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Newsreader';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/newsreader-latin-400-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Newsreader';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/newsreader-latin-ext-400-normal.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Newsreader';font-style:italic;font-weight:400;font-display:swap;src:url('../fonts/newsreader-latin-400-italic.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Newsreader';font-style:italic;font-weight:400;font-display:swap;src:url('../fonts/newsreader-latin-ext-400-italic.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Inter Tight';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/inter-tight-latin-400-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter Tight';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/inter-tight-latin-ext-400-normal.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Inter Tight';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/inter-tight-latin-500-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter Tight';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/inter-tight-latin-ext-500-normal.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/jetbrains-mono-latin-400-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/jetbrains-mono-latin-ext-400-normal.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/jetbrains-mono-latin-500-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/jetbrains-mono-latin-ext-500-normal.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

:root{
  --white:#FCFBF9; --white-2:#F4F2ED; --black:#111110; --black-2:#1C1B19;
  --grey:#6E6A63; --grey-2:#9A958C; --gold:#DEAF52; --gold-deep:#8B6725;
  --line:rgba(17,17,16,.12); --line-d:rgba(252,251,249,.14);
  --gut:24px; --max:1240px; --hdr:88px; --pad:88px;
  --serif:'Newsreader',serif;
  --sans:'Inter Tight',sans-serif;
  --mono:'JetBrains Mono',monospace;
  --ease:cubic-bezier(.16,1,.3,1);
  --ease-out:cubic-bezier(.16,1,.3,1);
  --ease-soft:cubic-bezier(.22,1,.36,1);
  --d-fast:600ms; --d-base:1000ms; --d-slow:1400ms;
  --rise:18px;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:var(--hdr);-webkit-text-size-adjust:100%}
body{margin:0;background:var(--white);color:var(--black);font-family:var(--sans);overflow-x:hidden}
img{display:block;max-width:100%;height:auto;border:0}
h1,h2,h3,p,dl,dd,dt,ul,li,address{margin:0;padding:0}
ul{list-style:none}
a{color:var(--gold-deep);text-decoration:none}
::selection{background:var(--gold);color:var(--black)}
:focus-visible{outline:1px solid var(--gold-deep);outline-offset:4px}
.skip{position:absolute;left:-9999px;top:0;z-index:200;background:var(--black);color:var(--gold);font:400 11px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;padding:14px 18px}
.skip:focus{left:0}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gut)}
picture{display:block}

/* ---------- type ---------- */
.label{font:500 11px/1.5 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--grey)}
.label--gold{color:var(--gold)}
.label--deep{color:var(--gold-deep)}
.label--section{margin:var(--pad) 0 34px;color:var(--gold-deep)}
/* light-safe by default; dark surfaces opt back into full gold */
.idx{font:500 12px/1 var(--mono);letter-spacing:.12em;color:var(--gold-deep)}
.sec--black .idx,.hero .idx{color:var(--gold)}
.idx--deep{color:var(--gold-deep)}
.data{font:400 11px/1.6 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--grey)}
.h1{font:300 clamp(46px,8vw,120px)/1.12 var(--serif);letter-spacing:-.015em;color:var(--white);max-width:15ch}
.h1 em{font-weight:400;font-style:italic}
.head{font:300 clamp(32px,4.4vw,52px)/1.12 var(--serif);letter-spacing:-.015em}
.head--light{color:var(--white)}
.head em{font-weight:400;font-style:italic}
.statement{font:300 clamp(32px,5vw,64px)/1.12 var(--serif);letter-spacing:-.015em}
.statement--light{color:var(--white)}
.statement em{font-weight:400;font-style:italic}
.sub{font:400 clamp(26px,2.6vw,34px)/1.15 var(--serif);letter-spacing:-.015em}
.sub--sm{font-size:clamp(24px,2.2vw,30px)}
.sub--xs{font-size:22px}
.sub--light{color:var(--white)}
.body{font:400 17px/1.8 var(--sans);color:var(--grey);max-width:60ch;text-wrap:pretty}
.body--sm{font-size:15px;line-height:1.75}
.body--dark{color:var(--grey-2)}
.body--center{margin-left:auto;margin-right:auto}
.body--intro{font-size:19px;max-width:52ch;color:var(--black)}
.lede{font:400 18px/1.75 var(--sans);color:var(--grey-2);max-width:540px}

/* ---------- motion ---------- */
.reveal-on [data-rise]{opacity:0;transform:translateY(var(--rise))}
.reveal-on [data-rise].is-in{opacity:1;transform:none;transition:opacity var(--d-base) var(--ease-out),transform var(--d-base) var(--ease-out)}
/* escape hatch: final state without a transition, for frames that get no frame clock */
.reveal-off [data-rise]{opacity:1 !important;transform:none !important;transition:none !important}

/* ---------- header ---------- */
.hdr{position:fixed;top:0;left:0;right:0;z-index:90;background:transparent;border-bottom:1px solid transparent;transition:background 500ms var(--ease-soft),border-color 500ms var(--ease-soft),transform 800ms var(--ease-soft)}
.reveal-on .hdr.is-primed{transform:translateY(-100%)}
.reveal-on .hdr.is-primed.is-lit{transform:none}
.reveal-off .hdr{transform:none !important}
.hdr.is-on{background:rgba(252,251,249,.96);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom-color:var(--line)}
.hdr__in{max-width:var(--max);margin:0 auto;padding:0 var(--gut);height:var(--hdr);display:flex;align-items:center;justify-content:space-between;gap:40px}
.hdr__logo{display:block;flex:0 0 auto}
.logo{min-width:200px;width:auto;height:20px}
.nav{display:none;align-items:center;gap:30px}
.nav a{position:relative;font:500 14px/1 var(--sans);color:var(--white);white-space:nowrap;padding-bottom:5px;transition:color 300ms linear}
.nav a::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:1px;background:var(--gold);transition:right 450ms var(--ease-out)}
.nav a:hover::after{right:0}
.hdr.is-on .nav a{color:var(--black)}
.hdr.is-on .nav a::after{background:var(--gold-deep)}
.hdr.is-on .nav a:hover{color:var(--gold-deep)}
.burger{display:flex;flex-direction:column;justify-content:center;gap:7px;width:44px;height:44px;margin-right:-10px;padding:0;background:none;border:0;cursor:pointer}
.burger span{display:block;width:26px;height:1px;background:var(--gold);margin-left:auto;transition:background 300ms linear}
.hdr.is-on .burger span{background:var(--gold-deep)}

.menu{position:fixed;inset:0;z-index:120;background:var(--black);display:flex;align-items:center;justify-content:center}
.menu[hidden]{display:none}
.menu__close{position:absolute;top:22px;right:20px;min-height:44px;padding:0 8px;background:none;border:0;color:var(--gold);font:400 11px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;cursor:pointer}
.menu__nav{display:flex;flex-direction:column;gap:26px;padding:0 var(--gut)}
.menu__nav a{display:flex;align-items:baseline;gap:18px;font:300 30px/1.1 var(--serif);color:var(--white)}
.menu__nav i{font:400 11px/1 var(--mono);font-style:normal;letter-spacing:.12em;color:var(--gold)}

/* ---------- hero ---------- */
.hero{position:relative;min-height:92vh;display:flex;align-items:center;overflow:hidden;background:var(--black);padding:calc(var(--hdr) + 40px) 0 100px}
.hero__media{position:absolute;inset:0;opacity:.42}
.hero__media picture,.hero__media img{width:100%;height:100%;object-fit:cover;filter:saturate(.85) contrast(1.03);transform-origin:50% 50%}
.hero__media img.is-live{will-change:transform}
.hero__in{transform-origin:50% 0}
.hero__scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(17,17,16,.4) 0%,rgba(17,17,16,.08) 42%,rgba(17,17,16,.72) 100%);pointer-events:none}
.hero__in{position:relative;z-index:2;width:100%}
.hero .h1{margin-top:30px}
.hero .lede{margin-top:34px}
.fields{display:flex;align-items:center;gap:22px;margin-top:52px}
.fields a{font:400 20px/1.2 var(--serif);color:var(--white);transition:color 300ms linear}
.fields a:hover{color:var(--gold)}
.fields__bar{display:block;width:1px;height:28px;background:var(--gold)}
.cue{position:absolute;left:var(--gut);bottom:0;z-index:2;display:flex;flex-direction:column;gap:12px;transition:opacity 400ms var(--ease-out)}
.cue.is-gone{opacity:0}
.cue span{font:400 10px/1 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--grey-2)}
.cue i{position:relative;display:block;width:1px;height:56px;background:rgba(222,175,82,.22);overflow:hidden}
.cue i::after{content:"";position:absolute;left:0;top:0;width:1px;height:22px;background:var(--gold);animation:cue 2.6s ease-in-out infinite}
@keyframes cue{0%{transform:translateY(-22px)}100%{transform:translateY(56px)}}

/* ---------- sections ---------- */
.sec{position:relative}
.sec--white{background:var(--white)}
.sec--white2{background:var(--white-2)}
.sec--black{background:var(--black)}
.sec > .wrap{padding-top:var(--pad);padding-bottom:var(--pad)}
.center{max-width:760px;margin:0 auto;text-align:center}
.center .label{margin-top:14px}
.center .statement,.center .head{margin-top:26px}
.center .body{margin-top:26px}

.split{display:grid;grid-template-columns:1fr;gap:34px}
.split__b > * + *{margin-top:28px}
.split .label{margin-top:12px}

/* figures — no rules */
.figures{display:grid;grid-template-columns:1fr 1fr;gap:44px 28px;margin-top:var(--pad)}
.fig__n{font:300 clamp(38px,6vw,64px)/1 var(--serif);letter-spacing:-.015em;color:var(--black);font-variant-numeric:tabular-nums}
.fig__n em{font:400 12px/1 var(--mono);font-style:normal;letter-spacing:.12em;text-transform:uppercase;color:var(--grey)}
.fig__l{margin-top:16px;font:400 11px/1.6 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--grey)}

/* ---------- full-bleed band ---------- */
.band{position:relative;min-height:62vh;display:flex;align-items:flex-end;overflow:hidden;background:var(--black)}
.band__media{position:absolute;inset:0;overflow:hidden}
.band__media picture{position:absolute;left:0;right:0;top:-9%;height:118%}
.band__media picture.is-live{will-change:transform}
.band__media img{width:100%;height:100%;object-fit:cover;filter:saturate(.85) contrast(1.03)}
.band__scrim{position:absolute;inset:0;background:linear-gradient(0deg,rgba(17,17,16,.85) 0%,rgba(17,17,16,.35) 45%,rgba(17,17,16,.05) 100%);pointer-events:none}
.band__copy{position:relative;z-index:2;width:100%;padding-top:120px;padding-bottom:56px}
.band__copy .statement{margin-top:20px;max-width:20ch}
.sec--white .band + .wrap{padding-top:var(--pad)}

/* flagship */
.flagship{display:grid;grid-template-columns:1fr;gap:34px;margin-top:var(--pad)}
.flagship__img img{width:100%;border-radius:4px;filter:saturate(.85) contrast(1.03)}
.flagship__txt > * + *{margin-top:22px}
.meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding-top:24px;border-top:1px solid var(--line)}
.meta dt{font:500 10px/1.4 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--gold-deep)}
.meta dd{margin-top:8px;font:400 12px/1.4 var(--mono);letter-spacing:.08em;color:var(--grey)}

/* editorial entries */
.entries{margin-top:0}
.entry{display:grid;grid-template-columns:1fr;gap:34px;padding-top:30px;border-top:1px solid var(--line)}
.entry + .entry{margin-top:96px}
.entry__img img{width:100%;border-radius:4px;filter:saturate(.85) contrast(1.03)}
.entry__txt > * + *{margin-top:16px}
.entry__txt .data{margin-top:22px}

/* triple */
.triple{display:grid;grid-template-columns:1fr;gap:40px;margin-top:0}
.tri > * + *{margin-top:14px}
.tri .sub{margin-top:18px}

/* ---------- technology index ---------- */
.index2{display:grid;grid-template-columns:1fr;gap:56px;margin-top:var(--pad)}
.ent{padding-top:26px;border-top:1px solid var(--line)}
.ent > * + *{margin-top:14px}
.ent .data{margin-top:22px;color:var(--gold-deep)}
.funds{margin-top:14px}
.fund{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 24px;padding:22px 0;border-top:1px solid var(--line);transition:background-color 500ms var(--ease-soft)}
.fund:hover{background-color:var(--white-2)}
.fund:last-child{border-bottom:1px solid var(--line)}
.fund__n{flex:0 0 auto;font:400 20px/1.3 var(--serif);letter-spacing:-.015em;color:var(--black)}
.fund__f{flex:1 1 200px;font:400 14px/1.6 var(--sans);color:var(--grey)}
.fund__p{flex:0 0 auto;font:500 12px/1.4 var(--mono);letter-spacing:.12em;color:var(--gold-deep)}

/* ---------- approach ---------- */
.quad{display:grid;grid-template-columns:1fr;gap:44px;margin-top:var(--pad)}
.qd > * + *{margin-top:14px}
.qd__n{font:400 12px/1 var(--mono);letter-spacing:.12em;color:var(--gold)}
.qd .sub{margin-top:18px}

/* ---------- contact ---------- */
.emailwrap{margin-top:8px}
.email{position:relative;display:inline-block;font:400 clamp(28px,4vw,40px)/1.2 var(--serif);letter-spacing:-.015em;color:var(--gold-deep)}
.email::after{content:"";position:absolute;left:0;right:100%;bottom:2px;height:1px;background:var(--gold-deep);transition:right 450ms var(--ease-out)}
.email:hover::after{right:0}
.addr{font:400 11px/2.4 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--grey);font-style:normal}

/* ---------- footer ---------- */
.ftr{background:var(--black)}
.ftr__top{display:grid;grid-template-columns:1fr;gap:28px;padding:64px 0 44px}
.ftr__logo{display:block}
.ftr__logo .logo{height:36px;opacity:.75}
.ftr__disc{font:400 10px/1.9 var(--mono);letter-spacing:.08em;color:var(--grey-2);max-width:460px}
.ftr__bot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;padding:22px 0 30px;border-top:1px solid var(--line-d)}
.ftr__bot p{font:400 10px/1.6 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--grey-2)}
.ftr__links{display:flex;align-items:center;gap:12px}
.ftr__links a{color:var(--grey-2);transition:color 280ms linear}
.ftr__links a:hover{color:var(--gold)}

/* ---------- responsive ---------- */
@media (min-width:600px){
  :root{--gut:40px}
  .logo{height:24px}
  .meta{gap:24px}
}
@media (min-width:768px){
  .figures{grid-template-columns:repeat(4,1fr);gap:36px}
  .triple{grid-template-columns:repeat(3,1fr);gap:44px}
  .quad{grid-template-columns:1fr 1fr;gap:56px 48px}
  .index2{grid-template-columns:1fr 1fr;gap:56px 72px}
  .ftr__top{grid-template-columns:1fr 1fr;align-items:center}
  .ftr__disc{justify-self:end}
  .entry{grid-template-columns:58% 1fr;gap:56px;align-items:center}
  .entry:nth-child(even) .entry__img{order:2}
  .flagship{grid-template-columns:58% 1fr;gap:56px;align-items:center}
}
@media (min-width:1025px){
  :root{--gut:56px;--pad:160px}
  .logo{height:28px}
  .nav{display:flex}
  .burger{display:none}
  .menu{display:none}
  .split{grid-template-columns:4fr 8fr;gap:72px}
  .quad{grid-template-columns:repeat(4,1fr);gap:48px}
  .band__copy{padding-bottom:72px}
  .entry + .entry{margin-top:96px}
  .entry{gap:56px}
}
@media (min-width:1440px){
  :root{--gut:72px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .reveal-on [data-rise],.reveal-on [data-rise].is-in{opacity:1;transform:none;transition:none}
  .cue i::after{animation:none;transform:translateY(17px)}
  .cue{opacity:1 !important}
  .hero__media img,.hero__in,.band__media picture{transform:none !important}
  .mask{clip-path:none !important}
  .mask img,.flagship__img:hover img,.entry__img:hover img{transform:none !important;transition:none !important}
  .ln__i{transform:none !important;transition:none !important}
  .st,.st.is-in{opacity:1 !important;transform:none !important;transition:none !important}
  .js-rule{border-top-color:var(--line) !important}
  .js-rule::after{transform:scaleX(1) !important;transition:none !important}
  .hdr{transform:none !important}
  .fund{transition:none}
}

.nav a{position:relative}
.nav a::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:1px;background:var(--gold-deep);transform:scaleX(0);transform-origin:left;transition:transform 450ms var(--ease-out)}
.nav a:hover::after,.nav a:focus-visible::after{transform:scaleX(1)}
.nav a.is-here{color:var(--black)}
.nav a.is-here::after{transform:scaleX(1)}
.hdr:not(.is-on) .nav a.is-here{color:var(--white)}
.hdr:not(.is-on) .nav a::after{background:var(--gold)}
.ftr__credit{display:block;margin-top:10px;color:var(--grey-2)}
.ftr__credit a{color:inherit;text-decoration:underline;text-underline-offset:2px}
.addr a{color:inherit;text-decoration:none;border-bottom:1px solid var(--line)}
.addr a:hover{color:var(--gold-deep);border-bottom-color:var(--gold-deep)}

.is-doc{background:var(--white)}
.is-doc .hdr{position:static}
.doc h2{margin:44px 0 14px}
.doc .data{margin-bottom:34px;color:var(--grey)}
.doc .body{max-width:64ch}
.doc .body+.body{margin-top:14px}

/* ---------- motion: image mask reveals ---------- */
.flagship__img img,.entry__img img{transition:transform 800ms var(--ease-soft),opacity 500ms var(--ease-out)}
.mask{--mr:4px;clip-path:inset(0 0 100% 0 round var(--mr));transition:clip-path var(--d-slow) var(--ease-out)}
.mask.is-shown{clip-path:inset(0 0 0 0 round var(--mr))}
.band__media.mask{--mr:0px}
.mask img{transform:scale(1.12)}
.mask:not(.is-done) img{transition:transform 1600ms var(--ease-soft),opacity 500ms var(--ease-out)}
.flagship__img.mask,.entry__img.mask{transition-duration:900ms}
.mask.is-shown img{transform:none}
.flagship__img.mask:hover img,.entry__img.mask:hover img{transform:scale(1.035)}
.reveal-off .mask{clip-path:none !important}
.reveal-off .mask img{transform:none !important;transition:none !important}

/* ---------- motion: headline line reveals ---------- */
.ln{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}
.ln__i{display:block;transform:translateY(0)}
.is-split .ln__i{transform:translateY(100%)}
.is-split.is-lit .ln__i{transform:translateY(0);transition:transform var(--d-base) var(--ease-out)}
.reveal-off .ln__i{transform:translateY(0) !important;transition:none !important}

/* ---------- motion: staggered meta and data rows ---------- */
.st{opacity:0;transform:translateY(10px)}
.st.is-in{opacity:1;transform:none;transition:opacity var(--d-fast) var(--ease-out),transform var(--d-fast) var(--ease-out)}
.reveal-off .st{opacity:1 !important;transform:none !important;transition:none !important}

/* ---------- motion: hairline draw ---------- */
.js-rule{position:relative;border-top-color:transparent}
.js-rule::after{content:"";position:absolute;left:0;top:-1px;width:100%;height:1px;background:var(--line);transform:scaleX(0);transform-origin:left;transition:transform 900ms var(--ease-out)}
.js-rule.is-drawn::after{transform:scaleX(1)}
.reveal-off .js-rule{border-top-color:var(--line)}
.reveal-off .js-rule::after{transform:scaleX(1) !important;transition:none !important}

/* ---------- blurred placeholder: the frame is never empty ---------- */
.lqip{position:relative;overflow:hidden;border-radius:4px}
.lqip::before{content:"";position:absolute;inset:0;z-index:0;background-image:var(--lqip);background-size:cover;background-position:50% 50%;filter:blur(12px);transform:scale(1.08);opacity:1;transition:opacity 500ms var(--ease-out)}
.lqip img{position:relative;z-index:1}
.lqip.is-waiting img{opacity:0}
.lqip.is-loaded::before{opacity:0}
