/* neisleep.top — Night Edition */
/* A dark editorial system: midnight + brass + ivory */

:root{
  --night:      #0c1018;
  --night-2:    #131826;
  --night-3:    #1a2030;
  --ivory:      #efe7d4;
  --ivory-2:    #d8d1bf;
  --ivory-soft: rgba(239, 231, 212, 0.74);
  --ivory-mute: rgba(239, 231, 212, 0.48);
  --line:       rgba(239, 231, 212, 0.12);
  --line-2:     rgba(239, 231, 212, 0.24);
  --brass:      #c9a25a;
  --brass-soft: rgba(201, 162, 90, 0.16);
  --crimson:    #b8423d;

  --ar:    "El Messiri", "IBM Plex Sans Arabic", "Helvetica Neue", system-ui, sans-serif;
  --ar-2:  "IBM Plex Sans Arabic", "Helvetica Neue", system-ui, sans-serif;
  --serif: "Cormorant Garamond", "Times New Roman", serif;
  --mono:  "IBM Plex Mono", ui-monospace, monospace;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--night);color:var(--ivory);
  font-family:var(--ar-2);line-height:1.75;-webkit-font-smoothing:antialiased;font-size:16px}
html{scroll-behavior:smooth;scroll-padding-top:88px}
::selection{background:var(--brass);color:var(--night)}
a{color:inherit}
img{max-width:100%;display:block}

.shell{max-width:1320px;margin:0 auto;padding:0 56px}
.shell-tight{max-width:920px;margin:0 auto;padding:0 56px}

/* ────────── starfield background (very subtle) ────────── */
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;
  background:
    radial-gradient(1.2px 1.2px at 12% 18%, rgba(239,231,212,.22), transparent 50%),
    radial-gradient(1px 1px at 78% 32%, rgba(239,231,212,.18), transparent 50%),
    radial-gradient(1.4px 1.4px at 32% 78%, rgba(239,231,212,.16), transparent 50%),
    radial-gradient(1px 1px at 62% 88%, rgba(239,231,212,.16), transparent 50%),
    radial-gradient(1.2px 1.2px at 88% 62%, rgba(239,231,212,.14), transparent 50%),
    radial-gradient(900px 600px at 12% -10%, rgba(201,162,90,.06), transparent 60%),
    radial-gradient(700px 500px at 100% 100%, rgba(184,66,61,.05), transparent 60%);
}
body > *{position:relative;z-index:1}

/* ────────── TOPBAR ────────── */
.topbar{
  position:sticky;top:0;z-index:50;
  background:rgba(12, 16, 24, 0.78);backdrop-filter:blur(16px);
  border-bottom:1px solid var(--line);
}
.topbar-inner{
  max-width:1320px;margin:0 auto;padding:18px 56px;
  display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:32px;
}
.brand{display:inline-flex;align-items:center;gap:12px;color:var(--ivory);text-decoration:none}
.brand-mark{width:38px;height:38px;border-radius:10px;background:var(--night-2);
  border:1px solid var(--line-2);
  display:inline-flex;align-items:center;justify-content:center;color:var(--brass);flex:none;
  position:relative;overflow:hidden}
.brand-mark::after{content:"";position:absolute;inset:0;
  background:radial-gradient(circle at 30% 30%, rgba(239,231,212,.06), transparent 60%)}
.brand-mark svg{width:22px;height:22px;position:relative;z-index:2}
.brand-wm{display:flex;flex-direction:column;gap:0;direction:ltr;line-height:1}
.brand-wm .name{font-family:var(--ar);font-weight:700;font-size:19px;letter-spacing:.005em;color:var(--ivory)}
.brand-wm .name i{font-style:italic;font-weight:400;font-family:var(--serif);font-size:22px;color:var(--brass);letter-spacing:.01em;margin-inline-start:1px}
.brand-wm .tag{font-family:var(--mono);font-size:9.5px;letter-spacing:.28em;text-transform:uppercase;color:var(--ivory-mute);margin-top:6px}

.dateline{display:flex;align-items:center;gap:0;justify-content:center;
  font-family:var(--mono);font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--ivory-mute)}
