/* ============================================================
   jeanphilmadame.com — "Jean Phil: a catalogue of the works"
   An art book from a serious publisher, about a man who punches the air.
   Paper (cream), plates (white), ink (navy), the painted sky as cover
   and endpapers. Set in Montserrat (the wordmark) and EB Garamond.
   ============================================================ */
@font-face{font-family:'Montserrat';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/montserrat-latin-700-normal.woff2') format('woff2')}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:800;font-display:swap;src:url('fonts/montserrat-latin-800-normal.woff2') format('woff2')}
@font-face{font-family:'EB Garamond';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/eb-garamond-latin-400-normal.woff2') format('woff2')}
@font-face{font-family:'EB Garamond';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/eb-garamond-latin-500-normal.woff2') format('woff2')}
@font-face{font-family:'EB Garamond';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/eb-garamond-latin-600-normal.woff2') format('woff2')}
@font-face{font-family:'EB Garamond';font-style:italic;font-weight:400;font-display:swap;src:url('fonts/eb-garamond-latin-400-italic.woff2') format('woff2')}
@font-face{font-family:'Archivo';font-style:normal;font-weight:100 900;font-display:swap;src:url('fonts/archivo-latin-standard-normal.woff2') format('woff2')}
@font-face{font-family:'Archivo';font-style:italic;font-weight:100 900;font-display:swap;src:url('fonts/archivo-latin-standard-italic.woff2') format('woff2')}

:root{
  --paper:#F4F1E9; --paper-deep:#EAE5D8; --rule:#D9D3C5;
  --plate:#FFFFFF; --line:#DCE3EB;
  --ink:#12294A; --ink-70:#3F5878; --ink-50:#64789A; --ink-25:#B7C2D1;
  --sky:#2F74C4; --sky-deep:#245FA6; --sky-pale:#EAF3FC; --sky-line:#C7DCF2;
  --cream:#F4F1E9; --cream-deep:#EAE5D8; --cream-ink:#5C5546;
  --tweed:#7C4B36; --white:#FFFFFF; --studio:#698DB1;
  --display:'Montserrat','Archivo','Helvetica Neue',Arial,sans-serif;
  --serif:'EB Garamond',Garamond,'Times New Roman',serif;
  --sans:'Archivo','Helvetica Neue',Arial,sans-serif;
  --radius:6px;
  --shadow:0 24px 48px -28px rgba(18,41,74,.35);
  --wrap:1240px; --gutter:28px;
  --measure:34em;
  --grain:url("data:image/png;base64,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");
  --jab:cubic-bezier(.2,1.25,.3,1); --cut:cubic-bezier(.7,0,.2,1);
  color-scheme:light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
html,body{margin:0}
body{background:var(--paper);color:var(--ink);font-family:var(--serif);font-size:19px;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden;font-kerning:normal;font-feature-settings:"liga","kern"}
img,video{max-width:100%;display:block}
a{color:inherit}
button{font:inherit;cursor:pointer}
:focus-visible{outline:2px solid var(--sky);outline-offset:3px}
.on-blue :focus-visible,.on-blue:focus-visible{outline-color:var(--white)}
p{margin:0}
[hidden]{display:none!important}

/* ---------- the typographic voice ---------- */
h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.05;margin:0;text-wrap:balance;letter-spacing:-.01em}
h2{font-size:clamp(38px,4.6vw,66px)}
h3{font-size:clamp(24px,2.2vw,30px);line-height:1.15}
.label{font-family:var(--display);font-weight:700;font-size:11px;letter-spacing:.3em;text-transform:uppercase;line-height:1;color:var(--ink)}
.label.sky{color:var(--sky)}
.label.tweed{color:var(--tweed)}
.num{font-family:var(--serif);font-weight:600;font-variant-numeric:lining-nums tabular-nums}
.small{font-family:var(--serif);font-size:15px;line-height:1.5;color:var(--ink-70);font-variant-numeric:oldstyle-nums}
.lede{font-size:clamp(21px,1.9vw,25px);line-height:1.45;max-width:var(--measure);text-wrap:pretty}
.lede em,.italic{font-style:italic}
.prose p{max-width:var(--measure);text-wrap:pretty}
.prose p + p{margin-top:1em}
.link{color:var(--ink);text-decoration:underline;text-decoration-color:var(--sky);text-underline-offset:4px;text-decoration-thickness:1px}
.link:hover{color:var(--sky)}
.painted{background:var(--sky) url('sky-frame.jpg') 62% 22%/cover no-repeat;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.wrap{max-width:var(--wrap);margin:0 auto;padding-inline:var(--gutter)}
.wordmark{font-family:var(--display);font-weight:800;text-transform:uppercase;letter-spacing:.02em}

/* language */
[data-fr]{display:none}
body.fr [data-fr]{display:inline}
body.fr [data-en]{display:none}

/* grain, for paper */
.grain{position:relative}
.grain::after{content:"";position:absolute;inset:0;background:var(--grain);background-size:112px 112px;opacity:.05;mix-blend-mode:multiply;pointer-events:none;z-index:0}
.grain > *{position:relative;z-index:1}

/* ---------- UI: buttons, fields ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;text-decoration:none;font-family:var(--display);font-weight:700;font-size:12px;letter-spacing:.14em;text-transform:uppercase;padding:0 22px;line-height:1;min-height:46px;border:1.5px solid var(--ink);border-radius:var(--radius);color:var(--ink);background:transparent;white-space:nowrap;transition:transform .18s var(--jab),background .15s,color .15s}
.btn:active{transform:translate(2px,1px) scale(.97);transition-duration:.06s}
.btn-solid{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.btn-solid:hover{background:var(--sky);border-color:var(--sky);color:var(--white)}
.btn-line:hover{background:var(--ink);color:var(--paper)}
.btn-sky{background:var(--sky);border-color:var(--sky);color:var(--white)}
.btn-sky:hover{background:var(--sky-deep);border-color:var(--sky-deep)}
.on-blue .btn-solid{background:var(--white);border-color:var(--white);color:var(--ink)}
.on-blue .btn-solid:hover{background:var(--paper);border-color:var(--paper)}
.on-blue .btn-line{color:var(--white);border-color:rgba(255,255,255,.8)}
.on-blue .btn-line:hover{background:var(--white);color:var(--ink);border-color:var(--white)}
.on-blue .link{color:var(--white);text-decoration-color:rgba(255,255,255,.7)}
.on-blue .link:hover{color:var(--paper)}
.btn[disabled]{opacity:.45;cursor:not-allowed}
.btn[disabled]:hover{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.card{background:var(--white);border:1px solid var(--rule);border-radius:var(--radius)}

/* the catalogue number: the contract address, presented as a reference */
/* the catalogue line: a hairline, the label, the address, and COPY as a text link */
.catno{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px 20px;align-items:baseline;padding:12px 0;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);max-width:620px;color:var(--ink)}
.catno .field{display:contents}
.catno .lbl{font-family:var(--display);font-weight:700;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink);white-space:nowrap}
.catno code{font-family:var(--display);font-weight:700;font-size:11px;letter-spacing:.04em;overflow-wrap:anywhere;word-break:break-all;line-height:1.5;display:block;color:var(--ink);min-width:0}
.catno button{background:none;border:0;padding:0;color:var(--sky);font-family:var(--display);font-weight:700;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;white-space:nowrap}
.catno button:hover{color:var(--ink);text-decoration:underline;text-underline-offset:4px}

/* ============================================================
   INTRO: the cover. Blue, the name punches in, then fills with the sky.
   ============================================================ */
.intro{display:none}
html.has-intro{overflow:hidden}
html.has-intro .intro{display:flex;position:fixed;inset:0;z-index:1000;background:var(--sky);color:var(--white);align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:24px}
.intro .by{font-family:var(--display);font-weight:700;font-size:clamp(12px,1.4vw,18px);letter-spacing:.34em;text-transform:uppercase;opacity:0;animation:intro-by .45s ease-out .2s both}
.intro .name{position:relative;font-family:var(--display);font-weight:800;font-size:clamp(52px,12vw,200px);line-height:.95;letter-spacing:.01em;text-transform:uppercase;margin-top:.25em;opacity:0;animation:intro-punch .28s cubic-bezier(.2,1.5,.3,1) .7s both;white-space:nowrap}
.intro .name .paint{position:absolute;inset:0;background:var(--paper) url('sky-frame.jpg') 8% 88%/140% auto no-repeat;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;opacity:0;animation:intro-paint .7s ease-out 1.15s both}
.intro .skip{position:absolute;right:max(var(--gutter),env(safe-area-inset-right,0px));bottom:max(24px,env(safe-area-inset-bottom,0px));background:none;border:0;color:var(--white);font-family:var(--display);font-weight:700;font-size:12px;letter-spacing:.3em;text-transform:uppercase;padding:12px 0;min-height:44px;opacity:0;animation:intro-by .4s ease-out .5s both}
.intro .skip:hover{text-decoration:underline;text-underline-offset:6px}
.intro.out{animation:intro-out .42s var(--cut) both}
.intro.out .name .paint{animation:none;opacity:1}
@keyframes intro-by{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes intro-punch{0%{opacity:0;transform:scale(2.1)}70%{opacity:1;transform:scale(.97)}100%{opacity:1;transform:none}}
@keyframes intro-paint{to{opacity:1}}
@keyframes intro-out{to{transform:translateY(-100%)}}

/* ---------- running head: the live price, one quiet line ---------- */
.runhead{background:var(--paper);color:var(--ink-70);border-bottom:1px solid var(--rule);font-family:var(--serif);font-size:14.5px;font-variant-numeric:lining-nums tabular-nums}
.runhead .wrap{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding-block:9px}
.runhead .oui{font-style:italic;color:var(--tweed);white-space:nowrap}
.runhead .stats{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;text-align:right}
.runhead .sep{color:var(--rule);padding:0 7px}
.runhead .up{color:var(--sky)}.runhead .down{color:var(--tweed)}
.runhead .more{display:inline}

/* ---------- header ---------- */
.site-header{background:var(--paper);color:var(--ink);position:relative;z-index:60}
.nav{display:flex;align-items:center;gap:22px;padding-block:18px}
.nav .mark{display:inline-flex;align-items:center;gap:12px;font-family:var(--display);font-weight:800;font-size:13.5px;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;margin-right:auto;color:var(--ink);white-space:nowrap}
.nav .mark svg{width:26px;height:26px;color:var(--ink)}
.nav .mark:hover{color:var(--sky)}
.nav ul{list-style:none;margin:0;padding:0;display:flex;gap:22px;font-family:var(--serif);font-size:18px}
.nav ul a{text-decoration:none;color:var(--ink-70);white-space:nowrap}
.nav ul a:hover{color:var(--sky)}
.nav ul a[aria-current]{color:var(--ink)}
.nav .buy{font-family:var(--serif);font-size:17px;font-variant-caps:small-caps;letter-spacing:.06em;text-decoration:none;color:var(--ink);white-space:nowrap;margin-left:1.5em}
.nav .buy:hover{color:var(--sky)}
.lang,.menu-btn{background:none;border:1.5px solid var(--ink);color:var(--ink);font-family:var(--display);font-weight:700;font-size:11px;letter-spacing:.12em;text-transform:uppercase;padding:0 12px;min-height:38px;line-height:1;border-radius:var(--radius);cursor:pointer}
.lang:hover,.menu-btn:hover{background:var(--ink);color:var(--paper)}
.menu-btn{display:none}
.menu-btn .close-l{display:none}
.menu-btn[aria-expanded="true"] .open-l{display:none}
.menu-btn[aria-expanded="true"] .close-l{display:inline}
.mobile-menu{display:none}
@media (max-width:1000px){
  .nav ul,.nav .buy{display:none}
  .nav{gap:12px}
  .menu-btn{display:inline-flex;align-items:center}
  .mobile-menu{display:block;position:fixed;left:0;right:0;top:var(--menu-top,66px);bottom:0;background:var(--paper);color:var(--ink);z-index:50;overflow:auto;padding:12px var(--gutter) 32px;opacity:0;visibility:hidden;transition:opacity .18s ease,visibility .18s ease}
  .mobile-menu.open{opacity:1;visibility:visible}
  .mobile-menu ul{list-style:none;margin:0;padding:0}
  .mobile-menu li{border-bottom:1px solid var(--rule)}
  .mobile-menu a{display:block;padding:16px 0;font-family:var(--serif);font-size:28px;line-height:1.1;text-decoration:none;color:var(--ink)}
  .mobile-menu a[aria-current]{color:var(--sky)}
  .mobile-menu .sep{border-top:1.5px solid var(--ink);margin-top:14px}
  .mobile-menu .sep a{padding-top:26px;color:var(--sky)}
  .mobile-menu .minor{margin-top:28px;display:flex;gap:22px;flex-wrap:wrap}
  .mobile-menu .minor a{font-family:var(--sans);font-size:14px;color:var(--ink-70);text-decoration:underline;text-decoration-color:var(--sky);text-underline-offset:4px;padding:14px 0;line-height:1.2}
  body.menu-open{overflow:hidden}
  @media (prefers-reduced-motion:reduce){.mobile-menu{transition:none}}
}

/* ============================================================
   THE SPREAD: title page on the left, frontispiece on the right
   ============================================================ */
.spread{background:var(--paper);overflow:hidden}
.spread .wrap{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:40px 64px;align-items:stretch;padding-block:56px 0}
.titlepage{min-width:0;padding-bottom:0;display:flex;flex-direction:column}
.titlepage .masthead{margin:0}
.titlepage .lower{margin-top:auto;padding-top:40px}
.titlepage .by{display:block;margin-bottom:28px}
.titlepage .name{display:block;font-family:var(--display);font-weight:800;font-size:clamp(84px,16.5vw,212px);line-height:.86;letter-spacing:-.02em;text-transform:uppercase;margin-left:-.045em}
.titlepage .name span{display:block}
.titlepage .name.painted{background-size:150% auto;background-position:88% 40%}
.intro .name .paint{background-size:140% auto;background-position:8% 88%}
.titlepage .epigraph{font-family:var(--serif);font-style:italic;font-size:clamp(26px,2.6vw,36px);line-height:1.25;max-width:16em;letter-spacing:-.005em}
.titlepage .cta{margin-top:28px;display:flex;flex-wrap:wrap;gap:14px 24px;align-items:center}
.titlepage .cta .join{font-size:18px}
.titlepage .catno{margin-top:28px}
.frontispiece{margin:0;min-width:0;position:relative;align-self:start;padding-top:.08em}
.frontispiece img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:50% 10%;display:block}
.frontispiece figcaption{position:absolute;left:0;bottom:0;transform:translateY(100%);padding-top:14px;font-family:var(--serif);font-size:15px;line-height:1.5;color:var(--ink-70);max-width:30em;font-variant-numeric:oldstyle-nums}
.frontispiece figcaption b{font-family:var(--display);font-weight:700;font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--ink);font-style:normal;margin-right:10px}
.spread .wrap{padding-bottom:72px}

/* ============================================================
   PLATES: each clip on its own page, alternating
   ============================================================ */
.plates{background:var(--plate);padding-block:96px 160px}
.plates .chead{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:24px 64px;align-items:baseline;margin-bottom:160px}
.plates .chead .lede{color:var(--ink-70)}
.plate{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:40px 64px;align-items:center;padding-block:0}
.plate + .plate{margin-top:160px}
.plate .text{min-width:0}
.plate .no{display:block;margin-bottom:22px}
.plate h3{font-size:clamp(30px,3.2vw,44px);margin-bottom:14px}
.plate .meta{font-family:var(--serif);font-size:15.5px;line-height:1.5;color:var(--ink-70);margin-bottom:26px;max-width:28em;font-variant-numeric:oldstyle-nums}
.plate .meta b{color:var(--ink);font-weight:500}
.plate p.t{font-size:19px;line-height:1.55;max-width:30em;color:var(--ink)}
.plate .pic{margin:0;min-width:0;display:flex;justify-content:flex-start}
.screen{margin:0;min-width:0;width:min(100%,calc(min(640px,72vh) * 9 / 16))}
.screen .frame{position:relative;aspect-ratio:9/16;border-radius:10px;overflow:hidden;background:var(--sky-pale);box-shadow:0 30px 60px -34px rgba(18,41,74,.5)}
.screen video,.screen .frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.screen video{opacity:0;transition:opacity .7s ease}
.screen video.on{opacity:1}
.screen .strip{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;background:linear-gradient(0deg,rgba(18,41,74,.78),rgba(18,41,74,0));color:var(--paper);font-family:var(--display);font-weight:700;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase}
.screen .tc{font-family:var(--display);font-weight:700;letter-spacing:.1em;font-variant-numeric:tabular-nums}
.screen .sound{position:absolute;right:12px;top:12px;z-index:1;background:rgba(255,255,255,.94);color:var(--ink);border:0;font-family:var(--display);font-weight:700;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;padding:10px 12px;line-height:1;border-radius:6px;box-shadow:0 6px 16px -8px rgba(0,0,0,.4)}
.screen .sound:hover{background:var(--white)}
.screen .sound[aria-pressed="true"]{background:var(--ink);color:var(--white)}
@media (prefers-reduced-motion:reduce){.screen video{transition:none}}

/* ============================================================
   STUDIES: three details, and notes on the method
   ============================================================ */
.studies{background:var(--paper);padding-block:104px 96px}
.studies .chead{margin-bottom:56px;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:24px 64px;align-items:baseline}
.figs{display:grid;grid-template-columns:minmax(0,8fr) minmax(0,4fr);gap:40px;align-items:stretch}
.figs figure{margin:0;min-width:0}
.figs figure:first-child{display:flex;flex-direction:column}
.figs figure:first-child img{aspect-ratio:4/5;object-position:50% 20%}
.figs{grid-auto-rows:minmax(0,auto)}
.figs .stack{display:flex;flex-direction:column;min-width:0;height:100%}
.figs .stack figure{display:flex;flex-direction:column;flex:1 1 0;min-height:0}
.figs .stack figure:first-child{padding-bottom:40px}
.figs .stack figure img{flex:1 1 0;min-height:0;height:100%;width:100%;aspect-ratio:auto;object-fit:cover}
.figs .stack figcaption{flex:none}
.figs img{width:100%;height:auto;object-fit:cover;border-radius:4px}
.figs figcaption{margin-top:16px;font-size:16.5px;line-height:1.45;color:var(--ink-70);max-width:24em;font-variant-numeric:oldstyle-nums}
.figs figcaption b{display:block;font-family:var(--display);font-weight:700;font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--ink);margin-bottom:8px}
.method{margin-top:88px;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:24px 64px;align-items:start}
.method h3{margin-bottom:10px}
.method .lead p{color:var(--ink-70);max-width:22em}
.method .entry{font-size:19px;line-height:1.55;max-width:36em;color:var(--ink);text-align:left}
.method .entry b{font-family:var(--display);font-weight:700;font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--sky);margin-right:6px;position:relative;top:-2px}
.method .entry > span{margin-right:.9em}
.method .pull{margin:28px 0 0;padding:0;border:0}
.method .pull p{font-style:italic;font-size:22px;line-height:1.3;max-width:20em}
.method .pull cite{display:block;font-style:normal;font-family:var(--display);font-weight:700;font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--tweed);margin-top:12px}

