:root{--img-paper-torn-cream-webp:url(assets/paper-torn-cream.webp);--img-wallpaper-oak-webp:url(assets/wallpaper-oak.webp);--img-folder-tab-dark-webp:url(assets/folder-tab-dark.webp);--img-folder-panel-dark-webp:url(assets/folder-panel-dark.webp);--img-paper-torn-white-webp:url(assets/paper-torn-white.webp);--img-wallpaper-lobby-webp:url(assets/wallpaper-lobby.webp);--img-folder-panel-kraft-webp:url(assets/folder-panel-kraft.webp);--img-folder-tab-kraft-webp:url(assets/folder-tab-kraft.webp);}
@font-face{font-family:Palmore;src:url(assets/fonts/palmore-regular.otf) format("opentype");font-weight:300 500;font-style:normal;font-display:swap}
@font-face{font-family:Palmore;src:url(assets/fonts/palmore-semibold.otf) format("opentype");font-weight:600 900;font-style:normal;font-display:swap}
@font-face{font-family:"American Typewriter";src:url(assets/fonts/american-typewriter.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}

:root{
  --spruce:#1F3A2E; --cream:#F2EDE3; --brass:#B08D3F; --brass-lt:#D9BE7E; --plum:#4A2E4D; --ink:#2B2622; --ink-deep:#1A1715;
  --plum-tint:#E8DFE7; --spruce-tint:#DCE5DF; --sand:#E9E2D4; --surface:#FAF7F0; --muted:#5A524A; --mauve:#C7A4C9; --plum-lt:#C7A4C9;
  --display:Palmore,Georgia,serif; --body:"American Typewriter","Courier New",monospace;
  --ease:cubic-bezier(.2,.7,.2,1);
  --desk:var(--cream);
}
*{box-sizing:border-box}
html{scrollbar-color:var(--plum) var(--cream)}
html,body{overflow-x:clip}
body{margin:0;background:var(--ink-deep);color:var(--ink);font-family:var(--body);font-size:18px;line-height:1.7;-webkit-font-smoothing:antialiased}
::selection{background:var(--brass);color:var(--ink)}
img{display:block;max-width:100%}
a{color:inherit}
h1,h2,h3,p,ul{margin:0}
ul{padding:0;list-style:none}
button{font:inherit;color:inherit;cursor:pointer}
:focus-visible{outline:3px solid var(--plum);outline-offset:3px}
.dark :focus-visible{outline-color:var(--brass-lt)}

/* desks: each section is one flat colour */
.desk{position:relative;isolation:isolate;padding:112px 0}
.wrap{max-width:1312px;margin:0 auto;padding:0 64px;position:relative;z-index:0}
.d-plum{--desk:var(--plum);background:var(--plum);color:var(--cream)}
.d-spruce{--desk:var(--spruce);background:var(--spruce);color:var(--cream)}
.d-ink{--desk:var(--ink);background:var(--ink);color:var(--cream)}
.d-brass{--desk:var(--brass);background:var(--brass);color:var(--ink)}
.d-cream{--desk:var(--cream);background:var(--cream)}
.d-sand{--desk:var(--sand);background:var(--sand)}
.d-tint{--desk:var(--mauve);background:var(--mauve)}
.dark{color:var(--cream)}
.pat-lobby{background-image:var(--img-wallpaper-lobby-webp);background-size:cover;background-repeat:no-repeat;background-position:center}
.pat-oak{background-image:var(--img-wallpaper-oak-webp);background-size:cover;background-repeat:no-repeat;background-position:center}
.ov-plum::before,.ov-spruce::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:-2}
.ov-plum::before{background:rgba(30,18,32,.74)}
.ov-spruce::before{background:rgba(12,26,19,.8)}

/* type */
.h2{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:clamp(44px,5vw,72px);line-height:1;letter-spacing:0;text-wrap:balance}
.lede{font-size:19px;max-width:62ch}
.formno{position:absolute;top:-52px;right:64px;border:2px solid currentColor;padding:6px 14px;font-size:13px;letter-spacing:.16em;text-transform:uppercase;line-height:1.4;background:var(--desk)}
.in-sheet .formno{top:34px;right:34px;background:transparent}

/* buttons: press flips to a solid fill */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:58px;padding:0 28px;border:2px solid var(--ink);background:var(--spruce);color:var(--cream);font-size:17px;letter-spacing:.04em;text-decoration:none;white-space:nowrap;transition:background-color .2s,color .2s,transform .2s var(--ease)}
.btn svg{transition:transform .2s var(--ease)}
.btn:hover{background:var(--cream);color:var(--ink)}
.btn:hover svg{transform:translateX(4px)}
.btn:active{transform:translateY(2px)}
.btn.ghost{background:transparent;color:var(--ink)}
.btn.ghost:hover{background:var(--ink);color:var(--cream)}
.btn.light{background:var(--cream);color:var(--ink);border-color:var(--cream)}
.btn.light:hover{background:transparent;color:var(--cream)}
.btn.line{background:transparent;color:var(--cream);border-color:var(--cream)}
.btn.line:hover{background:var(--cream);color:var(--ink)}
.btn-row{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.arrow{display:inline-flex;align-items:center;gap:8px;min-height:44px;text-decoration:none;font-size:15px;letter-spacing:.08em;text-transform:uppercase;border-bottom:2px solid currentColor;padding-bottom:2px;align-self:flex-start}
.arrow:hover{border-bottom-color:transparent}

/* the form: a triplicate sheet with a perforated edge */
.stack{position:relative;filter:drop-shadow(0 18px 20px rgba(20,12,24,.32))}
.sheet{position:relative;color:var(--ink);background-color:var(--surface);background-clip:content-box;padding:44px 56px 56px 64px;border:solid transparent;border-width:22px 14px 40px 14px;border-image:var(--img-paper-torn-white-webp) 60 40 140 40 fill / 22px 14px 40px 14px stretch}
.sheet::before,.sheet::after{content:"";position:absolute;pointer-events:none;background-repeat:no-repeat;background-size:100% 100%}
.sheet::before{inset:-30px -34px -52px -20px;background-image:var(--img-paper-torn-cream-webp);transform:rotate(-1.6deg);z-index:-1}
.sheet::after{inset:-22px -18px -60px -38px;background-image:var(--img-paper-torn-white-webp);transform:rotate(1.3deg);z-index:-2}
.in-sheet{position:relative}

/* checkboxes that tick */
.cb{width:28px;height:28px;flex-shrink:0;display:block}
.cb .tick{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset .35s var(--ease)}
.on>.cb .tick,.cb.on .tick,[aria-selected="true"] .cb .tick,.ticked .cb .tick{stroke-dashoffset:0}

/* rubber stamp */
.stamp{display:inline-block;border:3px double currentColor;padding:8px 18px;font-family:var(--display);text-transform:uppercase;transform:rotate(-4deg);line-height:1.1}

/* tape */
.tape{position:absolute;width:120px;height:34px;background:var(--brass-lt);z-index:4}

/* top bar and nav */
.topbar{background:var(--ink-deep);color:#CFC7BB;font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.topbar .wrap{height:40px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.topbar .dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--brass-lt);margin-right:14px}
.topbar nav{display:flex;gap:28px}
.topbar a{text-decoration:none;border-bottom:1px solid transparent}
.topbar a:hover{border-bottom-color:currentColor}
.nav{background:var(--ink);color:var(--cream);border-bottom:2px solid var(--ink-deep)}
.nav .wrap{height:104px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.nav nav{display:flex;gap:4px}
.nav nav a{padding:10px 12px;font-size:15px;letter-spacing:.04em;text-decoration:none;border-bottom:2px solid transparent}
.nav nav a:hover{border-bottom-color:var(--brass-lt)}
.nav .logo{flex-shrink:0}
.nav .logo img{height:76px;width:auto;max-width:none}

/* hero */
.hero{padding:32px 0 56px}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr);gap:72px;align-items:center}
.hero h1{font-family:var(--display);font-weight:400;font-size:clamp(56px,6.2vw,92px);line-height:.98;text-transform:uppercase;color:var(--spruce);text-wrap:balance}
.hero .stack{animation:settle .7s var(--ease) backwards}
.hero .sheet{padding:36px 56px 52px 64px;display:flex;flex-direction:column;gap:20px}
.hero .sheet::before{animation:fan1 .8s var(--ease) .3s backwards}
.hero .sheet::after{animation:fan1 .8s var(--ease) .3s backwards}
@keyframes settle{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@keyframes fan1{from{transform:rotate(0) translate(0,0)}}
.hero p.lede{font-size:18px}
.field{align-self:flex-start;color:var(--plum);font-size:25px;letter-spacing:0;padding:12px 26px;border-width:5px;transform:rotate(-4deg)}
.hero-art{position:relative;height:560px}
.hero-art .clip{position:absolute;left:-96px;top:-8px;width:min(130%,400px);z-index:2;transform:rotate(4deg);transition:transform .5s var(--ease)}
.hero-art .clip:hover{transform:rotate(2deg) translateY(-6px)}
.hero-art .seal{position:absolute;left:-150px;bottom:-4px;z-index:3;width:140px;transform:rotate(-8deg);animation:thud .5s var(--ease) 1s both}
@keyframes thud{0%{opacity:0;transform:rotate(-8deg) scale(1.7)}60%{opacity:1;transform:rotate(-8deg) scale(.94)}100%{opacity:1;transform:rotate(-8deg) scale(1)}}

/* trust checklist strip */
.checks{position:relative;z-index:2;margin:-40px -34px -34px;padding:30px 0 34px;color:var(--ink);background-color:var(--surface);background-clip:content-box;border:solid transparent;border-width:22px 0 40px 0;border-image:var(--img-paper-torn-white-webp) 60 0 140 0 fill / 22px 0 40px 0 stretch;filter:drop-shadow(0 12px 14px rgba(20,12,24,.3))}
.checks ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 48px}
.checks li{display:flex;align-items:center;gap:16px;font-family:var(--display);text-transform:uppercase;font-size:23px;line-height:1.15;letter-spacing:0}
.checks .cb .tick{transition:stroke-dashoffset .35s var(--ease) calc(var(--i)*.14s + 1.1s);stroke-dashoffset:0;animation:draw .35s var(--ease) calc(var(--i)*.14s + 1.1s) both}
@keyframes draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}

