@font-face{font-family:RogueManrope;src:url("assets/challenger-manrope.ttf") format("truetype");font-weight:200 800;font-display:swap}
:root{--ink:#0c1231;--paper:#f3f0e7;--pink:#ff246a;--line:#0c123133;--pad:clamp(1.25rem,4.4vw,5rem);--font:RogueManrope,Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:10rem;background:var(--paper)}
body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--font);-webkit-font-smoothing:antialiased}
button,a{-webkit-tap-highlight-color:transparent}
a{color:inherit;text-decoration:none}
button{font:inherit}
button,a{touch-action:manipulation}
a:focus-visible,button:focus-visible{outline:3px solid currentColor;outline-offset:5px}
p,h1,h2,h3,figure{margin:0}
h1,h2,h3{font-weight:800}
p{line-height:1.65}
img{display:block;max-width:100%;height:auto}
button[hidden]{display:none}
.skip-link{position:fixed;z-index:20;top:-8rem;left:1rem;background:var(--ink);color:white;padding:1rem}
.skip-link:focus{top:1rem}
.preview-bar{min-height:30px;background:var(--ink);color:#fff;padding:.4rem var(--pad);display:flex;justify-content:space-between;gap:1rem;font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}
.preview-bar i{display:inline-block;background:var(--pink);width:6px;height:6px;border-radius:50%;margin-right:6px}
.preview-bar a{opacity:.8;text-decoration:underline;text-underline-offset:3px}
.masthead{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.15rem var(--pad);border-bottom:1px solid var(--line);background:var(--paper)}
.brand{width:165px;flex:none}
.brand img{width:100%}
.masthead nav{display:flex;align-items:center;gap:clamp(1rem,3vw,3.5rem);font-size:13px;font-weight:800}
.masthead nav a{padding:.5rem 0;position:relative}
.masthead nav a[aria-current]::after{content:"";position:absolute;bottom:0;left:0;width:24px;height:3px;background:var(--pink)}
.masthead nav sup{color:#c00b47;font-size:9px}
.masthead .talk-link{border-bottom:2px solid var(--ink)}
.talk-link span{margin-left:1.5rem}
.eyebrow,.section-label{font-size:11px;letter-spacing:.13em;font-weight:800;text-transform:uppercase}
.section-label{display:flex;justify-content:space-between;gap:1.25rem;padding-bottom:2.5rem}
.section-label span:last-child{letter-spacing:.06em}
.section-pad{padding:clamp(3rem,6.6vw,7rem) var(--pad)}
.paper-surface{position:relative;isolation:isolate}
.paper-surface::before{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;opacity:.08;background-image:url("assets/challenger-grain.svg")}
.hero{display:grid;grid-template-columns:47% 53%;min-height:650px;position:relative;background:var(--paper);padding:2.7rem var(--pad) 2rem;gap:0}
.hero-copy{position:relative;z-index:2;padding-top:1.25rem;padding-right:1rem}
.hero-copy .eyebrow{margin-bottom:1.8rem}
.hero h1{font-size:clamp(4.5rem,8.35vw,8.6rem);letter-spacing:-.08em;line-height:.94;text-transform:uppercase;position:relative}
.cut-type{display:block;position:relative;left:-.08em;margin-top:.15em;width:max-content;max-width:120%;background:var(--pink);padding:.05em .12em .12em .06em;transform:rotate(-3deg);box-shadow:3px 4px 0 var(--ink);color:var(--ink);white-space:nowrap}
.hero-intro{font-size:clamp(.95rem,1.25vw,1.15rem);margin-top:2.2rem;max-width:32rem;line-height:1.65}
.text-link{display:inline-flex;align-items:center;gap:1.5rem;border-bottom:1.5px solid currentColor;padding:.35rem 0;font-size:13px;font-weight:800;line-height:1.5}
.text-link span{font-size:24px;line-height:1}
.hero-copy>.text-link{margin-top:1.5rem}
.hero-art{position:relative;align-self:stretch;min-width:0;margin-left:1rem;padding-top:.8rem}
.hero-photo{height:100%;min-height:490px;max-height:660px;position:relative;background:var(--ink);transform:rotate(1.4deg);overflow:hidden;clip-path:polygon(.7% 0,100% .6%,99.4% 99%,94% 98.6%,86% 99.7%,80% 99%,69% 99.8%,59% 98.8%,48% 100%,39% 99.2%,28% 100%,20% 99.1%,10% 100%,0 99.4%)}
.hero-photo img{width:100%;height:100%;min-height:490px;object-fit:cover;object-position:51% 53%;position:absolute;inset:0}
.photo-stamp{position:absolute;top:1rem;right:1.15rem;transform:rotate(8deg);background:var(--paper);border:3px solid var(--ink);padding:.55rem .75rem;font-weight:800;text-transform:uppercase;font-size:clamp(.85rem,1.25vw,1.2rem);line-height:1.03;box-shadow:3px 3px 0 var(--ink)}
.hero-art figcaption{font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;display:flex;justify-content:space-between;align-items:center;gap:1rem;position:relative;padding:1rem .2rem .2rem}
.hero-art figcaption button{border:0;background:transparent;text-transform:uppercase;font-size:9px;letter-spacing:.07em;font-weight:800;padding:.4rem 0;cursor:pointer;border-bottom:1px solid}
.hero-art figcaption button:hover{color:#b5003a}
.street-strip{position:relative;margin-top:2rem;background:var(--pink);display:flex;align-items:center;justify-content:space-around;gap:1rem;padding:1.3rem var(--pad);font-size:clamp(.8rem,1.8vw,1.65rem);font-weight:800;text-transform:uppercase;letter-spacing:-.03em;border-block:2px solid var(--ink)}
.street-strip b{font-size:1.7em;line-height:.7}
.belief{padding-top:5rem;padding-bottom:2.2rem}
.belief-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:clamp(2rem,7vw,8rem);align-items:start}
.belief h2{font-size:clamp(3rem,6.5vw,7.1rem);line-height:1.02;letter-spacing:-.065em;text-transform:uppercase}
.paint-line{position:relative;z-index:1}
.paint-line::after{content:"";position:absolute;bottom:.05em;left:-.03em;right:-.04em;height:.18em;background:var(--pink);z-index:-1;transform:rotate(-3deg);clip-path:polygon(1% 20%,100% 0,98% 90%,5% 100%,0 70%)}
.large-copy{font-weight:800;font-size:clamp(1.8rem,3vw,3.4rem);line-height:1.08;letter-spacing:-.05em;margin-bottom:1.5rem}
.belief-copy>p:not(.large-copy){font-size:clamp(1rem,1.35vw,1.2rem);margin-top:1.15rem;max-width:43ch}
.belief-copy .text-link{margin-top:1.5rem}
.belief-bottom{border-top:1px solid var(--line);padding-top:1.6rem;margin-top:3.5rem;font-size:clamp(.95rem,1.45vw,1.3rem);font-weight:700}
.approach{background:var(--ink);color:var(--paper);position:relative}
.approach::after{content:"";position:absolute;top:-8px;left:0;right:0;height:9px;background:var(--ink);clip-path:polygon(0 50%,6% 40%,10% 80%,21% 30%,29% 60%,40% 20%,48% 40%,61% 10%,75% 60%,84% 20%,94% 40%,100% 5%,100% 100%,0 100%)}
.approach .section-label{color:#c6c6cf}
.approach-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;padding-bottom:3.5rem}
.approach h2{font-size:clamp(3rem,6.6vw,7.4rem);line-height:1.02;letter-spacing:-.065em;text-transform:uppercase}
.approach h2 em{font-style:normal;color:var(--pink)}
.approach-heading>p{padding-bottom:.2rem;font-size:1rem;max-width:26ch}
.approach-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:3.1rem;border-top:1px solid #ffffff45;padding-top:2.2rem}
.step-marker{color:var(--pink);font-size:3rem;font-weight:800;line-height:1;display:block;margin-bottom:1.4rem}
.approach-steps h3{font-size:1.25rem;letter-spacing:-.035em;line-height:1.3;max-width:20ch;margin-bottom:1rem}
.approach-steps p{font-size:.95rem;color:#dddde4;max-width:35ch}
.teaser-intro{display:grid;grid-template-columns:1.25fr 1fr;gap:5rem;align-items:end}
.teaser-intro h2{font-size:clamp(3rem,6.6vw,7.3rem);letter-spacing:-.065em;line-height:1.02;text-transform:uppercase}
.teaser-intro h2 em{font-style:normal;background:var(--pink);padding:0 .06em}
.teaser-intro p{font-size:clamp(1rem,1.4vw,1.3rem);max-width:32ch}
.rule-teaser-list{margin-block:3rem 2.2rem;border-top:2px solid var(--ink)}
.rule-teaser-list a{display:grid;grid-template-columns:50px 1fr 40px;gap:1.2rem;align-items:center;padding:1.5rem 0;border-bottom:1px solid var(--line);font-size:clamp(1.3rem,2.65vw,2.8rem);font-weight:800;letter-spacing:-.045em;line-height:1.15;transition:padding .2s ease,color .2s ease}
.rule-teaser-list a:hover{padding-inline:.65rem;color:#be0643}
.mini-number{align-self:start;padding-top:.4rem;font-size:12px;font-weight:800;letter-spacing:0}
.teaser-arrow{justify-self:end;transition:transform .2s}
.rule-teaser-list a:hover .teaser-arrow{transform:translate(3px,-3px)}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:2rem;font-size:.85rem;font-weight:800;padding:1.15rem 1.3rem;min-height:52px;border:2px solid var(--ink);transition:transform .2s,box-shadow .2s}
.button-dark{background:var(--ink);color:var(--paper)}
.button-light{background:var(--paper);color:var(--ink);box-shadow:5px 5px 0 var(--ink)}
.button:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--pink)}
.button-light:hover{box-shadow:7px 7px 0 var(--ink)}
.button span{font-size:1.5rem;line-height:1}
.experience{background:var(--pink);position:relative}
.torn-top{clip-path:polygon(0 8px,5% 4px,10% 7px,18% 0,25% 8px,35% 2px,44% 7px,52% 2px,63% 8px,75% 3px,86% 8px,93% 3px,100% 7px,100% 100%,0 100%)}
.experience-grid{display:grid;grid-template-columns:1fr 280px;gap:clamp(3rem,8vw,8rem);align-items:start}
.experience h2{font-size:clamp(2.7rem,5.6vw,6.3rem);line-height:1.02;letter-spacing:-.065em;text-transform:uppercase;margin-bottom:2rem}
.experience h2 span{color:var(--paper);text-shadow:1px 1px var(--ink)}
.experience-grid>div>p{font-size:1.1rem;max-width:60ch;margin-top:1rem}
.experience-grid .experience-disclosure{font-size:.8rem;max-width:65ch}
.experience .text-link{margin-top:1.5rem}
.founder-photo{transform:rotate(3deg);background:var(--paper);padding:.65rem .65rem 1rem;box-shadow:7px 8px 0 var(--ink)}
.founder-photo img{aspect-ratio:1;object-fit:cover;filter:grayscale(1)}
.founder-photo figcaption{padding:.75rem .4rem 0;display:flex;flex-direction:column;font-size:.75rem;line-height:1.7}
.founder-photo strong{font-size:1rem}
.experience-numbers{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem;margin-top:4rem;border-top:2px solid var(--ink);padding-top:2.2rem}
.experience-numbers strong{display:block;font-size:clamp(5rem,10.6vw,10rem);font-weight:800;letter-spacing:-.09em;line-height:.94}
.experience-numbers strong span{font-size:.6em;vertical-align:top}
.experience-numbers strong.dozens{font-size:clamp(3rem,5.3vw,5.2rem);letter-spacing:-.065em}
.experience-numbers p{font-size:.9rem;margin-top:1.1rem;font-weight:600}
.closing{background:var(--ink);color:var(--paper);padding:5rem var(--pad) 5.5rem}
.closing h2{font-size:clamp(3.5rem,8.9vw,10rem);text-transform:uppercase;line-height:.98;letter-spacing:-.07em;margin-block:1.7rem 2.5rem}
.closing h2 span{color:var(--pink)}
.closing .button-light{box-shadow:5px 5px 0 var(--pink)}
.site-footer{padding:2.8rem var(--pad) 1.5rem;background:var(--ink);color:var(--paper);border-top:1px solid #ffffff40}
.site-footer>p{font-size:.8rem;color:#cbccd4}
.footer-row{display:flex;justify-content:space-between;gap:1.5rem;align-items:center;margin-top:1rem}
.footer-row a:first-child{font-size:clamp(1.1rem,2.8vw,2.8rem);font-weight:700;letter-spacing:-.045em}
.footer-row a:last-child{font-size:.9rem}
.footer-small{display:flex;align-items:center;gap:2rem;justify-content:space-between;font-size:.65rem;color:#cbccd4;margin-top:2.8rem}
.footer-small p{max-width:65ch}
.footer-small a{white-space:nowrap;text-decoration:underline;text-underline-offset:4px}

/* The Rulebook: physical-poster rhythm, normal accessible document scrolling. */
.manifesto-cover{padding-top:2.8rem;padding-bottom:4rem}
.manifesto-cover-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:4rem;align-items:center}
.manifesto-cover h1{font-size:clamp(6rem,14vw,15rem);font-weight:800;line-height:.78;letter-spacing:-.095em;text-transform:uppercase}
.manifesto-cover h1>span:first-child{display:block;font-size:.18em;line-height:1.3;letter-spacing:-.035em;margin-bottom:.55em}
.cover-book{display:block;position:relative;color:var(--pink);margin-top:.07em}
.cover-dot{color:var(--ink)}
.manifesto-intro{position:relative;padding-top:9.5rem}
.manifesto-stamp{position:absolute;top:0;right:2rem;transform:rotate(8deg);border:3px solid var(--ink);padding:.65rem 1rem;background:var(--pink);font-weight:800;text-transform:uppercase;font-size:1.5rem;line-height:.95;letter-spacing:-.045em;box-shadow:4px 4px 0 var(--ink)}
.manifesto-intro h2{font-size:clamp(1.8rem,3vw,3.4rem);letter-spacing:-.05em;line-height:1.1;margin-bottom:1.3rem}
.manifesto-intro p{max-width:38ch;font-size:1.05rem}
.manifesto-intro .text-link{margin-top:1.2rem}
.rule-index{display:flex;position:sticky;top:0;z-index:5;background:var(--ink);color:var(--paper);align-items:stretch;border-block:1px solid #ffffff40;padding:0 var(--pad);gap:0}
.rule-index>span{display:flex;align-items:center;font-size:10px;letter-spacing:.1em;font-weight:800;padding-right:2.5rem;white-space:nowrap}
.rule-index a{flex:1;min-height:64px;display:flex;align-items:center;justify-content:center;border-left:1px solid #ffffff30;font-size:18px;font-weight:800;transition:background .15s,color .15s}
.rule-index a:last-child{border-right:1px solid #ffffff30}
.rule-index a:hover,.rule-index a.is-active{background:var(--pink);color:var(--ink)}
.index-title{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap}
.manifesto-rule{display:grid;grid-template-columns:24% 1fr;gap:4vw;padding:clamp(3.5rem,7vw,7rem) var(--pad);min-height:590px;scroll-margin-top:60px;position:relative}
.theme-paper{background:var(--paper);color:var(--ink)}
.theme-navy{background:var(--ink);color:var(--paper)}
.theme-pink{background:var(--pink);color:var(--ink)}
.theme-paper::after{content:"";position:absolute;bottom:0;left:var(--pad);right:var(--pad);height:1px;background:var(--line)}
.rule-counter{position:relative;display:flex;align-items:flex-start;gap:.6rem;line-height:.9}
.rule-counter>span:first-child{font-size:clamp(6rem,16vw,17rem);font-weight:800;letter-spacing:-.09em;color:var(--pink)}
.rule-total{font-size:12px;font-weight:800;padding-top:.6rem;white-space:nowrap}
.theme-pink .rule-counter>span:first-child{color:var(--ink)}
.rule-content .eyebrow{margin-bottom:2rem}
.rule-content h2{font-size:clamp(3rem,6.8vw,7.5rem);line-height:.98;letter-spacing:-.07em;text-transform:uppercase;max-width:14ch}
.rule-content h2 em{font-style:normal;color:var(--pink)}
.theme-pink .rule-content h2 em{color:var(--paper);text-shadow:1px 1px 0 var(--ink)}
#rule-3 h2{font-size:clamp(3rem,7.1vw,8rem);letter-spacing:-.08em;max-width:none}
.long-rule h2{font-size:clamp(2.6rem,5.3vw,6rem);max-width:19ch}
.rule-body{font-size:clamp(1.05rem,1.5vw,1.35rem);max-width:53ch;line-height:1.75;margin-top:2rem}
.rule-next{display:inline-flex;align-items:center;gap:2.5rem;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.07em;border-bottom:1px solid;padding:.6rem 0;margin-top:1.8rem}
.rule-next span{font-size:1.4rem}
.manifesto-end{background:var(--ink);color:var(--paper);position:relative}
.manifesto-end h2{font-size:clamp(3rem,7.7vw,8.6rem);line-height:1.02;letter-spacing:-.065em;text-transform:uppercase;margin-block:1.8rem 3rem}
.manifesto-end h2>span{color:var(--pink)}
.back-home{display:block;font-size:.8rem;text-decoration:underline;text-underline-offset:5px;margin-top:2rem}

/* Flat view is the default: nothing is hidden while waiting for JavaScript. */
@media(min-width:1650px){.hero{min-height:780px}.hero-photo{max-height:760px}.hero-intro{margin-top:3rem}.section-pad{padding-block:7rem}.hero-art{margin-left:2rem}}
@media(max-width:1100px){
.hero{min-height:580px;padding-top:2rem}.hero h1{font-size:8vw}.hero-photo,.hero-photo img{min-height:440px}.hero-copy{padding-top:.5rem}.hero-intro{font-size:.9rem}.hero-copy>.text-link{font-size:11px;gap:1rem}.hero-art figcaption{font-size:8px}
.experience-grid{grid-template-columns:1fr 220px}.approach-heading{align-items:start;flex-direction:column;gap:1.5rem}.approach-heading>p br{display:none}.approach-heading>p{max-width:100%}.rule-counter .rule-total{position:absolute;top:calc(16vw + .5rem);left:1rem}
}
@media(max-width:760px){
html{scroll-padding-top:5rem}
.preview-bar{font-size:8px;letter-spacing:.04em;gap:.5rem;padding-block:.45rem}
.brand{width:125px}.masthead{padding-block:1rem;gap:1rem}.masthead nav{font-size:11px;gap:1.15rem}.masthead .talk-link{display:none}
.hero{display:flex;flex-direction:column;gap:1.8rem;padding-top:2rem;padding-bottom:1rem;min-height:0}
.hero h1{font-size:clamp(4.3rem,14.9vw,7rem);line-height:.94;letter-spacing:-.075em}
.hero-copy{padding-right:0}.hero-copy .eyebrow{font-size:9px;margin-bottom:1.3rem}
.cut-type{padding-right:.16em;margin-top:.1em}
.hero-intro{font-size:1rem;margin-top:1.8rem}.hero-intro br{display:none}.hero-copy>.text-link{font-size:12px;margin-top:1rem}
.hero-art{margin:0 -.3rem 0 0;padding:0;align-self:auto}
.hero-photo{aspect-ratio:1.13;height:auto;min-height:0;max-height:none}
.hero-photo img{min-height:0;object-position:51% 50%}
.hero-art figcaption{font-size:8px;padding-top:.8rem}.photo-stamp{font-size:.9rem;top:.8rem;right:.8rem}
.street-strip{margin-top:1.5rem;padding:1rem var(--pad);font-size:.75rem;gap:.5rem;justify-content:space-between}
.street-strip span{max-width:11ch}.street-strip b:last-child{display:none}
.section-pad{padding-block:3.3rem}.section-label{font-size:9px;padding-bottom:2rem;align-items:start}
.section-label span:last-child{max-width:15ch;text-align:right}
.belief-grid,.teaser-intro{grid-template-columns:1fr;gap:2rem}
.belief h2,.teaser-intro h2,.approach h2{font-size:clamp(2.8rem,10.7vw,4.8rem)}
.belief-copy .large-copy{font-size:2rem;line-height:1.1}
.belief-copy>p:not(.large-copy){font-size:1rem;max-width:45ch}
.belief-bottom{font-size:.95rem;line-height:1.5;margin-top:2.5rem}
.approach-heading{padding-bottom:2rem}
.approach-steps{grid-template-columns:1fr;gap:1.8rem;padding-top:1.8rem}
.approach-steps article{display:grid;grid-template-columns:35px 1fr;gap:0 1rem}
.step-marker{font-size:2.2rem;grid-row:span 2}.approach-steps h3{max-width:none;margin-bottom:.7rem;font-size:1.15rem}.approach-steps p{max-width:44ch}
.teaser-intro p{max-width:40ch}
.rule-teaser-list{margin-top:2rem}.rule-teaser-list a{grid-template-columns:23px 1fr 20px;gap:.75rem;font-size:1.35rem;padding-block:1.3rem}
.mini-number{font-size:10px;padding-top:.15rem}.teaser-arrow{font-size:1.4rem}
.experience-grid{grid-template-columns:1fr;gap:2.5rem}
.experience h2{font-size:clamp(2.5rem,9vw,4rem)}
.experience-grid>div>p{font-size:1rem}.experience-grid .experience-disclosure{font-size:.75rem}
.founder-photo{width:min(68%,260px);justify-self:center;transform:rotate(2deg)}
.experience-numbers{gap:1rem;grid-template-columns:1fr 1fr;margin-top:3rem;padding-top:2rem}
.experience-numbers strong{font-size:5.5rem}.experience-numbers>div:last-child{grid-column:1/-1;display:flex;gap:2rem;align-items:center;margin-top:1.5rem;border-top:1px solid var(--ink);padding-top:1.5rem}
.experience-numbers strong.dozens{font-size:2.9rem}.experience-numbers p{font-size:.75rem}
.closing{padding-block:3.8rem}.closing h2{font-size:clamp(2.9rem,12.2vw,5.4rem)}
.footer-row{flex-direction:column;align-items:flex-start;gap:.8rem}.footer-small{flex-wrap:wrap;gap:1rem;margin-top:2rem}.footer-small p{flex-basis:100%}
.site-footer{padding-top:2rem}
.manifesto-cover{padding-top:2rem;padding-bottom:2.5rem}
.manifesto-cover-grid{grid-template-columns:1fr;gap:2.2rem}
.manifesto-cover h1{font-size:clamp(6rem,24vw,11rem);max-width:100%;line-height:.83}
.manifesto-intro{padding-top:0;padding-right:6.8rem}
.manifesto-intro h2{font-size:1.55rem;line-height:1.15;max-width:13ch}
.manifesto-intro p{font-size:.95rem;max-width:29ch}
.manifesto-stamp{font-size:.9rem;top:.2rem;right:.1rem;padding:.6rem .5rem;box-shadow:3px 3px 0}
.manifesto-intro .text-link{font-size:11px;gap:.8rem}
.rule-index{padding:0 var(--pad);overflow-x:auto;scrollbar-width:none}
.rule-index>span{font-size:8px;padding-right:1rem}
.rule-index a{min-height:48px;min-width:33px;font-size:13px}
.manifesto-rule{grid-template-columns:1fr;gap:1.8rem;padding-block:3rem;min-height:0;scroll-margin-top:48px}
.rule-counter{align-items:end;gap:1rem}
.rule-counter>span:first-child{font-size:5rem;line-height:.8;letter-spacing:-.08em}
.rule-counter .rule-total{position:static;font-size:10px;padding:0 0 .2rem}
.rule-content .eyebrow{font-size:9px;margin-bottom:1.5rem}
.rule-content h2{font-size:clamp(2.7rem,11.9vw,5rem);max-width:14ch;line-height:1}
#rule-3 h2{font-size:clamp(2.6rem,11.2vw,5rem);max-width:100%}
.long-rule h2{font-size:clamp(2.4rem,9.9vw,4.4rem);max-width:16ch}
.rule-body{font-size:1rem;margin-top:1.5rem;max-width:45ch}
.rule-next{font-size:10px;gap:1.4rem;margin-top:1.5rem}
.manifesto-end h2{font-size:clamp(2.6rem,10vw,4.7rem)}.manifesto-end .button{font-size:.75rem;gap:1rem}
}
@media(max-width:360px){
.preview-bar>a{max-width:10ch;text-align:right}.masthead nav{gap:.75rem}.brand{width:110px}.hero h1{font-size:14.5vw}
.street-strip{font-size:.67rem}.button{font-size:.75rem;gap:1rem;padding:1rem}.rule-index>span{font-size:7px;padding-right:.5rem}.rule-index a{min-width:29px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.rule-teaser-list a:hover,.button:hover{transform:none}}
@media print{.preview-bar,.masthead,.rule-index,.rule-next,.hero-art button,.site-footer{display:none}.manifesto-rule{break-inside:avoid;min-height:0;grid-template-columns:20% 1fr}.manifesto-rule h2{font-size:32pt}.rule-body{font-size:12pt}.rule-counter>span:first-child{font-size:72pt}}

/* Original full-bleed campaign photograph with the new navigation retained. */
.full-hero{height:calc(100svh - 132px);min-height:38rem;position:relative;isolation:isolate;overflow:clip;background:#20262e;color:white}
.full-hero-photo{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:50% 50%;z-index:-1}
.full-hero h1{text-align:center;padding:clamp(3rem,8svh,6rem) var(--pad) 2rem;font-size:clamp(2.75rem,6.2vw,8rem);line-height:1.1;letter-spacing:-.045em;text-wrap:balance}
.full-hero h1>span{display:inline-block}.full-hero h1>span:last-child{color:var(--pink)}
.hero-down{position:absolute;bottom:1.5rem;left:calc(50% - 24px);width:48px;height:48px;display:grid;place-items:center;background:var(--ink);color:white;border-radius:50%;font-size:1.5rem}
.hero-down:hover{background:#c20d4a}.full-hero+.street-strip{margin-top:0}
@media(max-width:760px){.full-hero{height:calc(100svh - 113px);min-height:32rem}.full-hero h1{padding-top:clamp(4rem,13svh,7rem);font-size:clamp(2rem,10vw,3.5rem);line-height:1.15}.full-hero h1>span{display:block}}