/* ============================================================
   REPRODUCED IN: a sentence, not a logo row
   ============================================================ */
.reproduced{background:var(--paper);padding-block:0 112px}
.reproduced .inner{padding-top:72px;border-top:1px solid var(--rule);display:grid;grid-template-columns:minmax(0,3fr) minmax(0,9fr);gap:24px 64px;align-items:start}
.reproduced .sentence{font-size:clamp(28px,3.4vw,48px);line-height:1.2;letter-spacing:-.01em;max-width:18em;text-wrap:balance}
.reproduced .sentence a{text-decoration:none;color:var(--ink);border-bottom:1.5px solid var(--sky)}
.reproduced .sentence a:hover{color:var(--sky)}
.reproduced .small{margin-top:22px;max-width:36em}

/* ============================================================
   FIGURES: the number, painted
   ============================================================ */
.figures{background:var(--plate);padding-block:104px 96px}
.figures .chead{display:grid;gap:10px;margin-bottom:40px}
.figures .chead .small{text-align:left}
.bignum{font-family:var(--display);font-weight:800;font-size:clamp(44px,13.4vw,214px);letter-spacing:-.03em;line-height:.9;margin-left:-.02em;white-space:nowrap;padding-bottom:.05em;background-position:58% 42%;background-size:210% auto}
.bigcap{margin-top:24px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 20px;max-width:40em;font-size:19px;line-height:1.5}
.bigcap b{font-family:var(--display);font-weight:700;font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--sky);padding-top:5px}
.figrow{margin-top:56px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 48px;max-width:40em}
.fig{min-width:0;display:grid;gap:10px;align-items:baseline}
.fig .n{font-family:var(--serif);font-weight:600;font-size:clamp(34px,3.4vw,46px);line-height:1;letter-spacing:-.02em;font-variant-numeric:lining-nums tabular-nums;color:var(--ink);margin:0;white-space:nowrap}
.fig .l{display:block;font-size:17px;line-height:1.45;color:var(--ink-70)}
.fig .live{display:inline-block;margin-left:8px;font-family:var(--display);font-weight:700;font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--tweed);border:1px solid var(--tweed);padding:4px 6px;border-radius:4px;vertical-align:middle;transform:translateY(-3px)}
.figures .note{margin-top:40px}
.count{display:inline-block;font-variant-numeric:tabular-nums;text-align:inherit}

