/* Valerie Ve. LONDON SPEAKS: one gold thread (reflection, waveform, skyline) running through an ink and ivory editorial layout. */
:root{
  --ink:#07090c;--ink-2:#0d1218;--ivory:#f1ebe0;--ivory-2:#e6dfd1;
  --thames:#8a9aa7;--thames-d:#4a5864;
  --gold:#dcb865;--gold-hi:#fff0c0;--gold-deep:#7a5c18;
  --on-ink:#f1ebe0;--on-ink-2:rgba(241,235,224,.7);--on-ivory:#0b0e12;--on-ivory-2:rgba(11,14,18,.68);
  --tally:#e0243a;
  --gx:clamp(20px,4.4vw,72px);
  --display:'Archivo','Helvetica Neue',Arial,sans-serif;
  --body:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
  --serif:'Cormorant Garamond',Georgia,serif;
  --ease:cubic-bezier(.2,.7,.1,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;background:var(--ink)}
body{font-family:var(--body);font-size:17px;line-height:1.65;color:var(--on-ink);background:var(--ink);-webkit-font-smoothing:antialiased;overflow-x:clip}
img,svg{display:block;max-width:100%}
img{height:auto}
a{color:inherit}
ol,ul{list-style:none}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:fixed;left:12px;top:-60px;z-index:50;background:var(--ivory);color:var(--ink);padding:10px 14px;text-decoration:none}
.skip:focus{top:12px}
:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
.ivory-sec :focus-visible,.services :focus-visible,.voices :focus-visible{outline-color:var(--gold-deep)}
section{position:relative}
.anchor{position:absolute;left:0;right:0;height:0;pointer-events:none}

.display{font-family:var(--display);font-weight:800;font-variation-settings:"wdth" 62;text-transform:uppercase;line-height:.86;letter-spacing:-.005em}
.display b{color:var(--gold);font-weight:inherit}
.lab{font-family:var(--display);font-variation-settings:"wdth" 112;font-weight:500;font-size:.72rem;letter-spacing:.3em;text-transform:uppercase;color:var(--thames)}

