:root{--ivory:#f3f3f0;--ink:#171717;--taupe:#8e9090;--paper:#fafaf8;--line:#c9caca;--dark:#11110f;--light:#f5f0e7}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;background-color:#f4f4f1;background-image:linear-gradient(rgba(250,250,248,.08),rgba(250,250,248,.08)),url('/images/damask-wallpaper-v72.webp');background-size:100% auto,100% auto;background-position:center top,center 78px;background-repeat:repeat-y,repeat-y}a{color:inherit}.nav{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(246,246,243,.92);backdrop-filter:blur(12px);z-index:20}.brand{font-family:Georgia,serif;font-size:23px;letter-spacing:.08em;text-decoration:none}.links{display:flex;gap:24px;font-size:12px;text-transform:uppercase;letter-spacing:.16em}.links a{text-decoration:none}.hero{min-height:calc(100vh - 78px);display:grid;grid-template-columns:1.05fr .95fr}.hero-copy{padding:9vw 6vw;display:flex;flex-direction:column;justify-content:center}.eyebrow,.section-label{text-transform:uppercase;letter-spacing:.2em;font-size:11px}.hero .eyebrow{margin-bottom:22px}.hero h1,.page-hero h1,.intro h2,.journal h2,.after h2,.page-title{font-family:Georgia,serif;font-weight:400;line-height:.92;letter-spacing:-.045em}.hero h1{font-size:clamp(58px,9vw,140px);margin:0 0 32px}.hero p{font-family:Georgia,serif;font-style:italic;font-size:clamp(20px,2vw,30px);max-width:620px;line-height:1.35}.quick-follow{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:28px}.quick-follow span{font-size:10px;text-transform:uppercase;letter-spacing:.2em;margin-right:6px}.quick-follow a{font-size:10px;text-transform:uppercase;letter-spacing:.14em;text-decoration:none;border-bottom:1px solid #171613;padding:6px 0}.hero-img{background:url('/images/editorial.jpeg') center 30%/cover no-repeat;min-height:650px}.marquee{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:17px 5vw;text-transform:uppercase;letter-spacing:.22em;font-size:10px;display:flex;justify-content:space-between;gap:20px}.intro{padding:10vw 7vw;display:grid;grid-template-columns:.75fr 1.25fr;gap:9vw}.intro h2,.journal h2,.after h2{font-size:clamp(42px,6vw,88px);margin:0}.intro p,.body-copy{font-size:18px;line-height:1.7;max-width:720px}.grid{display:grid;grid-template-columns:1fr;gap:18px;padding:0 5vw 10vw;max-width:1120px;margin:0 auto}.grid img{width:100%;display:block;object-fit:cover}.grid .rain-shot{height:min(78vh,820px);object-position:center 38%}.grid .shower-shot{height:auto;max-height:1000px;object-fit:contain;background:#eeeeeb}.grid .kneeling-shot{height:min(88vh,920px);object-position:center 40%}.journal{background:rgba(250,250,248,.16);padding:9vw 6vw}.journal-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:60px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.card{display:block;text-decoration:none}.card img{width:100%;height:390px;object-fit:cover}.card small{display:block;text-transform:uppercase;letter-spacing:.16em;margin-top:18px}.card h3{font-family:Georgia,serif;font-size:30px;font-weight:400;margin:10px 0}.card p{line-height:1.6}.read-more{text-transform:uppercase;letter-spacing:.16em;font-size:10px;border-bottom:1px solid;padding-bottom:4px;display:inline-block;margin-top:6px}.after{background:var(--dark);color:var(--light);display:grid;grid-template-columns:1.05fr .95fr;align-items:stretch;overflow:hidden}.after-visual{min-height:760px;background:linear-gradient(90deg,transparent 72%,var(--dark) 100%),url('/images/after-red.jpeg') center 44%/cover no-repeat}.after-copy{padding:9vw 7vw 9vw 4vw;display:flex;flex-direction:column;justify-content:center}.after p{font-size:18px;line-height:1.7;max-width:600px}.btns,.socials{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.btn{border:1px solid currentColor;padding:15px 22px;text-decoration:none;text-transform:uppercase;letter-spacing:.15em;font-size:11px}.btn.primary{background:var(--light);color:#181714}.follow{padding:9vw 6vw;text-align:center}.follow h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(42px,7vw,90px);margin:0 0 35px}.socials{justify-content:center}.page-hero{min-height:54vh;padding:10vw 7vw 7vw;display:flex;flex-direction:column;justify-content:end;border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(58px,10vw,130px);margin:18px 0 18px}.page-hero p{font-family:Georgia,serif;font-style:italic;font-size:clamp(20px,2.4vw,32px);max-width:760px;line-height:1.4}.page-wrap{max-width:1180px;margin:0 auto;padding:8vw 6vw}.two-col{display:grid;grid-template-columns:.72fr 1.28fr;gap:8vw}.story-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:42px 28px}.story-card{border-top:1px solid var(--line);padding-top:18px}.story-card img{width:100%;aspect-ratio:4/5;object-fit:cover}.story-card h2{font-family:Georgia,serif;font-size:clamp(30px,4vw,48px);font-weight:400;margin:12px 0}.story-card p{line-height:1.65}.empty-state{border:1px solid var(--line);padding:6vw;max-width:820px;background:rgba(250,250,248,.25)}.empty-state h2{font-family:Georgia,serif;font-size:clamp(34px,5vw,60px);font-weight:400;margin:0 0 18px}.legal h1{font-family:Georgia,serif;font-size:clamp(48px,7vw,90px);font-weight:400}.legal h2{font-family:Georgia,serif;font-size:30px;font-weight:400;margin-top:42px}.legal p{line-height:1.75;max-width:850px}footer{border-top:1px solid var(--line);padding:28px 5vw;display:flex;justify-content:space-between;gap:20px;font-size:11px;text-transform:uppercase;letter-spacing:.13em;background:rgba(246,246,243,.72)}
@media(max-width:800px){body{background-size:100% auto,100% auto;background-position:center top,center 92px}.links{gap:10px}.links a:nth-child(-n+2){display:none}.hero{grid-template-columns:1fr}.hero-copy{padding:18vw 7vw 12vw}.hero-img{min-height:70vh}.marquee span:nth-child(2){display:none}.intro,.two-col{grid-template-columns:1fr;gap:30px}.grid{padding-left:5vw;padding-right:5vw}.grid .rain-shot,.grid .shower-shot,.grid .kneeling-shot{height:auto;max-height:none;object-fit:contain}.cards,.story-grid{grid-template-columns:1fr}.card img{height:480px}.after{grid-template-columns:1fr}.after-visual{min-height:70vh;background:linear-gradient(0deg,var(--dark) 0,transparent 30%),url('/images/after-red.jpeg') center 44%/cover no-repeat}.after-copy{padding:16vw 7vw}.journal-head{display:block}.journal-head .section-label{margin-bottom:20px}.page-hero{padding:22vw 7vw 12vw;min-height:48vh}.page-wrap{padding:14vw 7vw}footer{flex-direction:column}}

/* V5.1 — editorial stories */
.hero p,.page-hero p{font-style:normal}.follow p{font-style:normal!important}.feature-grid{display:grid;gap:8vw}.feature-card{display:grid;grid-template-columns:1.15fr .85fr;gap:5vw;align-items:center;text-decoration:none}.feature-card.reverse{grid-template-columns:.85fr 1.15fr}.feature-card.reverse img{order:2}.feature-card img{width:100%;aspect-ratio:4/5;object-fit:cover}.feature-copy h2,.journal-lead h2{font-family:Georgia,serif;font-weight:400;letter-spacing:-.035em;font-size:clamp(42px,6vw,78px);line-height:.98;margin:16px 0 20px}.feature-copy p,.journal-lead p{font-size:17px;line-height:1.65;max-width:560px}.article{padding-bottom:7vw}.article-head{max-width:1100px;margin:0 auto;padding:9vw 7vw 5vw}.article-head h1{font-family:Georgia,serif;font-size:clamp(58px,9vw,120px);font-weight:400;line-height:.9;letter-spacing:-.05em;margin:22px 0 30px}.standfirst{font-family:Georgia,serif;font-size:clamp(21px,2.3vw,30px);line-height:1.45;max-width:820px;margin:0}.back-link{display:inline-block;text-transform:uppercase;letter-spacing:.16em;font-size:10px;text-decoration:none;margin-bottom:55px}.article-hero{max-width:1280px;margin:0 auto 7vw;padding:0 5vw}.article-hero img{width:100%;max-height:900px;object-fit:cover}.article-body{max-width:760px;margin:0 auto;padding:0 7vw}.article-body p{font-family:Arial,Helvetica,sans-serif;font-size:18px;line-height:1.82;margin:0 0 26px}.article-body h2{font-family:Georgia,serif;font-size:clamp(35px,5vw,56px);font-weight:400;line-height:1.03;letter-spacing:-.035em;margin:80px 0 28px}.pullquote{font-family:Georgia,serif!important;font-size:clamp(28px,4vw,45px)!important;line-height:1.25!important;letter-spacing:-.025em;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:34px 0;margin:55px 0!important}.signature{font-family:Georgia,serif!important;font-size:22px!important;margin-top:50px!important}.inline-photo{margin:60px -10vw}.inline-photo img{width:100%;display:block}.photo-pair{max-width:1120px;margin:6vw auto;display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:0 5vw}.photo-pair img{width:100%;height:650px;object-fit:cover}.photo-strip{max-width:1280px;margin:6vw auto;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:0 4vw}.photo-strip img{width:100%;height:520px;object-fit:cover}.next-story{max-width:760px;margin:8vw auto 0;padding:32px 7vw 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:30px;text-transform:uppercase;letter-spacing:.13em;font-size:10px}.next-story a{text-decoration:none}.journal-lead{display:grid;grid-template-columns:90px 1fr 1fr;gap:3vw;align-items:center;text-decoration:none;border-top:1px solid var(--line);padding-top:30px}.journal-lead img{width:100%;aspect-ratio:4/5;object-fit:cover}.journal-number{font-family:Georgia,serif;font-size:54px;align-self:start}.journal-note{margin-top:8vw;border-top:1px solid var(--line);padding-top:25px;display:grid;grid-template-columns:1fr 2fr;gap:30px}.journal-note span{font-size:10px;text-transform:uppercase;letter-spacing:.16em}.journal-note p{font-family:Georgia,serif;font-size:25px;line-height:1.4;margin:0;max-width:650px}.journal-article .article-body em{font-style:normal}.journal-article .article-body h2{border-top:1px solid var(--line);padding-top:32px}
@media(max-width:800px){.feature-card,.feature-card.reverse{grid-template-columns:1fr;gap:25px}.feature-card.reverse img{order:0}.feature-grid{gap:18vw}.article-head{padding-top:20vw}.article-hero{padding:0;margin-bottom:15vw}.article-hero img{max-height:none}.inline-photo{margin:50px -7vw}.photo-pair{grid-template-columns:1fr;padding:0;gap:8px}.photo-pair img{height:auto}.photo-strip{grid-template-columns:1fr 1fr;padding:0;gap:8px}.photo-strip img{height:390px}.photo-strip img:last-child{grid-column:1/-1;height:auto}.next-story{margin-top:16vw}.journal-lead{grid-template-columns:55px 1fr}.journal-lead img{grid-column:1/-1;grid-row:1;margin-bottom:25px}.journal-number{font-size:38px}.journal-note{grid-template-columns:1fr}.article-body h2{margin-top:65px}}


/* V5.1 review polish — mobile-first editorial rhythm */
img{max-width:100%}.feature-card,.journal-lead{transition:opacity .2s ease}.feature-card:hover,.journal-lead:hover{opacity:.82}.feature-copy .section-label,.journal-lead-copy .section-label{line-height:1.5}.article-body strong{font-weight:650}.article-body a{text-underline-offset:3px}.article-end{max-width:900px;margin:8vw auto 0;padding:38px 7vw 0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:24px}.article-end a{text-decoration:none;border:1px solid var(--line);padding:24px}.article-end small{display:block;text-transform:uppercase;letter-spacing:.16em;font-size:9px;margin-bottom:10px}.article-end strong{font-family:Georgia,serif;font-weight:400;font-size:24px;line-height:1.15}.page-hero p{max-width:700px}.story-card,.feature-card,.journal-lead{content-visibility:auto;contain-intrinsic-size:700px}.article-hero img{display:block;width:100%}.photo-pair img,.photo-strip img{display:block}.nav a:focus-visible,.btn:focus-visible,.feature-card:focus-visible,.journal-lead:focus-visible,.article-end a:focus-visible{outline:2px solid currentColor;outline-offset:4px}
@media(max-width:800px){.nav{height:68px;padding:0 5vw}.brand{font-size:19px;white-space:nowrap}.links{gap:13px;font-size:9px;letter-spacing:.11em}.hero-copy{padding-top:15vw}.page-hero{padding-top:18vw}.page-hero h1{font-size:clamp(50px,16vw,72px);line-height:.91}.page-hero p{font-size:19px;line-height:1.5}.feature-copy h2,.journal-lead h2{font-size:clamp(38px,12vw,54px)}.feature-copy p,.journal-lead p{font-size:16px}.article-head{padding:16vw 7vw 9vw}.article-head h1{font-size:clamp(52px,15vw,72px);line-height:.92}.standfirst{font-size:20px}.back-link{margin-bottom:38px}.article-body p{font-size:17px;line-height:1.78;margin-bottom:23px}.pullquote{font-size:clamp(27px,8.5vw,38px)!important;padding:28px 0;margin:44px 0!important}.photo-strip img{height:330px}.next-story{display:none}.article-end{grid-template-columns:1fr;margin-top:18vw;padding-top:28px;gap:12px}.article-end a{padding:20px}.article-end strong{font-size:22px}.journal-note p{font-size:22px}.page-wrap{padding-top:12vw}.feature-grid{gap:16vw}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.feature-card,.journal-lead{transition:none}}


/* V5.2 — branded-domain + final editorial finish */
:root{--reading:760px}
.article-end{max-width:var(--reading)}
.article-end a{background:rgba(250,250,248,.22);transition:transform .18s ease,background .18s ease}
.article-end a:hover{transform:translateY(-2px);background:rgba(250,250,248,.55)}
.journal-article .article-head{border-bottom:1px solid var(--line);margin-bottom:5vw}
.journal-article .article-head .section-label{display:inline-block;border:1px solid var(--line);padding:8px 11px}
.journal-article .article-body{max-width:800px}
.journal-article .pullquote{margin-left:-4vw!important;margin-right:-4vw!important;padding-left:4vw;padding-right:4vw}
.article:not(.journal-article) .article-head .section-label{border-left:3px solid var(--ink);padding-left:12px}
.article:not(.journal-article) .article-hero img{aspect-ratio:16/10;object-fit:cover}
.article-body{background:rgba(250,250,248,.10)}
.story-card img,.feature-card img,.journal-lead img{transition:transform .28s ease}
.story-card:hover img,.feature-card:hover img,.journal-lead:hover img{transform:scale(1.008)}
footer a{text-underline-offset:3px}
@media(max-width:800px){
  .hero h1{font-size:clamp(58px,18vw,82px)}
  .hero p{font-size:19px;line-height:1.5}
  .quick-follow{margin-top:22px}
  .article:not(.journal-article) .article-hero img{aspect-ratio:auto}
  .journal-article .article-head{margin-bottom:10vw}
  .journal-article .pullquote{margin-left:0!important;margin-right:0!important;padding-left:0;padding-right:0}
  .article-body{padding-left:7vw;padding-right:7vw}
  .article-end a:hover{transform:none}
  .story-card img,.feature-card img,.journal-lead img{transition:none}
}

/* V5.3 — discovery funnel: editorial first, adult destination clearly labelled */
.discovery{padding:8vw 6vw;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(250,250,248,.22)}
.discovery-head{display:grid;grid-template-columns:.65fr 1.35fr;gap:6vw;align-items:end;max-width:1120px;margin:0 auto 42px}
.discovery-head h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(40px,6vw,78px);line-height:.98;letter-spacing:-.04em;margin:0}
.discovery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;max-width:1120px;margin:auto}
.discovery-card{display:block;text-decoration:none;border:1px solid var(--line);padding:28px;background:rgba(250,250,248,.38);min-height:220px}
.discovery-card small{display:block;text-transform:uppercase;letter-spacing:.18em;font-size:9px;margin-bottom:28px}
.discovery-card h3{font-family:Georgia,serif;font-weight:400;font-size:clamp(28px,3vw,40px);margin:0 0 12px;line-height:1.05}
.discovery-card p{line-height:1.6;margin:0;max-width:470px}
.discovery-card:hover{background:rgba(250,250,248,.62)}
.after-note{font-size:12px!important;opacity:.75;max-width:520px!important}
.article-discovery{max-width:900px;margin:5vw auto 0;padding:0 7vw}
.article-discovery-inner{border-top:1px solid var(--line);padding-top:32px;display:grid;grid-template-columns:.65fr 1.35fr;gap:28px;align-items:start}
.article-discovery h3{font-family:Georgia,serif;font-size:30px;font-weight:400;margin:0 0 10px}
.article-discovery p{line-height:1.6;margin:0 0 16px}
.article-discovery a{text-transform:uppercase;letter-spacing:.15em;font-size:10px;text-underline-offset:5px}
@media(max-width:760px){.discovery{padding:72px 20px}.discovery-head{grid-template-columns:1fr;gap:18px;margin-bottom:28px}.discovery-grid{grid-template-columns:1fr}.discovery-card{min-height:0;padding:24px}.article-discovery{padding:0 22px;margin-top:56px}.article-discovery-inner{grid-template-columns:1fr;gap:12px}.article-discovery h3{font-size:27px}}


