/* base */
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%;scroll-padding-top:140px}
body{margin:0;font-size:16px;line-height:1.6;overflow-x:hidden}
body.menu-open{overflow:hidden}
img,svg{display:block;max-width:100%}
img{height:auto}
h1,h2,h3,h4,p,ul,ol,figure,blockquote,dl,dd{margin:0}
ul[role=list],ol[role=list]{list-style:none;padding:0}
a{color:inherit}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
table{border-collapse:collapse}
fieldset{min-width:0;margin:0;padding:0;border:0}
.sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip{position:fixed;left:12px;top:56px;z-index:9999;padding:10px 16px;transform:translateY(-200%);transition:transform .2s}
.skip:focus{transform:none}
.ph{position:relative;overflow:hidden;margin:0}
.ph img{width:100%;height:100%;object-fit:cover}
.tbox{position:relative;overflow-x:auto;max-width:100%}
.js .rv{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.js .rv.in{opacity:1;transform:translateY(0px)}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.js .rv{opacity:1;transform:none}}
/* lightbox */
.lb{position:fixed;inset:48px 0 0 0;z-index:3000;background:rgba(10,12,10,.93);display:grid;grid-template-columns:56px minmax(0,1fr) 56px;align-items:center;gap:8px;padding:64px 8px 24px}
.lb-f{display:grid;gap:10px;justify-items:center;min-width:0}
.lb-f img{max-height:calc(100vh - 220px);width:auto;max-width:100%;background:#334;min-width:min(70vw,600px);aspect-ratio:4/3;object-fit:contain}
.lb-f figcaption{color:#eee;font-size:15px;text-align:center}
.lb button{min-width:44px;min-height:44px;border-radius:999px;border:1px solid rgba(255,255,255,.4);background:rgba(255,255,255,.08);color:#fff;font-size:22px}
.lb .lb-x{position:absolute;top:12px;right:16px;font-size:15px;padding:0 18px}
@media (max-width:700px){.lb{grid-template-columns:minmax(0,1fr);padding-top:70px}.lb-p,.lb-n{position:absolute;bottom:20px}.lb-p{left:20px}.lb-n{right:20px}.lb-f img{min-width:0;width:100%}}

/* Parcelpoint: tangerine, bold-modern. Long scroll story in chapters. */
:root{
  --paper:#FBF3E9; --surface:#FFFFFF; --ink:#16130F; --ink2:#2A251F; --tang:#F26B1D; --tang-d:#A83E00; --peach:#FFD9BF;
  --muted:#5F5348; --line:#E6D8C6;
  --hd:'Krona One',system-ui,sans-serif; --bd:'Mulish',system-ui,sans-serif;
}
body{background:var(--surface);color:var(--ink);font-family:var(--bd);font-size:16.5px}
h1,h2,h3{font-family:var(--hd);font-weight:400;line-height:1.14;letter-spacing:-.01em}
h1{font-size:clamp(2rem,5vw,4.3rem)}
h2{font-size:clamp(1.45rem,2.7vw,2.3rem)}
h3{font-size:1.05rem;line-height:1.3}
p{max-width:66ch}
.wrap{max-width:1280px;margin:0 auto;padding:0 28px}
.small{font-size:.86rem;color:var(--muted)}
.eyebrow{font-weight:800;font-size:.8rem;letter-spacing:.16em;text-transform:uppercase;color:var(--tang-d);margin-bottom:14px}
.lead{font-size:1.16rem;margin-top:16px;color:#3B332C}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--tang);outline-offset:3px}
.skip{background:var(--tang);color:var(--ink);font-weight:800}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:12px 26px;background:var(--tang);color:var(--ink);font-weight:800;text-decoration:none;border:2px solid var(--tang);border-radius:4px;transition:transform .15s,box-shadow .15s;box-shadow:4px 4px 0 var(--ink)}
.btn:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--ink)}
.btn:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}
.btn.ghost{background:transparent;color:var(--ink);border-color:var(--ink)}
.btn.sm{min-height:44px;padding:8px 18px;font-size:.92rem}
.more{font-weight:800;color:var(--tang-d)}
.more::after{content:" \2192"}

