@font-face { font-family: 'Bastliga'; src: url('/assets/fonts/BastligaOne.ttf') format('truetype'); font-weight: normal; font-style: normal; }

  html, body{ background:#0e0b09 !important; margin:0 !important; padding:0 !important; overflow-x:hidden; }
  #wrapper, #main, main, [id^="section"], [id^="container"], [class~="container"], [class~="wrapper"]{ background-color:transparent !important; }
  @media (prefers-reduced-motion: no-preference){ html{ scroll-behavior:smooth; } }

  #smw{
    /* ==================== YOUR PICTURES ====================
       Replace  none  with  url("https://your-image.jpg")     */
    --img-hero: url("/assets/images/hero.webp");   /* big hero background scene            */
    --img-evidence: url("/assets/images/evidence.webp");   /* hero case-file panel                 */
    --img-polaroid: url("/assets/images/polaroid.webp");   /* small tilted polaroid over the hero  */
    --img-fantasy: url("/assets/images/fantasy.webp");   /* The Work, card 01 — bloodied key (gritty/violent) */
    --img-erotica: url("/assets/images/psych.webp");   /* The Work, card 02 — seductive, blood-edged */
    --img-psych: url("/assets/images/work-psychology.webp");   /* The Work, card 03 — skull on book */
    --img-band: url("/assets/images/band.webp");   /* full-width band, "Exhibit A"         */
    --img-series-cover: url("/assets/images/series-cover.webp");   /* Series Cover                     */
    --img-book-1: url("/assets/books/cover-pull.jpg");   /* Series thumbnail, Pull               */
    --img-book-2: url("/assets/books/cover-hold.jpg");   /* Series thumbnail, Hold               */
    --img-book-3: url("/assets/books/cover-breach.jpg");   /* Series thumbnail, Breach             */
    --img-book-4: url("/assets/books/cover-residue.jpg");   /* Series thumbnail, Residue            */
    --img-book-5: url("/assets/books/cover-claim.jpg");   /* Series thumbnail, Claim              */
    --img-book-6: url("/assets/books/cover-resolve.jpg");   /* Series thumbnail, Resolve            */
    --img-about-paper: url("/assets/images/about-paper.webp");   /* paper texture behind About           */
    --img-portrait: url("/assets/images/portrait.jpeg");   /* author photo in About                */
    --img-journal-1: url("/assets/images/journal-1.webp");   /* Journal entry 01                     */
    --img-journal-2: url("/assets/images/journal-2.webp");   /* Journal entry 02                     */
    --img-journal-3: url("/assets/images/journal-3-corridor.webp");   /* Journal entry 03 — graded corridor */
    /* ====================================================== */

    color-scheme:dark;
    --ink:#0e0b09; --ink-2:#161110; --panel:#1c1613;
    --bone:#ffffff; --bone-dim:#e6ded1; --faint:#b0a89a;
    --blood:#c0261b; --oxblood:#7e2820;
    --line:rgba(236,228,212,0.12); --line-soft:rgba(236,228,212,0.06);
    --measure:40rem;
    --pad-x:clamp(1.3rem,5vw,5.5rem);
    --band-y:clamp(4rem,10vw,8rem);

    position:relative; width:100vw; margin-left:calc(50% - 50vw);
    background:radial-gradient(120% 80% at 50% -8%, #1a1310 0%, #0e0b09 55%, #070504 100%);
    color:var(--bone);
    font-family:"Newsreader", Georgia, serif; font-optical-sizing:auto;
    font-size:clamp(1.2rem,1.15rem + 0.5vw,1.45rem);
    line-height:1.62; letter-spacing:0.002em;
    -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
    text-align:left;
  }
  #smw *{ box-sizing:border-box; }

  /* grain + heavy vignette */
  #smw::before{
    content:""; position:absolute; inset:0; pointer-events:none; z-index:2; opacity:0.07; mix-blend-mode:overlay;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  }
  #smw::after{
    content:""; position:absolute; inset:0; pointer-events:none; z-index:2;
    background:radial-gradient(120% 90% at 50% 40%, transparent 55%, rgba(0,0,0,0.55) 100%);
  }
  #smw > *{ position:relative; z-index:3; }

  #smw a{ color:inherit; }
  #smw ::selection{ background:var(--blood); color:#fff; }
  #smw :focus-visible{ outline:2px solid var(--blood); outline-offset:3px; }
  #smw .wrap{ max-width:78rem; margin:0 auto; padding-inline:var(--pad-x); }

  #smw .lbl{ font-family:"Courier Prime", monospace; text-transform:uppercase; letter-spacing:0.2em; font-size:0.7rem; color:#fff; }
  #smw .rule{ height:1px; background:var(--line); flex:1; }

  /* ---------- top bar ---------- */
  #smw .topbar{ position:relative; z-index:8; border-bottom:1px solid var(--line-soft); }
  #smw .topbar .wrap{ display:flex; align-items:center; justify-content:space-between; gap:1.2rem; padding-block:1.05rem; }
  #smw .brand{ font-family:"Courier Prime", monospace; letter-spacing:0.24em; text-transform:uppercase; font-size:0.82rem; color:var(--bone); text-decoration:none; }
  #smw nav{ display:none; gap:clamp(1rem,2.4vw,2.3rem); }
  #smw nav a{ font-family:"Courier Prime", monospace; font-size:0.72rem; letter-spacing:0.16em; text-transform:uppercase; text-decoration:none; color:#fff; padding-bottom:3px; border-bottom:1px solid transparent; transition:color .25s, border-color .25s; }
  #smw nav a:hover, #smw nav a:focus-visible{ color:var(--bone); border-color:var(--blood); }
  #smw .topline{ display:none; font-family:"Courier Prime", monospace; font-size:0.68rem; letter-spacing:0.18em; text-transform:uppercase; color:#fff; text-align:right; line-height:1.5;  display:none !important; }
  @media (min-width:820px){ #smw nav{ display:flex; } #smw .topline{ display:block;  display:none !important; } }

  /* ---------- vertical rail ---------- */
  #smw .rail{ position:absolute; left:0.5rem; top:0; bottom:0; width:1.6rem; display:none; align-items:center; justify-content:center; z-index:6;  display:none !important; }
  #smw .rail .tick{ position:absolute; top:1.2rem; left:50%; transform:translateX(-50%); width:1px; height:2.4rem; background:var(--blood); }
  #smw .rail .rtxt{ writing-mode:vertical-rl; transform:rotate(180deg); font-family:"Courier Prime", monospace; font-size:0.66rem; letter-spacing:0.3em; text-transform:uppercase; color:#fff; }
  @media (min-width:980px){ #smw .rail{ display:flex;  display:none !important; } }

  /* ---------- hero ---------- */
  #smw .hero{ position:relative; padding-block:clamp(2.4rem,5vw,4rem) var(--band-y); overflow:hidden;
    background-image:var(--img-hero); background-size:cover; background-position:center; }
  #smw .hero .heroscrim{ position:absolute; inset:0; z-index:1; pointer-events:none;
    background:linear-gradient(90deg,rgba(14,11,9,0.95) 0%,rgba(14,11,9,0.84) 38%,rgba(14,11,9,0.45) 72%,rgba(14,11,9,0.6) 100%),
               linear-gradient(180deg,rgba(14,11,9,0.7) 0%,transparent 30%,rgba(7,5,4,0.85) 100%); }
  #smw .hero .wrap{ position:relative; z-index:3; }
  #smw .hero-grid{ display:grid; grid-template-columns:1fr; gap:clamp(2rem,5vw,4rem); align-items:center; }
  @media (min-width:900px){ #smw .hero-grid{ grid-template-columns:0.8fr 1.2fr; } }

  #smw .eyebrow{ font-family:"Courier Prime", monospace; font-size:0.72rem; letter-spacing:0.22em; text-transform:uppercase; color:#fff; margin:0 0 1.4rem; }
  #smw .name{
    font-family:"Bodoni Moda", serif; font-optical-sizing:auto;
    font-weight:800; line-height:0.86; letter-spacing:0.005em; text-transform:uppercase;
    font-size:clamp(3.6rem,13vw,9.5rem); margin:0; color:var(--bone);
    opacity:0; transform:translateY(14px); animation:smwRise 1s cubic-bezier(.16,.84,.34,1) .2s forwards;
  }
  #smw .name .sm{ display:block; font-size:0.62em; letter-spacing:0.02em; }
  @keyframes smwRise{ to{ opacity:1; transform:none; } }
  #smw .lead{ max-width:30rem; margin:2rem 0 0; font-size:clamp(1.4rem, 1.2rem + 1vw, 1.8rem); line-height:1.42; color:var(--bone); font-weight:360; text-wrap:pretty; }
  #smw .lead .quiet{ display:block; margin-top:0.8rem; font-style:italic; color:#fff; white-space:nowrap; font-size:0.86em; }
  #smw .cta{ display:inline-block; margin-top:2.2rem; font-family:"Courier Prime", monospace; font-size:0.8rem; letter-spacing:0.2em; text-transform:uppercase; color:var(--blood); text-decoration:none; border:1px solid var(--blood); padding:0.95rem 1.7rem; transition:background .2s, color .2s; }
  #smw .cta:hover, #smw .cta:focus-visible{ background:var(--blood); color:#0e0b09; }
  #smw .hand{ font-family:"Bastliga", cursive; font-size:clamp(4rem, 8vw, 7.5rem); letter-spacing:0; word-spacing:normal; color:#fff;  line-height:0.6; display:block; width:fit-content; white-space:nowrap; margin-top:2.4rem; transform:rotate(-4deg); }

  /* evidence panel + stacked polaroid */
  #smw .heroright{ position:relative; }
  #smw .evidence{ position:relative; border:1px solid var(--line); background:linear-gradient(150deg,#201814,#0c0908 70%); min-height:24rem; padding:1.6rem; overflow:hidden; box-shadow:0 30px 60px -34px #000;
    background-image:var(--img-evidence); background-size:cover; background-position:center; }
  #smw .evidence .evscrim{ position:absolute; inset:0; z-index:1; pointer-events:none; background:linear-gradient(200deg,rgba(12,9,8,0.72) 0%,rgba(12,9,8,0.28) 45%,rgba(12,9,8,0.8) 100%); }
  #smw .evidence .caseno, #smw .evidence .casetxt{ position:relative; z-index:2; }
  #smw .evidence .caseno{ font-family:"Courier Prime", monospace; font-size:1.05rem; letter-spacing:0.16em; text-transform:uppercase; color:#fff; margin:0; white-space:nowrap; }
  #smw .evidence .casetxt{ font-family:"Courier Prime", monospace; font-size:1.15rem; line-height:1.7; color:var(--bone); max-width:28rem; margin:0.7rem 0 0; }
  #smw .evidence .verses{ position:absolute; left:1.6rem; bottom:1.5rem; z-index:2; display:grid; gap:0.35rem; }
  #smw .evidence .verses span{ font-family:"Courier Prime", monospace; font-size:0.78rem; letter-spacing:0.24em; text-transform:uppercase; color:#cfc6b6; }
  #smw .stamp{ position:absolute; right:0.6rem; bottom:1.2rem; z-index:2; width:132px; height:132px; color:var(--blood); transform:rotate(-13deg); opacity:0.9; }
  #smw .polaroid{ display:none; position:relative; z-index:5; width:clamp(9rem, 12vw, var(--pol-w, 13rem)); margin:var(--pol-y, -4rem) auto 0; transform:translateX(var(--pol-x, 0rem)) rotate(var(--pol-rot, -6deg)); transform-origin:center top; background:#14100e; border:1px solid rgba(236,228,212,0.14); box-shadow:0 26px 48px -26px #000; padding:0.6rem 0.6rem 2.2rem; }
  #smw .polaroid .ph{ aspect-ratio:1/1; background:#241b16 var(--img-polaroid) center/cover no-repeat; }
  #smw .polaroid .exb{ position:absolute; left:0.6rem; bottom:0.7rem; font-family:"Courier Prime", monospace; font-size:0.9rem; letter-spacing:0.14em; text-transform:uppercase; color:#fff; }
  @media (min-width:900px){ #smw .polaroid{ display:block; } }
  #smw .darkaside{ margin-top:1rem; font-family:"Courier Prime", monospace; font-size:1rem; letter-spacing:0.18em; text-transform:uppercase; color:#fff; text-align:right; line-height:1.6; }

  /* ---------- band + section head ---------- */
  #smw .band{ padding-block:var(--band-y); border-top:1px solid var(--line-soft); position:relative; }
  #smw .fhead{ display:flex; align-items:center; gap:1.2rem; margin-bottom:2.6rem; }
  #smw .fhead .right{ margin-left:auto; }
  #smw h2{ font-family:"Bodoni Moda", serif; font-weight:700; letter-spacing:0.01em; line-height:1; font-size:clamp(2.2rem,1.4rem + 2.8vw,3.6rem); margin:0 0 1.4rem; color:var(--bone); }
  #smw .h2row{ display:flex; align-items:center; gap:1.4rem; margin:0 0 1.4rem; }
  #smw .h2row h2{ margin:0; }
  #smw .h2row .rule2{ height:1px; background:var(--line); flex:1 1 2rem; }
  #smw .card .shot::after{ content:""; position:absolute; inset:0.5rem; border:1px solid rgba(236,228,212,0.14); pointer-events:none; }
  #smw .intro{ color:var(--bone); max-width:36rem; margin:0 0 2.6rem; font-size:1.4rem; text-wrap:pretty; }
  #smw p{ max-width:var(--measure); }

  /* ---------- exhibit band (full width picture) ---------- */
  #smw .exhibit{ position:relative; height:clamp(15rem,32vw,26rem); border-top:1px solid var(--line-soft); border-bottom:1px solid var(--line-soft); overflow:hidden;
    background:#141010 var(--img-band) center/cover no-repeat; }
  #smw .exhibit .exscrim{ position:absolute; inset:0; background:linear-gradient(180deg,rgba(14,11,9,0.72) 0%,rgba(14,11,9,0.2) 45%,rgba(7,5,4,0.8) 100%); }
  #smw .exhibit .excap{ position:absolute; left:var(--pad-x); bottom:1.6rem; display:grid; gap:0.4rem; }
  #smw .exhibit .excap .sub{ font-family:"Courier Prime", monospace; font-size:0.68rem; letter-spacing:0.18em; text-transform:uppercase; color:#fff; }

  /* ---------- the work / journal cards ---------- */
  #smw .worklay{ display:grid; grid-template-columns:1fr; gap:2.4rem; }
  @media (min-width:920px){ #smw .worklay{ grid-template-columns:12rem 1fr; } }
  #smw .index{ font-family:"Courier Prime", monospace; font-size:1rem; font-weight:bold; letter-spacing:0.1em; text-transform:uppercase; color:#fff; line-height:2.1; }
  #smw .index .ihead{ color:var(--blood); margin-bottom:0.5rem; font-size:1.1rem; font-weight:bold; }
  #smw .cards{ display:grid; grid-template-columns:1fr; gap:1.6rem; }
  @media (min-width:720px){ #smw .cards{ grid-template-columns:repeat(3,1fr); } }
  #smw .card{ border:1px solid var(--line); background:linear-gradient(180deg,#161110,#0d0a09); display:flex; flex-direction:column; }
  #smw .card .shot{ aspect-ratio:4/3; position:relative; background:#1a1412 none center/cover no-repeat; border-bottom:1px solid var(--line); display:flex; align-items:center; justify-content:center; }
  #smw .card .shot span{ font-family:"Courier Prime", monospace; font-size:0.95rem; font-weight:bold; text-shadow:0 2px 6px #000; letter-spacing:0.24em; text-transform:uppercase; color:#fff; }
  #smw #journal .card .shot{ aspect-ratio:2/3; background-position:center; }
  #smw .card .meta{ display:flex; align-items:center; gap:0.6rem; padding:1rem 1.1rem 0; font-family:"Courier Prime", monospace; font-size:0.85rem; letter-spacing:0.07em; white-space:nowrap; text-transform:uppercase; color:#fff; }
  #smw .card .meta .open{ margin-left:auto; color:var(--blood); }
  #smw .card h3{ font-family:"Bodoni Moda", serif; font-weight:600; font-size:1.8rem; letter-spacing:0.01em; margin:0.7rem 1.1rem 0.4rem; color:var(--bone); }
  #smw .card p{ margin:0 1.1rem 1.3rem; color:#fff; font-size:1.15rem; line-height:1.6; font-style:italic;  text-wrap:pretty; }
  #smw .card .readit{ margin:auto 1.1rem 1.3rem; font-family:"Courier Prime", monospace; font-size:0.68rem; letter-spacing:0.14em; text-transform:uppercase; color:var(--blood); text-decoration:none; border-bottom:1px solid var(--oxblood); width:fit-content; padding-bottom:2px; transition:color .2s, border-color .2s; }
  #smw .card .readit:hover{ color:var(--bone); border-color:var(--blood); }
  #smw .card--soon{ opacity:0.72; }
  #smw .card--soon .shot{ filter:grayscale(0.5) brightness(0.82); }
  #smw .card--soon .meta .open{ color:var(--faint); }
  #smw .card-soon{ margin:auto 1.1rem 1.3rem; font-family:"Courier Prime", monospace; font-size:0.68rem; letter-spacing:0.18em; text-transform:uppercase; color:var(--faint); border:1px solid var(--line); width:fit-content; padding:0.4rem 0.8rem; }

  /* ---------- series / sheets ---------- */
  #smw .sheet{ display:grid; grid-template-columns:1fr; gap:2.2rem; }
  @media (min-width:860px){ #smw .sheet{ grid-template-columns:12rem minmax(0, 1fr); gap:clamp(2rem,4vw,3.4rem); align-items:start; } }
  #smw .marg .ref{ font-family:"Courier Prime", monospace; font-size:0.7rem; letter-spacing:0.16em; text-transform:uppercase; color:#fff; margin:0;  display:none !important; }
  #smw .note{ margin-top:1.1rem; padding-left:0.9rem; border-left:1px solid var(--oxblood); font-family:"Courier Prime", monospace; font-size:1.15rem; line-height:1.6; color:#fff; font-style:italic; }
  #smw .note .src{ display:block; margin-top:0.55rem; font-style:normal; letter-spacing:0.16em; text-transform:uppercase; font-size:0.85rem; color:#fff; }
  #smw .portrait{ margin-top:1.6rem; aspect-ratio:4/5; border:1px solid var(--line); box-shadow:0 22px 46px -28px #000; background:#1a1412 var(--img-portrait) top center/cover no-repeat; }
  @media (min-width:860px){ #smw .marg{ position:sticky; top:2rem; } }

  #smw .series-head{ display:grid; grid-template-columns:1fr; gap:2.5rem; margin:0 0 3rem; align-items:start; }
  #smw .series-head .coverph { max-width: 460px; }
  @media (min-width:1080px){ #smw .series-head{ grid-template-columns:460px minmax(0,1fr); gap:3.5rem; } }
  #smw .coverph{ position:relative; aspect-ratio:2/3; overflow:hidden; background:linear-gradient(160deg,#241b16,#0c0908); border:1px solid var(--line); box-shadow:0 26px 54px -30px #000; }
  #smw .coverph .cimg{ position:absolute; left:0; right:0; top:0; bottom:0; background:#1a1412 var(--img-series-cover) center/cover no-repeat; }
  #smw .coverph .spine-red{ position:absolute; left:0; top:0; bottom:0; width:4px; background:var(--blood); z-index:2; }
  #smw .coverph .ccap{ position:absolute; inset:auto 0 0 0; z-index:2; height:6.6rem; padding:0.9rem 1rem; display:grid; align-content:center; gap:0.3rem; background:#0c0908; border-top:1px solid var(--line); }
  #smw .coverph .t{ font-family:"Bodoni Moda", serif; font-weight:700; font-size:2.8rem; line-height:0.95; text-transform:uppercase; }
  #smw .coverph .s{ font-family:"Courier Prime", monospace; font-size:0.95rem; letter-spacing:0.16em; text-transform:uppercase; color:#fff; }
  #smw .bookend{ font-family:"Bodoni Moda", serif; font-weight:500; line-height:1.16; font-size:clamp(2rem, 1.5rem + 2vw, 3rem); max-width:32rem; margin:0 0 0.4rem; text-wrap:pretty; }
  #smw .bookend.b2{ color:var(--bone); font-style:italic; margin-bottom:1.6rem; }
  #smw .series-head .intro{ margin-bottom:0; }

  #smw .spine{ position:relative; padding-left:40px; }
  #smw .spine::before{ content:""; position:absolute; left:6px; top:0.4rem; bottom:0.8rem; width:1px; background:var(--oxblood); }
  #smw .vol{ position:relative; padding:3.5rem 0; border-top:1px solid var(--line); }
  #smw .vol:first-child{ border-top:none; padding-top:0; }
  #smw .vol::before{ content:""; position:absolute; left:-40px; top:3.7rem; width:11px; height:11px; border-radius:50%; background:var(--blood); border:1px solid var(--blood); box-sizing:border-box; }
  #smw .vol:first-child::before{ top:0.3rem; }
  #smw .vol.future::before{ background:transparent; border-color:#fff; }
  #smw .vol .thumb{ display:none; position:absolute; right:0; top:3.7rem; width:16rem; aspect-ratio:2/3; border:1px solid var(--line); box-shadow:0 16px 32px -22px #000; background:#1a1412 none center/cover no-repeat; }
  #smw .vol:first-child .thumb{ top:0.3rem; }
  @media (min-width:900px){ #smw .vol{ padding-right:20rem; min-height: 28rem; } #smw .vol:first-child{ min-height: 25rem; } #smw .vol .thumb{ display:block; } }
  #smw .vol .rn{ font-family:"Courier Prime", monospace; font-size:1.0rem; letter-spacing:0.18em; text-transform:uppercase; color:#fff; margin:0 0 0.3rem; }
  #smw .vol h3{ font-family:"Bodoni Moda", serif; font-weight:700; font-size:clamp(2.4rem, 2rem + 1.5vw, 3.2rem); text-transform:uppercase; letter-spacing:0.01em; margin:0 0 0.45rem; }
  #smw .vol .question{ margin:0 0 0.4rem; color:#fff; font-style:italic; font-size:1.45rem; }
  #smw .vol .essence{ margin:0 0 0.9rem; color:#fff; font-size:1.35rem; }
  #smw .status{ display:inline-block; font-family:"Courier Prime", monospace; font-size:0.8rem; letter-spacing:0.12em; text-transform:uppercase; color:var(--blood); border:1px solid var(--oxblood); padding:0.3rem 0.7rem; }
  #smw .status.soon{ color:#fff; border-color:#fff; }
  #smw .status.future{ color:#fff; border-color:var(--line); }
  #smw .status.available{ background:var(--blood); color:#0e0b09; border-color:var(--blood); font-weight:bold; }
  #smw .statusnote{ display:inline-block; margin-left:0.6rem; font-family:"Courier Prime", monospace; font-size:0.72rem; letter-spacing:0.14em; text-transform:uppercase; color:var(--faint); }
  #smw .vol .buy{ display:block; width:fit-content; margin-top:1rem; background:var(--blood); color:#0e0b09; text-decoration:none; font-family:"Courier Prime", monospace; font-size:0.74rem; font-weight:bold; letter-spacing:0.14em; text-transform:uppercase; padding:0.7rem 1.3rem; transition:background .2s, transform .06s; }
  #smw .vol .buy:hover{ background:#e03b2f; }
  #smw .vol .buy:active{ transform:translateY(1px); }
  #smw .about-amazon{ margin:1.4rem 0 0; }
  #smw .about-amazon a{ font-family:"Courier Prime", monospace; font-size:0.78rem; letter-spacing:0.14em; text-transform:uppercase; color:var(--faint); text-decoration:none; border-bottom:1px solid var(--oxblood); padding-bottom:2px; transition:color .2s, border-color .2s; }
  #smw .about-amazon a:hover{ color:var(--bone); border-color:var(--blood); }
  #smw .closer{ margin-top:2.8rem; max-width:34rem; font-family:"Bodoni Moda", serif; font-style:italic; font-weight:500; line-height:1.25; font-size:clamp(1.5rem, 1.3rem + 1vw, 2rem); color:var(--bone); }

  /* ---------- excerpt / first page ---------- */
  #smw .excerpt .exlay{ display:grid; grid-template-columns:1fr; gap:clamp(2rem,5vw,3.5rem); align-items:start; }
  @media (min-width:900px){ #smw .excerpt .exlay{ grid-template-columns:minmax(0,15rem) minmax(0,1fr); gap:clamp(2.5rem,5vw,4.5rem); } }
  #smw .excover{ position:relative; max-width:22rem; overflow:hidden; }
  #smw .excover img{ display:block; width:100%; height:auto; border:1px solid var(--line); box-shadow:0 30px 60px -32px #000; }
  #smw .excover .exseal{ position:absolute; top:1.7rem; left:-3rem; width:12rem; text-align:center; background:var(--blood); color:#0e0b09; font-family:"Courier Prime", monospace; font-size:0.7rem; font-weight:700; letter-spacing:0.3em; text-transform:uppercase; padding:0.42rem 0 0.4rem 0.3em; transform:rotate(-45deg); box-shadow:0 6px 16px -9px #000; z-index:2; }
  #smw .expaper{ position:relative; background:var(--ex-scene, radial-gradient(130% 110% at 28% 0%, #1a1310 0%, #0e0b09 55%, #070504 100%)) center/cover no-repeat; border:1px solid var(--line); box-shadow:0 26px 54px -34px #000; padding:clamp(1.6rem,4vw,3rem); }
  #smw .expaper::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(10,7,6,0.55),rgba(10,7,6,0.42)); pointer-events:none; }
  #smw .extext{ position:relative; z-index:1; max-width:42rem; font-family:"Newsreader", Georgia, serif; font-size:clamp(1.32rem,1.1rem + 0.6vw,1.7rem); line-height:1.72; color:var(--bone); text-wrap:pretty; }
  #smw .extext br{ display:block; content:""; margin-bottom:0.85rem; }
  #smw .extext::first-letter{ float:left; font-family:"Bodoni Moda", serif; font-weight:800; font-size:3.4em; line-height:0.78; padding:0.06em 0.14em 0 0; color:var(--blood); }
  #smw .exsource{ margin:1.5rem 0 0; font-family:"Courier Prime", monospace; font-size:0.9rem; letter-spacing:0.16em; text-transform:uppercase; color:var(--faint); }
  #smw .expage .readit{ display:inline-block; margin:1.3rem 0 0; }

  /* ---------- where the crows cross ---------- */
  #smw .crows-head{ display:grid; grid-template-columns:1fr; gap:1.6rem; align-items:center; margin:0 0 clamp(2rem,4vw,3rem); }
  @media (min-width:760px){ #smw .crows-head{ grid-template-columns:auto 1fr; gap:clamp(1.6rem,4vw,3rem); } }
  #smw .crows-logo{ width:clamp(7rem,14vw,10rem); height:auto; display:block; filter:drop-shadow(0 18px 40px #000); }
  #smw .crows-intro h2{ margin:0 0 0.9rem; }
  #smw .crows-intro .intro{ margin:0; }
  #smw .crows-map{ position:relative; width:min(100%,1080px); margin:clamp(2.4rem,5vw,4rem) auto; background:#000; text-align:center; }
  #smw .crows-map img{ display:block; width:100%; height:auto; margin:0 auto; }
  #smw .crows-map::before{ content:""; position:absolute; inset:0; pointer-events:none; box-shadow:inset 0 0 110px 24px #0e0b09; z-index:1; }
  #smw .crows-feature{ display:grid; grid-template-columns:1fr; gap:clamp(2rem,5vw,3.5rem); align-items:start; }
  @media (min-width:860px){ #smw .crows-feature{ grid-template-columns:300px minmax(0,1fr); gap:clamp(2.5rem,5vw,4rem); } }
  #smw .crows-cover{ position:relative; max-width:360px; }
  #smw .crows-cover img{ display:block; width:100%; height:auto; border:1px solid var(--line); box-shadow:0 30px 60px -30px #000; }
  #smw .crows-book .rn{ font-family:"Courier Prime", monospace; font-size:0.9rem; letter-spacing:0.2em; text-transform:uppercase; color:#fff; margin:0 0 0.4rem; }
  #smw .crows-book h3{ font-family:"Bodoni Moda", serif; font-weight:700; font-size:clamp(2.6rem,2rem + 2vw,3.6rem); text-transform:uppercase; letter-spacing:0.01em; margin:0 0 0.6rem; color:var(--bone); }
  #smw .crows-book .question{ margin:0 0 1rem; color:#fff; font-style:italic; font-size:1.45rem; }
  #smw .crows-book .essence{ margin:0 0 1.3rem; color:#fff; font-size:1.2rem; line-height:1.6; max-width:40rem; text-wrap:pretty; }
  #smw .crows-soon{ border:1px solid var(--line); border-left:3px solid var(--oxblood); padding:clamp(1.6rem,4vw,2.4rem); max-width:44rem; }
  #smw .crows-soon .status.future{ display:inline-block; margin:0 0 1rem; }
  #smw .crows-soon p{ margin:0; color:#fff; font-size:1.15rem; line-height:1.6; text-wrap:pretty; }

  /* ---------- field notes: string board ---------- */
  #smw .fieldnotes{ margin:clamp(2.6rem,5vw,4rem) 0 0; }
  #smw .fn-head{ display:flex; align-items:center; gap:1rem; margin:0 0 0.9rem; }
  #smw .fn-head .lbl{ font-family:"Courier Prime", monospace; font-size:0.72rem; letter-spacing:0.22em; text-transform:uppercase; color:var(--blood); white-space:nowrap; }
  #smw .fn-head .lbl.right{ color:var(--faint); }
  #smw .fn-head .rule{ flex:1; height:1px; background:var(--line); }
  #smw .fn-intro{ margin:0 0 1.2rem; max-width:46rem; color:#fff; font-size:1.12rem; line-height:1.6; text-wrap:pretty; }
  #smw .fn-scroll{ overflow-y:auto; overflow-x:hidden; max-height:clamp(520px,74vh,780px); -webkit-overflow-scrolling:touch; border:1px solid var(--line); box-shadow:inset 0 0 120px rgba(0,0,0,0.9); cursor:grab; scrollbar-color:var(--oxblood) #140f0e; }
  #smw .fn-scroll.is-drag{ cursor:grabbing; }
  #smw .fn-scroll::-webkit-scrollbar{ width:10px; }
  #smw .fn-scroll::-webkit-scrollbar-track{ background:#140f0e; }
  #smw .fn-scroll::-webkit-scrollbar-thumb{ background:var(--oxblood); }
  #smw .fn-board{ position:relative; width:100%; height:1500px; background-size:cover; background-position:center; }
  #smw .fn-map{ position:absolute; z-index:2; width:clamp(270px,42vw,540px); margin:0; transform:translate(-50%,0) rotate(var(--rot,-1deg)); transition:opacity 0.25s; }
  #smw .fn-map img{ display:block; width:100%; height:auto; box-shadow:0 24px 46px -14px #000; }
  #smw .fn-board::before{ content:""; position:absolute; inset:0; background:radial-gradient(ellipse at center, rgba(8,6,5,0.15) 0%, rgba(8,6,5,0.72) 100%); pointer-events:none; z-index:1; }
  #smw .fn-threads{ position:absolute; inset:0; width:100%; height:100%; z-index:2; pointer-events:none; overflow:visible; }
  #smw .fn-thread{ fill:none; stroke:#a81d1a; stroke-width:3; stroke-linecap:round; opacity:0.92; filter:url(#fn-yarn); transition:stroke 0.25s, stroke-width 0.25s, opacity 0.25s; }
  #smw .fn-thread.lit{ stroke:#e4231d; stroke-width:4.3; opacity:1; }
  #smw .fn-thread.mute{ opacity:0.12; }

  #smw .fn-anchor{ position:absolute; z-index:3; width:clamp(120px,10vw,150px); margin:0; transform:translate(-50%,0) rotate(-1.5deg); transition:opacity 0.25s, filter 0.25s; }
  #smw .fn-anchor img{ display:block; width:100%; height:auto; border:5px solid #efe8da; border-bottom-width:30px; box-shadow:0 16px 30px -10px #000, 0 2px 0 rgba(0,0,0,0.5); filter:saturate(0.9) contrast(1.02); }
  #smw .fn-anchor figcaption{ position:absolute; left:8px; right:8px; bottom:6px; text-align:center; font-family:"Special Elite", monospace; font-size:0.6rem; letter-spacing:0.06em; text-transform:uppercase; color:#1a1512; line-height:1.15; }
  #smw .fn-anchor.mute{ opacity:0.4; filter:grayscale(0.4); }

  #smw .fn-note{ position:absolute; z-index:4; width:clamp(175px,15vw,210px); margin:0; padding:1.15rem 1.15rem 1.9rem; background:linear-gradient(170deg,#efe7d2,#ddd0b3); color:#20170f; transform:translate(-50%,0) rotate(var(--rot,0deg)); box-shadow:0 16px 26px -12px rgba(0,0,0,0.95); transition:opacity 0.25s, filter 0.25s, transform 0.18s; outline:none; }
  #smw .fn-note::after{ content:""; position:absolute; inset:0; background:radial-gradient(circle at 78% 92%, rgba(110,20,16,0.22), transparent 42%); mix-blend-mode:multiply; pointer-events:none; }
  #smw .fn-text{ margin:0; font-family:"Special Elite", "Courier Prime", monospace; font-size:0.98rem; line-height:1.5; letter-spacing:0.01em; }
  #smw .fn-stamp{ position:absolute; left:1.15rem; bottom:0.6rem; font-family:"Special Elite", monospace; font-size:0.58rem; letter-spacing:0.1em; text-transform:uppercase; color:#8a1f16; }
  #smw a.fn-note{ display:block; text-decoration:none; color:#20170f; cursor:pointer; }
  #smw .fn-note--link{ width:clamp(240px,27vw,310px); padding-bottom:1.2rem; }
  #smw .fn-note--link .fn-stamp{ position:static; display:block; left:auto; bottom:auto; margin-top:0.85rem; }
  #smw .fn-read{ display:block; margin-top:0.25rem; font-family:"Special Elite", monospace; font-size:0.64rem; letter-spacing:0.08em; text-transform:uppercase; color:#8a1f16; }
  #smw .fn-note--link:hover .fn-read, #smw .fn-note--link:focus-visible .fn-read{ color:#c0261b; }
  #smw .fn-note:hover, #smw .fn-note:focus-visible{ transform:translate(-50%,-4px) rotate(var(--rot,0deg)); filter:brightness(1.06); }
  #smw .fn-note.mute{ opacity:0.26; filter:grayscale(0.5); }

  #smw .fn-tack{ position:absolute; top:-9px; left:50%; width:16px; height:16px; margin-left:-8px; border-radius:50%; z-index:5; background:radial-gradient(circle at 35% 30%, #ff5a4d 0 20%, #b4120f 55%, #5e0807 100%); box-shadow:0 3px 5px rgba(0,0,0,0.85), inset 0 -2px 3px rgba(0,0,0,0.5); }
  #smw .fn-anchor .fn-tack{ top:-7px; }
  #smw .fn-hint{ margin:0.8rem 0 0; font-family:"Courier Prime", monospace; font-size:0.66rem; letter-spacing:0.12em; text-transform:uppercase; color:var(--faint); }
  @media (max-width:640px){ #smw .fn-board{ height:1800px; } #smw .fn-note{ width:clamp(150px,44vw,185px); } #smw .fn-anchor{ width:clamp(96px,26vw,130px); } }

  /* ---------- feed the crows (support) ---------- */
  #smw .feed-sheet{ display:grid; grid-template-columns:1fr; gap:2rem; margin-top:1.6rem; }
  @media (min-width:860px){ #smw .feed-sheet{ grid-template-columns:minmax(0,0.82fr) minmax(0,1fr); gap:clamp(2rem,4.2vw,3.6rem); align-items:stretch; } }
  #smw .feed-art{ position:relative; margin:0; overflow:hidden; background:#000; border:1px solid var(--line); box-shadow:0 20px 60px -34px #000; }
  #smw .feed-art img{ display:block; width:100%; height:100%; max-height:26rem; object-fit:cover; object-position:50% 38%; }
  @media (min-width:860px){ #smw .feed-art img{ max-height:none; min-height:30rem; } }
  #smw .feed-art::after{ content:""; position:absolute; inset:0; pointer-events:none; box-shadow:inset 0 0 90px -20px #000; }
  #smw .feed-main{ display:flex; flex-direction:column; align-self:center; }
  #smw .feed-note{ margin:0 0 1.3rem; padding-left:0.9rem; border-left:2px solid var(--blood); font-family:"Courier Prime", monospace; font-size:0.74rem; line-height:1.5; letter-spacing:0.06em; color:var(--faint); max-width:14rem; font-style:italic; }
  #smw .feed-lead{ margin:0 0 1rem; max-width:44rem; color:#fff; font-style:italic; font-size:clamp(1.2rem,1rem + 1vw,1.5rem); line-height:1.5; text-wrap:pretty; }
  #smw .feed-text{ margin:0 0 1.6rem; max-width:44rem; color:var(--bone-dim); font-size:1.12rem; line-height:1.6; text-wrap:pretty; }
  #smw .feed-btn{ display:flex; align-items:center; gap:0.85rem; width:100%; max-width:30rem; justify-content:center; font-size:0.94rem; letter-spacing:0.18em; padding:1.15rem 1.9rem; background:linear-gradient(180deg,#9e2017,#6f1a13); border:1px solid #c0261b; box-shadow:0 14px 34px -20px #c0261b, inset 0 1px 0 #ffffff1a; color:#fff; }
  #smw .feed-btn:hover{ background:linear-gradient(180deg,#b7261b,#7e2018); }
  #smw .feed-cup{ width:1.35rem; height:1.35rem; flex:0 0 auto; }
  #smw .feed-arr{ margin-left:auto; }
  #smw .feed-fine{ margin:1rem 0 0; font-family:"Courier Prime", monospace; font-size:0.72rem; letter-spacing:0.1em; text-transform:uppercase; color:var(--faint); }
  #smw .corr-art{ position:relative; margin:1.6rem 0 2.4rem; overflow:hidden; background:#000; border:1px solid var(--line); box-shadow:0 20px 60px -34px #000; }
  #smw .corr-art img{ display:block; width:100%; height:clamp(180px,30vw,340px); object-fit:cover; object-position:50% 34%; }
  #smw .corr-art::after{ content:""; position:absolute; inset:0; pointer-events:none; box-shadow:inset 0 0 120px -24px #000; }

  /* ---------- about / method ---------- */
  #smw #findings{ overflow:hidden; }
  #smw #findings .paper{ position:absolute; inset:0; z-index:0; background:#0c0908 var(--img-about-paper) center/cover no-repeat; }
  #smw #findings .paper::after{ content:""; position:absolute; inset:0; background:rgba(12,9,8,0.88); }
  #smw #findings .wrap{ position:relative; z-index:2; }
  #smw .creds{ margin-top:2rem; padding-top:1.4rem; border-top:1px solid var(--line); font-family:"Courier Prime", monospace; font-size:1.05rem; line-height:1.7; color:var(--bone); max-width:36rem; }
  #smw .method-close{ margin:2.4rem 0 0; font-family:"Bodoni Moda", serif; font-weight:700; line-height:1.05; font-size:clamp(1.9rem,1.3rem + 2.2vw,3rem); text-transform:uppercase; letter-spacing:0.02em; color:var(--bone); }
  #smw .method-close span{ color:var(--blood); }
  #smw .sigrow{ display:flex; align-items:flex-end; justify-content:flex-end; gap:1rem; margin-top:2.4rem; }
  #smw .sig{ display:block; width:min(340px,72%); height:auto; margin-left:auto; transform:rotate(-1deg); }

  /* ---------- correspondence ---------- */
  #smw .btn-link{ display:inline-block; background:var(--blood); color:#0e0b09; text-decoration:none; font-family:"Courier Prime", monospace; font-size:0.8rem; letter-spacing:0.14em; text-transform:uppercase; padding:0.9rem 1.6rem; margin-top:1.4rem; transition:background .2s, transform .06s; }
  #smw .btn-link:hover{ background:#e03b2f; }
  #smw .btn-link:active{ transform:translateY(1px); }
  #smw .block-split{ margin-top:2.8rem; padding-top:2.2rem; border-top:1px solid var(--line); }
  #smw form{ display:flex; flex-wrap:wrap; gap:0.7rem; margin-top:1.4rem; max-width:34rem; }
  #smw input[type=email]{ flex:1 1 15rem; min-width:0; background:var(--ink-2); border:1px solid var(--line); color:var(--bone); font-family:"Newsreader", Georgia, serif; font-size:1.02rem; padding:0.9rem 1rem; }
  #smw input[type=email]::placeholder{ color:#fff; }
  #smw input[type=email]:focus{ outline:none; border-color:var(--blood); }
  #smw button{ background:transparent; color:var(--blood); border:1px solid var(--blood); cursor:pointer; font-family:"Courier Prime", monospace; font-size:0.8rem; letter-spacing:0.14em; text-transform:uppercase; padding:0.9rem 1.5rem; transition:background .2s, color .2s; }
  #smw button:hover{ background:var(--blood); color:#0e0b09; }
  #smw .confirm{ margin-top:1.2rem; font-family:"Courier Prime", monospace; font-size:0.86rem; color:#fff; display:none; }
  #smw .confirm.show{ display:block; }

  /* ---------- footer ---------- */
  #smw footer{ border-top:1px solid var(--line-soft); padding-block:3.4rem 4.6rem; }
  #smw footer .wrap{ display:grid; grid-template-columns:1fr; gap:1.6rem; align-items:center; }
  @media (min-width:760px){ #smw footer .wrap{ grid-template-columns:auto 1fr auto; } }
  #smw .seal{ width:200px; height:200px; color:var(--oxblood); }
  #smw .footmid{ text-align:center; font-family:"Courier Prime", monospace; font-size:0.72rem; letter-spacing:0.18em; text-transform:uppercase; color:#fff; margin:0; }
  #smw .footbrand{ font-family:"Courier Prime", monospace; font-size:0.92rem; letter-spacing:0.02em; text-transform:none; color:var(--bone); line-height:1.75; }
  #smw .foot-links{ display:flex; gap:1.4rem; flex-wrap:wrap; margin-top:0.4rem; }
  #smw .foot-links a{ color:#fff; text-decoration:none; border-bottom:1px solid transparent; padding-bottom:2px; font-family:"Courier Prime", monospace; font-size:0.7rem; letter-spacing:0.12em; text-transform:uppercase; transition:color .2s, border-color .2s; }
  #smw .foot-links a:hover{ color:var(--bone); border-color:var(--blood); }
  #smw .footrisk{ font-family:"Courier Prime", monospace; font-size:0.8rem; text-transform:uppercase; letter-spacing:0.2em; letter-spacing:0; word-spacing:normal; color:var(--blood);  transform:none; text-align:right; margin:1.2rem 0 0; }

  @media (prefers-reduced-motion: reduce){ #smw .name{ animation:none; opacity:1; transform:none; } }

  /* ========================================================
     GALLERY — The Exhibit Room  (/gallery/)
     ======================================================== */
  #smw .groom-hero{ position:relative; overflow:hidden; border-bottom:1px solid var(--line-soft);
    padding-block:clamp(3.5rem,9vw,7.5rem);
    background:#0a0706 url("/assets/gallery/the-line.jpg") center 30%/cover no-repeat; }
  #smw .groom-scrim{ position:absolute; inset:0; z-index:1; pointer-events:none;
    background:linear-gradient(90deg,rgba(7,5,4,0.94) 0%,rgba(7,5,4,0.72) 44%,rgba(7,5,4,0.4) 78%,rgba(7,5,4,0.66) 100%),
               linear-gradient(180deg,rgba(7,5,4,0.6) 0%,transparent 34%,rgba(5,3,3,0.92) 100%); }
  #smw .groom-hero .wrap{ position:relative; z-index:2; }
  #smw .groom-mast{ display:grid; grid-template-columns:1fr; gap:clamp(1.6rem,4vw,2.5rem); align-items:end; }
  @media (min-width:860px){ #smw .groom-mast{ grid-template-columns:1fr auto; } }
  #smw .groom-title{ font-family:"Bodoni Moda", serif; font-weight:800; text-transform:uppercase;
    line-height:0.82; letter-spacing:0.005em; margin:0.6rem 0 0; color:var(--bone);
    font-size:clamp(4.2rem,17vw,11rem); text-shadow:0 30px 70px rgba(0,0,0,0.7); }
  #smw .groom-series{ font-family:"Courier Prime", monospace; font-size:0.82rem; letter-spacing:0.18em; text-transform:uppercase; color:#fff; margin:0.9rem 0 0; }
  #smw .groom-stand{ font-family:"Bodoni Moda", serif; font-style:italic; font-weight:500; color:var(--bone);
    font-size:clamp(1.5rem,1.2rem + 1.2vw,2.2rem); line-height:1.24; max-width:30rem; margin:1.3rem 0 0; text-wrap:pretty; }
  #smw .groom-right{ position:relative; display:grid; justify-items:start; gap:0.5rem; }
  @media (min-width:860px){ #smw .groom-right{ justify-items:end; text-align:right; } }
  #smw .groom-stamp{ position:static; width:132px; height:132px; color:var(--blood); transform:rotate(-8deg); opacity:0.95; filter:drop-shadow(0 8px 20px rgba(0,0,0,0.6)); }
  #smw .groom-case{ font-family:"Courier Prime", monospace; font-size:0.95rem; letter-spacing:0.14em; text-transform:uppercase; color:#fff; margin:0.6rem 0 0; }
  #smw .groom-count{ font-family:"Courier Prime", monospace; font-size:0.78rem; letter-spacing:0.16em; text-transform:uppercase; color:var(--faint); margin:0.2rem 0 0; }
  #smw .groom-count [data-released]{ color:var(--blood); font-weight:700; }

  #smw .groom .groom-note{ font-family:"Courier Prime", monospace; font-size:0.95rem; line-height:1.7; letter-spacing:0.04em; color:#fff; max-width:46rem; margin:0 0 1rem; }

  /* ---- act dividers ---- */
  #smw .act{ margin-top:clamp(2.8rem,6vw,4.6rem); }
  #smw .act-head{ margin:0 0 1.7rem; }
  #smw .act-title{ font-family:"Bodoni Moda", serif; font-weight:700; text-transform:uppercase; letter-spacing:0.01em;
    line-height:0.98; margin:0; color:var(--bone); font-size:clamp(2rem,1.4rem + 2.4vw,3.3rem); }
  #smw .act-rule{ display:block; height:2px; width:100%; margin:0.85rem 0 0.75rem;
    background:linear-gradient(90deg, var(--blood) 0%, var(--oxblood) 18%, rgba(126,40,32,0) 60%); }
  #smw .act-sub{ font-family:"Newsreader", Georgia, serif; font-style:italic; font-size:clamp(1.15rem,1.05rem + 0.4vw,1.4rem); line-height:1.4; color:#fff; margin:0; max-width:42rem; text-wrap:pretty; }

  /* ---- gallery wall (balanced masonry; JS places, CSS multicol falls back) ---- */
  #smw .gx-wall{ position:relative; column-gap:1.5rem; columns:1; }
  @media (min-width:620px){ #smw .gx-wall{ columns:2; column-gap:1.7rem; } }
  #smw .gx-wall.is-masonry{ columns:auto; }
  #smw .gx-wall.is-masonry .gx{ position:absolute; top:0; left:0; margin:0; }
  #smw .gx{ position:relative; break-inside:avoid; -webkit-column-break-inside:avoid; display:inline-block; width:100%;
    margin:0 0 1.5rem; border:1px solid var(--line); background:linear-gradient(180deg,#171211,#0c0908); }
  @media (min-width:620px){ #smw .gx{ margin-bottom:1.7rem; } }
  #smw .gx[data-reveal]{ opacity:0; transform:translateY(16px); transition:opacity .7s ease, transform .7s cubic-bezier(.16,.84,.34,1), border-color .25s; }
  #smw .gx[data-reveal].is-in{ opacity:1; transform:none; }

  #smw .gx-plate{ position:relative; overflow:hidden; background:#0c0908; border-bottom:1px solid var(--line); }
  #smw .gx-plate img{ display:block; width:100%; height:auto; transition:transform .6s cubic-bezier(.2,.7,.2,1); }
  #smw .gx-plate::after{ content:""; position:absolute; inset:0.5rem; border:1px solid rgba(236,228,212,0.12); pointer-events:none; z-index:2; transition:border-color .3s; }

  /* released / openable plates */
  #smw .gx--open{ cursor:pointer; }
  #smw .gx-view{ position:absolute; right:0.7rem; bottom:0.7rem; z-index:3; font-family:"Courier Prime", monospace; font-size:0.66rem; letter-spacing:0.14em; text-transform:uppercase; color:#0e0b09; background:var(--blood); padding:0.3rem 0.55rem; opacity:0; transform:translateY(6px); transition:opacity .25s, transform .25s; }
  #smw .gx--open:hover, #smw .gx--open:focus-visible{ border-color:var(--blood); }
  #smw .gx--open:hover .gx-plate img, #smw .gx--open:focus-visible .gx-plate img{ transform:scale(1.045); }
  #smw .gx--open:hover .gx-plate::after, #smw .gx--open:focus-visible .gx-plate::after{ border-color:rgba(192,38,27,0.5); }
  #smw .gx--open:hover .gx-view, #smw .gx--open:focus-visible .gx-view{ opacity:1; transform:none; }

  /* sealed plates */
  #smw .gx-plate--sealed{ aspect-ratio:4/5; }
  #smw .gx--sealed .gx-plate{ background:
      repeating-linear-gradient(135deg, rgba(126,40,32,0.12) 0 14px, transparent 14px 28px),
      linear-gradient(160deg,#1a1210,#0b0807); }
  #smw .gx--sealed .gx-seal{ position:absolute; left:50%; top:46%; transform:translate(-50%,-50%) rotate(-9deg); width:40%; max-width:150px; height:auto; color:var(--oxblood); opacity:0.9; z-index:2; }
  #smw .gx-redact{ position:absolute; left:14%; right:14%; top:16%; display:grid; gap:0.7rem; z-index:1; opacity:0.5; }
  #smw .gx-redact span{ display:block; height:0.75rem; background:#0a0706; }
  #smw .gx-redact span:nth-child(2){ margin-right:28%; }
  #smw .gx-redact span:nth-child(3){ margin-right:52%; }
  #smw .gx-status{ position:absolute; right:0.7rem; bottom:0.7rem; z-index:3; font-family:"Courier Prime", monospace; font-size:0.66rem; letter-spacing:0.16em; text-transform:uppercase; color:#fff; border:1px solid var(--oxblood); padding:0.26rem 0.5rem; }
  #smw .gx--sealed .gx-cap h3{ color:var(--bone-dim); }

  #smw .gx-cap{ padding:1rem 1.1rem 1.3rem; }
  #smw .gx-cap h3{ font-family:"Bodoni Moda", serif; font-weight:600; font-size:1.55rem; letter-spacing:0.01em; line-height:1.05; margin:0 0 0.35rem; color:var(--bone); }
  #smw .gx-medium{ font-family:"Courier Prime", monospace; font-size:0.68rem; letter-spacing:0.16em; text-transform:uppercase; color:var(--faint); margin:0 0 0.5rem; }
  #smw .gx-caption{ font-family:"Newsreader", Georgia, serif; font-style:italic; font-size:1.05rem; line-height:1.5; color:#fff; margin:0; text-wrap:pretty; }

  #smw .groom-chain{ margin:clamp(2.8rem,6vw,4.2rem) 0 0; padding-top:1.6rem; border-top:1px solid var(--line); font-family:"Courier Prime", monospace; font-size:0.82rem; letter-spacing:0.04em; line-height:1.8; color:var(--faint); max-width:none; }
  #smw .groom-chain .lbl{ color:var(--blood); }
  #smw .groom-chain a{ color:#fff; text-decoration:none; border-bottom:1px solid var(--oxblood); padding-bottom:1px; }
  #smw .groom-chain a:hover{ color:var(--bone); border-color:var(--blood); }

  /* ---------- lightbox ---------- */
  #smw .glb{ position:fixed; inset:0; z-index:60; display:flex; align-items:center; justify-content:center;
    padding:clamp(1rem,4vw,3rem); opacity:0; visibility:hidden; pointer-events:none; transition:opacity .3s ease, visibility .3s;
    background:rgba(5,4,3,0.95); }
  @supports (backdrop-filter:blur(4px)){ #smw .glb{ backdrop-filter:blur(6px); } }
  #smw .glb.is-open{ opacity:1; visibility:visible; pointer-events:auto; }
  #smw .glb-back{ position:absolute; inset:0; }
  #smw .glb-stage{ position:relative; z-index:2; margin:0; display:grid; grid-template-columns:1fr; gap:1.4rem;
    align-items:center; max-width:76rem; width:100%; }
  @media (min-width:900px){ #smw .glb-stage{ grid-template-columns:minmax(0,1fr) 20rem; gap:2.4rem; } }
  #smw .glb-img{ display:block; width:100%; max-height:82vh; object-fit:contain; border:1px solid var(--line); box-shadow:0 40px 90px -40px #000; background:#0c0908; }
  #smw .glb-notes{ color:var(--bone); }
  #smw .glb-n{ color:var(--blood); margin:0 0 0.6rem; }
  #smw .glb-title{ font-family:"Bodoni Moda", serif; font-weight:700; text-transform:uppercase; letter-spacing:0.01em; line-height:1; font-size:clamp(2rem,1.5rem + 2vw,3rem); margin:0 0 0.6rem; color:var(--bone); }
  #smw .glb-medium{ font-family:"Courier Prime", monospace; font-size:0.72rem; letter-spacing:0.16em; text-transform:uppercase; color:var(--faint); margin:0 0 1.2rem; }
  #smw .glb-quote{ font-family:"Newsreader", Georgia, serif; font-style:italic; font-size:1.25rem; line-height:1.55; color:#fff; border-left:1px solid var(--oxblood); padding-left:1rem; margin:0; max-width:none; text-wrap:pretty; }
  #smw .glb-close{ position:absolute; top:clamp(0.8rem,2vw,1.4rem); right:clamp(0.8rem,2vw,1.4rem); z-index:3; width:3rem; height:3rem; display:flex; align-items:center; justify-content:center; font-size:2rem; line-height:1; background:transparent; color:#fff; border:1px solid var(--line); cursor:pointer; transition:color .2s, border-color .2s; }
  #smw .glb-close:hover{ color:var(--blood); border-color:var(--blood); }
  #smw .glb-nav{ position:absolute; top:50%; transform:translateY(-50%); z-index:3; width:3.2rem; height:3.2rem; display:flex; align-items:center; justify-content:center; font-size:1.3rem; background:rgba(10,7,6,0.6); color:#fff; border:1px solid var(--line); cursor:pointer; transition:color .2s, border-color .2s, background .2s; }
  #smw .glb-nav:hover{ color:var(--blood); border-color:var(--blood); background:rgba(10,7,6,0.85); }
  #smw .glb-prev{ left:clamp(0.5rem,2vw,1.4rem); }
  #smw .glb-next{ right:clamp(0.5rem,2vw,1.4rem); }
  @media (prefers-reduced-motion: reduce){ #smw .gx[data-reveal]{ opacity:1; transform:none; filter:none; transition:none; } }

  /* ---- key art (the Pull / the Hold) — the room's one loud moment ---- */
  #smw .ka-band{ border-top:none; padding-top:clamp(2.8rem,6vw,4.8rem); padding-bottom:0; }
  #smw .ka-wrap{ display:grid; grid-template-columns:1fr; gap:1.5rem; }
  @media (min-width:900px){ #smw .ka-wrap{ grid-template-columns:1fr 1fr; gap:1.8rem; } }
  #smw .ka{ position:relative; margin:0; border:1px solid var(--line); background:#0c0908; display:flex; flex-direction:column; cursor:pointer; box-shadow:0 34px 70px -40px #000; transition:border-color .25s, box-shadow .3s; }
  #smw .ka::before{ content:""; position:absolute; left:0; right:0; top:0; height:2px; background:var(--blood); transform:scaleX(0); transform-origin:left; transition:transform .4s cubic-bezier(.2,.7,.2,1); z-index:4; }
  #smw .ka:hover::before, #smw .ka:focus-visible::before{ transform:scaleX(1); }
  #smw .ka[data-reveal]{ opacity:0; transform:translateY(18px); transition:opacity .8s ease, transform .8s cubic-bezier(.16,.84,.34,1), border-color .25s, box-shadow .3s; }
  #smw .ka[data-reveal].is-in{ opacity:1; transform:none; }
  #smw .ka-plate{ position:relative; aspect-ratio:3/2; overflow:hidden; }
  #smw .ka-plate img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .6s cubic-bezier(.2,.7,.2,1); }
  #smw .ka-plate::after{ content:""; position:absolute; inset:0.5rem; border:1px solid rgba(236,228,212,0.14); pointer-events:none; z-index:2; }
  #smw .ka:hover, #smw .ka:focus-visible{ border-color:var(--blood); box-shadow:0 40px 80px -36px #000; }
  #smw .ka:hover .ka-plate img, #smw .ka:focus-visible .ka-plate img{ transform:scale(1.035); }
  #smw .ka:hover .gx-view, #smw .ka:focus-visible .gx-view{ opacity:1; transform:none; }
  #smw .ka-cap{ padding:1.2rem 1.3rem 1.5rem; border-left:3px solid var(--oxblood); margin:0.1rem 0 0; }
  #smw .ka-cap h2{ font-family:"Bodoni Moda", serif; font-weight:700; font-size:clamp(1.7rem,1.4rem + 0.8vw,2.1rem); letter-spacing:0.01em; line-height:0.98; margin:0 0 0.6rem; color:var(--bone); text-transform:uppercase; }
  #smw .ka-cap p{ font-family:"Newsreader", Georgia, serif; font-style:italic; font-size:1.12rem; line-height:1.5; color:#fff; margin:0; max-width:40rem; text-wrap:pretty; }
  @media (prefers-reduced-motion: reduce){ #smw .ka[data-reveal]{ opacity:1; transform:none; transition:none; } #smw .ka::before{ transition:none; } }

  /* ========================================================
     HOMEPAGE DIPTYCH — The Pull / The Hold (above the series)
     ======================================================== */
  #smw .twoside .dip-grid{ display:grid; grid-template-columns:1fr; gap:1.4rem; max-width:62rem; margin:0 auto; align-items:stretch; }
  @media (min-width:720px){ #smw .twoside .dip-grid{ grid-template-columns:1fr clamp(2px,0.3vw,3px) 1fr; column-gap:clamp(1.3rem,3vw,2.4rem); gap:0; } }
  #smw .dip{ margin:0; display:flex; flex-direction:column; border:1px solid var(--line); background:#0c0908; box-shadow:0 34px 68px -42px #000; transition:border-color .25s, box-shadow .3s; }
  #smw .dip-art{ display:block; position:relative; overflow:hidden; }
  #smw .dip-art img{ display:block; width:100%; height:auto; transition:transform .65s cubic-bezier(.2,.7,.2,1); }
  #smw .dip-art::after{ content:""; position:absolute; inset:0.5rem; border:1px solid rgba(236,228,212,0.12); pointer-events:none; }
  #smw .dip:hover, #smw .dip:focus-within{ border-color:var(--blood); box-shadow:0 40px 80px -38px #000; }
  #smw .dip:hover .dip-art img, #smw .dip:focus-within .dip-art img{ transform:scale(1.03); }
  #smw .dip-bar{ display:flex; align-items:center; gap:0.85rem; padding:0.85rem 1rem; border-top:1px solid var(--line); background:linear-gradient(180deg,#151110,#0b0807); }
  #smw .dip-cover{ width:2.8rem; flex:none; aspect-ratio:2/3; object-fit:cover; border:1px solid var(--line); box-shadow:0 8px 18px -10px #000; }
  #smw .dip-meta{ display:flex; flex-direction:column; gap:0.35rem; min-width:0; }
  #smw .dip-num{ font-family:"Courier Prime", monospace; font-size:0.74rem; letter-spacing:0.14em; text-transform:uppercase; color:#fff; margin:0; white-space:nowrap; }
  #smw .dip-meta .status{ align-self:flex-start; }
  #smw .dip-format{ font-family:"Courier Prime", monospace; font-size:0.66rem; letter-spacing:0.16em; text-transform:uppercase; color:var(--blood); margin:0.1rem 0 0; white-space:nowrap; }
  #smw .pull-promo{ max-width:440px; margin:2.6rem auto 0; border:1px solid var(--line); box-shadow:0 30px 70px -36px #000; overflow:hidden; transition:border-color .25s; }
  #smw .pull-promo:hover{ border-color:var(--blood); }
  #smw .pull-promo-art{ display:block; }
  #smw .pull-promo-art img{ display:block; width:100%; height:auto; transition:transform .6s cubic-bezier(.2,.7,.2,1); }
  #smw .pull-promo-art:hover img, #smw .pull-promo-art:focus-visible img{ transform:scale(1.03); }
  #smw .pull-promo-cta{ display:flex; }
  #smw .pull-promo-cta a{ flex:1; text-align:center; font-family:"Courier Prime", monospace; font-size:0.74rem; font-weight:700; letter-spacing:0.14em; text-transform:uppercase; color:#0e0b09; background:var(--blood); padding:0.8rem 0.6rem; text-decoration:none; transition:background .2s; }
  #smw .pull-promo-cta a:first-child{ border-right:1px solid rgba(10,9,8,0.3); }
  #smw .pull-promo-cta a:hover, #smw .pull-promo-cta a:focus-visible{ background:#e03b2f; }
  #smw .dip-cta{ margin-left:auto; flex:none; font-family:"Courier Prime", monospace; font-size:0.72rem; font-weight:700; letter-spacing:0.14em; text-transform:uppercase; text-decoration:none; padding:0.62rem 1.05rem; white-space:nowrap; transition:background .2s, color .2s, transform .06s; }
  #smw .dip--pull .dip-cta{ background:var(--blood); color:#0e0b09; }
  #smw .dip--pull .dip-cta:hover{ background:#e03b2f; }
  #smw .dip--hold .dip-cta{ color:var(--blood); border:1px solid var(--blood); }
  #smw .dip--hold .dip-cta:hover{ background:var(--blood); color:#0e0b09; }
  #smw .dip-cta:active{ transform:translateY(1px); }
  /* the shimmer seam: blood (the Pull) bleeding to gold (the Hold) */
  #smw .dip-seam{ display:none; }
  @media (min-width:720px){ #smw .dip-seam{ display:block; width:100%; align-self:stretch;
    background:linear-gradient(180deg, transparent 0%, rgba(192,38,27,0.62) 22%, rgba(196,150,74,0.5) 50%, rgba(192,38,27,0.55) 78%, transparent 100%);
    box-shadow:0 0 16px rgba(192,38,27,0.28); } }

  /* ---- featured journal story (premiere) ---- */
  #smw .jfeat-wrap{ margin:0 0 2.4rem; }
  #smw .jfeat{ position:relative; display:grid; grid-template-columns:1fr; gap:1.5rem; align-items:center;
    border:1px solid var(--line); background:linear-gradient(180deg,#171211,#0c0908); padding:clamp(1.2rem,3vw,2rem); transition:border-color .25s; }
  @media (min-width:720px){ #smw .jfeat{ grid-template-columns:clamp(13rem,30%,18rem) 1fr; gap:clamp(1.8rem,4vw,3rem); } }
  #smw .jfeat:hover{ border-color:var(--oxblood); }
  #smw .jfeat-art{ position:relative; display:block; overflow:hidden; border:1px solid var(--line); box-shadow:0 24px 50px -30px #000; }
  #smw .jfeat-art img{ display:block; width:100%; height:auto; transition:transform .6s cubic-bezier(.2,.7,.2,1); }
  #smw .jfeat:hover .jfeat-art img, #smw .jfeat-art:focus-visible img{ transform:scale(1.04); }
  #smw .jfeat-badge{ position:absolute; top:0.7rem; left:0.7rem; background:var(--blood); color:#0e0b09; font-family:"Courier Prime", monospace; font-size:0.6rem; font-weight:700; letter-spacing:0.22em; text-transform:uppercase; padding:0.3rem 0.6rem; }
  #smw .jfeat-kicker{ font-family:"Courier Prime", monospace; font-size:0.72rem; letter-spacing:0.24em; text-transform:uppercase; color:var(--blood); margin:0 0 0.7rem; }
  #smw .jfeat-title{ font-family:"Bodoni Moda", serif; font-weight:700; text-transform:uppercase; letter-spacing:0.01em; line-height:0.98; font-size:clamp(2.3rem,1.8rem + 2vw,3.4rem); color:var(--bone); margin:0 0 0.4rem; }
  #smw .jfeat-genre{ font-family:"Newsreader", Georgia, serif; font-style:italic; font-size:1.05rem; color:var(--faint); margin:0 0 1rem; }
  #smw .jfeat-hook{ font-family:"Newsreader", Georgia, serif; font-size:1.25rem; line-height:1.5; color:#fff; margin:0 0 1.5rem; max-width:38rem; text-wrap:pretty; }
  #smw .jfeat-cta{ display:flex; align-items:center; gap:clamp(1rem,3vw,1.6rem); flex-wrap:wrap; }
  #smw .jfeat-cta .btn-link{ margin-top:0; }
  #smw .jfeat-medium{ font-family:"Courier Prime", monospace; font-size:0.72rem; letter-spacing:0.14em; text-transform:uppercase; color:var(--faint); text-decoration:none; border-bottom:1px solid var(--oxblood); padding-bottom:2px; transition:color .2s, border-color .2s; }
  #smw .jfeat-medium:hover{ color:var(--bone); border-color:var(--blood); }
  #smw .jmore-lbl{ display:flex; align-items:center; gap:1.2rem; margin:0 0 1.8rem; max-width:none; }
  #smw .jmore-lbl .right{ margin-left:auto; }
  /* journal card that links to a full on-site story */
  #smw .card .card-cta{ margin:auto 1.1rem 1.3rem; display:flex; align-items:center; gap:1rem; flex-wrap:wrap; }
  #smw .card .card-cta .readit{ margin:0; }
  #smw .cardmed{ font-family:"Courier Prime", monospace; font-size:0.62rem; letter-spacing:0.14em; text-transform:uppercase; color:var(--faint); text-decoration:none; border-bottom:1px solid var(--oxblood); padding-bottom:1px; transition:color .2s, border-color .2s; }
  #smw .cardmed:hover{ color:var(--bone); border-color:var(--blood); }
  #smw .cardlisten{ font-family:"Courier Prime", monospace; font-size:0.68rem; letter-spacing:0.14em; text-transform:uppercase; color:var(--blood); text-decoration:none; border-bottom:1px solid var(--oxblood); padding-bottom:2px; transition:color .2s, border-color .2s; }
  #smw .cardlisten:hover{ color:var(--bone); border-color:var(--blood); }
  #smw .jfeat-listen{ font-family:"Courier Prime", monospace; font-size:0.72rem; letter-spacing:0.14em; text-transform:uppercase; color:var(--blood); text-decoration:none; border-bottom:1px solid var(--oxblood); padding-bottom:2px; transition:color .2s, border-color .2s; }
  #smw .jfeat-listen:hover{ color:var(--bone); border-color:var(--blood); }

  /* ===== On the Record — author readings ===== */
  #smw .reel{ display:grid; grid-template-columns:1fr; gap:clamp(1.4rem,3vw,2.2rem); }
  @media (min-width:760px){ #smw .reel{ grid-template-columns:repeat(2,1fr); } }
  #smw .read{ border:1px solid var(--line); background:linear-gradient(180deg,#171211,#0c0908); display:flex; flex-direction:column; transition:border-color .25s; }
  #smw .read:hover{ border-color:var(--oxblood); }
  #smw .read-art{ position:relative; display:block; width:100%; margin:0; padding:0; border:0; background:#120d0b; aspect-ratio:16/9; overflow:hidden; cursor:pointer; border-bottom:1px solid var(--line); }
  #smw .read-art img{ display:block; width:100%; height:100%; object-fit:cover; transition:transform .6s cubic-bezier(.2,.7,.2,1); }
  #smw button.read-art:hover img, #smw button.read-art:focus-visible img{ transform:scale(1.045); }
  #smw .read-scrim{ position:absolute; inset:0; background:radial-gradient(120% 120% at 50% 40%,rgba(10,9,8,0) 42%,rgba(10,9,8,.72) 100%),linear-gradient(180deg,rgba(10,9,8,.15),rgba(10,9,8,.45)); }
  #smw .read-play{ position:absolute; top:50%; left:50%; width:4.2rem; height:4.2rem; margin:-2.1rem 0 0 -2.1rem; border-radius:50%; border:1px solid var(--blood); background:rgba(18,13,11,.6); -webkit-backdrop-filter:blur(2px); backdrop-filter:blur(2px); transition:background .2s, transform .2s; }
  #smw .read-play::after{ content:""; position:absolute; top:50%; left:54%; transform:translate(-50%,-50%); border-style:solid; border-width:.72rem 0 .72rem 1.18rem; border-color:transparent transparent transparent var(--bone); }
  #smw button.read-art:hover .read-play, #smw button.read-art:focus-visible .read-play{ background:var(--blood); transform:scale(1.06); }
  #smw button.read-art:hover .read-play::after, #smw button.read-art:focus-visible .read-play::after{ border-left-color:#0e0b09; }
  #smw .read-play--muted{ border-color:var(--oxblood); opacity:.6; }
  #smw .read-play--muted::after{ border-left-color:var(--faint); }
  #smw .read-time{ position:absolute; right:.7rem; bottom:.7rem; font-family:"Courier Prime", monospace; font-size:.62rem; letter-spacing:.14em; color:var(--bone); background:rgba(10,9,8,.72); border:1px solid var(--line); padding:.26rem .5rem; }
  #smw .read-stamp{ position:absolute; top:.8rem; left:.8rem; font-family:"Courier Prime", monospace; font-size:.58rem; font-weight:700; letter-spacing:.24em; text-transform:uppercase; color:var(--bone); background:var(--oxblood); padding:.3rem .6rem; }
  #smw .read-frame{ width:100%; aspect-ratio:16/9; display:block; border:0; border-bottom:1px solid var(--line); background:#000; }
  #smw video.read-frame{ object-fit:contain; }
  /* Hypnotics — audio with a built-in title card */
  #smw .hyp-tc{ position:absolute; inset:0; display:flex; flex-direction:column; align-items:flex-start; justify-content:flex-end; gap:0.35rem; text-align:left; padding:1.1rem 1.1rem 1.15rem; background:radial-gradient(130% 110% at 50% 28%,#1b1311 0%,#0c0908 74%); }
  #smw .hyp-tc-k{ font-family:"Courier Prime", monospace; font-size:0.6rem; letter-spacing:0.3em; text-transform:uppercase; color:var(--blood); }
  #smw .hyp-tc-t{ font-family:"Bodoni Moda", serif; font-weight:600; font-size:clamp(1.3rem,1.1rem + 1.3vw,1.9rem); line-height:1; letter-spacing:0.02em; color:var(--bone); }
  #smw .read-audio{ display:block; width:100%; height:46px; background:#0d0a09; border-bottom:1px solid var(--line); }
  #smw .read-art.is-played .read-play{ display:none; }
  /* Hypnotics coming-soon: badge, cover hero, disclaimer & rules */
  #smw .soon-badge{ font-family:"Courier Prime", monospace; font-size:0.64rem; letter-spacing:0.2em; text-transform:uppercase; color:var(--blood); border:1px solid var(--oxblood); padding:0.3rem 0.7rem; margin-left:1rem; white-space:nowrap; }
  #smw .hyp-hero{ margin:2.4rem auto 0; max-width:380px; }
  #smw .hyp-hero img{ display:block; width:100%; border:1px solid var(--line); box-shadow:0 30px 70px -36px #000; }
  #smw .hyp-hero-cap{ font-family:"Courier Prime", monospace; font-size:0.66rem; letter-spacing:0.24em; text-transform:uppercase; color:var(--faint); text-align:center; margin:0.8rem 0 0; }
  #smw .hyp-rules{ border:1px solid var(--line); background:var(--panel); max-width:42rem; margin:2.6rem 0 0; }
  #smw .hyp-rules-bar{ font-family:"Courier Prime", monospace; font-size:0.72rem; letter-spacing:0.3em; text-transform:uppercase; color:var(--bone); background:var(--oxblood); border-bottom:1px solid var(--blood); padding:0.75rem 1.1rem; text-align:center; margin:0; }
  #smw .hyp-rules-body{ padding:1.5rem 1.4rem 1.5rem; }
  #smw .hyp-rules-lead{ font-family:"Newsreader", Georgia, serif; font-style:italic; color:var(--bone-dim); font-size:1.1rem; line-height:1.5; margin:0 0 1.2rem; }
  #smw .hyp-rules-list{ list-style:none; padding:0; margin:0 0 1.3rem; }
  #smw .hyp-rules-list li{ position:relative; padding-left:1.5rem; margin:0 0 0.75rem; font-family:"Newsreader", Georgia, serif; font-size:1.04rem; line-height:1.5; color:var(--bone-dim); }
  #smw .hyp-rules-list li::before{ content:""; position:absolute; left:0; top:0.62em; width:6px; height:6px; background:var(--blood); transform:rotate(45deg); }
  #smw .hyp-rules-reminder{ font-family:"Courier Prime", monospace; font-size:0.76rem; letter-spacing:0.04em; line-height:1.55; color:var(--blood); border-top:1px solid var(--line); padding-top:1.1rem; margin:0; }
  #smw .read-body{ padding:clamp(1.1rem,3vw,1.5rem); display:flex; flex-direction:column; flex:1; }
  #smw .read-kicker{ font-family:"Courier Prime", monospace; font-size:.68rem; letter-spacing:.24em; text-transform:uppercase; color:var(--blood); margin:0 0 .6rem; }
  #smw .read-title{ font-family:"Bodoni Moda", serif; font-weight:600; font-size:clamp(1.7rem,1.4rem + 1vw,2.2rem); line-height:1.02; letter-spacing:.01em; color:var(--bone); margin:0 0 .7rem; }
  #smw .read-blurb{ font-family:"Newsreader", Georgia, serif; font-size:1.08rem; line-height:1.5; color:var(--bone-dim); margin:0 0 1.3rem; text-wrap:pretty; }
  #smw .read-cta{ margin-top:auto; display:flex; align-items:center; gap:1.2rem; flex-wrap:wrap; }
  #smw .read-cta .btn-link{ margin-top:0; }
  #smw .read-flag{ font-family:"Courier Prime", monospace; font-size:.68rem; letter-spacing:.2em; text-transform:uppercase; color:var(--faint); border:1px solid var(--line); padding:.5rem .85rem; }
  #smw .read-read{ font-family:"Courier Prime", monospace; font-size:.68rem; letter-spacing:.14em; text-transform:uppercase; color:var(--blood); text-decoration:none; border-bottom:1px solid var(--oxblood); padding-bottom:2px; transition:color .2s, border-color .2s; }
  #smw .read-read:hover{ color:var(--bone); border-color:var(--blood); }
  /* members-only (sealed) reading */
  #smw .read-art--sealed{ position:relative; display:block; width:100%; aspect-ratio:16/9; overflow:hidden; border-bottom:1px solid var(--line); background:#120d0b; }
  #smw .read-art--sealed img{ display:block; width:100%; height:100%; object-fit:cover; filter:grayscale(.32) brightness(.6); }
  #smw .read-seal{ position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:4.2rem; height:4.2rem; display:flex; align-items:center; justify-content:center; border-radius:50%; color:var(--bone); background:rgba(94,20,18,.82); border:1px solid var(--blood); box-shadow:0 0 0 7px rgba(10,9,8,.4), 0 0 26px rgba(192,38,27,.35); }
  #smw .read-stamp--sealed{ background:var(--blood); color:#0e0b09; }
  #smw .read-play--member{ display:none; }
  #smw .read-gate{ display:flex; align-items:center; gap:1.1rem; flex-wrap:wrap; }
  #smw .read-signin{ font-family:"Courier Prime", monospace; font-size:.66rem; letter-spacing:.14em; text-transform:uppercase; color:var(--faint); text-decoration:none; border-bottom:1px solid transparent; padding-bottom:2px; transition:color .2s, border-color .2s; }
  #smw .read-signin:hover{ color:var(--bone); border-color:var(--blood); }
  #smw .read-watch{ display:none; }
  #smw .read-art--sealed.is-loading{ opacity:.6; cursor:progress; }
  /* when a member session is present, unlock sealed cards in place */
  #smw.is-member .read--gated .read-seal,
  #smw.is-member .read--gated .read-stamp--sealed,
  #smw.is-member .read--gated .read-gate{ display:none; }
  #smw.is-member .read--gated .read-play--member{ display:block; }
  #smw.is-member .read--gated .read-art--sealed img{ filter:none; }
  #smw.is-member .read--gated .read-art--sealed:hover img{ transform:scale(1.045); }
  #smw.is-member .read--gated .read-watch{ display:inline; }
  /* membership / access page */
  #smw .mbr-benefits{ list-style:none; padding:0; margin:0 0 2.2rem; max-width:34rem; }
  #smw .mbr-benefits li{ position:relative; padding:0 0 0 1.5rem; margin:0 0 .9rem; font-family:"Newsreader", Georgia, serif; font-size:1.15rem; line-height:1.5; color:var(--bone-dim); }
  #smw .mbr-benefits li::before{ content:""; position:absolute; left:0; top:.62em; width:7px; height:7px; background:var(--blood); transform:rotate(45deg); }
  #smw .mbr-actions{ display:flex; align-items:center; gap:1.6rem; flex-wrap:wrap; margin:0 0 3rem; }
  #smw .mbr-manage{ font-family:"Courier Prime", monospace; font-size:.7rem; letter-spacing:.14em; text-transform:uppercase; color:var(--faint); text-decoration:none; border-bottom:1px solid var(--oxblood); padding-bottom:2px; }
  #smw .mbr-manage:hover{ color:var(--bone); border-color:var(--blood); }
  #smw .mbr-signin{ border-top:1px solid var(--line); padding-top:2rem; max-width:34rem; }
  #smw .mbr-h3{ font-family:"Courier Prime", monospace; font-size:.8rem; letter-spacing:.24em; text-transform:uppercase; color:var(--blood); margin:0 0 .8rem; }
  #smw .mbr-form{ display:flex; gap:.7rem; flex-wrap:wrap; margin:1rem 0 .6rem; }
  #smw .mbr-form input{ flex:1 1 14rem; background:#0d0a09; border:1px solid var(--line); color:var(--bone); font-family:"Courier Prime", monospace; font-size:.9rem; letter-spacing:.06em; padding:.85rem 1rem; }
  #smw .mbr-form input:focus-visible{ outline:2px solid var(--blood); outline-offset:2px; }
  #smw .mbr-form button{ font-family:"Courier Prime", monospace; font-size:.74rem; letter-spacing:.18em; text-transform:uppercase; color:var(--bone); background:var(--oxblood); border:1px solid var(--blood); padding:.85rem 1.6rem; cursor:pointer; transition:background .2s; }
  #smw .mbr-form button:hover{ background:var(--blood); color:#0e0b09; }
  #smw .mbr-msg{ font-family:"Courier Prime", monospace; font-size:.74rem; letter-spacing:.06em; color:var(--faint); min-height:1.2em; margin:.3rem 0 0; }
  #smw .mbr-promo{ border:1px solid var(--blood); background:linear-gradient(180deg,rgba(192,38,27,.12),rgba(13,10,9,.6)); padding:clamp(1.4rem,3vw,2rem); margin:0 0 2.4rem; max-width:40rem; }
  #smw .mbr-promo-tag{ font-family:"Courier Prime", monospace; font-size:.66rem; letter-spacing:.28em; text-transform:uppercase; color:var(--blood); margin:0 0 .6rem; }
  #smw .mbr-promo-head{ font-family:"Bodoni Moda", serif; font-weight:700; font-size:clamp(1.5rem,1.2rem + 1.4vw,2.1rem); line-height:1.05; color:var(--bone); margin:0 0 .6rem; }
  #smw .mbr-promo-sub{ font-family:"Newsreader", Georgia, serif; font-size:1.08rem; line-height:1.5; color:var(--bone-dim); margin:0 0 1.3rem; }
  #smw .mbr-promo .cta{ margin-top:0; }








































  /* ========== landing pages: hero, native players, descend-deeper nav ========== */
  #smw .pagehero{ position:relative; min-height:clamp(54vh,60vh,620px); display:flex; align-items:flex-end; overflow:hidden; border-bottom:1px solid var(--line-soft); }
  #smw .pagehero-bg{ position:absolute; inset:0; z-index:0; }
  #smw .pagehero-bg img{ width:100%; height:100%; object-fit:cover; object-position:center; filter:saturate(0.9) contrast(1.02); }
  #smw .pagehero-scrim{ position:absolute; inset:0; z-index:1; pointer-events:none; background:linear-gradient(180deg, rgba(8,6,5,0.5) 0%, rgba(8,6,5,0.18) 34%, rgba(8,6,5,0.8) 82%, #0e0b09 100%), radial-gradient(130% 100% at 50% 8%, transparent 42%, rgba(8,6,5,0.55) 100%); }
  #smw .pagehero .wrap{ position:relative; z-index:2; width:100%; padding-block:clamp(3rem,7vw,5.5rem); }
  #smw .pagehero-kicker{ font-family:"Courier Prime", monospace; font-size:0.74rem; letter-spacing:0.28em; text-transform:uppercase; color:var(--blood); margin:0 0 1rem; }
  #smw .pagehero h1{ font-family:"Bodoni Moda", serif; font-weight:800; font-size:clamp(2.8rem,1.5rem + 5vw,5.4rem); line-height:0.98; letter-spacing:0.004em; margin:0 0 1.1rem; color:var(--bone); text-shadow:0 6px 44px #000; }
  #smw .pagehero-lede{ font-family:"Newsreader", serif; font-style:italic; font-size:clamp(1.2rem,1rem + 1vw,1.7rem); line-height:1.42; color:var(--bone-dim); max-width:42rem; margin:0; text-shadow:0 2px 24px #000; }
  #smw .pagehero-meta{ margin-top:1.7rem; display:flex; gap:1.6rem; flex-wrap:wrap; font-family:"Courier Prime",monospace; font-size:0.72rem; letter-spacing:0.14em; text-transform:uppercase; color:var(--faint); }
  #smw .pagehero-meta b{ color:var(--bone); font-weight:400; }

  #smw .land-lead{ color:var(--bone); max-width:44rem; font-size:1.3rem; line-height:1.6; margin:0 0 2.6rem; text-wrap:pretty; }

  /* native lazy media players (preload=none: nothing heavy loads until play) */
  #smw .player{ position:relative; margin:0; background:#000; border:1px solid var(--line); box-shadow:0 26px 60px -34px #000; overflow:hidden; }
  #smw .player video{ display:block; width:100%; aspect-ratio:16/9; background:#000; }
  #smw .player-card{ position:relative; aspect-ratio:16/9; overflow:hidden; background:#140f0e; }
  #smw .player-card img{ width:100%; height:100%; object-fit:cover; display:block; }
  #smw .player-tc{ position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:0.5rem; text-align:center; }
  #smw .player-tc .tk{ font-family:"Courier Prime",monospace; font-size:0.72rem; letter-spacing:0.3em; text-transform:uppercase; color:var(--blood); }
  #smw .player-tc .tt{ font-family:"Bodoni Moda",serif; font-size:clamp(1.6rem,3vw,2.4rem); color:var(--bone); }
  #smw .player audio{ display:block; width:100%; background:#140f0e; padding:0.55rem 0.6rem; box-sizing:border-box; }

  #smw .land-item{ display:grid; grid-template-columns:1fr; gap:1.4rem clamp(1.6rem,3vw,2.6rem); margin:0 0 clamp(2.6rem,5vw,3.6rem); align-items:start; }
  @media(min-width:820px){ #smw .land-item{ grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); } }
  #smw .land-item .player{ align-self:start; }
  #smw .land-kicker{ font-family:"Courier Prime",monospace; font-size:0.72rem; letter-spacing:0.18em; text-transform:uppercase; color:var(--blood); margin:0 0 0.4rem; }
  #smw .land-item h3{ font-family:"Bodoni Moda",serif; font-weight:600; font-size:clamp(1.8rem,1.4rem + 1.2vw,2.5rem); margin:0 0 0.7rem; color:var(--bone); line-height:1.02; }
  #smw .land-blurb{ color:var(--bone-dim); font-size:1.12rem; line-height:1.6; margin:0 0 1rem; text-wrap:pretty; }
  #smw .land-tags{ display:flex; gap:1.2rem; flex-wrap:wrap; font-family:"Courier Prime",monospace; font-size:0.7rem; letter-spacing:0.14em; text-transform:uppercase; color:var(--faint); margin:0 0 1rem; }
  #smw .land-links{ display:flex; gap:1.4rem; flex-wrap:wrap; align-items:center; }
  #smw .land-read{ font-family:"Courier Prime",monospace; font-size:0.74rem; letter-spacing:0.14em; text-transform:uppercase; color:var(--blood); text-decoration:none; border-bottom:1px solid var(--oxblood); padding-bottom:3px; transition:color .2s,border-color .2s; }
  #smw .land-read:hover{ color:var(--bone); border-color:var(--blood); }

  /* descend-deeper cross navigation */
  #smw .deeper{ padding-block:var(--band-y); border-top:1px solid var(--line-soft); }
  #smw .deeper-grid{ display:grid; grid-template-columns:1fr; gap:1rem; margin-top:2rem; }
  @media(min-width:760px){ #smw .deeper-grid{ grid-template-columns:repeat(3,1fr); } }
  #smw .deeper-card{ position:relative; display:flex; flex-direction:column; text-decoration:none; border:1px solid var(--line); background:linear-gradient(180deg,#161110,#0d0a09); padding:1.6rem 1.5rem 1.7rem; transition:border-color .2s, transform .14s, background .2s; min-height:9.5rem; }
  #smw .deeper-card:hover{ border-color:var(--blood); transform:translateY(-3px); background:linear-gradient(180deg,#1c1413,#0d0a09); }
  #smw .deeper-card .dk{ font-family:"Courier Prime",monospace; font-size:0.66rem; letter-spacing:0.2em; text-transform:uppercase; color:var(--blood); }
  #smw .deeper-card h4{ font-family:"Bodoni Moda",serif; font-weight:600; font-size:1.55rem; margin:0.45rem 0 0.4rem; color:var(--bone); }
  #smw .deeper-card p{ margin:0; color:var(--faint); font-size:0.98rem; line-height:1.5; }
  #smw .deeper-card .dgo{ margin-top:auto; padding-top:1rem; font-family:"Courier Prime",monospace; font-size:0.72rem; letter-spacing:0.14em; text-transform:uppercase; color:var(--bone-dim); transition:color .2s; }
  #smw .deeper-card:hover .dgo{ color:var(--blood); }

  /* homepage "enter" CTA on teaser sections */
  #smw .enter-cta{ display:inline-flex; align-items:center; gap:0.5rem; margin-top:1.4rem; font-family:"Courier Prime",monospace; font-size:0.74rem; letter-spacing:0.16em; text-transform:uppercase; color:var(--blood); text-decoration:none; border-bottom:1px solid var(--oxblood); padding-bottom:3px; transition:color .2s,border-color .2s; }
  #smw .enter-cta:hover{ color:var(--bone); border-color:var(--blood); }