/* V5.4 — first-impression + mobile navigation polish */
.hero-actions{margin-top:28px;display:flex;flex-direction:column;align-items:flex-start;gap:20px}
.hero-actions .quick-follow{margin-top:0}
.hero-start{display:inline-flex;align-items:center;gap:14px;text-decoration:none;text-transform:uppercase;letter-spacing:.18em;font-size:10px;border:1px solid var(--ink);padding:14px 17px;background:rgba(250,250,248,.34)}
.hero-start span{font-size:14px;line-height:1}
.nav-after{border:1px solid currentColor;padding:8px 10px;margin:-8px 0}
.hero-copy{position:relative}
.hero-copy:after{content:'Creator · Journal · Behind the Shot';position:absolute;left:6vw;bottom:3.2vw;text-transform:uppercase;letter-spacing:.2em;font-size:9px;opacity:.58}
@media(max-width:800px){
  .nav{height:64px;padding:0 18px}
  .brand{font-size:18px;letter-spacing:.065em}
  .links{gap:8px;align-items:center}
  .links a{display:none!important}
  .links a[href="/behind-the-shot/"],.links .nav-after{display:inline-block!important}
  .links a[href="/behind-the-shot/"]{font-size:8px;letter-spacing:.09em;white-space:nowrap}
  .nav-after{font-size:8px;padding:7px 8px;margin:0}
  .hero{min-height:auto}
  .hero-copy{padding:64px 22px 52px;min-height:500px}
  .hero-copy:after{left:22px;bottom:20px;font-size:8px;letter-spacing:.15em}
  .hero .eyebrow{margin-bottom:16px}
  .hero h1{margin-bottom:20px}
  .hero-actions{margin-top:22px;gap:18px}
  .hero-start{padding:13px 15px}
  .quick-follow{gap:12px}
  .quick-follow span{width:100%;margin:0 0 -2px}
  .hero-img{min-height:62vh;background-position:center 30%}
  .marquee{padding:14px 20px;overflow:hidden;white-space:nowrap}
  .marquee span:first-child{display:block}
  .marquee span:nth-child(n+2){display:none}
}
@media(max-width:390px){
  .brand{font-size:16px}
  .links a[href="/behind-the-shot/"]{font-size:7px}
}