.dateline span{padding:0 18px;border-inline-end:1px solid var(--line)}
.dateline span:last-child{border-inline-end:0}
.dateline b{color:var(--brass);font-weight:500;margin-inline-end:6px}

.nav{display:flex;gap:4px;align-items:center;justify-self:end}
.nav a{font-family:var(--ar);font-weight:500;font-size:15px;color:var(--ivory-soft);text-decoration:none;
  padding:9px 16px;transition:color .2s ease;border-radius:999px}
.nav a:hover{color:var(--brass)}
.nav a.cta{background:var(--brass);color:var(--night);padding:10px 20px;font-weight:600;margin-inline-start:8px}
.nav a.cta:hover{background:var(--ivory);color:var(--night)}

/* ────────── EDITION RIBBON ────────── */
.ribbon{
  border-bottom:1px solid var(--line);
  font-family:var(--mono);font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--ivory-mute);
  overflow:hidden;
}
.ribbon-inner{
  max-width:1320px;margin:0 auto;padding:11px 56px;
  display:flex;justify-content:space-between;align-items:center;gap:32px;flex-wrap:wrap;
}
.ribbon .dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--crimson);
  vertical-align:middle;margin-inline-end:8px;animation:pulse 2.4s ease-in-out infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.35}}

/* ────────── COVER ────────── */
.cover{padding:80px 0 100px;position:relative;overflow:hidden}
.cover::before{content:"";position:absolute;inset:-200px -200px auto auto;
  width:720px;height:720px;border-radius:50%;
  background:radial-gradient(circle, rgba(201,162,90,0.12), transparent 60%);
  pointer-events:none;filter:blur(40px)}

.cover-grid{display:grid;grid-template-columns:1fr 440px;gap:80px;align-items:center}

.cover-left .kicker{
  display:inline-flex;align-items:center;gap:12px;
  font-family:var(--mono);font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--brass);
  margin-bottom:40px;
}
.cover-left .kicker .line{width:48px;height:1px;background:var(--brass)}
.cover-left .kicker .iss{color:var(--ivory-mute)}

.cover h1{
  font-family:var(--ar);font-weight:700;font-size:clamp(52px,8vw,128px);
  line-height:.98;letter-spacing:-.015em;margin:0;color:var(--ivory);max-width:14ch;text-wrap:balance;
}
.cover h1 .word-brass{color:var(--brass);font-weight:600}
.cover h1 .word-serif{font-family:var(--serif);font-style:italic;font-weight:400;font-size:1.05em;color:var(--ivory-2);letter-spacing:0;display:inline-block;transform:translateY(.06em)}

.cover .deck{font-family:var(--ar-2);font-weight:400;font-size:20.5px;line-height:1.75;
  color:var(--ivory-soft);max-width:54ch;margin:44px 0 0;text-wrap:pretty}
.cover .deck b{color:var(--ivory);font-weight:600}

.cover-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:56px;
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0}
.cover-stats .st{padding:0 22px;border-inline-end:1px solid var(--line);display:flex;flex-direction:column;gap:8px}
.cover-stats .st:last-child{border-inline-end:0}
.cover-stats .st:first-child{padding-inline-start:0}
.cover-stats .st .v{font-family:var(--serif);font-style:italic;font-weight:500;font-size:38px;color:var(--brass);
  line-height:1;direction:ltr;letter-spacing:-.01em}
.cover-stats .st .k{font-family:var(--mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--ivory-mute)}

/* Cover card — fake magazine front */
.coverart{
  aspect-ratio:3/4;background:linear-gradient(160deg,var(--night-2),var(--night-3));
  border:1px solid var(--line-2);border-radius:6px;padding:32px 28px;
  display:flex;flex-direction:column;justify-content:space-between;
  position:relative;overflow:hidden;
  box-shadow:0 60px 120px -40px rgba(0,0,0,.7), 0 0 0 1px rgba(201,162,90,.08);
}
.coverart::before{content:"";position:absolute;inset:0;
  background:
    radial-gradient(circle at 80% 20%, rgba(201,162,90,.22), transparent 50%),
    radial-gradient(circle at 20% 80%, rgba(184,66,61,.12), transparent 60%);
  pointer-events:none}
