/* Rogério Bié · v1.8 · NYT base + V17 pieces. One family everywhere: Inter Tight. */
:root{
  --paper:#F3F0E9; --paper-2:#E9E4D8; --card:#FBFAF6; --ink:#131210; --ink-2:#3A362F; --ink-3:#6E685C; --rule:#D8D1C3;
  --lime:#B7DE43; --red:#C8321E; --yellow:#FFE843; --blue:#8FAFC4; --forest:#294914; --on-red:#FFF7EE; --on-forest:#F2F7E6;
  --shadow:0 1px 0 rgba(19,18,16,.04),0 18px 40px -22px rgba(19,18,16,.35);
  --f-display:"Inter Tight","Helvetica Neue",Arial,sans-serif;
  --f-serif:"Inter Tight","Helvetica Neue",Arial,sans-serif;
  --f-mono:"Inter Tight","Helvetica Neue",Arial,sans-serif;
  --gut:max(20px,env(safe-area-inset-left,0px));
  color-scheme:light;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --paper:#100F0D; --paper-2:#1A1815; --card:#191714; --ink:#F1ECE2; --ink-2:#CFC8BA; --ink-3:#958E81; --rule:#312D27;
  --red:#E2472E; --forest:#3F7A1F; --shadow:0 18px 40px -22px rgba(0,0,0,.8); color-scheme:dark}}
:root[data-theme="dark"]{
  --paper:#100F0D; --paper-2:#1A1815; --card:#191714; --ink:#F1ECE2; --ink-2:#CFC8BA; --ink-3:#958E81; --rule:#312D27;
  --red:#E2472E; --forest:#3F7A1F; --shadow:0 18px 40px -22px rgba(0,0,0,.8); color-scheme:dark}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--f-serif);font-size:17.5px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,video{max-width:100%;display:block}
a{color:inherit}
button{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:4px}
::selection{background:var(--lime);color:#131210}
h1,h2,h3,p,figure,blockquote{margin:0}
.wrap{max-width:1360px;margin-inline:auto;padding-left:var(--gut);padding-right:max(20px,env(safe-area-inset-right,0px))}
/* labels: the old mono role, now Inter Tight in small caps-style tracking */
.mono{font-family:var(--f-display);font-weight:600;font-size:11.5px;letter-spacing:.09em;text-transform:uppercase}
.skiplink{position:absolute;left:-999px}.skiplink:focus{left:12px;top:12px;z-index:99;background:var(--ink);color:var(--paper);padding:8px 12px}
.c-lime{--c:var(--lime);--on:#131210}.c-yellow{--c:var(--yellow);--on:#131210}.c-red{--c:var(--red);--on:var(--on-red)}.c-blue{--c:var(--blue);--on:#131210}.c-forest{--c:var(--forest);--on:var(--on-forest)}
.dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--c);margin-right:8px;vertical-align:1px;box-shadow:0 0 0 1px rgba(0,0,0,.12)}
mark{color:inherit;padding:0 .08em;border-radius:.12em;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.m-y{background:var(--yellow);color:#131210}.m-l{background:var(--lime);color:#131210}.m-r{background:var(--red);color:var(--on-red)}.m-b{background:var(--blue);color:#131210}

/* ---------- top bar (menu on top) ---------- */
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);background:var(--paper);z-index:41}
.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:40;background:color-mix(in srgb,var(--paper) 86%,transparent);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid transparent;transition:border-color .3s}
.top.scrolled,.top.always{border-bottom-color:var(--rule)}
.top-in{display:flex;align-items:center;gap:22px;min-height:56px}
.mark{font-family:var(--f-display);font-weight:800;font-size:19px;letter-spacing:-.03em;text-decoration:none;white-space:nowrap;opacity:0;transform:translateY(6px);transition:opacity .35s,transform .35s;pointer-events:none}
.top.scrolled .mark,.top.always .mark{opacity:1;transform:none;pointer-events:auto}
.nav{flex:1;min-width:0;overflow-x:auto;scrollbar-width:none}.nav::-webkit-scrollbar{display:none}
.nav ul{list-style:none;margin:0;padding:0;display:flex;gap:4px;white-space:nowrap}
.nav a{display:block;font-family:var(--f-display);font-weight:600;font-size:14.5px;text-decoration:none;padding:7px 12px;border-radius:999px;color:var(--ink-2);transition:background .2s,color .2s}
.nav a:hover,.nav a.on,.nav a[aria-current="page"]{background:var(--ink);color:var(--paper)}
.top-ctl{display:flex;gap:6px;align-items:center}
.chip-btn{font-family:var(--f-display);font-weight:600;font-size:13.5px;border:1.5px solid var(--ink);background:transparent;border-radius:999px;padding:6px 13px;cursor:pointer;white-space:nowrap;transition:background .2s,color .2s}
.chip-btn:hover{background:var(--ink);color:var(--paper)}

/* ---------- hero ---------- */
.hero{padding-block:26px 18px}
.eyebrow-row{display:flex;justify-content:space-between;gap:16px;color:var(--ink-3);border-top:1.5px solid var(--ink);padding-top:10px}
.wordmark{font-family:var(--f-display);font-weight:900;font-size:clamp(68px,16.4vw,248px);line-height:.82;letter-spacing:-.062em;margin:18px 0 0 -.04em;padding-bottom:.17em;white-space:nowrap}
.wm-b{position:relative;display:inline-block}
.wm-dot{position:absolute;right:-.17em;bottom:.08em;width:.15em;height:.15em;border-radius:50%;background:var(--red)}
@media (prefers-reduced-motion:no-preference){
  .wm-a,.wm-b{display:inline-block;animation:rise .9s cubic-bezier(.2,.8,.2,1) both}
  .wm-b{animation-delay:.08s}
  .wm-dot{animation:pop .6s .7s cubic-bezier(.3,1.6,.5,1) both}
}
@keyframes rise{from{transform:translateY(.18em);opacity:.0001;filter:blur(6px)}to{transform:none;opacity:1;filter:none}}
@keyframes pop{from{transform:scale(0)}to{transform:none}}
.field-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.fchip{font-family:var(--f-display);font-weight:600;font-size:14px;text-decoration:none;padding:7px 14px;border-radius:999px;background:var(--c);color:var(--on);transition:transform .2s}
.fchip:hover{transform:translateY(-2px) rotate(-1.5deg)}

/* page heads (inner pages) */
.phead{padding-block:44px 10px}
.phead h1{font-family:var(--f-display);font-weight:900;font-size:clamp(52px,9vw,150px);line-height:.86;letter-spacing:-.055em;margin-top:14px;text-wrap:balance}
.phead .lede{margin-top:18px}

/* ---------- reel: grows from a framed picture to full-bleed as you scroll ---------- */
.reel{position:relative;height:175vh;margin-top:10px}
.reel-stick{position:sticky;top:0;height:100vh;height:100svh;display:flex;align-items:center;justify-content:center;overflow:hidden}
.reel-frame{--p:0;position:relative;width:100%;height:min(56.25vw,100vh);background:#0c0b0a;overflow:hidden;cursor:pointer;
  clip-path:inset(calc((1 - var(--p)) * 9%) calc((1 - var(--p)) * 9%) round calc((1 - var(--p)) * 22px));}
.reel-frame video{width:100%;height:100%;object-fit:cover;transform:scale(calc(1.08 - var(--p) * .08))}
.reel-shade{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.72),rgba(0,0,0,.05) 46%,transparent);pointer-events:none}
.reel-cap{position:absolute;left:calc(9% + 22px);right:calc(9% + 22px);bottom:calc(9% + 22px);color:#fff;display:flex;flex-direction:column;gap:6px;
  transform:translate(calc(var(--p) * -6%),calc(var(--p) * 5%));transition:none}
