/* Layout only: palette, type, panels, header and buttons inherit the existing Maker's Edge site stylesheet. */
html{scroll-behavior:auto}.hero h2{font-family:var(--font-display);font-size:clamp(3.5rem,8vw,7rem);line-height:.92;letter-spacing:.03em;margin-bottom:1.5rem}.hero h2 .highlight{color:var(--laser)}.section,.hero{scroll-margin-top:80px}
.cut-story{position:relative}.cut-story.is-ready{height:245vh}.cut-stage{position:relative;min-height:760px;overflow:hidden;background:var(--bg);color:var(--text);padding:27px max(4vw,24px) 18px;display:grid;grid-template-columns:42% 58%;grid-template-rows:auto 1fr auto auto;isolation:isolate}.is-ready .cut-stage{position:sticky;top:64px;height:calc(100vh - 64px);min-height:620px}.cut-topline{grid-column:1/-1;display:flex;justify-content:space-between;border-bottom:1px solid var(--border);padding-bottom:16px;font:10px var(--font-mono);letter-spacing:.12em;color:var(--text-dim)}.cut-copy{align-self:center;z-index:3;padding:32px 0}.cut-eyebrow{font:10px var(--font-mono);letter-spacing:.12em;margin-bottom:26px;color:var(--text-dim)}.cut-copy h1{font:clamp(70px,8.2vw,132px)/.94 var(--font-display);letter-spacing:.03em;margin-left:0}.cut-copy h1 span{color:var(--laser)}.cut-intro{max-width:340px;font-size:15px;line-height:1.65;margin:22px 0}.cut-actions{display:flex;gap:23px;align-items:center}.cut-actions .btn{padding:14px 19px}.cut-quote{font:11px var(--font-mono);text-decoration:underline;text-underline-offset:5px}.cut-visual{align-self:center;position:relative;width:116%;margin-left:-12%;z-index:2;transform:rotate(-3deg)}.cut-machine{width:100%;font-family:var(--font-mono);overflow:visible}.cut-stamp{position:absolute;right:2%;bottom:14%;border:2px solid var(--laser);color:var(--laser);font:13px/1.3 var(--font-mono);padding:10px 16px;transform:rotate(7deg);background:var(--bg)}.cut-bottom{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--border);padding-top:18px;font:10px var(--font-mono);letter-spacing:.08em}.cut-progress{display:grid;grid-template-columns:1fr auto;gap:10px;width:37%}.cut-progress-track{grid-column:1/-1;height:2px;background:var(--border)}.cut-progress-track i{display:block;height:2px;width:100%;transform:scaleX(var(--progress,1));transform-origin:left;background:var(--laser)}.scroll-note span{display:block;color:var(--text-dim);font:11px var(--font-body);letter-spacing:0;margin-top:5px}.cut-skip{text-decoration:underline;text-underline-offset:4px}.map-credit{grid-column:1/-1;font:9px/1.6 var(--font-mono);color:var(--text-dim);margin-top:15px}.map-credit a{text-decoration:underline;text-underline-offset:2px}#finished-piece{opacity:1}#gantry,#laser-head{visibility:hidden}.is-ready #gantry,.is-ready #laser-head{visibility:visible}.cut-story[data-complete=true] #gantry,.cut-story[data-complete=true] #laser-head{visibility:hidden}:focus-visible{outline:2px solid var(--text);outline-offset:5px}
@media(min-width:1500px){.cut-stage{padding-left:max(5vw,calc((100vw - 1450px)/2));padding-right:max(5vw,calc((100vw - 1450px)/2))}.cut-visual{max-width:880px}.cut-copy h1{font-size:132px}}
@media(max-width:1000px){.cut-copy h1{font-size:8.5vw}.cut-intro{font-size:14px;max-width:290px}.cut-actions{gap:14px}.cut-actions .btn{padding:13px}.cut-stage{padding-left:25px;padding-right:25px}.cut-topline{font-size:8px}.cut-eyebrow{font-size:8px}.cut-visual{width:125%;margin-left:-20%}.cut-stamp{right:0;font-size:10px}.nav-cta{padding:10px 14px}}
@media(max-width:700px){.cut-story.is-ready{height:210svh}.is-ready .cut-stage{height:calc(100svh - 64px);min-height:610px}.cut-stage{grid-template-columns:1fr;grid-template-rows:auto auto 1fr auto auto;min-height:650px;padding:16px 20px 12px}.cut-topline span:last-child{display:none}.cut-topline{padding-bottom:10px;font-size:8px}.cut-copy{padding:22px 0 0}.cut-eyebrow{margin-bottom:13px}.cut-copy h1{font-size:clamp(54px,13.8vw,86px);line-height:.96;max-width:100%;letter-spacing:.03em}.cut-copy h1 br{display:none}.cut-copy h1 br:after{content:' '}.cut-copy h1{max-width:390px}.cut-intro{max-width:330px;margin:12px 0;font-size:12px;line-height:1.5}.cut-actions{gap:22px}.cut-actions .btn{padding:11px 13px;font-size:9px}.cut-quote{font-size:10px}.cut-visual{width:100%;margin:-8px auto -15px;align-self:center;max-width:435px}.cut-machine{max-height:33svh;width:100%}.cut-stamp{font-size:8px;padding:6px 9px;bottom:12%;right:0}.cut-bottom{gap:10px;padding-top:10px;font-size:8px}.cut-progress{width:53%;gap:7px}.scroll-note{display:none}.map-credit{font-size:7px;margin-top:9px;max-width:340px}.cut-skip{font-size:8px}.hero{padding-top:3rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.cut-story.is-ready{height:auto}.is-ready .cut-stage{position:relative;top:0;height:auto;min-height:0}.cut-story #gantry,.cut-story #laser-head{visibility:hidden!important}.scroll-note{display:none}*,*:before,*:after{animation:none!important;transition:none!important}.fade-up{opacity:1;transform:none}}
.map-credit .licence-badge{display:inline-block;vertical-align:middle;width:44px;height:auto;margin:0 3px}.footer-links{flex-wrap:wrap}.footer-inner>nav{max-width:100%}@media(max-width:700px){.nav-cta{display:block!important;margin-left:auto;margin-right:12px;font-size:9px;padding:9px 10px}.nav-inner{padding-left:20px;padding-right:20px}.cut-copy h1 br{display:none}.cut-copy h1{word-spacing:.025em}}
.coast-trace{stroke:var(--border);stroke-width:1.2}.road-trace{stroke:var(--border)}.street-name{font-size:5.5px;text-anchor:middle;letter-spacing:.3px;paint-order:stroke;stroke:var(--text);stroke-width:1.6px;stroke-linejoin:round}.area-name{font-size:9px;text-anchor:middle;letter-spacing:1.5px;paint-order:stroke;stroke:var(--text);stroke-width:2px}.detailed-map{overflow:visible}.cut-story.is-ready{height:300vh}@media(max-width:700px){.cut-story.is-ready{height:250svh}.cut-visual{width:112%;margin-left:-6%;max-width:none}.cut-machine{max-height:37svh}}@media(prefers-reduced-motion:reduce){.cut-story.is-ready{height:auto}}
@media(max-width:700px){.cut-visual{margin-top:0;margin-bottom:12px}.cut-stamp{right:6%}}
@media(max-width:700px) and (max-height:700px){.is-ready .cut-stage{min-height:0}.cut-copy{padding-top:12px}.cut-copy h1{font-size:44px}.cut-intro{display:none}.cut-actions{margin-top:12px}.cut-machine{max-height:32svh}.cut-visual{margin-bottom:0}.cut-eyebrow{margin-bottom:9px}}