.coverart-top{display:flex;justify-content:space-between;align-items:start;position:relative;z-index:2}
.coverart-top .nm{font-family:var(--ar);font-weight:700;font-size:22px;color:var(--ivory);direction:ltr;letter-spacing:.01em}
.coverart-top .nm i{font-family:var(--serif);font-style:italic;color:var(--brass);font-weight:500;font-size:26px;margin-inline-start:1px}
.coverart-top .badge{font-family:var(--mono);font-size:9px;letter-spacing:.24em;text-transform:uppercase;color:var(--brass);
  border:1px solid var(--brass);padding:5px 9px;border-radius:999px}
.coverart-mid{position:relative;z-index:2;text-align:center;padding:32px 0}
.coverart-mid .moon{width:140px;height:140px;margin:0 auto;border-radius:50%;
  background:radial-gradient(circle at 35% 35%, #f0e3c0, #c9a25a 55%, #7a5b29 100%);
  box-shadow:0 0 60px rgba(201,162,90,.4), inset -20px -20px 50px rgba(0,0,0,.4);
  position:relative}
.coverart-mid .moon::after{content:"";position:absolute;inset:18px;border-radius:50%;
  background:radial-gradient(circle at 60% 40%, transparent 60%, rgba(0,0,0,.18) 80%);
  mix-blend-mode:overlay}
.coverart-mid .mtitle{font-family:var(--serif);font-style:italic;font-size:32px;color:var(--ivory);
  margin-top:24px;line-height:1.1;font-weight:400;letter-spacing:.005em}
.coverart-mid .msub{font-family:var(--ar-2);font-size:14px;color:var(--ivory-soft);margin-top:12px}
.coverart-bot{position:relative;z-index:2;display:flex;justify-content:space-between;
  font-family:var(--mono);font-size:9.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--ivory-mute)}
.coverart-bot b{color:var(--brass);font-weight:500;direction:ltr}

/* ────────── SECTION CHROME ────────── */
.section{padding:120px 0;border-top:1px solid var(--line);position:relative}
.section-marker{
  display:flex;align-items:baseline;justify-content:space-between;gap:32px;
  margin-bottom:64px;padding-bottom:24px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.section-marker .lhs{display:flex;flex-direction:column;gap:14px;max-width:42ch}
.section-marker .num{font-family:var(--mono);font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--brass);
  display:inline-flex;align-items:center;gap:14px}
.section-marker .num::before{content:"";width:36px;height:1px;background:var(--brass)}
.section-marker h2{font-family:var(--ar);font-weight:700;font-size:clamp(40px,4.6vw,68px);
  line-height:1.02;letter-spacing:-.015em;margin:0;color:var(--ivory);text-wrap:balance}
.section-marker h2 i{font-family:var(--serif);font-style:italic;font-weight:400;color:var(--brass);font-size:1.04em;letter-spacing:0}
.section-marker .rhs{font-family:var(--ar-2);font-size:16px;line-height:1.75;color:var(--ivory-soft);
  max-width:38ch;margin:0;align-self:end;text-wrap:pretty}

/* ────────── LIST CONTROLS ────────── */
.controls{
  display:flex;flex-wrap:wrap;gap:32px;align-items:center;justify-content:space-between;
  padding:0 0 48px;
}
.filterpills{display:flex;gap:6px;flex-wrap:wrap}
.pill{
  appearance:none;background:transparent;color:var(--ivory-soft);
  border:1px solid var(--line-2);
  font-family:var(--ar);font-weight:500;font-size:14px;
  padding:9px 18px;border-radius:999px;cursor:pointer;transition:all .2s ease;
}
.pill:hover{color:var(--ivory);border-color:var(--ivory-soft)}
.pill[aria-pressed="true"]{background:var(--ivory);color:var(--night);border-color:var(--ivory)}
.count-chip{font-family:var(--mono);font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--ivory-mute);
  display:inline-flex;align-items:baseline;gap:8px}
