/* skibdrip Journal — editorial stylesheet (static pages, zero JS)
   Mirrors the landing design system: paper/ink/oxblood, Instrument Serif + Hanken Grotesk. */

:root{
  --paper:#F5F2EC; --paper-2:#EBE5DA; --paper-3:#EBE5DA;
  --ink:#1A1916; --ink-2:#5C574F; --ink-soft:#5C574F; --ink-faint:#6E6961;
  --oxblood:#7A2238; --oxblood-2:#7A2238; --wine-tint:#F2E4E6; --card:#FFFFFF;
  --clay-lt:#C9926F; --clay:#7A4234; --brown:#5C2A2C;
  --line:#E4DED4; --maxw:1180px; --measure:70ch; --r-card:14px;
}
*{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{
  margin:0; background:var(--paper); color:var(--ink);
  font-family:"Hanken Grotesk", system-ui, -apple-system, sans-serif;
  font-size:17.5px; line-height:1.65; -webkit-font-smoothing:antialiased;
}
h1,h2,h3{ font-family:"Instrument Serif", Georgia, serif; font-weight:400; letter-spacing:-.01em; line-height:1.05; margin:0; }
a{ color:inherit; }
img{ max-width:100%; display:block; }
.wrap{ max-width:var(--maxw); margin:0 auto; padding:0 24px; }
.dot{ color:var(--oxblood); }
.rule{ height:1px; background:var(--line); border:0; margin:0; }
.eyebrow{ font-size:11px; letter-spacing:.22em; text-transform:uppercase; color:var(--ink-soft);
  display:inline-flex; align-items:center; gap:10px; }
.eyebrow::before{ content:""; width:22px; height:1px; background:var(--oxblood); }

/* ── Header & Menu (the site's own header, v2: Paper, Ink, Wine, Instrument Serif + Albert Sans) ── */
.skip{
  position:absolute; left:clamp(20px, 4.4vw, 60px); top:-70px; z-index:120;
  background:#1a1a1a; color:#faf9f6; padding:11px 18px; text-decoration:none;
  font-size:10px; letter-spacing:.22em; text-transform:uppercase;
  font-family:"Albert Sans", "Hanken Grotesk", -apple-system, sans-serif;
}
.skip:focus{ top:12px; }
.jn-head, .jn-menu{
  --jn-paper:#F5F2EC; --jn-ink:#1A1916; --jn-ink-2:#5C574F; --jn-line:#E4DED4; --jn-wine:#7A2238;
  --jn-sans:"Albert Sans", "Hanken Grotesk", -apple-system, sans-serif;
  --jn-gutter:clamp(20px, 4.4vw, 60px);
}
.jn-head *, .jn-menu *{ box-sizing:border-box; }
.jn-head{ position:sticky; top:0; z-index:90; background:var(--jn-paper); border-bottom:1px solid var(--jn-line); }
.jn-head__in{
  display:grid; grid-template-columns:1fr auto 1fr; align-items:center;
  height:clamp(68px, 7.5vw, 80px); max-width:1240px; margin:0 auto; padding-inline:var(--jn-gutter);
}
.jn-brand{
  justify-self:start; display:inline-flex; align-items:center; min-height:44px;
  font-family:"Instrument Serif", Georgia, serif; font-size:clamp(24px, 2.4vw, 28px); line-height:1;
  color:var(--jn-ink); text-decoration:none; white-space:nowrap;
}
.jn-mark{
  display:inline-flex; align-items:baseline; font-family:"Bodoni Moda", "Didot", Georgia, serif; font-weight:500;
  font-variation-settings:"opsz" 14; text-transform:uppercase; letter-spacing:.02em; line-height:1; white-space:nowrap;
}
.jn-mark__text{ position:relative; display:inline-block; padding-right:.34em; }
.jn-mark sup{ position:absolute; top:.02em; right:0; font-size:.3em; font-weight:500; line-height:1; letter-spacing:0; }
.jn-mark__drop{ display:inline-block; height:.85em; width:auto; margin-left:.12em; }
.jn-nav{ display:none; align-items:center; gap:clamp(28px, 4vw, 52px); justify-self:center; }
.jn-link{
  display:inline-flex; align-items:center; min-height:44px; font-family:var(--jn-sans); font-size:13px; font-weight:500;
  color:var(--jn-ink-2); text-decoration:none; border-bottom:1px solid transparent; transition:color .2s ease;
}
.jn-link:hover{ color:var(--jn-ink); }
.jn-link[aria-current="page"]{ color:var(--jn-ink); border-bottom-color:var(--jn-ink); }
.jn-actions{ justify-self:end; display:flex; align-items:center; gap:clamp(8px, 1.6vw, 16px); }
.jn-signin{
  display:inline-flex; align-items:center; min-height:44px; padding-inline:12px; font-family:var(--jn-sans);
  font-size:13px; font-weight:600; color:var(--jn-ink); text-decoration:none; white-space:nowrap;
}
.jn-cta, .jn-menu__cta{
  display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:0 22px; border-radius:999px;
  background:var(--jn-ink); color:var(--jn-paper); font-family:var(--jn-sans); font-size:15px; font-weight:500;
  text-decoration:none; white-space:nowrap; transition:background .2s ease;
}
/* The header's Download pill is the site's small button (landing: 40px high, 16px sides, weight 600). */
.jn-cta{ min-height:40px; padding:0 16px; font-weight:600; }
.jn-cta:hover, .jn-menu__cta:hover{ background:var(--jn-wine); color:var(--jn-paper); }
.jn-menu-btn{
  display:inline-flex; align-items:center; justify-content:center; width:44px; height:44px; padding:0; border:0;
  border-radius:999px; background:transparent; color:var(--jn-ink); cursor:pointer;
}
.jn-bars{ display:grid; gap:5px; width:20px; }
.jn-bars i{ display:block; height:2px; border-radius:2px; background:currentColor; }
.jn-menu{ position:fixed; inset:0; z-index:120; background:rgba(26,25,22,.46); overflow:hidden; }
.jn-menu[hidden]{ display:none; }
.jn-menu__panel{
  max-height:50dvh; overflow-y:auto; background:var(--jn-paper); border-radius:0 0 28px 28px;
  box-shadow:0 12px 32px rgba(26,25,22,.18); animation:jnMenuIn .22s ease both;
}
@keyframes jnMenuIn{ from{ transform:translateY(-12px); } to{ transform:none; } }
.jn-menu__in{ display:flex; flex-direction:column; padding:0 var(--jn-gutter) 20px; max-width:1240px; margin:0 auto; }
.jn-menu__top{ display:flex; align-items:center; justify-content:space-between; gap:18px; height:clamp(60px, 14vw, 70px); border-bottom:1px solid var(--jn-line); }
.jn-menu__links{ display:grid; padding:6px 0 4px; }
.jn-menu-link{
  display:flex; align-items:center; min-height:48px; font-family:"Instrument Serif", Georgia, serif;
  font-size:clamp(24px, 6vw, 30px); line-height:1.1; color:var(--jn-ink); text-decoration:none; border-bottom:1px solid var(--jn-line);
}
.jn-menu-link[aria-current="page"]{ color:var(--jn-wine); }
.jn-menu__cta{ margin-top:16px; min-height:52px; }
@media(min-width:1000px){ .jn-nav{ display:flex; } .jn-head .jn-menu-btn{ display:none; } }
@media(max-width:999px){ .jn-head__in{ display:flex; justify-content:space-between; } }
@media(max-width:599px){ .jn-head__in{ height:clamp(60px, 14vw, 70px); } .jn-head .jn-cta{ display:none; } }
@media(prefers-reduced-motion: reduce){ .jn-menu__panel{ animation:none; } }

/* ── Article header ──────────────────────────────── */
.post-head{ padding-top:56px; padding-bottom:8px; }
.crumbs{ font-size:12.5px; color:var(--ink-soft); letter-spacing:.04em; }
.crumbs a{ color:var(--ink-soft); text-decoration:none; }
.crumbs a:hover{ color:var(--oxblood); }
.crumbs span{ color:var(--ink-faint); padding:0 7px; }
.post-head .eyebrow{ margin-top:26px; }
.post-head h1{ font-size:clamp(38px, 6vw, 64px); max-width:20ch; margin:16px 0 0; }
.post-meta{ margin-top:18px; font-size:13px; color:var(--ink-soft); display:flex; gap:8px; align-items:center; flex-wrap:wrap; }
.post-meta .sep{ color:var(--ink-faint); }

/* ── The answer (AEO box) ────────────────────────── */
.the-answer{ margin:34px 0 0; padding:26px 28px; border:1px solid var(--line); border-left:3px solid var(--oxblood);
  border-radius:0 14px 14px 0; background:var(--paper-2); max-width:var(--measure); }
.the-answer .tag{ font-size:10.5px; letter-spacing:.22em; text-transform:uppercase; color:var(--oxblood); font-weight:600; }
.the-answer p{ margin:10px 0 0; font-size:18.5px; line-height:1.6; color:var(--ink-2);
  font-family:"Instrument Serif", Georgia, serif; }

/* ── Hero media frame (branded, photo optional) ──── */
.media{ position:relative; overflow:hidden; border-radius:18px; isolation:isolate; margin:40px 0 0;
  aspect-ratio:16/9; display:flex; align-items:center; justify-content:center; color:var(--paper);
  background:
    radial-gradient(85% 65% at 76% 14%, rgba(201,146,111,.45) 0%, rgba(201,146,111,0) 55%),
    radial-gradient(120% 110% at 26% 4%, var(--clay) 0%, var(--brown) 46%, #271615 82%, #190F0E 100%);
  box-shadow:0 40px 80px -40px rgba(20,15,14,.5); }
.media:has(img){ aspect-ratio:auto; display:block; }
.media img{ position:relative; width:100%; height:auto; z-index:1; }
.media .spec{ text-align:center; padding:26px; z-index:0; }
.media .spec .kind{ font-size:10.5px; letter-spacing:.24em; text-transform:uppercase; color:var(--clay-lt); }
.media .spec .desc{ font-family:"Instrument Serif", serif; font-size:24px; margin-top:8px; }
.media figcaption{ position:absolute; right:14px; bottom:12px; z-index:2; font-size:10.5px; letter-spacing:.06em;
  color:rgba(242,238,230,.75); background:rgba(22,21,19,.35); padding:4px 10px; border-radius:20px; backdrop-filter:blur(3px); }
@media(max-width:700px){
  .post-head{ padding-top:32px; }
  .media{ aspect-ratio:4/3; border-radius:14px; margin-top:28px; }
  .media:has(img){ aspect-ratio:auto; }
  .the-answer{ padding:20px 20px; margin-top:26px; }
  .the-answer p{ font-size:17.5px; }
}

/* ── Article body ────────────────────────────────── */
.post-body{ padding-top:26px; padding-bottom:60px; }
.post-body .inner{ max-width:var(--measure); }
.post-body h2{ font-size:clamp(26px, 3.4vw, 34px); margin:44px 0 14px; max-width:24ch; }
.post-body p{ margin:0 0 18px; color:var(--ink-2); }
.post-body strong{ color:var(--ink); }
.post-body a{ color:var(--oxblood); text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:3px; }
.post-body a:hover{ color:var(--oxblood-2); }
.post-body ul{ margin:0 0 18px; padding-left:0; list-style:none; }
.post-body li{ position:relative; padding-left:24px; margin-bottom:9px; color:var(--ink-2); }
.post-body li::before{ content:""; position:absolute; left:2px; top:.62em; width:7px; height:7px; border-radius:50%; background:var(--oxblood); }

/* ── FAQ ─────────────────────────────────────────── */
.faq-band{ background:var(--paper-2); padding:56px 0 64px; }
.faq-band h2{ font-size:clamp(28px, 3.6vw, 38px); margin:12px 0 0; }
.faq{ margin-top:28px; border-top:1px solid var(--line); max-width:var(--measure); }
.faq details{ border-bottom:1px solid var(--line); }
.faq summary{ cursor:pointer; list-style:none; padding:20px 0; display:flex; justify-content:space-between; align-items:center; gap:20px;
  font-family:"Instrument Serif", serif; font-size:21px; }
.faq summary::-webkit-details-marker{ display:none; }
.faq summary .pm{ color:var(--oxblood); font-size:24px; line-height:1; transition:transform .25s; flex:none; }
.faq details[open] summary .pm{ transform:rotate(45deg); }
.faq details p{ margin:0 0 22px; color:var(--ink-soft); font-size:16px; max-width:62ch; }

/* ── Related ─────────────────────────────────────── */
.related{ padding:56px 0 8px; }
.rel-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:26px; }
.rel-card{ border:1px solid var(--line); border-radius:14px; padding:22px 22px 20px; text-decoration:none; color:var(--ink);
  background:var(--paper); transition:transform .25s cubic-bezier(.2,.7,.2,1), box-shadow .25s; display:block; }
.rel-card:hover{ transform:translateY(-3px); box-shadow:0 22px 44px -28px rgba(20,15,14,.4); }
.rel-card .k{ font-size:10.5px; letter-spacing:.2em; text-transform:uppercase; color:var(--ink-soft); }
.rel-card .t{ font-family:"Instrument Serif", serif; font-size:21px; line-height:1.15; margin-top:9px; }
.rel-card .m{ margin-top:10px; font-size:13px; color:var(--oxblood); }
@media(max-width:760px){ .rel-grid{ grid-template-columns:1fr; } }

/* ── CTA (download / invite) ─────────────────────── */
.cta{ position:relative; overflow:hidden; color:var(--paper); isolation:isolate; margin-top:64px; }
.cta-bg{ position:absolute; inset:0; z-index:-1;
  background:radial-gradient(90% 120% at 80% 0%, var(--clay) 0%, var(--oxblood-2) 38%, #2A1614 78%, #1A0F0E 100%); }
.cta .wrap{ padding:72px 24px 76px; text-align:center; }
.cta .mirror-line{ font-family:"Instrument Serif", serif; font-style:italic; font-size:20px; color:var(--clay-lt); max-width:52ch; margin:0 auto; }
.cta h2{ font-size:clamp(34px, 5vw, 52px); margin:14px 0 12px; }
.cta h2 .dot{ color:#E7A07F; }
.cta > .wrap > p{ color:rgba(242,238,230,.85); font-size:17px; max-width:44ch; margin:0 auto 28px; }
.badges{ display:flex; gap:12px; justify-content:center; flex-wrap:wrap; }
.badge-btn{ display:inline-flex; align-items:center; gap:11px; text-decoration:none; color:var(--paper);
  border:1px solid rgba(242,238,230,.35); background:rgba(242,238,230,.07); border-radius:14px; padding:11px 20px 11px 15px;
  transition:transform .22s, background .22s, border-color .22s; }
.badge-btn:hover{ transform:translateY(-2px); background:rgba(242,238,230,.14); border-color:rgba(242,238,230,.6); }
.badge-btn svg{ width:24px; height:24px; flex:none; }
.badge-btn .bt{ text-align:left; line-height:1.15; }
.badge-btn .bt small{ display:block; font-size:10px; letter-spacing:.14em; text-transform:uppercase; color:rgba(242,238,230,.65); }
.badge-btn .bt b{ font-size:15.5px; font-weight:600; }
.cta .fine{ margin-top:22px; font-size:12.5px; color:rgba(242,238,230,.6); }
.cta .fine a{ color:rgba(242,238,230,.85); }

/* ── Footer (the site's one footer: Night ground, the big wordmark + drop, store buttons, two link columns, a sitemap row) ── */
.jf{
  --jf-night:#100F0E; --jf-cream:#fff; --jf-wine:#7A2238; --jf-lift:#F2E4E6; --jf-gutter:clamp(20px,4.4vw,60px);
  --jf-display:"Bodoni Moda", "Didot", Georgia, serif;
  --jf-sans:"Inter", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;
  background:var(--jf-night); color:var(--jf-cream);
  font-family:var(--jf-sans); font-size:15.5px; line-height:1.78; letter-spacing:.003em;
  padding:clamp(20px,2.5vw,36px) 0 clamp(34px,4.4vw,64px);
}
.jf *{ box-sizing:border-box; }
.jf :where(p){ margin:0; }
.jf a{ color:inherit; text-decoration:none; }
.jf__in{ max-width:1320px; margin:0 auto; padding:0 var(--jf-gutter); }
.jf__rule{ height:1px; background:rgba(250,249,246,.24); }
.jf__rubric{ padding-top:14px; font-size:10px; font-weight:500; letter-spacing:.22em; line-height:1.5; text-transform:uppercase; color:rgba(250,249,246,.5); }
.jf__mark{
  font-family:var(--jf-display); font-weight:500;
  font-size:min(calc((min(100vw, 1320px) - 2 * var(--jf-gutter)) / 8.5), 220px);
  line-height:.8; letter-spacing:.01em; text-transform:uppercase;
  text-align:center; white-space:nowrap; margin:clamp(14px,2vw,28px) 0 clamp(20px,2.5vw,36px);
}
.jf__mark sup{ font-size:.09em; letter-spacing:0; vertical-align:top; position:relative; top:.9em; line-height:0; margin-left:.08em; }
.jf__drop{ height:.72em; width:auto; display:inline-block; vertical-align:baseline; margin-left:.22em; }
.jf__stores{ display:flex; flex-wrap:wrap; justify-content:center; gap:11px; margin-top:clamp(20px,2.5vw,36px); }
.jf-store{
  display:inline-flex; align-items:center; gap:11px;
  border:1px solid var(--jf-wine); padding:11px 19px 11px 16px;
  background:var(--jf-wine); color:var(--jf-cream);
  transition:background .25s ease, color .25s ease, border-color .25s ease;
}
.jf-store:hover, .jf-store:focus-visible{ background:var(--jf-cream); border-color:var(--jf-cream); color:var(--jf-night); }
.jf-glyph{ width:15px; height:18px; flex:none; fill:currentColor; }
.jf-store__txt{ display:flex; flex-direction:column; line-height:1.15; }
.jf-store__small{ font-size:8.5px; letter-spacing:.2em; text-transform:uppercase; opacity:.68; }
.jf-store__big{ font-size:12.5px; letter-spacing:.08em; text-transform:uppercase; }
.jf__line{ text-align:center; font-family:var(--jf-display); font-style:italic; font-size:clamp(16px,2.2vw,24px); line-height:1.4; margin-top:clamp(28px,4vw,52px); white-space:pre-wrap; }
.jf__line .bar{ color:var(--jf-lift); font-style:normal; }
.jf__groups{ display:flex; flex-wrap:wrap; justify-content:center; gap:24px clamp(40px,8vw,120px); margin-top:clamp(32px,4.4vw,60px); }
.jf-group{ display:flex; flex-direction:column; align-items:flex-start; gap:10px; min-width:120px; }
.jf-group__title{ font-size:9.5px; letter-spacing:.18em; text-transform:uppercase; color:rgba(250,249,246,.42); margin-bottom:2px; }
.jf-group a{ font-size:13px; color:rgba(250,249,246,.78); }
.jf-group a:hover{ color:var(--jf-cream); }
.jf__meta{
  display:flex; flex-wrap:wrap; align-items:baseline; justify-content:space-between;
  gap:12px 24px; padding-top:clamp(28px,3.6vw,50px); margin-top:clamp(28px,3.6vw,50px);
  border-top:1px solid rgba(250,249,246,.2);
}
.jf__nav{ display:flex; flex-wrap:wrap; gap:8px 22px; }
.jf__nav a{ font-size:9.5px; letter-spacing:.18em; text-transform:uppercase; color:rgba(250,249,246,.62); }
.jf__nav a:hover{ color:var(--jf-cream); }
.jf__micro{ font-size:9.5px; font-weight:500; letter-spacing:.18em; line-height:1.5; text-transform:uppercase; color:rgba(250,249,246,.5); }
@media(min-width:900px){ .jf__mark{ letter-spacing:-.008em; font-size:min(calc((min(100vw, 1320px) - 2 * var(--jf-gutter)) / 8), 220px); } }
@media(max-width:480px){
  .jf__stores{ display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:10px; }
  .jf-store{ justify-content:center; gap:9px; padding:12px 10px; min-width:0; }
  .jf-store__small{ letter-spacing:.12em; white-space:nowrap; }
  .jf-store__big{ letter-spacing:.05em; white-space:nowrap; }
}
@media(max-width:359px){ .jf__stores{ grid-template-columns:minmax(0, 1fr); } }
@media(max-width:520px){
  .jf__groups{ display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:28px 20px; }
  .jf-group{ min-width:0; }
}
@media(pointer:coarse){
  .jf__nav a, .jf-group a{ position:relative; }
  .jf__nav a::after, .jf-group a::after{ content:""; position:absolute; inset:-13px -8px; }
}

/* ── Journal hub: the A–Z index of every answer ─── */
.hub-hero{ padding-top:64px; padding-bottom:30px; }
.hub-hero h1{ font-size:clamp(42px, 7vw, 76px); max-width:16ch; margin:16px 0 0; }
.hub-hero .lede{ font-size:18.5px; color:var(--ink-2); max-width:52ch; margin:20px 0 0; }
.cat-nav{ display:flex; gap:8px; flex-wrap:wrap; margin:28px 0 0; }
.cat-nav a{ display:inline-flex; align-items:center; min-height:44px; padding:0 18px; border:1px solid var(--line); border-radius:999px;
  background:var(--card); font-family:"Albert Sans", "Hanken Grotesk", sans-serif; font-size:13px; font-weight:600; text-decoration:none; color:var(--ink-2);
  transition:background .2s, color .2s, border-color .2s; }
.cat-nav a:hover{ background:var(--ink); border-color:var(--ink); color:var(--paper); }
.hub-sec{ padding:clamp(32px, 4vw, 52px) 0 10px; }
.hub-sec h2{ font-size:clamp(26px, 3.4vw, 34px); }
.hub-sec .count{ color:var(--ink-faint); font-family:"Albert Sans", "Hanken Grotesk", sans-serif; font-size:13px; font-weight:600; letter-spacing:.06em; margin-left:10px; }
.q-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:0 clamp(24px, 3vw, 48px); margin:18px 0 8px; border-top:1.5px solid var(--ink); }
.q-item{ border-bottom:1px solid var(--line); text-decoration:none; color:var(--ink); padding:16px 6px; min-height:44px; display:flex; justify-content:space-between; gap:14px; align-items:baseline; transition:background .15s, color .15s; }
.q-item:hover{ background:var(--paper-2); }
.q-item .q{ font-family:"Instrument Serif", Georgia, serif; font-size:clamp(19px, 1.8vw, 22px); line-height:1.22; text-wrap:pretty; }
.q-item .arrow{ color:var(--oxblood); flex:none; font-size:15px; }
@media(max-width:820px){ .q-grid{ grid-template-columns:1fr; } }

/* ── Journal magazine hub ("Style guide") ────────── */
.mag-page{ font-family:"Albert Sans", "Hanken Grotesk", -apple-system, sans-serif; }
.wrap.mag-masthead, .wrap.mag-leadwrap, .wrap.mag-sec, .wrap.mag-split{ max-width:1320px; padding-inline:clamp(20px, 4.4vw, 60px); }
.mag-masthead{ padding-top:clamp(28px, 3.4vw, 48px); padding-bottom:0; text-align:center; }
.mag-eyebrow{ margin:0; font-size:11px; font-weight:500; letter-spacing:.22em; text-transform:uppercase; color:var(--ink-soft); }
.mag-title{ font-family:"Instrument Serif", Georgia, serif; margin:10px 0 0; font-size:clamp(56px, 10vw, 132px); line-height:.9; letter-spacing:-.02em; }
.mag-title em{ font-style:italic; color:var(--oxblood); }
.mag-nav{ display:flex; flex-wrap:wrap; justify-content:center; gap:10px clamp(18px, 2.6vw, 36px);
  margin-top:clamp(20px, 2.6vw, 34px); padding:14px 0; border-top:1.5px solid var(--ink); border-bottom:1px solid var(--line); }
.mag-nav a{ font-size:11px; font-weight:500; letter-spacing:.18em; text-transform:uppercase; text-decoration:none; color:var(--ink); white-space:nowrap; transition:color .2s; }
.mag-nav a:hover{ color:var(--oxblood); }
.mag-kicker{ margin:4px 0 0; font-size:11px; font-weight:500; letter-spacing:.18em; text-transform:uppercase; color:var(--oxblood); }

.mag-leadwrap{ padding-top:clamp(24px, 3vw, 44px); }
.mag-lead{ display:block; text-decoration:none; color:var(--ink); }
.mag-lead__fig{ margin:0; aspect-ratio:21/9; overflow:hidden; background:var(--paper-3); }
.mag-lead__fig picture{ display:block; width:100%; height:100%; }
.mag-lead__fig img, .mag-card__fig img, .mag-tile__fig img, .mag-feature__fig img{ width:100%; height:100%; object-fit:cover; }
.mag-lead__body{ text-align:center; padding:clamp(22px, 3vw, 40px) 0 0; max-width:820px; margin:0 auto; }
.mag-lead__title{ font-family:"Instrument Serif", Georgia, serif; margin:12px 0 0; font-size:clamp(32px, 5vw, 64px); line-height:1.02; letter-spacing:-.018em; text-wrap:balance; }
.mag-lead:hover .mag-lead__title{ color:var(--oxblood); }
.mag-lead__cta{ margin:18px 0 0; display:inline-block; font-size:11px; letter-spacing:.16em; text-transform:uppercase; color:var(--ink-soft);
  border-bottom:1px solid var(--ink-faint); padding-bottom:3px; }

.mag-sec{ padding-top:clamp(50px, 6.4vw, 96px); }
.mag-sec__head{ display:flex; align-items:baseline; justify-content:space-between; gap:20px; padding-bottom:16px; border-bottom:1.5px solid var(--ink); }
.mag-sec__title{ font-family:"Instrument Serif", Georgia, serif; font-size:clamp(22px, 2.5vw, 31px); line-height:1.16; }
.mag-sec__note{ margin:0; font-size:11px; letter-spacing:.16em; text-transform:uppercase; color:var(--ink-soft); text-align:right; }
.mag-grid{ display:grid; gap:clamp(22px, 3vw, 44px) clamp(16px, 2vw, 28px); padding-top:clamp(22px, 3vw, 40px); }
.mag-grid--latest{ grid-template-columns:repeat(auto-fill, minmax(min(100%, 230px), 1fr)); }
.mag-grid--body{ grid-template-columns:repeat(auto-fill, minmax(min(100%, 300px), 1fr)); }
.mag-grid--wardrobe{ grid-template-columns:repeat(auto-fill, minmax(min(100%, 200px), 1fr)); gap:clamp(20px, 2.6vw, 36px) clamp(14px, 1.8vw, 24px); }
.mag-card, .mag-tile{ display:grid; gap:10px; align-content:start; text-decoration:none; color:var(--ink); }
.mag-card__fig, .mag-tile__fig{ margin:0; overflow:hidden; background:var(--paper-3); aspect-ratio:4/5; }
.mag-grid--body .mag-card__fig{ aspect-ratio:3/4; }
.mag-tile__fig{ aspect-ratio:1/1; }
.mag-card__title{ font-family:"Instrument Serif", Georgia, serif; font-size:clamp(19px, 1.8vw, 23px); line-height:1.22; letter-spacing:-.006em; text-wrap:pretty; }
.mag-grid--body .mag-card__title{ font-size:clamp(21px, 2.1vw, 27px); line-height:1.2; }
.mag-tile__title{ font-family:"Instrument Serif", Georgia, serif; margin-top:4px; font-size:clamp(17px, 1.6vw, 21px); line-height:1.24; text-wrap:pretty; }
.mag-card:hover .mag-card__title, .mag-tile:hover .mag-tile__title{ color:var(--oxblood); }
.mag-card__fig img, .mag-tile__fig img{ transition:transform .5s cubic-bezier(.2,.7,.2,1); }
.mag-card:hover .mag-card__fig img, .mag-tile:hover .mag-tile__fig img{ transform:scale(1.03); }

.mag-feature{ margin-top:clamp(56px, 7vw, 104px); background:var(--ink); color:var(--paper); display:flex; flex-wrap:wrap; align-items:stretch; }
.mag-feature__fig{ margin:0; flex:1 1 360px; min-width:0; aspect-ratio:4/5; position:relative; background:var(--ink-2); overflow:hidden; }
.mag-feature__fig img{ position:absolute; inset:0; }
.mag-feature__body{ flex:1 1 360px; min-width:0; display:flex; flex-direction:column; justify-content:center; padding:clamp(44px, 6vw, 100px) clamp(20px, 4.4vw, 60px); }
.mag-feature .mag-kicker{ color:rgb(194,100,122); }
.mag-feature__link{ text-decoration:none; color:var(--paper); }
.mag-feature__title{ font-family:"Instrument Serif", Georgia, serif; margin:16px 0 0; font-size:clamp(32px, 4.4vw, 60px); line-height:1.02; letter-spacing:-.018em; max-width:16ch; text-wrap:balance; }
.mag-feature__link:hover .mag-feature__title{ color:var(--clay-lt); }
.mag-occ{ margin-top:clamp(24px, 3vw, 40px); border-top:1px solid rgba(242,238,230,.24); }
.mag-occ__item{ display:flex; align-items:baseline; gap:16px; padding:14px 0; border-bottom:1px solid rgba(242,238,230,.18); text-decoration:none; color:var(--paper); transition:color .2s; }
.mag-occ__item:hover{ color:var(--clay-lt); }
.mag-occ__n{ font-family:"Instrument Serif", Georgia, serif; font-style:italic; font-size:14px; color:rgba(242,238,230,.6); min-width:2ch; }
.mag-occ__t{ font-family:"Instrument Serif", Georgia, serif; font-size:clamp(18px, 1.7vw, 22px); line-height:1.3; }

.mag-split{ display:flex; flex-wrap:wrap; gap:clamp(30px, 4vw, 64px); padding-top:clamp(56px, 7vw, 104px); padding-bottom:clamp(40px, 5vw, 72px); }
.mag-main{ flex:7 1 360px; min-width:0; }
.mag-read{ flex:4 1 260px; min-width:0; }
.mag-read__list{ list-style:none; margin:0; padding:0; }
.mag-read__list li{ border-bottom:1px solid var(--line); }
.mag-read__item{ display:flex; gap:18px; align-items:baseline; padding:18px 0; text-decoration:none; color:var(--ink); transition:color .2s; }
.mag-read__item:hover{ color:var(--oxblood); }
.mag-read__n{ font-family:"Instrument Serif", Georgia, serif; font-size:clamp(28px, 3vw, 40px); line-height:1; color:var(--oxblood); min-width:1.2em; }
.mag-read__body{ display:grid; gap:4px; }
.mag-read__cat{ font-size:11px; font-weight:500; letter-spacing:.16em; text-transform:uppercase; color:var(--ink-soft); }
.mag-read__t{ font-family:"Instrument Serif", Georgia, serif; font-size:clamp(18px, 1.7vw, 22px); line-height:1.28; }

.wrap.hub-index{ max-width:1320px; padding-inline:clamp(20px, 4.4vw, 60px); padding-top:clamp(56px, 7vw, 104px); }
.hub-index__intro{ padding-top:14px; border-top:1.5px solid var(--ink); padding-bottom:6px; }
.hub-index__intro h2{ font-size:clamp(30px, 4vw, 54px); line-height:1.02; letter-spacing:-.016em; margin-top:18px; max-width:18ch; text-wrap:balance; }
.hub-index__intro .eyebrow{ font-family:"Albert Sans", "Hanken Grotesk", sans-serif; font-weight:600; letter-spacing:.14em; }
.hub-sec > .wrap{ max-width:1320px; padding-inline:clamp(20px, 4.4vw, 60px); }

@media(max-width:760px){
  .mag-lead__fig{ aspect-ratio:4/5; }
  .mag-sec__head{ flex-direction:column; align-items:flex-start; gap:6px; }
  .mag-sec__note{ text-align:left; }
  .mag-feature__fig{ flex-basis:100%; }
  .mag-feature__body{ flex-basis:100%; }
  .mag-read{ flex-basis:100%; }
}
@media(max-width:560px){
  .mag-grid--latest, .mag-grid--wardrobe{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
  .mag-card__title{ font-size:17px; }
}
@media (prefers-reduced-motion: reduce){ .mag-card__fig img, .mag-tile__fig img{ transition:none; } .mag-card:hover .mag-card__fig img, .mag-tile:hover .mag-tile__fig img{ transform:none; } }

::selection{ background:var(--oxblood); color:var(--paper); }
:focus-visible{ outline:2px solid var(--oxblood); outline-offset:3px; border-radius:4px; }
@media (prefers-reduced-motion: reduce){ html{ scroll-behavior:auto; } .btn,.rel-card,.badge-btn{ transition:none; } }