/* ============================================================
   APPENDICES: the token, how to buy, chart, channels, notes
   ============================================================ */
.appendix{padding-block:104px}
.appendix.paper{background:var(--paper)}
.appendix.white{background:var(--plate)}
.app-head{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:24px 64px;align-items:end;margin-bottom:56px}
.buy .app-head{align-items:start}
.buy .body-col{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:24px 64px}
.buy .body-col > div:last-child{min-width:0}
.app-head .label{display:block;margin-bottom:22px}
.app-head .lede{color:var(--ink-70);font-size:clamp(19px,1.6vw,22px)}

/* the token: a fact sheet set like a table in a catalogue */
.sheet{display:grid;grid-template-columns:1fr 1fr;gap:0 64px;border-top:1.5px solid var(--ink)}
.sheet dl{margin:0}
.sheet .row{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--rule);align-items:baseline}
.sheet dt{font-size:18px;color:var(--ink-70)}
.sheet dd{margin:0;font-size:19px;font-variant-numeric:lining-nums tabular-nums;text-align:right}
.sheet .row.total dd{font-weight:600;color:var(--sky)}
.sheet-meta{display:flex;justify-content:flex-end;margin-bottom:14px}
.stamp{display:inline-block;font-family:var(--display);font-weight:700;font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--tweed);line-height:1;font-variant-numeric:tabular-nums}
.verify{margin-top:28px;display:flex;gap:22px;flex-wrap:wrap;align-items:baseline;font-size:17px}
.verify span{color:var(--ink-70)}
.safety{margin-top:40px;padding-top:28px;border-top:1px solid var(--rule);display:block;max-width:36em}
.safety svg{display:none}
.safety p{font-size:18px;line-height:1.5;color:var(--ink-70)}
.safety b{font-weight:600;color:var(--ink)}
.fn{font-family:var(--sans);font-size:.6em;vertical-align:super;line-height:0;text-decoration:none;color:var(--sky);padding-left:2px;letter-spacing:0;font-weight:600}
.fn:hover{text-decoration:underline}

