
        body {
            font-family: 'Inter', sans-serif;
            background-color: #16161a;
            color: #f4f4f5;
            letter-spacing: -0.01em;
            -webkit-font-smoothing: antialiased;
        }

        html {
            scroll-behavior: smooth;
        }

        ::-webkit-scrollbar {
            width: 5px;
        }
        ::-webkit-scrollbar-track {
            background: #16161a;
        }
        ::-webkit-scrollbar-thumb {
            background: #facc15;
        }

        /* DIY Paper & Zine Aesthetics */
        .zine-card {
            background-color: #f8f6f0;
            color: #18181b;
            border: 2px solid #18181b;
            box-shadow: 4px 4px 0px #facc15;
            transition: transform 0.2s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.2s cubic-bezier(0.16, 1, 0.3, 1);
        }

        .zine-card:hover {
            transform: translate(-2px, -2px);
            box-shadow: 6px 6px 0px #ff4757;
        }

        .zine-card-dark {
            background-color: #22232a;
            color: #f4f4f5;
            border: 2px dashed #3f3f46;
            box-shadow: 4px 4px 0px #00d2d3;
        }

        .highlight-yellow {
            background-color: #facc15;
            color: #000000;
            padding: 0.1rem 0.4rem;
            font-weight: 600;
        }

        .highlight-cyan {
            background-color: #00d2d3;
            color: #000000;
            padding: 0.1rem 0.4rem;
            font-weight: 600;
        }

        .highlight-coral {
            background-color: #ff4757;
            color: #ffffff;
            padding: 0.1rem 0.4rem;
            font-weight: 600;
        }

        .hover-line {
            position: relative;
        }
        .hover-line::after {
            content: '';
            position: absolute;
            width: 100%;
            transform: scaleX(0);
            height: 2px;
            bottom: -2px;
            left: 0;
            background-color: #facc15;
            transform-origin: bottom right;
            transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
        }
        .hover-line:hover::after {
            transform: scaleX(1);
            transform-origin: bottom left;
        }

        .project-img {
            transition: transform 0.7s cubic-bezier(0.16, 1, 0.3, 1), filter 0.5s ease;
        }

        .nav-btn.active {
            color: #facc15;
            border-bottom: 2px solid #facc15;
            font-weight: 700;
        }
    