.reel-cap .mono{opacity:.85}
.reel-cap h2{font-family:var(--f-display);font-weight:800;font-size:clamp(34px,5.2vw,80px);line-height:.95;letter-spacing:-.04em}
.reel-cap p{font-family:var(--f-display);font-weight:500;font-size:16px;opacity:.9}
.play-btn{align-self:flex-start;margin-top:10px;display:inline-flex;align-items:center;gap:12px;border:0;cursor:pointer;background:var(--lime);color:#131210;font-family:var(--f-display);font-weight:700;font-size:17px;padding:10px 20px 10px 10px;border-radius:999px;box-shadow:0 10px 30px -10px rgba(0,0,0,.6);transition:transform .2s}
.play-btn:hover{transform:scale(1.04)}
.pb-ic{width:38px;height:38px;border-radius:50%;background:#131210;color:var(--lime);display:grid;place-items:center;padding-left:3px}
.play-btn small{opacity:.7;font-weight:600;font-size:12px;letter-spacing:.06em}
/* sound on the wall, without opening the player */
.reel-sound{position:absolute;z-index:3;right:calc(9% + 22px);top:calc(9% + 22px);display:inline-flex;align-items:center;gap:8px;border:1.5px solid rgba(255,255,255,.75);background:rgba(0,0,0,.35);color:#fff;border-radius:999px;padding:7px 14px 7px 10px;font-family:var(--f-display);font-weight:700;font-size:13px;cursor:pointer;backdrop-filter:blur(6px);transform:translate(calc(var(--p) * 6%),calc(var(--p) * -5%))}
.reel-sound:hover{background:#fff;color:#131210}
.reel-sound .on-ic,.reel-sound.on .off-ic{display:none}.reel-sound.on .on-ic{display:block}

/* ---------- intro with the V17 mosaic behind the headline ---------- */
.intro{position:relative;isolation:isolate;padding-block:88px 56px;overflow:hidden}
.intro-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:40px 56px;align-items:start}
.mo-grid{position:absolute;inset:0;z-index:-2;display:grid;grid-template-columns:repeat(6,1fr);grid-template-rows:repeat(4,1fr);gap:4px;pointer-events:none}
.mo-grid figure{overflow:hidden;opacity:0;transform:scale(1.04);transition:opacity 1.1s ease,transform 1.4s ease;transition-delay:calc(var(--o) * 90ms)}
.intro.in .mo-grid figure{opacity:1;transform:none}
.mo-grid img{width:100%;height:100%;object-fit:cover;filter:grayscale(.55) contrast(1.05) brightness(.92)}
.mo-tex{position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:
    radial-gradient(60% 70% at 18% 20%,color-mix(in srgb,var(--yellow) 42%,transparent),transparent 70%),
    radial-gradient(50% 60% at 86% 84%,color-mix(in srgb,var(--lime) 36%,transparent),transparent 70%),
    linear-gradient(color-mix(in srgb,var(--paper) 78%,transparent),color-mix(in srgb,var(--paper) 78%,transparent));
  mix-blend-mode:normal}
.mo-tex::after{content:"";position:absolute;inset:0;opacity:.35;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .55 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:160px 160px}
.display{font-family:var(--f-display);font-weight:800;letter-spacing:-.04em;line-height:.98;text-wrap:balance}
.intro h2{font-size:clamp(40px,5.4vw,82px);line-height:1.04}
.lede{font-size:clamp(19px,1.6vw,23px);line-height:1.45;color:var(--ink-2);max-width:42ch;margin-top:22px;font-weight:450}
.btn{display:inline-flex;align-items:center;gap:10px;margin-top:26px;font-family:var(--f-display);font-weight:700;font-size:16px;text-decoration:none;padding:12px 20px;border-radius:999px;border:1.5px solid var(--ink);background:none;cursor:pointer}
.btn.solid{background:var(--ink);color:var(--paper)}
.btn.solid:hover{background:var(--red);border-color:var(--red);color:var(--on-red)}
.tray{list-style:none;margin:0;padding:0 18px 6px;border-top:1.5px solid var(--ink);background:color-mix(in srgb,var(--card) 84%,transparent);backdrop-filter:blur(8px);border-radius:0 0 14px 14px}
.tray li{border-bottom:1px solid var(--rule)}
.tray li:last-child{border-bottom:0}
.tray a,.tray button{display:grid;grid-template-columns:28px 64px 1fr;gap:14px;align-items:center;width:100%;padding:11px 0;text-decoration:none;background:none;border:0;text-align:left;cursor:pointer;transition:padding .25s}
.tray a:hover,.tray button:hover{padding-left:8px}
.tray img{width:64px;height:44px;object-fit:cover;border-radius:6px}
.tray b{display:block;font-family:var(--f-display);font-weight:700;font-size:16.5px;line-height:1.2;letter-spacing:-.01em}
.tray small{color:var(--ink-3)}

/* ---------- numbers ---------- */
.numbers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.num{background:var(--c);color:var(--on);padding:34px max(20px,4vw) 38px;display:flex;flex-direction:column;gap:10px}
.num b{font-family:var(--f-display);font-weight:900;font-size:clamp(56px,7.6vw,124px);line-height:.85;letter-spacing:-.055em;font-variant-numeric:tabular-nums}
.num span{font-family:var(--f-display);font-weight:500;font-size:16px;line-height:1.35;max-width:30ch}

/* ---------- field strip ---------- */
.strip{overflow:hidden;padding-block:26px;border-bottom:1px solid var(--rule)}
.strip-track{display:flex;gap:14px;width:max-content}
@media (prefers-reduced-motion:no-preference){.strip-track{animation:slide 90s linear infinite}.strip:hover .strip-track{animation-play-state:paused}}
@keyframes slide{to{transform:translateX(-50%)}}
.strip figure{position:relative;height:clamp(200px,24vw,320px);flex:none;border-radius:10px;overflow:hidden}
.strip img{height:100%;width:auto;object-fit:cover}
.strip figcaption{position:absolute;left:10px;bottom:10px;right:10px;font-family:var(--f-display);font-weight:600;font-size:13px;color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.7);opacity:0;transform:translateY(6px);transition:.25s}
.strip figure:hover figcaption{opacity:1;transform:none}
@media (hover:none){.strip figcaption{opacity:1;transform:none}}

/* ---------- sections ---------- */
.section{padding-block:96px 24px}
.shead{display:flex;align-items:flex-end;justify-content:space-between;gap:12px 24px;flex-wrap:wrap;margin-bottom:34px}
.shead h2{font-size:clamp(46px,6.4vw,104px)}
.shead.sub{margin-top:72px;border-top:1.5px solid var(--ink);padding-top:16px}
.display.sm{font-size:clamp(28px,3vw,40px)}
.shead-note{font-family:var(--f-display);font-weight:500;font-size:15px;color:var(--ink-3);max-width:44ch}
.more{display:inline-flex;align-items:center;gap:8px;font-family:var(--f-display);font-weight:700;font-size:15px;text-decoration:none;border-bottom:1.5px solid currentColor;padding-bottom:2px;background:none;border-top:0;border-left:0;border-right:0;cursor:pointer}
.more:hover{color:var(--red)}
.eyebrow{font-family:var(--f-display);font-weight:600;font-size:11.5px;color:var(--ink-3);letter-spacing:.09em;text-transform:uppercase}
.eyebrow-l{display:block;color:var(--ink-3);text-transform:uppercase;letter-spacing:.12em;font-size:11.5px;margin:40px 0 16px}

/* moving pictures */
.mp{position:relative;aspect-ratio:4/3;max-width:100%;overflow:hidden;border-radius:12px;background:var(--paper-2)}
.mp img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--o);opacity:0;transition:opacity 1.2s ease,filter 1.2s ease;filter:saturate(.25) contrast(.95) blur(1.5px)}
.mp img.on{opacity:1}
.mp.alive img{filter:none}
@media (prefers-reduced-motion:no-preference){.mp.alive img.on{animation:push 7s ease-out both}}
@keyframes push{from{transform:scale(1.02) translate(0,0)}to{transform:scale(1.13) translate(-1.5%,-1%)}}
.mp.tall{aspect-ratio:4/3}.mp.tall img{object-position:50% 20%}
.mp-tag{position:absolute;left:10px;top:10px;display:inline-flex;align-items:center;gap:6px;font-family:var(--f-display);font-weight:700;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;background:color-mix(in srgb,var(--paper) 88%,transparent);color:var(--ink);padding:5px 9px;border-radius:999px;z-index:2}
.mp-tag i{width:6px;height:6px;border-radius:50%;background:var(--ink-3)}
.alive .mp-tag i,.feature-media.alive .mp-tag i{background:var(--red)}
@media (prefers-reduced-motion:no-preference){.alive .mp-tag i{animation:blink 1.6s infinite}}
@keyframes blink{50%{opacity:.2}}
.cover{display:flex;flex-direction:column;justify-content:space-between;padding:18px;background:var(--c);color:var(--on)}
.cover b{font-family:var(--f-display);font-weight:800;font-size:clamp(26px,2.6vw,38px);line-height:.95;letter-spacing:-.04em}