/* 01 options */
.p1{padding-top:146px}
.p1 .g{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:64px;align-items:center;padding-top:36px}
.p1 .h2{max-width:none;margin-bottom:28px}
.p1 .lede{max-width:46ch;text-wrap:pretty}
.opts li{display:flex;align-items:center;gap:22px;padding:22px 24px;border-top:2px solid var(--ink)}
.opts li:last-child{border-bottom:2px solid var(--ink)}
.opts .lab{font-size:13px;letter-spacing:.18em;width:96px;flex-shrink:0}
.opts .txt{font-size:23px;line-height:1.3;text-wrap:balance}
.opts .no{color:var(--muted)}
.opts .no .txt{text-decoration:line-through;text-decoration-thickness:2px;text-decoration-color:var(--plum)}
.opts .yes{background:var(--plum);color:var(--cream);border-color:var(--plum)}
.opts .yes .lab{color:var(--brass-lt)}
.opts .yes .cb{color:var(--brass-lt)}

/* 02 services */
.p2 .h2{margin-bottom:48px}
.tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:14px}
.tab{display:flex;align-items:center;gap:14px;min-height:78px;padding:0 22px;border:2px solid var(--ink);background:var(--cream);text-align:left;font-size:15px;letter-spacing:.1em;text-transform:uppercase;transition:background-color .2s,color .2s}
.tab:hover{background:var(--sand)}
.tab[aria-selected="true"]{color:var(--cream)}
.tab[data-c="spruce"][aria-selected="true"]{background:var(--spruce)}
.tab[data-c="plum"][aria-selected="true"]{background:var(--plum)}
.tab[data-c="ink"][aria-selected="true"]{background:var(--ink)}
.tab[data-c="brass"][aria-selected="true"]{background:var(--brass);color:var(--ink)}
.panel{display:none;padding:48px 56px;border:2px solid var(--ink);gap:40px;align-items:flex-start;justify-content:space-between}
.panel.show{display:flex;animation:settle .4s var(--ease) both}
.panel .txt{display:flex;flex-direction:column;gap:20px;max-width:760px}
.panel h3{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:clamp(34px,3.4vw,46px);line-height:1.05}
.panel .num{font-family:var(--display);font-size:200px;line-height:.8;opacity:.5;flex-shrink:0}
.panel[data-c="spruce"]{background:var(--spruce);color:var(--cream)}
.panel[data-c="plum"]{background:var(--plum);color:var(--cream)}
.panel[data-c="ink"]{background:var(--ink);color:var(--cream)}
.panel[data-c="brass"]{background:var(--brass);color:var(--ink)}
.panel .arrow{min-height:44px}
.bigtick{width:170px;height:170px;flex-shrink:0;align-self:center;color:var(--brass-lt)}
.panel[data-c="brass"] .bigtick{color:var(--ink)}
.panel.show .bigtick path{stroke-dasharray:1;stroke-dashoffset:0}

