:root{--ink:#16130f;--ink-soft:#26221c;--concrete:#eceae5;--concrete-deep:#dedbd3;--steel:#6d685f;--accent:#ee5f13;--accent-hover:#ff7127;--accent-dim:#c94f0e;--brand-primary:var(--ink);--brand-secondary:var(--concrete);--brand-accent:var(--accent);--font-display:"Bricolage Grotesque", "Arial Black", sans-serif;--font-heading:var(--font-display);--font-body:"Archivo", "Helvetica Neue", sans-serif;--font-mono:"IBM Plex Mono", "Courier New", monospace;--header-h:4rem;--ease:cubic-bezier(.22, 1, .36, 1)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{font-family:var(--font-body);color:var(--ink);background:var(--concrete);-webkit-font-smoothing:antialiased;margin:0;padding-bottom:4.5rem;font-size:1.0625rem;line-height:1.6}body.nav-open{overflow:hidden}img,video{max-width:100%;display:block}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.015em;margin:0 0 .5em;font-weight:800;line-height:1.02}h2{max-width:18ch;font-size:clamp(1.9rem,4.2vw,3rem)}p{margin:0 0 1em}dl,dt,dd{margin:0}.spec-label{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--accent-dim);margin:0 0 1rem;font-size:.78rem;font-weight:500}.spec-label:before{content:"// ";color:var(--steel)}.spec-label-light{color:var(--accent)}.spec-label-light:before{color:#fff6}#header{z-index:50;height:var(--header-h);transition:background .3s var(--ease), box-shadow .3s var(--ease);position:fixed;inset:0 0 auto}#header.scrolled{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#16130ff0}.site-header{justify-content:space-between;align-items:center;gap:1rem;max-width:1160px;height:100%;margin:0 auto;padding:0 1.25rem;display:flex}.site-brand{color:#fff;font-family:var(--font-display);letter-spacing:.01em;z-index:2;align-items:center;gap:.65rem;font-size:1rem;font-weight:700;display:flex}.logo-img{object-fit:contain;background:#fff;border-radius:50%;width:40px;height:40px}.site-nav{align-items:center;gap:1.5rem;display:flex}.site-nav a{color:#ffffffd9;font-size:.92rem;font-weight:500;transition:color .2s}.site-nav a:hover{color:var(--accent-hover)}.nav-call{font-family:var(--font-mono);letter-spacing:.02em;font-size:.85rem}.nav-cta{background:var(--accent);padding:.5rem .9rem;font-weight:600;color:#fff!important}.nav-cta:hover{background:var(--accent-hover)}.nav-toggle{cursor:pointer;z-index:2;background:0 0;border:0;width:2.5rem;height:2.5rem;padding:0;display:none}.nav-toggle span{height:2px;transition:transform .25s var(--ease);background:#fff;margin:6px 8px;display:block}.nav-toggle.open span:first-child{transform:translateY(4px)rotate(45deg)}.nav-toggle.open span:last-child{transform:translateY(-4px)rotate(-45deg)}.hero{color:#fff;align-items:end;min-height:100svh;display:grid;position:relative;overflow:hidden}.hero-media{position:absolute;inset:0}.hero-photo{object-fit:cover;object-position:center 55%;width:100%;height:100%}.hero-scrim{background:linear-gradient(178deg,#16130f9e 0%,#16130f1f 34%,#16130fe0 92%);position:absolute;inset:0}.hero-content{z-index:1;width:100%;max-width:1160px;padding:calc(var(--header-h) + 2rem) 1.25rem 4rem;margin:0 auto;position:relative}.hero-eyebrow{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--accent-hover);opacity:0;animation:rise .7s var(--ease) .1s forwards;margin-bottom:1rem;font-size:.8rem}.hero-brand{letter-spacing:-.03em;text-wrap:balance;opacity:0;max-width:10ch;animation:rise .8s var(--ease) .22s forwards;margin:0 0 .3em;font-size:clamp(3rem,11vw,7.25rem);font-weight:800;line-height:.94}.hero-sub{color:#ffffffe0;opacity:0;max-width:44ch;animation:rise .8s var(--ease) .34s forwards;margin-bottom:1.75rem;font-size:clamp(1.05rem,2vw,1.25rem)}.hero-actions{opacity:0;animation:rise .8s var(--ease) .46s forwards;flex-wrap:wrap;align-items:stretch;gap:1.25rem;display:flex}@keyframes rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.btn{min-height:3.1rem;font-family:var(--font-body);cursor:pointer;border:0;justify-content:center;align-items:center;padding:.8rem 1.5rem;font-size:1rem;font-weight:600;transition:background .2s,transform .15s;display:inline-flex}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover)}.btn-outline{color:inherit;background:0 0;border:1px solid}.hero-phone{border-left:3px solid var(--accent);flex-direction:column;justify-content:center;gap:.1rem;padding:.4rem 0 .4rem 1.1rem;display:inline-flex}.hero-phone-label{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:#ffffffb3;font-size:.7rem}.hero-phone-number{font-family:var(--font-display);letter-spacing:.01em;font-size:1.35rem;font-weight:700}.hero-phone:hover .hero-phone-number{color:var(--accent-hover)}.tape-strip{background:repeating-linear-gradient(-45deg, var(--accent) 0 22px, var(--ink) 22px 44px);height:14px}.section-inner{max-width:1160px;margin:0 auto;padding:5rem 1.25rem}.section-head{margin-bottom:2.5rem}.scope-section{background:var(--concrete)}.scope-columns{border-top:2px solid var(--ink);border-bottom:2px solid var(--ink);grid-template-columns:1fr 1fr;gap:1.5rem;padding:.25rem 0;display:grid}.scope-col{padding:1.5rem 0}.scope-col:first-child{border-right:1px solid var(--concrete-deep);padding-right:1.5rem}.scope-col:last-child{padding-left:1.5rem}.scope-col h3{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--accent-dim);margin:0 0 1rem;font-size:.8rem;font-weight:500}.scope-col ul{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.scope-col li{font-family:var(--font-display);letter-spacing:-.01em;font-size:1.25rem;font-weight:700}.scope-note{font-family:var(--font-mono);letter-spacing:.04em;color:var(--steel);margin:1.5rem 0 0;font-size:.85rem}.work-section{background:var(--ink);color:#fff}.work-section .spec-label{color:var(--accent)}.work-section .spec-label:before{color:#ffffff59}.work-grid,.jobs-portal-grid{grid-template-columns:repeat(2,1fr);gap:2px;display:grid}.jobs-portal-grid:not(:empty){margin-bottom:2px}.jobs-portal-grid:not(:empty)+#jobs-placeholder{display:none}.work-card{background:var(--ink-soft);min-height:260px;margin:0;position:relative;overflow:hidden}.work-card-wide{grid-column:span 2;min-height:340px}.work-card img,.work-card video{object-fit:cover;width:100%;height:100%;min-height:inherit;transition:transform .8s var(--ease)}.work-card:hover img{transform:scale(1.03)}.work-card figcaption{background:var(--ink);color:#fff;font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;padding:.5rem .85rem;font-size:.78rem;position:absolute;bottom:0;left:0}.project-card{background:var(--ink-soft);grid-column:1/-1;overflow:hidden}.project-photo{background:#0a0a0a;margin:0}.project-photo img{aspect-ratio:auto;object-fit:contain;object-position:top center;width:100%;height:auto;max-height:none;display:block}.project-photo-pair{grid-template-columns:1fr;gap:2px;display:grid}@media (width>=701px){.project-photo-pair{grid-template-columns:1fr 1fr}}.project-photo figcaption{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:#ffffffb3;padding:.3rem .6rem;font-size:.72rem}.project-card-body{padding:1.1rem 1.15rem 1.4rem}.project-card-title{margin-bottom:.3rem;font-size:1.2rem}.project-card-meta{font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;color:var(--accent-hover);font-size:.78rem}.project-card-desc,.project-card-quote{color:#ffffffbf;font-size:.95rem}.proof-section{background:var(--ink-soft);color:#fff}.proof-inner{grid-template-columns:minmax(240px,380px) 1fr;align-items:center;gap:3.5rem;display:grid}.proof-photo{margin:0;transform:rotate(-1.5deg)}.proof-photo img{width:100%;box-shadow:0 24px 48px #00000080}.proof-copy p{color:#ffffffc7;max-width:46ch}.area-section{background:var(--concrete)}.area-inner{grid-template-columns:1.2fr .8fr;align-items:start;gap:3rem;display:grid}.area-copy p{color:var(--steel)}.area-address{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;margin:1.25rem 0 .25rem;font-size:.95rem;color:var(--ink)!important}.area-hours{margin:0}.area-list{border-top:2px solid var(--ink);margin:0;padding:0;list-style:none}.area-list li{border-bottom:1px solid var(--concrete-deep);font-family:var(--font-display);padding:.7rem 0;font-size:1.05rem;font-weight:700}.area-list li:last-child{border-bottom:2px solid var(--ink);color:var(--accent-dim)}.reviews-section{background:var(--concrete)}.reviews-section .section-inner{padding-top:0}.reviews-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;display:grid}.review-card{border-top:2px solid var(--ink);padding:1.5rem 0 0}.review-stars{color:var(--accent);letter-spacing:.1em;margin-bottom:.6rem}.review-body{color:var(--ink-soft)}.review-author{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--steel);margin:.75rem 0 0;font-size:.8rem}.reviews-empty{color:var(--steel)}.estimate-section{background:var(--ink);color:#fff;border-top:14px solid #0000;border-image:repeating-linear-gradient(-45deg, var(--accent) 0 22px, var(--ink) 22px 44px) 14}.estimate-inner{grid-template-columns:.9fr 1.1fr;align-items:start;gap:3.5rem;display:grid}.estimate-intro p{color:#ffffffc7;max-width:38ch}.estimate-phone,.estimate-email{margin-top:.75rem;display:block}.estimate-phone{font-family:var(--font-display);letter-spacing:-.01em;color:var(--accent-hover);font-size:clamp(1.7rem,3.4vw,2.4rem);font-weight:800}.estimate-phone:hover{color:#fff}.estimate-email{font-family:var(--font-mono);color:#ffffffb3;word-break:break-all;font-size:.9rem}.estimate-form-wrap{position:relative}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.form-group{margin-bottom:1.1rem}.form-label{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:#fff9;margin-bottom:.4rem;font-size:.72rem;display:block}.form-control{color:#fff;width:100%;font:inherit;background:0 0;border:0;border-bottom:2px solid #ffffff40;padding:.65rem .1rem;transition:border-color .2s}.form-control::placeholder{color:#ffffff59}.form-control:focus{border-bottom-color:var(--accent);outline:none}.form-control.invalid{border-bottom-color:#ff5a45}select.form-control option{color:var(--ink)}textarea.form-control{resize:vertical}.btn-submit{width:100%;margin-top:.5rem}.form-success{background:var(--ink);text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:2rem 1.5rem;display:none;position:absolute;inset:0}.form-success.active{display:flex}.form-success-title{font-family:var(--font-display);color:var(--accent-hover);margin-bottom:.4rem;font-size:2.2rem;font-weight:800}.form-success-desc{color:#fffc}.shake-form{animation:.4s shake}@keyframes shake{20%,60%{transform:translate(-4px)}40%,80%{transform:translate(4px)}}.site-footer{background:var(--ink);color:#ffffffa6;border-top:1px solid #ffffff1a}.footer-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;max-width:1160px;margin:0 auto;padding:2.5rem 1.25rem;display:flex}.footer-id{align-items:center;gap:.9rem;display:flex}.footer-logo{width:48px;height:48px}.footer-brand{font-family:var(--font-display);color:#fff;margin:0;font-size:1.1rem;font-weight:700}.footer-tagline{margin:.15rem 0 0;font-size:.9rem}.footer-meta{text-align:right}.footer-copy,.footer-credit{margin:.2rem 0;font-size:.85rem}.footer-credit a{color:var(--accent-hover)}.mobile-call-bar{z-index:60;background:var(--accent);color:#fff;min-height:3.4rem;font-family:var(--font-display);letter-spacing:.01em;justify-content:center;align-items:center;font-size:1.05rem;font-weight:700;display:flex;position:fixed;bottom:0;left:0;right:0}@media (width>=901px){.mobile-call-bar{display:none}body{padding-bottom:0}}@media (width<=900px){.nav-toggle{display:block}.site-nav{opacity:0;pointer-events:none;background:#16130ff7;flex-direction:column;justify-content:center;gap:1.75rem;transition:opacity .25s;position:fixed;inset:0}.site-nav.open{opacity:1;pointer-events:auto}.site-nav a{font-family:var(--font-display);font-size:1.6rem;font-weight:700}.site-nav .nav-call{font-family:var(--font-mono);font-size:1.1rem}.brand-text{display:none}.section-inner{padding:3.5rem 1.25rem}.scope-columns,.proof-inner,.area-inner,.estimate-inner,.form-row{grid-template-columns:1fr}.scope-col:first-child{border-right:0;border-bottom:1px solid var(--concrete-deep);padding-right:0}.scope-col:last-child{padding-left:0}.proof-inner{gap:2rem}.proof-photo{max-width:320px}.work-grid,.jobs-portal-grid{grid-template-columns:1fr}.work-card-wide{grid-column:auto;min-height:260px}}