/* feature */
.feature{position:relative;display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:28px 44px;align-items:start;padding-bottom:56px;border-bottom:1px solid var(--rule)}
.feature-media{position:relative;border-radius:14px;overflow:hidden;background:#0c0b0a;aspect-ratio:16/10;max-width:100%}
.feature-media video{width:100%;height:100%;object-fit:cover}
.feature-body{display:flex;flex-direction:column;gap:10px;min-width:0}
.feature-body h3{font-family:var(--f-display);font-weight:800;font-size:clamp(36px,4vw,60px);line-height:.95;letter-spacing:-.045em;text-wrap:balance}
.role{color:var(--ink-2)}.where{color:var(--ink-3)}
.desc{font-size:16px;line-height:1.5;color:var(--ink-2);font-weight:450}
.desc.big{font-size:clamp(18px,1.5vw,21px);color:var(--ink)}
.fig{font-family:var(--f-display);font-weight:500;font-size:14.5px;color:var(--ink-2)}
.fig b{font-weight:800;color:var(--ink);font-size:1.25em;letter-spacing:-.02em;margin-right:4px}
.fig.xl b{font-size:clamp(30px,3vw,44px);display:block;line-height:1;letter-spacing:-.04em}
.feature-stills{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-block:6px 8px}
.feature-stills img{aspect-ratio:1;object-fit:cover;border-radius:8px;width:100%}
.feature .card-link{border-radius:14px}
.feature:hover h3{text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:5px}

/* cards: the whole card is the link */
.grid{display:grid;gap:40px 28px}
.g-sel{grid-template-columns:repeat(6,minmax(0,1fr));margin-top:48px}
.g-sel>div{grid-column:span 2}
.g-sel>div:nth-child(1),.g-sel>div:nth-child(2){grid-column:span 3}
.g-more{grid-template-columns:repeat(4,minmax(0,1fr))}
.card{position:relative;display:flex;flex-direction:column;gap:14px;min-width:0}
.card-link{position:absolute;inset:0;z-index:3;border-radius:12px}
.card-body{display:flex;flex-direction:column;gap:7px}
.card h3{font-family:var(--f-display);font-weight:800;font-size:clamp(23px,2vw,30px);line-height:1;letter-spacing:-.035em;text-wrap:balance}
.card.sm h3{font-size:20px;letter-spacing:-.025em}
.card.sm .desc{font-size:15px}
.card.sm .mp{aspect-ratio:3/2}
.card .mp{transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s}
.card:hover .mp{transform:translateY(-4px);box-shadow:var(--shadow)}
.card:hover h3{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}

/* work page: one band per field */
.band{padding-block:72px 10px;border-top:1.5px solid var(--ink)}
.band:first-of-type{border-top:0;padding-top:30px}
.band-head{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:16px 40px;align-items:end;margin-bottom:34px}
.band-head h2{font-size:clamp(40px,5.6vw,92px)}
.band-head p{font-size:16px;color:var(--ink-2);max-width:44ch;font-weight:450}
.band .mono.count{color:var(--ink-3);display:block;margin-bottom:10px}
.jump{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}

/* ---------- video feed ---------- */
.feed-sec{background:var(--ink);color:var(--paper);margin-top:72px;padding-bottom:80px}
.feed-page .feed-sec{margin-top:0;padding-top:34px;min-height:70vh}.feed-page .shead{margin-bottom:22px}
.feed-sec .shead-note{color:color-mix(in srgb,var(--paper) 65%,transparent)}
.feed-sec .display mark{color:#131210}
.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}
.fbtn{font-family:var(--f-display);font-weight:600;font-size:14px;border:1.5px solid color-mix(in srgb,var(--paper) 30%,transparent);background:transparent;color:var(--paper);border-radius:999px;padding:7px 14px;cursor:pointer}
.fbtn .mono{opacity:.6;margin-left:4px;font-size:11px}
.fbtn.on,.fbtn:hover{background:var(--paper);color:var(--ink);border-color:var(--paper)}
.shelf-wrap{position:relative}
.shelf{--sp:max(20px,calc((100vw - 1360px)/2 + 20px));list-style:none;margin:0;display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:var(--sp);padding:4px var(--sp) 18px;scrollbar-width:none;overscroll-behavior-x:contain}
.shelf::-webkit-scrollbar{display:none}
.vcard{position:relative;flex:none;width:clamp(200px,22vw,270px);scroll-snap-align:start}
.vcard[hidden]{display:none}
.feed-page .shelf{flex-wrap:wrap;overflow:visible;scroll-snap-type:none;padding-inline:var(--gut);gap:18px;max-width:1360px;margin-inline:auto;justify-content:flex-start}
.feed-page .vcard{width:calc((100% - 18px*4)/5)}
.vbtn{position:relative;display:block;width:100%;aspect-ratio:9/16;border:0;padding:0;border-radius:16px;overflow:hidden;cursor:pointer;background:#222;text-align:left;transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.vbtn:hover{transform:scale(1.025)}
.vbtn video{width:100%;height:100%;object-fit:cover}
.vbtn::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.82),transparent 48%);pointer-events:none}
.vchip{display:inline-block;font-family:var(--f-display);font-weight:700;font-size:12px;background:var(--c);color:var(--on);padding:4px 10px;border-radius:999px}
.vbtn .vchip{position:absolute;left:10px;top:10px;z-index:2}
.vmeta{position:absolute;left:14px;right:70px;bottom:14px;z-index:2;color:#fff;display:flex;flex-direction:column;gap:4px}
.vmeta b{font-family:var(--f-display);font-weight:700;font-size:17px;line-height:1.15;letter-spacing:-.01em}
.vmeta small{font-family:var(--f-display);font-size:12.5px;opacity:.8;line-height:1.3}
.vmeta small.mono{font-size:11px}
.vplay{position:absolute;right:12px;top:10px;z-index:2;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.92);color:#131210;display:grid;place-items:center;padding-left:2px;transition:transform .25s}
.vbtn:hover .vplay{transform:scale(1.12)}
.shelf-arrow{position:absolute;top:calc(50% - 30px);z-index:4;width:46px;height:46px;border-radius:50%;border:0;background:var(--paper);color:var(--ink);font-size:26px;line-height:1;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.4)}
.shelf-arrow.prev{left:max(12px,env(safe-area-inset-left,0px))}.shelf-arrow.next{right:max(12px,env(safe-area-inset-right,0px))}
@media (hover:none){.shelf-arrow{display:none}}
.feed-page .shelf-arrow{display:none}
/* likes */
.vlike{position:absolute;right:12px;bottom:14px;z-index:3;display:inline-flex;align-items:center;gap:5px;border:0;background:rgba(0,0,0,.35);color:#fff;border-radius:999px;padding:6px 10px;font-family:var(--f-display);font-weight:700;font-size:12px;cursor:pointer;backdrop-filter:blur(4px)}
.vlike svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2}
.vlike.on svg{fill:var(--red);stroke:var(--red)}
.heart-pop{position:absolute;left:50%;top:50%;width:120px;height:120px;margin:-60px 0 0 -60px;z-index:5;pointer-events:none;color:#fff;filter:drop-shadow(0 6px 20px rgba(0,0,0,.5));opacity:0;transform:scale(.3)}
.heart-pop svg{width:100%;height:100%;fill:var(--red);stroke:#fff;stroke-width:1}
.heart-pop.go{animation:heart .9s cubic-bezier(.2,.9,.3,1.2) both}
@keyframes heart{0%{opacity:0;transform:scale(.3)}25%{opacity:1;transform:scale(1.1)}60%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1.25) translateY(-16px)}}