/* 03 protocol */
.p3 .top{display:flex;justify-content:space-between;align-items:flex-end;gap:48px;margin-bottom:56px}
.p3 .top>div{display:flex;flex-direction:column;gap:20px;max-width:720px}
.p3 .grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:56px;align-items:start}
.steps{display:flex;flex-direction:column;gap:0}
.step{display:flex;align-items:center;gap:18px;min-height:82px;padding:0 22px;border:0;border-top:2px solid var(--ink);background:transparent;text-align:left;transition:background-color .2s,color .2s}
.step:last-child{border-bottom:2px solid var(--ink)}
.step:hover{background:var(--surface)}
.step[aria-selected="true"]{background:var(--ink);color:var(--cream)}
.step .n{width:44px;height:44px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:50%;border:2px solid currentColor;font-family:var(--display);font-size:22px}
.step[aria-selected="true"] .n{background:var(--brass-lt);color:var(--ink);border-color:var(--brass-lt)}
.step .t{display:flex;flex-direction:column;gap:2px}
.step .t b{font-weight:400;font-size:19px}
.step .t span{font-size:12px;letter-spacing:.18em;opacity:.8}
.stepsheet{padding:84px 56px 56px 56px;min-height:380px;display:flex;flex-direction:column;gap:20px}
.stepsheet .meta{position:absolute;top:28px;right:30px;transform:rotate(4deg);border:5px double var(--plum);color:var(--plum);padding:10px 20px;font-family:var(--display);font-size:23px;letter-spacing:0;line-height:1.1}
.stepsheet h3{padding-right:0;font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:44px;line-height:1.05}
.stepsheet p{max-width:52ch;color:#3E3831}

/* 04 clauses */
.p4 .top{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:48px;align-items:end;margin-bottom:56px}
.p4 .h2 em{font-style:normal;color:var(--plum-lt)}
.p4 .top p{color:#D8CFC3;font-size:18px}
.sheet.clauses{padding:60px 0 44px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.clause{padding:40px 48px;display:flex;gap:20px;align-items:flex-start;border-top:2px solid var(--ink)}
.clause:first-child{border-top:0}
.clause .cb{margin-top:4px}
.clause.w{grid-column:1/-1}
.clause.w h3{font-size:42px}
.clause.w p{font-size:19px;max-width:60ch}
.clause.half+.clause.half{border-left:2px solid var(--ink)}
.clause h3{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:30px;line-height:1.1;margin-bottom:12px}
.clause p{font-size:17px;line-height:1.65;color:#3E3831;max-width:42ch}

/* 05 specialists */
.p5 .row{display:flex;gap:88px;align-items:center}
.p5 .formno,.p6 .formno{position:static;align-self:flex-end;margin-bottom:-6px}
.p5 figure,.p6 figure{margin:0;position:relative;flex-shrink:0}
.p5 figure{width:540px;transform:rotate(-2deg)}
.p6 figure{width:400px;transform:rotate(-3deg)}
.p5 figure img,.p6 figure img{width:100%;height:auto;filter:drop-shadow(0 14px 18px rgba(20,12,24,.4))}
.p5 figure::before,.p6 figure::before{content:"";position:absolute;inset:-26px -36px 6px -24px;background:var(--img-paper-torn-white-webp) center/100% 100% no-repeat;transform:rotate(4deg);z-index:-1;filter:drop-shadow(0 10px 14px rgba(20,12,24,.3))}
figcaption{padding-top:12px;font-size:14px;letter-spacing:.04em}
.p5 .txt,.p6 .txt{display:flex;flex-direction:column;gap:26px;flex:1}
.chk{display:flex;flex-wrap:wrap;gap:12px}
.chk li{display:flex;align-items:center;gap:12px;border:2px solid var(--ink);padding:10px 18px 10px 12px;font-size:17px;letter-spacing:.04em;background:var(--cream)}
.fine{font-size:15px;color:var(--muted);border-top:2px dashed var(--ink);padding-top:16px}

/* 06 case file */
.p6 .h2{color:var(--cream)}
.p6 .lede{color:#E9E0EA}
.player{display:flex;align-items:center;gap:20px;padding:18px 22px 18px 18px;background:var(--ink-deep);border:2px solid var(--brass-lt)}
.play{width:60px;height:60px;flex-shrink:0;border:2px solid var(--cream);border-radius:50%;background:var(--cream);color:var(--ink);display:flex;align-items:center;justify-content:center;transition:background-color .2s,color .2s}
.play:hover{background:transparent;color:var(--cream)}
.player .info{flex:1;min-width:0;display:flex;flex-direction:column;gap:10px}
.player .ep{display:flex;justify-content:space-between;gap:16px;font-size:15px}
.player .ep span:last-child{color:#B9AFA3}
.play svg[hidden]{display:none}
.bars{height:32px;display:flex;align-items:center;gap:3px;overflow:hidden}
.bars i{width:4px;border-radius:2px;background:rgba(242,237,227,.4);transform-origin:center}
.bars i.lead{background:var(--brass-lt)}
.playing .bars i{animation:pulse var(--d,1s) ease-in-out var(--l,0s) infinite}
@keyframes pulse{0%,100%{transform:scaleY(.35)}50%{transform:scaleY(1)}}

/* brass band */
.band{padding:26px 0;text-align:center}
.band p{display:inline-block;border:4px double var(--ink);padding:14px 34px;transform:rotate(-1.5deg);font-family:var(--display);text-transform:uppercase;font-size:clamp(26px,2.6vw,36px);line-height:1.2;letter-spacing:0}

/* 07 faq */
.p7 .h2{margin-bottom:44px;max-width:20ch}
.faq{display:flex;flex-direction:column;gap:0}
.q{position:relative;border-top:2px solid var(--ink);transition:background-color .25s,color .25s}
.q:last-child{border-bottom:2px solid var(--ink)}
.q[data-open="true"]{background:var(--ink);color:var(--cream)}
.q button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:84px;padding:0 28px;border:0;background:transparent;text-align:left;font-size:21px;line-height:1.35}
.q button svg{position:absolute;right:28px;top:31px}
.q svg{flex-shrink:0;transition:transform .3s var(--ease);color:var(--plum)}
.q[data-open="true"] svg{transform:rotate(45deg);color:var(--brass-lt)}
.q .a{display:none;padding:0 28px 30px;font-size:17px;max-width:60ch}
.q[data-open="true"]{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:start}
.q[data-open="true"] .a{display:block;padding:28px 76px 30px 0}

/* final CTA */
.final .row{display:flex;align-items:center;justify-content:space-between;gap:64px}
.final .txt{display:flex;flex-direction:column;gap:24px;max-width:820px}
.final .h2{font-size:clamp(46px,5vw,72px)}
.final p.lede{color:#E3DBCF;font-size:19px}
.final img{width:150px;transform:rotate(-10deg);flex-shrink:0}

/* franchise band */
.fr{padding:72px 0}
.fr .row{display:flex;align-items:center;justify-content:space-between;gap:48px}
.fr .l{display:flex;align-items:center;gap:32px}
.fr .l img{width:96px;transform:rotate(-10deg);flex-shrink:0}
.fr .h{font-family:var(--display);text-transform:uppercase;font-size:38px;line-height:1.05}
.fr .s{font-size:17px;color:var(--muted);margin-top:10px}

/* footer */
footer{background:var(--ink-deep);color:#CFC7BB;padding:80px 0 40px}
footer .cols{display:grid;grid-template-columns:5fr 1fr 2fr 2fr 2fr;column-gap:24px;margin-bottom:56px}
footer .brand{display:flex;flex-direction:column;gap:18px}
footer .brand img{height:120px;width:auto;align-self:flex-start}
footer .brand .about{font-size:15px;line-height:1.7;max-width:380px}
footer .brand .contact{font-size:14px;line-height:1.9;color:#A79E92}
footer .col{display:flex;flex-direction:column;align-items:flex-start;gap:12px;font-size:15px}
footer .col .hd{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--brass-lt)}
footer .col a{text-decoration:none;border-bottom:1px solid transparent}
footer .col a:hover{border-bottom-color:currentColor}
footer .legal{display:flex;justify-content:space-between;align-items:center;gap:24px;border-top:2px solid #3D3630;padding-top:24px;font-size:13px;color:#A79E92}
footer .legal b{font-weight:400;color:var(--brass-lt)}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.checks .cb .tick{stroke-dashoffset:0!important}}

/* ---------- inner pages ---------- */
.nav nav a[aria-current="page"]{border-bottom-color:var(--brass-lt)}
.crumb{font-size:14px;color:var(--muted)}
.crumb a{text-decoration:none;border-bottom:1px solid currentColor}
.crumb a:hover{border-bottom-color:transparent}
.hero.sub{padding:32px 0 88px}
.hero.sub h1{font-size:clamp(40px,4.6vw,64px);line-height:1.02}
.hero.sub .hero-grid.one{grid-template-columns:minmax(0,1fr)}
.hero.sub .hero-grid.one .stack{max-width:1000px}
.hero.sub .hero-art{height:600px}
.hero.sub .hero-art .clip{left:-40px;top:0;width:min(100%,440px)}
.hero.sub .hero-art .portrait{position:absolute;left:0;top:10px;width:min(92%,380px);transform:rotate(3deg);filter:drop-shadow(0 16px 20px rgba(20,12,24,.4))}
.hero.sub .hero-art .portrait::before{content:"";position:absolute;inset:-24px -30px -18px -22px;background:var(--img-paper-torn-white-webp) center/100% 100% no-repeat;transform:rotate(-5deg);z-index:-1;filter:drop-shadow(0 10px 14px rgba(20,12,24,.3))}
.hero.sub .hero-art .report{position:absolute;left:-30px;top:0;width:min(104%,460px);transform:rotate(3deg);filter:drop-shadow(0 18px 22px rgba(20,12,24,.45));transition:transform .5s var(--ease)}
.hero.sub .hero-art .report:hover{transform:rotate(1deg) translateY(-6px)}
.hero.sub .field{font-size:22px}
.sheet .crumb{margin-bottom:-4px}

/* chapters */
.chap .h2{margin-bottom:28px}
.chap .copy{display:flex;flex-direction:column;gap:22px;max-width:62ch}
.chap .big{font-size:21px;line-height:1.7}
.chap .row{display:flex;gap:88px;align-items:center}
.chap figure{margin:0;position:relative;flex-shrink:0;width:420px;transform:rotate(-3deg)}
.chap figure img{width:100%;height:auto;filter:drop-shadow(0 14px 18px rgba(20,12,24,.4))}
.chap figure::before{content:"";position:absolute;inset:-26px -36px 6px -24px;background:var(--img-paper-torn-white-webp) center/100% 100% no-repeat;transform:rotate(4deg);z-index:-1;filter:drop-shadow(0 10px 14px rgba(20,12,24,.3))}
.chap .txt{display:flex;flex-direction:column;gap:22px;flex:1;padding-top:24px}
.chap .txt .formno{position:static;align-self:flex-end;margin-bottom:-6px}
.chap .sheet .h2{margin-bottom:24px}
.quote{margin-top:48px;position:relative}
.quote .sheet{padding:56px 64px 72px 72px}
.quote blockquote{margin:0;font-family:var(--display);font-size:clamp(30px,3.2vw,44px);line-height:1.12;color:var(--spruce);max-width:26ch}
.quote .stamp{position:absolute;top:34px;right:44px;color:var(--plum);font-size:20px;padding:10px 20px;border-width:5px;transform:rotate(4deg);letter-spacing:0}
.plaque{display:inline-flex;flex-direction:column;align-items:center;gap:10px;text-align:center;background:var(--brass);color:var(--ink);padding:38px 56px;border:5px double var(--ink);outline:6px solid var(--brass);outline-offset:0;position:relative;transform:rotate(-1.5deg);box-shadow:0 18px 22px rgba(20,12,24,.4)}
.plaque .a{font-size:14px;letter-spacing:.2em}
.plaque .b{font-family:var(--display);text-transform:uppercase;font-size:clamp(30px,3.2vw,44px);line-height:1.05;letter-spacing:0}
.plaque .c{font-size:14px;letter-spacing:.16em}
.plaque::before,.plaque::after{content:"";position:absolute;top:14px;width:12px;height:12px;border-radius:50%;background:var(--ink)}
.plaque::before{left:16px}.plaque::after{right:16px}
.ch4 .grid2{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:72px;align-items:center}

/* values list */
.vals.sheet{padding:60px 0 44px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.vals .clause:nth-child(4),.vals .clause:nth-child(5){border-top:2px solid var(--ink)}
.vals .clause.half+.clause.half{border-left:2px solid var(--ink)}

/* Residential */
.tabs3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:56px}
.pnl{display:none}
.pnl.show{display:block;animation:settle .4s var(--ease) both}
.pnl .two{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:56px;align-items:start}
.pnl h3{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:clamp(34px,3.4vw,46px);line-height:1.05;margin-bottom:18px;letter-spacing:0}
.pnl p+p{margin-top:16px}
.ul{margin:22px 0 0;display:flex;flex-direction:column}
.ul li{display:flex;gap:16px;align-items:flex-start;padding:14px 0;border-top:2px solid var(--ink)}
.ul li:last-child{border-bottom:2px solid var(--ink)}
.ul li .cb{margin-top:2px}
.ul li .n{font-family:var(--display);font-size:26px;line-height:1;flex-shrink:0;width:38px;color:var(--plum)}
.price{border:2px solid var(--ink);padding:28px 30px;display:flex;flex-direction:column;gap:16px;background:var(--cream)}
.price b{font-family:var(--display);text-transform:uppercase;font-weight:400;font-size:34px;line-height:1.05;color:var(--spruce)}
.price small{font-size:15px;color:var(--muted)}
.doc{border:2px solid var(--ink);background:var(--cream);padding:28px 32px 30px;display:flex;flex-direction:column;gap:12px;transform:rotate(1.2deg)}
.doc .meta{font-size:13px;letter-spacing:.16em;color:var(--plum)}
.doc .ttl{font-family:var(--display);text-transform:uppercase;font-size:30px;line-height:1.05}
.doc ol{margin:6px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px;font-size:16px}
.doc .sig{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:22px;font-size:13px;letter-spacing:.12em;text-transform:uppercase}
.doc .sig span{border-top:2px solid var(--ink);padding-top:6px}
.check .g2{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:64px;align-items:center;padding-top:30px}
.check .h2{margin-bottom:22px}
.counter{display:flex;align-items:baseline;gap:14px;margin-top:30px}
.counter b{font-family:var(--display);font-weight:400;font-size:84px;line-height:.9;color:var(--plum)}
.meter{height:10px;border:2px solid var(--ink);margin-top:14px;background:var(--cream)}
.meter i{display:block;height:100%;width:0;background:var(--brass);transition:width .4s var(--ease)}
.verdict{margin-top:14px;font-size:17px;min-height:30px}
.signs{display:flex;flex-direction:column}
.signs button{display:flex;align-items:center;gap:16px;min-height:76px;padding:0 6px;border:0;border-top:2px solid var(--ink);background:transparent;text-align:left;font-size:19px;line-height:1.35;transition:background-color .2s}
.signs button:last-child{border-bottom:2px solid var(--ink)}
.signs button:hover{background:rgba(43,38,34,.06)}
.signs button[aria-pressed="true"]{background:var(--ink);color:var(--cream);padding:0 16px}
.signs button[aria-pressed="true"] .cb{color:var(--brass-lt)}
.signs button[aria-pressed="true"] .cb .tick{stroke-dashoffset:0}
.tl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:56px;border-top:2px solid var(--ink)}
.tl .st{padding:34px 28px 0 0;display:flex;flex-direction:column;gap:12px;position:relative}
.tl .st .d{width:52px;height:52px;border-radius:50%;background:var(--plum);color:var(--cream);display:flex;align-items:center;justify-content:center;font-family:var(--display);font-size:24px;margin-top:-61px;border:4px solid var(--sand)}
.tl .st b{font-weight:400;font-size:21px;line-height:1.2}
.tl .st span{font-size:16px;line-height:1.6;color:#3E3831}
.hire .top{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:56px;align-items:start}

/* FAQ page */
.fg .h2{margin-bottom:36px}
.fg .formno{top:-44px}

/* cursor glow: a soft lantern light that follows the mouse, behind the content */
.desk::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:var(--go,0);transition:opacity .35s ease;mix-blend-mode:screen;background:radial-gradient(520px circle at var(--gx,50%) var(--gy,50%),rgba(255,226,150,.42),rgba(255,214,130,.18) 42%,rgba(255,214,130,0) 72%)}
.d-cream::after,.d-sand::after,.d-tint::after{mix-blend-mode:normal;background:radial-gradient(520px circle at var(--gx,50%) var(--gy,50%),rgba(217,190,126,.46),rgba(217,190,126,.18) 42%,rgba(217,190,126,0) 72%)}
@media (prefers-reduced-motion:reduce){.desk::after{display:none}}

/* home hero: larger newspaper clipping */
.hero:not(.sub) .hero-grid{grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr)}
.hero:not(.sub) .hero-art{height:600px}
.hero:not(.sub) .hero-art .clip{width:480px;left:-84px;top:-10px}
.hero:not(.sub) .hero-art .seal{left:-150px;bottom:6px}

/* ---------- home hero: pattern under a dark plum layer, collage on the right ---------- */
.ov-hero::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:-2;background:radial-gradient(120% 90% at 30% 40%,rgba(36,20,38,.72),rgba(14,12,11,.92))}
.hero-dark{padding:56px 0 124px}
.hero-dark .hero-grid{grid-template-columns:minmax(0,1fr) 540px;gap:40px;align-items:center}
.hero-dark .hcopy{display:flex;flex-direction:column;gap:26px;animation:settle .7s var(--ease) backwards}
.hero-dark h1{font-size:clamp(56px,6.6vw,96px);line-height:.98;color:var(--cream)}
.hero-dark .lede{color:#E3DBCF;max-width:62ch}
.hero-dark .stamp.field{color:var(--brass-lt);font-size:22px;border-width:4px;padding:10px 22px}
.hero-dark .hero-art{height:600px}
.hero-dark .hero-art .clip{left:30px;top:0;width:500px;transform:rotate(4deg);filter:drop-shadow(0 30px 60px rgba(0,0,0,.55))}
.hero-dark .hero-art .seal{left:-12px;bottom:30px;width:140px}

/* ---------- plastic employee tags ---------- */
.tags{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 24px;padding-top:24px}
.tag{position:relative;padding:46px 26px 26px;border-radius:14px;background:linear-gradient(160deg,rgba(255,255,255,.55),rgba(255,255,255,.12));border:1px solid rgba(255,255,255,.6);box-shadow:inset 0 0 0 6px rgba(255,255,255,.18),0 18px 34px rgba(0,0,0,.35);transition:transform .35s var(--ease),box-shadow .35s}
.tag:hover{transform:translateY(-6px) rotate(-.4deg);box-shadow:inset 0 0 0 6px rgba(255,255,255,.18),0 26px 50px rgba(26,23,21,.45)}
.tag .slot{position:absolute;top:14px;left:50%;width:70px;height:12px;margin-left:-35px;border-radius:999px;background:rgba(26,23,21,.55);box-shadow:inset 0 2px 3px rgba(0,0,0,.6)}
.tag .hole{position:absolute;top:14px;width:12px;height:12px;border-radius:50%;background:rgba(26,23,21,.45)}
.tag .hole.l{left:22px}.tag .hole.r{right:22px}
.tag .note{background:var(--cream);color:var(--ink);padding:22px 22px 20px;display:flex;flex-direction:column;gap:8px;box-shadow:0 1px 0 rgba(0,0,0,.08)}
.tag .note h3{font-family:var(--body);font-weight:400;font-size:19px;line-height:1.3;margin:0}
.tag .note p{font-size:14px;line-height:1.6;color:#5A5249;margin:0}

/* ---------- paper folder tabs ---------- */
.fold{position:relative;padding-top:58px}
.fold::before,.fold::after{content:"";position:absolute;z-index:1;pointer-events:none;background-repeat:no-repeat;background-size:100% 100%}
.fold::before{left:14px;right:-10px;top:68px;bottom:-14px;background-image:var(--img-folder-panel-dark-webp);filter:brightness(.7)}
.fold::after{left:6px;right:-4px;top:62px;bottom:-7px;background-image:var(--img-folder-panel-kraft-webp);filter:brightness(.8)}
.ftabs{position:absolute;left:0;right:0;top:0;height:66px;z-index:3}
.ftab{background-color:transparent;--w:calc((100% - 12px + (var(--n) - 1) * 26px) / var(--n));position:absolute;top:0;height:66px;width:var(--w);left:calc(12px + var(--i) * (var(--w) - 26px));padding:0 26px 8px;border:0;display:flex;align-items:center;justify-content:center;font-size:14px;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;overflow:hidden;background-repeat:no-repeat;background-size:100% 100%;z-index:calc(var(--n) - var(--i));transform:translateY(8px);filter:brightness(.78);transition:transform .3s var(--ease),filter .3s}
.ftab.k{background-image:var(--img-folder-tab-kraft-webp);color:var(--ink)}
.ftab.d{background-image:var(--img-folder-tab-dark-webp);color:var(--cream)}
.ftab[aria-selected="true"]{z-index:calc(var(--n) + 2);transform:none;filter:none}
.ftab:hover{transform:translateY(-3px);filter:none}
.fold.dense .ftab{font-size:12px;letter-spacing:.08em;padding:0 22px 8px}
.fpanels{position:relative;z-index:2;display:grid}
.fpanel{grid-area:1/1;visibility:hidden;position:relative;box-sizing:border-box;min-height:300px;padding:60px 64px;display:flex;gap:40px;align-items:flex-start;justify-content:space-between;background-repeat:no-repeat;background-size:100% 100%;filter:drop-shadow(0 18px 30px rgba(0,0,0,.35))}
.fpanel.show{visibility:visible;animation:settle .4s var(--ease) both}
.fpanel.k{background-image:var(--img-folder-panel-kraft-webp);color:var(--ink)}
.fpanel.d{background-image:var(--img-folder-panel-dark-webp);color:var(--cream)}
.fpanel>.op,.fpanel>.two{width:100%}
.ftxt{display:flex;flex-direction:column;gap:18px;max-width:760px;align-items:flex-start}
.ftxt p{margin:0}
.fpanel h3{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:clamp(34px,3.4vw,46px);line-height:1.05;letter-spacing:0;margin:0}
.fnum{font-family:var(--display);font-size:180px;line-height:.8;width:260px;flex-shrink:0;text-align:right;opacity:.55}
.fpanel.k .fnum{color:var(--plum)}
.fpanel.d .fnum{color:var(--brass-lt)}
.fpanel.d .op h3{color:var(--cream)}
.fpanel.d .opn,.fpanel.d .numstamp{color:var(--brass-lt)}
.fpanel.d .numstamp{border-color:var(--brass-lt)}
.fpanel.d .btn{background:var(--cream);color:var(--ink);border-color:var(--cream)}
.fpanel.d .btn:hover{background:transparent;color:var(--cream)}
.fpanel .arrow{color:inherit}
@media (prefers-reduced-motion:reduce){.fpanel.show{animation:none}}

/* page group: services */
.g-services [hidden]{display:none!important}
.g-services .hero.sub .hero-art .snap{position:absolute;left:8px;top:26px;width:300px;margin:0;transform:rotate(3deg);z-index:2}
.g-services .snap::before{content:"";position:absolute;inset:-26px -28px -54px -26px;background:var(--img-paper-torn-white-webp) center/100% 100% no-repeat;transform:rotate(-3deg);z-index:-1;filter:drop-shadow(0 10px 14px rgba(20,12,24,.3))}
.g-services .snap .crop{position:relative;overflow:hidden;aspect-ratio:588/916;filter:drop-shadow(0 14px 18px rgba(20,12,24,.4))}
.g-services .snap .crop img{position:absolute;max-width:none;width:127.2%;height:auto;left:-13.6%;top:-5.13%}
.g-services .snap figcaption{padding:16px 4px 0;font-size:14px;color:var(--ink)}
.g-services .tabs2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:56px}
.g-services .ops .h2{margin-bottom:44px}
.g-services .ops .sheet{padding:52px 56px 56px 64px;display:flex;align-items:center}
.g-services .ops .op{width:100%}
.g-services .ops .pnls{display:grid}
.g-services .ops .pnl{display:block;grid-area:1/1;visibility:hidden}
.g-services .ops .pnl.show{visibility:visible}
.g-services .ops .pnl>.stack,.g-services .ops .pnl .sheet{height:100%}
.g-services .op{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr) auto;gap:56px;align-items:center}
.g-services .op h3{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:clamp(34px,3.4vw,46px);line-height:1.05;color:var(--spruce);letter-spacing:0}
.g-services .op p{font-size:19px}
.g-services .op .arrow{margin-top:22px}
.g-services .op .opn{font-family:var(--display);font-size:120px;line-height:.8;color:var(--plum);letter-spacing:0}
.g-services .op .plaque{justify-self:start;margin:0 12px 0 6px}
.g-services .op .plaque h3{color:var(--ink);font-size:clamp(30px,3vw,40px)}
.g-services .aud .g2{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:64px;align-items:start;padding-top:30px}
.g-services .aud .h2{color:var(--spruce);margin-bottom:26px}
.g-services .aud .copy{display:flex;flex-direction:column;gap:20px}
.g-services .aud .big{font-size:21px;line-height:1.7}
.g-services .doc .hd{display:flex;justify-content:space-between;gap:16px}
.g-services .doc .rows{margin:8px 0 0;display:flex;flex-direction:column}
.g-services .doc .rows li{display:flex;justify-content:space-between;align-items:baseline;gap:24px;padding:13px 0;border-top:2px solid var(--ink);font-size:17px;line-height:1.4}
.g-services .doc .rows li:last-child{border-bottom:2px solid var(--ink)}
.g-services .doc .rows li span:last-child{color:var(--plum);text-align:right}
.g-services .aud .doc{padding:30px 36px 32px;align-self:center}
.g-services .aud .doc .ttl{font-size:44px}
.g-services .slipband{padding:88px 0}
.g-services .slip{max-width:820px;margin:0 auto}
.g-services .slip .sheet{padding:56px 64px 48px 72px}
.g-services .slip blockquote{margin:0;font-family:var(--display);text-transform:uppercase;font-size:clamp(34px,3.8vw,52px);line-height:1.1;color:var(--spruce);max-width:20ch;letter-spacing:0}
.g-services .seas .g{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:64px;align-items:start}
.g-services .seas .h2{margin:0}
.g-services .seas p{font-size:21px;line-height:1.7;border-left:2px solid var(--brass-lt);padding-left:40px}
.g-services .rad .g{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:72px;align-items:center}
.g-services .rad .sheet{padding:92px 40px 52px 56px}
.g-services .rad .big li{display:flex;align-items:center;gap:22px;padding:24px 0;border-top:2px solid var(--ink);font-family:var(--display);text-transform:uppercase;font-size:clamp(44px,4.4vw,60px);line-height:1;color:var(--spruce);letter-spacing:0}
.g-services .rad .big li:last-child{border-bottom:2px solid var(--ink)}
.g-services .rad .big .cb{width:46px;height:46px;color:var(--ink)}
.g-services .rad .h2{color:var(--spruce);margin-bottom:28px}
.g-services .rad .lede{font-size:20px;max-width:46ch}
.g-services .inc .g2{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:64px;align-items:start;padding-top:30px}
.g-services .inc .h2{color:var(--spruce)}
.g-services .inc .ul{margin-top:0}
.g-services .inc .ul li{padding:22px 0;font-size:20px;line-height:1.5;align-items:center}
.g-services .inc .ul li .cb{margin-top:0}
.g-services .hero.sub .hero-art .cfile{position:absolute;left:-10px;top:24px;width:372px;transform:rotate(3deg);z-index:2}
.g-services .hero .cfile .sheet{padding:96px 36px 48px 44px;gap:18px}
.g-services .cfile .rp{display:flex;gap:12px;align-items:flex-start;border-top:2px solid var(--ink);padding-top:16px;font-size:15px;letter-spacing:.08em;line-height:1.5}
.g-services .cfile .rp .cb{margin-top:-1px}
.g-services .cfile .fl{font-family:var(--display);text-transform:uppercase;font-size:32px;line-height:1.08;color:var(--spruce);letter-spacing:0}
.g-services .cfile .jt{align-self:flex-end;color:var(--plum);font-size:24px;border-width:5px;padding:10px 20px;max-width:13ch;text-align:center;transform:rotate(-6deg);margin-top:10px}
.g-services .mo-text .g{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:64px;align-items:start}
.g-services .mo-text .h2{color:var(--spruce)}
.g-services .nw{white-space:nowrap}
.g-services .mo-text .copy{display:flex;flex-direction:column;gap:22px;border-left:2px solid var(--ink);padding-left:48px}
.g-services .mo-text .big{font-size:21px;line-height:1.7}
.g-services .intake .g{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:72px;align-items:center}
.g-services .intake .h2{color:var(--plum);margin-bottom:24px}
.g-services .intake .lede{font-size:20px;max-width:40ch}
.g-services .fform{display:flex;flex-direction:column;gap:22px}
.g-services .fform .ttl{font-family:var(--display);text-transform:uppercase;font-size:34px;line-height:1.05;color:var(--spruce);letter-spacing:0}
.g-services .fform label{display:flex;flex-direction:column;gap:8px;font-size:16px;letter-spacing:.04em}
.g-services .fform input{height:54px;padding:0 16px;border:2px solid var(--ink);border-radius:0;background:var(--cream);font:inherit;font-size:18px;color:var(--ink)}
.g-services .fform input:focus-visible{outline:3px solid var(--plum);outline-offset:3px}
.g-services .fform .btn{align-self:flex-start}
.g-services .fdone{display:flex;flex-direction:column;align-items:flex-start;gap:18px;padding:12px 0}
.g-services .fdone .cb{width:72px;height:72px;color:var(--spruce)}
.g-services .fdone h2{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:clamp(36px,3.6vw,50px);line-height:1.05;color:var(--spruce);letter-spacing:0}
.g-services .fdone p{font-size:19px;max-width:40ch}
.g-services .fdone:focus-visible,.g-services .fdone h2:focus-visible{outline-offset:6px}
.g-services .scope-h{margin-bottom:48px}
.g-services .scope-sheet{padding:60px 56px 48px 64px}
.g-services .scope li{display:flex;align-items:center;gap:24px;padding:20px 0;border-top:2px solid var(--ink)}
.g-services .scope li:last-child{border-bottom:2px solid var(--ink)}
.g-services .scope .lab{order:3;margin-left:auto;flex-shrink:0;width:112px;text-align:center;border:2px solid var(--plum);padding:4px 10px;font-size:13px;letter-spacing:.16em;line-height:1.4;color:var(--plum)}
.g-services .scope .nm{font-family:var(--display);text-transform:uppercase;font-size:clamp(30px,3vw,42px);line-height:1.05;color:var(--spruce);letter-spacing:0}
.g-services .scope-sheet>p{margin-top:30px;font-size:18px;max-width:62ch}
.g-services .hero.sub .field{line-height:1.3}
/* page group: info */
.g-info .c-spruce{color:var(--spruce)}
.g-info .c-plum{color:var(--plum)}
.g-info .c-ink{color:var(--ink)}
.g-info .hero.sub .hero-art .clip{filter:drop-shadow(0 18px 22px rgba(20,12,24,.45))}
.g-info .folder{position:absolute;left:-48px;top:120px;width:400px;transform:rotate(3deg);transition:transform .5s var(--ease)}
.g-info .folder:hover{transform:rotate(1deg) translateY(-6px)}
.g-info .folder>img{width:100%;height:auto;filter:drop-shadow(0 18px 22px rgba(20,12,24,.45))}
.g-info .folder .in{position:absolute;left:30px;right:26px;top:96px;bottom:20px;display:flex;flex-direction:column;align-items:flex-start;gap:12px;color:var(--cream)}
.g-info .folder .stamp{font-size:19px;padding:7px 14px;border-width:4px;color:var(--brass-lt);letter-spacing:0}
.g-info .folder .meta{font-size:13px;letter-spacing:.18em;text-transform:uppercase}
.g-info .folder .ttl{font-family:var(--display);text-transform:uppercase;font-size:34px;line-height:1.08;letter-spacing:0}
.g-info .snap{position:absolute;left:4px;top:28px;width:322px;margin:0;transform:rotate(-2deg)}
.g-info .snap::before{content:"";position:absolute;inset:-18px -30px -70px -24px;background:var(--img-paper-torn-white-webp) center/100% 100% no-repeat;transform:rotate(3deg);z-index:-1;filter:drop-shadow(0 10px 14px rgba(20,12,24,.3))}
.g-info .snap img{width:100%;height:auto;filter:drop-shadow(0 14px 18px rgba(20,12,24,.4))}
.g-info .snap figcaption{padding:16px 8px 0;font-size:15px;color:var(--ink)}
.g-info .snap .tape{left:110px;top:-24px;transform:rotate(-4deg)}
.g-info .stps .wrap{display:flex;flex-direction:column}
.g-info .stp{display:grid;grid-template-columns:76px minmax(0,4fr) minmax(0,6fr);gap:0 56px;align-items:start;padding:44px 0 48px;border-top:2px solid var(--ink)}
.g-info .stp:last-child{border-bottom:2px solid var(--ink)}
.g-info .stp .d{width:76px;height:76px;border-radius:50%;background:var(--plum);color:var(--cream);display:flex;align-items:center;justify-content:center;font-family:var(--display);font-size:38px;line-height:1;border:4px solid var(--cream)}
.g-info .stp .h2{font-size:clamp(40px,4.4vw,60px);color:var(--spruce)}
.g-info .stp .formno{position:static;display:inline-block;margin-top:20px;background:transparent}
.g-info .stp p{font-size:20px;max-width:52ch;padding-top:10px}
.g-info .pair .two-c{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:56px;align-items:start}
.g-info .pair .sheet .h2{font-size:clamp(40px,4.4vw,60px);color:var(--spruce)}
.g-info .pair p.big{font-size:21px;line-height:1.7;padding-top:6px}
.g-info .pair .formno{background:transparent}
.g-info .pair .two-c .formno{position:static;display:inline-block;margin-top:22px}
.g-info .slip{max-width:900px;margin:0 auto}
.g-info .slip .sheet{padding:72px 64px 76px 72px}
.g-info .slip .h2{color:var(--spruce);margin-bottom:26px}
.g-info .slip p{font-size:21px;line-height:1.7;max-width:46ch}
.g-info .cov .g{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:88px;align-items:center}
.g-info .cov .h2{color:var(--spruce);margin-bottom:12px}
.g-info .cov .ul{margin-top:28px}
.g-info .cov .ul li{font-size:21px;line-height:1.4;padding:20px 0;align-items:center}
.g-info .pricing.sheet{padding:44px 56px 52px 64px}
.g-info .pricing .formno{position:static;display:inline-block;margin-bottom:8px;background:transparent}
.g-info .rate{display:flex;flex-direction:column;gap:2px;padding:20px 0 22px;border-top:2px solid var(--ink)}
.g-info .rate span{font-size:14px;letter-spacing:.14em;text-transform:uppercase}
.g-info .rate b{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:32px;line-height:1.1;color:var(--spruce);letter-spacing:0}
.g-info .pricing .fine{margin-top:6px;border-top:2px dashed var(--ink)}
.g-info .season .g{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:72px;align-items:center}
.g-info .season .h2{color:var(--cream);font-size:clamp(44px,5vw,72px)}
.g-info .season .sheet{padding:48px 52px 60px 56px}
.g-info .season p{font-size:20px;line-height:1.7}
.g-info .prog{width:100%;border-collapse:collapse}
.g-info .prog caption{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.g-info .prog th{font-weight:400;text-align:left;font-size:13px;letter-spacing:.16em;text-transform:uppercase;padding:0 24px 14px 0}
.g-info .prog td{padding:26px 24px 26px 0;border-top:2px solid var(--ink);vertical-align:baseline}
.g-info .prog tr:last-child td{border-bottom:2px solid var(--ink)}
.g-info .prog td:first-child{width:56%;font-family:var(--display);text-transform:uppercase;font-size:34px;line-height:1.1;color:var(--spruce);letter-spacing:0}
.g-info .prog td:last-child{font-size:19px}
.g-info .plq .g{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:72px;align-items:center}
.g-info .plq .plaque{display:flex;max-width:520px;margin:0 auto}
.g-info .plq .h2{font-size:clamp(34px,3.6vw,50px);line-height:1.08;color:var(--plum);margin-bottom:24px}
.g-info .plq p{font-size:20px;max-width:46ch}
.g-info .inq .g{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:72px;align-items:center}
.g-info .inq .l{display:flex;flex-direction:column;gap:40px;align-items:flex-start}
.g-info .inq .h2{font-size:clamp(36px,3.8vw,54px);line-height:1.06}
.g-info .inq .l img{width:150px;transform:rotate(-10deg)}
.g-info .inq .sheet{padding:44px 56px 56px 64px}
.g-info .inq .formno{background:var(--desk)}
.g-info .inq .sheet .formno{position:static;display:inline-block;margin-bottom:10px;background:transparent}
.g-info .inq form{display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.g-info .inq label{display:flex;flex-direction:column;gap:2px;width:100%;font-size:13px;letter-spacing:.16em;text-transform:uppercase}
.g-info .inq input{font:inherit;font-size:19px;letter-spacing:0;text-transform:none;border:0;border-bottom:2px solid var(--ink);border-radius:0;background:transparent;color:var(--ink);padding:6px 0 8px;width:100%}
.g-info .inq input:focus-visible{outline:3px solid var(--plum);outline-offset:2px}
.g-info .inq .done .h2{font-size:clamp(36px,3.6vw,50px);color:var(--spruce);margin-bottom:18px}
.g-info .inq .done p{margin-bottom:26px}
.g-info .pod .txt .formno{order:-1;position:static;align-self:flex-end;margin-bottom:-6px}
.g-info .pod .txt .h2{font-size:clamp(36px,3.8vw,52px);line-height:1.04;margin-bottom:0}
.g-info .pod .txt p{font-size:19px}
.g-info .pod figure{width:340px}
.g-info .pod .player{width:100%;color:var(--cream)}
.g-info .pod .arrow{color:var(--spruce)}
.g-info .pod [id]{scroll-margin-top:24px}
.g-info .lib .g{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:64px;align-items:center}
.g-info .lib .sheet .h2{color:var(--spruce);font-size:clamp(38px,4vw,54px);max-width:14ch;margin-bottom:30px}
.g-info .lib .sheet .formno{background:transparent}
.g-info .lib ul{margin:0}
.g-info .lib .cap{font-size:13px;letter-spacing:.16em;text-transform:uppercase;padding-bottom:12px}
.g-info .lib .r{display:grid;grid-template-columns:28px minmax(0,230px) minmax(0,1fr);gap:0 18px;align-items:start;padding:18px 0;border-top:2px solid var(--ink)}
.g-info .lib .r:last-child{border-bottom:2px solid var(--ink)}
.g-info .lib .r h3{font-weight:400;font-family:var(--display);text-transform:uppercase;font-size:26px;line-height:1.1;color:var(--spruce);letter-spacing:0}
.g-info .lib .r p{font-size:17px;line-height:1.55}
.g-info .lib .r .cb{margin-top:2px}
.g-info .lib .art{position:relative}
.g-info .lib .art .tape{left:150px;top:-20px;transform:rotate(-5deg)}
.g-info .lib .art img{width:min(104%,460px);transform:rotate(3deg);filter:drop-shadow(0 18px 22px rgba(20,12,24,.45))}
.g-info .hist .g{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:88px;align-items:center}
.g-info .hist .h2{font-size:clamp(40px,4.4vw,60px);color:var(--plum);margin-bottom:26px}
.g-info .hist p{font-size:21px;line-height:1.7;max-width:54ch;margin-bottom:32px}
.g-info .hist figure{margin:0 auto;position:relative;width:370px;transform:rotate(-3deg)}
.g-info .hist figure::before{content:"";position:absolute;inset:-26px -36px -22px -24px;background:var(--img-paper-torn-white-webp) center/100% 100% no-repeat;transform:rotate(4deg);z-index:-1;filter:drop-shadow(0 10px 14px rgba(20,12,24,.3))}
.g-info .hist figure .ph{overflow:hidden;aspect-ratio:617/940;filter:none;box-shadow:0 14px 18px rgba(20,12,24,.35)}
.g-info .hist figure .ph img{width:121.4%;max-width:none;margin-left:-10.7%;margin-top:-5.83%}
.g-info .hist figure .tape{left:60px;top:-22px;transform:rotate(-4deg)}
/* page group: join */
.g-join [hidden]{display:none!important}
.g-join .ledger{margin:0;display:flex;flex-direction:column}
.g-join .ledger>div{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:12px 0;border-top:2px solid var(--ink)}
.g-join .ledger>div:last-child{border-bottom:2px solid var(--ink)}
.g-join .ledger dt{font-size:16px}
.g-join .ledger dd{margin:0;font-family:var(--display);text-transform:uppercase;font-size:28px;line-height:1.1;letter-spacing:0}
.g-join .ledger .c-plum{color:var(--plum)}
.g-join .ledger .c-spruce{color:var(--spruce)}
.g-join .ledger.contact>div{display:grid;grid-template-columns:112px minmax(0,1fr);align-items:baseline;gap:14px}
.g-join .ledger.contact dt{font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--plum)}
.g-join .ledger.contact dd{font-family:var(--body);text-transform:none;font-size:18px;line-height:1.5}
.g-join .hero-grid.inv{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:80px}
.g-join .hero.sub .hero-grid.inv h1{font-size:clamp(38px,3.9vw,56px)}
.g-join .invest{position:relative;transform:rotate(1.5deg)}
.g-join .hero .invest .sheet{padding:44px 48px 52px 52px;display:flex;flex-direction:column;gap:14px}
.g-join .meta-l{font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--plum)}
.g-join .slab{background:var(--ink);color:var(--cream);padding:22px 24px}
.g-join .slab span{display:block;font-size:15px}
.g-join .slab b{display:block;font-weight:400;font-family:var(--display);text-transform:uppercase;font-size:46px;line-height:1.05;letter-spacing:0}
.g-join .invest p{font-size:16px;line-height:1.6}
.g-join .why .h2{margin-bottom:0;color:var(--plum)}
.g-join .why-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:64px;align-items:start;margin-top:48px}
.g-join .why .step{min-height:70px;font-size:15px;letter-spacing:.1em;text-transform:uppercase;width:100%}
.g-join .why .step .cb{color:currentColor}
.g-join .why .step[aria-selected="true"] .cb{color:var(--brass-lt)}
.g-join .why .stepsheet{padding:84px 56px 72px 64px;min-height:490px;display:block}
.g-join .why .stepsheet h3{margin-bottom:22px;max-width:14ch}
.g-join .why .stepsheet p{font-size:19px}
.g-join .why [role="tabpanel"]:not([hidden]){animation:settle .4s var(--ease) both}
.g-join .numstamp{position:absolute;top:28px;right:30px;transform:rotate(4deg);border:5px double var(--plum);color:var(--plum);padding:10px 20px;font-family:var(--display);font-size:23px;letter-spacing:0;line-height:1.1;pointer-events:none}
.g-join .who .top{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:64px;align-items:end;margin-bottom:56px}
.g-join .who .h2{color:var(--spruce)}
.g-join .who .top p{font-size:19px}
.g-join .who .sheet.clauses .clause h3{color:var(--ink)}
.g-join .who .clause.half{padding:40px 48px}
.g-join .who .clause .cb{margin-top:6px}
.g-join .who .clause.half+.clause.half{border-top:0}
.g-join .who .quote{width:min(100%,720px);margin:56px 0 0 auto}
.g-join .who .quote .sheet{padding:52px 56px 60px 64px}
.g-join .pq{font-family:var(--display);font-size:clamp(28px,2.8vw,40px);line-height:1.12;color:var(--spruce);letter-spacing:0;max-width:26ch}
.g-join .get .g2c{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:64px;align-items:center;padding-top:20px}
.g-join .get .h2{color:var(--spruce)}
.g-join .get .ul{margin-top:0}
.g-join .get .ul li{font-size:19px;align-items:center;padding:20px 0}
.g-join .get .ul li .cb{margin-top:0}
.g-join .path .h2{color:var(--spruce)}
.g-join .tl.tl5{grid-template-columns:repeat(5,minmax(0,1fr))}
.g-join .tl.tl5 .st{padding-right:22px}
.g-join .terr .wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px;align-items:center}
.g-join .terr .h2{font-size:clamp(40px,4.4vw,60px);color:var(--cream)}
.g-join .terr .formno{top:-52px}
.g-join .terr-list{display:flex;flex-direction:column}
.g-join .terr-list li{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 0;border-top:2px solid var(--ink)}
.g-join .terr-list li:last-child{border-bottom:2px solid var(--ink)}
.g-join .terr-list .town{font-family:var(--display);text-transform:uppercase;font-size:40px;line-height:1.05;letter-spacing:0}
.g-join .terr-list .stamp{color:var(--plum);font-size:26px;padding:8px 22px;border-width:5px;transform:rotate(-4deg)}
.g-join .terr-list .slot{display:block;border:2px dashed var(--ink);margin:22px 0;padding:22px 24px;font-size:16px;letter-spacing:0;color:var(--muted);text-align:center;text-wrap:balance;border-top:2px dashed var(--ink)}
.g-join .terr-list li.slot:last-child{border-bottom:2px dashed var(--ink)}
.g-join .fq .h2{margin-bottom:44px;color:var(--spruce)}
.g-join .kit .sheet{padding:56px 64px 60px 72px}
.g-join .kit .h2{font-size:clamp(36px,3.8vw,54px);color:var(--spruce);margin-bottom:36px}
.g-join .kit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 56px}
.g-join .kit-foot{margin-top:40px;display:flex;align-items:center;gap:20px}
.g-join .sent{display:flex;align-items:center;justify-content:space-between;gap:48px;padding:12px 0}
.g-join .sent .tx{display:flex;flex-direction:column;gap:22px;max-width:60ch;align-items:flex-start}
.g-join .sent h2{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:clamp(36px,3.8vw,54px);line-height:1;color:var(--spruce);margin:0;letter-spacing:0}
.g-join .sent h2:focus{outline:0}
.g-join .sent img{width:150px;transform:rotate(-10deg);flex-shrink:0}
.g-join .legal-band{padding:44px 0}
.g-join .legal-band p{font-size:15px;color:var(--muted);max-width:100ch}
.g-join .fld{display:flex;flex-direction:column;gap:6px;min-width:0}
.g-join .fld>label,.g-join .optg>legend{font-size:13px;letter-spacing:.14em;text-transform:uppercase;line-height:1.5;padding:0}
.g-join .fld input,.g-join .fld select,.g-join .fld textarea{font:inherit;font-size:18px;line-height:1.4;color:var(--ink);background:transparent;border:0;border-bottom:2px solid var(--ink);border-radius:0;padding:8px 2px;width:100%;min-width:0;transition:border-color .2s,background-color .2s}
.g-join .fld input:hover,.g-join .fld select:hover,.g-join .fld textarea:hover{background:rgba(43,38,34,.05)}
.g-join .fld input:focus-visible,.g-join .fld select:focus-visible,.g-join .fld textarea:focus-visible{outline:3px solid var(--plum);outline-offset:4px;border-bottom-color:var(--plum)}
.g-join .fld select{appearance:none;-webkit-appearance:none;cursor:pointer;padding-right:36px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%232B2622' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 6px center}
.g-join .fld textarea{border:2px solid var(--ink);background-color:var(--cream);padding:12px 14px;resize:vertical;min-height:150px}
.g-join .fld textarea:hover{background-color:var(--cream)}
.g-join .fld ::placeholder{color:var(--muted);opacity:1}
.g-join .hint{font-size:15px;line-height:1.5;color:var(--muted)}
.g-join .optg{border:0;margin:0;padding:0;min-width:0}
.g-join .optg>legend{margin-bottom:10px}
.g-join .opts6{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}
.g-join .optr{position:relative;display:flex;align-items:center;gap:14px;min-height:64px;padding:0 6px;border-top:2px solid var(--ink);font-size:17px;line-height:1.3;cursor:pointer;transition:background-color .2s,color .2s,padding .2s}
.g-join .optr:nth-last-child(-n+2){border-bottom:2px solid var(--ink)}
.g-join .optr input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.g-join .optr:hover{background:rgba(43,38,34,.06)}
.g-join .optr:has(input:checked){background:var(--ink);color:var(--cream);padding:0 14px}
.g-join .optr input:checked~.cb{color:var(--brass-lt)}
.g-join .optr input:checked~.cb .tick,.g-join .day input:checked~.cb .tick{stroke-dashoffset:0}
.g-join .optr:has(input:focus-visible),.g-join .day:has(input:focus-visible){outline:3px solid var(--plum);outline-offset:3px}
.g-join .days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:2px solid var(--ink)}
.g-join .day{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;padding:10px 0 12px;font-size:15px;cursor:pointer;transition:background-color .2s,color .2s}
.g-join .day+.day{border-left:2px solid var(--ink)}
.g-join .day input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.g-join .day:hover{background:rgba(43,38,34,.06)}
.g-join .day:has(input:checked){background:var(--ink);color:var(--cream)}
.g-join .day input:checked~.cb{color:var(--brass-lt)}
.g-join .book-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:80px;align-items:start}
.g-join .hero.sub.book{padding:32px 0 96px}
.g-join .hero.sub.book h1{font-size:clamp(36px,3.8vw,54px)}
.g-join .hero .sheet.bookf{padding:60px 56px 52px 60px;gap:26px}
.g-join .bsteps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}
.g-join .bs{display:flex;align-items:center;gap:12px;min-height:66px;padding:0 14px;border:0;background:transparent;text-align:left;font-size:14px;line-height:1.25;letter-spacing:.02em;transition:background-color .2s,color .2s}
.g-join .bs+.bs{border-left:2px solid var(--ink)}
.g-join .bs:hover{background:var(--cream)}
.g-join .bs[aria-current="step"]{background:var(--ink);color:var(--cream)}
.g-join .bs .bn{width:32px;height:32px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:50%;border:2px solid currentColor;font-family:var(--display);font-size:17px;line-height:1}
.g-join .bs[aria-current="step"] .bn{background:var(--brass-lt);color:var(--ink);border-color:var(--brass-lt)}
.g-join .bs.done .bn{background:var(--spruce);color:var(--brass-lt);border-color:var(--spruce);font-family:var(--body)}
.g-join .bpanel{display:flex;flex-direction:column;gap:26px}
.g-join .bpanel:not([hidden]){animation:settle .4s var(--ease) both}
.g-join .ftitle{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:32px;line-height:1.05;letter-spacing:0;color:var(--spruce)}
.g-join .pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 28px}
.g-join .pair .wide{grid-column:1/-1}
.g-join .fnav{display:flex;align-items:center;gap:14px;padding-top:6px}
.g-join .fnav .note{font-size:15px;color:var(--muted)}
.g-join .fnav .go{margin-left:auto}
.g-join button.arrow{background:none;border:0;border-bottom:2px solid currentColor;font:inherit;font-size:15px;letter-spacing:.08em;text-transform:uppercase;color:inherit;padding:0 0 2px;cursor:pointer}
.g-join button.arrow:hover{border-bottom-color:transparent}
.g-join .done-box{display:flex;flex-direction:column;gap:22px;align-items:flex-start;padding:12px 0}
.g-join .done-box img{width:130px;transform:rotate(-10deg)}
.g-join .done-box h2{font-family:var(--display);font-weight:400;text-transform:uppercase;font-size:clamp(34px,3.4vw,46px);line-height:1.05;color:var(--spruce);letter-spacing:0}
.g-join .done-box h2:focus{outline:0}
.g-join .towns .h2{color:var(--plum);margin-bottom:48px}
.g-join .tabs7{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;margin-bottom:56px}
.g-join .tabs7 .tab{flex-direction:column;align-items:flex-start;justify-content:center;gap:10px;min-height:96px;padding:12px 14px;font-size:13px;letter-spacing:.08em;line-height:1.35}
.g-join .towns .pnl .two{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:48px;align-items:center}
.g-join .towns .pnl .two>div:first-child{display:flex;flex-direction:column;gap:22px;align-items:flex-start;max-width:62ch}
.g-join .towns .numstamp{position:static;justify-self:center;font-size:110px;padding:14px 44px;transform:rotate(-4deg)}
.g-join .towns .pnl h3{margin-bottom:0}
.g-join .city .sheet{padding:84px 56px 56px 64px}
.g-join .city-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:80px;align-items:center}
.g-join .city .h2{font-size:clamp(36px,3.8vw,54px);color:var(--spruce);margin-bottom:24px}
.g-join .city .lede{margin-bottom:28px}
.g-join .city .doc{transform:rotate(-1.2deg)}
.g-join .city .doc p{font-size:17px;line-height:1.6}
.g-join .city .doc .meta{font-size:15px;letter-spacing:0;text-transform:none}
.spa-page{display:block}.spa-page.on{display:block}

