/* ALLOW-VOICE-LINT: stylesheet; double hyphens are CSS custom property syntax */
/* Sideline Stories: the list page and every story page. Same cobalt world; set for reading. */

/* the list page: a halftone press field behind the title, the brand's own texture */
.shelf{position:relative;padding:clamp(120px,16vh,170px) 0 clamp(36px,5vw,56px);overflow:hidden}
.shelf::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:radial-gradient(circle,rgba(247,250,255,.2) 1.1px,transparent 1.8px);
  background-size:12px 12px;
  -webkit-mask-image:radial-gradient(80% 70% at 85% 10%,#000 5%,transparent 70%);mask-image:radial-gradient(80% 70% at 85% 10%,#000 5%,transparent 70%);
}
.shelf .inner{position:relative}
.shelf h1{font-family:var(--disp);font-weight:800;text-transform:uppercase;font-size:clamp(56px,9vw,132px);line-height:.9;letter-spacing:.005em}
.shelf h1 span{display:block;color:transparent;-webkit-text-stroke:1.5px var(--white)}
.shelf .sub{margin-top:22px;max-width:56ch;color:var(--soft);font-size:clamp(16px,1.5vw,18.5px)}
.shelf .sub b{color:var(--white)}
.sempty{border:1px solid var(--line);border-radius:12px;background:var(--panel);padding:clamp(26px,4vw,52px);max-width:760px}
.sempty b{display:block;font-family:var(--disp);font-weight:800;text-transform:uppercase;font-size:clamp(30px,3.4vw,46px);line-height:1;margin:10px 0 12px}
.sempty p{color:var(--dim);max-width:52ch;margin-bottom:24px}

/* a story */
.progress{position:fixed;inset:0 0 auto 0;height:3px;z-index:60;pointer-events:none}
.progress i{display:block;height:100%;background:var(--amber);transform:scaleX(0);transform-origin:0 50%}
.story article{max-width:1000px;padding-top:clamp(112px,15vh,160px);padding-bottom:clamp(64px,8vw,104px)}
.shead{max-width:900px}
.shead h1{font-family:var(--disp);font-weight:800;text-transform:uppercase;font-size:clamp(40px,6.4vw,88px);line-height:.93;letter-spacing:.005em;margin-top:16px;text-wrap:balance}
.shead .standfirst{margin-top:22px;max-width:46ch;font-size:clamp(18.5px,1.9vw,23px);line-height:1.45;color:var(--soft);font-weight:500}
.byline{display:flex;align-items:center;gap:12px;margin-top:28px;padding-top:20px;border-top:1px solid var(--line);max-width:680px}
.byline img{width:36px;height:36px}
.byline b{display:block;font-size:15px}
.byline small{display:block;color:var(--dim);font-size:13px}
.shero{margin:clamp(30px,4vw,48px) 0 0}
.shero img{width:100%;height:auto;border-radius:12px;border:1px solid rgba(157,180,216,.25)}
.shero figcaption,.sbody figcaption{margin-top:10px;font-family:var(--mono);font-size:12px;letter-spacing:.04em;color:var(--dim);max-width:680px}

.sbody{max-width:680px;margin-top:clamp(34px,4.6vw,56px);font-size:clamp(17px,1.35vw,18.5px);line-height:1.75}
.sbody > *{margin-bottom:1.2em}
.sbody p{color:var(--soft)}
.sbody > p:first-child::first-letter{float:left;font-family:var(--disp);font-weight:800;font-size:4.7em;line-height:.8;margin:.06em .1em 0 0;color:var(--amber)}
.sbody strong{color:var(--white);font-weight:700}
.sbody a{color:var(--white);text-decoration:underline;text-decoration-color:var(--amber);text-underline-offset:3px;text-decoration-thickness:1.5px}
.sbody a:hover{text-decoration-thickness:3px}
.sbody h2{font-family:var(--disp);font-weight:800;text-transform:uppercase;font-size:clamp(28px,2.8vw,38px);line-height:1;letter-spacing:.01em;margin:1.7em 0 .55em;color:var(--white)}
.sbody h3{font-size:clamp(19px,1.6vw,22px);line-height:1.3;font-weight:700;margin:1.5em 0 .5em;color:var(--white)}
.sbody h4{font-family:var(--mono);font-size:13px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--amber);margin:1.6em 0 .5em}
.sbody blockquote{margin:1.8em 0;padding:4px 0 4px 24px;border-left:3px solid var(--amber)}
.sbody blockquote p{font-size:clamp(21px,2.1vw,26px);line-height:1.4;font-weight:500;color:var(--white);margin:0}
.sbody ul,.sbody ol{padding-left:1.3em;color:var(--soft)}
.sbody li{margin-bottom:.45em;padding-left:.2em}
.sbody li::marker{color:var(--amber)}
.sbody figure{margin:2.2em 0}
.sbody figure img{width:100%;height:auto;border-radius:10px;border:1px solid rgba(157,180,216,.25)}

.share{display:flex;align-items:center;gap:10px;flex-wrap:wrap;max-width:680px;margin-top:clamp(40px,5vw,60px);padding-top:22px;border-top:1px solid var(--line)}
.share .stamp{margin-right:6px}
section.block.tight.more-stories{padding-top:clamp(70px,9vw,110px)}
.more-stories .sec{margin-bottom:22px}
.story .abroadband .btn{flex:none}
