/* Dates Force — poster-style editorial theme. Mobile first; layout steps at 760px and 1000px. */
@font-face{font-family:"Archivo";src:url(fonts/archivo-var.woff2) format("woff2");font-weight:100 900;font-stretch:62% 125%;font-display:swap}
@font-face{font-family:"Hanken Grotesk";src:url(fonts/hanken-var.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Hanken Grotesk";src:url(fonts/hanken-italic-var.woff2) format("woff2");font-weight:100 900;font-style:italic;font-display:swap}

:root{
  --ink:#151515;--paper:#F5F1E9;--coral:#F15B45;--coral-deep:#B92D16;--coral-big:#E8452D;--white:#FFFDF8;--mute:#5E5A52;--mute-on-ink:#B9B3A7;--rule:#151515;
  --display:"Archivo","Arial Black",Impact,sans-serif;--body:"Hanken Grotesk",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --gut:clamp(16px,4vw,48px);--gap:clamp(20px,3vw,40px);
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--paper);color:var(--ink);font:400 1.0625rem/1.55 var(--body);overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration-thickness:.08em;text-underline-offset:.18em}
h1,h2,h3,p,ul,ol,figure{margin:0}
ul,ol{padding:0;list-style:none}
:focus-visible{outline:3px solid var(--coral);outline-offset:3px}
.band--coral :focus-visible,.cover__panel :focus-visible,.collection :focus-visible{outline-color:var(--ink)}
.wrap{max-width:1440px;margin-inline:auto;padding-inline:var(--gut)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.skip{position:absolute;left:-999px;top:0;background:var(--coral);color:var(--ink);padding:12px 16px;font-weight:700;z-index:100}
.skip:focus{left:0}

/* ---------- Type ---------- */
.display{font-family:var(--display);font-weight:900;font-stretch:125%;text-transform:uppercase;line-height:.9;letter-spacing:-.025em;font-size:clamp(2.1rem,8.6vw,6.5rem);text-wrap:balance}
.display a{text-decoration:none}
.display a:hover{text-decoration:underline;text-decoration-thickness:.06em}
.hl{color:var(--coral-big)}
.band--ink .hl{color:var(--coral)}
.amp{font-stretch:100%;font-weight:700}
.kicker,.tag,.card__meta,.crumbs,.more,.sec__note,.foot__label,.menu__label{font-family:var(--body)}
.kicker,.tag,.crumbs,.foot__label,.menu__label{font-size:.8125rem;font-weight:800;text-transform:uppercase;letter-spacing:.09em}
.kicker a,.tag,.crumbs a{text-decoration:none}
.kicker a,.crumbs a,.story__meta a,.story__process a,.story__edits a{display:inline-block;padding-block:6px}
.kicker a:hover,.tag:hover,.crumbs a:hover{text-decoration:underline}
.tag{display:inline-block;color:var(--coral-deep);padding-block:4px}
.band--ink .tag,.duo__panel--ink .tag,.cover__side .tag{color:var(--coral)}
.sec__note{max-width:34ch;font-size:1.0625rem;line-height:1.45}
.more{display:inline-block;font-weight:800;font-size:.9375rem;text-transform:uppercase;letter-spacing:.07em;text-decoration:none;border-bottom:3px solid currentColor;padding:10px 0 4px;margin-top:8px}
.more::after{content:" →"}
.more:hover{color:var(--coral-deep)}
.band--ink .more:hover,.duo__panel--ink .more:hover{color:var(--coral)}
.band--coral .more:hover{color:var(--white)}

/* ---------- Header ---------- */
.head{background:var(--ink);color:var(--paper)}
.head__in{display:flex;align-items:center;gap:20px;min-height:64px}
.logo{display:inline-flex;flex-direction:column;font:900 1.125rem/.86 var(--display);font-stretch:125%;text-transform:uppercase;letter-spacing:-.02em;text-decoration:none;color:var(--paper);padding:8px 0}
.logo span:last-child{color:var(--coral)}
.home .head .logo{visibility:hidden}
.head__nav{display:none;margin-left:auto}
.head__nav ul{display:flex;gap:clamp(14px,2vw,30px)}
.head__nav a,.head__search,.head__menu{font-weight:800;font-size:.875rem;text-transform:uppercase;letter-spacing:.08em;text-decoration:none;padding:12px 0;display:inline-block}
.head__nav a:hover,.head__search:hover,.head__nav .current-menu-item a,.head__nav .current-post-ancestor a{color:var(--coral)}
.head__tools{display:flex;gap:18px;margin-left:auto;align-items:center}
.head__menu{background:var(--coral);color:var(--ink);padding:10px 16px;min-width:84px;text-align:center}
.head__menu:hover{background:var(--paper)}
@media (min-width:1000px){.head__nav{display:block}.head__tools{margin-left:clamp(14px,2vw,30px)}}

.menu{position:fixed;inset:64px 0 0;background:var(--coral);color:var(--ink);z-index:50;overflow-y:auto;padding-block:28px 48px}
.menu[hidden]{display:none}
.menu-open{overflow:hidden}
.menu-open .head{position:fixed;inset:0 0 auto;z-index:51}
.menu__label{margin:20px 0 8px}
.menu__big a{font:900 clamp(2rem,9vw,4.5rem)/1 var(--display);font-stretch:125%;text-transform:uppercase;letter-spacing:-.025em;text-decoration:none;display:block;padding:6px 0}
.menu__mid a{font:800 clamp(1.25rem,4vw,1.75rem)/1.2 var(--display);text-decoration:none;display:block;padding:8px 0}
.menu__big a:hover,.menu__mid a:hover{color:var(--white)}
.menu .sform{margin-top:28px;max-width:560px}
.menu__small{display:flex;flex-wrap:wrap;gap:6px 22px;margin-top:28px;font-weight:700}
.menu__small a{display:inline-block;padding:8px 0}

/* ---------- Search form ---------- */
.sform{display:flex;border:3px solid var(--ink);background:var(--white)}
.sform input{flex:1;min-width:0;border:0;background:transparent;font:500 1.0625rem var(--body);padding:14px 16px;color:var(--ink)}
.sform input:focus{outline:none;background:#fff}
.sform button{border:0;background:var(--ink);color:var(--paper);font:800 .875rem var(--body);text-transform:uppercase;letter-spacing:.08em;padding:0 22px;cursor:pointer}
.sform button:hover{background:var(--coral-deep)}

/* ---------- Media ---------- */
.df-img{width:100%;height:100%;object-fit:cover}
.card__media,.cover__photo,.scent__photo,.closing__photo,.story__photo,.rubric__photo,.df-ad__media{display:block;overflow:hidden;background:#d9d2c5}
.r-11{aspect-ratio:1}.r-32{aspect-ratio:3/2}.r-43{aspect-ratio:4/3}.r-45{aspect-ratio:4/5}.r-169{aspect-ratio:16/9}

/* ---------- Cards ---------- */
.card{min-width:0}
.card__title{font-family:var(--display);font-weight:800;font-stretch:104%;line-height:1.06;letter-spacing:-.015em;font-size:clamp(1.3rem,2.1vw,1.7rem);text-wrap:balance;overflow-wrap:break-word}
.card__title a{text-decoration:none;padding-block:3px}
.card__title a:hover{text-decoration:underline;text-decoration-thickness:.07em}
.card__dek{margin-top:10px;color:var(--mute);max-width:52ch}
.band--ink .card__dek,.duo__panel--ink .card__dek{color:var(--mute-on-ink)}
.band--coral .card__dek{color:var(--ink)}
.card__meta{margin-top:10px;font-size:.8125rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--mute)}
.band--ink .card__meta,.duo__panel--ink .card__meta,.cover__side .card__meta{color:var(--mute-on-ink)}
.band--coral .card__meta,.cover__panel .card__meta{color:var(--ink)}
.band--coral .tag{color:var(--ink)}
.closing__box .card__meta,.card--boxed .card__meta{color:var(--mute)}
.card--boxed .card__meta{color:var(--mute-on-ink)}
.card__media + .card__body{margin-top:16px}

.card--tall .card__title,.card--poster .card__title,.card--lead .card__title{font-size:clamp(1.7rem,3.4vw,2.9rem);font-weight:900}
.card--wide .card__title{font-size:clamp(1.35rem,2.2vw,1.9rem)}
.card--line{border-top:3px solid currentColor;padding:16px 0 18px}
.card--line .card__title{font-size:clamp(1.25rem,1.9vw,1.6rem)}
.card--line .card__meta{margin-top:8px}
.card--side,.card--thumb,.card--round{display:grid;grid-template-columns:96px 1fr;gap:16px;align-items:center}
.card--side .card__body,.card--thumb .card__body,.card--round .card__body{margin-top:0}
.card--noimg.card--side,.card--noimg.card--thumb,.card--noimg.card--round,.card--noimg.card--numbered{grid-template-columns:1fr}
.card--side .card__title{font-size:clamp(1.1rem,1.5vw,1.35rem)}
.card--round .card__media{border-radius:50%;border:3px solid var(--ink)}
.card--num{display:block;border-top:3px solid var(--paper);padding:18px 0 20px}
.card--num .card__body{display:grid;grid-template-columns:auto 1fr;column-gap:18px}
.card--num .card__num{grid-row:1/4;font:900 clamp(2.2rem,4.4vw,3.6rem)/.9 var(--display);font-stretch:125%;color:var(--coral);letter-spacing:-.03em}
.card--num .tag,.card--num .card__title,.card--num .card__meta{grid-column:2}

/* ---------- Home: masthead ---------- */
.mast{padding-block:clamp(14px,2.4vw,30px) clamp(18px,2.4vw,30px)}
.mast__word{font:900 clamp(3.6rem,19.5vw,7rem)/.8 var(--display);font-stretch:125%;text-transform:uppercase;letter-spacing:-.045em;display:flex;flex-direction:column}
.mast__word span:last-child{color:var(--coral-big)}
.mast__line{display:grid;gap:8px;border-top:6px solid var(--ink);margin-top:clamp(14px,2vw,26px);padding-top:14px}
.mast__tag{font:800 clamp(1.15rem,2.2vw,1.6rem)/1.1 var(--display);font-stretch:110%}
.mast__note{color:var(--mute);max-width:56ch}
@media (min-width:760px){
  .mast__word{flex-direction:row;gap:.2em;font-size:clamp(4rem,10.3vw,9.2rem);white-space:nowrap}
  .mast__line{grid-template-columns:auto 1fr;gap:40px;align-items:baseline}
  .mast__note{justify-self:end;text-align:right}
}

/* ---------- Home: cover ---------- */
.cover{display:grid;margin-bottom:clamp(48px,7vw,104px)}
.cover__photo{aspect-ratio:4/5;margin-inline:calc(var(--gut) * -1)}
.cover__panel{background:var(--coral);padding:clamp(22px,3.4vw,48px);margin:-56px 0 0 calc(var(--gut) * -1);margin-right:24px;position:relative}
.cover__title{font:900 clamp(1.9rem,4.3vw,4rem)/1 var(--display);font-stretch:108%;letter-spacing:-.025em;margin-top:12px;text-wrap:balance;overflow-wrap:break-word}
.cover__title a{text-decoration:none}
.cover__title a:hover{text-decoration:underline;text-decoration-thickness:.06em}
.cover__dek{margin-top:16px;font-size:clamp(1.0625rem,1.35vw,1.25rem);line-height:1.45;max-width:46ch}
.cover__side{background:var(--ink);color:var(--paper);padding:clamp(20px,3vw,40px);display:grid;gap:22px;margin-inline:calc(var(--gut) * -1)}
@media (min-width:760px){
  .cover{grid-template-columns:repeat(12,1fr);grid-template-rows:auto auto}
  .cover__photo{grid-column:6/13;grid-row:1/3;aspect-ratio:auto;min-height:clamp(520px,58vw,820px);margin:0 calc(var(--gut) * -1) 0 0}
  .cover__panel{grid-column:1/8;grid-row:1;margin:clamp(32px,5vw,72px) 0 0 calc(var(--gut) * -1);padding-left:var(--gut);align-self:start;z-index:1}
  .cover__side{grid-column:1/6;grid-row:2;margin:0 0 0 calc(var(--gut) * -1);padding-left:var(--gut);align-content:center}
}

/* ---------- Sections ---------- */
.sec{padding-block:clamp(40px,6vw,96px)}
.sec + .sec{padding-top:0}
.sec__head{display:grid;gap:14px;margin-bottom:clamp(24px,3.4vw,48px)}
.band{padding-block:clamp(44px,6.5vw,104px)}
.band--ink{background:var(--ink);color:var(--paper)}
.band--coral{background:var(--coral);color:var(--ink)}
.band + .sec,.ad-break + .sec{padding-top:clamp(40px,6vw,96px)}
@media (min-width:760px){
  .sec__head{grid-template-columns:1fr auto;align-items:end}
  .sec__head--row{grid-template-columns:auto 1fr auto;column-gap:40px}
}

.edit__grid{display:grid;gap:var(--gap)}
.edit__stack{display:grid;gap:var(--gap);align-content:start}
@media (min-width:760px){
  .edit__grid{grid-template-columns:5fr 7fr}
  .edit__stack{padding-top:clamp(40px,7vw,120px)}
  .card--wide{display:grid;grid-template-columns:5fr 6fr;gap:24px;align-items:start}
  .card--wide .card__body{margin-top:0;border-top:6px solid var(--ink);padding-top:14px}
}

.fix__in{display:grid;gap:28px}
.fix__head{display:grid;gap:16px;align-content:start;justify-items:start}
.fix__head .sec__note{color:var(--mute-on-ink)}
@media (min-width:1000px){.fix__in{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:64px}}
@media (min-width:1240px){.fix__list{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:40px;align-content:start}}

.ready .display{font-size:clamp(2.2rem,10.5vw,9.5rem)}
.ready__grid{display:grid;gap:var(--gap)}
.ready__side{display:grid;gap:22px;align-content:start;justify-items:start}
.card--boxed{position:relative}
.card--boxed .card__body{background:var(--ink);color:var(--paper);padding:clamp(18px,2.6vw,32px);margin:-40px 16px 0 0;position:relative}
.card--boxed .card__title{font-size:clamp(1.5rem,2.9vw,2.5rem);font-weight:900}
.card--boxed .tag{color:var(--coral)}
.card--boxed .card__dek,.card--boxed .card__meta{color:var(--mute-on-ink)}
.card--round{grid-template-columns:112px 1fr}
@media (min-width:1000px){
  .ready__grid{grid-template-columns:8fr 4fr}
  .card--boxed .card__body{max-width:62%;margin:-110px 0 0 -24px}
  .card--round{grid-template-columns:140px 1fr;gap:20px}
}

.ad-break{padding-block:clamp(32px,4vw,56px) 0}

.makeup{display:grid;gap:var(--gap)}
.card--poster .card__body{border-left:10px solid var(--coral);padding-left:18px}
.makeup__list{display:grid;gap:0;align-content:start;justify-items:start}
.makeup__list .display{font-size:clamp(2.4rem,11vw,7.5rem);margin-bottom:12px}
.makeup__list .sec__note{margin-bottom:22px}
.makeup__list .card{width:100%}
@media (min-width:760px){.makeup{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,5vw,80px);align-items:start}.makeup__list{padding-top:clamp(0px,4vw,64px)}.makeup__list .display{font-size:clamp(2.4rem,7.4vw,7.5rem)}}

.duo{display:grid;gap:var(--gap)}
.duo__panel{padding:clamp(22px,3.4vw,48px);display:grid;gap:0;align-content:start;justify-items:start}
.duo__panel > *{width:100%}
.duo__panel > .more{width:auto}
.duo__panel .display{margin-bottom:22px}
.duo__panel--light{background:var(--white);border:3px solid var(--ink)}
.duo__panel--ink{background:var(--ink);color:var(--paper)}
.duo__panel--ink .display{color:var(--coral)}
.card--stack{margin-bottom:22px}
.card--stack .card__title{font-size:clamp(1.5rem,2.4vw,2.1rem);font-weight:900}
.card--thumb{border-top:3px solid currentColor;padding:18px 0}
.card--thumb .card__title{font-size:clamp(1.2rem,1.8vw,1.55rem)}
@media (min-width:760px){.card--thumb{grid-template-columns:140px 1fr;gap:22px}}
@media (min-width:1000px){.duo{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}}

.nails__grid{display:grid;gap:var(--gap)}
.card--square .card__body{border-top:6px solid var(--ink);padding-top:12px}
@media (min-width:760px){.nails__grid{grid-template-columns:repeat(3,1fr);align-items:start}.nails__grid .card:nth-child(1){margin-top:56px}.nails__grid .card:nth-child(3){margin-top:112px}}

.scent__frame{border:6px solid var(--coral);display:grid}
.scent__text{padding:clamp(20px,3.4vw,48px);display:grid;align-content:start;justify-items:start}
.scent__text > .card{width:100%}
.scent__text .display{font-size:clamp(2rem,7vw,5.2rem);margin-bottom:14px}
.scent__text .sec__note{margin-bottom:24px}
.scent__photo{aspect-ratio:4/3}
@media (min-width:760px){.scent__frame{grid-template-columns:7fr 5fr}.scent__photo{aspect-ratio:auto;min-height:100%}}

.closing__in{display:grid}
.closing__photo{aspect-ratio:4/3;margin-inline:calc(var(--gut) * -1)}
.closing__box{background:var(--paper);color:var(--ink);padding:clamp(22px,3.4vw,48px);margin-top:-48px;margin-right:16px;position:relative}
.closing__title{font:900 clamp(1.8rem,3.6vw,3.3rem)/1.02 var(--display);font-stretch:108%;letter-spacing:-.02em;margin-top:10px;text-wrap:balance}
.closing__title a{text-decoration:none}
.closing__title a:hover{text-decoration:underline;text-decoration-thickness:.06em}
.closing__dek{margin:14px 0 26px;color:var(--mute);font-size:1.125rem}
.closing__also{font-size:.8125rem;font-weight:800;text-transform:uppercase;letter-spacing:.09em;margin-bottom:10px;color:var(--coral-deep)}
@media (min-width:1000px){
  .closing__in{grid-template-columns:repeat(12,1fr);align-items:center}
  .closing__photo{grid-column:1/9;grid-row:1;aspect-ratio:3/2;margin:0 0 0 calc(var(--gut) * -1)}
  .closing__box{grid-column:7/13;grid-row:1;margin:0}
}

/* ---------- Rubric and listing pages ---------- */
.crumbs{color:var(--mute);margin-bottom:16px}
.rubric{background:var(--ink);color:var(--paper)}
.rubric .crumbs{color:var(--mute-on-ink)}
.rubric__in{display:grid}
.rubric__text{padding-block:clamp(28px,5vw,72px)}
.rubric__title{font-size:clamp(2.5rem,13vw,10rem);color:var(--coral)}
.rubric--scent-rituals .rubric__title{font-size:clamp(2.1rem,9.4vw,7rem)}
.rubric__intro{margin-top:20px;max-width:52ch;font-size:clamp(1.0625rem,1.4vw,1.25rem);line-height:1.5}
.rubric__photo{aspect-ratio:3/2;margin-inline:calc(var(--gut) * -1)}
.rubric--skin,.rubric--nails{background:var(--coral);color:var(--ink)}
.rubric--skin .rubric__title,.rubric--nails .rubric__title{color:var(--ink)}
.rubric--skin .crumbs,.rubric--nails .crumbs{color:var(--ink)}
.rubric--hair{background:var(--white);color:var(--ink);border-bottom:6px solid var(--ink)}
.rubric--hair .rubric__title{color:var(--ink)}
.rubric--hair .crumbs{color:var(--mute)}
@media (min-width:900px){
  .rubric__in{grid-template-columns:7fr 5fr;gap:40px;align-items:stretch}
  .rubric__photo{aspect-ratio:auto;min-height:420px;margin:0 calc(var(--gut) * -1) 0 0}
  .rubric--skin .rubric__in,.rubric--scent-rituals .rubric__in{grid-template-columns:5fr 7fr}
  .rubric--skin .rubric__text,.rubric--scent-rituals .rubric__text{order:2}
  .rubric--skin .rubric__photo,.rubric--scent-rituals .rubric__photo{margin:0 0 0 calc(var(--gut) * -1)}
  .rubric--skin .rubric__title{font-size:clamp(2.5rem,11vw,10rem)}
}

.listing{padding-block:clamp(32px,5vw,72px) clamp(48px,7vw,104px)}
.listing__lead{margin-bottom:clamp(32px,5vw,72px)}
.card--lead .card__dek{font-size:1.125rem}
.rows{display:grid;gap:clamp(28px,4vw,56px)}
.card--row .card__title{font-size:clamp(1.45rem,2.6vw,2.2rem);font-weight:900}
@media (min-width:760px){
  .card--lead{display:grid;grid-template-columns:8fr 4fr;gap:32px;align-items:end}
  .card--lead .card__body{margin-top:0;border-top:10px solid var(--coral);padding-top:16px}
  .card--row{display:grid;grid-template-columns:4fr 8fr;gap:clamp(24px,4vw,56px);align-items:center;border-top:3px solid var(--ink);padding-top:clamp(28px,4vw,56px)}
  .card--row .card__body{margin-top:0}
  .rows .card--row:nth-child(even){grid-template-columns:8fr 4fr}
  .rows .card--row:nth-child(even) .card__media{order:2}
}

.pager{display:flex;flex-wrap:wrap;gap:10px;margin-top:clamp(36px,5vw,64px)}
.pager .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:48px;min-height:48px;padding:0 16px;border:3px solid var(--ink);font-weight:800;text-decoration:none}
.pager .current{background:var(--ink);color:var(--paper)}
.pager a:hover{background:var(--coral)}

.collection{background:var(--coral);padding-block:clamp(28px,5vw,72px)}
.collection .crumbs{color:var(--ink)}
.collection__title{font-size:clamp(2.2rem,10.5vw,8.5rem)}
.collection__intro{margin-top:20px;max-width:56ch;font-size:clamp(1.0625rem,1.4vw,1.25rem);line-height:1.5}
.numbered{display:grid}
.numbered li{border-top:3px solid var(--ink);padding-block:clamp(22px,3vw,36px)}
.numbered li:first-child{border-top:0;padding-top:0}
.card--numbered{display:grid;grid-template-columns:96px 1fr;gap:16px;align-items:start}
.card--numbered .card__body{margin-top:0}
.card--numbered .card__num{display:block;font:900 clamp(1.6rem,3vw,2.6rem)/1 var(--display);font-stretch:125%;color:var(--coral-deep)}
.card--numbered .card__title{font-size:clamp(1.3rem,2.6vw,2.2rem);font-weight:900}
@media (min-width:760px){.card--numbered{grid-template-columns:200px 1fr;gap:36px;align-items:center}}

.plain-head{background:var(--ink);color:var(--paper);padding-block:clamp(28px,5vw,72px)}
.plain-head .crumbs{color:var(--mute-on-ink)}
.plain-head .display{font-size:clamp(2rem,8vw,6.5rem)}
.plain-head .sform{margin-top:24px;max-width:680px;border-color:var(--coral)}
.plain-head .sform button{background:var(--coral);color:var(--ink)}
.plain-head .sform button:hover{background:var(--paper)}
.plain-head__note{margin-top:16px;color:var(--mute-on-ink)}
.empty{font-size:1.25rem;max-width:44ch;margin-bottom:24px}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.chips a{display:inline-block;border:3px solid currentColor;padding:10px 16px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;font-size:.875rem;text-decoration:none}
.chips a:hover{background:var(--coral);color:var(--ink);border-color:var(--ink)}

.lost{background:var(--coral);padding-block:clamp(40px,7vw,110px)}
.lost__num{font:900 clamp(6rem,30vw,22rem)/.8 var(--display);font-stretch:125%;letter-spacing:-.05em}
.lost .display{font-size:clamp(1.8rem,6vw,4.5rem);margin-top:16px}
.lost__note{margin:18px 0 24px;font-size:1.25rem;max-width:40ch}
.lost .sform{max-width:620px;margin-bottom:24px}

/* ---------- Article ---------- */
.story__head{padding-block:clamp(24px,4vw,56px) 40px;overflow-x:clip}
.story__head-in{display:grid;gap:clamp(24px,4vw,56px)}
.story__title{font:900 clamp(2.1rem,5.2vw,4.6rem)/1 var(--display);font-stretch:108%;letter-spacing:-.028em;text-wrap:balance;overflow-wrap:break-word}
.story__dek{margin-top:clamp(16px,2vw,26px);font-size:clamp(1.2rem,1.8vw,1.5rem);line-height:1.4;max-width:38ch}
.story__meta{margin-top:clamp(18px,2.4vw,30px);display:flex;flex-wrap:wrap;align-items:center;gap:0;font-size:.875rem;font-weight:600;color:var(--mute);border-top:6px solid var(--ink);padding-top:14px}
.story__meta span:not(:last-child)::after{content:"·";margin-inline:10px}
.story__figure{position:relative}
.story__figure::before{content:"";position:absolute;background:var(--coral);inset:50% -100vw -14px -100vw;z-index:-1}
.story__photo{aspect-ratio:4/3;margin-inline:calc(var(--gut) * -1)}
.story__figure figcaption{font-size:.8125rem;color:var(--ink);font-weight:600;padding-top:8px;position:relative}
.story__figure figcaption a{padding-block:6px;display:inline-block}
@media (min-width:1000px){
  .story__head-in{grid-template-columns:6fr 5fr;align-items:end}
  .story__intro{padding-bottom:clamp(16px,3vw,48px)}
  .story__photo{aspect-ratio:4/5;margin:0 calc(var(--gut) * -1) 0 0;max-height:780px;width:auto}
  .story__figure::before{inset:auto -100vw -40px -48px;height:46%;top:auto}
}

.story__grid{display:grid;gap:clamp(28px,4vw,56px);padding-block:clamp(48px,7vw,104px) clamp(48px,6vw,88px)}
.story__aside{display:grid;gap:24px;align-content:start}
.short{background:var(--ink);color:var(--paper);padding:clamp(20px,2.4vw,30px)}
.short h2,.toc h2,.sources h2{font:900 1.05rem/1 var(--display);font-stretch:125%;text-transform:uppercase;letter-spacing:-.01em;margin-bottom:16px}
.short h2{color:var(--coral)}
.short li{padding:12px 0 12px 22px;border-top:1px solid #45423d;position:relative;line-height:1.4}
.short li:first-child{border-top:0;padding-top:0}
.short li::before{content:"";position:absolute;left:0;top:1.15em;width:10px;height:10px;background:var(--coral)}
.short li:first-child::before{top:.4em}
.toc{border:3px solid var(--ink);padding:clamp(18px,2.2vw,26px)}
.toc ol{counter-reset:t}
.toc li{counter-increment:t;display:grid;grid-template-columns:2.2em 1fr;line-height:1.3}
.toc li::before{content:counter(t,decimal-leading-zero);font-weight:800;color:var(--coral-deep);padding-top:8px}
.toc a{text-decoration:none;font-weight:600;padding:8px 0;display:block}
.toc a:hover{text-decoration:underline}
@media (min-width:1000px){
  .story__grid{grid-template-columns:minmax(260px,4fr) minmax(0,8fr);column-gap:clamp(40px,6vw,96px)}
  .story__aside{position:sticky;top:24px;align-self:start;max-height:calc(100vh - 48px);overflow:auto}
}

.prose{max-width:68ch;font-size:clamp(1.0625rem,1.25vw,1.1875rem);line-height:1.68}
.prose > * + *{margin-top:1.15em}
.prose > p:first-child{font-size:1.14em;line-height:1.55}
.prose h2{font:900 clamp(1.5rem,2.5vw,2.05rem)/1.08 var(--display);font-stretch:106%;letter-spacing:-.018em;margin-top:2em;padding-top:.7em;border-top:6px solid var(--ink);text-wrap:balance;scroll-margin-top:24px}
.prose h3{font:800 clamp(1.2rem,1.7vw,1.4rem)/1.2 var(--display);margin-top:1.7em}
.prose h2 + *,.prose h3 + *{margin-top:.75em}
.prose a{color:var(--coral-deep);font-weight:600;text-decoration-thickness:.09em}
.prose a:hover{color:var(--ink);background:#f9d3cb}
.prose ul,.prose ol{padding-left:0;display:grid;gap:.55em}
.prose ul li{padding-left:1.5em;position:relative}
.prose ul li::before{content:"";position:absolute;left:.15em;top:.62em;width:.5em;height:.5em;background:var(--coral)}
.prose ol{counter-reset:s}
.prose ol li{counter-increment:s;padding-left:2.6em;position:relative;min-height:1.9em}
.prose ol li::before{content:counter(s);position:absolute;left:0;top:.05em;width:1.75em;height:1.75em;background:var(--ink);color:var(--paper);font:800 .9em/1.75em var(--display);text-align:center}
.prose strong{font-weight:750}
.prose .df-pull{font:900 clamp(1.5rem,2.8vw,2.3rem)/1.08 var(--display);font-stretch:108%;letter-spacing:-.02em;background:var(--coral);color:var(--ink);padding:clamp(20px,3vw,36px);margin-block:1.8em;text-wrap:balance}
.prose .df-note{background:var(--white);border-left:10px solid var(--coral);padding:16px 20px;font-size:.96em;line-height:1.55}
.prose .df-note strong{font-family:var(--display);font-weight:800;text-transform:uppercase;font-size:.86em;letter-spacing:.02em}
.df-table{overflow-x:auto;border:3px solid var(--ink);background:var(--white)}
.prose table{border-collapse:collapse;width:100%;min-width:520px;font-size:.92em;line-height:1.45}
.prose th{background:var(--ink);color:var(--paper);text-align:left;font-weight:800;padding:12px 14px;vertical-align:bottom}
.prose td{padding:12px 14px;border-top:1px solid #cfc8ba;vertical-align:top}
.prose td:first-child{font-weight:700}

.story__update{background:var(--white);border:3px solid var(--ink);padding:14px 18px;margin-bottom:28px;max-width:68ch}
.sources{max-width:68ch;margin-top:clamp(40px,5vw,64px);background:var(--white);border:3px solid var(--ink);padding:clamp(18px,2.4vw,30px)}
.sources ol{counter-reset:r;display:grid;gap:12px}
.sources li{counter-increment:r;padding-left:2.2em;position:relative;font-size:.97rem;line-height:1.45}
.sources li::before{content:counter(r,decimal-leading-zero);position:absolute;left:0;font-weight:800;color:var(--coral-deep)}
.sources span{display:block;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--mute)}
.sources a{font-weight:600;overflow-wrap:anywhere;display:inline-block;padding-block:3px}
.story__process,.story__edits{max-width:68ch;margin-top:22px;font-size:.92rem;color:var(--mute);line-height:1.5}
.story__process a,.story__edits a{color:var(--ink);font-weight:700}

.next .display{margin-bottom:clamp(24px,3.4vw,48px)}
.next__grid{display:grid;gap:var(--gap)}
.next .card--stack{margin-bottom:0}
@media (min-width:900px){.next__grid{grid-template-columns:6fr 5fr;column-gap:clamp(40px,6vw,96px)}.next__grid .card--stack{grid-row:1/3}.next__grid .card--thumb{align-self:start}}

/* ---------- Static pages ---------- */
.doc__grid{display:grid;gap:40px;padding-block:clamp(36px,5vw,72px) clamp(48px,7vw,104px)}
.doc__date{font-size:.875rem;color:var(--mute);margin-top:2.4em}
.doc__nav{border-top:6px solid var(--ink);padding-top:16px;align-self:start}
.doc__nav a{display:block;padding:8px 0;font-weight:700;text-decoration:none}
.doc__nav a:hover,.doc__nav .current-menu-item a{color:var(--coral-deep);text-decoration:underline}
@media (min-width:1000px){.doc__grid{grid-template-columns:minmax(0,8fr) 3fr;column-gap:clamp(40px,6vw,96px)}}

/* ---------- Ads: same typography, always framed and labelled ---------- */
.df-ad{position:relative;border:3px dashed var(--ink);background:var(--white);color:var(--ink)}
.df-ad__link{display:grid;text-decoration:none;color:inherit}
.df-ad__body{display:grid;gap:8px;padding:clamp(16px,2.2vw,28px);align-content:center}
.df-ad__label{font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;background:var(--ink);color:var(--paper);padding:5px 9px;justify-self:start}
.df-ad__title{font:900 clamp(1.25rem,2vw,1.7rem)/1.08 var(--display);font-stretch:104%;letter-spacing:-.015em}
.df-ad__link:hover .df-ad__title{text-decoration:underline}
.df-ad__text{color:var(--mute);font-size:1rem;line-height:1.45}
.df-ad__media{aspect-ratio:16/9}
.df-ad__test{display:block;background:#fff3a6;color:var(--ink);font-size:.75rem;font-weight:700;padding:4px 10px}
.df-ad--home_feed{grid-column:1/-1;margin-top:8px;border-color:var(--paper);background:var(--ink);color:var(--paper)}
.df-ad--home_feed .df-ad__label{background:var(--paper);color:var(--ink)}
.df-ad--home_feed .df-ad__text{color:var(--mute-on-ink)}
.df-ad--home_break .df-ad__title{font-size:clamp(1.6rem,3.4vw,3rem)}
.df-ad--article_inline{margin-block:2em;clear:both}
.df-ad--article_inline .df-ad__link{grid-template-columns:120px 1fr}
.df-ad--article_inline .df-ad__media{aspect-ratio:1;height:100%}
.df-ad--article_inline .df-ad__title{font-size:1.15rem}
.df-ad--article_inline .df-ad__text{font-size:.92rem}
.df-ad-recs{padding-block:0 clamp(48px,6vw,88px)}
.df-ad-recs__title{font:900 1.05rem/1 var(--display);font-stretch:125%;text-transform:uppercase;border-top:6px solid var(--ink);padding-top:14px;margin-bottom:18px;display:flex;flex-wrap:wrap;gap:6px 16px;align-items:baseline}
.df-ad-recs__title span{font:500 .875rem var(--body);text-transform:none;color:var(--mute)}
.df-ad-recs__grid{display:grid;gap:20px}
@media (min-width:760px){
  .df-ad--home_feed .df-ad__link,.df-ad--home_break .df-ad__link{grid-template-columns:1fr 1fr}
  .df-ad--home_feed .df-ad__media,.df-ad--home_break .df-ad__media{aspect-ratio:auto;min-height:220px;height:100%}
  .df-ad--home_break .df-ad__media{min-height:340px;order:2}
  .df-ad--article_inline .df-ad__link{grid-template-columns:180px 1fr}
  .df-ad-recs__grid{grid-template-columns:repeat(3,1fr)}
  .df-ad--only-mobile{display:none}
}
@media (max-width:759.98px){.df-ad--only-desktop{display:none}}

/* ---------- Footer ---------- */
.foot{background:var(--ink);color:var(--paper);padding-block:clamp(36px,5vw,72px) 32px;overflow:hidden}
.foot__word{font:900 clamp(2rem,10.3vw,9.2rem)/.8 var(--display);font-stretch:125%;text-transform:uppercase;letter-spacing:-.045em;color:var(--coral);white-space:nowrap}
.foot__cols{display:grid;gap:32px;margin-top:clamp(28px,4vw,56px);border-top:6px solid var(--paper);padding-top:24px}
.foot__tag{font:800 1.35rem/1.1 var(--display);font-stretch:110%;margin-bottom:10px}
.foot__about p:last-child{color:var(--mute-on-ink);max-width:38ch}
.foot__label{color:var(--coral);margin-bottom:8px}
.foot nav a{display:block;padding:7px 0;font-weight:600;text-decoration:none}
.foot nav a:hover{color:var(--coral);text-decoration:underline}
.foot__legal{margin-top:40px;font-size:.875rem;color:var(--mute-on-ink);max-width:90ch}
@media (min-width:760px){.foot__cols{grid-template-columns:2fr 1fr 1fr 1fr;gap:40px}}

@media print{.head,.menu,.foot,.next,.df-ad,.df-ad-recs,.story__aside .toc{display:none}body{background:#fff}}
.prose code{font:600 .9em ui-monospace,Menlo,Consolas,monospace;background:var(--white);padding:.1em .35em;border:1px solid #cfc8ba}
.prose .df-ad a,.prose .df-ad a:hover{color:inherit;font-weight:inherit;background:none;text-decoration:none}