/* how to buy: numbered in Garamond */
.steps{display:grid;gap:28px;max-width:60ch;margin-left:auto}
.step{min-width:0;display:grid;grid-template-columns:2.2em minmax(0,1fr);gap:0 8px;align-items:baseline}
.step .k{font-family:var(--serif);font-weight:500;font-size:19px;line-height:1.5;margin:0;color:var(--sky);font-variant-numeric:oldstyle-nums}
.step h3{font-size:19px;font-weight:600;line-height:1.5;margin:0;display:inline}
.step h3::after{content:'. '}
.step p{font-size:19px;line-height:1.5;color:var(--ink);display:inline}
.step .body{grid-column:2}
.notice{margin-top:56px;max-width:60ch;margin-left:auto}
.notice p{font-size:19px;line-height:1.5}
.notice p b{font-weight:600}
.notice .catno{margin-top:20px}
.notice .after{margin-top:12px;font-size:16px}
.notice .catno{max-width:none}

/* chart */
.chart-frame{background:var(--sky-pale);border:1px solid var(--sky-line);border-radius:var(--radius);overflow:hidden}
.chart-frame iframe{width:100%;aspect-ratio:16/9;height:auto;min-height:420px;border:0;display:block;background:var(--white)}
.chart-gate{aspect-ratio:16/9;min-height:420px;height:auto;width:100%;max-width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;padding:24px;text-align:center;color:var(--ink)}
.chart-gate p{max-width:34em;font-size:17px;line-height:1.5;color:var(--ink-70)}
.chart .head-row{display:flex;justify-content:space-between;align-items:baseline;gap:24px;flex-wrap:wrap;margin-bottom:22px}
.chart .under{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:14px;font-family:var(--serif);font-size:15px;color:var(--ink-70)}

/* channels */
.official .grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:40px 64px;align-items:start}
.official h2{margin-bottom:18px}
.official .lede{color:var(--ink-70)}
.channels{list-style:none;margin:0;padding:0;border-top:1.5px solid var(--ink)}
.channels li{border-bottom:1px solid var(--rule)}
.channels a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:baseline;padding:18px 0;text-decoration:none}
.channels a:hover .name{color:var(--sky)}
.channels .name{font-family:var(--serif);font-weight:500;font-size:24px;line-height:1.1}
.channels .handle{display:block;font-family:var(--serif);font-size:16px;color:var(--ink-70);margin-top:4px;word-break:break-all;text-decoration:underline;text-decoration-color:var(--sky);text-underline-offset:4px;text-decoration-thickness:1px}
.channels .go{display:none}
.channels a{grid-template-columns:minmax(0,1fr)}
.listings{margin-top:28px}
.listings ul{list-style:none;margin:8px 0 0;padding:0;display:flex;gap:18px;flex-wrap:wrap}
.listings a.listing{display:inline-flex;align-items:center;gap:8px}
.listings a.listing img{width:18px;height:18px;border-radius:50%;flex:none;display:block}

/* notes (faq) */
.faq .grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:40px 64px;align-items:start}
.faq details{border-bottom:1px solid var(--rule)}
.faq details:first-of-type{border-top:1.5px solid var(--ink)}
.faq ol{list-style:none;margin:0;padding:0;counter-reset:note}
.faq li{display:grid;grid-template-columns:2.2em minmax(0,1fr);grid-template-rows:auto auto;gap:0 8px;padding:18px 0;border-bottom:1px solid var(--rule);counter-increment:note}
.faq li::before{grid-row:1/3}
.faq .q,.faq .a{grid-column:2}
.faq li:first-child{border-top:1.5px solid var(--ink)}
.faq li::before{content:counter(note) '.';font-family:var(--serif);color:var(--sky);font-size:19px;line-height:1.5}
.faq .q{font-weight:600;font-size:19px;line-height:1.5;display:block}
.faq .a{font-size:18px;line-height:1.5;color:var(--ink-70);max-width:34em;margin-top:4px;display:block;overflow-wrap:anywhere}

/* references */
.sources{padding-block:0 104px;background:var(--paper)}
.sources .inner{border-top:1.5px solid var(--ink);padding-top:28px;display:grid;grid-template-columns:minmax(0,3fr) minmax(0,9fr);gap:24px 64px}
.sources h2{font-size:22px;padding-top:4px}
.sources ol{margin:0;padding:0 0 0 1.4em;font-size:16.5px;line-height:1.5;color:var(--ink-70);max-width:46em}
.sources li{padding:4px 0}
.sources li:target{color:var(--ink)}
.sources .back{text-decoration:none;color:var(--sky);margin-left:6px;font-size:13px}
.sources .back:hover{text-decoration:underline}

/* ============================================================
   COLOPHON and the endpaper
   ============================================================ */
.site-footer{background:var(--sky);color:var(--white);padding-block:96px 0}
.colophon{max-width:40em;margin:0 auto;text-align:center}
.colophon .label{color:var(--paper);margin-bottom:28px;display:block}
.colophon p{font-size:clamp(20px,2vw,26px);line-height:1.5;text-wrap:balance}
.colophon p + p{margin-top:1em}
.colophon .channels-line{margin-top:40px;font-family:var(--serif);font-size:17px;line-height:1.9}
.colophon .channels-line .item{display:inline-block;white-space:nowrap}
@media (max-width:480px){.colophon .channels-line .item{display:block}.colophon .channels-line .sep,.colophon .channels-line br{display:none}}
.colophon .channels-line a{text-decoration:none;border-bottom:1px solid rgba(255,255,255,.55)}
.colophon .channels-line a:hover{border-color:var(--white)}
.colophon .sep{opacity:.5;padding:0 8px 0 0}
.colophon .fine{margin-top:32px;font-family:var(--serif);font-size:15px;color:rgba(255,255,255,.9)}
.site-footer .legal{margin:64px auto 0;padding-bottom:72px;font-family:var(--serif);font-size:15px;line-height:1.55;color:rgba(255,255,255,.9);max-width:40em;text-align:left}
.cut{position:relative;background:var(--sky) url('sky-frame.jpg') center 40%/cover no-repeat;color:var(--white);text-align:center;padding-block:160px 40px;overflow:hidden}
.cut::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(23,66,120,.18),rgba(23,66,120,.42));z-index:0}
.cut.grain::after{z-index:1}
.cut .wrap{position:relative;z-index:2}
.cut .mono{width:clamp(44px,5vw,72px);height:auto;margin:0 auto 28px;color:var(--white);display:block}
.cut .oui{font-family:var(--display);font-weight:800;font-size:clamp(40px,8vw,128px);line-height:.95;text-transform:uppercase;letter-spacing:.01em;color:var(--white);text-shadow:0 10px 40px rgba(10,30,60,.35)}
.cut .by{margin-top:28px;font-family:var(--display);font-weight:700;font-size:12px;letter-spacing:.3em;text-transform:uppercase;color:var(--paper)}
.cut{padding-bottom:140px}

/* ============================================================
   SUBPAGE HEAD: a chapter opening
   ============================================================ */
.head{background:var(--paper);color:var(--ink);padding-block:56px 72px}
.head .slug{display:block;margin-bottom:24px}
.head h1{font-family:var(--serif);font-weight:400;font-size:clamp(44px,6.4vw,92px);margin-bottom:26px;letter-spacing:-.015em;line-height:1}
.head .lede{color:var(--ink-70);max-width:30em}
.head .back{display:inline-block;margin-top:24px;font-size:17px}
.sec{padding-block:96px}
.sec-head{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:40px 64px;align-items:end;margin-bottom:56px}
.eyebrow{font-family:var(--display);font-weight:700;font-size:11px;letter-spacing:.3em;text-transform:uppercase;line-height:1;color:var(--sky)}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.slug{font-family:var(--display);font-weight:700;font-size:11px;letter-spacing:.3em;text-transform:uppercase;line-height:1;color:var(--sky)}