.count-chip b{font-family:var(--serif);font-style:italic;font-weight:500;color:var(--brass);font-size:24px;direction:ltr;letter-spacing:-.01em}

/* ────────── HOTEL SPREADS ────────── */
.spreads{display:flex;flex-direction:column;gap:0}
.spread{
  padding:80px 0;border-top:1px solid var(--line);
  display:grid;grid-template-columns:1.05fr 1fr;gap:64px;align-items:center;
  transition:opacity .25s ease;
}
.spread[data-hidden="true"]{display:none}
.spread:nth-child(even){grid-template-columns:1fr 1.05fr}
.spread:nth-child(even) .spread-art{order:-1}

/* The art card */
.spread-art{
  position:relative;aspect-ratio:5/6;
  background:linear-gradient(165deg, var(--night-2), var(--night-3));
  border:1px solid var(--line-2);border-radius:8px;
  display:flex;flex-direction:column;justify-content:space-between;
  padding:28px;overflow:hidden;
  box-shadow:0 50px 100px -40px rgba(0,0,0,.7);
}
.spread-art::before{content:"";position:absolute;inset:0;
  background:
    radial-gradient(circle at 75% 25%, rgba(201,162,90,.18), transparent 50%),
    radial-gradient(circle at 20% 90%, rgba(184,66,61,.10), transparent 55%);
  pointer-events:none}
.spread:nth-child(3n+1) .spread-art::before{
  background:radial-gradient(circle at 75% 25%, rgba(201,162,90,.22), transparent 50%),
    radial-gradient(circle at 20% 90%, rgba(184,66,61,.10), transparent 55%)}