/* ================= responsive ================= */
@media (max-width:1180px){
  .wrap{padding:0 40px}
  .nav nav a{padding:10px 8px;font-size:14px}
  .tags{grid-template-columns:repeat(2,minmax(0,1fr))}
  .g-join .tabs7{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media (max-width:1024px){
  .nav .wrap{height:auto;flex-wrap:wrap;padding-top:14px;padding-bottom:0;gap:12px 16px}
  .nav .logo img{height:56px}
  .nav nav{order:3;flex:0 0 calc(100% + 80px);margin:0 -40px;padding:0 28px;overflow-x:auto;scrollbar-width:none;border-top:1px solid rgba(242,237,227,.14)}
  .nav nav::-webkit-scrollbar{display:none}
  .nav nav a{white-space:nowrap;padding:14px 12px}
}
@media (max-width:860px){
  body{font-size:17px}
  .wrap{padding:0 20px}
  .desk{padding:72px 0}
  [role="separator"]>div{padding:0 20px!important}
  .topbar .wrap{height:auto;padding-top:10px;padding-bottom:10px;justify-content:center}
  .topbar .wrap>div:first-child{display:none}
  .topbar nav{gap:20px}
  .nav nav{flex-basis:calc(100% + 40px);margin:0 -20px;padding:0 8px}
  .nav .btn{height:44px;min-height:44px;padding:0 14px;font-size:14px}
  .btn{white-space:normal;height:auto;min-height:54px;padding:12px 20px;text-align:center}
  .h2{font-size:clamp(32px,9vw,44px)!important}
  .lede,.hero p.lede{font-size:17px}
  .formno{right:20px;top:-44px;font-size:11px;padding:5px 10px}
  .in-sheet .formno,.chap .sheet .formno{position:static;display:inline-block;align-self:flex-start;margin-bottom:18px}
  .sheet{padding:30px 22px 34px 26px!important}
  .sheet::before{inset:-16px -10px -30px -8px}
  .sheet::after{inset:-12px -6px -34px -14px}
  /* single-column grids */
  .hero-grid,.hero-dark .hero-grid,.hero:not(.sub) .hero-grid,.g-join .hero-grid.inv,.p1 .g,.p3 .grid,.p4 .top,.sheet.clauses,.vals.sheet,.checks ul,.tabs,.tabs3,.g-services .tabs2,.pnl .two,.g-join .towns .pnl .two,.check .g2,.tl,.g-join .tl.tl5,.hire .top,.ch4 .grid2,.tags,
  .g-services .op,.g-services .aud .g2,.g-services .seas .g,.g-services .rad .g,.g-services .inc .g2,.g-services .mo-text .g,.g-services .intake .g,
  .g-info .stp,.g-info .pair .two-c,.g-info .cov .g,.g-info .season .g,.g-info .plq .g,.g-info .inq .g,.g-info .lib .g,.g-info .hist .g,
  .g-join .why-grid,.g-join .who .top,.g-join .get .g2c,.g-join .terr .wrap,.g-join .kit-grid,.g-join .opts6,.g-join .pair,.g-join .book-grid,.g-join .city-grid,.g-join .bsteps{grid-template-columns:minmax(0,1fr)!important;gap:32px}
  .g-join .tabs7{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tabs,.tabs3,.g-services .tabs2,.g-join .tabs7{gap:8px;margin-bottom:28px}
  .tab{min-height:60px;padding:0 16px;font-size:13px}
  /* flex rows to columns */
  .p3 .top,.p5 .row,.chap .row,.final .row,.fr .row,.g-join .sent,.panel,.fpanel,.p6 .wrap>div{flex-direction:column;align-items:flex-start;gap:36px!important}
  .p5 figure,.p6 figure,.chap figure,.g-info .pod figure{width:min(100%,340px);margin:0 auto}
  .p5 .formno,.p6 .formno,.chap .txt .formno{align-self:flex-start}
  .g-info .hist figure{width:min(86%,300px)}
  /* hero collage */
  .hero,.hero.sub,.hero-dark,.g-join .hero.sub.book{padding:28px 0 64px}
  .hero h1,.hero-dark h1{font-size:clamp(40px,11vw,52px)}
  .hero.sub h1,.g-join .hero.sub .hero-grid.inv h1,.g-join .hero.sub.book h1{font-size:clamp(32px,8.6vw,42px)}
  .hero .sheet{gap:16px}
  .field,.hero.sub .field,.hero-dark .stamp.field{font-size:18px;padding:8px 16px;border-width:4px}
  .hero-art,.hero.sub .hero-art,.hero:not(.sub) .hero-art,.hero-dark .hero-art{height:auto;display:flex;justify-content:center;padding:12px 0 24px}
  .hero-art .clip,.hero.sub .hero-art .clip,.hero:not(.sub) .hero-art .clip,.hero-dark .hero-art .clip,.hero.sub .hero-art .portrait,.hero.sub .hero-art .report,.g-services .hero.sub .hero-art .snap,.g-services .hero.sub .hero-art .cfile,.g-info .folder,.g-info .snap{position:relative;left:auto;top:auto;width:min(88%,360px)}
  .hero-art .seal,.hero:not(.sub) .hero-art .seal,.hero-dark .hero-art .seal{left:0;bottom:0;width:96px}
  .hero-art .tape{left:40%!important}
  .g-join .invest{transform:none}
  .g-join .slab b{font-size:34px}
  /* misc components */
  .checks{margin:-40px 0 -34px}
  .checks li{font-size:19px}
  .chap .txt,.p5 .txt,.p6 .txt{width:100%;min-width:0}
  .player .ep{flex-wrap:wrap}
  .opts li{padding:18px 16px;gap:14px}
  .opts .lab{width:auto}
  .opts .txt{font-size:19px}
  .panel{padding:32px 22px}
  .panel .num,.fnum,.bigtick{display:none}
  .fold{padding-top:0}
  .fold::before,.fold::after{display:none}
  .ftabs{position:relative;height:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-bottom:8px}
  .ftab{position:relative;left:auto;width:auto;height:54px;transform:none;filter:brightness(.85);white-space:normal;line-height:1.2;font-size:12px;padding:0 14px 6px;text-align:center}
  .fpanel{padding:36px 24px;min-height:0}
  .step{min-height:70px;padding:0 14px}
  .stepsheet,.g-join .why .stepsheet{min-height:0}
  .stepsheet .meta,.g-join .numstamp{position:static;display:inline-block;align-self:flex-start;margin-bottom:18px;font-size:18px}
  .g-join .towns .numstamp{font-size:64px;padding:10px 28px}
  .stepsheet h3{font-size:30px}
  .clause,.g-join .who .clause.half{padding:26px 20px}
  .clause.w h3{font-size:30px}
  .clause h3{font-size:24px}
  .clause.half+.clause.half,.vals .clause.half+.clause.half{border-left:0;border-top:2px solid var(--ink)}
  .q button{font-size:18px;min-height:72px;padding:14px 56px 14px 18px}
  .q button svg{right:18px;top:26px}
  .q[data-open="true"]{display:block}
  .q[data-open="true"] .a,.q .a{padding:0 18px 24px}
  .final img{width:100px}
  .fr{padding:56px 0}
  .fr .l{flex-direction:column;align-items:flex-start;gap:18px}
  .fr .l img{width:72px}
  .fr .h{font-size:28px}
  footer{padding:56px 0 32px}
  footer .cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 20px}
  footer .cols>div:first-child{grid-column:1/-1}
  footer .cols>div:nth-child(2){display:none}
  footer .brand img{height:92px}
  footer .legal{flex-direction:column;align-items:flex-start;gap:10px}
  .quote .sheet{padding:30px 22px 34px 26px}
  .quote .stamp{position:static;display:inline-block;margin-bottom:16px}
  .plaque{padding:28px 24px}
  .tl{border-top:0;margin-top:32px;gap:0}
  .tl .st{border-top:2px solid var(--ink);padding:34px 0 28px;margin-top:26px}
  .chap .big,.g-services .aud .big,.g-services .mo-text .big,.g-info .pair p.big{font-size:18px}
  .g-services .op .opn{font-size:64px}
  .g-services .aud .doc .ttl{font-size:30px}
  .g-services .rad .big li{font-size:32px;padding:18px 0}
  .g-services .rad .big .cb{width:34px;height:34px}
  .g-services .seas p{font-size:18px;padding-left:20px}
  .g-services .mo-text .copy{padding-left:20px}
  .g-services .scope li{flex-wrap:wrap;gap:12px}
  .g-services .scope .lab{order:0;margin-left:0}
  .g-services .nw{white-space:normal}
  .g-info .stp{gap:16px;padding:32px 0}
  .g-info .stp p,.g-info .slip p,.g-info .hist p,.g-info .season p,.g-info .plq p,.g-info .cov .ul li{font-size:18px}
  .g-info .prog td:first-child{font-size:22px;width:auto}
  .g-info .prog td:last-child{font-size:16px}
  .g-info .lib .r{grid-template-columns:28px minmax(0,1fr);gap:6px 14px}
  .g-info .lib .r p{grid-column:2}
  .g-info .lib .art img{width:min(92%,360px);margin:0 auto}
  .g-join .terr-list .town{font-size:26px}
  .g-join .terr-list .stamp{font-size:18px;padding:6px 14px}
  .g-join .who .quote{margin-top:36px}
  .g-join .pair .wide{grid-column:auto}
  .g-join .optr:nth-last-child(2){border-bottom:0}
  .g-join .bs+.bs{border-left:0;border-top:2px solid var(--ink)}
  .g-join .fnav{flex-wrap:wrap}
  .g-join .ledger dd{font-size:22px}
  .g-join .days .day{font-size:13px}
  .g-join .ledger.contact>div{grid-template-columns:minmax(0,1fr);gap:2px}
}