/* ============================================================
   PFP GENERATOR (bonus feature)
   ============================================================ */
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.examples{padding-bottom:0}
.examples .inner{padding-bottom:var(--sec);border-bottom:1px solid var(--line)}
.ex-head{display:flex;align-items:baseline;gap:18px;flex-wrap:wrap;margin-bottom:32px}
.ex-head h2{font-size:clamp(26px,2.6vw,34px)}
.ex-head p{font-size:15px;color:var(--ink-70)}
.pins{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.pin{padding:0;background:none;border:0}
.pin figure{margin:0}
.pair{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px}
.pair img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;display:block;background:var(--sky-pale);border-radius:6px}
.pair .arrow{font-family:var(--display);font-weight:800;font-size:22px;line-height:1;color:var(--sky)}
.pin figcaption{display:flex;justify-content:space-between;align-items:baseline;margin-top:12px;font-size:13.5px;color:var(--ink-70)}
.pin figcaption b{font-family:var(--display);font-weight:700;text-transform:uppercase;letter-spacing:.2em;font-size:10.5px;color:var(--ink)}
.swipe{display:none;align-items:center;justify-content:space-between;gap:12px;margin-top:6px}
.swipe button{width:44px;height:44px;border-radius:50%;border:1.5px solid var(--ink);background:var(--white);color:var(--ink);font-family:var(--display);font-weight:700;font-size:20px;line-height:1;display:grid;place-items:center;cursor:pointer;flex:none;transition:opacity .2s}
.swipe button:disabled{opacity:.25;cursor:default}
.swipe .mid{display:flex;flex-direction:column;align-items:center;gap:8px;font-size:14px;color:var(--ink)}
.swipe .dots{display:flex;gap:8px}
.swipe .dots i{width:8px;height:8px;border-radius:50%;background:rgba(18,41,74,.25);transition:background .2s,transform .2s}
.swipe .dots i.on{background:var(--sky);transform:scale(1.25)}
@keyframes nudge{0%,100%{transform:translateX(0)}50%{transform:translateX(5px)}}
.swipe .hint-arrow{display:inline-block;animation:nudge 1.4s ease-in-out infinite}
@media (prefers-reduced-motion:reduce){.swipe .hint-arrow{animation:none}}
.gen .salon{font-size:clamp(32px,3.6vw,48px);margin-bottom:10px}
.gen .salon-sub{font-size:17px;color:var(--ink-70);margin-bottom:40px;max-width:40em}
.gen-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:48px 64px;align-items:start}
.panel{display:flex;flex-direction:column;gap:18px;min-width:0}
.pstep{font-family:var(--serif);font-weight:500;font-size:22px;line-height:1.2;display:flex;align-items:baseline;gap:14px}
.pstep .n{font-family:var(--display);font-weight:700;font-size:10.5px;letter-spacing:.22em;color:var(--sky);flex:none}
.mount{position:relative;max-width:100%;padding:10px}
.mount>.inner-pic{position:relative;margin:0;aspect-ratio:1/1;overflow:hidden;background:var(--sky-pale);border-radius:6px}
.drop{display:block;cursor:pointer}
.drop .inner-pic{display:flex;align-items:center;justify-content:center;text-align:center;padding:24px}
.drop:hover .inner-pic,.drop.over .inner-pic{background:#D9E9FA}
.drop input{position:absolute;inset:0;opacity:0;cursor:pointer}
.drop:focus-within{outline:2px solid var(--sky);outline-offset:4px}
.drop #preview{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.drop-txt{font-family:var(--serif);font-weight:500;font-size:20px;line-height:1.3;display:flex;flex-direction:column;gap:12px;max-width:16em;align-items:center;color:var(--ink)}
.drop-txt .chair{width:54px;height:54px;color:var(--sky)}
.drop-txt small{font-family:var(--sans);font-weight:400;font-size:14px;color:var(--ink-70)}
.drop.has .drop-txt{display:none}
.consent{display:flex;gap:12px;align-items:flex-start;font-size:15px;line-height:1.45;cursor:pointer}
.consent input{width:18px;height:18px;margin-top:2px;accent-color:var(--sky);flex:none}
#go{align-self:flex-start;min-width:240px}
.tries{min-height:1.4em}
.frame #result{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.frame #result:not([hidden]){animation:reveal .9s cubic-bezier(.2,.7,.2,1) both}
@keyframes reveal{from{opacity:0;transform:scale(1.04);filter:saturate(.6)}to{opacity:1;transform:none;filter:none}}
.placeholder{position:absolute;inset:0}
.placeholder img{width:100%;height:100%;object-fit:cover;filter:saturate(.5) contrast(.92);opacity:.42}
.placeholder .tag{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);background:var(--white);border:1px solid var(--line);border-radius:6px;padding:9px 16px;font-family:var(--display);font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-size:11.5px;white-space:nowrap;box-shadow:var(--shadow);color:var(--ink)}
.inner-pic:has(.working:not([hidden])) .placeholder .tag{display:none}
.working{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:32px;text-align:center;background:rgba(255,255,255,.92)}
.working .spin{width:48px;height:48px;border-radius:50%;border:4px solid var(--sky-line);border-top-color:var(--sky);animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.working p{font-family:var(--serif);font-weight:500;font-size:20px;line-height:1.35;max-width:16em;min-height:2.7em;margin:0;color:var(--ink)}
.working .eta{font-family:var(--sans);font-size:13.5px;color:var(--ink-70);letter-spacing:.02em}
@media (prefers-reduced-motion:reduce){.working .spin{animation:none;border-top-color:var(--sky-line)}.frame #result:not([hidden]){animation:none}}
.msg{min-height:1.4em;font-size:16px}
.msg.err{color:#A8352B}
.msg:not(.err):not(:empty){font-family:var(--serif);font-weight:500;font-size:19px;color:var(--sky)}
.actions{display:flex;gap:14px;flex-wrap:wrap}
.hint{max-width:30em}
.captcha:empty{display:none}
.notes{margin-top:72px;padding-top:32px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:32px 64px;font-size:15px;color:var(--ink-70)}
.notes strong{color:var(--ink);font-weight:600}

/* ============================================================
   PRESS
   ============================================================ */
.feature .inner{display:grid;grid-template-columns:minmax(0,8fr) minmax(0,4fr);gap:32px 64px;align-items:start;padding-bottom:var(--sec);border-bottom:1px solid var(--line)}
.feature .outlet{margin-bottom:18px}
.feature h2{font-size:clamp(28px,3.8vw,50px);max-width:16em;margin-bottom:18px}
.feature .meta{font-size:16px;color:var(--ink-70);margin-bottom:22px}
.feature p.sum{font-size:20px;line-height:1.5;max-width:30em;color:var(--ink);margin-bottom:16px}
.feature .inner > div > .link{font-size:17px}
.feature .aside{grid-column:1;justify-self:start;margin-top:-8px}
.clips{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.clips li{border-bottom:1px solid var(--line)}
.clips a{display:grid;grid-template-columns:150px minmax(0,1fr) auto;gap:24px;align-items:baseline;padding:26px 0;text-decoration:none}
.clips a:hover .ttl{color:var(--sky)}
.clips .outlet{font-family:var(--display);font-weight:700;font-size:12px;letter-spacing:.16em;text-transform:uppercase;line-height:1.3;color:var(--ink-50)}
.clips .ttl{font-family:var(--serif);font-weight:500;font-size:clamp(22px,2.2vw,28px);line-height:1.2;display:block}
.clips .sum{display:block;font-size:17px;color:var(--ink-70);margin-top:6px;max-width:40em}
.clips .meta{font-size:15px;color:var(--ink-70);white-space:nowrap}
.xsec{background:var(--sky-pale)}
.reach{display:flex;gap:18px;flex-wrap:wrap;align-items:baseline;margin:-16px 0 32px;font-size:15px}
.reach .n{font-family:var(--serif);font-weight:500;font-size:clamp(24px,2.4vw,30px);line-height:1.15;font-variant-numeric:lining-nums}
.reach .how{font-size:13.5px;color:var(--ink-50)}
.xwall{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;align-items:start}
.xcard{position:relative;display:flex;flex-direction:column;min-width:0}
.xcard .top{padding:22px 22px 0;display:flex;justify-content:space-between;gap:12px;align-items:baseline;flex-wrap:wrap}
.xcard .who{font-family:var(--serif);font-weight:600;font-size:19px;line-height:1.1}
.xcard .handle{display:block;font-size:13.5px;color:var(--ink-70);margin-top:4px}
.xcard .date{font-size:13.5px;color:var(--ink-70);white-space:nowrap}
.xcard .pic{margin:18px 22px 0;background:var(--sky-pale);border-radius:6px;overflow:hidden}
.xcard .pic img{width:100%;height:auto;display:block}
.xcard .cap{padding:8px 22px 0;font-size:12.5px;color:var(--ink-50)}
.xcard.loaded .pic,.xcard.loaded .cap{display:none}
.xcard .quote{padding:20px 22px 0;font-family:var(--serif);font-style:italic;font-size:20px;line-height:1.3;color:var(--ink)}
.xcard .note{padding:14px 22px 0;font-size:14.5px;color:var(--ink-70)}
.xcard .foot{padding:20px 22px 22px;display:flex;flex-direction:column;gap:12px;margin-top:auto}
.xcard .views{font-size:13.5px;color:var(--ink-70);font-variant-numeric:tabular-nums}
.xcard .btn{align-self:flex-start}
.xcard .consent{font-size:12.5px;color:var(--ink-50);line-height:1.45;cursor:default;display:block}
.xcard .orig{font-size:14px}
.xcard .embed{padding:0 14px 14px;min-width:0}
.xcard .embed .twitter-tweet{margin:0 auto !important}
.xcard .embed iframe{max-width:100% !important}
.xcard.loaded .pre{display:none}
.disclaimer{margin-top:32px;font-size:14px;color:var(--ink-70);max-width:40em}

/* ============================================================
   LEGAL
   ============================================================ */
.legal-body{max-width:36em}
.legal-body h2{font-size:30px;margin:56px 0 16px;padding-top:32px;border-top:1px solid var(--rule)}
.legal-body h2:first-of-type{margin-top:0;padding-top:0;border-top:0}
.legal-body h3{font-size:12px;letter-spacing:.2em;margin:28px 0 8px;color:var(--sky);font-weight:700}
.legal-body p,.legal-body ul{margin:0 0 14px;font-size:18px;line-height:1.55}
.legal-body ul{padding-left:20px}
.legal-body a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--sky);text-decoration-thickness:1.5px;text-underline-offset:4px}
.legal-body a:hover{color:var(--sky)}
.legal-body .muted{color:var(--ink-70);font-size:14.5px}
.legal-body [data-fr]{display:none}
body.fr .legal-body [data-fr]{display:block}
body.fr .legal-body [data-en]{display:none}


/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width:1180px){
  .xwall{grid-template-columns:1fr 1fr;gap:28px}
}
@media (max-width:1000px){
  .spread .wrap{grid-template-columns:1fr;gap:0;padding-block:36px 0}
  .titlepage{display:contents}
  .titlepage .masthead{order:0}
  .titlepage .lower{order:2;padding-top:40px}
  .frontispiece{order:1;margin-top:40px;margin-bottom:72px;padding-top:0}
  .titlepage .name{font-size:clamp(84px,24vw,220px)}
  .plates .chead{margin-bottom:80px}
  .plate + .plate{margin-top:96px}
  .plates{padding-block:80px 96px}
  .buy .body-col{grid-template-columns:1fr}
  .steps,.notice{margin-left:0}
  .plates .chead,.studies .chead,.method,.reproduced .inner,.app-head,.official .grid,.faq .grid,.feature .inner,.sec-head{grid-template-columns:1fr}
  .plate{grid-template-columns:1fr;gap:28px}
  .screen{width:min(100%,460px)}
  .figs{grid-template-columns:1fr;gap:24px}
  .figs .stack{display:grid;grid-template-columns:1fr 1fr;gap:24px;height:auto}
  .figs .stack figure{display:block;flex:none}
  .figs .stack figure:first-child{padding-bottom:0}
  .figs .stack figure img{aspect-ratio:4/5;height:auto;flex:none}
  .feature .aside{justify-self:start}
  .pins{gap:20px}
  .xwall{grid-template-columns:1fr 1fr}
  .clips a{grid-template-columns:130px minmax(0,1fr)}
  .clips .meta{grid-column:2;white-space:normal}
}
@media (max-width:820px){
  .gen-grid{grid-template-columns:1fr;gap:48px}
  .notes{grid-template-columns:1fr;gap:16px}
  #go{align-self:stretch}
  .pins{grid-template-columns:1fr 1fr}
  .pin:nth-child(3){grid-column:1/-1;max-width:calc(50% - 10px)}
}
@media (max-width:680px){
  :root{--gutter:20px}
  body{font-size:18px}
  .nav{padding-block:14px}
  .titlepage .name{font-size:clamp(84px,27vw,200px)}
  .titlepage .epigraph{font-size:24px}
  .titlepage .cta{gap:14px 20px}
  .catno{grid-template-columns:minmax(0,1fr) auto;gap:6px 16px}
  .catno .lbl{grid-column:1;grid-row:1}
  .catno button{grid-column:2;grid-row:1;justify-self:end}
  .catno code{grid-column:1/-1;grid-row:2;font-size:10.5px}
  .frontispiece{margin-bottom:64px}
  .runhead .more{display:none}
  .runhead .oui{display:none}
  .runhead .stats{text-align:left}
  .plates .chead{margin-bottom:56px}
  .plate + .plate{margin-top:72px}
  .plates{padding-block:64px 24px}
  .plates .chead{margin-bottom:40px}
  .plate + .plate{padding-top:56px}
  .screen{width:100%}
  .screen .frame{aspect-ratio:4/5}
  .studies{padding-block:72px 64px}
  .figs .stack{grid-template-columns:1fr}
  .method{margin-top:56px}
  .reproduced{padding-bottom:72px}
  .reproduced .inner{padding-top:48px}
  .figures{padding-block:72px 64px}
  .bigcap{grid-template-columns:1fr}
  .figrow{margin-top:40px;grid-template-columns:1fr;gap:24px}
  .appendix{padding-block:72px}
  .app-head{margin-bottom:36px;gap:16px}
  .sheet{grid-template-columns:1fr;gap:0}
  .sheet dl + dl .row:first-child{border-top:0}
  .sheet-meta{justify-content:flex-start}
  .verify{gap:18px}
  .notice{margin-top:40px}
  .chart-frame iframe,.chart-gate{aspect-ratio:auto;height:420px}
  .channels .name{font-size:21px}
  .faq li{padding:16px 0}
  .sources .inner{grid-template-columns:1fr;gap:12px}
  .site-footer{padding-top:64px}
  .site-footer .legal{margin-top:40px;padding-bottom:48px}
  .cut{padding-block:96px 32px}
  .cut .bottom{margin-top:48px;justify-content:center;text-align:center}
  .head{padding-block:44px 52px}
  .sec{padding-block:64px}
  .sec-head{margin-bottom:36px;gap:16px}
  .examples .inner{padding-bottom:48px}
  .pins{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:14px;padding:4px 4px 18px;margin-inline:-4px;scrollbar-width:none}
  .pins::-webkit-scrollbar{display:none}
  .pin{flex:0 0 80%;scroll-snap-align:start;max-width:none!important}
  .swipe{display:flex}
  .drop-txt{font-size:17px}
  .working p{font-size:17px}
  .feature .inner{padding-bottom:48px}
  .clips a{grid-template-columns:1fr;gap:6px;padding:20px 0}
  .clips .outlet{font-size:11.5px}
  .clips .ttl{font-size:19px}
  .clips .meta{grid-column:1}
  .xwall{grid-template-columns:1fr;gap:22px}
  .legal-body h2{margin-top:44px;padding-top:28px}
}

/* the name and the big number in the studio blue of the portrait backdrop */
.titlepage .name.painted,.bignum.painted{background:none;-webkit-background-clip:border-box;background-clip:border-box;color:var(--studio);-webkit-text-fill-color:var(--studio)}

@media (min-width:1001px){.titlepage{container-type:inline-size}@supports (font-size:1cqi){.titlepage .name{font-size:clamp(84px,36cqi,212px)}}}

/* intro: the name stays clean white */
.intro .name .paint{display:none}

/* phone: the name always fits the screen width */
@media (max-width:1000px){
  .titlepage .name{font-size:min(31vw,250px);margin-left:-.03em}
  .spread .wrap{overflow:hidden}
}
@media (max-width:680px){
  .titlepage .name{font-size:31vw}
  .spread .wrap{padding-block:28px 0}
  .titlepage .by{margin-bottom:18px}
  .frontispiece{margin-top:32px}
  .frontispiece figcaption{position:static;transform:none;padding-top:12px}
  .frontispiece{margin-bottom:0}
  .titlepage .lower{padding-top:28px;padding-bottom:56px}
}
@media (max-width:680px){
  .figs .stack{grid-template-columns:1fr 1fr;gap:16px}
  .figs .stack figcaption{font-size:14.5px}
  .bignum{font-size:15vw}
  .figrow{grid-template-columns:1fr 1fr;gap:16px}
  .fig .n{font-size:32px}
  .fig .l{font-size:15px}
}

/* ============================================================
   v12: visual first. The clips as a screening, facts as numbers,
   steps as a graphic, long text behind "read more".
   ============================================================ */
.screening{background:var(--plate);padding-block:72px 96px}
.shots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;align-items:start}
.shot{margin:0;min-width:0}
.shot .screen{width:100%}
.shot figcaption{margin-top:18px}
.shot .t{display:block;font-family:var(--serif);font-weight:500;font-size:clamp(22px,2vw,26px);line-height:1.15;color:var(--ink)}
.shot .d{display:block;margin-top:6px;font-size:16.5px;line-height:1.45;color:var(--ink-70);font-variant-numeric:oldstyle-nums}