/* Add-on sections retain the supplied zine template typography and vivid graphic language. */
:root{--ink:#f8f6f0;--dim:#a1a1aa;--line:#52525b;}
body[data-page="cinema"]{background:#14151a!important}
body[data-page="photography"]{background:#2b2d2c!important}
body[data-page="writing"]{background:#292a30!important}
body[data-page="reference"]{background:#1c2023!important}
body[data-page="sound"]{background:#171a1d!important}
body[data-page="about"]{background:#292421!important}
body{transition:background-color .55s ease}
body header{background:#16161a!important}
.cinema-subhead{display:flex;justify-content:space-between;gap:12px;padding:14px 0;margin:30px 0 22px;border-bottom:2px dashed #55555a;font:700 11px 'JetBrains Mono',monospace;letter-spacing:.1em;color:#facc15}
.cinema-extra-group{margin-top:48px}
.cinema-extra-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.cinema-extra-card{display:grid;grid-template-columns:minmax(130px,40%) 1fr;min-height:240px;border:2px solid #18181b;background:#f8f6f0;color:#18181b;text-decoration:none;box-shadow:5px 5px 0 #00d2d3;transition:transform .2s,box-shadow .2s}
.cinema-extra-card:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 #ff4757}
.cinema-extra-art{padding:17px;min-height:240px;display:flex;flex-direction:column;justify-content:space-between;background:#22232a;color:#f8f6f0}
.cinema-extra-art-minute{border-bottom:5px solid #facc15}.cinema-extra-art-short{border-bottom:5px solid #ff4757}
.cinema-extra-id,.cinema-extra-meta{font:700 10px 'JetBrains Mono',monospace;letter-spacing:.09em}
.cinema-extra-art strong{font:italic 32px/1 Georgia,serif;letter-spacing:-.03em}
.cinema-extra-symbol{align-self:flex-end;font-size:20px;color:#00d2d3}
.cinema-extra-copy{padding:21px;display:flex;flex-direction:column;align-items:flex-start}
.cinema-extra-meta{color:#57565b}.cinema-extra-copy h3{font:700 24px Georgia,serif;margin:13px 0;color:#18181b}
.cinema-extra-copy p{font:12px/1.65 Inter,sans-serif;color:#48474c;margin-bottom:18px}
.cinema-extra-cta{margin-top:auto;font:700 10px 'JetBrains Mono',monospace;border-bottom:2px solid #ff4757;padding-bottom:4px}
#section-photography .tone-caption{color:#00d2d3!important;font-weight:700}
.photo-negative{box-shadow:3px 3px 0 #facc15!important;border:2px solid #111!important}
.photo-negative:hover{box-shadow:5px 5px 0 #ff4757!important;border-color:#00d2d3!important}
.photo-negative img{filter:none!important}
.interlude img{filter:brightness(.78)!important}
.interlude:hover img{filter:brightness(.95)!important}
@media(max-width:900px){.cinema-extra-grid{grid-template-columns:1fr}}
@media(max-width:550px){.cinema-extra-card{grid-template-columns:1fr}.cinema-extra-art{min-height:160px}.cinema-subhead span:last-child{display:none}}
        .tone-caption { font:10px 'JetBrains Mono',monospace; letter-spacing:.18em; text-transform:uppercase; color:var(--dim); }
        .photo-contact-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;}
        .photo-negative { background:#151515; padding:7px; border:1px solid var(--line); cursor:pointer; text-align:left; transition: transform .35s,border .35s; }
        .photo-negative:hover,.photo-negative:focus-visible {transform:translateY(-5px);border-color:var(--ink);outline:none;}
        .photo-negative img {display:block;width:100%;height:185px;object-fit:cover;filter:grayscale(100%) contrast(1.1);transition:filter .5s,transform .5s;}
        .photo-negative:hover img,.photo-negative:focus-visible img {filter:grayscale(0);}
        .photo-negative small {display:block;color:#bbb;font:9px monospace;letter-spacing:.08em;padding-top:9px;}
        .interlude {position:relative;min-height:430px;overflow:hidden;background:#171717;isolation:isolate;}
        .interlude img {position:absolute;inset:-6%;width:112%;height:112%;object-fit:cover;filter:grayscale(.85) contrast(1.1) brightness(.55);transform:scale(1.03);transition:transform 1.8s cubic-bezier(.2,.7,.2,1),filter 1.3s;}
        .interlude:hover img {transform:scale(1);filter:grayscale(.45) brightness(.67);}
        .interlude::after {content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.62),transparent 85%);}
        .interlude-copy {position:relative;z-index:2;display:flex;min-height:430px;flex-direction:column;justify-content:space-between;padding:35px;color:#f4f1eb;}
        .interlude-copy h3 {font:italic normal clamp(28px,4vw,54px)/1.2 Georgia,serif;max-width:700px;}
        .lightbox {position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.96);display:none;align-items:center;justify-content:center;padding:25px;}
        .lightbox.open {display:flex;} .lightbox-inner {max-width:1080px;width:100%;} .lightbox img {width:100%;max-height:78vh;object-fit:contain;} .lightbox button {font:11px monospace;letter-spacing:.1em;}
        @media(max-width:700px){.photo-contact-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.photo-negative img{height:145px}.interlude,.interlude-copy{min-height:370px}.interlude-copy{padding:22px;}}

    

/* Original photographs retain their distinctive analogue colour. */
.photo-negative img {filter: saturate(.72) brightness(.8);}
.photo-negative:hover img,.photo-negative:focus-visible img {filter:saturate(1) brightness(1);}
.interlude img {filter: brightness(.76) saturate(.94);}
.interlude:hover img {filter:brightness(.88) saturate(1);}
.photo-contact-grid {grid-template-columns:repeat(3,minmax(0,1fr));}
.photo-negative img {height:235px;}
@media(max-width:700px){.photo-contact-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.photo-negative img{height:185px}}

.photo-contact-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start}.photo-negative{padding:6px}.photo-negative img{width:100%;height:auto!important;max-height:none!important;object-fit:contain!important;filter:none!important}.photo-negative:hover img{opacity:.82}.photo-negative small{overflow-wrap:anywhere}.photo-editorial-break img{filter:brightness(.85)!important}.photo-editorial-break:hover img{filter:brightness(.95)!important}@media(max-width:700px){.photo-contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Masonry photography layout override */
.photo-contact-grid{
  column-count:1 !important;
  column-gap:14px !important;
  display:block !important;
}
@media (min-width:640px){.photo-contact-grid{column-count:2 !important;}}
@media (min-width:980px){.photo-contact-grid{column-count:3 !important;}}
@media (min-width:1320px){.photo-contact-grid{column-count:4 !important;}}
.photo-contact-grid .photo-negative{
  display:inline-block !important;
  width:100% !important;
  margin:0 0 14px !important;
  break-inside:avoid !important;
  -webkit-column-break-inside:avoid !important;
  page-break-inside:avoid !important;
  vertical-align:top;
}
.photo-contact-grid .photo-negative img{
  width:100% !important;
  height:auto !important;
  max-height:none !important;
  object-fit:contain !important;
  display:block;
}
.photo-contact-grid .photo-negative:hover,
.photo-contact-grid .photo-negative:focus-visible{
  transform:translateY(-4px) !important;
}
.photo-contact-grid .photo-negative small{
  display:block;
  padding-top:8px;
  line-height:1.35;
}


/* EDITORIAL MOSAIC — an asymmetric photographic journal */
.mosaic-archive{margin-top:2rem;}
.mosaic-spread{margin:0 0 clamp(6rem,11vw,11rem);}
.mosaic-spread-head{display:flex;align-items:baseline;gap:clamp(1rem,4vw,4rem);border-top:1px solid #7775;padding-top:1rem;margin-bottom:clamp(2.5rem,6vw,6rem);}
.mosaic-spread-num{font:700 11px 'JetBrains Mono',monospace;color:#00d2d3;white-space:nowrap;letter-spacing:.13em;}
.mosaic-spread-head h3{font:italic 400 clamp(1.7rem,3.2vw,3rem) Georgia,serif;color:#f8f6f0;letter-spacing:-.035em;}
.mosaic-spread-head p{font:11px/1.7 'Inter',sans-serif;color:#a1a1aa;margin-top:.6rem;max-width:350px;}
.mosaic-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,.9fr) minmax(0,.65fr);column-gap:clamp(18px,5vw,90px);align-items:start;}
.mosaic-lane{display:flex;flex-direction:column;align-items:stretch;min-width:0;gap:clamp(45px,9vw,150px);}
.mosaic-lane-2{padding-top:clamp(95px,18vw,280px);}
.mosaic-lane-3{padding-top:clamp(32px,7vw,125px);}
.spread-2 .mosaic-layout{grid-template-columns:minmax(0,.7fr) minmax(0,1.4fr) minmax(0,.9fr);}
.spread-2 .mosaic-lane-1{padding-top:clamp(70px,15vw,190px);}
.spread-2 .mosaic-lane-2{padding-top:0;}
.spread-3 .mosaic-layout{grid-template-columns:minmax(0,1.15fr) minmax(0,.65fr) minmax(0,1.3fr);}
.spread-3 .mosaic-lane-3{padding-top:clamp(90px,18vw,260px);}
.spread-4 .mosaic-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) minmax(0,.65fr);}
.spread-4 .mosaic-lane-1{padding-top:clamp(50px,12vw,180px);}
.spread-4 .mosaic-lane-2{padding-top:0;}
.mosaic-frame{width:100%;display:block!important;padding:7px!important;margin:0!important;height:auto!important;box-sizing:border-box;text-align:left;break-inside:avoid;transform:none;}
.mosaic-frame img{width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;filter:none!important;display:block;}
.mosaic-frame small{font-size:9px!important;line-height:1.55;overflow-wrap:anywhere;}
.mosaic-frame:hover{transform:translate(-3px,-3px)!important;}
.mosaic-pause{max-width:600px;margin:clamp(5rem,12vw,11rem) auto 0;text-align:center;padding:0 2rem;}
.mosaic-pause span{font:10px 'JetBrains Mono',monospace;color:#ff4757;letter-spacing:.18em;}
.mosaic-pause div{font:italic 400 clamp(1.5rem,3vw,2.6rem)/1.35 Georgia,serif;color:#eee7d9;margin-top:1.2rem;}
@media(max-width:800px){.mosaic-layout{column-gap:18px!important;grid-template-columns:1.25fr .8fr!important;}.mosaic-lane-3{grid-column:2; padding-top:0!important;}.mosaic-lane{gap:50px!important;}.mosaic-lane-2{padding-top:85px!important;}.mosaic-spread{margin-bottom:6rem;}}
@media(max-width:480px){.mosaic-layout{column-gap:13px!important;grid-template-columns:1fr .86fr!important;}.mosaic-lane-2{padding-top:70px!important;}.mosaic-frame{padding:4px!important;}.mosaic-frame small{font-size:8px!important;}.mosaic-spread-head{margin-bottom:2.5rem;}.mosaic-spread-head h3{font-size:1.7rem;}}


/* Editorial narrative layer: existing layout, navigation, galleries and components preserved */
.archive-hero{border-bottom:2px solid #57565d;padding-top:14px}
.archive-kicker{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;
font:700 10px 'JetBrains Mono',monospace;letter-spacing:.16em;color:#00d2d3;padding-bottom:32px}
.archive-kicker span:last-child{color:#facc15}
.archive-title{font-family:Georgia,serif;font-weight:normal;letter-spacing:-.045em;
font-size:clamp(2.5rem,6vw,5.9rem);line-height:1.04;color:#f8f6f0}
.archive-title span{display:block;font-size:clamp(2.35rem,5.4vw,5.3rem);
font-style:italic;font-weight:normal;color:#facc15;margin-top:6px}
.archive-deck{font:italic clamp(1.16rem,2.25vw,1.75rem)/1.46 Georgia,serif;
color:#f8f6f0;max-width:770px;margin-top:32px}
.archive-intro{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:26px;
margin-top:34px;align-items:end}
.archive-intro p{max-width:650px;color:#c4c4cb;font:400 13px/1.95 Inter,sans-serif}
.archive-stamp{font:700 10px/1.6 'JetBrains Mono',monospace;color:#18181b;background:#00d2d3;
padding:11px 12px;transform:rotate(-2deg);text-align:center}
.archive-section-intro{display:grid;grid-template-columns:170px minmax(0,650px);
gap:26px;align-items:start;padding:12px 0 20px;margin-bottom:28px}
.archive-note-label{font:700 10px/1.8 'JetBrains Mono',monospace;
letter-spacing:.09em;color:#facc15}
.archive-section-intro p{font:normal clamp(15px,1.45vw,18px)/1.7 Georgia,serif;
color:#f0ece8}
#section-photography .archive-note-label,#section-writing .archive-note-label{color:#00d2d3}
#section-reference .archive-note-label{color:#ff4757}
.archive-sidebar-label{display:flex;justify-content:space-between;gap:12px;
font:700 9px/1.5 'JetBrains Mono',monospace;letter-spacing:.12em;color:#a1a1aa;margin:5px 0 25px}
.archive-sidebar-label span{color:#00d2d3}
.archive-about-line{border-left:4px solid #facc15;padding:7px 0 7px 20px;margin:20px 0 27px}
.archive-about-line span{font:700 10px 'JetBrains Mono',monospace;letter-spacing:.12em;color:#facc15}
.archive-about-line p{font:italic 23px Georgia,serif;color:#f8f6f0;margin-top:9px}
@media(max-width:700px){
.archive-intro{grid-template-columns:1fr}
.archive-stamp{width:max-content;max-width:100%;transform:rotate(-1deg)}
.archive-section-intro{grid-template-columns:1fr;gap:10px}
.archive-title{overflow-wrap:break-word}
.archive-kicker{padding-bottom:24px}
}

/* Hero returns to an editorial sentence, not a second site masthead. */
.archive-hero .archive-deck{font-family:Georgia,serif;font-style:italic;font-weight:400;font-size:clamp(1.65rem,3.55vw,3.05rem);line-height:1.34;letter-spacing:-.022em;max-width:870px;margin-top:12px;color:#f8f6f0}
.archive-hero .archive-kicker{padding-bottom:17px}
.archive-hero .archive-intro{margin-top:28px}


/* Cinema: expanding frame contact sheet, kept behind a quiet disclosure */
.feature-gallery{margin:-18px 0 45px;}
.feature-gallery details{border-top:1px solid #55545b;border-bottom:1px solid #55545b}
.feature-gallery summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 1px;}
.feature-gallery summary::-webkit-details-marker{display:none}
.feature-gallery summary strong{display:block;font:700 11px 'JetBrains Mono',monospace;letter-spacing:.09em;color:#f8f6f0}
.feature-gallery summary small{display:block;color:#a1a1aa;font:10px 'JetBrains Mono',monospace;margin-top:5px}
.gallery-toggle{flex-shrink:0;font:700 10px 'JetBrains Mono',monospace;color:#00d2d3}
.gallery-toggle b{display:inline-block;font:normal 22px Inter,sans-serif;vertical-align:middle;margin-left:9px;transition:transform .2s}
.feature-gallery details[open] .gallery-toggle b{transform:rotate(45deg)}
.feature-gallery-inner{padding:7px 0 27px}
.feature-gallery-inner>p{font:12px/1.6 Inter,sans-serif;color:#a1a1aa;margin-bottom:19px}
.feature-frame-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.feature-frame{padding:0;position:relative;background:#22232a;border:2px solid #33343a;text-align:left;cursor:pointer;transition:border .2s,transform .2s}
.feature-frame:hover,.feature-frame:focus-visible{border-color:#facc15;transform:translateY(-3px)}
.feature-frame img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.feature-frame span{display:block;color:#c4c4cb;font:9px 'JetBrains Mono',monospace;padding:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.promo-archive{margin-top:54px}
.promo-intro{max-width:630px;color:#c4c4cb;font:13px/1.8 Inter,sans-serif;margin:20px 0 26px}
.promo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}
.promo-tile{display:block;text-decoration:none;background:#f8f6f0;color:#18181b;border:2px solid #18181b;box-shadow:4px 4px 0 var(--promo-accent);transition:transform .2s,box-shadow .2s;min-width:0}
.promo-tile:hover,.promo-tile:focus-visible{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--promo-accent)}
.promo-visual{height:auto;aspect-ratio:16/9;background:#22232a;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}
.promo-visual img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;z-index:1}
.promo-fallback-label{font:700 clamp(16px,2vw,23px)/1.2 Georgia,serif;color:#f8f6f0;text-align:center;padding:17px}
.promo-ordinal{position:absolute;top:7px;left:7px;padding:5px 7px;background:var(--promo-accent);color:#18181b;font:700 9px 'JetBrains Mono',monospace;z-index:2}
.promo-information{padding:17px 16px 19px;display:flex;flex-direction:column;gap:8px;min-height:135px}
.promo-information>span{font:700 9px 'JetBrains Mono',monospace;color:#5d5754;letter-spacing:.06em}
.promo-information strong{font:normal 18px/1.25 Georgia,serif;color:#18181b}
.promo-information small{margin-top:auto;font:700 9px 'JetBrains Mono',monospace;color:#403d3a}
.promo-source-note{margin-top:25px;color:#97959b;font:10px/1.8 'JetBrains Mono',monospace}
@media(max-width:800px){.promo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-frame-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.promo-grid{grid-template-columns:1fr}.feature-gallery summary{align-items:flex-start;flex-direction:column}.feature-frame-grid{gap:7px}}

.cinema-still-modal:not([hidden]){position:fixed;inset:0;z-index:110;background:rgba(0,0,0,.95);display:flex;align-items:center;justify-content:center;padding:18px}.cinema-still-dialog{width:min(1100px,100%)}.cinema-still-toolbar{display:flex;justify-content:space-between;align-items:center;color:#facc15;font:11px 'JetBrains Mono',monospace;margin-bottom:15px;gap:18px}.cinema-still-toolbar button{color:#f8f6f0;cursor:pointer}.cinema-still-dialog img{width:100%;max-height:82vh;object-fit:contain;background:#111}

/* Photography sequences: index as an expandable catalogue, Photography tab as an open exhibition. */
.mosaic-disclosure {margin:14px 0 20px; border-top:1px solid #55545b; border-bottom:1px solid #55545b;}
.mosaic-disclosure-toggle {
  cursor:pointer; list-style:none; display:flex; align-items:center; justify-content:space-between;
  gap:20px; min-height:98px; padding:24px 8px; color:#f8f6f0;
  transition: background-color .2s ease, padding .2s ease;
}
.mosaic-disclosure-toggle::-webkit-details-marker {display:none}
.mosaic-disclosure-toggle::marker {content:""}
.mosaic-disclosure-toggle:hover {background:rgba(250,204,21,.06);padding-left:16px}
.mosaic-disclosure-toggle:focus-visible{outline:2px solid #00d2d3;outline-offset:2px}
.mosaic-disclosure-title {display:flex;flex-wrap:wrap;align-items:baseline;gap:16px}
.mosaic-disclosure-id{font:700 10px "JetBrains Mono",monospace;color:#00d2d3;letter-spacing:.1em;white-space:nowrap}
.mosaic-disclosure-name{font:italic clamp(22px,3.1vw,34px) Georgia,serif;letter-spacing:-.02em}
.mosaic-disclosure-action{font:700 10px "JetBrains Mono",monospace;letter-spacing:.07em;color:#facc15;white-space:nowrap}
.mosaic-disclosure[open] > .mosaic-disclosure-toggle {border-bottom:1px dashed #55545b}
.mosaic-disclosure[open] > .mosaic-disclosure-toggle .mosaic-disclosure-action::before{content:""}
.mosaic-disclosure > .mosaic-spread{padding-top:30px}
.mosaic-disclosure .mosaic-spread > .mosaic-heading {display:none}
@media(max-width:640px){
  .mosaic-disclosure-toggle{min-height:80px;padding:19px 3px}
  .mosaic-disclosure-title{gap:6px;flex-direction:column}
  .mosaic-disclosure-action{font-size:9px}
}

.mosaic-disclosure .mosaic-expanded-heading{display:none!important}


.sound-subhead {display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 0;border-top:1px solid #55545b;border-bottom:1px solid #55545b;margin:27px 0 18px;font:700 11px/1.5 'JetBrains Mono',monospace;letter-spacing:.08em;color:#facc15}
.sound-subhead span:last-child{color:#a1a1aa;font-size:10px}
.sound-podcast-subhead{color:#00d2d3;margin-top:48px}
.sound-podcast-card{display:grid;grid-template-columns:1.25fr .75fr;border:2px dashed #515159;background:#22232a;box-shadow:5px 5px 0 #00d2d3;color:#f8f6f0;overflow:hidden}
.sound-podcast-main{padding:clamp(22px,3.5vw,42px)}
.sound-podcast-kicker{color:#facc15;font:700 10px 'JetBrains Mono',monospace;letter-spacing:.1em}
.sound-podcast-main h2{font:normal clamp(28px,3.3vw,43px)/1.1 Georgia,serif;margin:14px 0 14px}
.sound-podcast-main p{color:#d6d4d8;font:400 13px/1.85 Inter,sans-serif;max-width:510px;margin-bottom:24px}
.sound-podcast-link{display:inline-block;background:#00d2d3;color:#18181b;padding:13px 16px;border:2px solid #18181b;font:700 11px 'JetBrains Mono',monospace;letter-spacing:.07em;text-decoration:none;box-shadow:3px 3px 0 #ff4757;transition:transform .2s,box-shadow .2s}
.sound-podcast-link:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 #facc15}
.sound-podcast-art{position:relative;background:#facc15;color:#18181b;padding:25px;display:flex;flex-direction:column;justify-content:space-between;min-height:280px;border-left:2px solid #18181b}
.sound-podcast-art span{font:700 10px 'JetBrains Mono',monospace;letter-spacing:.15em}
.sound-podcast-art strong{font:900 clamp(24px,3.7vw,56px)/.92 Inter,sans-serif;letter-spacing:-.07em;overflow-wrap:break-word}
.sound-podcast-art i{position:absolute;right:20px;bottom:15px;font-style:normal;font-size:28px}
@media(max-width:700px){.sound-podcast-card{grid-template-columns:1fr}.sound-podcast-art{min-height:170px;border-left:0;border-top:2px solid #18181b}.sound-subhead{align-items:flex-start;flex-wrap:wrap}}

/* Integrated media player and on-site audio disclosures */
.media-source-link{display:inline-block;margin-top:12px;color:#facc15;font:700 10px 'JetBrains Mono',monospace;letter-spacing:.08em;text-decoration:underline}
.media-status{color:#a1a1aa;font:11px/1.6 Inter,sans-serif;margin-bottom:5px}
.audio-disclosure{margin-top:18px;border-top:1px solid #bcb7ad;padding-top:12px}
.audio-disclosure summary{cursor:pointer;color:#18181b;font:700 10px 'JetBrains Mono',monospace;letter-spacing:.06em;padding:6px 0 12px}
.audio-disclosure iframe{display:block;margin:8px 0 3px}
.podcast-player-note{font-size:11px;line-height:1.6;color:#a1a1aa;margin-top:10px;max-width:440px}
body.overlay-open{overflow:hidden}
#modal-iframe[hidden]{display:none}
#video-modal #modal-iframe{min-height:260px}

/* Locally supplied project artwork (2026-10-18 update) */
.media-art-cover{display:block;width:100%;height:100%;min-height:170px;max-height:260px;object-fit:cover;object-position:center;}
.cinema-extra-art:has(.media-art-cover){padding:0;overflow:hidden;min-height:170px;display:block;}
.cinema-extra-art:has(.media-art-cover)>span{display:none;}
.album-artwork{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;border:2px solid #16161a;margin-bottom:1rem;}
.podcast-cover-art{float:right;width:clamp(95px,25%,170px);aspect-ratio:1/1;object-fit:cover;margin:0 0 1rem 1rem;border:2px solid #222;}
.youtube-presenter-art{display:block;width:100%;max-height:380px;object-fit:cover;object-position:center 30%;margin-bottom:1.5rem;border:2px solid #27272a;}
.dictionary-art{width:100%;max-height:320px;object-fit:contain;object-position:left center;margin-bottom:1.5rem;}
.representation-block,.social-block{padding-top:1rem;border-top:1px dashed #3f3f46;}
@media(max-width:640px){.podcast-cover-art{float:none;width:135px;margin:0 0 1rem 0;}}

.promo-visual:has(.promo-thumb){position:relative;overflow:hidden}.promo-thumb{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.promo-visual:has(.promo-thumb) .promo-fallback-label{display:none}.promo-visual:has(.promo-thumb) .promo-ordinal{position:absolute;top:7px;left:7px;z-index:2;background:var(--promo-accent);padding:5px 7px;color:#18181b}

/* Preserve uncropped project artwork inside fixed thumbnail panels */
.cinema-extra-art.media-fit-complete {background:#17181c; display:flex; align-items:center; justify-content:center; min-height:260px;}
.cinema-extra-art.media-fit-complete .media-art-cover {display:block; width:100%; height:100%; max-height:none; min-height:0; object-fit:contain; object-position:center;}
.cinema-extra-art.media-fit-complete img[src*="PourRetourner_KeyArt_Quad"] {object-fit:contain;}
.promo-visual img.promo-thumb {object-fit:cover;}


/* October 18 tweak pass */
.cinema-extra-art-minute,
.cinema-extra-art-short{background:#17181c;display:flex;align-items:center;justify-content:center;min-height:260px;overflow:hidden;padding:0;}
.cinema-extra-art-minute .media-art-cover,
.cinema-extra-art-short .media-art-cover{display:block;width:100%;height:100%;max-height:none;min-height:0;object-fit:cover;object-position:center;}
.cinema-extra-art-minute img[src*='elsie-macgill'],
.cinema-extra-art-minute img[src*='vancouver-asahi-new']{object-position:center center;}
.cinema-extra-art-short img[src*='chloe-and-attie-new']{object-position:center 38%;}
.cinema-extra-art-short img[src*='pour-retourner-new']{object-position:center center;}


/* October 18 tweak pass v2 */
.cinema-extra-card{grid-template-columns:minmax(150px,42%) 1fr;}
.cinema-extra-art-minute,
.cinema-extra-art-short{min-height:230px;}
.cinema-extra-art-minute img[src*='elsie-macgill']{object-position:62% 22%;}
.cinema-extra-art-minute img[src*='vancouver-asahi-new']{object-position:center 18%;}
.cinema-extra-art-short img[src*='pour-retourner-new']{object-position:74% 16%;}
.cinema-extra-art-short img[src*='chloe-and-attie-new']{object-position:center 18%;}
#section-photography + #index-interlude-003 .interlude img{filter:brightness(.74) saturate(.96);} /* harmless if not adjacent */
#index-interlude-002 .interlude img{filter:grayscale(.95) contrast(1.02) brightness(.58);}
#index-interlude-003 .interlude img{filter:brightness(.76) saturate(.9);}
#index-interlude-002 .interlude::after,
#index-interlude-003 .interlude::after{background:linear-gradient(90deg,rgba(0,0,0,.60),transparent 88%);}


/* October 18 tweak pass v3 */
#index-interlude-002 .interlude img{object-position:center 18%;}
#index-interlude-003 .interlude img{object-position:center 52%;}


/* October 18 tweak pass v4 */
#index-interlude-002 .interlude img{object-position:center 7%;}
#index-interlude-001 .interlude img{object-position:center 42%;}
.cinema-extra-art-minute{min-height:208px;}
.cinema-extra-art-minute img[src*='elsie-macgill']{object-position:46% 24%;}
.cinema-extra-art-minute img[src*='vancouver-asahi-new']{object-position:center 12%;}


/* October 18 tweak pass v5 */
.cinema-extra-card{min-height:320px;height:320px;align-items:stretch;}
.cinema-extra-art-minute,.cinema-extra-art-short{min-height:100%;height:100%;}
.cinema-extra-copy{height:100%;}
.cinema-extra-art-minute img[src*='elsie-macgill']{object-position:72% 24%;}
#index-interlude-002 .interlude img{object-position:center 0%;}
@media(max-width:900px){.cinema-extra-card{height:auto;min-height:320px;}}
@media(max-width:550px){.cinema-extra-card{height:auto;}}

/* V13: authentic project attributions, essay viewing, and readable essay links */
.company-marks{display:flex;flex-wrap:wrap;align-items:center;gap:8px;border-top:1px solid #c6c4bd;padding-top:13px;margin-top:8px}
.company-marks span{border:1px solid #555;color:#26262a;background:transparent;padding:7px 9px;font:700 9px/1.3 'JetBrains Mono',monospace;letter-spacing:.07em;text-align:center;filter:grayscale(1)}
#section-writing article .essay-primary-link,#section-writing article .essay-secondary-link{display:inline-block;line-height:1.45;white-space:normal}
#section-writing article .essay-primary-link{font-size:12px;font-weight:800}
#section-writing article .essay-secondary-link{font-size:10px;opacity:.72}
#section-writing article .pt-4.border-t{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.essay-reader-overlay{position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.92);padding:clamp(10px,2.5vw,35px);align-items:center;justify-content:center}
.essay-reader-overlay:not([hidden]){display:flex}
.essay-reader-panel{width:min(1050px,100%);height:min(94vh,1060px);background:#16161a;border:2px solid #facc15;box-shadow:7px 7px 0 #00d2d3;display:flex;flex-direction:column;min-height:0}
.essay-reader-top{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:13px 18px;color:#facc15;font:700 12px 'JetBrains Mono',monospace;border-bottom:2px solid #34343a}
.essay-reader-top button{color:white;font-weight:700;cursor:pointer}
.essay-reader-top button:hover{color:#facc15}
#essay-reader-frame{width:100%;height:100%;border:0;background:#16161a;flex:1}
body.essay-reader-open{overflow:hidden}

/* Life Support: show poster supplied by its exact Vimeo player without relying on a guessed still. */
.promo-visual .promo-vimeo-preview{position:absolute;inset:0;width:100%;height:100%;border:0;z-index:1;pointer-events:none;background:transparent}
.promo-visual:has(.promo-vimeo-preview) .promo-ordinal{z-index:3}


/* Screenplays — same paper-card language as the prose archive */
.screenplay-intro{font:13px/1.8 Inter,sans-serif;color:#b8b8c0;margin:0 0 20px}
.screenplay-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.screenplay-card{display:flex;flex-direction:column;align-items:flex-start;padding:27px 28px;min-height:205px;background:#f8f6f0;color:#16161a;border:2px solid #101014;box-shadow:5px 5px 0 #facc15}
.screenplay-card:nth-child(2){box-shadow:5px 5px 0 #00d2d3}
.screenplay-card:nth-child(3){box-shadow:5px 5px 0 #ff4757}
.screenplay-card:nth-child(4){box-shadow:5px 5px 0 #facc15}
.screenplay-card-meta{font:700 10px/1.6 'JetBrains Mono',monospace;color:#606067;letter-spacing:.04em}
.screenplay-card h3{font:700 clamp(21px,2.4vw,29px)/1.2 Georgia,serif;margin:16px 0 9px}
.screenplay-card p{font:13px/1.6 Inter,sans-serif;color:#5d5d65;margin-bottom:25px}
.screenplay-open{margin-top:auto;padding-bottom:4px;border-bottom:2px solid #ff4757;font:700 11px 'JetBrains Mono',monospace;color:#16161a}
.screenplay-open:hover{color:#aa3048}
#essay-reader-overlay.screenplay-mode .essay-reader-panel{width:min(1100px,100%)}
#essay-reader-overlay.screenplay-mode #essay-reader-frame{background:#dedede}
@media(max-width:650px){.screenplay-grid{grid-template-columns:1fr}.screenplay-card{min-height:175px;padding:22px}}

/* Contact / correspondence overlay */
.contact-overlay[hidden]{display:none!important}
.contact-overlay{position:fixed;inset:0;z-index:110;display:flex;justify-content:center;align-items:center;padding:clamp(12px,3vw,36px);background:rgba(0,0,0,.93);backdrop-filter:blur(7px)}
.contact-panel{width:min(660px,100%);max-height:94dvh;overflow:auto;background:#17171c;color:#f8f6f0;border:2px solid #facc15;box-shadow:8px 8px 0 #00d2d3}
.contact-top{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:17px 24px;border-bottom:2px solid #38383e;color:#facc15;font:700 11px/1.4 'JetBrains Mono',monospace;letter-spacing:.06em}
.contact-close{color:#fff;font:700 12px 'JetBrains Mono',monospace;cursor:pointer;white-space:nowrap}.contact-close:hover{color:#facc15}
.contact-content{padding:clamp(20px,4vw,36px)}
.contact-content h2{font:italic 38px/1.13 Georgia,serif;margin:0 0 12px}
.contact-intro{font:13px/1.8 Inter,sans-serif;color:#b9b9c2;margin:0 0 25px;max-width:470px}
#contact-form{display:flex;flex-direction:column}
#contact-form label{font:700 11px/1.4 'JetBrains Mono',monospace;letter-spacing:.08em;margin:13px 0 7px}
#contact-form label span{color:#facc15}
#contact-form input:not([name="_gotcha"]),#contact-form textarea{display:block;width:100%;padding:13px 14px;border:2px solid #36363f;background:#f8f6f0;color:#15151a;font:14px/1.5 Inter,sans-serif;border-radius:0}
#contact-form textarea{min-height:120px;resize:vertical}
#contact-form input:focus,#contact-form textarea:focus{outline:2px solid #00d2d3;outline-offset:2px}
.contact-honeypot{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.contact-submit-row{display:flex;align-items:center;gap:20px;margin-top:22px}
.contact-send{background:#facc15;color:#16161a;border:2px solid #111;padding:13px 22px;font:800 12px 'JetBrains Mono',monospace;box-shadow:4px 4px 0 #00d2d3;cursor:pointer}
.contact-send:hover{background:#ffe262}.contact-send:disabled{opacity:.6;cursor:wait}
.contact-required{font:10px 'JetBrains Mono',monospace;color:#aaaab4}
.contact-feedback{font:13px/1.5 Inter,sans-serif;min-height:22px;margin:15px 0 0;color:#facc15}
.contact-feedback.error{color:#ff7b87}.contact-feedback.success{color:#8bedc9}
body.contact-modal-open{overflow:hidden}
@media(max-width:550px){.contact-content h2{font-size:31px}.contact-top{padding:13px 15px;font-size:9px}.contact-panel{max-height:95dvh}}

/* v21: Show the full photographic composition on phones, rather than square cover-crops. */
@media(max-width:700px){
  #index-interlude .interlude,
  #index-interlude-002 .interlude,
  #index-interlude-003 .interlude{min-height:330px;background:#111116;}
  #index-interlude .interlude-copy,
  #index-interlude-002 .interlude-copy,
  #index-interlude-003 .interlude-copy{min-height:330px;padding:19px 17px;}
  #index-interlude .interlude img,
  #index-interlude-002 .interlude img,
  #index-interlude-003 .interlude img{
    inset:0;width:100%;height:100%;object-fit:contain;transform:none;
  }
  #index-interlude .interlude:hover img,
  #index-interlude-002 .interlude:hover img,
  #index-interlude-003 .interlude:hover img{transform:none;}
  #index-interlude .interlude::after,
  #index-interlude-002 .interlude::after,
  #index-interlude-003 .interlude::after{background:linear-gradient(180deg,rgba(0,0,0,.57),rgba(0,0,0,.12) 31%,rgba(0,0,0,.16) 64%,rgba(0,0,0,.71));}
  #index-interlude .interlude-copy h3,
  #index-interlude-002 .interlude-copy h3,
  #index-interlude-003 .interlude-copy h3{font-size:clamp(23px,6vw,32px);line-height:1.2;}
}

/* v23 — continuous editorial archive; all sections stay on the Index. */
html{scroll-behavior:auto;} /* JS handles eased navigation; reduced motion uses instant scrolling. */
.work-section{scroll-margin-top:110px;}
@media (prefers-reduced-motion:reduce){.work-section{scroll-behavior:auto;}}

/* v25 Frontispiece: immersive opening and archival page separation. */
#frontispiece-screen[hidden]{display:none!important}
#frontispiece-screen{position:fixed;inset:0;z-index:9999;background:#151519}
#frontispiece-frame{width:100%;height:100%;border:0;display:block;background:#151519}
body.frontispiece-active{overflow:hidden!important}
body.frontispiece-active > header,body.frontispiece-active > main,body.frontispiece-active > footer{visibility:hidden}

/* 01.F / Campaign study — restrained companion to the Cinema archive */
.campaign-study{margin-top:clamp(44px,6vw,85px);padding-bottom:0}
.case-head{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(220px,.75fr);gap:clamp(26px,5vw,68px);margin:28px 0 32px}
.case-head h3{font:italic 400 clamp(38px,5.1vw,70px)/1.02 Georgia,serif;letter-spacing:-.035em;color:#f8f6f0;margin:0 0 12px}
.case-client{font:clamp(15px,1.6vw,20px)/1.45 Georgia,serif;color:#f8f6f0;margin:0}
.case-role{font:13px/1.65 Georgia,serif;color:#d4d4d8;margin:2px 0 20px}
.case-intro{font:clamp(17px,1.9vw,23px)/1.46 Georgia,serif;color:#eeeae2;border-top:1px solid #505058;padding-top:22px;margin:0;max-width:760px}
.case-facts{border-left:1px dashed #494952;padding-left:28px;font:11px/1.7 'JetBrains Mono',monospace;color:#e2e2e4}
.case-facts>div{border-bottom:1px dashed #494952;padding:0 0 14px;margin-bottom:14px;display:flex;flex-direction:column;gap:7px}.case-facts b{color:#facc15}.case-facts span{overflow-wrap:anywhere}
.case-video{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:#28282d;border:3px solid #facc15;box-shadow:5px 5px 0 #00d2d3}
.case-video img{display:block;width:100%;height:100%;object-fit:cover}.case-video-overlay{position:absolute;inset:0;display:flex;justify-content:center;align-items:center;gap:16px;background:linear-gradient(0deg,rgba(0,0,0,.55),transparent 50%);font:700 12px 'JetBrains Mono',monospace;color:white}.case-play{display:grid;place-items:center;width:65px;height:65px;border:2px solid white;border-radius:50%;background:#1b1b20a8;font-size:21px}
.case-breakdown{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;border-top:1px solid #474750;border-bottom:1px solid #474750;margin-top:35px;padding:26px 0}
.case-breakdown article{border-left:4px solid #facc15;padding-left:18px}.case-breakdown h4{font:italic 400 clamp(24px,2.7vw,36px)/1.2 Georgia,serif;color:#fff;margin:0 0 15px}.case-breakdown p{font:15px/1.7 Georgia,serif;color:#dddde2;margin:0}
.case-metrics{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px}.case-metrics div{border:1px solid #50505b;padding:19px 22px;display:flex;gap:23px;align-items:center}.case-metrics strong{font:italic 400 clamp(35px,4vw,59px) Georgia,serif;color:#f8f6f0;white-space:nowrap}.case-metrics span{font:700 10px/1.6 'JetBrains Mono',monospace;letter-spacing:.07em;color:#c0c1c9;border-left:1px dashed #585863;padding-left:22px}
.case-source{font:11px/1.8 'JetBrains Mono',monospace;color:#aaaab6;margin:15px 0 26px}.case-source a,.case-planner-heading a{color:#00d2d3;text-decoration:underline;text-underline-offset:3px}
.case-planner{border-top:1px solid #474750;padding-top:18px}.case-planner-heading{font:700 11px/1.5 'JetBrains Mono',monospace;color:#00d2d3;display:flex;justify-content:space-between;gap:20px;margin-bottom:16px}.case-planner img{width:100%;max-height:620px;object-fit:contain;object-position:left top;background:#f7f7f7}
@media(max-width:850px){.case-head{grid-template-columns:1fr}.case-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.case-breakdown{grid-template-columns:1fr;gap:25px}.case-breakdown article{max-width:750px}}
@media(max-width:600px){.case-facts{grid-template-columns:1fr}.case-metrics{grid-template-columns:1fr}.case-planner-heading{flex-direction:column}.case-video-overlay{gap:10px}.case-play{width:46px;height:46px}}

/* v28: original storyboard excerpts as a static editorial triptych */
.case-storyboards{margin-top:34px;border-top:1px solid #474750;padding-top:19px}
.case-storyboards-label{font:700 11px/1.55 'JetBrains Mono',monospace;color:#00d2d3;letter-spacing:.045em;margin-bottom:16px}
.case-storyboard-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.case-storyboard-strip img{display:block;width:100%;height:auto;aspect-ratio:1.1;object-fit:contain;background:#eee;border:1px solid #a3a3a8}
@media(max-width:580px){.case-storyboard-strip{gap:5px}.case-storyboard-strip img{border-width:1px}.case-storyboards-label{font-size:10px}}

/* v29: consistent five-frame shoot-planner strip */
.case-storyboard-strip{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}
.case-storyboard-strip img{aspect-ratio:1.07;object-fit:contain}
@media(max-width:580px){.case-storyboard-strip{gap:3px}}

/* v30: campaign materials panel */
.case-materials{margin:16px 0 18px}
.case-materials-label{font:700 11px/1.55 'JetBrains Mono',monospace;color:#00d2d3;letter-spacing:.045em;margin-bottom:14px}
.case-materials-grid{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:12px;align-items:stretch}
.case-material,.case-material-stack figure{margin:0}
.case-materials img{display:block;width:100%;height:100%;object-fit:cover;background:#efefef;border:1px solid #a3a3a8}
.case-material-tall img{aspect-ratio:0.72}
.case-material-stack{display:grid;grid-template-rows:1fr 1fr;gap:12px}
.case-material-stack img{aspect-ratio:2.55}
.case-source{margin:14px 0 8px}
@media(max-width:760px){
  .case-materials-grid{grid-template-columns:1fr;gap:10px}
  .case-material-tall img{aspect-ratio:1.05}
  .case-material-stack{grid-template-rows:auto;grid-template-columns:1fr;gap:10px}
  .case-material-stack img{aspect-ratio:1.9}
}


/* v31 campaign-study layout refinement */
.case-role{display:none}
.case-materials{margin:18px 0 10px}
.case-materials-layout{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(250px,.82fr);gap:18px;align-items:start}
.case-materials-grid{display:grid;grid-template-columns:minmax(0,.58fr) minmax(0,1fr);gap:12px;align-items:stretch}
.case-material,.case-material-stack figure{margin:0}
.case-materials img{display:block;width:100%;height:100%;object-fit:cover;background:#efefef;border:1px solid #a3a3a8}
.case-material-tall img{aspect-ratio:.72;object-position:center center}
.case-material-stack{display:grid;grid-template-rows:auto auto;gap:12px}
.case-material-stack figure:first-child img{aspect-ratio:1.95;object-position:center center}
.case-material-stack figure:last-child img{aspect-ratio:2.18;object-position:center center}
.case-metrics-panel{display:flex;flex-direction:column;gap:14px}
.case-metrics-vertical{display:grid;grid-template-columns:1fr;gap:12px;margin:0}
.case-metric-card{border:1px solid #50505b;padding:20px 22px;display:flex;flex-direction:column;gap:16px;min-height:178px;justify-content:flex-start;background:linear-gradient(180deg,rgba(10,14,24,.45),rgba(10,14,24,.12))}
.case-metric-card strong{font:italic 400 clamp(56px,4.5vw,82px)/0.95 Georgia,serif;color:#facc15;letter-spacing:-.035em;white-space:nowrap}
.case-metric-card span{font:700 12px/1.7 'JetBrains Mono',monospace;letter-spacing:.08em;color:#f5f5f7;border-top:1px solid #585863;padding-top:18px;text-transform:none}
.case-source{font:11px/1.8 'JetBrains Mono',monospace;color:#aaaab6;margin:0;padding-top:4px;border-top:1px solid #474750}
@media(max-width:1080px){
  .case-materials-layout{grid-template-columns:1fr}
  .case-metrics-panel{gap:12px}
  .case-metrics-vertical{grid-template-columns:1fr 1fr}
  .case-metric-card{min-height:unset}
}
@media(max-width:700px){
  .case-materials-grid{grid-template-columns:1fr;gap:10px}
  .case-material-tall img{aspect-ratio:1}
  .case-material-stack{gap:10px}
  .case-material-stack figure:first-child img{aspect-ratio:1.55}
  .case-material-stack figure:last-child img{aspect-ratio:1.65}
  .case-metrics-vertical{grid-template-columns:1fr}
}


/* v32: campaign materials alignment + reordered impact metrics */
.case-materials-layout{grid-template-columns:minmax(0,1.76fr) minmax(320px,.96fr);gap:20px;align-items:stretch}
.case-materials-grid{grid-template-columns:minmax(0,.52fr) minmax(0,1fr);gap:12px;align-items:stretch;height:100%}
.case-material-tall{height:100%}
.case-material-tall img{height:100%;aspect-ratio:auto;object-position:center center}
.case-material-stack{display:grid;grid-template-rows:auto auto;gap:12px;height:100%}
.case-material-stack figure:first-child img{aspect-ratio:1.82;object-fit:contain;object-position:center top;background:#241e21}
.case-material-stack figure:last-child img{aspect-ratio:3.06;object-fit:cover;object-position:center 42%}
.case-metrics-panel{display:grid;grid-template-rows:1fr auto;gap:12px;height:100%;align-items:stretch}
.case-metrics-vertical{display:grid;grid-template-columns:1fr;grid-template-rows:1fr 1fr;gap:12px;margin:0;height:100%}
.case-metric-card{min-height:0;justify-content:flex-start;padding:18px 22px}
.case-source{display:flex;align-items:flex-end;min-height:0;padding-top:12px}
@media(max-width:1080px){.case-materials-layout{grid-template-columns:1fr}.case-metrics-panel{grid-template-rows:auto auto;height:auto}.case-metrics-vertical{grid-template-columns:1fr 1fr;grid-template-rows:none;height:auto}.case-source{display:block}}
@media(max-width:700px){.case-materials-grid{grid-template-columns:1fr;gap:10px;height:auto}.case-material-tall img{aspect-ratio:1}.case-material-stack{height:auto}.case-material-stack figure:first-child img{aspect-ratio:1.6;object-fit:cover}.case-material-stack figure:last-child img{aspect-ratio:1.9}.case-metrics-vertical{grid-template-columns:1fr}}

/* v33: Screenplays now lead Writing & Prose, before short prose */
#section-writing .writing-screenplays{margin-top:28px;margin-bottom:40px}
#section-writing .writing-essay-subhead{margin:0 0 24px}
#section-writing .screenplay-archive .screenplay-grid{margin-bottom:0}