.spread:nth-child(3n+2) .spread-art{background:linear-gradient(165deg,#1b1e2a,#0e1422)}
.spread:nth-child(3n+2) .spread-art::before{background:radial-gradient(circle at 30% 30%, rgba(125,158,192,.18), transparent 55%)}
.spread:nth-child(3n+3) .spread-art{background:linear-gradient(165deg,#1d1722,#0d0f1a)}
.spread:nth-child(3n+3) .spread-art::before{background:radial-gradient(circle at 70% 80%, rgba(190,108,108,.18), transparent 55%)}

.art-top{display:flex;justify-content:space-between;align-items:start;position:relative;z-index:2}
.art-rank{display:flex;flex-direction:column;gap:0;line-height:1}
.art-rank .rk{font-family:var(--serif);font-style:italic;font-weight:500;font-size:140px;color:var(--brass);
  line-height:.8;direction:ltr;letter-spacing:-.04em;
  text-shadow:0 4px 24px rgba(201,162,90,.3)}
.art-rank .rkl{font-family:var(--mono);font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:var(--ivory-mute);margin-top:14px}
.art-meta{text-align:end;font-family:var(--mono);font-size:9.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--ivory-mute);display:flex;flex-direction:column;gap:6px}
.art-meta .latin{font-family:var(--serif);font-style:italic;font-weight:500;font-size:18px;color:var(--ivory);direction:ltr;letter-spacing:.005em;text-transform:none}

.art-center{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;flex:1;padding:24px 0}
.art-glyph{
  width:200px;height:200px;border-radius:50%;
  border:1px solid var(--line-2);
  display:flex;align-items:center;justify-content:center;
  font-family:var(--serif);font-style:italic;font-size:88px;color:var(--brass);
  background:radial-gradient(circle at 35% 35%, rgba(201,162,90,.18), transparent 60%);
  position:relative;
}
.art-glyph::before{content:"";position:absolute;inset:-1px;border-radius:50%;
  border:1px dashed rgba(201,162,90,.4);transform:scale(1.18)}
.art-glyph svg{width:80px;height:80px;color:var(--brass)}

.art-bot{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:end;gap:12px}
.art-bot .photo-note{font-family:var(--mono);font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ivory-mute);max-width:18ch;line-height:1.6}
.art-bot .badge-dot{font-family:var(--mono);font-size:9.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--brass);
  border:1px solid var(--brass);padding:5px 10px;border-radius:999px;flex:none}

/* The body */
.spread-body{display:flex;flex-direction:column;gap:18px}
.spread-place{
  display:inline-flex;align-items:center;gap:10px;
  font-family:var(--mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--crimson);
}
.spread-place::before{content:"";width:18px;height:1px;background:var(--crimson)}

.spread-body h3{
  font-family:var(--ar);font-weight:700;font-size:clamp(36px,3.4vw,52px);
  line-height:1.05;margin:0;letter-spacing:-.015em;color:var(--ivory);text-wrap:balance;
}
.spread-body h3 a{color:inherit;text-decoration:none;transition:color .2s ease;
  background-image:linear-gradient(var(--brass),var(--brass));
  background-size:0 1px;background-repeat:no-repeat;background-position:0 100%;transition:background-size .35s ease,color .2s ease}
.spread-body h3 a:hover{color:var(--brass);background-size:100% 1px}
.spread-body .latin{font-family:var(--serif);font-style:italic;font-weight:500;font-size:22px;color:var(--ivory-mute);
  direction:ltr;letter-spacing:.005em;margin-top:-4px}

.spread-headline{font-family:var(--serif);font-style:italic;font-weight:500;font-size:24px;color:var(--brass);
  line-height:1.35;margin:6px 0 2px;letter-spacing:0;text-wrap:balance;direction:rtl}

.spread-lede{font-family:var(--ar-2);font-size:16.5px;line-height:1.95;color:var(--ivory-soft);
  margin:6px 0 0;text-wrap:pretty;max-width:58ch;font-weight:400}

.spread-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.spread-tag{font-family:var(--ar);font-weight:500;font-size:12.5px;color:var(--ivory-soft);
  background:var(--night-2);padding:6px 12px;border-radius:4px;border:1px solid var(--line)}

/* Spec rail */
.spec-rail{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:16px;
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0}
.spec-rail .c{padding:0 16px;border-inline-end:1px solid var(--line);display:flex;flex-direction:column;gap:6px}
.spec-rail .c:last-child{border-inline-end:0}
.spec-rail .c:first-child{padding-inline-start:0}
.spec-rail .ck{font-family:var(--mono);font-size:9.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--ivory-mute)}
.spec-rail .cv{font-family:var(--serif);font-style:italic;font-weight:500;font-size:24px;color:var(--ivory);direction:ltr;line-height:1.05;letter-spacing:-.01em}
.spec-rail .cv.score{color:var(--brass)}
.spec-rail .cv small{font-family:var(--mono);font-style:normal;font-size:10px;color:var(--ivory-mute);letter-spacing:.1em;margin-inline-start:2px}

/* Editorial note + table */
.spread-extras{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:14px}
.ext-quote{background:var(--night-2);border:1px solid var(--line);border-inline-start:3px solid var(--brass);
  padding:18px 20px;border-radius:0 6px 6px 0}
.ext-quote .qh{font-family:var(--mono);font-size:9.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--brass);margin-bottom:10px}
.ext-quote p{font-family:var(--serif);font-style:italic;font-weight:500;font-size:18px;line-height:1.5;color:var(--ivory);margin:0}
.ext-fields{display:flex;flex-direction:column;gap:0}
.ext-fields .row{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding:11px 0;border-bottom:1px dashed var(--line)}
.ext-fields .row:last-child{border-bottom:0}
.ext-fields .fk{font-family:var(--mono);font-size:9.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--ivory-mute);flex:none}
.ext-fields .fv{font-family:var(--ar-2);font-weight:500;font-size:14px;color:var(--ivory);text-align:end;line-height:1.5}

.spread-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:16px}
.btn{appearance:none;border:0;cursor:pointer;
  font-family:var(--ar);font-weight:600;font-size:14px;
  padding:13px 22px;border-radius:999px;
  display:inline-flex;align-items:center;gap:10px;text-decoration:none;
  transition:all .2s ease}