/* thread layer */
.thread{position:fixed;inset:0;width:100%;height:100%;z-index:5;pointer-events:none;overflow:visible;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.t-core{stroke:url(#tg-light);stroke-width:1.4;stroke-linejoin:round;stroke-linecap:round}
.t-glow{stroke:#dcb865;stroke-opacity:.13;stroke-width:8;stroke-linejoin:round}
.t-refl{stroke:#dcb865;stroke-opacity:.55;stroke-width:1.3;stroke-dasharray:1 6;stroke-linecap:round}
.presence{position:fixed;left:0;top:0;width:8px;height:8px;margin:-4px 0 0 -4px;border-radius:50%;background:var(--gold-hi);box-shadow:0 0 14px 3px rgba(220,184,101,.55);z-index:30;pointer-events:none;opacity:0;transition:opacity .4s;will-change:transform}
.presence.on{opacity:.9}
@media (pointer:coarse){.presence{display:none}}

/* header */
.site-head{position:fixed;left:0;right:0;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:calc(env(safe-area-inset-top) + 18px) var(--gx) 12px;color:var(--ivory);text-shadow:0 0 18px rgba(7,9,12,.7);transition:transform .5s var(--ease),color .4s}
.site-head::before{content:"";position:absolute;inset:0 0 -34px;background:linear-gradient(rgba(7,9,12,.72),rgba(7,9,12,0));z-index:-1;pointer-events:none;transition:opacity .4s}
.site-head.light::before{opacity:0}
.site-head.light{color:var(--on-ivory);text-shadow:none}
.site-head.hide{transform:translateY(-110%)}
.mark{font-family:var(--display);font-variation-settings:"wdth" 125;font-weight:700;font-size:.78rem;letter-spacing:.36em;text-transform:uppercase;text-decoration:none;padding:10px 0}
.nav{display:flex;gap:clamp(22px,3vw,44px);align-items:center}
.nav a{font-family:var(--display);font-variation-settings:"wdth" 112;font-weight:500;font-size:.72rem;letter-spacing:.24em;text-transform:uppercase;text-decoration:none;padding:12px 0;position:relative}
.nav a::after{content:"";position:absolute;left:0;right:0;bottom:6px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}
.nav a:hover::after,.nav a:focus-visible::after,.nav a.nav-cta::after{transform:scaleX(1)}
.menu-btn{display:none;background:none;border:0;color:inherit;font-family:var(--display);font-variation-settings:"wdth" 112;font-weight:500;font-size:.72rem;letter-spacing:.24em;text-transform:uppercase;padding:14px 0 14px 18px;cursor:pointer}
.menu{position:fixed;inset:0;z-index:15;background:var(--ink);display:flex;flex-direction:column;justify-content:center;padding:80px var(--gx) 40px}
.menu[hidden]{display:none}
.menu nav{display:flex;flex-direction:column}
.menu nav a{font-family:var(--display);font-weight:800;font-variation-settings:"wdth" 62;text-transform:uppercase;font-size:min(17vw,16svh);line-height:.98;text-decoration:none;color:var(--ivory)}
.menu nav a:hover,.menu nav a:focus-visible{color:var(--gold)}
.menu p{margin-top:28px;font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;color:var(--thames)}

/* CTA: an editorial line, not a block */
.cta{display:inline-flex;align-items:center;gap:16px;font-family:var(--display);font-variation-settings:"wdth" 108;font-weight:600;font-size:.86rem;letter-spacing:.2em;text-transform:uppercase;text-decoration:none;color:var(--ivory);padding:16px 0 12px;border-bottom:1px solid var(--gold);position:relative}
.cta svg{width:28px;height:12px;fill:none;stroke:var(--gold);stroke-width:1.4;flex:none;transition:transform .5s var(--ease)}
.cta:hover svg,.cta:focus-visible svg{transform:translateX(8px)}
.cta::after{content:"";position:absolute;left:0;bottom:-1px;height:1px;width:100%;background:var(--gold-hi);transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease)}
.cta:hover::after{transform:scaleX(1)}
.cta.dark{color:var(--on-ivory);border-bottom-color:var(--gold-deep)}
.cta.dark svg{stroke:var(--gold-deep)}
.cta.dark::after{background:var(--on-ivory)}
.cta.big{font-size:clamp(1rem,2.2vw,1.5rem);gap:22px;padding:22px 0 16px}
.cta.big svg{width:44px}

/* hero */
.hero{min-height:100svh;overflow:hidden;background:radial-gradient(70% 60% at 12% 100%,rgba(88,110,130,.2),transparent 70%),var(--ink)}
.hero-photo{position:absolute;z-index:1;top:0;right:0;width:46vw;height:100%;
  -webkit-mask-image:linear-gradient(to right,transparent 0,#000 38%),linear-gradient(to bottom,#000 60%,transparent 92%);-webkit-mask-composite:source-in;
  mask-image:linear-gradient(to right,transparent 0,#000 38%),linear-gradient(to bottom,#000 60%,transparent 92%);mask-composite:intersect}
.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:52% 30%;transform:translate3d(var(--px,0),var(--py,0),0) scale(1.04)}
.spot{position:absolute;left:0;top:0;width:560px;height:560px;margin:-280px 0 0 -280px;border-radius:50%;background:radial-gradient(closest-side,rgba(255,226,160,.26),rgba(255,226,160,0));mix-blend-mode:screen;opacity:0;transition:opacity .6s;pointer-events:none;will-change:transform}
.spot.on{opacity:1}
.hero-copy{position:relative;z-index:6;min-height:100svh;padding:clamp(92px,15svh,150px) var(--gx) 0;display:flex;flex-direction:column;pointer-events:none}
.hero-copy a{pointer-events:auto}
.kicker{display:flex;flex-wrap:wrap;gap:6px 0;font-family:var(--display);font-variation-settings:"wdth" 112;font-weight:500;font-size:.7rem;letter-spacing:.3em;text-transform:uppercase;color:var(--thames)}
.kicker span+span::before{content:"";display:inline-block;width:28px;height:1px;background:var(--gold);vertical-align:middle;margin:0 16px}
.hero h1{font-size:min(14.4vw,25svh);margin-top:clamp(14px,2.6svh,30px);transform:translate3d(var(--tx,0),var(--ty,0),0)}
.ln{display:block;overflow:hidden;padding-top:.03em;margin-top:-.03em}
.ln>span{display:block}
.hero-foot{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:20px 56px;margin-top:clamp(18px,3.4svh,38px);max-width:min(54vw,880px)}
.lede{font-size:clamp(.98rem,1.25vw,1.15rem);line-height:1.55;color:var(--on-ink-2);max-width:29em}
.a-hero{bottom:clamp(60px,10svh,110px)}

.js .hero .kicker,.js .hero .lede,.js .hero .cta{opacity:0;transform:translateY(10px);animation:up 1s var(--ease) forwards}
.js .hero .kicker{animation-delay:.25s}
.js .hero .ln>span{transform:translateY(106%);animation:rise 1.2s var(--ease) forwards}
.js .hero .ln:nth-of-type(1)>span{animation-delay:.45s}
.js .hero .ln:nth-of-type(2)>span{animation-delay:.62s}
.js .hero .lede{animation-delay:1.7s}
.js .hero .cta{animation-delay:2s}
.js .hero-photo{animation:photo 1.6s ease .1s both}
@keyframes up{to{opacity:1;transform:none}}
@keyframes rise{to{transform:none}}
@keyframes photo{from{opacity:.02}to{opacity:1}}

/* statement */
.statement{padding:clamp(110px,20vw,280px) var(--gx) clamp(130px,19vw,260px)}
.st-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:0 clamp(16px,2vw,32px)}
.statement h2{grid-column:1/10;font-family:var(--display);font-variation-settings:"wdth" 72;font-weight:700;font-size:clamp(2.3rem,6.4vw,6.8rem);line-height:.98;letter-spacing:-.01em;text-transform:none}
.statement h2 em{font-style:normal;color:var(--gold)}
.st-body{grid-column:7/13;margin-top:clamp(36px,5vw,72px);color:var(--on-ink-2);font-size:clamp(1rem,1.2vw,1.12rem)}
.st-body p+p{margin-top:1.1em}
.a-rule{bottom:clamp(44px,6vw,84px)}

/* four words */
.words{background:var(--ink)}
.stage{position:relative}
.wlist{padding:clamp(80px,12vw,160px) var(--gx)}
.w{padding:20px 0 36px}
.wt{display:block;font-size:clamp(3rem,16vw,9rem);line-height:.9}
.wd{display:block;margin-top:10px;color:var(--on-ink-2);max-width:26em}
.wcount{display:none}
.js:not(.rm) .words{height:480svh}
.js:not(.rm) .stage{position:sticky;top:0;height:100svh;overflow:hidden}
.js:not(.rm) .wlist{padding:0;position:absolute;inset:0}
.js:not(.rm) .w{position:absolute;inset:0;padding:0}
.js:not(.rm) .wt{position:absolute;left:var(--gx);bottom:calc(38% - .045em);font-size:min(17.4vw,44svh);line-height:.8;white-space:nowrap;
  clip-path:inset(calc((1 - var(--o,0)) * 100%) -6% -.1em -6%);letter-spacing:calc(.05em * (1 - var(--o,0)));will-change:clip-path}
.js:not(.rm) .wd{position:absolute;right:var(--gx);top:calc(62% + clamp(22px,4svh,44px));width:min(24em,38vw);margin:0;opacity:var(--d,0);transform:translateY(calc((1 - var(--d,0)) * 14px));z-index:6}
.js:not(.rm) .wcount{display:block;position:absolute;left:var(--gx);bottom:calc(28px + env(safe-area-inset-bottom));font-family:var(--display);font-variation-settings:"wdth" 112;font-size:.72rem;letter-spacing:.3em;color:var(--thames);z-index:6}
.js:not(.rm) .wcount span{color:var(--gold)}
.a-words{top:62%}
.words .wt{z-index:4}

/* 17 years */
.seventeen{padding:clamp(90px,12vw,180px) var(--gx) clamp(90px,10vw,150px);background:var(--ink)}
.s17-top{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:clamp(24px,5vw,90px);align-items:end}
.num svg{width:100%;height:auto;overflow:visible}
.t17{font-family:var(--display);font-weight:900;font-size:700px;font-variation-settings:"wdth" 125}
.o17{fill:none;stroke:var(--gold);stroke-width:1.6;stroke-opacity:.85}
.s17-label{font-family:var(--display);font-variation-settings:"wdth" 70;font-weight:800;text-transform:uppercase;font-size:clamp(1.8rem,3.4vw,3.4rem);line-height:.95;margin-bottom:22px}
.s17-copy p:last-child{color:var(--on-ink-2);max-width:26em}
.tl{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:0 clamp(20px,3vw,48px);margin-top:clamp(56px,8vw,110px);padding-top:30px}
.tl li{position:relative;display:flex;flex-direction:column;gap:8px}
.tl li::before{content:"";position:absolute;left:0;top:-34px;width:9px;height:9px;border-radius:50%;background:var(--ink);border:1px solid var(--gold-hi);box-shadow:0 0 12px rgba(220,184,101,.7)}
.yr{font-family:var(--display);font-variation-settings:"wdth" 75;font-weight:800;font-size:clamp(1.8rem,3vw,2.8rem);line-height:1;color:var(--ivory)}
.tx{color:var(--on-ink-2);max-width:20em;font-size:.97rem}

/* services (ivory daylight) */
.services{background:var(--ivory);color:var(--on-ivory);padding:clamp(90px,12vw,180px) var(--gx)}
.services .lab,.voices .lab{color:var(--gold-deep)}
.services h2{font-family:var(--display);font-variation-settings:"wdth" 70;font-weight:800;text-transform:uppercase;font-size:clamp(2.8rem,8.4vw,8.6rem);line-height:.88;margin:22px 0 clamp(48px,7vw,100px);max-width:12em}
.sv-list{border-bottom:1px solid rgba(11,14,18,.2)}
.sv{display:grid;grid-template-columns:clamp(48px,7vw,110px) minmax(0,1.15fr) minmax(0,1fr);gap:12px clamp(20px,4vw,64px);padding:clamp(28px,3.4vw,52px) 0;border-top:1px solid rgba(11,14,18,.2);align-items:start;position:relative}
.sv::before{content:"";position:absolute;left:0;top:-1px;height:1px;width:100%;background:var(--gold-deep);transform:scaleX(0);transform-origin:left;transition:transform .8s var(--ease)}
.sv:hover::before{transform:scaleX(1)}
.sv .n{font-family:var(--display);font-variation-settings:"wdth" 112;font-weight:500;font-size:.8rem;letter-spacing:.24em;color:var(--gold-deep);padding-top:.6em}
.sv h3{font-family:var(--display);font-variation-settings:"wdth" 68;font-weight:800;text-transform:uppercase;font-size:clamp(1.9rem,3.8vw,3.7rem);line-height:.94;transition:transform .6s var(--ease)}
.sv:hover h3{transform:translateX(10px)}
.sv p{color:var(--on-ivory-2);padding-top:.35em}
.sv-foot{margin-top:clamp(36px,5vw,64px)}

/* programme */
.programme{padding:clamp(100px,13vw,200px) var(--gx) clamp(120px,15vw,220px);background:var(--ink)}
.pg-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(32px,6vw,110px);align-items:center}
.tv{position:relative}
.tv-screen{position:relative;aspect-ratio:630/503;overflow:hidden;border-radius:22px/18px;border:1px solid rgba(220,184,101,.45);box-shadow:0 0 0 7px var(--ink),0 0 0 8px rgba(138,154,167,.35),0 40px 120px rgba(0,0,0,.6)}
.tv-screen img{width:100%;height:100%;object-fit:cover;filter:saturate(.8) contrast(1.06)}
.tv-screen::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(0,0,0,.07) 0 1px,transparent 1px 3px);pointer-events:none}
.safe{position:absolute;inset:9% 7%;border:1px solid rgba(255,255,255,.28)}
.cm{position:absolute;width:20px;height:20px;border:0 solid rgba(255,255,255,.7)}
.c1{left:14px;top:14px;border-left-width:1px;border-top-width:1px}
.c2{right:14px;top:14px;border-right-width:1px;border-top-width:1px}
.c3{left:14px;bottom:14px;border-left-width:1px;border-bottom-width:1px}
.c4{right:14px;bottom:14px;border-right-width:1px;border-bottom-width:1px}
.rec{position:absolute;left:11%;top:13%;display:flex;align-items:center;gap:9px;font-family:var(--display);font-variation-settings:"wdth" 112;font-weight:600;font-size:.7rem;letter-spacing:.28em;color:#fff;text-shadow:0 1px 6px rgba(0,0,0,.6)}
.rec b{width:9px;height:9px;border-radius:50%;background:var(--tally);box-shadow:0 0 10px var(--tally);animation:tally 2s ease-in-out infinite}
@keyframes tally{50%{opacity:.25}}
.tc{position:absolute;right:11%;bottom:13%;font-family:var(--display);font-variation-settings:"wdth" 100;font-variant-numeric:tabular-nums;font-weight:500;font-size:.78rem;letter-spacing:.14em;color:#fff;text-shadow:0 1px 6px rgba(0,0,0,.6)}
.pg-copy .lab{margin-bottom:20px}
.programme h2{font-family:var(--display);font-variation-settings:"wdth" 68;font-weight:800;text-transform:uppercase;font-size:clamp(2.6rem,6vw,6rem);line-height:.9;margin-bottom:clamp(20px,2.6vw,34px)}
.programme .lead{color:var(--on-ink-2);max-width:32em}
.incl{margin:clamp(24px,3vw,40px) 0;border-top:1px solid rgba(220,184,101,.3)}
.incl li{padding:14px 0;border-bottom:1px solid rgba(220,184,101,.3);font-size:.98rem}
.pull{font-family:var(--serif);font-style:italic;font-weight:500;font-size:clamp(1.5rem,2.4vw,2.1rem);line-height:1.22;color:var(--gold-hi);margin:0 0 clamp(24px,3vw,40px);max-width:22em}
.a-rule2{bottom:clamp(40px,6vw,84px)}

/* about */
.about{padding:clamp(70px,10vw,150px) var(--gx) clamp(120px,15vw,220px);background:var(--ink-2)}
.ab-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,7vw,120px);align-items:start}
.portrait{width:100%;max-width:520px;filter:saturate(.9)}
.ab-copy{padding-top:clamp(0px,4vw,60px)}
.ab-copy .lab{margin-bottom:22px}
.about h2{font-size:clamp(3.6rem,10vw,10rem);margin-bottom:clamp(14px,2vw,26px)}
.role{font-family:var(--display);font-variation-settings:"wdth" 100;font-weight:500;font-size:clamp(1.05rem,1.5vw,1.35rem);line-height:1.35;color:var(--gold);max-width:26em;margin-bottom:clamp(24px,3vw,40px)}
.ab-copy p{color:var(--on-ink-2);max-width:36em}
.ab-copy p+p{margin-top:1.1em}
.ab-copy .role+p{margin-top:0}
.ab-copy .trust{margin-top:clamp(28px,3.4vw,44px);padding-top:20px;border-top:1px solid rgba(220,184,101,.3);color:var(--ivory);font-size:.95rem}
.a-rule3{bottom:clamp(44px,6vw,84px)}

/* voices (ivory) */
.voices{background:var(--ivory);color:var(--on-ivory);padding:clamp(90px,12vw,180px) var(--gx)}
.vq{margin-top:clamp(48px,7vw,110px);max-width:min(100%,60rem)}
.vq:nth-of-type(2){margin-left:auto;max-width:min(100%,56rem)}
.vq blockquote{font-family:var(--serif);font-style:italic;font-weight:500;font-size:clamp(1.8rem,4vw,3.5rem);line-height:1.12;letter-spacing:-.005em}
.vq figcaption{margin-top:22px;font-family:var(--display);font-variation-settings:"wdth" 108;font-weight:500;font-size:.72rem;letter-spacing:.26em;text-transform:uppercase;color:var(--on-ivory-2)}
.vq figcaption strong{color:var(--gold-deep);font-weight:700}

/* faq */
.faq{padding:clamp(100px,13vw,200px) var(--gx) clamp(130px,16vw,230px);background:var(--ink)}
.faq h2{font-size:clamp(3.4rem,9.4vw,9.4rem);margin-bottom:clamp(36px,5vw,72px)}
.faq-list{max-width:60rem;margin-left:auto}
.faq details{border-top:1px solid rgba(241,235,224,.2)}
.faq details:last-child{border-bottom:1px solid rgba(241,235,224,.2)}
.faq summary{cursor:pointer;list-style:none;padding:26px 56px 26px 0;font-family:var(--display);font-variation-settings:"wdth" 88;font-weight:600;font-size:clamp(1.15rem,1.9vw,1.55rem);line-height:1.25;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::before,.faq summary::after{content:"";position:absolute;right:6px;top:50%;width:18px;height:1px;background:var(--gold);transition:transform .5s var(--ease)}
.faq summary::after{transform:rotate(90deg)}
.faq details[open] summary::after{transform:rotate(0)}
.faq details p{padding:0 56px 28px 0;color:var(--on-ink-2);max-width:40em}
.a-rule4{bottom:clamp(44px,6vw,84px)}

/* closing */
.closing{min-height:100svh;display:flex;flex-direction:column;justify-content:space-between;background:var(--ink)}
.cl-in{padding:clamp(100px,14vw,200px) var(--gx) calc(clamp(84px,18svh,200px) + 70px)}
.closing .lab{margin-bottom:26px}
.closing h2{font-size:clamp(3.2rem,11.4vw,11.6rem);max-width:9.5em;margin-bottom:clamp(28px,4vw,56px)}
.a-close{bottom:118px}
.foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 28px;padding:24px var(--gx) calc(24px + env(safe-area-inset-bottom));font-size:.8rem;color:var(--on-ink-2);position:relative;z-index:6}
.foot a{text-decoration:none;margin-left:24px;padding:8px 0}
.foot a:hover{color:var(--gold)}

/* reveal */
.js .rv{opacity:0;transform:translateY(26px);transition:opacity 1s var(--ease),transform 1s var(--ease)}
.js .rv.in{opacity:1;transform:none}

/* tablet and mobile */
@media (max-width:899px){
  .nav{display:none}
  .menu-btn{display:block}
  .hero-photo{width:100%;height:50svh;-webkit-mask-image:linear-gradient(to bottom,#000 55%,transparent 98%);mask-image:linear-gradient(to bottom,#000 55%,transparent 98%)}
  .hero-photo img{object-position:50% 22%}
  .hero-copy{padding-top:calc(50svh + 24px);padding-bottom:36px;min-height:100svh}
  .hero h1{font-size:min(20.6vw,14svh);margin-top:12px}
  .kicker{font-size:.62rem;letter-spacing:.22em}
  .kicker span+span::before{width:18px;margin:0 10px}
  .hero-foot{max-width:none;flex-direction:column;align-items:flex-start;gap:6px;margin-top:16px}
  .lede{font-size:.98rem;line-height:1.5}
  .a-hero{bottom:auto;top:calc(50svh - 6px)}
  .st-grid{display:block}
  .st-body{margin-top:36px}
  .s17-top{grid-template-columns:1fr;gap:24px}
  .s17-copy{padding-left:2px}
  .tl{grid-template-columns:1fr;gap:34px;padding-top:0;margin-top:64px;padding-left:30px}
  .tl::before{content:"";position:absolute;left:4px;top:4px;bottom:4px;width:1px;background:linear-gradient(var(--gold),rgba(220,184,101,.1))}
  .tl li::before{left:-30px;top:6px}
  .sv{grid-template-columns:40px 1fr;gap:10px 8px}
  .sv p{grid-column:2}
  .pg-grid,.ab-grid{grid-template-columns:1fr}
  .portrait{max-width:380px}
  .vq:nth-of-type(2){margin-left:0}
  .js:not(.rm) .wt{font-size:min(18vw,26svh);bottom:calc(38% - .06em)}
  .js:not(.rm) .wd{left:var(--gx);right:auto;width:calc(100% - var(--gx) * 2)}
  .a-words{top:62%}
  .faq-list{margin-left:0}
  .foot a{margin-left:0;margin-right:24px}
}
@media (max-width:899px) and (max-height:700px){
  .hero-photo{height:46svh}
  .hero-copy{padding-top:calc(46svh + 12px)}
  .a-hero{top:calc(46svh - 6px)}
}
@media (min-width:900px) and (max-width:1100px){
  .hero-foot{max-width:56vw}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .js .rv,.js .hero .kicker,.js .hero .lede,.js .hero .cta,.js .hero .ln>span,.js .hero-photo{opacity:1;transform:none;animation:none;transition:none}
  .rec b{animation:none}
}
.rm .rv{opacity:1;transform:none;transition:none}
.rm .thread{display:none}
.rm .rm-line{display:block}
.rm-line{display:none;position:absolute;left:0;width:100%;pointer-events:none;overflow:visible}
@media (min-width:900px){.closing h2{font-size:clamp(3.2rem,9.2vw,9.6rem);max-width:12.4em}}
