:root{--brand:#ca2030;--brand-deep:#a3192a;--ink:#1b1b1b;--ink-soft:#4a4a4a;--charcoal:#1f1f1f;--charcoal-2:#2c2c2c;--paper:#fff;--mist:#f4f4f4;--line:#dedede;--radius:6px;--wrap:1120px;--sans:"Helvetica Neue", Helvetica, Arial, system-ui, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--sans);color:var(--ink);background:var(--paper);margin:0;font-size:17px;line-height:1.6}img{max-width:100%;height:auto;display:block}a{color:var(--brand-deep)}h1,h2,h3{letter-spacing:.01em;margin:0 0 .6em;line-height:1.15}h1{font-size:clamp(2rem,5vw,3.2rem)}h2{font-size:clamp(1.6rem,3.5vw,2.4rem)}:focus-visible{outline:3px solid var(--brand);outline-offset:3px}.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}.skip{position:absolute;left:-9999px}.skip:focus{z-index:10;background:var(--paper);padding:8px 12px;top:16px;left:16px}.site-header{background:var(--paper);border-bottom:1px solid var(--line)}.site-header__bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;min-height:84px;display:flex}.site-header__logo{color:var(--ink);align-items:center;gap:12px;text-decoration:none;display:flex}.site-header__logo img{width:150px;height:auto}.site-header__eyebrow{letter-spacing:.14em;color:var(--brand);font-size:.75rem;font-weight:700}.site-nav{flex-wrap:wrap;gap:6px 22px;display:flex}.site-nav a{color:var(--ink);letter-spacing:.08em;padding:10px 0;font-size:.85rem;font-weight:600;text-decoration:none}.site-nav a:hover{color:var(--brand)}.site-header__phone{border:2px solid var(--brand);min-height:44px;color:var(--brand-deep);letter-spacing:.02em;white-space:nowrap;border-radius:4px;align-items:center;padding:0 16px;font-weight:700;text-decoration:none;display:inline-flex}.site-header__phone:hover{background:var(--brand);color:#fff}.site-header__phone-verb{display:none}.hero{color:#fff;background:var(--charcoal);place-items:center;min-height:460px;display:grid;position:relative;overflow:hidden}.hero img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero__band{background:var(--brand);text-align:center;margin:0;padding:10px 22px;font-size:clamp(1.8rem,5.5vw,3.4rem);font-weight:700;position:relative}.hero{align-content:center;row-gap:18px;padding:28px 16px}.hero__panel{border-radius:var(--radius);text-align:center;background:#0000008c;max-width:640px;padding:18px 22px 22px;position:relative}.hero__sub{margin:0 0 16px;font-size:1.05rem;line-height:1.5}.section{padding:64px 0}.section--dark{background:var(--charcoal);color:#f2f2f2}.section--mist{background:var(--mist)}.section__mark{width:200px;margin:0 auto 24px}.lede{max-width:780px}.center{text-align:center;margin-left:auto;margin-right:auto}.tiles{background:var(--charcoal-2);border-radius:var(--radius);grid-template-columns:repeat(4,1fr);gap:16px;margin-top:32px;padding:16px;display:grid}.tile{color:#fff;background:var(--charcoal);border-radius:var(--radius);text-decoration:none;display:block;overflow:hidden}.tile img{aspect-ratio:4/3;object-fit:cover;width:100%}.tile span{padding:16px;font-weight:600;display:block}.tile:hover span{background:var(--brand)}.contact{color:#fff;background:var(--charcoal);position:relative;overflow:hidden}.contact>img{object-fit:cover;opacity:.35;width:100%;height:100%;position:absolute;inset:0}.contact .wrap{position:relative}.contact__band{background:var(--brand);margin:0 0 24px;padding:6px 16px;font-size:clamp(1.4rem,3.5vw,2rem);display:inline-block}.contact__grid{grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:40px;display:grid}.contact__grid h3{letter-spacing:.12em;color:#ffd9dc;margin-bottom:6px;font-size:.9rem}.contact__grid a,.contact__grid p{color:#fff;margin:0;font-size:1.1rem}.contact__grid a,.site-footer a{align-items:center;min-height:44px;display:inline-flex}.contact__grid a{margin-top:-7px}.quote{border-radius:var(--radius);background:#0000008c;max-width:560px;margin:0 auto;padding:28px}.quote h2{letter-spacing:.1em;text-align:center;font-size:1.25rem;font-weight:500}.field{margin-bottom:12px}.field label{margin-bottom:4px;font-size:.85rem;display:block}.field input,.field textarea{width:100%;font:inherit;border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:4px;padding:10px 12px}.field textarea{resize:vertical;min-height:140px}.form-error{color:var(--brand-deep);background:#fff;border-radius:4px;margin:12px 0 0;padding:10px 12px;font-weight:600}.form-legend{opacity:.9;margin:0 0 12px;font-size:.85rem}.req{color:#ffd9dc;margin-left:3px}.btn{font:inherit;cursor:pointer;border:0;border-radius:4px;padding:12px 22px;font-weight:700;text-decoration:none;display:inline-block}.btn--primary{background:var(--brand);color:#fff}.btn--primary:hover{background:var(--brand-deep)}.btn[disabled]{opacity:.7;cursor:progress}.card{color:var(--ink);border-radius:var(--radius);background:#fff;padding:24px}.page-head{color:#fff;background:var(--charcoal);padding:72px 0;position:relative;overflow:hidden}.page-head img{object-fit:cover;opacity:.4;width:100%;height:100%;position:absolute;inset:0}.page-head .wrap{position:relative}.list{columns:2;column-gap:40px;margin:24px 0 0;padding-left:1.1em}.list li{break-inside:avoid;margin-bottom:8px}.subnav{flex-wrap:wrap;gap:10px;margin-top:40px;display:flex}.subnav a{border:1px solid var(--line);color:var(--ink);border-radius:999px;padding:6px 14px;font-size:.9rem;text-decoration:none}.subnav a[aria-current=page]{background:var(--brand);color:#fff;border-color:var(--brand)}.projects{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.project img{aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius);width:100%}.project h2{margin:14px 0 6px;font-size:1.2rem}.project p{color:var(--ink-soft);margin:0}.site-footer{background:var(--charcoal);color:#ddd;padding:36px 0}.site-footer__bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.site-footer__mark{width:140px}.site-footer a{color:#fff}.site-footer p{margin:0}.site-footer__copy{color:#bbb;font-size:.85rem}@media (max-width:1100px){.site-nav{flex-basis:100%;order:3;justify-content:center}}@media (max-width:640px){.site-header__logo{flex-direction:column;align-items:flex-start;gap:2px}}@media (max-width:900px){.tiles{grid-template-columns:repeat(2,1fr)}.projects{grid-template-columns:1fr 1fr}.contact__grid{grid-template-columns:1fr}}@media (max-width:560px){.tiles,.projects{grid-template-columns:1fr}.list{columns:1}.hero{min-height:320px}.site-header__bar{justify-content:center;row-gap:4px;padding-top:10px;padding-bottom:0}.site-header__logo{flex-direction:column;align-items:center;gap:2px}.site-header__logo img{width:140px}.site-nav{flex-wrap:nowrap;justify-content:center;gap:0 14px;width:100%}.site-nav a{white-space:nowrap;padding:12px 0;font-size:.8rem}.site-header__phone{background:var(--brand);color:#fff;border:0;border-radius:0;order:4;justify-content:center;width:calc(100% + 40px);min-height:48px;margin:6px -20px 0;font-size:1.05rem}.site-header__phone-verb{margin-right:.3em;display:inline}}@media (max-width:440px){.site-nav{grid-template-columns:repeat(6,1fr);justify-items:center;gap:0;display:grid}.site-nav a{grid-column:span 2}.site-nav a:nth-child(4){grid-column:2/span 2}.site-nav a:nth-child(5){grid-column:4/span 2}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.admin-grid{grid-template-columns:repeat(3,1fr);gap:20px;margin-top:2rem;display:grid}.admin-card{border:1px solid var(--line)}.admin-card h2{font-size:1.2rem}.admin-card__needs{color:var(--ink-soft);margin-bottom:0;font-size:.92rem}.adm-note{border-left:4px solid var(--brand);background:var(--mist);padding:12px 16px}@media (max-width:900px){.admin-grid{grid-template-columns:1fr}}
