.lightbox-gallery__grid[data-astro-cid-z6g5547k]{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem;margin-top:1.5rem;display:grid}.lightbox-gallery__item[data-astro-cid-z6g5547k]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin:0;overflow:hidden}.lightbox-gallery__button[data-astro-cid-z6g5547k]{cursor:zoom-in;background:0 0;border:none;padding:0;display:block}.lightbox-gallery__item[data-astro-cid-z6g5547k] img[data-astro-cid-z6g5547k]{width:100%;height:auto;display:block}.lightbox-gallery__item[data-astro-cid-z6g5547k] figcaption[data-astro-cid-z6g5547k]{color:var(--color-muted);padding:.75rem .9rem .95rem;font-size:.95rem}.lightbox[data-astro-cid-z6g5547k]{z-index:120;justify-content:center;align-items:center;display:none;position:fixed;inset:0}.lightbox[data-astro-cid-z6g5547k].is-open{display:flex}.lightbox__scrim[data-astro-cid-z6g5547k]{background:#0a0a0abf;position:absolute;inset:0}.lightbox__content[data-astro-cid-z6g5547k]{z-index:1;grid-template-rows:1fr auto;place-items:center;gap:.5rem;max-width:min(90vw,1100px);max-height:90vh;display:grid;position:relative}.lightbox__image[data-astro-cid-z6g5547k]{object-fit:contain;border-radius:var(--radius-lg);max-width:90vw;max-height:80vh;box-shadow:var(--shadow-md);background:#111}.lightbox__caption[data-astro-cid-z6g5547k]{color:#f3f4f6;text-align:center;max-width:70ch;margin:0;font-size:.95rem}.lightbox__close[data-astro-cid-z6g5547k]{color:#fff;cursor:pointer;background:0 0;border:none;font-size:2rem;position:absolute;top:-2.5rem;right:0}.lightbox__nav[data-astro-cid-z6g5547k]{color:#fff;cursor:pointer;background:#1118278c;border:none;border-radius:50%;width:2.75rem;height:2.75rem;font-size:2rem;position:absolute;top:50%;transform:translateY(-50%)}.lightbox__nav--prev[data-astro-cid-z6g5547k]{left:-3.5rem}.lightbox__nav--next[data-astro-cid-z6g5547k]{right:-3.5rem}@media (width<=900px){.lightbox__nav--prev[data-astro-cid-z6g5547k]{left:.5rem}.lightbox__nav--next[data-astro-cid-z6g5547k]{right:.5rem}.lightbox__close[data-astro-cid-z6g5547k]{top:-2.2rem}}.project-gallery[data-astro-cid-j4gwzyy4]{padding:2.5rem 0 3rem}.project-gallery[data-astro-cid-j4gwzyy4] h2[data-astro-cid-j4gwzyy4]{margin:0;font-size:clamp(1.6rem,2.4vw,2.2rem)}.project-section[data-astro-cid-royv7esv]{padding:2.5rem 0}.project-section--alt[data-astro-cid-royv7esv]{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);background:#ffffffb3}.project-section[data-astro-cid-royv7esv] h2[data-astro-cid-royv7esv]{margin:0 0 1rem;font-size:clamp(1.6rem,2.4vw,2.2rem)}.project-section[data-astro-cid-royv7esv] p[data-astro-cid-royv7esv]{color:var(--color-muted);margin:0;font-size:1.05rem}.project-list[data-astro-cid-royv7esv]{color:var(--color-text);gap:.55rem;margin:0;padding-left:1.2rem;display:grid}.quote-request-form-section{padding:1.5rem 0 .5rem}.quote-request-form-section--compact{padding-top:0}.quote-request-form-shell{gap:1rem;display:grid}.quote-request-form-copy{gap:.35rem;display:grid}.quote-request-form-kicker{color:var(--color-accent);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.8rem;font-weight:800}.quote-request-form-copy h2{color:var(--color-ink);letter-spacing:-.03em;margin:0;font-size:clamp(1.5rem,2vw,1.95rem);line-height:1.1}.quote-request-form-lead{color:var(--color-muted);margin:0;font-weight:600}.quote-request-form-card{border-radius:var(--radius-lg);background:linear-gradient(180deg, #fffffff5, #fffaf4fa), var(--color-surface);box-shadow:var(--shadow-md);border:1px solid #1118271f;gap:1.1rem;padding:1.35rem;display:grid}.quote-request-form-grid{gap:.9rem;display:grid}.quote-request-form-field{gap:.4rem;display:grid}.quote-request-form-field span{color:var(--color-ink);font-size:.92rem;font-weight:700}.quote-request-form-field input,.quote-request-form-field select,.quote-request-form-field textarea{width:100%;color:var(--color-text);font:inherit;background:#fffffffa;border:1px solid #11182726;border-radius:12px;padding:.85rem .95rem}.quote-request-form-field select{appearance:none;background-image:linear-gradient(45deg,#0000 50%,#111827bf 50%),linear-gradient(135deg,#111827bf 50%,#0000 50%);background-position:calc(100% - 1.25rem) calc(50% - .1rem),calc(100% - .95rem) calc(50% - .1rem);background-repeat:no-repeat;background-size:.4rem .4rem,.4rem .4rem;padding-right:2.75rem}.quote-request-form-field textarea{resize:vertical;min-height:8rem}.quote-request-form-field input:focus,.quote-request-form-field select:focus,.quote-request-form-field textarea:focus{box-shadow:var(--focus-ring);border-color:#b4530999;outline:none}.quote-request-form-field input::placeholder,.quote-request-form-field textarea::placeholder{color:#4b5563c7}.quote-photo-tray__input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.quote-photo-tray__control{background:#ffffffb8;border:1px dashed #1118273d;border-radius:12px;flex-wrap:wrap;align-items:center;gap:.65rem .85rem;min-height:3.25rem;padding:.85rem .95rem;display:flex}.quote-photo-tray__control button{border-radius:var(--radius-pill);background:var(--color-ink);color:#fff;min-height:2.55rem;font:inherit;cursor:pointer;border:0;align-items:center;gap:.45rem;padding:.65rem .95rem;font-weight:800;display:inline-flex}.quote-photo-tray__control button:hover:not(:disabled){background:var(--color-accent)}.quote-photo-tray__control button:disabled{cursor:progress;opacity:.75}.quote-photo-tray__control button span{width:1.1rem;height:1.1rem;color:inherit;place-items:center;font-size:1.1rem;line-height:1;display:inline-grid}.quote-photo-tray__control p{color:var(--color-muted);flex:13rem;margin:0;font-size:.92rem;font-weight:600;line-height:1.35}.quote-photo-tray__previews{grid-template-columns:repeat(auto-fill,minmax(7.25rem,1fr));gap:.65rem;margin:.2rem 0 0;padding:0;list-style:none;display:grid}.quote-photo-tray__preview{background:#ffffffe6;border:1px solid #1118271f;border-radius:12px;grid-template-rows:6rem auto;min-width:0;display:grid;position:relative;overflow:hidden}.quote-photo-tray__preview img{object-fit:cover;background:#11182714;width:100%;height:6rem}.quote-photo-tray__preview>span{color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;padding:.45rem .5rem;font-size:.78rem;font-weight:700;overflow:hidden}.quote-photo-tray__preview button{color:#fff;width:1.85rem;height:1.85rem;font:inherit;cursor:pointer;background:#111827c7;border:0;border-radius:999px;place-items:center;font-size:.78rem;font-weight:900;display:grid;position:absolute;top:.35rem;right:.35rem}.quote-photo-tray__preview button:hover:not(:disabled){background:var(--color-accent)}.quote-request-form-actions{flex-wrap:wrap;align-items:center;gap:.75rem 1rem;display:flex}.quote-request-form-actions button{border-radius:var(--radius-pill);background:var(--color-accent);color:#fff;font:inherit;cursor:pointer;border:0;padding:.85rem 1.2rem;font-weight:800;transition:transform .12s,background-color .12s}.quote-request-form-actions button:hover:not(:disabled){background:var(--color-accent-hover);transform:translateY(-1px)}.quote-request-form-actions button:disabled{cursor:progress;opacity:.8}.quote-request-form-helper{color:var(--color-muted);margin:0;font-size:.92rem}.quote-request-form-status{border-radius:12px;margin:0;padding:.9rem 1rem;font-size:.95rem;line-height:1.5}.quote-request-form-status--success{color:#166534;background:#16653414}.quote-request-form-status--error{color:#991b1b;background:#991b1b14}.quote-request-form-honeypot{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}@media (width>=760px){.quote-request-form-card{padding:1.6rem}.quote-request-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.quote-request-page{padding:1.5rem 0 .75rem}.quote-request-page__shell{width:min(100%,54rem);margin:0 auto}.quote-request-cta{border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:radial-gradient(circle at 100% 0,#1118270f,#0000 45%),linear-gradient(#fffaf4fa,#fffffff5);border:1px solid #1118271f;gap:1rem;margin:1.5rem 0 .5rem;padding:1.1rem 1.15rem;display:grid}.quote-request-cta__content{gap:.45rem;display:grid}.quote-request-cta__content h2,.quote-request-cta__content p{margin:0}.quote-request-cta__content h2{color:var(--color-ink);line-height:1.15}.quote-request-cta__content p{color:var(--color-text);line-height:1.6}.quote-request-cta__button{border-radius:var(--radius-pill);background:var(--color-accent);color:#fff;justify-content:center;align-items:center;min-height:2.75rem;padding:.75rem 1rem;font-weight:800;text-decoration:none;transition:transform .12s,background-color .12s;display:inline-flex}.quote-request-cta__button:hover{background:var(--color-accent-hover);transform:translateY(-1px)}@media (width>=760px){.quote-request-page{padding-top:1.75rem}.quote-request-cta{grid-template-columns:minmax(0,1fr) auto;align-items:center}}.featured-project[data-astro-cid-pr64pldb]{padding:2.5rem 0 2.75rem}.featured-project__card[data-astro-cid-pr64pldb]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);grid-template-columns:minmax(0,1fr);gap:1.5rem;display:grid;overflow:hidden}.featured-project__media[data-astro-cid-pr64pldb] img[data-astro-cid-pr64pldb]{width:100%;height:auto;display:block}.featured-project__content[data-astro-cid-pr64pldb]{gap:.75rem;padding:1.4rem 1.5rem 1.7rem;display:grid}.featured-project__kicker[data-astro-cid-pr64pldb]{text-transform:uppercase;letter-spacing:.08em;color:var(--color-muted);margin:0;font-size:.85rem}.featured-project__content[data-astro-cid-pr64pldb] h3[data-astro-cid-pr64pldb]{color:var(--color-ink);margin:0;font-size:clamp(1.4rem,2.2vw,1.9rem)}.featured-project__content[data-astro-cid-pr64pldb] p[data-astro-cid-pr64pldb]{color:var(--color-muted);margin:0;font-size:1rem}.featured-project__link[data-astro-cid-pr64pldb]{align-items:center;gap:.35rem;font-weight:600;text-decoration:none;display:inline-flex}.featured-project__link[data-astro-cid-pr64pldb]:after{content:"→";transition:transform .15s}.featured-project__link[data-astro-cid-pr64pldb]:hover:after{transform:translate(3px)}@media (width>=960px){.featured-project__card[data-astro-cid-pr64pldb]{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}}.before-after[data-astro-cid-ffp2lg2f]{padding:1.5rem 0 2.5rem}.before-after[data-astro-cid-ffp2lg2f] h2[data-astro-cid-ffp2lg2f]{margin:0 0 1.1rem;font-size:clamp(1.35rem,2vw,1.9rem)}.before-after__grid[data-astro-cid-ffp2lg2f]{gap:1.6rem;display:grid}.before-after__card[data-astro-cid-ffp2lg2f]{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);gap:1rem;padding:1rem;display:grid}.before-after__cell[data-astro-cid-ffp2lg2f]{gap:.65rem;display:grid}.before-after__cell[data-astro-cid-ffp2lg2f] img[data-astro-cid-ffp2lg2f]{border-radius:var(--radius-lg);width:100%;height:auto;display:block}.before-after__label[data-astro-cid-ffp2lg2f]{letter-spacing:.02em;text-transform:uppercase;color:var(--color-muted);margin:0;font-size:.82rem;font-weight:600}.before-after__caption[data-astro-cid-ffp2lg2f]{color:var(--color-muted);margin:0;font-size:.95rem}@media (width>=760px){.before-after__card[data-astro-cid-ffp2lg2f]{grid-template-columns:repeat(2,minmax(0,1fr))}}.page-showcase[data-astro-cid-wkwknmkx]{padding:2.25rem 0}.page-showcase[data-astro-cid-wkwknmkx] h2[data-astro-cid-wkwknmkx]{margin:0 0 .75rem;font-size:clamp(1.35rem,2vw,1.9rem)}.page-showcase[data-astro-cid-wkwknmkx] h2[data-astro-cid-wkwknmkx]+.lightbox-gallery[data-astro-cid-wkwknmkx]{margin-bottom:2rem}.page-showcase[data-astro-cid-wkwknmkx] .lightbox-gallery[data-astro-cid-wkwknmkx]{margin-bottom:0}