/* viewer */
.viewer{position:fixed;inset:0;z-index:60;background:#080807;color:#fff}
.viewer-top{position:absolute;inset:0 0 auto;z-index:3;display:flex;justify-content:space-between;align-items:center;padding:calc(env(safe-area-inset-top,0px) + 14px) max(16px,env(safe-area-inset-right,0px)) 14px max(16px,env(safe-area-inset-left,0px));background:linear-gradient(rgba(0,0,0,.6),transparent)}
.viewer-ctl{display:flex;gap:8px}
.viewer .chip-btn{border-color:rgba(255,255,255,.7);color:#fff}.viewer .chip-btn:hover{background:#fff;color:#111}
.vstack{height:100%;overflow-y:auto;scroll-snap-type:y mandatory;overscroll-behavior:contain;scrollbar-width:none}
.vstack::-webkit-scrollbar{display:none}
.vslide{height:100vh;height:100dvh;scroll-snap-align:start;scroll-snap-stop:always;display:flex;align-items:center;justify-content:center;gap:36px;padding:64px 16px 24px}
.vslide[hidden]{display:none}
.vphone{position:relative;height:min(100%,calc((100vw - 32px) * 16 / 9));aspect-ratio:9/16;max-width:100%;border-radius:18px;overflow:hidden;background:#1a1a1a}
.vphone video{width:100%;height:100%;object-fit:cover}
.vprog{position:absolute;left:10px;right:10px;top:10px;height:3px;background:rgba(255,255,255,.3);border-radius:3px;overflow:hidden}
.vprog i{display:block;height:100%;width:0;background:#fff}
.vinfo{width:min(320px,30vw);display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.vinfo h3{font-family:var(--f-display);font-weight:800;font-size:clamp(24px,2.4vw,34px);line-height:1;letter-spacing:-.03em}
.vinfo p{font-family:var(--f-display);font-size:15px;opacity:.8}
.vinfo p.mono{font-size:11.5px}
.vinfo .vlike{position:static;margin-top:6px}
.viewer-nav{position:absolute;right:max(16px,env(safe-area-inset-right,0px));bottom:calc(env(safe-area-inset-bottom,0px) + 20px);z-index:3;display:flex;flex-direction:column;gap:8px}
@media (max-width:820px){
  .vslide{flex-direction:column;justify-content:center;gap:0;padding:0}
  .vphone{height:100%;width:100%;border-radius:0;aspect-ratio:auto}
  .vinfo{position:absolute;left:16px;right:76px;bottom:calc(env(safe-area-inset-bottom,0px) + 28px);width:auto;text-shadow:0 1px 10px rgba(0,0,0,.7)}
  .vslide{position:relative}
}

/* ---------- people: columnist portraits ---------- */
.voices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.voice{background:var(--card);border-radius:18px;padding:28px;display:grid;grid-template-columns:112px 1fr;gap:22px;align-items:start;box-shadow:var(--shadow)}
.voice:not(.lead){grid-template-columns:140px 1fr}
.voice.lead{grid-column:1/-1;grid-template-columns:minmax(160px,240px) 1fr;padding:40px;gap:40px;align-items:center}
.portrait{position:relative;aspect-ratio:1;width:100%;max-width:100%;border-radius:50%;background:var(--c);overflow:hidden;isolation:isolate}
.portrait img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.15) brightness(1.06);mix-blend-mode:multiply;transition:filter .5s,mix-blend-mode .5s}
.portrait::after{content:"";position:absolute;inset:0;border-radius:50%;box-shadow:inset 0 0 0 3px var(--c);pointer-events:none}
.voice:hover .portrait img{filter:none;mix-blend-mode:normal}
.vtext{display:flex;flex-direction:column;gap:16px;min-width:0}
.voice blockquote{font-family:var(--f-display);font-weight:450;font-size:17.5px;line-height:1.5;position:relative}
.voice.lead blockquote{font-size:clamp(21px,2vw,28px);line-height:1.38;font-weight:500;letter-spacing:-.01em}
.voice blockquote::before{content:"“";display:block;font-family:var(--f-display);font-style:normal;font-weight:900;font-size:64px;line-height:.6;height:.42em;color:var(--c,var(--red))}
.voice:nth-child(1){--c:var(--lime)}.voice:nth-child(2){--c:var(--blue)}.voice:nth-child(3){--c:var(--yellow)}.voice:nth-child(4){--c:var(--red)}.voice:nth-child(5){--c:var(--forest)}
.voice figcaption{display:flex;flex-direction:column;gap:2px;font-family:var(--f-display)}
.voice figcaption b{font-weight:800;font-size:17px;letter-spacing:-.01em}
.voice figcaption span{font-size:14px;color:var(--ink-3)}
.voice figcaption em{font-style:normal;font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:600;color:var(--ink-3);margin-top:4px}
.also{display:flex;flex-wrap:wrap;gap:6px 22px;font-family:var(--f-display);font-size:15px;color:var(--ink-2);margin-top:10px}
.also .eyebrow-l{flex-basis:100%;margin:28px 0 6px}
.also b{color:var(--ink);font-weight:700}
.logos{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid var(--rule);border-left:1px solid var(--rule)}
.logo{position:relative;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);aspect-ratio:4/3;display:grid;place-items:center;padding:14px;overflow:hidden;background:none;cursor:zoom-in;transition:background .25s}
.logo:hover{background:var(--card)}
.logo img{max-height:46px;max-width:76%;width:auto;object-fit:contain;transition:opacity .3s,transform .3s}
.logo .lc{position:absolute;opacity:0}
.logo:hover .lm{opacity:0}.logo:hover .lc{opacity:1;transform:scale(1.08)}
.logo.txt span{font-family:var(--f-display);font-weight:800;font-size:15px;letter-spacing:-.02em;text-align:center;line-height:1.1}
.logo small{position:absolute;left:8px;right:8px;bottom:6px;font-family:var(--f-display);font-weight:600;font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);text-align:center;opacity:0;transition:opacity .25s;line-height:1.25}
.logo:hover small{opacity:1}
:root[data-theme="dark"] .logo .lm{filter:invert(1)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .logo .lm{filter:invert(1)}}
/* logo lightbox (V17 behavior: click, it grows) */
.lbox{position:fixed;inset:0;z-index:65;display:grid;place-items:center;background:rgba(10,9,8,.86);padding:24px;cursor:zoom-out}
.lbox[hidden]{display:none}
.lbox-in{background:var(--card);color:var(--ink);border-radius:22px;padding:40px 36px 28px;max-width:min(680px,100%);width:100%;text-align:center;display:flex;flex-direction:column;gap:18px;align-items:center;animation:lbin .35s cubic-bezier(.2,.8,.2,1)}
@keyframes lbin{from{opacity:0;transform:scale(.9)}}
.lbox-in img{max-height:200px;width:auto;max-width:80%}
.lbox-in .big{font-family:var(--f-display);font-weight:900;font-size:clamp(34px,5vw,56px);letter-spacing:-.045em;line-height:.95}
.lbox-in b{font-family:var(--f-display);font-weight:800;font-size:20px;letter-spacing:-.02em}
.lbox-in small{font-family:var(--f-display);font-size:15px;color:var(--ink-3)}
:root[data-theme="dark"] .lbox-in{background:#F1ECE2;color:#131210}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .lbox-in{background:#F1ECE2;color:#131210}}

/* ---------- impact ---------- */
.impact{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.imp{position:relative;background:var(--c);color:var(--on);border-radius:18px;padding:26px 26px 30px;display:flex;flex-direction:column;gap:8px}
.impn{font-family:var(--f-display);font-weight:900;font-size:clamp(46px,5vw,76px);line-height:.88;letter-spacing:-.05em;margin-top:18px}
.impc{font-family:var(--f-display);font-weight:600;font-size:15px}
.imp h3{font-family:var(--f-display);font-weight:800;font-size:22px;line-height:1.08;letter-spacing:-.02em;margin-top:18px}
.imp h3 a{text-decoration:none}.imp:hover h3 a{text-decoration:underline}
.imp p{font-size:15.5px;line-height:1.45;opacity:.9}
.imp .card-link{border-radius:18px}
.agenda{position:relative;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:28px;align-items:center;text-decoration:none;margin-top:40px;padding:22px;border:1.5px solid var(--ink);border-radius:18px}
.agenda h3{font-family:var(--f-display);font-weight:800;font-size:clamp(26px,2.6vw,38px);line-height:1;letter-spacing:-.035em;margin:10px 0}
.agenda .more{margin-top:14px}
.agenda-mp{aspect-ratio:16/10}

/* ---------- press ---------- */
.press-top{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.pcard{display:flex;flex-direction:column;gap:10px;text-decoration:none}
.pcard img{aspect-ratio:3/2;object-fit:cover;border-radius:12px;width:100%;transition:transform .4s}
.pcard:hover img{transform:scale(1.02)}
.pcard .mono{color:var(--ink-3)}
.pcard b{font-family:var(--f-display);font-weight:800;font-size:22px;line-height:1.1;letter-spacing:-.025em}
.pcard small{font-size:15px;color:var(--ink-2)}
.pcard:hover b{text-decoration:underline}
.press-list{list-style:none;margin:40px 0 0;padding:0;columns:2;column-gap:40px;border-top:1.5px solid var(--ink)}
.press-list li{break-inside:avoid;border-bottom:1px solid var(--rule)}
.press-list a{display:grid;grid-template-columns:76px 1fr 18px;gap:14px;padding:14px 0;text-decoration:none;align-items:start}
.press-list .mono{color:var(--ink-3);padding-top:3px}
.press-list b{display:block;font-family:var(--f-display);font-weight:700;font-size:16.5px;line-height:1.25;letter-spacing:-.01em}
.press-list small{font-size:14px;color:var(--ink-3)}
.press-list a:hover b{color:var(--red)}
.press-list svg{margin-top:4px}

/* ---------- fields ---------- */
.doors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.door{position:relative;background:var(--c);color:var(--on);border-radius:18px;padding:24px 24px 56px;text-decoration:none;display:flex;flex-direction:column;gap:10px;min-height:200px;transition:transform .3s cubic-bezier(.2,.8,.2,1)}
.door:hover{transform:translateY(-4px) rotate(-.6deg)}
.door b{font-family:var(--f-display);font-weight:800;font-size:clamp(26px,2.4vw,34px);line-height:1;letter-spacing:-.035em}
.door p{font-size:15.5px;line-height:1.45;opacity:.9}
.door span{position:absolute;right:20px;bottom:18px}

/* ---------- footer ---------- */
.foot{margin-top:100px;background:var(--forest);color:var(--on-forest);padding-block:56px 30px}
.foot-mark{font-family:var(--f-display);font-weight:900;font-size:clamp(56px,13vw,200px);line-height:.82;letter-spacing:-.06em;color:var(--lime);white-space:nowrap}
.foot-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;margin-top:36px;align-items:end}
.mailbox{display:flex;flex-direction:column;gap:8px;align-items:flex-start}
.mailbox .mono{opacity:.7}
.addr{font-family:var(--f-display);font-weight:700;font-size:clamp(22px,2.6vw,36px);letter-spacing:-.025em;word-break:break-all;user-select:all}
.foot .chip-btn{border-color:var(--on-forest)}.foot .chip-btn:hover{background:var(--lime);color:#131210;border-color:var(--lime)}
.foot-links{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.foot-links a,.foot-links button{display:inline-flex;align-items:center;gap:8px;font-family:var(--f-display);font-weight:700;font-size:19px;text-decoration:none;background:none;border:0;padding:0;cursor:pointer;color:inherit}
.foot-links a:hover,.foot-links button:hover{color:var(--lime)}
.foot-small{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:44px;padding-top:14px;border-top:1px solid color-mix(in srgb,var(--on-forest) 25%,transparent);opacity:.75}

/* ---------- reel player: bigger screen, not browser fullscreen ---------- */
.player{position:fixed;inset:0;z-index:70;background:rgba(6,6,5,.9);display:grid;place-items:center;padding:calc(env(safe-area-inset-top,0px) + 16px) max(16px,env(safe-area-inset-right,0px)) calc(env(safe-area-inset-bottom,0px) + 16px) max(16px,env(safe-area-inset-left,0px))}
.player[hidden]{display:none}
.player-in{width:min(1240px,100%);max-height:100%;display:flex;flex-direction:column;gap:12px;animation:lbin .35s cubic-bezier(.2,.8,.2,1)}
.player-bar{display:flex;justify-content:space-between;align-items:center;color:#fff;font-family:var(--f-display)}
.player .chip-btn{border-color:#fff;color:#fff}
.player video{width:100%;max-height:calc(100vh - 110px);aspect-ratio:16/9;background:#000;border-radius:14px;box-shadow:0 40px 90px -30px rgba(0,0,0,.9)}

/* ---------- about: long-form report with the map ---------- */
.ab-head{padding-block:40px 30px;border-bottom:1.5px solid var(--ink)}
.story{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:40px 56px;align-items:start;padding-block:40px 20px}
.mapcol{position:sticky;top:calc(env(safe-area-inset-top,0px) + 72px)}
.mapbox{position:relative;background:var(--card);border-radius:22px;overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--rule)}
.mapbox svg{width:100%;height:auto;display:block;background:
  radial-gradient(70% 60% at 80% 10%,color-mix(in srgb,var(--blue) 45%,transparent),transparent 70%),
  linear-gradient(var(--card),var(--paper-2))}
.mapbox .uf{fill:var(--paper-2);stroke:var(--ink-3);stroke-width:.6;stroke-linejoin:round;transition:fill .6s}
.mapbox .uf.ce{fill:var(--lime);stroke:var(--ink);stroke-width:1}
.mapbox .arc{fill:none;stroke:var(--red);stroke-width:1.6;stroke-dasharray:4 5;opacity:0;transition:opacity .6s}
.mapbox .show-la .arc{opacity:1}
.mapbox .la circle{fill:var(--red);opacity:0;transition:opacity .6s}
.mapbox .show-la .la circle{opacity:1}
.mapbox .pin .halo{fill:var(--red);opacity:0;transform-box:fill-box;transform-origin:center;transition:opacity .4s}
.mapbox .pin .dot{fill:var(--ink);stroke:var(--card);stroke-width:1;transition:fill .4s}
.mapbox .pin.on .dot{fill:var(--red)}
.mapbox .pin.on .halo{opacity:.18}
@media (prefers-reduced-motion:no-preference){.mapbox .pin.on .halo{animation:halo 1.8s ease-out infinite}}
@keyframes halo{from{transform:scale(.4);opacity:.5}to{transform:scale(1.6);opacity:0}}
.mapbox text.pl{font-family:var(--f-display);font-weight:700;font-size:calc(9px / var(--z,1));fill:var(--ink);paint-order:stroke;stroke:var(--card);stroke-width:calc(3px / var(--z,1));opacity:0;transition:opacity .4s}
.mapbox .pin.on text.pl,.mapbox .show-la text.pl.big{opacity:1}
.mapbox text.pl.big{font-size:calc(11px / var(--z,1));fill:var(--red)}
.mapcap{display:flex;justify-content:space-between;gap:12px;padding:12px 16px;border-top:1px solid var(--rule);color:var(--ink-3)}
.steps{display:flex;flex-direction:column;gap:0}
.step{padding-block:34px 44px;border-bottom:1px solid var(--rule);transition:opacity .4s}
.steps:has(.on) .step:not(.on){opacity:.55}
.step .kick{display:flex;align-items:baseline;gap:14px;font-family:var(--f-display);font-weight:600;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin-bottom:14px}
.step .kick b{font-size:44px;font-weight:900;letter-spacing:-.05em;line-height:.9;color:var(--ink);padding:0 .06em;border-radius:.1em}
.step.on .kick b{background:var(--yellow);color:#131210}
.step h3{font-family:var(--f-display);font-weight:800;font-size:clamp(28px,3vw,44px);line-height:.98;letter-spacing:-.04em;margin-bottom:16px;text-wrap:balance}
.prose{display:flex;flex-direction:column;gap:14px;max-width:62ch;font-size:17.5px;line-height:1.6;font-weight:450}
.prose p:first-child::first-letter{font-family:var(--f-display);font-weight:900;font-size:3.1em;line-height:.8;float:left;padding:6px 10px 0 0;color:var(--red)}
.prose cite{font-style:italic;font-weight:600}
.photos{display:grid;gap:10px;margin-top:22px}
.photos.n2{grid-template-columns:repeat(2,1fr)}.photos.n3{grid-template-columns:repeat(3,1fr)}.photos.n4{grid-template-columns:repeat(4,1fr)}
.photos figure{position:relative;overflow:hidden;border-radius:12px;opacity:0;transform:translateY(14px);transition:opacity .7s,transform .7s}
.photos figure.in{opacity:1;transform:none}
.photos.n2 figure{aspect-ratio:3/2}.photos.n3 figure{aspect-ratio:1}.photos.n4 figure{aspect-ratio:4/5}
.photos img{width:100%;height:100%;object-fit:cover}
.photos figcaption{position:absolute;left:10px;bottom:10px;right:10px;font-family:var(--f-display);font-weight:600;font-size:12px;color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.8)}
.photos figure.wide{grid-column:1/-1;aspect-ratio:16/7}
.timeline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:40px;border-top:1.5px solid var(--ink);padding-top:18px}
.tl{background:var(--c);color:var(--on);border-radius:14px;padding:18px 18px 20px;display:flex;flex-direction:column;gap:6px}
.tl b{font-family:var(--f-display);font-weight:900;font-size:clamp(30px,3vw,44px);letter-spacing:-.05em;line-height:.9}
.tl span{font-family:var(--f-display);font-weight:600;font-size:13.5px;line-height:1.3}
.ab-next{display:flex;flex-wrap:wrap;gap:12px;margin-top:40px}

/* ---------- responsive ---------- */
@media (max-width:1100px){
  .g-more{grid-template-columns:repeat(3,minmax(0,1fr))}
  .logos{grid-template-columns:repeat(5,minmax(0,1fr))}
  .feed-page .vcard{width:calc((100% - 18px*3)/4)}
}
@media (max-width:900px){
  .intro-grid,.feature,.agenda,.band-head,.story{grid-template-columns:1fr}
  .mapcol{position:relative;top:auto}
  .g-sel{grid-template-columns:1fr 1fr}
  .g-sel>div,.g-sel>div:nth-child(1),.g-sel>div:nth-child(2){grid-column:span 1}
  .g-more{grid-template-columns:1fr 1fr}
  .numbers,.impact,.press-top{grid-template-columns:1fr}
  .voices{grid-template-columns:1fr}
  .voice.lead{grid-template-columns:1fr;padding:28px}
  .voice.lead .portrait{max-width:180px}
  .doors{grid-template-columns:1fr 1fr}
  .press-list{columns:1}
  .foot-grid{grid-template-columns:1fr}
  .logos{grid-template-columns:repeat(3,minmax(0,1fr))}
  .reel{height:140vh}
  .timeline{grid-template-columns:1fr 1fr}
  .feed-page .vcard{width:calc((100% - 18px*2)/3)}
}
@media (max-width:600px){
  body{font-size:16.5px}
  .hide-sm{display:none}
  .g-sel,.g-more,.doors{grid-template-columns:1fr}
  .voice,.voice:not(.lead){grid-template-columns:84px 1fr;padding:20px;gap:16px}
  .reel-cap{left:20px;right:20px;bottom:24px}
  .reel-sound{right:20px;top:20px}
  .reel-frame{height:min(100svh,125vw)}
  .section{padding-block:72px 16px}
  .intro{padding-block:64px 40px}
  .mo-grid{grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(8,1fr)}
  .photos.n3,.photos.n4{grid-template-columns:1fr 1fr}
  .feed-page .vcard{width:calc((100% - 18px)/2)}
  .player video{max-height:60vh}
  .step .kick b{font-size:34px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* ---------- recado (private note) on the feed · Cloudflare v1.9 · lives inside the dark .feed-sec ---------- */
.sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.note-box{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(20px,4vw,56px);margin:72px auto 0;max-width:1360px;padding:22px var(--gut,0) 0;border-top:1.5px solid color-mix(in srgb,var(--paper) 40%,transparent);align-items:start;box-sizing:border-box}
.note-copy h2{font-family:var(--f-display);font-weight:800;font-size:clamp(30px,3.6vw,46px);line-height:1;letter-spacing:-.03em;margin:0;color:var(--paper)}
.note-copy h2 mark{color:#131210;padding:0 .08em;border-radius:4px}
.note-copy p{color:color-mix(in srgb,var(--paper) 70%,transparent);font-size:17px;max-width:38ch;margin:14px 0 0}
.note-form{display:flex;flex-direction:column;gap:10px;min-width:0}
.note-form textarea,.note-form input{width:100%;box-sizing:border-box;font:inherit;font-size:16px;color:var(--paper);background:color-mix(in srgb,var(--paper) 7%,transparent);border:1.5px solid color-mix(in srgb,var(--paper) 22%,transparent);border-radius:12px;padding:12px 14px;transition:border-color .2s,background .2s}
.note-form textarea{resize:vertical;min-height:120px}
.note-form textarea:focus,.note-form input:focus{outline:none;border-color:var(--lime);background:color-mix(in srgb,var(--paper) 10%,transparent)}
.note-form ::placeholder{color:color-mix(in srgb,var(--paper) 50%,transparent)}
.note-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.note-row .btn{margin-top:4px;cursor:pointer;font-size:15px;background:var(--lime);border-color:var(--lime);color:#131210}
.note-row .btn:hover{background:var(--paper);border-color:var(--paper);color:var(--ink)}
.note-row .btn:disabled{opacity:.55;cursor:progress}
.note-form .ok{margin:0;font-family:var(--f-display);font-weight:600;font-size:15px;color:var(--lime)}
@media (max-width:820px){.note-box{grid-template-columns:1fr;margin-top:56px}}