.studies{padding-block:96px 88px}
.studies .figs{margin-top:0}

/* read more: a quiet line that opens */
details.more{margin-top:40px;border-top:1px solid var(--rule)}
details.more summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:14px;padding:18px 0;font-family:var(--display);font-weight:700;font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--sky)}
details.more summary::-webkit-details-marker{display:none}
details.more summary::after{content:"";width:9px;height:9px;border-right:1.5px solid var(--sky);border-bottom:1.5px solid var(--sky);transform:rotate(45deg) translateY(-2px);transition:transform .2s}
details.more[open] summary::after{transform:rotate(-135deg) translateY(-2px)}
details.more summary:hover{color:var(--ink)}
details.more .more-body{padding:4px 0 32px;max-width:36em}
details.more .more-body p + p{margin-top:1em}
details.more .more-body .pull{margin:28px 0 0;padding:0;border:0}
details.more .more-body .pull p{font-style:italic;font-size:22px;line-height:1.3;max-width:20em}
details.more .more-body .pull cite{display:block;font-style:normal;font-family:var(--display);font-weight:700;font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--tweed);margin-top:12px}
details.more .more-body .entry{margin-top:28px;font-size:19px;line-height:1.55;max-width:36em}
details.more .more-body .entry b{font-family:var(--display);font-weight:700;font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--sky);margin-right:6px;position:relative;top:-2px}
details.more .more-body .entry > span{margin-right:.9em}
details.more .more-body.steplist{list-style:none;margin:0;padding:4px 0 32px;display:grid;gap:14px;max-width:36em}
details.more .steplist li{display:grid;grid-template-columns:2em minmax(0,1fr);gap:0 8px;font-size:18px;line-height:1.5}
details.more .steplist .k{color:var(--sky);font-variant-numeric:oldstyle-nums}
details.more .steplist b{font-weight:600}
details.more .more-body .sheet{max-width:none}
details.more .more-body .sheet-meta{margin-bottom:14px}