/* header: black bar with a scroll progress line */
.hdr{position:sticky;top:0;z-index:100;background:var(--ink);color:#fff}
.hdr-in{max-width:1400px;margin:0 auto;height:72px;padding:0 28px;display:flex;align-items:center;gap:22px;transition:height .25s}
.hdr.is-small .hdr-in{height:60px}
.brand{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none}
.brand .logo{width:40px;height:40px}
.brand b{font-family:var(--hd);font-weight:400;font-size:1.05rem}
.hnav{display:flex;gap:2px;margin-left:auto}
.hnav a{color:#EDE3D7;text-decoration:none;padding:10px 12px;font-weight:700;font-size:.95rem;border-bottom:3px solid transparent}
.hnav a:hover{color:#fff;border-color:var(--tang)}
.hnav a[aria-current]{color:var(--tang);border-color:var(--tang)}
.hbook{box-shadow:3px 3px 0 #fff}
.menubtn{display:none;min-height:44px;padding:8px 18px;background:var(--tang);color:var(--ink);border:0;font-weight:800;border-radius:4px}
.hdr-progress{height:4px;background:#2E2822}
.hdr-progress i{display:block;height:100%;width:0;background:var(--tang)}
@media (max-width:1100px){.hnav{display:none}.hbook{margin-left:auto}.menubtn{display:inline-flex;align-items:center}}
@media (max-width:560px){.hbook{display:none}.menubtn{margin-left:auto}.hdr-in{padding:0 16px}}

/* drawer menu from the right, under the ribbon */
.menu{position:fixed;top:48px;right:0;bottom:0;width:min(420px,100%);z-index:500;background:var(--ink);color:#fff;transform:translateX(100%);transition:transform .28s cubic-bezier(.2,.7,.2,1);box-shadow:-30px 0 60px rgba(0,0,0,.4)}
.menu.open{transform:translateX(0px)}
.menu-in{height:100%;overflow:auto;padding:18px 24px 36px;display:grid;gap:24px;align-content:start}
.menu-top{display:flex;justify-content:space-between;align-items:center;font-family:var(--hd)}
.menuclose{min-height:44px;padding:8px 18px;background:transparent;color:#fff;border:2px solid #fff;border-radius:4px;font-weight:800}
.mlist a{display:block;padding:12px 0;font-family:var(--hd);font-size:1.35rem;color:#fff;text-decoration:none;border-bottom:1px solid #3A332C}
.mlist a[aria-current]{color:var(--tang)}
.menu-c a{color:#FFD9BF}
.menu .trackbox label{color:#fff}

/* hero */
.hero{background:var(--paper);position:relative;overflow:hidden}
.hero::before{content:"";position:absolute;right:-8%;top:-30%;width:62%;height:150%;background:var(--tang);transform:skewX(-14deg);transform-origin:top}
.hero-in{position:relative;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr);gap:48px;align-items:center;padding-top:clamp(48px,7vw,100px);padding-bottom:clamp(48px,6vw,90px)}
.hero h1 span{display:block}
.hero h1 span:last-child{color:var(--tang-d)}
.hero-b{display:flex;flex-wrap:wrap;gap:16px;margin-top:30px}
.hero-card{background:var(--ink);color:#fff;padding:28px;border-radius:6px;box-shadow:10px 10px 0 var(--ink2);display:grid;gap:22px}
.hero-card .small{color:#CFC3B6}
.trackbox{display:grid;gap:8px}
.trackbox label{font-weight:800;font-size:.95rem}
.tb-row{display:flex;gap:8px}
.tb-row input{flex:1;min-width:0;min-height:54px;padding:12px 16px;border:2px solid var(--ink);border-radius:4px;font-size:17px;font-weight:700;letter-spacing:.04em;background:#fff;color:var(--ink)}
.hero-card .tb-row input,.menu .tb-row input{border-color:#fff}
.tb-row .btn{box-shadow:none}
.hc-live{border-top:1px solid #3A332C;padding-top:18px}
.hc-h{display:flex;align-items:center;gap:10px;font-weight:800;margin-bottom:12px}
.dot{width:10px;height:10px;border-radius:50%;background:#5BE37D;box-shadow:0 0 0 0 rgba(91,227,125,.6);animation:pulse 1.8s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 10px rgba(91,227,125,0)}100%{box-shadow:0 0 0 0 rgba(91,227,125,0)}}
.hc-live dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0}
.hc-live dt{font-size:.78rem;color:#CFC3B6}
.hc-live dd{margin:0;font-family:var(--hd);font-size:1.05rem;color:var(--peach)}
.hero-strip{position:relative;background:var(--ink);color:var(--peach);overflow:hidden;padding:14px 0;border-top:4px solid var(--tang)}
.marq{display:flex;gap:44px;width:max-content;animation:marq 40s linear infinite;font-family:var(--hd);font-size:.95rem;white-space:nowrap}
.marq span::after{content:"\25CF";margin-left:44px;color:var(--tang)}
@keyframes marq{to{transform:translateX(-50%)}}
@media (max-width:900px){.hero-in{grid-template-columns:minmax(0,1fr)}.hero::before{right:-40%;top:auto;bottom:-10%;height:55%;width:120%}.hc-live dl{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* the story */
.story{padding:clamp(56px,8vw,120px) 0;background:var(--surface)}
.story-in{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:56px}
.story-map{position:relative}
.sm-in{position:sticky;top:130px;display:grid;gap:18px}
.sm-k{font-family:var(--hd);font-size:.9rem}
.citymap{width:100%;height:auto;border-radius:20px}
.citymap .mapbg{fill:#1E1A16}
.citymap .park{fill:#2A3A26}
.citymap .rd{fill:none;stroke:#3D362F;stroke-width:12;stroke-linecap:round}
.citymap .rd.big{stroke-width:20}
.citymap .rd.thin{stroke-width:7}
.citymap .route{fill:none;stroke:#5A4E43;stroke-width:6;stroke-dasharray:2 12;stroke-linecap:round}
.citymap .route-on{fill:none;stroke:var(--tang);stroke-width:7;stroke-linecap:round}
.citymap .ar circle{fill:#FFF6EC}
.citymap .ar text{fill:#EADFD2;font:700 15px var(--bd)}
.citymap .rider circle{fill:var(--tang);stroke:#fff;stroke-width:4}
.citymap .rider path{stroke:var(--ink);stroke-width:3}
.sm-steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
.sm-steps li{font-weight:800;font-size:.85rem;padding:10px 8px;border-top:4px solid var(--line);color:var(--muted);transition:border-color .3s,color .3s}
.sm-steps li span{display:block;font-family:var(--hd);font-size:.8rem}
.sm-steps li.on{border-color:var(--tang);color:var(--ink)}
.story-chaps{display:grid;gap:0}
.chap{position:relative;min-height:78vh;display:flex;flex-direction:column;justify-content:center;gap:24px;padding:48px 0;border-top:2px solid var(--ink)}
.ch-n{position:absolute;right:0;top:20px;font-family:var(--hd);font-size:clamp(5rem,12vw,10rem);line-height:1;color:transparent;-webkit-text-stroke:2px var(--peach);z-index:0;pointer-events:none}
.ch-body{position:relative;z-index:1;display:grid;gap:12px}
.ch-body p{font-size:1.08rem}
.ch-stat{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin-top:6px}
.ch-stat b{font-family:var(--hd);font-weight:400;font-size:clamp(2.4rem,5vw,3.8rem);color:var(--tang-d);line-height:1}
.ch-stat span{font-weight:700;color:var(--muted);max-width:24ch}
.ch-media{position:relative;z-index:1}
.ch-media .ph{background:linear-gradient(135deg,var(--peach),#F7B98F);border-radius:6px;box-shadow:10px 10px 0 var(--ink)}
.biz .chap{min-height:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:40px}
.biz .chap:nth-child(even) .ch-media{order:-1}
.biz .ch-n{right:auto;left:0}
.story>.wrap>.chap{min-height:0}
@media (max-width:960px){.story-in{grid-template-columns:minmax(0,1fr)}.sm-in{position:static}.chap{min-height:0}.biz .chap{grid-template-columns:minmax(0,1fr)}.biz .chap:nth-child(even) .ch-media{order:0}}

/* sections */
.sec{padding:clamp(56px,7vw,100px) 0}
.sec.t-paper{background:var(--paper)}
.sec.t-ink{background:var(--ink);color:#F4ECE2}
.sec.t-ink .eyebrow{color:var(--tang)}
.sec.t-ink .lead{color:#DCCFC0}
.sh{margin-bottom:28px;display:grid;gap:4px}
.sh h2{max-width:24ch}
.bento{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(180px,auto);gap:16px}
.bt{display:flex;flex-direction:column;gap:10px;padding:24px;background:var(--surface);border:2px solid var(--ink);border-radius:6px;text-decoration:none;transition:transform .15s,box-shadow .15s;overflow:hidden}
.bt:hover{transform:translate(-3px,-3px);box-shadow:6px 6px 0 var(--ink)}
.bt-k{font-family:var(--hd);font-size:.75rem;color:var(--tang-d)}
.bt p{color:var(--muted)}
.b1{grid-column:span 2;background:var(--tang);border-color:var(--tang)}
.b1 .bt-k,.b1 p{color:var(--ink)}
.b2{grid-column:span 2;grid-row:span 2}
.b2 .ph{margin-top:auto;border-radius:4px;background:var(--peach)}
.b3{background:var(--ink);color:#fff}
.b3 p{color:#DCCFC0}
.b3 .bt-k{color:var(--tang)}
@media (max-width:900px){.bento{grid-template-columns:repeat(2,minmax(0,1fr))}.b2{grid-row:auto}}
@media (max-width:560px){.bento{grid-template-columns:minmax(0,1fr)}.b1,.b2{grid-column:auto}}
.numbers{background:var(--tang);padding:48px 0}
.nums{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.num b{display:block;font-family:var(--hd);font-weight:400;font-size:clamp(2.4rem,5vw,4.2rem);line-height:1}
.num span{display:block;font-weight:800;margin-top:8px}
.numbers .small{color:var(--ink);margin-top:16px}
.nums.dark{background:var(--ink);color:#fff;padding:28px;border-radius:6px}
.nums.dark b{color:var(--tang)}
@media (max-width:760px){.nums{grid-template-columns:repeat(2,minmax(0,1fr))}}
.zonestrip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border:2px solid var(--ink);margin-bottom:28px}
.zs{padding:20px;display:grid;gap:6px;border-right:2px solid var(--ink)}
.zs:last-child{border-right:0}
.zs:nth-child(odd){background:var(--paper)}
.zs b{font-family:var(--hd);font-weight:400;color:var(--tang-d)}
.zs span{font-weight:800}
.zs small{color:var(--muted)}
@media (max-width:900px){.zonestrip{grid-template-columns:minmax(0,1fr)}.zs{border-right:0;border-bottom:2px solid var(--ink)}.zs:last-child{border-bottom:0}}
.quotes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.q{border-left:6px solid var(--tang);padding:6px 0 6px 22px;display:grid;gap:14px}
.q blockquote{margin:0;font-size:1.1rem}
.q figcaption{font-weight:800;color:var(--tang)}
@media (max-width:860px){.quotes{grid-template-columns:minmax(0,1fr)}}
.newsrow,.arts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.nr,.art,.related{display:grid;gap:10px;padding:28px;background:var(--surface);border:2px solid var(--ink);border-radius:6px;text-decoration:none;transition:transform .15s,box-shadow .15s}
.nr:hover,.art:hover,.related:hover{transform:translate(-3px,-3px);box-shadow:6px 6px 0 var(--tang)}
.nr-k{font-family:var(--hd);font-size:.75rem;color:var(--tang-d)}
.nr p,.art p,.related p{color:var(--muted)}
.meta{font-size:.86rem;color:var(--muted);font-weight:700}
@media (max-width:760px){.newsrow,.arts{grid-template-columns:minmax(0,1fr)}}

/* CTA */
.cta{background:var(--ink);color:#fff;padding:clamp(60px,8vw,110px) 0;position:relative;overflow:hidden}
.cta::after{content:"";position:absolute;right:-80px;bottom:-80px;width:340px;height:340px;border:40px solid var(--tang);border-radius:50%;opacity:.9}
.cta-in{position:relative;z-index:1;display:grid;gap:20px}
.cta-k{font-family:var(--hd);color:var(--tang);font-size:.9rem}
.cta h2{font-size:clamp(1.8rem,4.4vw,3.6rem);max-width:18ch}
.cta-b{display:flex;flex-wrap:wrap;gap:16px}
.cta .btn{box-shadow:4px 4px 0 #fff}
.cta .btn.ghost{color:#fff;border-color:#fff}
.cta .small{color:#CFC3B6}

/* page hero */
.phero{background:var(--paper);position:relative;overflow:hidden;border-bottom:2px solid var(--ink)}
.phero-in{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr);gap:40px;align-items:center;padding-top:clamp(40px,6vw,80px);padding-bottom:clamp(40px,6vw,80px);position:relative;z-index:1}
.phero-num{position:absolute;right:2%;bottom:-.25em;font-family:var(--hd);font-size:clamp(8rem,22vw,20rem);line-height:1;color:transparent;-webkit-text-stroke:2px #F1CDB2;margin:0;z-index:0}
.phero-side .ph{border-radius:6px;box-shadow:10px 10px 0 var(--ink);background:linear-gradient(135deg,var(--peach),var(--tang))}
.ph-big svg{width:min(100%,260px);margin-left:auto}
.ph-price{background:var(--ink);color:#fff;padding:28px;border-radius:6px;box-shadow:10px 10px 0 var(--tang);display:grid;gap:6px;max-width:320px;margin-left:auto}
.ph-price b{font-family:var(--hd);font-weight:400;font-size:2.6rem;color:var(--tang)}
.ph-price small{color:#DCCFC0}
.crumbs{display:flex;gap:8px;font-size:.88rem;font-weight:700;margin-bottom:14px;color:var(--muted)}
.crumbs a{color:var(--muted)}
@media (max-width:820px){.phero-in{grid-template-columns:minmax(0,1fr)}.phero-side{max-width:340px}.ph-big svg,.ph-price{margin-left:0}}

/* tracker */
.tracker{padding:48px 0 80px;background:var(--surface)}
.tk-top{max-width:640px;margin-bottom:30px}
.tk-msg{font-weight:800;color:var(--tang-d);margin-top:10px;min-height:1.5em}
.tk-res{border:2px solid var(--ink);border-radius:6px;padding:clamp(20px,3vw,36px);display:grid;gap:28px;margin-bottom:18px;background:var(--paper)}
.tk-head{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:flex-start}
.tk-badge{background:var(--tang);font-weight:800;padding:10px 16px;border-radius:4px}
.tk-badge.done{background:#5BE37D}
.tk-badge.wait{background:var(--peach)}
.tk-bar{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
.tk-s{display:grid;gap:8px;font-weight:800;font-size:.85rem;color:var(--muted)}
.tk-s i{display:block;height:10px;background:var(--line);border-radius:2px;position:relative;overflow:hidden}
.tk-s i::after{content:"";position:absolute;inset:0;background:var(--tang);transform:scaleX(0);transform-origin:left;transition:transform .5s}
.tk-s.on{color:var(--ink)}
.tk-s.on i::after{transform:scaleX(1)}
.tk-s.now i::after{animation:fill 1.6s ease-in-out infinite}
@keyframes fill{0%{transform:scaleX(.2)}50%{transform:scaleX(1)}100%{transform:scaleX(.2)}}
.tk-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:28px}
.tk-log{list-style:none;padding:0;display:grid;gap:0;border-left:3px solid var(--ink);margin:12px 0 0 6px}
.tk-log li{position:relative;padding:0 0 18px 22px}
.tk-log li::before{content:"";position:absolute;left:-9px;top:4px;width:15px;height:15px;border-radius:50%;background:var(--surface);border:3px solid var(--ink)}
.tk-log li.cur::before{background:var(--tang)}
.tk-log b{display:block}
.tk-log span{font-size:.9rem;color:var(--muted)}
.tk-pod{background:var(--surface);border:2px dashed var(--ink);padding:16px;border-radius:6px;margin-top:10px}
.tk-pod svg{width:220px;height:auto}
.tk-acts{margin-top:14px;display:grid;gap:10px}
.tk-btns{display:flex;flex-wrap:wrap;gap:8px}
.tk-btns .btn{box-shadow:none}
.tk-done{font-weight:800;color:#1F6B35}
@media (max-width:860px){.tk-grid{grid-template-columns:minmax(0,1fr)}.tk-bar{grid-template-columns:repeat(5,minmax(0,1fr))}.tk-s span{font-size:.68rem}}
.stepsx{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.sx{background:var(--surface);border:2px solid var(--ink);padding:20px;border-radius:6px;display:grid;gap:8px;align-content:start}
.sx b{font-family:var(--hd);font-weight:400;color:var(--tang-d);font-size:1.4rem}
.sx p{color:var(--muted);font-size:.95rem}
@media (max-width:1000px){.stepsx{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.stepsx{grid-template-columns:minmax(0,1fr)}}
.two-col{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center}
.two-col .ph{border-radius:6px;box-shadow:10px 10px 0 var(--tang);background:var(--peach)}
@media (max-width:860px){.two-col{grid-template-columns:minmax(0,1fr)}}
.lst{padding-left:22px;display:grid;gap:10px}
.lst li::marker{color:var(--tang-d);font-weight:800}

/* quote calculator */
.quote{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);border:2px solid var(--ink);border-radius:6px;background:var(--surface);overflow:hidden}
.q-form{padding:clamp(20px,3vw,36px);display:grid;gap:20px}
.q-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:12px;align-items:end}
.q-row.two{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.q-arrow{font-size:1.6rem;padding-bottom:10px;color:var(--tang-d)}
.q-chips{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin-top:6px}
.q-chips input,.wins input,.tog input{position:absolute;opacity:0;width:1px;height:1px}
.q-chips span{display:grid;gap:2px;padding:14px;border:2px solid var(--line);border-radius:4px;cursor:pointer;min-height:66px}
.q-chips small{color:var(--muted);font-size:.8rem}
.q-chips input:checked+span{border-color:var(--ink);background:var(--peach);box-shadow:3px 3px 0 var(--ink)}
.q-chips input:focus-visible+span,.wins input:focus-visible+span,.tog input:focus-visible+span{outline:3px solid var(--tang);outline-offset:2px}
.tog span{display:flex;align-items:center;gap:12px;min-height:44px;cursor:pointer;font-weight:700}
.tog span::before{content:"";flex:0 0 46px;height:26px;border-radius:999px;background:var(--line);box-shadow:inset 0 0 0 2px var(--ink);transition:background .2s}
.tog input:checked+span::before{background:var(--tang) radial-gradient(circle at 34px 13px,#fff 8px,transparent 9px)}
.tog span::before{background-image:radial-gradient(circle at 12px 13px,#fff 8px,transparent 9px)}
.q-out{background:var(--ink);color:#fff;padding:clamp(20px,3vw,36px);display:grid;gap:14px;align-content:start}
.q-k{font-family:var(--hd);font-size:.85rem;color:var(--tang)}
.q-price{font-family:var(--hd);font-size:clamp(2.6rem,5vw,3.8rem);line-height:1;color:#fff}
.q-lines{list-style:none;padding:0;display:grid;gap:6px;font-size:.95rem;color:#DCCFC0}
.q-lines li{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid #3A332C;padding-bottom:6px}
.q-eta{font-weight:800;color:var(--peach)}
.q-out .btn{box-shadow:4px 4px 0 #fff}
.q-out .small{color:#CFC3B6}
@media (max-width:900px){.quote{grid-template-columns:minmax(0,1fr)}.q-row{grid-template-columns:minmax(0,1fr)}.q-arrow{display:none}}
.tt{width:100%;min-width:620px;border:2px solid var(--ink)}
.tt th,.tt td{text-align:left;padding:14px 16px;border-bottom:1px solid var(--line);vertical-align:top}
.tt thead th{background:var(--ink);color:#fff;font-family:var(--hd);font-weight:400;font-size:.85rem}
.tt tbody tr:nth-child(even){background:var(--paper)}

/* forms */
.form{display:grid;gap:18px}
.form fieldset{display:grid;gap:14px;padding:22px;border:2px solid var(--ink);border-radius:6px;background:var(--surface)}
.form legend{font-family:var(--hd);padding:0 8px;font-size:1rem}
.two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}
@media (max-width:620px){.two{grid-template-columns:minmax(0,1fr)}}
.fld{display:grid;gap:6px;min-width:0}
.fld label,.fld legend,.lbl{font-weight:800;font-size:.95rem}
.fld input,.fld select,.fld textarea{width:100%;min-height:52px;padding:12px 14px;border:2px solid var(--ink);border-radius:4px;background:#fff;font-size:16px}
.err{display:none;color:#B3261E;font-weight:800;font-size:.88rem}
.sec.t-ink .err{color:#FFB4A8}
.fld.bad .err{display:block}
.fld.bad input,.fld.bad textarea{border-color:#B3261E;background:#FFF4F2}
.wins{display:flex;flex-wrap:wrap;gap:8px}
.wins span{display:inline-flex;align-items:center;min-height:44px;padding:8px 14px;border:2px solid var(--line);border-radius:4px;cursor:pointer;font-weight:700}
.wins input:checked+span{border-color:var(--ink);background:var(--tang)}
.thanks{background:var(--surface);color:var(--ink);border:2px solid var(--ink);box-shadow:8px 8px 0 var(--tang);border-radius:6px;padding:28px;display:grid;gap:12px}
.book{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.9fr);gap:36px;align-items:start}
.book-r{position:sticky;top:130px;background:var(--ink);color:#fff;padding:26px;border-radius:6px;display:grid;gap:16px}
.book-r .ph{border-radius:4px;background:var(--peach)}
@media (max-width:900px){.book{grid-template-columns:minmax(0,1fr)}.book-r{position:static}}
.ways{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:12px}
.way{padding:22px;border:2px solid var(--ink);border-radius:6px;background:var(--surface);display:grid;gap:8px;align-content:start}
.way a{font-weight:800;color:var(--tang-d);overflow-wrap:anywhere}
@media (max-width:900px){.ways{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.ways{grid-template-columns:minmax(0,1fr)}}

/* plans, rules, gallery, updates */
.plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.plan{border:2px solid var(--ink);border-radius:6px;padding:26px;background:var(--surface);display:grid;gap:12px;align-content:start}
.plan.hot{background:var(--tang);box-shadow:8px 8px 0 var(--ink)}
.plan.hot .lst li::marker{color:var(--ink)}
.pp{font-family:var(--hd);font-size:1.2rem}
@media (max-width:860px){.plans{grid-template-columns:minmax(0,1fr)}}
.rules{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;border:2px solid var(--ink)}
.rule{padding:22px;border-right:2px solid var(--ink);display:grid;gap:10px;align-content:start}
.rule:last-child{border-right:0}
.rule b{font-family:var(--hd);font-weight:400;font-size:1.8rem;color:var(--tang-d)}
@media (max-width:900px){.rules{grid-template-columns:minmax(0,1fr)}.rule{border-right:0;border-bottom:2px solid var(--ink)}.rule:last-child{border-bottom:0}}
.gal{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.gl{display:block;position:relative;overflow:hidden;border:2px solid var(--ink);border-radius:6px;background:linear-gradient(135deg,var(--peach),#F7B98F)}
.gl img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .4s}
.gl:hover img{transform:scale(1.05)}
.gl:nth-child(4n+1){transform:rotate(-1deg)}
.gl:nth-child(4n+3){transform:rotate(1deg)}
@media (max-width:620px){.gal{grid-template-columns:repeat(2,minmax(0,1fr))}}
.upd{list-style:none;padding:0;display:grid;gap:0;border-top:2px solid var(--ink)}
.upd li{display:grid;grid-template-columns:200px minmax(0,1fr);gap:24px;padding:22px 0;border-bottom:2px solid var(--ink)}
.upd span{font-family:var(--hd);font-size:.85rem;color:var(--tang-d)}
.upd p{color:var(--muted);margin-top:6px}
@media (max-width:620px){.upd li{grid-template-columns:minmax(0,1fr);gap:6px}}
.art-body{display:grid;grid-template-columns:300px minmax(0,1fr);gap:48px;align-items:start}
.art-aside{position:sticky;top:130px;background:var(--ink);color:#fff;padding:24px;border-radius:6px;box-shadow:8px 8px 0 var(--tang)}
.art-aside .eyebrow{color:var(--tang)}
.art-aside h2{font-size:1.1rem;margin-bottom:12px}
.prose{display:grid;gap:16px}
.prose h2{font-size:1.4rem;margin-top:16px}
.prose p{font-size:1.1rem}
@media (max-width:860px){.art-body{grid-template-columns:minmax(0,1fr)}.art-aside{position:static}}

/* FAQ */
.faq{display:grid;gap:10px;max-width:900px}
.faq details{border:2px solid var(--ink);border-radius:6px;background:var(--surface)}
.faq summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:16px 20px;cursor:pointer;font-weight:800;min-height:44px}
.faq summary::-webkit-details-marker{display:none}
.faq summary i{font-style:normal;font-family:var(--hd);width:30px;height:30px;display:grid;place-items:center;background:var(--tang);border-radius:4px;transition:transform .2s;flex:0 0 30px}
.faq details[open] summary i{transform:rotate(45deg)}
.faq details>div{padding:0 20px 18px;color:#3B332C}
.faqcols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.fq-h{margin-bottom:12px;color:var(--tang-d)}
@media (max-width:1000px){.faqcols{grid-template-columns:minmax(0,1fr)}}
.mapbox .citymap{box-shadow:10px 10px 0 var(--tang)}

/* footer */
.ftr{background:var(--ink);color:#DCCFC0;padding:40px 0 110px;overflow:hidden}
.ftr-mega{font-family:var(--hd);font-size:clamp(3rem,12vw,11rem);line-height:1;color:var(--tang);margin:0 0 40px;white-space:nowrap;letter-spacing:-.04em}
.ftr-grid{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr));gap:28px}
.ftr-grid div{display:grid;gap:10px;align-content:start}
.ftr-grid h2{font-size:.8rem;color:#fff;margin-bottom:6px}
.ftr a{color:#fff;text-decoration:none;min-height:28px}
.ftr a:hover{color:var(--tang)}
.ftr-say{font-family:var(--hd);font-size:1.2rem;color:#fff;line-height:1.35}
.ftr-bot{margin-top:40px;padding-top:20px;border-top:1px solid #3A332C;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:.88rem}
@media (max-width:860px){.ftr-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ftr-grid>div:first-child{grid-column:1/-1}}
.wa{position:fixed;right:18px;bottom:18px;z-index:70;display:flex;align-items:center;gap:8px;padding:10px 18px 10px 12px;min-height:52px;background:#1F7A4A;color:#fff;font-weight:800;text-decoration:none;border-radius:4px;box-shadow:4px 4px 0 var(--ink)}
.wa svg{width:28px;height:28px}
@media (max-width:560px){.wa span{display:none}.wa{padding:12px}.wrap{padding-left:16px;padding-right:16px}}
.trackbox,.form,.form fieldset,.tk-top,.tk-res,.tk-side{grid-template-columns:minmax(0,1fr);min-width:0}
.tk-top{display:grid}
.q-chips label,.wins label,.tog{position:relative}
.fld .q-chips input,.fld .wins input,.tog input{width:1px;height:1px;min-height:0;padding:0;border:0;left:0;top:0}
.hero::before{right:-20%;width:52%}
.hero-t{max-width:640px}
@media (max-width:900px){.hero::before{right:-40%;width:120%}.hero-in{padding-top:40px}}
