:root,.cw-charcoal{--font-display:"Big Shoulders Display", "Arial Narrow", Impact, sans-serif;--font-sans:Archivo, "Helvetica Neue", Arial, sans-serif;--font-mono:"IBM Plex Mono", Consolas, monospace;--accent:#ecb821;--accent-hover:#d6a40f;--on-accent:#1b1c1a;--brand-green:#096d09;--on-brand-green:#fff;--focus:#096d09;--focus-on-band:#ecb821;--error:#b3261e;--surface:#f2f1ec;--surface-raised:#fff;--surface-sunk:#e7e5de;--band:#1b1c1a;--band-ink:#f2f1ec;--band-muted:#aeb0a8;--band-line:#3a3b37;--ink:#1b1c1a;--ink-muted:#5a5c57;--line:#c9c7be;--line-strong:#8a8c84;--extrude:#1b1c1a;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:96px;--content-max:1200px;--gutter:clamp(16px, 6vw, 120px);--section-y:clamp(56px, 8vw, 96px);--extrude-sm:4px 4px 0 0 var(--extrude);--extrude-md:10px 10px 0 0 var(--extrude)}.cw-green{--surface:#f1f4ee;--surface-sunk:#e3eae0;--band:#0a4a0a;--band-ink:#fff;--band-muted:#b9cdb6;--band-line:#1f5e1f;--ink:#131a13;--ink-muted:#526052;--line:#c6d0c2;--line-strong:#839183;--on-accent:#131a13;--extrude:#096d09}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--surface);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.6}img{max-width:100%;height:auto;display:block}a{color:var(--brand-green)}a:hover{color:var(--ink)}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.band :focus-visible,.site-header :focus-visible,.site-footer :focus-visible{outline-color:var(--focus-on-band)}h1,h2,h3,h4{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.01em;margin:0;font-weight:800;line-height:.98}p{margin:0}.skip{background:var(--accent);color:var(--on-accent);z-index:100;padding:8px 12px;position:absolute;top:0;left:-9999px}.skip:focus{top:8px;left:8px}.sr-only{clip:rect(0,0,0,0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.wrap{width:100%;max-width:calc(var(--content-max) + 2 * var(--gutter));padding-left:var(--gutter);padding-right:var(--gutter);margin:0 auto}.section{padding-top:var(--section-y);padding-bottom:var(--section-y)}.surface{background:var(--surface)}.sunk{background:var(--surface-sunk)}.band{background:var(--band);color:var(--band-ink)}.band+.band{border-top:1px solid var(--band-line)}.stack{flex-direction:column;display:flex}.mono{font-family:var(--font-mono);letter-spacing:.02em;font-size:13px;font-weight:500}.muted{color:var(--ink-muted)}.band .muted,.band-muted{color:var(--band-muted)}.lead{font-size:18px;line-height:1.6}.h1,.h2,.h3,.h4{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.01em;font-weight:800}.h1{font-size:clamp(44px,6.4vw,84px);line-height:.93}.h2{font-size:clamp(30px,3.4vw,44px);line-height:1}.h3{font-size:clamp(22px,2vw,26px);line-height:1.05}.h4{font-size:20px;line-height:1.05}.eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--brand-green);align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex}.eyebrow:before{content:"";background:var(--accent);flex-shrink:0;width:24px;height:2px;display:block}.band .eyebrow{color:var(--accent)}.eyebrow.plain:before{display:none}.btn{font-family:var(--font-sans);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;border:2px solid #0000;border-radius:0;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:12px 24px;font-size:15px;font-weight:700;text-decoration:none;transition:transform 80ms,box-shadow 80ms,background-color .12s;display:inline-flex}.btn-primary{background:var(--accent);color:var(--on-accent);box-shadow:var(--extrude-sm)}.btn-primary:hover{background:var(--accent-hover);color:var(--on-accent)}.btn-primary:active{box-shadow:2px 2px 0 0 var(--extrude);transform:translate(2px,2px)}.band .btn-primary{box-shadow:4px 4px #000}.btn-secondary{color:var(--ink);border-color:var(--line-strong);background:0 0}.btn-secondary:hover{border-color:var(--ink);color:var(--ink)}.band .btn-secondary{color:var(--band-ink);border-color:var(--band-muted)}.band .btn-secondary:hover{border-color:var(--band-ink);color:var(--band-ink)}.btn-sm{min-height:40px;padding:8px 16px;font-size:13px}.btn-block{width:100%}.btn[disabled]{opacity:.6;cursor:progress}.link-arrow{letter-spacing:.08em;text-transform:uppercase;color:var(--brand-green);font-size:13px;font-weight:700;text-decoration:none}.link-arrow:hover{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.band .link-arrow{color:var(--accent)}.hiring{background:var(--accent);color:var(--on-accent)}.hiring .wrap{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px 24px;min-height:44px;padding-top:8px;padding-bottom:8px;font-size:15px;line-height:1.35;display:flex}.hiring b{letter-spacing:.06em;text-transform:uppercase;font-weight:700}.hiring a{color:var(--on-accent);letter-spacing:.06em;text-transform:uppercase;text-underline-offset:3px;white-space:nowrap;font-size:13px;font-weight:700}.hiring .long{display:inline}.hiring .short{display:none}@media (width<=720px){.hiring .wrap{justify-content:space-between;font-size:14px}.hiring .long{display:none}.hiring .short{display:inline}}.site-header{background:var(--band);color:var(--band-ink);border-bottom:1px solid var(--band-line);z-index:50;position:sticky;top:0}.site-header .bar{align-items:center;gap:32px;height:76px;padding-left:clamp(16px,3.4vw,48px);padding-right:clamp(16px,3.4vw,48px);display:flex}.site-header .logo img{width:auto;height:56px}.site-header nav.main{flex-grow:1;justify-content:center;gap:28px;display:flex}.site-header nav.main a{color:var(--band-ink);border-bottom:2px solid #0000;padding:8px 0;font-size:15px;font-weight:600;text-decoration:none}.site-header nav.main a:hover,.site-header nav.main a[aria-current=page]{border-bottom-color:var(--accent)}.site-header .phone{font-family:var(--font-mono);color:var(--band-ink);white-space:nowrap;font-size:14px;font-weight:500;text-decoration:none}.menu{margin-left:auto;display:none}.menu summary{border:2px solid var(--band-muted);cursor:pointer;width:44px;height:44px;color:var(--band-ink);justify-content:center;align-items:center;list-style:none;display:flex}.menu summary::-webkit-details-marker{display:none}.menu .panel{background:var(--band);border-top:1px solid var(--band-line);border-bottom:1px solid var(--band-line);flex-direction:column;padding:8px 16px 20px;display:flex;position:absolute;top:100%;left:0;right:0}.menu .panel a.nav{color:var(--band-ink);font-family:var(--font-display);text-transform:uppercase;border-bottom:1px solid var(--band-line);padding:12px 0;font-size:28px;font-weight:800;text-decoration:none}.menu .panel .btn{margin-top:20px}.menu[open] summary .open,.menu:not([open]) summary .close{display:none}@media (width<=1023px){.site-header .bar{gap:16px;height:64px}.site-header .logo img{height:42px}.site-header nav.main,.site-header .phone,.site-header .bar>.btn{display:none}.menu{display:block}}.mobile-cta{display:none}@media (width<=1023px){.mobile-cta{z-index:40;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:var(--surface-raised);border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:12px;display:grid;position:fixed;bottom:0;left:0;right:0}body.has-mobile-cta{padding-bottom:76px}}.site-footer{background:var(--band);color:var(--band-ink);border-top:1px solid var(--band-line);padding:56px 0 40px}.site-footer .cols{grid-template-columns:300px repeat(3,minmax(0,1fr));align-items:start;gap:48px;display:grid}.site-footer .label{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:8px;font-size:13px;font-weight:700;display:block}.site-footer a,.site-footer .txt{color:var(--band-ink);font-size:15px;line-height:1.7;text-decoration:none;display:block}.site-footer a:hover{text-decoration:underline}.site-footer .mono{color:var(--band-ink);font-size:14px}.site-footer .legal{border-top:1px solid var(--band-line);color:var(--band-muted);flex-wrap:wrap;justify-content:space-between;gap:24px;margin-top:40px;padding-top:20px;font-size:13px;display:flex}.site-footer .legal .mono{color:var(--band-muted);font-size:13px}.cw-green .site-footer .logo-plate{background:var(--surface-raised);padding:16px 20px}@media (width<=900px){.site-footer .cols{grid-template-columns:1fr 1fr;gap:28px}.site-footer .cols>:first-child{grid-column:1/-1;max-width:220px}}.creds{grid-template-columns:repeat(5,minmax(0,1fr));gap:32px;display:grid}.cred{border-top:2px solid var(--accent);flex-direction:column;gap:4px;padding-top:12px;display:flex}.cred b{font-size:15px;font-weight:600;line-height:1.35}.cred .mono{color:var(--band-muted)}.creds-section{padding:40px 0 48px}@media (width<=900px){.creds{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 20px}}.hero{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);min-height:620px;display:grid}.hero .copy{padding:72px 56px 72px var(--gutter);flex-direction:column;justify-content:center;gap:24px;display:flex}.hero .copy p{max-width:520px}.hero .actions{flex-wrap:wrap;gap:16px;display:flex}@media (width<=1023px){.hero{grid-template-columns:1fr;min-height:0}.hero .copy{order:2;padding:36px 16px 44px}.hero .actions .btn{flex:auto}}.carousel{background:#000;min-height:360px;position:relative;overflow:hidden}.carousel .slide{opacity:0;transition:opacity .6s;position:absolute;inset:0}.carousel .slide.on{opacity:1}.carousel .slide img{object-fit:cover;width:100%;height:100%}.carousel .cap{color:var(--band-ink);background:#1b1c1adb;flex-direction:column;gap:2px;max-width:calc(100% - 140px);padding:14px 20px;display:flex;position:absolute;bottom:0;left:0}.carousel .cap .lbl{font-family:var(--font-mono);color:var(--accent);font-size:13px}.carousel .cap .credit{color:var(--band-muted);font-size:12px}.carousel .ctrls{align-items:center;gap:8px;display:flex;position:absolute;bottom:16px;right:16px}.carousel .dots{gap:6px;margin-right:8px;display:flex}.carousel .dots button{border:2px solid var(--accent);cursor:pointer;background:0 0;width:12px;height:12px;padding:0}.carousel .dots button[aria-current=true]{background:var(--accent)}.carousel .arrow{border:2px solid var(--accent);width:44px;height:44px;color:var(--accent);cursor:pointer;background:#1b1c1adb;justify-content:center;align-items:center;padding:0;display:flex}.carousel .arrow.next{background:var(--accent);color:var(--on-accent)}@media (width<=1023px){.carousel{background:var(--band);min-height:0;overflow:visible}.carousel .stage{aspect-ratio:4/3;position:relative;overflow:hidden}.carousel .slide .cap{display:none}.carousel .strip{border-bottom:1px solid var(--band-line);justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.carousel .strip .cap{background:0 0;max-width:none;padding:0;position:static}.carousel .ctrls{position:static}.carousel .dots{display:none}}@media (width>=1024px){.carousel .stage{position:absolute;inset:0}.carousel .strip .cap{display:none}.carousel .strip{position:absolute;bottom:0;right:0}}.page-hero{padding:clamp(48px,6vw,80px) 0 clamp(48px,6vw,72px)}.page-hero .stack{gap:18px}.page-hero .stack>*{max-width:900px}.page-hero p{max-width:640px}.split-hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:460px;display:grid}.split-hero .copy{padding:64px 56px 64px var(--gutter);flex-direction:column;justify-content:center;gap:22px;display:flex}.split-hero .media img{object-fit:cover;width:100%;height:100%}@media (width<=900px){.split-hero{grid-template-columns:1fr}.split-hero .media{order:-1}.split-hero .media img{height:240px}.split-hero .copy{padding:32px 16px 40px}}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;display:grid}@media (width<=900px){.grid-3,.grid-2{grid-template-columns:1fr;gap:24px}}.section-head{justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:40px;display:flex}.section-head .stack{gap:8px}.section-head .note{max-width:360px;color:var(--ink-muted);font-size:15px}@media (width<=900px){.section-head{flex-direction:column;align-items:flex-start;gap:16px;margin-bottom:28px}}.svc-card{flex-direction:column;gap:14px;display:flex}.svc-card img{aspect-ratio:3/2;object-fit:cover;width:100%}.svc-card .tag{letter-spacing:.12em;text-transform:uppercase;color:var(--brand-green);align-items:center;gap:8px;font-size:12px;font-weight:700;display:flex}.svc-card .tag:before{content:"";background:var(--accent);width:16px;height:2px}.svc-card p{font-size:15px}.p-card{background:var(--surface-raised);border-bottom:2px solid var(--accent);color:var(--ink);flex-direction:column;height:100%;text-decoration:none;display:flex}a.p-card:hover{color:var(--ink);box-shadow:var(--extrude-sm);transform:translate(-2px,-2px)}a.p-card{transition:transform .1s,box-shadow .1s}.p-card .ph{aspect-ratio:3/2;background:var(--surface-sunk);overflow:hidden}.p-card .ph img{object-fit:cover;width:100%;height:100%}.p-card .body{flex-direction:column;flex-grow:1;gap:8px;padding:20px 20px 22px;display:flex}.p-card .meta{font-family:var(--font-mono);color:var(--ink-muted);font-size:12.5px;line-height:1.5}.p-card p{font-size:15px;line-height:1.55}.credit{color:var(--ink-muted);font-size:12px;line-height:1.4}.band .credit{color:var(--band-muted)}.p-card .credit{margin-top:auto;padding-top:6px}.work-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px;display:grid}.work-list .row{border-top:1px solid var(--line);color:var(--ink);flex-direction:column;gap:4px;padding:16px 0 18px;text-decoration:none;display:flex}a.work-list-row:hover .h4,.work-list a.row:hover .h4{text-underline-offset:3px;text-decoration:underline}.work-list .row p{font-size:15px;line-height:1.55}.work-list .row .mono{color:var(--ink-muted)}@media (width<=720px){.work-list{grid-template-columns:1fr}}.featured{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:center;gap:56px;display:grid}.featured .ph img{aspect-ratio:3/2;object-fit:cover;width:100%;box-shadow:var(--extrude-md)}.featured .stack{gap:14px}@media (width<=900px){.featured{grid-template-columns:1fr;gap:28px}}.photo-extrude img{box-shadow:var(--extrude-md)}.ticks{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.ticks li{padding-left:28px;line-height:1.5;position:relative}.ticks li:before{content:"";border-left:3px solid var(--brand-green);border-bottom:3px solid var(--brand-green);width:14px;height:8px;position:absolute;top:.45em;left:0;transform:rotate(-45deg)}.band .ticks li:before{border-color:var(--accent)}.crosses{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.crosses li{padding-left:28px;line-height:1.5;position:relative}.crosses li:before,.crosses li:after{content:"";background:var(--error);width:14px;height:3px;position:absolute;top:.75em;left:2px;transform:rotate(45deg)}.crosses li:after{transform:rotate(-45deg)}.bullets{flex-direction:column;gap:6px;margin:0;padding-left:20px;display:flex}.cta-band .inner{justify-content:space-between;align-items:center;gap:64px;display:flex}.cta-band .stack{gap:14px;max-width:720px}.cta-band .side{flex-direction:column;align-items:flex-start;gap:14px;display:flex}.cta-band .side .mono{color:var(--band-ink);font-size:22px;text-decoration:none}@media (width<=900px){.cta-band .inner{flex-direction:column;align-items:stretch;gap:24px}.cta-band .side .btn{width:100%}}.prose{flex-direction:column;gap:16px;max-width:720px;font-size:17px;line-height:1.65;display:flex}.prose h2,.prose h3{margin-top:12px;font-size:26px}.prose ul,.prose ol{flex-direction:column;gap:6px;margin:0;padding-left:22px;display:flex}.facts{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;padding:20px 0;display:grid}.facts dt{letter-spacing:.12em;text-transform:uppercase;color:var(--brand-green);margin-bottom:4px;font-size:12px;font-weight:700}.facts dd{margin:0;font-size:15px;line-height:1.5}@media (width<=900px){.facts{grid-template-columns:1fr 1fr}}.chip{font-family:var(--font-mono);background:var(--surface-sunk);color:var(--ink);border-radius:2px;align-items:center;padding:4px 8px;font-size:12.5px;font-weight:500;display:inline-flex}.chip.hot{background:var(--accent);color:var(--on-accent)}.chip.green{background:var(--brand-green);color:var(--on-brand-green)}.breadcrumb{color:var(--band-muted);gap:8px;font-size:14px;display:flex}.breadcrumb a{color:var(--band-muted)}.gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.gallery a{aspect-ratio:4/3;background:var(--surface-sunk);display:block;overflow:hidden}.gallery img{object-fit:cover;width:100%;height:100%;transition:transform .25s}.gallery a:hover img{transform:scale(1.03)}@media (width<=720px){.gallery{grid-template-columns:1fr 1fr;gap:8px}}.form-card{background:var(--surface-raised);box-shadow:var(--extrude-md);color:var(--ink);padding:clamp(20px,3vw,32px)}.form-card h2{margin-bottom:18px;font-size:30px}.f-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.f-field{flex-direction:column;gap:6px;min-width:0;display:flex}.f-field.full{grid-column:1/-1}@media (width<=560px){.f-grid{grid-template-columns:1fr}}.f-label{color:var(--ink);font-size:14px;font-weight:600}.f-label .req{color:var(--error);margin-left:2px}.f-help{color:var(--ink-muted);font-size:13px}.f-input{font:inherit;color:var(--ink);background:var(--surface-raised);border:2px solid var(--line-strong);border-radius:0;width:100%;min-height:48px;padding:10px 12px;font-size:16px}textarea.f-input{resize:vertical;min-height:120px}select.f-input{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--ink) 50%), linear-gradient(135deg, var(--ink) 50%, transparent 50%);background-position:calc(100% - 20px),calc(100% - 14px);background-repeat:no-repeat;background-size:6px 6px;padding-right:36px}.f-input:focus{border-color:var(--focus);box-shadow:0 0 0 2px var(--focus);outline:none}.f-input[aria-invalid=true]{border-color:var(--error)}.f-error{color:var(--error);min-height:0;font-size:13px;font-weight:600}.f-choices{flex-direction:column;gap:8px;display:flex}.f-choice{cursor:pointer;align-items:center;gap:10px;font-size:15px;display:flex}.f-choice input{width:20px;height:20px;accent-color:var(--brand-green)}.f-form-error{color:var(--error);background:#fbeaea;padding:10px 12px;font-size:14px;font-weight:600}.f-actions{flex-direction:column;gap:10px;margin-top:8px;display:flex}.f-skel{background:var(--surface-sunk);height:48px}.f-done{flex-direction:column;gap:12px;padding:12px 0;display:flex}.f-done .h3{color:var(--ink)}.f-alt{color:var(--ink-muted);font-size:14px}.f-alt a{color:var(--ink);font-family:var(--font-mono);font-weight:500}.landing-hero{grid-template-columns:minmax(0,1fr) minmax(0,460px);align-items:start;gap:56px;display:grid}@media (width<=1023px){.landing-hero{grid-template-columns:1fr;gap:32px}}.slim-header .bar{justify-content:space-between;align-items:center;gap:16px;height:72px;display:flex}.slim-header .logo img{width:auto;height:48px}.slim-header .right{align-items:center;gap:16px;display:flex}.slim-header .phone{font-family:var(--font-mono);color:var(--band-ink);font-size:15px;text-decoration:none}@media (width<=560px){.slim-header .phone{display:none}.slim-header .logo img{height:40px}}.notice{background:var(--surface-sunk);border-left:4px solid var(--accent);padding:16px 20px}.empty{background:var(--surface-sunk);color:var(--ink-muted);text-align:center;padding:32px}.big-404{font-family:var(--font-display);color:var(--accent);font-size:clamp(120px,22vw,260px);font-weight:800;line-height:.8}.doc-card{background:var(--surface-raised);border-bottom:2px solid var(--accent);flex-direction:column;gap:14px;padding:24px;display:flex}.emergency{background:var(--band);color:var(--band-ink);flex-direction:column;gap:10px;padding:24px;display:flex}.emergency .num{font-family:var(--font-mono);color:var(--band-ink);font-size:26px;text-decoration:none}