.figures{padding-block:96px}
.figures .note{margin-top:40px}

/* token facts as numbers */
.facts-row{list-style:none;margin:0;padding:32px 0 0;border-top:1.5px solid var(--ink);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 32px}
.facts-row li{min-width:0}
.facts-row .n{display:block;font-family:var(--serif);font-weight:600;font-size:clamp(44px,4.6vw,68px);line-height:1;letter-spacing:-.02em;color:var(--sky);font-variant-numeric:lining-nums}
.facts-row .l{display:block;margin-top:10px;font-size:17px;line-height:1.4;color:var(--ink-70)}
.facts .verify{margin-top:36px}
.safety-line{margin-top:28px;font-size:16px;color:var(--ink-70);max-width:36em}

/* steps as a graphic */
.stepgraphic{list-style:none;margin:0;padding:32px 0 0;border-top:1.5px solid var(--ink);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 32px;counter-reset:none}
.stepgraphic li{min-width:0;display:grid;gap:10px}
.stepgraphic .n{font-family:var(--serif);font-weight:500;font-size:clamp(44px,4.6vw,68px);line-height:1;color:var(--sky);letter-spacing:.02em}
.stepgraphic .t{font-family:var(--serif);font-weight:600;font-size:20px;line-height:1.2;color:var(--ink)}
.stepgraphic .d{font-size:16px;line-height:1.4;color:var(--ink-70)}
.buyline{margin-top:48px;max-width:620px}
.buyline .catno{max-width:none}
.buyline .small{margin-top:12px}

.chart .under{justify-content:space-between}

/* become Jean Phil: the PFP generator as a picture */
.become{padding-block:96px}
.become-link{display:block;text-decoration:none;color:inherit;max-width:820px;margin:0 auto;text-align:center}
.become-pics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:28px}
.become-pics img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;border-radius:6px;transition:transform .35s var(--jab)}
.become-link:hover .become-pics img{transform:translateY(-4px)}
.become-link h2{font-size:clamp(32px,3.6vw,48px)}
.become-link .lede{margin:14px auto 0;color:var(--ink-70);font-size:19px}
.become-link:hover h2{color:var(--sky)}
@media (prefers-reduced-motion:reduce){.become-pics img{transition:none}.become-link:hover .become-pics img{transform:none}}

/* channels as tiles */
.tiles{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.tiles a{display:block;background:var(--white);border:1px solid var(--rule);border-radius:var(--radius);padding:22px 20px;text-decoration:none;min-height:120px;transition:border-color .15s}
.tiles a:hover{border-color:var(--sky)}
.tiles .name{display:block;font-family:var(--serif);font-weight:500;font-size:22px;line-height:1.1;color:var(--ink)}
.tiles .handle{display:block;margin-top:10px;font-size:15px;line-height:1.4;color:var(--ink-70);word-break:break-word}
.tiles a:hover .name{color:var(--sky)}
.official .listings{margin-top:28px}

/* questions, collapsed */
.qa{border-top:1.5px solid var(--ink);max-width:40em}
details.note{border-bottom:1px solid var(--rule)}
details.note summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:minmax(0,1fr) 16px;gap:16px;align-items:center;padding:16px 0;font-family:var(--serif);font-weight:500;font-size:20px;line-height:1.3;color:var(--ink)}
details.note summary::-webkit-details-marker{display:none}
details.note summary::after{content:"";width:9px;height:9px;border-right:1.5px solid var(--sky);border-bottom:1.5px solid var(--sky);transform:rotate(45deg) translateY(-3px);transition:transform .2s}
details.note[open] summary::after{transform:rotate(-135deg) translateY(2px)}
details.note p{padding:0 0 20px;font-size:18px;line-height:1.5;color:var(--ink-70);max-width:34em;overflow-wrap:anywhere}