/* V5.7 — launch hardening */
.follow-deck{font-family:Georgia,serif;font-size:20px;margin:-15px auto 32px;max-width:620px}

/* V5.8 — desktop editorial art direction (mobile preserved) */
@media (min-width:1000px){
  /* Home photo diary: intentionally asymmetric rather than a mobile stack */
  .grid{max-width:1320px;grid-template-columns:1.12fr .72fr .86fr;grid-template-rows:auto auto;gap:34px 42px;align-items:start;padding:1vw 6vw 9vw}
  .grid .rain-shot{grid-column:1;grid-row:1 / span 2;width:100%;height:auto;max-height:720px;object-fit:cover;object-position:center 38%;margin-top:2vw}
  .grid .shower-shot{grid-column:2;grid-row:1;width:100%;height:auto;max-height:500px;object-fit:cover;background:transparent;margin-top:7vw}
  .grid .kneeling-shot{grid-column:3;grid-row:2;width:100%;height:auto;max-height:570px;object-fit:cover;object-position:center 40%;margin-top:-3vw}

  /* Home editorial stories: varied scale instead of three equal cards */
  .journal{padding:8vw 6vw 9vw}
  .journal-head{max-width:1320px;margin:0 auto 70px}
  .cards{max-width:1320px;margin:0 auto;grid-template-columns:1.28fr .86fr .86fr;gap:46px;align-items:start}
  .card img{height:auto;aspect-ratio:4/5;object-fit:cover}
  .card:first-child img{aspect-ratio:5/4}
  .card:first-child h3{font-size:clamp(36px,3.2vw,52px)}
  .card:nth-child(2){margin-top:8vw}
  .card:nth-child(3){margin-top:2vw}

  /* Behind the Shot index: two-page-spread rhythm */
  .feature-grid{grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:7vw;align-items:start}
  .feature-card,.feature-card.reverse{display:block}
  .feature-card.reverse{margin-top:11vw}
  .feature-card.reverse img{order:initial}
  .feature-card img{aspect-ratio:4/5;margin-bottom:28px}
  .feature-card:first-child img{aspect-ratio:5/4}
  .feature-copy{max-width:560px}

  /* Journal index: a true feature spread */
  .journal-lead{grid-template-columns:90px minmax(360px,.9fr) minmax(440px,1.1fr);gap:4vw;min-height:600px}
  .journal-lead img{aspect-ratio:5/4;max-height:620px}
  .journal-note{margin-left:94px;max-width:900px}

  /* Articles keep a readable column, while media breaks the column like print */
  .article-body{max-width:820px}
  .article-body .inline-photo{width:min(1120px,82vw);margin:70px 0 70px 50%;transform:translateX(-50%)}
  .photo-pair{max-width:1240px;gap:34px;padding:0 7vw}
  .photo-pair img{height:auto;max-height:720px}
  .photo-strip{max-width:1260px;grid-template-columns:1.12fr .78fr .92fr;gap:28px;padding:0 6vw;align-items:start}
  .photo-strip img{height:auto;max-height:610px;object-fit:cover}
  .photo-strip img:nth-child(2){margin-top:7vw}
  .photo-strip img:nth-child(3){margin-top:2vw}
}

/* Behind the Shot — subtle After Dark handoff */
.story-after-dark{max-width:760px;margin:4.5rem auto 1.5rem;padding:2.1rem 0;border-top:1px solid rgba(20,20,20,.22);border-bottom:1px solid rgba(20,20,20,.22)}
.story-after-dark h3{font-size:clamp(1.8rem,3vw,3rem);line-height:.98;margin:.55rem 0 1rem;font-weight:500;letter-spacing:-.035em}
.story-after-dark p{max-width:590px;font-size:1rem;line-height:1.7;margin:0 0 1.35rem;color:rgba(20,20,20,.72)}
.story-after-dark a{display:inline-block;color:inherit;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:.18rem;font-size:.82rem;text-transform:uppercase;letter-spacing:.11em}
@media(max-width:767px){.story-after-dark{margin:3.25rem 1.25rem 1rem;padding:1.6rem 0}.story-after-dark h3{font-size:1.8rem}.story-after-dark p{font-size:.96rem}}

/* V5.9 — true responsive editorial system + simplified story endings */
.story-after-dark,.article-discovery{display:none!important}
.story-footer{max-width:760px;margin:72px auto 26px;padding:34px 0 38px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.story-footer-label{text-transform:uppercase;letter-spacing:.2em;font-size:9px;margin-bottom:16px;opacity:.72}
.story-footer h3{font-family:Georgia,serif;font-weight:400;font-size:clamp(30px,3vw,44px);line-height:1.03;letter-spacing:-.025em;margin:0 0 12px}
.story-footer p{font-size:15px;line-height:1.65;max-width:520px;margin:0 0 20px;opacity:.76}
.story-footer a{display:inline-block;text-decoration:none;text-transform:uppercase;letter-spacing:.16em;font-size:10px;border-bottom:1px solid currentColor;padding-bottom:5px}
.article-end{margin-top:26px}

@media (min-width:1000px){
  /* Wide-screen article masthead: headline + deck share the canvas. */
  .article-head{max-width:1320px;margin-left:auto;margin-right:auto;padding:7vw 6vw 5vw;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);column-gap:8vw;align-items:end}
  .article-head .back-link,.article-head .section-label{grid-column:1 / -1}
  .article-head h1{grid-column:1;margin-bottom:0;font-size:clamp(70px,7.5vw,118px);max-width:850px}
  .article-head .standfirst{grid-column:2;margin:0 0 .7vw;max-width:430px;font-size:20px;line-height:1.55}
  .article-hero{max-width:1320px;margin:0 auto 6vw;padding:0 6vw}
  .article-hero img{width:100%;max-height:760px;object-fit:cover}

  /* Behind the Shot: readable text, deliberately offset between photo spreads. */
  .article:not(.journal-article) .article-body{max-width:1180px;padding-left:6vw;padding-right:6vw;background:transparent}
  .article:not(.journal-article) .article-body>p:not(.pullquote):not(.signature){max-width:650px}
  .article:not(.journal-article) .article-body:nth-of-type(even)>p:not(.pullquote):not(.signature){margin-left:auto;margin-right:6vw}
  .article:not(.journal-article) .pullquote{max-width:900px;font-size:clamp(40px,4.2vw,66px)!important;line-height:1.04;margin:72px auto!important;padding:42px 0}
  .article:not(.journal-article) .signature{max-width:650px;margin-left:auto;margin-right:6vw}
  .article-body .inline-photo{width:min(920px,68vw);margin:76px 0 76px auto;transform:none}
  .photo-pair{max-width:1280px;grid-template-columns:1.12fr .78fr;gap:42px;padding:0 6vw;margin-top:2vw;margin-bottom:7vw;align-items:start}
  .photo-pair img:nth-child(2){margin-top:8vw}
  .photo-strip{max-width:1280px;margin-top:2vw;margin-bottom:7vw}

  /* Journal: magazine reading column with headings/quotes breaking the grid. */
  .journal-article .article-body{max-width:1040px;padding-left:8vw;padding-right:8vw;background:transparent}
  .journal-article .article-body>p{max-width:700px;margin-left:auto;margin-right:auto}
  .journal-article .article-body>h2{max-width:880px;margin:92px auto 32px;font-size:clamp(34px,4vw,58px);line-height:1.02}
  .journal-article .pullquote{max-width:980px!important;margin:76px auto!important;padding:42px 0!important;font-size:clamp(40px,4.3vw,66px)!important;line-height:1.05}
  .journal-article .signature{max-width:700px!important}

  /* One clear ending: After Dark first, then two obvious onward routes. */
  .story-footer{max-width:1180px;margin:96px auto 28px;padding:42px 6vw;display:grid;grid-template-columns:.65fr 1.35fr;column-gap:7vw;align-items:start}
  .story-footer-label{grid-column:1;grid-row:1 / span 3;margin-top:7px}
  .story-footer h3,.story-footer p,.story-footer a{grid-column:2}
  .story-footer h3{font-size:clamp(38px,3.5vw,54px)}
  .article-end{max-width:1180px;padding:0 6vw;margin:28px auto 8vw;grid-template-columns:1fr 1fr;gap:14px}
}

@media (max-width:999px){
  /* Preserve the mobile/tablet reading flow, but make the ending feel native. */
  .story-footer{margin:54px 7vw 18px;padding:28px 0 30px}
  .story-footer h3{font-size:30px}
  .story-footer p{font-size:15px;line-height:1.65}
  .article-end{margin-top:18px}
}