.btn .arr{font-family:var(--serif);font-style:italic;font-size:18px;line-height:.9}
.btn-brass{background:var(--brass);color:var(--night)}
.btn-brass:hover{background:var(--ivory)}
.btn-ghost{background:transparent;border:1px solid var(--line-2);color:var(--ivory)}
.btn-ghost:hover{border-color:var(--brass);color:var(--brass)}

/* ────────── METHODOLOGY TABLE ────────── */
.method-table{
  border:1px solid var(--line-2);border-radius:8px;overflow:hidden;
  background:var(--night-2);
}
.method-row{display:grid;grid-template-columns:60px 1.4fr 2.6fr 200px;align-items:center;
  gap:24px;padding:24px 28px;border-bottom:1px solid var(--line);
  transition:background .25s ease}
.method-row:last-child{border-bottom:0}
.method-row:hover{background:var(--night-3)}
.method-row.head{background:transparent;
  font-family:var(--mono);font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:var(--brass);
  padding-block:14px}
.method-row .mix{font-family:var(--mono);font-size:11px;letter-spacing:.16em;color:var(--brass);direction:ltr;font-weight:500}
.method-row .mt{font-family:var(--ar);font-weight:700;font-size:22px;color:var(--ivory);line-height:1.2}
.method-row .md{font-family:var(--ar-2);font-size:14.5px;color:var(--ivory-soft);line-height:1.7;text-wrap:pretty}
.method-row .mw{display:flex;align-items:center;gap:14px;justify-content:end}
.method-row .mw-bar{flex:1;height:6px;background:var(--line);border-radius:3px;overflow:hidden;position:relative}
.method-row .mw-bar::after{content:"";position:absolute;inset:0;width:var(--w);background:var(--brass);border-radius:3px}
.method-row .mw-val{font-family:var(--serif);font-style:italic;font-weight:500;font-size:22px;color:var(--brass);direction:ltr;letter-spacing:-.01em;flex:none;min-width:3ch;text-align:end}

/* ────────── FAQ ACCORDION ────────── */
.faq-list{display:flex;flex-direction:column;gap:0;border-top:1px solid var(--line)}
.faq-list details{border-bottom:1px solid var(--line);padding:24px 0;cursor:pointer}
.faq-list summary{list-style:none;display:flex;justify-content:space-between;align-items:flex-start;gap:24px}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary .qnum{font-family:var(--mono);font-size:11px;letter-spacing:.18em;color:var(--brass);
  flex:none;direction:ltr;line-height:1.7;min-width:44px;font-weight:500}
.faq-list summary .qtext{font-family:var(--ar);font-weight:600;font-size:21px;line-height:1.45;color:var(--ivory);flex:1;text-wrap:balance;transition:color .2s ease}
.faq-list details[open] summary .qtext{color:var(--brass)}
.faq-list summary .qicon{flex:none;width:32px;height:32px;border-radius:50%;
  border:1px solid var(--line-2);display:inline-flex;align-items:center;justify-content:center;
  font-family:var(--ar-2);font-size:20px;color:var(--ivory);line-height:1;transition:all .25s ease;font-weight:300}
.faq-list details[open] summary .qicon{transform:rotate(45deg);background:var(--brass);color:var(--night);border-color:var(--brass)}
.faq-list details p{font-family:var(--ar-2);font-size:15.5px;color:var(--ivory-soft);margin:18px 76px 0 0;
  line-height:1.95;padding-inline-start:44px}

/* ────────── COLOPHON / FOOTER ────────── */
.colophon{padding:120px 0 40px;border-top:1px solid var(--line);background:linear-gradient(180deg, transparent, rgba(19,24,38,0.6))}
.colophon-top{
  display:grid;grid-template-columns:1.4fr 1fr;gap:64px;align-items:end;
  padding-bottom:56px;border-bottom:1px solid var(--line);
}
.colophon-tag{font-family:var(--ar);font-weight:500;font-size:clamp(28px,2.6vw,40px);color:var(--ivory);
  line-height:1.3;margin:0;max-width:24ch;text-wrap:balance}
.colophon-tag em{font-family:var(--serif);font-style:italic;font-weight:500;color:var(--brass)}

