/* Shared construction workspace identity: crisp type, navy and electric cyan. */
.construction-site { --hub-navy:#082538;--hub-blue:#096ac6;--hub-cyan:#9ee9fc;--hub-text:#17374c;--hub-muted:#466479; }
.construction-site .hero { padding-block:clamp(44px,6vw,84px); }
.construction-site .hero h1 { font-family:'Chivo',system-ui,sans-serif;font-size:clamp(2.25rem,4.3vw,4.25rem);font-weight:600;letter-spacing:-.035em;line-height:1.12;max-width:19ch; }
.construction-site .hero h1 em { font-family:inherit;font-weight:500;font-style:normal;color:var(--hub-cyan); }
.construction-site .hero .lede { font-size:1.125rem;line-height:1.75;max-width:57ch; }
.construction-home .earth-hero .hero-grid { gap:clamp(28px,4vw,62px);grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr); }
.construction-home .hero-copy { min-width:0; }
.construction-home .hero-copy h1 { max-width:15ch; }
.construction-home .hero-copy .eyebrow { color:#9ee9fc;font-size:.875rem;letter-spacing:.08em;line-height:1.5; }
.hub-hero-actions { display:flex;flex-wrap:wrap;gap:12px;margin:24px 0 20px; }
.construction-site .hub-hero-actions .cta { display:inline-flex;justify-content:center;align-items:center;margin:0;min-height:50px;padding:15px 20px;white-space:normal;line-height:1.45;font-size:1rem; }
.construction-site .hub-hero-actions .primary { background:#9ee9fc;border-color:#9ee9fc;color:#06273a;box-shadow:0 8px 26px #011d2e44; }
.construction-site .hub-hero-actions .primary:hover { background:#d2f6ff;border-color:#d2f6ff; }
.hub-proof { display:flex;flex-wrap:wrap;gap:10px 18px;margin:22px 0;color:#d2ebf8;font-size:.875rem;line-height:1.6; }
.hub-proof span { padding-left:12px;border-left:2px solid #83d6ed; }
.construction-site .hero-copy .offer-terms { font-size:.875rem;line-height:1.6;color:#bcd4e3;max-width:61ch; }
.construction-home .location-experience { padding:24px;border:1px solid #366378;border-radius:22px;background:#0d3046;box-shadow:0 18px 60px #03121e38; }
.construction-home .location-map-wrap { height:280px; }
.construction-home .location-heading h2 { font-size:1.7rem;line-height:1.25; }
.construction-home .location-form { padding:18px;background:#08283d; }
.construction-home .location-experience::before { display:none; }
.construction-site section.trade-hub { padding-block:clamp(44px,7vw,88px);background:#edf5fb;color:var(--hub-text);position:relative;isolation:isolate; }
.hub-heading { display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:32px;align-items:end; }
.construction-site .hub-heading h2 { color:var(--hub-navy);font:600 clamp(2rem,3.2vw,3rem)/1.16 'Chivo',system-ui,sans-serif;letter-spacing:-.025em;margin:16px 0 0;padding:0; }
.construction-site .hub-heading .eyebrow { color:#176093;font-size:.875rem;line-height:1.5; }
.hub-heading>p { color:var(--hub-muted);font-size:1.125rem;line-height:1.7;margin:0; }
.hub-trades { display:flex;flex-wrap:wrap;gap:10px;margin:30px 0 22px; }
.hub-trades button { appearance:none;cursor:pointer;border:1px solid #a9c8dc;border-radius:999px;padding:12px 18px;min-height:48px;color:#23465d;background:#fff;font:500 1rem/1.35 'Chivo',system-ui,sans-serif;transition:background .16s,color .16s; }
.hub-trades button[aria-pressed="true"] { background:#103c58;border-color:#103c58;color:#fff; }
.hub-trades button:hover { border-color:#0b6aa8; }
.hub-trades button:focus-visible,.hub-services a:focus-visible { outline:3px solid #097fc4;outline-offset:4px; }
.hub-trade-context { display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr);gap:24px;align-items:baseline;border-top:1px solid #b9d2e2;padding:22px 0; }
.hub-trade-context strong { font-size:1.25rem;font-weight:600;color:#143a54; }
.hub-trade-context p { font-size:1rem;line-height:1.7;color:#466479;margin:0; }
.hub-services { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px; }
.hub-services article { min-width:0;display:flex;flex-direction:column;padding:clamp(22px,2.6vw,34px);border:1px solid #bdd5e5;border-radius:18px;background:white;box-shadow:0 10px 25px #154c6910;transition:transform .18s,box-shadow .18s; }
.hub-services article:first-child { background:#0a3048;border-color:#0a3048;color:#fff; }
.construction-site .hub-services h3 { color:#163b54;font:600 clamp(1.5rem,2vw,2rem)/1.25 'Chivo',system-ui,sans-serif;letter-spacing:-.02em;margin:24px 0 16px; }
.construction-site .hub-services p { color:#486579;font-size:1rem;line-height:1.75;margin:0 0 22px; }
.hub-number { color:#206b9d;font-size:.875rem;font-weight:500;letter-spacing:.06em; }
.hub-services a { display:block;align-self:flex-start;margin-top:auto;padding:10px 0;font-size:1rem;line-height:1.5;color:#0669a8;font-weight:600;text-underline-offset:5px; }
.hub-services small { display:block;border-top:1px solid #d5e4ed;margin-top:18px;padding-top:18px;font-size:.875rem;line-height:1.6;color:#557082; }
.construction-site .hub-services article:first-child h3 { color:white; }
.construction-site .hub-services article:first-child p,.hub-services article:first-child small { color:#c6dfea; }
.hub-services article:first-child :is(.hub-number,a) { color:#a3eaff; }
.hub-services article:first-child small { border-color:#38596d; }
.hub-homeowner { margin:28px 0 0;font-size:1rem;line-height:1.7;color:#44647a; }
.hub-homeowner a { color:#086298;text-underline-offset:4px; }
.construction-site .service-cards article { border-radius:18px;border-top:3px solid #2d9aca;box-shadow:0 8px 26px #144c6510; }
.construction-site .service-cards article h3 { font-family:'Chivo',system-ui,sans-serif;font-weight:600; }
.jd-evidence { padding:14px;border-left:3px solid #2186b1;background:#e9f6fc;color:#18445f;font-size:1rem;line-height:1.6; }
@media(hover:hover) and (prefers-reduced-motion:no-preference) { .hub-services article:hover { transform:translateY(-4px);box-shadow:0 16px 36px #1645601f; } }
@media(min-width:981px) { .construction-home .location-experience { margin-top:8px; } }
@media(max-width:980px) { .construction-home .earth-hero .hero-grid { grid-template-columns:minmax(0,1fr); }.construction-home .hero-copy h1 { max-width:19ch; }.hub-heading { grid-template-columns:minmax(0,1fr);gap:20px; }.hub-services { gap:14px; } }
@media(max-width:760px) { .hub-services { grid-template-columns:minmax(0,1fr); }.hub-services article { padding:26px; }.hub-trade-context { grid-template-columns:minmax(0,1fr);gap:10px; }.construction-home .hero-copy .ai-inline { display:flex; }.construction-home .location-experience { padding:18px; }.construction-site .hero .lede { font-size:1rem; }.hub-trades { gap:8px; }.hub-trades button { flex:1 1 140px; } }
@media(max-width:460px) { .construction-site .hero h1 { font-size:clamp(2rem,9vw,2.65rem);line-height:1.2;letter-spacing:-.02em; }.hub-hero-actions { display:grid;grid-template-columns:minmax(0,1fr); }.construction-site .hub-hero-actions .cta { width:100%;text-align:center; }.construction-home .location-experience { padding:14px;border-radius:16px; }.construction-home .location-map-wrap { height:240px; }.hub-proof { gap:8px 12px; }.construction-site .hub-heading h2 { font-size:2rem; } }
@media(prefers-reduced-motion:reduce) { .hub-services article,.hub-trades button { transition:none; } }