/* V6.0 — structural desktop editorial layout. Mobile remains linear. */
@media (min-width:1000px){
  /* Behind the Shot: each chapter occupies the wide canvas, not a phone column. */
  .article:not(.journal-article) > .article-body.story-copy{
    width:min(1180px,88vw);max-width:none;margin:0 auto;padding:0;display:grid;
    grid-template-columns:repeat(12,minmax(0,1fr));column-gap:28px;background:transparent;
  }
  .article:not(.journal-article) > .story-copy > p:not(.pullquote):not(.signature){
    max-width:none;margin-left:0;margin-right:0;grid-column:2 / span 5;font-size:18px;line-height:1.82;
  }
  .article:not(.journal-article) > .story-copy-right > p:not(.pullquote):not(.signature){grid-column:7 / span 5}
  .article:not(.journal-article) > .story-copy .pullquote{
    grid-column:4 / span 7;width:auto;max-width:none!important;margin:70px 0!important;
    font-size:clamp(42px,4.5vw,68px)!important;line-height:1.04!important;
  }
  .article:not(.journal-article) > .story-copy-right .pullquote{grid-column:2 / span 8}
  .article:not(.journal-article) > .story-copy .signature{grid-column:7 / span 5;width:auto;max-width:none;margin:10px 0 0!important}
  .article:not(.journal-article) > .story-copy .inline-photo{grid-column:6 / span 7;width:auto;margin:58px 0 70px;transform:none}

  /* Journal: section title lives in a left rail, copy in a generous right column. */
  .journal-article > .article-body{width:min(1240px,90vw);max-width:none;padding:0;margin:0 auto;background:transparent}
  .journal-intro-copy{width:min(700px,58vw);margin:0 8% 80px auto}
  .journal-intro-copy>p{font-size:18px;line-height:1.82;margin:0 0 26px}
  .journal-section{display:grid;grid-template-columns:70px minmax(250px,330px) minmax(420px,650px);column-gap:42px;align-items:start;border-top:1px solid var(--line);padding:58px 0 76px}
  .journal-section-number{font-family:Georgia,serif;font-size:18px;opacity:.48;padding-top:8px}
  .journal-article .article-body .journal-section>h2{margin:0;padding:0;border:0;font-size:clamp(36px,3.6vw,56px);line-height:1.02;max-width:none}
  .journal-section-copy{min-width:0}
  .journal-section-copy>p{max-width:none;margin:0 0 25px;font-size:18px;line-height:1.82}
  .journal-section-copy>.pullquote{width:calc(100% + 130px);max-width:none!important;margin:52px 0 52px -130px!important;padding:32px 0!important;font-size:clamp(38px,3.8vw,58px)!important;line-height:1.08!important}
  .journal-section:nth-child(even){grid-template-columns:minmax(420px,650px) minmax(250px,330px) 70px}
  .journal-section:nth-child(even) .journal-section-number{grid-column:3;grid-row:1}
  .journal-section:nth-child(even)>h2{grid-column:2;grid-row:1}
  .journal-section:nth-child(even) .journal-section-copy{grid-column:1;grid-row:1}
  .journal-section:nth-child(even) .journal-section-copy>.pullquote{width:calc(100% + 120px);margin-left:0!important;margin-right:-120px!important}

  /* End of story: one editorial continuation, then quiet navigation. */
  .story-footer{width:min(1180px,88vw);max-width:none;margin:86px auto 0;padding:28px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:220px 1fr;gap:28px;align-items:center}
  .story-footer-label{margin:0;grid-column:1;grid-row:1;font-size:9px}
  .story-footer-line{grid-column:2;display:flex;align-items:baseline;justify-content:space-between;gap:32px}
  .story-footer-question{font-family:Georgia,serif;font-size:clamp(24px,2.2vw,34px);line-height:1.12}
  .story-footer-line a{flex:0 0 auto;text-decoration:none;text-transform:uppercase;letter-spacing:.16em;font-size:10px;border-bottom:1px solid currentColor;padding-bottom:5px}
  .article-end{width:min(1180px,88vw);max-width:none;margin:0 auto 8vw;padding:24px 0 0;border:0;display:flex;justify-content:space-between;gap:28px}
  .article-end a{border:0;background:transparent;padding:0;min-width:0}
  .article-end a:last-child{text-align:right}
  .article-end strong{font-size:20px}
}