.app-head{margin-bottom:40px}
.app-head .lede{font-size:clamp(19px,1.6vw,22px)}

@media (max-width:1000px){
  .shots{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
  .shot .t{font-size:19px}
  .shot .d{font-size:14.5px}
  .facts-row,.stepgraphic{grid-template-columns:1fr 1fr}
  .tiles{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:680px){
  .screening{padding-block:48px 64px}
  .shots{grid-template-columns:1fr;gap:40px}
  .shot .screen .frame{aspect-ratio:3/4}
  .shot .screen video,.shot .screen .frame img{object-position:50% 12%}
  .shot .t{font-size:22px}
  .shot .d{font-size:16px}
  .studies{padding-block:64px 56px}
  .figures{padding-block:64px}
  .facts-row{gap:24px 20px;padding-top:24px}
  .facts-row .n{font-size:40px}
  .facts-row .l{font-size:15px}
  .stepgraphic{gap:24px 20px;padding-top:24px}
  .stepgraphic .n{font-size:40px}
  .stepgraphic .t{font-size:18px}
  .stepgraphic .d{font-size:15px}
  .become{padding-block:64px}
  .become-pics{gap:10px;margin-bottom:22px}
  .tiles{grid-template-columns:1fr 1fr;gap:12px}
  .tiles a{padding:18px 16px;min-height:0}
  .tiles .name{font-size:19px}
  details.note summary{font-size:18px}
  .app-head{margin-bottom:28px}
}


/* ============================================================
   v12, second pass: allocation bar, chart header, before/after
   pairs, four channel tiles, references collapsed.
   ============================================================ */
.facts .app-head{margin-bottom:32px}
.alloc{padding-top:32px;border-top:1.5px solid var(--ink)}
.alloc .bar{display:flex;height:26px;border-radius:4px;overflow:hidden;background:var(--sky-pale)}
.alloc .pub{flex:0 0 96.95%;background:var(--studio)}
.alloc .burn{flex:1 1 auto;min-width:8px;background:repeating-linear-gradient(135deg,var(--ink) 0 2px,transparent 2px 7px)}
.alloc .legend{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-top:18px}
.alloc .k{min-width:0;max-width:30em;font-size:17px;line-height:1.4;color:var(--ink-70)}
.alloc .k b{display:block;font-family:var(--serif);font-weight:600;font-size:clamp(40px,4.2vw,60px);line-height:1;letter-spacing:-.02em;color:var(--studio);margin-bottom:8px;font-variant-numeric:lining-nums}
.alloc .burned{flex:0 0 auto;text-align:right;max-width:14em}
.alloc .burned b{color:var(--ink)}
.facts details.more{margin-top:40px}
details.more .more-body .verify{margin:0 0 26px}

.chart h2 .pairname{display:inline-block;font-family:var(--serif);font-weight:400;font-size:.5em;letter-spacing:0;text-transform:none;color:var(--ink-50);margin-left:.5em;vertical-align:.25em;white-space:nowrap}
.chart-gate{aspect-ratio:auto;height:auto;min-height:0;padding:30px 24px;gap:18px}
.chart-gate p{font-size:16px}
.chart .app-head{margin-bottom:24px}

.become{padding-block:96px 104px}
.become-pics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;margin-bottom:44px}
.become-pics .pair{margin:0;min-width:0;gap:10px}
.become-pics .pair img{border-radius:6px}
.become-text{text-align:center;max-width:36em;margin:0 auto}
.become-text h2{font-size:clamp(32px,3.6vw,48px)}
.become-text .lede{margin:12px auto 0;color:var(--ink-70);font-size:clamp(19px,1.6vw,22px)}
.become-text .btn{margin-top:26px}

.tiles{grid-template-columns:repeat(4,minmax(0,1fr))}

.sources{padding-block:0 96px}
.sources details.refs{margin-top:0;border-top:1.5px solid var(--ink)}
.sources details.refs summary{padding:22px 0}
.sources details.refs .more-body{max-width:none;padding:0 0 8px}
.sources details.refs ol{max-width:46em}

@media (max-width:1000px){
  .become-pics{gap:16px;margin-bottom:32px}
  .become-pics .pair{grid-template-columns:1fr;gap:6px;justify-items:center}
  .become-pics .pair .arrow{transform:rotate(90deg)}
  .tiles{grid-template-columns:1fr 1fr}
  .chart-gate{height:auto}
}
@media (max-width:680px){
  .alloc{padding-top:24px}
  .alloc .bar{height:20px}
  .alloc .legend{flex-direction:column;gap:18px}
  .alloc .k{font-size:15px}
  .alloc .k b{font-size:40px;margin-bottom:6px}
  .alloc .burned{text-align:left;max-width:none}
  .chart h2 .pairname{display:block;margin:6px 0 0;font-size:16px;vertical-align:baseline}
  .become{padding-block:64px 72px}
  .become-pics{grid-template-columns:1fr;gap:22px;margin-bottom:28px}
  .become-pics .pair{grid-template-columns:1fr auto 1fr;gap:8px;justify-items:stretch}
  .become-pics .pair .arrow{transform:none}
  .sources{padding-block:0 64px}
}
.chart .app-head,.official .app-head{grid-template-columns:1fr;gap:10px}
.official .app-head .lede{font-size:19px}

/* how to buy: the steps beside a still */
.buy-grid{display:grid;grid-template-columns:minmax(0,8fr) minmax(0,4fr);gap:40px 64px;align-items:start;border-top:1.5px solid var(--ink);padding-top:32px}
.buy-grid .stepgraphic{grid-template-columns:1fr 1fr;gap:36px 32px;border-top:0;padding-top:0}
.buy-still{margin:0;min-width:0}
.buy-still img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:50% 0;border-radius:4px;display:block}
.buy-still figcaption{margin-top:12px;font-family:var(--display);font-weight:700;font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--ink)}
.qa-more{margin-top:20px;font-size:17px;max-width:40em}
@media (max-width:1000px){
  .buy-grid{grid-template-columns:1fr;gap:32px}
  .buy-still{order:-1;max-width:420px}
}
@media (max-width:680px){
  .buy-grid{padding-top:24px;gap:28px}
  .buy-still{max-width:none}
  .buy-grid .stepgraphic{gap:24px 20px}
}
.buyline .small a{white-space:nowrap}
.tiles li{min-width:0;display:flex}
.tiles a{flex:1 1 auto;display:flex;flex-direction:column;justify-content:center}
@media (max-width:480px){
  .colophon .channels-line{font-size:16px;line-height:1.8}
  .colophon .channels-line .item{display:inline-block}
  .colophon .channels-line .sep{display:inline}
  .colophon .channels-line br{display:inline}
}

/* become Jean Phil: one example, in the house colours */
.become-pics.one{display:block;max-width:760px;margin:0 auto 44px}
.become-pics.one .pair{grid-template-columns:1fr auto 1fr;gap:18px;justify-items:stretch}
.become-pics.one .pair .arrow{transform:none;font-size:26px}
@media (max-width:680px){.become-pics.one{margin-bottom:28px}.become-pics.one .pair{gap:10px}.become-pics.one .pair .arrow{font-size:20px}}

/* PFP page: one example */
.one-ex{margin:0;max-width:760px}
.one-ex .pair{gap:18px}
.one-ex .pair .arrow{font-size:26px}
@media (max-width:680px){.one-ex .pair{gap:10px}.one-ex .pair .arrow{font-size:20px}}

.colophon .channels-line{margin-top:0}