.newsletter{display:flex;flex-direction:column;gap:14px;max-width:360px;width:100%;justify-self:end}
.newsletter-h{font-family:var(--mono);font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--ivory-mute)}
.newsletter form{display:flex;align-items:center;gap:8px;
  background:var(--night-2);border:1px solid var(--line-2);border-radius:999px;padding:5px 5px 5px 18px}
.newsletter input{appearance:none;background:transparent;border:0;outline:none;flex:1;
  font-family:var(--ar-2);font-size:14px;padding:9px 4px;color:var(--ivory)}
.newsletter input::placeholder{color:var(--ivory-mute)}
.newsletter button{appearance:none;border:0;background:var(--brass);color:var(--night);
  font-family:var(--ar);font-weight:600;font-size:14px;
  padding:10px 20px;border-radius:999px;cursor:pointer;transition:background .2s}
.newsletter button:hover{background:var(--ivory)}

.colophon-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:48px;padding-top:56px}
.colophon-grid h6{font-family:var(--mono);font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--brass);margin:0 0 18px;font-weight:500}
.colophon-grid ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.colophon-grid a{font-family:var(--ar);color:var(--ivory-soft);text-decoration:none;font-size:14.5px;font-weight:500;transition:color .2s}
.colophon-grid a:hover{color:var(--brass)}
.colophon-grid p{font-family:var(--ar-2);color:var(--ivory-soft);font-size:14px;line-height:1.85;margin:0;max-width:32ch;font-weight:400}

.colophon-bottom{border-top:1px solid var(--line);margin-top:56px;padding:24px 0 0;
  display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;
  font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--ivory-mute)}
.colophon-bottom .latin{direction:ltr;text-transform:none;letter-spacing:.04em}

/* ────────── RESPONSIVE ────────── */
@media (max-width:1100px){
  .cover-grid{grid-template-columns:1fr;gap:64px}
  .coverart{max-width:380px;justify-self:start}
  .spread, .spread:nth-child(even){grid-template-columns:1fr;gap:40px}
  .spread:nth-child(even) .spread-art{order:0}
  .spread-extras{grid-template-columns:1fr}
  .method-row{grid-template-columns:48px 1fr;gap:14px;padding:20px 22px}
  .method-row .md{grid-column:1/-1}
  .method-row .mw{grid-column:1/-1;justify-content:start}
  .method-row.head .md, .method-row.head .mw{display:none}
  .colophon-grid{grid-template-columns:1fr 1fr;gap:32px}
  .colophon-top{grid-template-columns:1fr;gap:32px;align-items:start}
  .newsletter{justify-self:start}
}
@media (max-width:720px){
  .shell, .shell-tight, .topbar-inner, .ribbon-inner{padding-inline:20px}
  .topbar-inner{grid-template-columns:auto auto;gap:14px}
  .dateline{display:none}
  .nav a:not(.cta){display:none}
  .ribbon-inner{font-size:9.5px;letter-spacing:.18em}
  .cover{padding:48px 0 64px}
  .cover h1{font-size:clamp(40px,10vw,60px)}
  .cover .deck{font-size:17px}
  .cover-stats{grid-template-columns:repeat(2,1fr);gap:0}
  .cover-stats .st{padding:14px 16px;border-bottom:1px solid var(--line)}
  .cover-stats .st:nth-child(2n){border-inline-end:0}
  .cover-stats .st:nth-child(2n+1){padding-inline-start:0}
  .section{padding:64px 0}
  .section-marker{margin-bottom:40px}
  .spec-rail{grid-template-columns:repeat(2,1fr);gap:14px 0;border:1px solid var(--line);border-radius:6px;padding:14px}
  .spec-rail .c{padding:8px 12px;border-inline-end:1px solid var(--line)}
  .spec-rail .c:nth-child(2n){border-inline-end:0}
  .spread-body h3{font-size:30px}
  .spread-headline{font-size:20px}
  .colophon-grid{grid-template-columns:1fr 1fr;gap:24px}
  .faq-list summary .qtext{font-size:17px}
}