@media (max-width:999px){
  .journal-intro-copy,.journal-section-copy{display:contents}
  .journal-section{display:contents}
  .journal-section-number{display:none}
  .journal-article .article-body .journal-section>h2{font-family:Georgia,serif;font-size:clamp(35px,10vw,50px);font-weight:400;line-height:1.03;letter-spacing:-.035em;margin:65px 0 28px;border-top:1px solid var(--line);padding-top:32px}
  .story-footer{margin:52px 7vw 0;padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
  .story-footer-line{display:flex;flex-direction:column;align-items:flex-start;gap:16px}
  .story-footer-question{font-family:Georgia,serif;font-size:25px;line-height:1.15}
  .story-footer-line a{text-decoration:none;text-transform:uppercase;letter-spacing:.14em;font-size:10px;border-bottom:1px solid currentColor;padding-bottom:4px}
  .article-end{margin:0 7vw 12vw;padding:20px 0 0;border:0;display:flex;justify-content:space-between;gap:20px}
  .article-end a{border:0;background:transparent;padding:0;min-width:0}
  .article-end a:last-child{text-align:right}
  .article-end small{font-size:8px}.article-end strong{font-size:17px}
}

/* V6.1 — cache-busted final responsive editorial release */
.story-footer{background:transparent!important}
@media (max-width:999px){
  .story-footer{margin:46px 7vw 0;padding:22px 0 24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
  .story-footer-label{font-size:8px;letter-spacing:.19em;margin:0 0 13px;opacity:.68}
  .story-footer-line{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:end}
  .story-footer-question{font-family:Georgia,serif;font-weight:400;font-size:22px;line-height:1.16;letter-spacing:-.015em;max-width:360px}
  .story-footer-line a{font-size:9px;letter-spacing:.14em;white-space:nowrap;padding-bottom:3px}
  .article-end{margin:0 7vw 11vw;padding:18px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:18px;border:0}
  .article-end a{padding:0;border:0;background:transparent}
  .article-end small{font-size:7px;letter-spacing:.15em;margin-bottom:7px;opacity:.66}
  .article-end strong{font-family:Georgia,serif;font-weight:400;font-size:16px;line-height:1.18}
}
@media (max-width:560px){
  .story-footer-line{grid-template-columns:1fr;gap:13px}
  .story-footer-question{font-size:21px}
}

/* V6.2 — desktop readability correction: editorial, generous, readable */
@media (min-width:1000px){
  /* Long-form Journal: two-column editorial rhythm, not tiny magazine fragments. */
  .journal-article > .article-body{width:min(1180px,88vw);max-width:none;margin:0 auto;padding:0;background:transparent}
  .journal-intro-copy{width:min(760px,68vw);margin:0 auto 90px}
  .journal-intro-copy>p{font-size:20px;line-height:1.72;margin:0 0 28px}
  .journal-intro-copy>.pullquote{width:min(920px,76vw);margin:58px 0 58px 50%!important;transform:translateX(-50%);font-size:clamp(40px,3.5vw,56px)!important;line-height:1.08!important}
  .journal-section,.journal-section:nth-child(even){display:grid;grid-template-columns:minmax(230px,320px) minmax(0,760px);column-gap:72px;align-items:start;border-top:1px solid var(--line);padding:70px 0 88px}
  .journal-section-number,.journal-section:nth-child(even) .journal-section-number{grid-column:1;grid-row:1;font-size:13px;letter-spacing:.12em;padding-top:7px;margin-bottom:18px;opacity:.48}
  .journal-article .article-body .journal-section>h2,.journal-section:nth-child(even)>h2{grid-column:1;grid-row:1;margin:34px 0 0;padding:0;border:0;font-size:clamp(38px,3.2vw,52px);line-height:1.02;max-width:300px}
  .journal-section-copy,.journal-section:nth-child(even) .journal-section-copy{grid-column:2;grid-row:1;min-width:0}
  .journal-section-copy>p{font-size:20px;line-height:1.72;margin:0 0 28px;max-width:760px}
  .journal-section-copy>.pullquote,.journal-section:nth-child(even) .journal-section-copy>.pullquote{width:min(880px,70vw);max-width:none!important;margin:58px 0 58px -90px!important;padding:34px 0!important;font-size:clamp(40px,3.6vw,58px)!important;line-height:1.08!important}

  /* Behind the Shot: readable story column with editorial offsets. */
  .article:not(.journal-article) > .article-body.story-copy{width:min(1180px,88vw);max-width:none;margin:0 auto;padding:0;display:grid;grid-template-columns:1fr minmax(620px,760px) 1fr;column-gap:38px;background:transparent}
  .article:not(.journal-article) > .story-copy > p:not(.pullquote):not(.signature),
  .article:not(.journal-article) > .story-copy-right > p:not(.pullquote):not(.signature){grid-column:2;max-width:760px;margin-left:0;margin-right:0;font-size:20px;line-height:1.72}
  .article:not(.journal-article) > .story-copy .pullquote,
  .article:not(.journal-article) > .story-copy-right .pullquote{grid-column:1 / -1;width:min(920px,76vw);justify-self:center;max-width:none!important;margin:68px 0!important;font-size:clamp(42px,4vw,62px)!important;line-height:1.06!important}
  .article:not(.journal-article) > .story-copy .signature{grid-column:2;font-size:24px!important;margin:18px 0 0!important}
  .article:not(.journal-article) > .story-copy .inline-photo{grid-column:1 / -1;width:min(980px,78vw);justify-self:center;margin:64px 0 78px;transform:none}

  /* End treatment belongs to the article: restrained and consistent. */
  .story-footer{width:min(920px,76vw);max-width:none;margin:82px auto 0;padding:26px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:180px 1fr;gap:34px;align-items:center;background:transparent!important}
  .story-footer-label{grid-column:1;grid-row:1;margin:0;font-size:9px;letter-spacing:.18em;opacity:.68}
  .story-footer-line{grid-column:2;display:flex;align-items:baseline;justify-content:space-between;gap:30px}
  .story-footer-question{font-family:Georgia,serif;font-size:28px;line-height:1.15;font-weight:400}
  .story-footer-line a{font-size:10px;letter-spacing:.14em;white-space:nowrap}
  .article-end{width:min(920px,76vw);max-width:none;margin:0 auto 7vw;padding:22px 0 0;display:flex;justify-content:space-between;gap:28px;border:0}
  .article-end strong{font-size:19px}
}

/* V6.3 — expandable editorial system + responsive photo mosaic */
@media (min-width:1000px){
  .home-mosaic{max-width:1360px;margin:0 auto;padding:2vw 6vw 10vw;display:grid;grid-template-columns:1.05fr .72fr .88fr 1fr;grid-auto-rows:80px;gap:24px;align-items:stretch}
  .home-mosaic img{width:100%;height:100%;max-height:none!important;object-fit:cover;margin:0!important;display:block}
  .home-mosaic .mosaic-1{grid-column:1;grid-row:1 / span 6;object-position:center 38%}
  .home-mosaic .mosaic-2{grid-column:2;grid-row:2 / span 4;object-position:center 35%}
  .home-mosaic .mosaic-3{grid-column:3 / span 2;grid-row:1 / span 5;object-position:center 40%}
  .home-mosaic .mosaic-4{grid-column:1 / span 2;grid-row:7 / span 5;object-position:center 35%}
  .home-mosaic .mosaic-5{grid-column:3;grid-row:6 / span 4;object-position:center 42%}
  .home-mosaic .mosaic-6{grid-column:4;grid-row:6 / span 6;object-position:center 35%}
  .home-mosaic .mosaic-7{grid-column:1;grid-row:12 / span 5;object-position:center 30%}
  .home-mosaic .mosaic-8{grid-column:2;grid-row:12 / span 5;object-position:center 28%}
  .home-mosaic .mosaic-9{grid-column:3 / span 2;grid-row:12 / span 5;object-position:center 45%}
}
@media (max-width:999px){
  .home-mosaic{padding:0 5vw 12vw;display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:none}
  .home-mosaic img{width:100%;height:auto!important;max-height:none!important;object-fit:cover!important;margin:0!important;background:transparent}
  .home-mosaic .mosaic-1,.home-mosaic .mosaic-4,.home-mosaic .mosaic-9{grid-column:1 / -1}
  .home-mosaic .mosaic-2,.home-mosaic .mosaic-3,.home-mosaic .mosaic-5,.home-mosaic .mosaic-6,.home-mosaic .mosaic-7,.home-mosaic .mosaic-8{aspect-ratio:4/5;height:100%!important;object-fit:cover!important}
  .home-mosaic .mosaic-9{aspect-ratio:1.25/1;object-fit:cover!important;object-position:center 45%}
  /* BTS index images must fit the phone immediately; no desktop intrinsic-height carryover. */
  .feature-card,.feature-card.reverse{content-visibility:visible;contain:none}
  .feature-card img{width:100%;height:auto;aspect-ratio:auto;max-height:none;object-fit:contain;margin:0 0 24px;background:transparent}
}

/* V6.4 — final mosaic bridge + Behind the Shot mobile cover correction */
@media (min-width:1000px){
  /* Fill the deliberate upper-middle negative space without competing with the anchor images. */
  .home-mosaic .mosaic-10{grid-column:2;grid-row:6 / span 5;object-position:center 38%}
}
@media (max-width:999px){
  /* The extra desktop bridge image joins the phone sequence as a normal portrait tile. */
  .home-mosaic .mosaic-10{aspect-ratio:4/5;height:100%!important;object-fit:cover!important;object-position:center 38%}

  /* BTS archive covers are intentionally cropped for the phone viewport. This prevents
     portrait source files with large empty upper areas from making visitors scroll before
     reaching the people in the photograph. */
  .content-archive .feature-card img{
    width:100%;
    height:auto!important;
    aspect-ratio:4/5!important;
    object-fit:cover!important;
    margin:0 0 24px!important;
    background:transparent;
  }
  .content-archive .feature-card:first-child img{object-position:center 78%}
  .content-archive .feature-card.reverse img{object-position:center 50%}
}


/* V6.5 — collaboration contact */
.collab-callout{width:min(1180px,88vw);margin:0 auto 9vw;padding:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:.62fr 1.38fr;gap:7vw;align-items:stretch;background:rgba(250,250,248,.18)}
.collab-kicker{padding:42px 0;text-transform:uppercase;letter-spacing:.18em;font-size:9px;line-height:1.7;opacity:.62}
.collab-copy{padding:42px 5vw 46px 0;border-left:1px solid var(--line);padding-left:5vw}
.collab-copy .section-label{margin-bottom:18px}
.collab-copy h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(46px,6vw,82px);line-height:.92;letter-spacing:-.045em;margin:0 0 24px}
.collab-copy p{max-width:650px;font-size:17px;line-height:1.7;margin:0 0 12px}
.collab-telegram{margin-top:28px;display:inline-flex;align-items:flex-end;justify-content:space-between;gap:44px;min-width:min(100%,520px);padding:20px 0 13px;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);text-decoration:none;transition:transform .2s ease,padding-left .2s ease}
.collab-telegram span{text-transform:uppercase;letter-spacing:.16em;font-size:11px}
.collab-telegram small{font-family:Georgia,serif;font-size:16px;white-space:nowrap}
.collab-telegram:hover{transform:translateX(4px);padding-left:4px}
.collab-telegram:focus-visible{outline:2px solid currentColor;outline-offset:6px}
.collab-telegram.standalone{margin-top:18px}
.contact-collab{align-items:start}
@media(max-width:800px){.collab-callout{width:86vw;margin:2vw auto 16vw;grid-template-columns:1fr;gap:0}.collab-kicker{padding:25px 0 20px}.collab-copy{border-left:0;border-top:1px solid var(--line);padding:28px 0 32px}.collab-copy h2{font-size:48px}.collab-copy p{font-size:16px}.collab-telegram{width:100%;min-width:0;gap:18px;align-items:flex-start;flex-direction:column;padding:18px 0 14px}.collab-telegram small{font-size:15px}}
/* V6.6 — mosaic placement + About portrait/personality */
@media (min-width:1000px){
  /* The hotel-window bridge belongs ABOVE the smaller tiled image, in the pale upper-centre gap. */
  .home-mosaic .mosaic-10{grid-column:2;grid-row:1 / span 4;object-position:center 38%}
  .home-mosaic .mosaic-2{grid-column:2;grid-row:5 / span 4;object-position:center 35%}
}
.about-short{max-width:1180px;display:grid;grid-template-columns:.55fr 1.15fr .55fr;gap:5vw;align-items:start}
.about-short-copy{min-width:0}
.about-mini{margin:0;align-self:start;transform:translateY(6px)}
.about-mini img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 30%;border:1px solid rgba(23,23,23,.18)}
.about-mini figcaption{margin-top:10px;text-transform:uppercase;letter-spacing:.16em;font-size:9px;opacity:.58}
.about-cheek{font-family:Georgia,serif;font-size:clamp(25px,2.6vw,38px);line-height:1.12;letter-spacing:-.025em;margin:36px 0 4px;padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.about-cheek span{font-style:italic}
@media(max-width:800px){
  .about-short{grid-template-columns:1fr;gap:28px}
  .about-mini{grid-row:2;width:min(64vw,280px);justify-self:end;margin:-4px 0 8px}
  .about-short-copy{grid-row:3}
  .about-cheek{font-size:29px;margin-top:30px}
}


/* V6.7 — surgical desktop mosaic, mobile flow, About portrait sizing */
@media (min-width:1000px){
  /* Lock the upper-centre stack: standing-window portrait first, robe portrait directly below. */
  .home-mosaic .mosaic-10{grid-column:2 !important;grid-row:1 / span 4 !important;object-position:center 38% !important;z-index:2}
  .home-mosaic .mosaic-2{grid-column:2 !important;grid-row:5 / span 4 !important;object-position:center 35% !important;z-index:1}
}

/* Give the About portrait more presence without forcing/cropping its proportions. */
.about-short{grid-template-columns:.48fr 1.12fr .72fr;gap:4vw}
.about-mini{width:100%;max-width:330px}
.about-mini img{width:100%;height:auto !important;aspect-ratio:auto !important;object-fit:contain !important;object-position:center !important}

@media(max-width:800px){
  /* Dense packing lets later half-width portraits fill any vacant partner cell instead of leaving a wallpaper hole. */
  .home-mosaic{grid-auto-flow:dense;align-items:start}
  .home-mosaic .mosaic-1,.home-mosaic .mosaic-4{grid-column:1 / -1}
  .home-mosaic .mosaic-9{grid-column:1 / -1}
  .home-mosaic .mosaic-2,.home-mosaic .mosaic-10,.home-mosaic .mosaic-3,.home-mosaic .mosaic-5,.home-mosaic .mosaic-6,.home-mosaic .mosaic-7,.home-mosaic .mosaic-8{grid-column:auto}
  .about-short{grid-template-columns:1fr;gap:28px}
  .about-mini{grid-row:2;width:min(72vw,320px);max-width:320px;justify-self:end;margin:-4px 0 8px}
}

/* V6.8 — desktop-only upper-centre mosaic crop correction */
@media (min-width:1000px){
  /* Give the standing-window portrait enough vertical room to read as a full editorial portrait. */
  .home-mosaic .mosaic-10{
    grid-column:2 !important;
    grid-row:1 / span 6 !important;
    object-fit:cover !important;
    object-position:center 44% !important;
    z-index:2;
  }
  /* Robe portrait follows directly beneath the standing-window portrait. */
  .home-mosaic .mosaic-2{
    grid-column:2 !important;
    grid-row:7 / span 4 !important;
    object-fit:cover !important;
    object-position:center 35% !important;
    z-index:1;
  }
}


/* V6.10 — V6.8 desktop composition, shower tile removed, bed tile fills its gap */
@media (min-width:1000px){
  /* Shower/robe tile is removed in HTML. Keep all other V6.8 placements unchanged. */
  .home-mosaic .mosaic-5{
    grid-column:2 / span 2 !important;
    grid-row:7 / span 4 !important;
    object-fit:cover !important;
    object-position:center 42% !important;
    z-index:1;
  }
}

/* V6.11 — desktop mosaic alignment only: centre feature + slim bed tile */
@media (min-width:1000px){
  /* Top composition: slim portrait / large feature / slim portrait. */
  .home-mosaic .mosaic-1{
    grid-column:1 !important;
    grid-row:1 / span 6 !important;
  }
  .home-mosaic .mosaic-3{
    grid-column:2 / span 2 !important;
    grid-row:1 / span 6 !important;
    object-fit:cover !important;
    object-position:center 40% !important;
    z-index:1;
  }
  .home-mosaic .mosaic-10{
    grid-column:4 !important;
    grid-row:1 / span 6 !important;
    object-fit:cover !important;
    object-position:center 44% !important;
    z-index:1;
  }
  /* Smiling bed image becomes a slim tile in the open middle gap. */
  .home-mosaic .mosaic-5{
    grid-column:3 !important;
    grid-row:7 / span 4 !important;
    object-fit:cover !important;
    object-position:center 38% !important;
    z-index:1;
  }
}


/* V6.12 — collaboration portrait, based directly on V6.11 */
.collab-callout{grid-template-columns:.62fr 1.38fr;gap:7vw;}
.collab-portrait{margin:0;padding:42px 0;align-self:stretch;min-width:0;}
.collab-portrait img{display:block;width:100%;height:100%;max-height:620px;aspect-ratio:3/4;object-fit:cover;object-position:center 28%;border:1px solid rgba(23,23,23,.18);}
@media(max-width:800px){
  .collab-callout{grid-template-columns:1fr;gap:0;}
  .collab-portrait{padding:26px 0 0;width:min(64vw,280px);justify-self:start;}
  .collab-portrait img{height:auto;max-height:none;aspect-ratio:3/4;object-fit:cover;object-position:center 28%;}
  .collab-copy{border-left:0;border-top:1px solid var(--line);padding:28px 0 32px;}
}


/* V6.13 — About image swap + leftward editorial balance + camera tile crop */
@media (min-width:1000px){
  /* Keep the approved mosaic geometry; only tighten the camera-selfie crop. */
  .home-mosaic .mosaic-6{
    object-fit:cover !important;
    object-position:center 28% !important;
  }

  /* Pull the About composition left and give both portraits matching visual weight. */
  .about-short{
    max-width:1240px;
    grid-template-columns:.30fr 1.05fr .72fr;
    column-gap:3.2vw;
  }
  .about-short-copy{transform:translateX(-1.5vw);}
  .about-mini{
    width:100%;
    max-width:360px;
    transform:translate(-1vw,6px);
  }
  .about-mini img{
    width:100% !important;
    height:auto !important;
    aspect-ratio:3/4 !important;
    object-fit:cover !important;
    object-position:center 28% !important;
  }
  .collab-callout{
    grid-template-columns:.72fr 1.28fr;
    gap:5.5vw;
  }
  .collab-portrait{padding:42px 0;}
  .collab-portrait img{
    width:100%;
    height:auto;
    max-height:none;
    aspect-ratio:3/4;
    object-fit:cover;
    object-position:center 30%;
  }
}
@media(max-width:800px){
  .about-short-copy{transform:none;}
  .about-mini img,.collab-portrait img{aspect-ratio:3/4 !important;object-fit:cover !important;}
}

/* V6.14 — surgical fixes: mobile About centring + camera-tile gutter */
@media (min-width:1000px){
  /* Start the camera tile one grid row lower so the standard mosaic gap is visible above it. */
  .home-mosaic .mosaic-6{
    grid-column:4 !important;
    grid-row:7 / span 5 !important;
    object-fit:cover !important;
    object-position:center 28% !important;
    z-index:1;
  }
}
@media (max-width:800px){
  /* Centre the portrait and caption as one editorial block on mobile. */
  .about-mini{
    width:min(72vw,320px) !important;
    max-width:320px !important;
    justify-self:center !important;
    margin:0 auto 8px !important;
    transform:none !important;
  }
  .about-mini img{width:100% !important;display:block !important;}
}


/* V6.15 — architecture + menu + native desktop flow + restrained reveal motion */
body.menu-open{overflow:hidden}
.nav{transition:background-color .25s ease,box-shadow .25s ease}
.menu-toggle{appearance:none;border:0;background:transparent;color:inherit;font:inherit;text-transform:uppercase;letter-spacing:.16em;font-size:11px;cursor:pointer;padding:10px 0;display:inline-flex;align-items:center;gap:10px}
.menu-toggle::after{content:'+';font-family:Arial,sans-serif;font-size:16px;font-weight:300;line-height:1;transition:transform .25s ease}
body.menu-open .menu-toggle::after{transform:rotate(45deg)}
.menu-panel{position:fixed;inset:78px 0 0;z-index:19;display:grid;grid-template-columns:.72fr 1.28fr;gap:7vw;padding:6vh 6vw 5vh;background-color:rgba(244,244,241,.985);background-image:linear-gradient(rgba(250,250,248,.08),rgba(250,250,248,.08)),url('/images/damask-wallpaper-v72.webp');background-size:100% auto,100% auto;background-position:center top,center top;border-bottom:1px solid var(--line);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-12px);transition:opacity .28s ease,transform .28s ease,visibility .28s ease}
body.menu-open .menu-panel{opacity:1;visibility:visible;pointer-events:auto;transform:none}
.menu-meta{display:flex;flex-direction:column;justify-content:space-between;min-height:58vh;padding-top:8px}
.menu-meta p{max-width:330px;font-family:Georgia,serif;font-size:20px;line-height:1.45;margin:18px 0 0}
.menu-social{display:flex;gap:18px;flex-wrap:wrap}.menu-social a{text-decoration:none;text-transform:uppercase;letter-spacing:.16em;font-size:10px;border-bottom:1px solid currentColor;padding-bottom:5px}
.menu-nav{border-left:1px solid var(--line);padding-left:6vw;display:flex;flex-direction:column;justify-content:center}
.menu-nav a{font-family:Georgia,serif;font-size:clamp(42px,5.4vw,78px);line-height:1.02;letter-spacing:-.035em;text-decoration:none;padding:.08em 0;transition:transform .2s ease,opacity .2s ease}
.menu-nav a:hover{transform:translateX(8px)}
.menu-nav .menu-after{font-family:Arial,Helvetica,sans-serif;font-size:11px;line-height:1.2;letter-spacing:.18em;text-transform:uppercase;margin-top:28px;padding-top:22px;border-top:1px solid var(--line);max-width:520px}

