/* Hallmark · shape: Portfolio Index · genre: editorial · theme: Ink (deal 1/3, seed web-studio-three-local-0a44·1ba03453·2026-11-02·r0) · redesign: full
 * hero: Index (/), Settled (content), Stage (/contact.html) · nav: directory bar · footer: colophon block · imagery: the product · signature: a ruled project index and editable first-screen canvas · ink: paper
 * axes: light/grotesk-sans/chromatic-teal · posture: restrained · contrast: pass · fold: pass · copy: customer pages edited; legal draft retained · v2.0.0 */
/* Hallmark · pre-emit critique: P4 H4 E4 S4 R4 V4 · weakest: V, use distinct project-led opening and actual editable canvas */
/* Hallmark · waive 44c · compact directory openings · real project links and previews follow the headline; the Work header leaves its first example in view. */
/* Hallmark · waive 77 · concise concept disclosure · the short explanation belongs beside the usable directory, without invented proof or filler imagery. */
/* Hallmark · waive 83 · the portfolio material is the product · long captured site pages are clipped previews, and the only full-width film shows our own site layouts. */
/* Hallmark · waive 22 · ink and greys at zero chroma · Northlane shows its websites as a printed project index */

@import url('./tokens.css');
@import url('./base.css');
@font-face{font-family:Epilogue;src:url('../fonts/epilogue-latin-wght-normal.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
:root{--paper:var(--color-paper);--white:var(--color-paper);--cream:var(--color-paper-2);--ink:var(--color-ink);--charcoal:var(--color-ink-2);--line-dark:oklch(60% 0 0);--text:var(--color-ink-2);--muted:var(--color-muted);--muted-dark:oklch(78% .006 100);--hair:var(--color-rule);--accent:var(--color-accent);--accent-deep:var(--color-accent-soft-ink);--accent-on-dark:oklch(82% .07 188);--hi:var(--color-accent-soft);--f-display:var(--font-display);--f-text:var(--font-body);--f-mono:var(--font-body);--w-grid:1312px;--w-wide:1312px;--pad-y:112px;--header-h:88px;--error:var(--color-error);--overlay:oklch(16% 0 0 / .5)}
html{scroll-padding-top:112px}body{color:var(--text)}ul,ol{margin:0;padding:0;list-style:none}dl,dd,figure{margin:0}a,button{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer}input,select,textarea{color:inherit}a:hover{color:var(--accent)}:focus-visible{outline:2px solid var(--color-focus);outline-offset:4px}.on-ink :focus-visible,.drawer :focus-visible{outline-color:var(--accent-on-dark)}
.skip{position:fixed;top:-80px;left:16px;z-index:600;background:var(--ink);color:var(--paper);padding:var(--space-sm) var(--space-lg);border-radius:999px}.skip:focus{top:16px}.js .no-js-only{display:none}.h1,.h1-hero{font-size:clamp(44px,5.3vw,84px);line-height:1.03;letter-spacing:-.055em;font-weight:700}.h2{font-size:clamp(32px,3.4vw,52px)}.h2-poster{font-size:clamp(28px,3vw,44px)}.h3{font-size:24px}.lead{font-size:18px;line-height:1.6;max-width:56ch}.note,.hint,.form-note{font-size:14px;color:var(--muted)}.label{display:block;font:400 14px/1.5 var(--f-text);letter-spacing:0;color:var(--muted)}.mono{font-family:var(--f-text);font-variant-numeric:tabular-nums}.ph{font-family:var(--f-text)}.link{font-weight:600}.text-link{display:inline-flex;align-items:center;gap:var(--space-sm);min-height:44px;font-weight:600}.arr{width:12px;height:12px;flex:none}.inner,.close-in,.footer-in{max-width:var(--w-grid);margin-inline:auto}.sec,.sec-lg{padding:var(--pad-y) var(--gutter)}.bg-cream{background:var(--cream)}.bg-ink,.on-ink{background:var(--ink);color:var(--paper)}.on-ink .lead{color:var(--paper)}.on-ink .label,.on-ink .note{color:var(--muted-dark)}.head{display:grid;justify-items:start;gap:var(--space-md);margin-bottom:var(--space-xl)}.actions{display:flex;gap:var(--space-sm) var(--space-lg);flex-wrap:wrap;align-items:center}.pill{display:inline-flex;justify-content:center;align-items:center;gap:var(--space-sm);min-height:48px;padding:var(--space-sm) var(--space-lg);border:1px solid var(--hair);border-radius:999px;font:600 14px/1.25 var(--f-text);text-decoration:none;transition:background-color var(--dur-short),color var(--dur-short),border-color var(--dur-short)}.pill-ink,.hdr-cta{background:var(--ink);color:var(--paper);border-color:var(--ink)}.pill-ink:hover,.hdr-cta:hover{background:var(--charcoal);color:var(--paper)}.pill-hi,.pill-accent{background:var(--hi);color:var(--accent-deep);border-color:var(--hi)}.pill-hi:hover,.pill-accent:hover{background:var(--paper);color:var(--ink)}.pill-ghost{background:var(--paper);color:var(--ink)}.pill-ghost:hover{background:var(--cream)}.pill-ghost-dark{color:var(--paper);border-color:var(--line-dark)}.pill-ghost-dark:hover{background:var(--charcoal);color:var(--paper)}.pill:active{opacity:.8}.pill:disabled,button:disabled{opacity:.45;cursor:not-allowed}.pill-sm{min-height:44px;padding:var(--space-xs) 20px}
.site-header{height:var(--header-h);position:sticky;top:0;z-index:300;background:var(--paper);color:var(--ink);border-bottom:1px solid var(--hair)}.hdr{height:100%;max-width:var(--w-wide);margin:auto;padding-inline:var(--gutter);display:flex;align-items:center;gap:var(--space-xl)}.wordmark{display:inline-flex;align-items:center;gap:var(--space-sm);font:700 24px/1 var(--f-display);letter-spacing:-.04em;text-decoration:none;min-height:44px}.wordmark svg{flex:none}.nav{display:flex;gap:32px;margin-left:auto}.nav a,.f-nav a{display:inline-flex;align-items:center;min-height:44px;font-size:14px;text-decoration:none}.nav a[aria-current],.f-nav a[aria-current]{text-decoration:underline;text-underline-offset:8px}.hdr-end{display:flex;align-items:center}.burger,.drawer-close{width:44px;height:44px;border:1px solid var(--hair);border-radius:50%;display:none;place-items:center;background:transparent}.drawer{display:none;position:fixed;inset:0 auto 0 0;width:min(88vw,360px);z-index:500;background:var(--paper);padding:var(--space-lg);flex-direction:column;gap:var(--space-lg);overflow:auto}.drawer.is-open{display:flex}.drawer-close{display:grid;align-self:flex-end}.drawer nav{display:grid}.drawer nav a{font-size:20px;padding:var(--space-md) 0;border-bottom:1px solid var(--hair);text-decoration:none}.drawer-foot{display:grid;gap:var(--space-lg);margin-top:auto}.backdrop{display:none;position:fixed;inset:0;z-index:400;background:var(--overlay)}.backdrop.is-open{display:block}body.is-locked{overflow-y:hidden;overflow-x:clip}
.hero{max-width:var(--w-grid);margin:auto;padding:72px var(--gutter) var(--space-2xl)}.hero-in{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:var(--space-lg) var(--space-2xl);align-items:end}.hero h1{max-width:13ch}.hero-lead{font-size:18px;max-width:40ch}.hero .actions{margin-top:var(--space-lg)}.hero-meta{font-size:14px;color:var(--muted);margin-bottom:var(--space-lg)}.hero-index{margin-top:48px;border-top:1px solid var(--ink)}.hero-project{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:var(--space-lg);align-items:center;min-height:68px;border-bottom:1px solid var(--hair);text-decoration:none}.hero-project span:first-child{color:var(--muted);font-size:14px}.hero-project strong{font-size:18px;font-weight:600}.hero-project small{color:var(--muted);font-size:14px}.lanes-wrap{margin-top:var(--space-xl);display:grid;grid-template-columns:minmax(0,3fr) minmax(0,1fr);gap:32px}.lanes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-md);max-height:240px;overflow:clip}.lane{min-width:0}.lane-tag{display:block;font-size:14px;margin-bottom:var(--space-sm);color:var(--ink)}.lane-tag small{color:var(--muted);margin-left:var(--space-xs)}.lane-track{height:196px;overflow:clip;border:1px solid var(--hair);border-radius:12px}.lane-track img{width:100%;height:auto}.lane-track img+img{display:none}.lane-yours{display:grid;place-items:center;padding:var(--space-lg);background:var(--cream);border:1px solid var(--hair);border-radius:12px}.ly-line,.hero-scrim,.cue{display:none}.ly-in{display:grid;gap:var(--space-sm)}.ly-title{font-size:24px;font-weight:700;letter-spacing:-.04em}.ly-text{font-size:14px}.ly-link{min-height:44px;display:inline-flex;align-items:center;font-weight:600}.marquee{max-width:var(--w-grid);padding:var(--space-lg) var(--gutter);margin:auto}.mq-set{display:flex;gap:var(--space-sm) var(--space-xl);flex-wrap:wrap}.mq-set li{font-size:14px}.mq-set[aria-hidden]{display:none}.statement{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:32px;align-items:end}.statement p{font:700 clamp(24px,2.8vw,40px)/1.2 var(--f-display);letter-spacing:-.04em;max-width:48ch}.statement a{justify-self:end}
.wcards{display:grid;gap:32px}.wcard{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:var(--space-md) 32px;align-items:start;padding:32px 0;border-top:1px solid var(--ink)}.wcard .shot{grid-column:1;grid-row:1/5}.wcard>.label,.wcard>h3,.wcard>p,.wcard>.actions{grid-column:2}.wcard h3{font-size:clamp(28px,3vw,44px)}.shot{display:block;aspect-ratio:16/10;overflow:clip;border:1px solid var(--hair);border-radius:12px;background:var(--cream)}.shot img{width:100%;height:100%;object-fit:cover;object-position:top}.after{margin-top:32px}.rows{display:grid;counter-reset:row;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px}.rows li{counter-increment:row;padding:32px 0;border-top:1px solid var(--hair);display:grid;gap:var(--space-md)}.rows li::before{content:counter(row,decimal-leading-zero);font-size:40px;line-height:1;font-weight:700;color:var(--ink);letter-spacing:-.04em}.rows h3{font-size:24px}.rows p{max-width:58ch}.tiles{max-width:var(--w-grid);margin:var(--space-xl) auto 0;padding-inline:var(--gutter);display:grid;gap:var(--space-lg)}.tile-set{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--space-md)}.tile-set[aria-hidden]{display:none}.tile-set figure{aspect-ratio:4/3;border:1px solid var(--hair);border-radius:8px;overflow:clip}.tile-set img{width:100%;height:100%;object-fit:cover}
.yl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.yl-head{grid-column:1/-1;display:grid;gap:var(--space-md)}.yl .lead{max-width:60ch}.lane-form{display:grid;gap:var(--space-lg)}.yl-mock{grid-column:2;grid-row:2/4}.lane-mock{--m-on:var(--accent-on-dark);--m-hi:var(--hi);min-height:420px;background:var(--paper);color:var(--ink);border:1px solid var(--line-dark);border-radius:12px;display:flex;flex-direction:column;overflow:clip}.lm-bar{padding:var(--space-lg);border-bottom:1px solid var(--hair);display:flex;align-items:center;justify-content:space-between;gap:var(--space-md)}.lm-name{font-size:20px;font-weight:700;overflow-wrap:anywhere}.lm-burger{display:none}.lm-body{padding:48px 32px;display:grid;gap:var(--space-lg)}.lm-town{font-size:14px;color:var(--muted);overflow-wrap:anywhere}.lm-h{font:700 clamp(28px,3vw,44px)/1.05 var(--f-display);letter-spacing:-.04em;overflow-wrap:anywhere}.lm-pills{display:flex;gap:var(--space-sm);flex-wrap:wrap}.lm-pills span{display:inline-flex;min-height:44px;align-items:center;padding:var(--space-sm) 20px;border-radius:999px;font-size:14px;font-weight:600}.lm-call{background:var(--m-hi);color:var(--ink)}.lm-quote{border:1px solid var(--hair)}.lm-mq{margin-top:auto;padding:var(--space-md) var(--space-lg);border-top:1px solid var(--hair);overflow:clip}.lm-mq-track{font-size:14px;white-space:nowrap}.lm-mq-track span+span{display:none}.yl-act{display:grid;gap:var(--space-md);justify-items:start}.swatches{display:flex;flex-wrap:wrap;gap:var(--space-xs);border:0;margin:0;padding:0}.swatches legend{margin-bottom:var(--space-sm);font-size:14px}.swatches label{position:relative;display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-sm) var(--space-md);border:1px solid var(--line-dark);border-radius:999px;font-size:14px;min-height:48px;cursor:pointer}.swatches input{position:absolute;opacity:0;inset:0}.swatches .sw{width:12px;height:12px;background:var(--sw);border-radius:50%}.swatches label:has(:checked){background:var(--paper);color:var(--ink)}.swatches label:has(:focus-visible){outline:2px solid var(--accent-on-dark);outline-offset:4px}
.field{display:grid;gap:var(--space-xs)}.field label{font-size:14px;font-weight:600}.field .opt{font-weight:400;color:var(--muted)}.field input,.field select,.field textarea{width:100%;min-height:48px;padding:var(--space-sm) var(--space-md);border:1px solid var(--muted);border-radius:10px;background:var(--paper);font-size:16px;line-height:1.5}.field textarea{min-height:120px;resize:vertical}.field input:hover,.field select:hover,.field textarea:hover{border-color:var(--muted)}.field :focus{outline:2px solid var(--accent);outline-offset:2px}.field [aria-invalid=true]{outline:2px solid var(--error);outline-offset:2px}.err{font-size:14px;color:var(--error)}.lane-form .field input{background:var(--charcoal);color:var(--paper);border-color:var(--line-dark)}.lane-form .hint{color:var(--muted-dark)}.lane-form :focus{outline-color:var(--accent-on-dark)}
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:32px}.plist{border-top:1px solid var(--ink)}.plist>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-md);padding:var(--space-lg) 0;border-bottom:1px solid var(--hair)}.plist dt{font-size:20px;font-weight:600}.plist dt span{display:block;font-size:14px;font-weight:400;color:var(--muted);margin-top:var(--space-xs)}.plist dd{font-size:24px;font-weight:700;letter-spacing:-.04em}.price-foot{display:grid;gap:var(--space-md);margin-top:var(--space-lg)}.close{padding:80px var(--gutter)}.close-in{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:var(--space-lg) 32px}.close h2{grid-column:1}.close-mail{grid-column:1;font-size:clamp(21px,3.5vw,48px);letter-spacing:-.04em;font-weight:700;overflow-wrap:anywhere;text-decoration:none}.close p{grid-column:2;grid-row:1/3;align-self:center;max-width:48ch}.close .actions{grid-column:1/-1}.close a:hover{color:var(--accent-on-dark)}
.footer{padding:var(--space-2xl) var(--gutter) 32px;border-top:1px solid var(--hair)}.footer-in{display:grid;gap:var(--space-xl)}.f-top{display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap}.f-nav{display:flex;gap:var(--space-lg);flex-wrap:wrap}.f-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;font-size:14px}.f-details h2{font:600 14px/1.5 var(--f-text);letter-spacing:0;margin-bottom:var(--space-md)}.f-details p{max-width:60ch}.f-last{border-top:1px solid var(--hair);padding-top:var(--space-lg);font-size:14px;color:var(--muted)}
.phead{padding:80px var(--gutter) var(--space-2xl)}.phead-in{max-width:var(--w-grid);margin:auto;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:var(--space-lg) 32px;align-items:end}.phead .label{grid-column:1/-1;order:3}.phead .actions{grid-column:1/-1}.phead+.sec-lg,.phead+.sec{padding-top:48px}.wrows{display:grid;gap:var(--space-3xl)}.wrow{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:32px;padding-top:32px;border-top:1px solid var(--ink)}.wrow-text{grid-column:2;display:grid;gap:var(--space-lg);align-content:start}.wrow-media{grid-column:1;grid-row:1;display:grid;grid-template-columns:minmax(0,3fr) minmax(0,1fr);gap:var(--space-md);align-items:start}.wrow-media .shot{grid-column:1/-1}.wrow-media .phone{grid-column:2;max-height:200px}.wdl{border-top:1px solid var(--hair);width:100%}.wdl>div{display:grid;grid-template-columns:100px minmax(0,1fr);gap:var(--space-md);border-bottom:1px solid var(--hair);padding:var(--space-sm) 0}.wdl dt{font-size:14px;color:var(--muted)}.wrow-line{font-size:18px;max-width:44ch}.phone{border:1px solid var(--hair);border-radius:8px;overflow:clip;aspect-ratio:390/844}.phone img{width:100%;height:100%;object-fit:cover;object-position:top}.duo,.duo-media{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:32px;align-items:start}.duo p{font-size:18px;line-height:1.7}.duo p+p{margin-top:var(--space-lg)}.facts6{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 32px;margin-top:var(--space-lg);border-top:1px solid var(--ink)}.facts6>div{padding:var(--space-md) 0;border-bottom:1px solid var(--hair);display:grid;gap:var(--space-xs)}.facts6 dt{font-size:14px;color:var(--muted)}.facts6 dd{font-size:16px;font-weight:600}.wide-shot{margin-bottom:var(--space-2xl)}.phones{display:grid;grid-template-columns:repeat(3,minmax(0,250px));justify-content:space-between;gap:32px;margin-top:var(--space-xl)}.phones-4{grid-template-columns:repeat(4,minmax(0,1fr))}.ticks{display:grid;gap:var(--space-md)}.ticks li{padding-block:var(--space-md);border-top:1px solid var(--hair)}.next{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-top:var(--space-2xl);padding:32px 0;border-top:1px solid var(--ink);text-decoration:none}.next strong{display:block;font-size:40px;font-weight:700;letter-spacing:-.04em;margin-top:var(--space-sm)}
.tabs{display:grid;grid-template-columns:220px minmax(0,1fr);gap:32px;max-width:var(--w-grid);margin:auto}.tablist{display:flex;flex-direction:column;counter-reset:step}.tab{counter-increment:step;display:flex;align-items:center;gap:var(--space-md);min-height:60px;padding:var(--space-md);border:0;border-top:1px solid var(--hair);background:transparent;text-align:left;font-size:16px}.tab::before{content:counter(step,decimal-leading-zero);font-size:14px;color:var(--muted)}.tab:hover{background:var(--cream)}.tab[aria-selected=true]{background:var(--hi);color:var(--accent-deep)}.panel{display:flex;flex-direction:column;gap:var(--space-lg);border:1px solid var(--hair);padding:32px;border-radius:12px;min-height:500px}.panel-count{font-size:14px;color:var(--muted)}.panel-title{font-size:40px}.panel-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:32px}.panel-grid p{font-size:18px}.panel-nav{margin-top:auto;display:flex;justify-content:space-between;gap:var(--space-md)}.dl-rows{border-top:1px solid var(--ink)}.dl-rows>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:32px;padding:var(--space-lg) 0;border-bottom:1px solid var(--hair)}.dl-rows dt{font-size:24px;font-weight:600;letter-spacing:-.04em}.dl-rows dd{max-width:60ch}.dl-close{margin-top:32px;font-size:18px;max-width:70ch}.measure{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;border-top:1px solid var(--line-dark);margin-top:32px}.measure>div{padding-top:32px;display:flex;flex-direction:column-reverse;gap:var(--space-md)}.measure dd{font-size:clamp(28px,3.5vw,52px);font-weight:700;letter-spacing:-.04em}.measure dt,.measure-line{font-size:14px;color:var(--muted-dark)}.measure-line{margin-top:32px}.faq-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:32px}.faq-list{border-top:1px solid var(--ink)}.faq-list details{border-bottom:1px solid var(--hair)}summary{display:flex;justify-content:space-between;align-items:center;gap:var(--space-lg);min-height:64px;padding:var(--space-lg) 0;font-weight:600;cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.plus{width:16px;height:16px;flex:none;position:relative}.plus::before,.plus::after{content:'';position:absolute;top:7px;left:0;width:16px;height:2px;background:currentColor}.plus::after{transform:rotate(90deg)}details[open] .plus::after{transform:none}.faq-list details p{padding-bottom:var(--space-lg);max-width:65ch}
.pkgs{border-top:1px solid var(--ink)}.pkg{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:32px;padding:48px 0;border-bottom:1px solid var(--hair)}.pkg-head,.pkg-body{display:grid;align-content:start;justify-items:start;gap:var(--space-lg)}.pkg h2{font-size:40px}.pkg-for{font-size:18px;max-width:40ch}.pkg-price{display:grid;gap:var(--space-xs)}.pkg-price strong{font-variant-numeric:tabular-nums;font-size:32px;letter-spacing:-.04em}.pkg-price span,.pkg-not{font-size:14px;color:var(--muted)}.pkg ul{width:100%;border-top:1px solid var(--hair)}.pkg li{padding:var(--space-sm) 0;border-bottom:1px solid var(--hair)}.contact{max-width:calc(var(--w-grid) + 2*var(--gutter));margin:auto;padding:var(--space-2xl) var(--gutter) var(--space-3xl);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:32px}.contact-side{display:grid;gap:var(--space-lg);align-content:start}.contact-side>.label{order:4}.clist{border-top:1px solid var(--hair);margin-top:var(--space-md)}.clist>div{padding:var(--space-sm) 0;border-bottom:1px solid var(--hair);display:grid;gap:var(--space-xs)}.clist dt{font-size:14px;color:var(--muted)}.clist dd{font-size:16px}.clist a{display:inline-flex;align-items:center;min-height:44px}.form-card{display:grid;gap:20px;padding:32px;border:1px solid var(--hair);border-radius:12px;background:var(--cream);align-content:start}.form-end{display:grid;justify-items:start;gap:var(--space-md)}.stamp{font-size:14px;line-height:1.6;padding:var(--space-md);border:1px solid var(--hair);border-radius:8px;display:block;max-width:65ch}.policy{display:grid;grid-template-columns:280px minmax(0,760px);gap:32px;max-width:var(--w-grid);margin:auto}.toc{position:sticky;top:112px;align-self:start}.toc h2{font:600 14px/1.5 var(--f-text);letter-spacing:0;margin-bottom:var(--space-md)}.toc a{display:flex;align-items:center;min-height:44px;font-size:14px;text-decoration:none;line-height:1.6;padding:var(--space-xs) 0}.toc a.is-on{color:var(--accent);text-decoration:underline}.prose{font-size:17px;line-height:1.75}.prose section+section{margin-top:48px}.prose h2{font-size:32px;margin-bottom:var(--space-lg)}.prose p+p,.prose p+ul,.prose ul+p{margin-top:var(--space-md)}.prose ul{list-style:disc;padding-left:var(--space-lg);display:grid;gap:var(--space-sm)}.p404{padding:var(--space-3xl) var(--gutter);background:var(--paper);color:var(--ink)}.p404-in{max-width:var(--w-grid);margin:auto;display:grid;gap:var(--space-lg);justify-items:start}.p404-num{font-variant-numeric:tabular-nums;font-size:144px;line-height:1;font-weight:700;letter-spacing:-.06em}.p404-lanes{display:none}.w,.w>span{display:inline}.no-js-line{max-width:60ch}.no-js .lane-form{display:none}
@media(min-width:1600px){.hero{padding-top:var(--space-3xl)}.hero-in{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}}
@media(max-width:1100px){:root{--gutter:32px;--pad-y:80px}.nav{gap:var(--space-lg)}.hdr{gap:var(--space-lg)}.panel-grid{grid-template-columns:minmax(0,1fr)}.hero-in{gap:32px}.hero-project small{max-width:24ch}.policy{grid-template-columns:240px minmax(0,1fr)}}
@media(max-width:899px){:root{--header-h:72px}.nav{display:none}.burger{display:grid;order:3;margin-left:0}.hdr-end{margin-left:auto}.wordmark{font-size:22px}.hero{padding-top:48px}.hero-in{grid-template-columns:minmax(0,1fr)}.hero h1{max-width:15ch}.hero-lead{max-width:56ch}.lanes-wrap{grid-template-columns:minmax(0,1fr)}.lane-yours{display:block}.ly-in{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:center}.hero-project small{max-width:none}.phead-in,.contact,.duo,.duo-media,.split,.faq-grid,.pkg,.dl-rows>div{grid-template-columns:minmax(0,1fr)}.phead{padding-top:56px}.contact{padding-top:48px}.contact-side>.label{order:0}.yl{grid-template-columns:minmax(0,1fr)}.yl-mock{grid-column:1;grid-row:auto}.wrow{grid-template-columns:minmax(0,1fr)}.wrow-text{grid-column:1;grid-row:1}.wrow-media{grid-column:1;grid-row:2}.policy{grid-template-columns:minmax(0,1fr)}.toc{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 var(--space-lg);border-bottom:1px solid var(--hair);padding-bottom:var(--space-lg)}.toc h2{grid-column:1/-1}.tabs{grid-template-columns:minmax(0,1fr)}.tablist{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.tab{min-height:48px}.close-in{grid-template-columns:minmax(0,1fr)}.close p{grid-column:1;grid-row:auto}.statement{grid-template-columns:minmax(0,1fr)}.statement a{justify-self:start}}
@media(max-width:639px){:root{--gutter:20px;--pad-y:64px}.hdr{gap:var(--space-sm)}.hdr-cta{padding:var(--space-xs) var(--space-md)}.wordmark{gap:var(--space-xs);font-size:20px}.h1,.h1-hero{font-size:44px}.hero{padding-block:var(--space-xl)}.hero-index{margin-top:32px}.hero-project{grid-template-columns:32px minmax(0,1fr) auto;gap:var(--space-sm);min-height:76px}.hero-project strong{font-size:16px}.hero-project small{font-size:12px;max-width:12ch;text-align:right}.lanes{gap:var(--space-xs);max-height:176px}.lane-tag{font-size:12px}.lane-tag small{display:block;margin-left:0}.lane-track{height:136px}.ly-in{grid-template-columns:minmax(0,1fr) auto}.ly-text{grid-column:1}.ly-link{grid-column:2;grid-row:1/3}.wcard{grid-template-columns:minmax(0,1fr);padding-block:var(--space-lg)}.wcard .shot{grid-column:1;grid-row:1}.wcard>.label,.wcard>h3,.wcard>p,.wcard>.actions{grid-column:1}.wcard>.label{grid-row:4}.rows{grid-template-columns:minmax(0,1fr)}.tile-set{grid-template-columns:repeat(3,minmax(0,1fr))}.tiles{padding-inline:0}.phead{padding-block:var(--space-xl)}.facts6{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 var(--space-md)}.phones{gap:var(--space-md);grid-template-columns:repeat(3,minmax(0,1fr))}.phones-4{grid-template-columns:repeat(2,minmax(0,1fr))}.wide-shot{margin-bottom:var(--space-xl)}.measure{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px var(--space-md)}.measure dd{font-size:28px}.plist>div{grid-template-columns:minmax(0,1fr)}.form-card,.panel{padding:var(--space-lg) 20px}.f-details{grid-template-columns:minmax(0,1fr)}.f-nav{gap:var(--space-xs) var(--space-lg)}.f-top{align-items:flex-start;flex-direction:column}.close{padding-block:var(--space-2xl)}.close-mail{font-size:25px}.toc{grid-template-columns:minmax(0,1fr)}.tab{gap:var(--space-xs);padding:var(--space-sm) var(--space-xs);font-size:14px}.panel{min-height:0}.lm-body{padding:var(--space-xl) var(--space-lg)}.p404-num{font-variant-numeric:tabular-nums;font-size:112px}.next strong{font-size:32px}.actions{gap:var(--space-sm) 20px}.phead .label{order:3}}

.pkg-price strong,.p404-num{font-variant-numeric:tabular-nums}
:root{--sw-teal:#9fe8df;--sw-brass:#ffc21a;--sw-copper:#ffb68f;--sw-lichen:#dfe68a}

@media(max-width:639px){.hero-project{grid-template-columns:24px minmax(0,1fr);gap:var(--space-2xs) var(--space-md);padding-block:var(--space-md)}.hero-project>span:first-child{grid-row:1/3;align-self:center}.hero-project strong{grid-column:2}.hero-project small{grid-column:2;max-width:none;text-align:left}}

/* The owner prefers motion: one image entrance, then a still page. */
@media(prefers-reduced-motion:no-preference){.js [data-uncover] img{opacity:0;transform:translateY(16px)}.js [data-uncover].is-in img{opacity:1;transform:none;transition:opacity var(--dur-long) var(--ease-out),transform var(--dur-long) var(--ease-out)}.hero .lane-track img:first-child{animation:page-glimpse 4s var(--ease-in-out) both}@keyframes page-glimpse{from{transform:translateY(0)}to{transform:translateY(-24px)}}}
@media(max-width:639px){.lane-tag{font-size:13px}.statement p{font-size:22px}.lm-town{font-size:14px}}

.p404 :focus-visible{outline-color:var(--accent)}.p404 .pill-ghost-dark{color:var(--ink);border-color:var(--muted)}.p404 .pill-ghost-dark:hover{background:var(--cream);color:var(--ink)}
@media(min-width:1024px){.contact .form-card{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md)}.contact .form-card>.field,.contact .form-end{grid-column:1/-1}.contact .form-card>.field:nth-child(2),.contact .form-card>.field:nth-child(3),.contact .form-card>.field:nth-child(4),.contact .form-card>.field:nth-child(5){grid-column:auto}}
@media(max-width:360px){.close-mail{font-size:22px;white-space:nowrap}}

.work-film{margin-bottom:var(--space-xl);overflow:clip;border-radius:12px}.work-film video,.work-film img{width:100%;height:auto}.film-still{display:none}@media(prefers-reduced-motion:reduce){.work-film video{display:none}.work-film .film-still{display:block}}

.lanes.is-paused img{animation-play-state:paused}.on-ink a:not(.pill):hover,.bg-ink a:not(.pill):hover{color:var(--accent-on-dark)}.drawer{overscroll-behavior:contain}a,button{touch-action:manipulation}

@media(prefers-reduced-motion:no-preference){.js [data-reveal]{opacity:0}.js [data-reveal].is-in{opacity:1;transition:opacity var(--dur-long) var(--ease-out);transition-delay:var(--d,0ms)}}

/* Enquiry fields precede the contact register in reading and keyboard order. */
.contact-side{grid-column:1;grid-row:1}.contact>.form-card{grid-column:2;grid-row:1/3}.contact>.clist{grid-column:1;grid-row:2}.draft-copy textarea{width:100%;min-height:160px}.form-end>button+button{margin-left:var(--space-sm)}.draft-copy[hidden]{display:none}
@media(max-width:899px){.contact-side,.contact>.form-card,.contact>.clist{grid-column:1;grid-row:auto}.form-end>button+button{margin-left:0;margin-top:var(--space-sm)}}

:root{--color-transparent:transparent}.pill-ghost-dark{background:var(--color-transparent)}

/* The still holds the layout and remains visible if autoplay is unavailable. */
.wrow-media .work-film{grid-column:1/-1;margin-bottom:0}
.work-film[data-motion-film]{position:relative;aspect-ratio:16/9}
.work-film[data-motion-film] video{position:absolute;inset:0;width:100%;height:100%;opacity:0}
.work-film[data-motion-film] .film-still{display:block}
.work-film[data-motion-film].is-playing video{opacity:1}
.work-film[data-motion-film].is-playing .film-still{opacity:0}
@media(prefers-reduced-motion:reduce){.work-film[data-motion-film] video{display:none}.work-film[data-motion-film].is-playing .film-still{opacity:1}}