@media(min-width:1000px){
  /* A wider, viewport-led desktop canvas without changing content order or the approved mosaic geometry. */
  .hero{min-height:calc(100svh - 78px);grid-template-columns:minmax(0,1fr) minmax(520px,.92fr)}
  .hero-copy{padding:clamp(70px,8vh,120px) clamp(70px,7vw,140px);min-height:calc(100svh - 78px)}
  .hero-img{min-height:calc(100svh - 78px)}
  .intro{min-height:78svh;align-items:center;padding:10vh max(7vw,calc((100vw - 1440px)/2 + 6vw));grid-template-columns:.62fr 1.38fr;gap:8vw}
  .home-mosaic{max-width:1440px;padding-left:5vw;padding-right:5vw;margin-top:2vh;margin-bottom:4vh}
  .journal{padding-top:12vh;padding-bottom:13vh}
  .journal-head,.cards{max-width:1440px}
  .discovery{padding-top:12vh;padding-bottom:12vh}.discovery-head,.discovery-grid{max-width:1320px}
  .after{min-height:92svh}.after-visual{min-height:92svh}.after-copy{padding-top:10vh;padding-bottom:10vh}
  .follow{min-height:66svh;display:flex;flex-direction:column;justify-content:center;padding-top:10vh;padding-bottom:10vh}
  .page-hero{min-height:64svh;padding-top:12vh;padding-bottom:9vh}
  .page-wrap{max-width:1320px}
}

/* Scroll reveal: applied by JS only, so content remains fully visible if scripting is unavailable. */
html.reveal-ready [data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .72s cubic-bezier(.2,.7,.2,1),transform .72s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}
html.reveal-ready [data-reveal].is-visible{opacity:1;transform:none}
html.reveal-ready img[data-reveal]{transform:translateY(22px) scale(.995)}
html.reveal-ready img[data-reveal].is-visible{transform:none}
@media(max-width:800px){
  .links{display:none!important}.menu-toggle{font-size:9px;letter-spacing:.14em;padding:8px 0}
  .menu-panel{inset:64px 0 0;grid-template-columns:1fr;gap:28px;padding:34px 22px 30px;overflow:auto;background-size:100% auto,100% auto}
  .menu-nav{grid-row:1;border-left:0;padding:0;border-bottom:1px solid var(--line);padding-bottom:26px;justify-content:flex-start}
  .menu-nav a{font-size:clamp(38px,12vw,56px);padding:.05em 0}
  .menu-nav .menu-after{font-size:9px;margin-top:20px;padding-top:18px}
  .menu-meta{grid-row:2;min-height:0;display:block}.menu-meta p{font-size:17px;margin:14px 0 26px;max-width:290px}.menu-social{gap:15px}
  html.reveal-ready [data-reveal]{transform:translateY(18px);transition-duration:.58s}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}html.reveal-ready [data-reveal]{opacity:1!important;transform:none!important;transition:none!important}.menu-panel,.menu-toggle::after,.menu-nav a{transition:none!important}}


/* V6.16 — functional external interaction layer + more native desktop rhythm */
/* Hero enters as a composed opening frame, inspired by the restrained reveal rhythm of David's site. */
.hero-img{opacity:.12;transform:scale(1.025);filter:saturate(.92);transition:opacity 1.25s cubic-bezier(.2,.7,.2,1),transform 1.6s cubic-bezier(.2,.7,.2,1),filter 1.25s ease}
.hero-copy>*{opacity:0;transform:translateY(16px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
html.page-ready .hero-img{opacity:1;transform:scale(1);filter:none}
html.page-ready .hero-copy>*{opacity:1;transform:none}
html.page-ready .hero-copy>*:nth-child(2){transition-delay:.10s}
html.page-ready .hero-copy>*:nth-child(3){transition-delay:.18s}
html.page-ready .hero-copy>*:nth-child(4){transition-delay:.26s}

/* Scroll reveal is deliberately visible, but remains editorial rather than animated-for-animation's-sake. */
html.reveal-ready [data-reveal]{opacity:0;transform:translateY(36px);transition:opacity .86s cubic-bezier(.2,.7,.2,1),transform .86s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}
html.reveal-ready [data-reveal].is-visible{opacity:1;transform:none}
html.reveal-ready img[data-reveal]{opacity:0;transform:translateY(44px) scale(.992);clip-path:inset(7% 0 0 0);transition:opacity .95s cubic-bezier(.2,.7,.2,1),transform 1s cubic-bezier(.2,.7,.2,1),clip-path 1.05s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}
html.reveal-ready img[data-reveal].is-visible{opacity:1;transform:none;clip-path:inset(0 0 0 0)}

@media(min-width:1000px){
  /* Desktop is now treated as its own editorial canvas, not a widened mobile stack. */
  .hero{grid-template-columns:minmax(520px,46vw) 1fr;min-height:calc(100svh - 78px)}
  .hero-copy{padding:clamp(72px,8vh,118px) clamp(58px,6vw,118px);min-height:calc(100svh - 78px)}
  .hero-img{min-height:calc(100svh - 78px);background-position:center 30%}
  .intro{min-height:82svh;padding:11vh 8vw;grid-template-columns:minmax(210px,.48fr) minmax(560px,1.52fr);gap:10vw}
  .intro>div:last-child{max-width:880px}
  .home-mosaic{width:94vw;max-width:1680px;padding-left:0;padding-right:0;margin:2vh auto 11vh;grid-auto-rows:clamp(72px,7.2vw,112px);gap:clamp(18px,1.6vw,28px)}
  .journal{padding:14vh 5vw 15vh}
  .journal-head,.cards{width:min(90vw,1560px);max-width:none;margin-left:auto;margin-right:auto}
  .cards{grid-template-columns:1.22fr .89fr .89fr;align-items:start;gap:clamp(22px,2.4vw,42px)}
  .cards .card:first-child img{height:clamp(480px,46vw,720px)}
  .cards .card:not(:first-child){margin-top:9vh}
  .cards .card:not(:first-child) img{height:clamp(380px,34vw,560px)}
  .discovery{padding:14vh 7vw}.discovery-head,.discovery-grid{width:min(86vw,1480px);max-width:none;margin-left:auto;margin-right:auto}
  .after{grid-template-columns:1.18fr .82fr;min-height:96svh}.after-visual{min-height:96svh}.after-copy{padding-left:5vw;padding-right:7vw}
  .follow{min-height:72svh}
}
@media(max-width:800px){
  .hero-img{transition-duration:1.05s,1.25s,1.05s}
  html.reveal-ready [data-reveal]{transform:translateY(24px);transition-duration:.72s}
  html.reveal-ready img[data-reveal]{transform:translateY(28px) scale(.995);clip-path:inset(5% 0 0 0);transition-duration:.8s,.85s,.9s}
}
@media(prefers-reduced-motion:reduce){.hero-img,.hero-copy>*,html.reveal-ready [data-reveal],html.reveal-ready img[data-reveal]{opacity:1!important;transform:none!important;clip-path:none!important;filter:none!important;transition:none!important}}

/* V6.18 — keep the approved title entrance; restore the hero photograph to its clean V6.16 treatment. */
.hero h1{transform-origin:left center;opacity:0;transform:translateY(8px) scale(.94);filter:blur(1.5px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform 1.2s cubic-bezier(.16,.8,.24,1),filter .9s ease!important}
html.page-ready .hero h1{opacity:1;transform:none;filter:none}
@media(max-width:800px){.hero h1{transform-origin:left center;transform:translateY(6px) scale(.955)}html.page-ready .hero h1{transform:none}}
@media(prefers-reduced-motion:reduce){.hero h1{opacity:1!important;transform:none!important;filter:none!important;transition:none!important}}

/* V6.19 — opening signature + subtly stronger damask. Layout/content remain V6.18. */
body{
  background-image:linear-gradient(rgba(250,250,248,.025),rgba(250,250,248,.025)),url('/images/damask-wallpaper-v72.webp');
}
.site-intro{
  position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;
  background-color:#f4f4f1;
  background-image:linear-gradient(rgba(250,250,248,.025),rgba(250,250,248,.025)),url('/images/damask-wallpaper-v72.webp');
  background-size:100% auto,100% auto;background-position:center top,center 78px;background-repeat:repeat-y,repeat-y;
  opacity:1;visibility:visible;transition:opacity .52s ease,visibility 0s linear .52s;
}
.site-intro-name{
  font-family:Georgia,serif;font-weight:400;letter-spacing:.075em;font-size:clamp(42px,7vw,108px);
  line-height:1;white-space:nowrap;opacity:0;transform:scale(.90);filter:blur(1.2px);
  animation:introSignature 1.65s cubic-bezier(.16,.8,.24,1) forwards;
}
.site-intro.is-leaving{opacity:0;visibility:hidden}
.site-intro.is-skipped{display:none}
@keyframes introSignature{
  0%{opacity:0;transform:scale(.90);filter:blur(1.2px)}
  28%{opacity:1;filter:blur(0)}
  72%{opacity:1;transform:scale(1.035);filter:blur(0)}
  100%{opacity:0;transform:scale(1.055);filter:blur(.5px)}
}
@media(max-width:800px){
  body{background-image:linear-gradient(rgba(250,250,248,.025),rgba(250,250,248,.025)),url('/images/damask-wallpaper-v72.webp')}
  .site-intro{background-size:100% auto,100% auto;background-position:center top,center 92px}
  .site-intro-name{font-size:clamp(35px,11vw,58px);letter-spacing:.06em}
}
@media(prefers-reduced-motion:reduce){.site-intro{display:none!important}.site-intro-name{animation:none!important}}

/* V7.0 — transparent editorial navigation + scheduled publishing */
.nav{
  background:transparent;
  border-bottom-color:transparent;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
  box-shadow:none;
}
.nav.is-scrolled,
body.menu-open .nav{
  background:rgba(244,244,241,.72);
  border-bottom-color:rgba(23,23,23,.12);
  backdrop-filter:blur(16px) saturate(1.05);
  -webkit-backdrop-filter:blur(16px) saturate(1.05);
  box-shadow:0 1px 0 rgba(255,255,255,.28) inset;
}
.release-status{margin:0 auto 4vw;max-width:1180px;padding:0 6vw}
.release-status-inner{border-top:1px solid var(--ink);border-bottom:1px solid var(--line);padding:22px 0 24px;display:grid;grid-template-columns:.65fr 1.35fr auto;gap:28px;align-items:end}
.release-status-kicker,.release-status-count{text-transform:uppercase;letter-spacing:.18em;font-size:10px}
.release-status-title{font-family:Georgia,serif;font-size:clamp(22px,3vw,36px);line-height:1.1}
.release-status-date{text-align:center;display:block;margin-top:7px;font-size:11px;text-transform:uppercase;letter-spacing:.13em}
.release-status-count{text-align:right;white-space:nowrap;padding-bottom:3px}
@media(min-width:1000px){.release-status-inner>div:nth-child(2){justify-self:start}}
@media(max-width:800px){
  .release-status{padding:0 7vw;margin-bottom:12vw}
  .release-status-inner{grid-template-columns:1fr;gap:10px;padding:18px 0 20px}
  .release-status-count{text-align:left}
}
body{background-position:center top,center top}

/* V7.1 — native Behind the Shot mailing-list moment. Wallpaper remains the approved V6.19 treatment. */
.story-signup{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:clamp(72px,9vw,138px) 6vw;background:rgba(250,250,248,.08)}
.story-signup-inner{width:min(1060px,88vw);margin:0 auto;display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(48px,7vw,110px);align-items:center}
.story-signup-copy h2{font-family:Georgia,serif;font-size:clamp(42px,5.6vw,76px);font-weight:400;line-height:.98;letter-spacing:-.04em;margin:18px 0 24px}
.story-signup-copy p{font-family:Georgia,serif;font-size:18px;line-height:1.6;max-width:520px;margin:0}
.story-signup-form{min-width:0;padding:28px 0;border-top:1px solid var(--ink);border-bottom:1px solid var(--line)}
.story-signup-form noscript p{font-size:13px;line-height:1.6;margin:0}
@media(max-width:800px){.story-signup{padding:18vw 7vw}.story-signup-inner{width:100%;grid-template-columns:1fr;gap:42px}.story-signup-copy h2{font-size:clamp(40px,12vw,62px)}.story-signup-form{padding:22px 0}}
/* V7.2 — seamless wallpaper + refined Stay in the Story. */
body,.site-intro,.menu-panel{
  background-size:auto,1024px 1536px!important;
  background-repeat:repeat,repeat!important;
  background-position:0 0,center top!important;
}
.story-signup{padding:clamp(54px,6.5vw,92px) 6vw;background:rgba(250,250,248,.035)}
.story-signup-inner{width:min(1120px,90vw);grid-template-columns:1.04fr .96fr;gap:clamp(34px,5vw,72px);align-items:end}
.story-signup-copy h2{font-size:clamp(40px,4.9vw,68px);margin:14px 0 18px;line-height:.96}
.story-signup-copy p{font-size:17px;line-height:1.55;max-width:560px}
.story-signup-form{padding:20px 0 12px;border-top:1px solid var(--ink);border-bottom:0;min-height:128px}
/* EmailOctopus injects its inline form into this container. Keep its controls in Roby's editorial language. */
.story-signup-form form{margin:0!important;padding:0!important;background:transparent!important;max-width:none!important;font-family:Arial,Helvetica,sans-serif!important}
.story-signup-form input[type="email"]{width:100%!important;min-height:48px!important;border:0!important;border-bottom:1px solid #171717!important;border-radius:0!important;background:rgba(250,250,248,.34)!important;color:#171717!important;padding:12px 10px!important;font:14px Arial,Helvetica,sans-serif!important;box-shadow:none!important;outline:none!important}
.story-signup-form input[type="email"]::placeholder{color:#666!important}
.story-signup-form button,.story-signup-form input[type="submit"]{min-height:46px!important;border:1px solid #171717!important;border-radius:0!important;background:#171717!important;color:#f5f0e7!important;padding:12px 22px!important;text-transform:uppercase!important;letter-spacing:.16em!important;font:11px Arial,Helvetica,sans-serif!important;box-shadow:none!important}
.story-signup-form input[type="text"]:not([type="email"]){max-width:100%!important}
.story-signup-form label,.story-signup-form p,.story-signup-form span{font-family:Arial,Helvetica,sans-serif!important;font-size:11px!important;line-height:1.45!important;color:#292929!important}
.story-signup-form input[type="checkbox"]{accent-color:#171717!important;width:16px!important;height:16px!important}
.story-signup-form a{color:#171717!important;text-decoration-color:rgba(23,23,23,.45)!important;font-size:10px!important}
@media(max-width:800px){
 body,.site-intro,.menu-panel{background-size:auto,512px 768px!important;background-position:0 0,center top!important}
 .story-signup{padding:13vw 7vw 12vw}
 .story-signup-inner{width:100%;grid-template-columns:1fr;gap:24px}
 .story-signup-copy h2{font-size:clamp(38px,10.7vw,54px);margin:12px 0 16px;line-height:.98}
 .story-signup-copy p{font-size:16px;line-height:1.5}
 .story-signup-form{padding:16px 0 0;min-height:118px}
 .story-signup-form button,.story-signup-form input[type="submit"]{width:auto!important;min-width:132px!important;margin-top:10px!important}
}


/* V7.3 — final Stay in the Story form polish. Wallpaper intentionally locked. */
.story-signup-form input[type="text"]{display:none!important;width:0!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;opacity:0!important;position:absolute!important;pointer-events:none!important}
.story-signup-form form>div,.story-signup-form form>p{max-width:100%!important}
.story-signup-form input[type="email"]{font-size:15px!important;padding:13px 12px!important}
.story-signup-form button,.story-signup-form input[type="submit"]{min-width:154px!important;margin-top:10px!important}
.story-signup-form input[type="checkbox"]{appearance:none!important;-webkit-appearance:none!important;display:inline-grid!important;place-content:center!important;width:17px!important;height:17px!important;margin:0 8px 0 0!important;border:1px solid #171717!important;border-radius:0!important;background:rgba(250,250,248,.28)!important;vertical-align:-3px!important}
.story-signup-form input[type="checkbox"]:checked:before{content:""!important;width:9px!important;height:9px!important;background:#171717!important}
.story-signup-form label{font-size:10.5px!important;letter-spacing:.01em!important;line-height:1.5!important}
.story-signup-form a[href*="emailoctopus"],.story-signup-form a[href*="eomail"]{opacity:.48!important;font-size:9px!important}
@media(min-width:801px){.story-signup-form{min-width:360px}.story-signup-form input[type="email"]{min-height:52px!important}.story-signup-form button,.story-signup-form input[type="submit"]{min-height:48px!important}}


/* V7.4 — fully native Roby signup form. Wallpaper intentionally untouched. */
.story-newsletter{margin:0;padding:0;background:transparent}
.story-newsletter-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;border-bottom:1px solid var(--ink)}
.story-newsletter-email{width:100%;min-width:0;border:0;border-radius:0;background:rgba(250,250,248,.18);color:var(--ink);padding:15px 12px;font:15px Arial,Helvetica,sans-serif;outline:none;box-shadow:none}
.story-newsletter-email::placeholder{color:#666}
.story-newsletter-submit{border:0;border-left:1px solid var(--ink);border-radius:0;background:var(--ink);color:var(--light);padding:0 24px;min-width:132px;text-transform:uppercase;letter-spacing:.17em;font:11px Arial,Helvetica,sans-serif;cursor:pointer}
.story-newsletter-submit:hover,.story-newsletter-submit:focus-visible{background:#2a2a27}
.story-newsletter-submit:disabled{opacity:.58;cursor:wait}
.story-newsletter-consent{display:flex;align-items:flex-start;gap:9px;margin-top:14px;font:10.5px/1.5 Arial,Helvetica,sans-serif;color:#292929;max-width:580px}
.story-newsletter-consent input{appearance:none;-webkit-appearance:none;display:grid;place-content:center;flex:0 0 auto;width:17px;height:17px;margin:0;border:1px solid var(--ink);border-radius:0;background:rgba(250,250,248,.28)}
.story-newsletter-consent input:checked:before{content:"";width:9px;height:9px;background:var(--ink)}
.story-newsletter-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
.story-newsletter-status{min-height:21px;margin-top:12px;font:11px/1.5 Arial,Helvetica,sans-serif;letter-spacing:.01em;color:#292929}
.story-newsletter-status.is-success{font-family:Georgia,serif;font-size:18px;line-height:1.4}
.story-newsletter-status.is-error{color:#7b241c}
.story-newsletter.is-complete .story-newsletter-row,.story-newsletter.is-complete .story-newsletter-consent{display:none}
.story-signup-form{min-width:0}
@media(min-width:801px){.story-signup-form{min-width:420px}.story-newsletter-email{min-height:54px}.story-newsletter-submit{min-height:54px}}
@media(max-width:800px){.story-newsletter-row{grid-template-columns:1fr}.story-newsletter-submit{border-left:0;border-top:1px solid var(--ink);min-height:58px;width:100%;padding:0 22px}.story-newsletter-email{min-height:58px;padding:15px 14px}.story-newsletter-consent{font-size:11px;margin-top:13px}.story-newsletter-status.is-success{font-size:19px}}


/* V7.4.2 — discreet 18+ newsletter age boundary. Wallpaper/design otherwise locked. */
.story-newsletter-age{margin:8px 0 0 26px!important;font:9.5px/1.45 Arial,Helvetica,sans-serif!important;letter-spacing:.035em!important;color:#5b564f!important;max-width:520px}
.story-newsletter.is-complete .story-newsletter-age{display:none}
@media(max-width:800px){.story-newsletter-age{margin:8px 0 0 26px!important;font-size:9.5px!important;line-height:1.45!important}}

/* V7.4.3 — homepage keeps one latest Journal + one latest Behind the Shot */
.home-latest{border-top:1px solid var(--line);background:rgba(250,250,248,.16)}
.home-behind{background:rgba(250,250,248,.08)}
.home-latest-head{max-width:1320px;margin-left:auto;margin-right:auto;gap:40px}
.home-latest-head>div:first-child{min-width:0}
.home-archive-link{flex:0 0 auto;text-transform:uppercase;letter-spacing:.16em;font-size:10px;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:5px;margin-bottom:8px}
.home-latest-grid{max-width:1320px;margin:0 auto}
.home-latest-card{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:clamp(32px,5vw,78px);align-items:center}
.home-latest-card img{width:100%;height:auto;aspect-ratio:5/4;object-fit:cover}
.home-latest-copy{max-width:520px}
.home-latest-copy small{margin-top:0}
.home-latest-copy h3{font-size:clamp(38px,4.3vw,66px);line-height:1.02;margin:12px 0 18px}
.home-latest-copy p{font-size:17px;line-height:1.65;margin:0 0 14px}
@media(max-width:800px){.home-latest-head{display:block;margin-bottom:34px}.home-archive-link{display:inline-block;margin-top:22px;margin-bottom:0}.home-latest-card{grid-template-columns:1fr;gap:24px}.home-latest-card img{aspect-ratio:4/5;height:auto}.home-latest-copy{max-width:none}.home-latest-copy h3{font-size:clamp(34px,10vw,48px)}}

/* V7.4.6: fail-open intro and keyboard-only form focus. */
.site-intro{display:none;pointer-events:none}
html.intro-playing .site-intro{display:flex;animation:introFailOpen 0s 3s forwards}
@keyframes introFailOpen{to{opacity:0;visibility:hidden}}
.story-newsletter input:focus-visible,.story-newsletter button:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
