:root{--black:#0f1012;--black-soft:#17191d;--gold:#d5a640;--gold-deep:#bd8926;--gold-soft:#f2d28b;--ivory:#f6f0e6;--cream:#fbf7f0;--ink:#162133;--ink-soft:#4c5a72;--line:#ddd3c1;--white:#fff;--shadow:0 22px 60px rgba(0,0,0,.12);--shadow-soft:0 12px 28px rgba(17,21,29,.08);--radius:26px;--max:1280px;--header-height:92px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:radial-gradient(circle at top,rgba(255,255,255,.32),transparent 34%),linear-gradient(180deg,#f8f3eb 0%,#f4eee4 100%);line-height:1.6}img{max-width:100%;display:block}a{text-decoration:none;color:inherit}.container{width:min(calc(100% - 40px),var(--max));margin:0 auto}.breadcrumbs,.breadcrumb,.hero-breadcrumb,.site-topbar,.eyebrow,.badge,.kicker{display:none!important}.site-header{position:sticky;top:0;z-index:120;background:linear-gradient(180deg,rgba(13,14,17,.96),rgba(13,14,17,.88));backdrop-filter:blur(14px);border-bottom:1px solid rgba(213,166,64,.12);box-shadow:0 16px 42px rgba(0,0,0,.18);transition:background .28s ease,border-color .28s ease,box-shadow .28s ease}.site-header.is-scrolled{background:linear-gradient(180deg,rgba(13,14,17,.98),rgba(13,14,17,.94));border-bottom-color:rgba(213,166,64,.18)}.nav-wrap{min-height:var(--header-height);display:flex;align-items:center;justify-content:space-between;gap:20px;position:relative}.brand{display:flex;align-items:flex-start;gap:16px;min-width:0;color:#fff;position:relative;z-index:3;margin-right:4px}.brand img{width:90px;height:90px;object-fit:contain;filter:drop-shadow(0 8px 22px rgba(0,0,0,.26));transform:translateY(28px) scale(2.08);transform-origin:top left;transition:transform .34s cubic-bezier(.22,.61,.36,1),filter .34s ease}.site-header.is-scrolled .brand img{transform:translateY(0) scale(1)}.brand span{padding-top:8px}.brand strong{display:block;color:#fff;font-size:19px;font-weight:800;line-height:1.02;letter-spacing:-.03em}.brand small{display:block;color:#d7ba79;margin-top:4px;font-size:11px;line-height:1.2;letter-spacing:.08em;text-transform:uppercase}.site-nav{display:flex;align-items:center;justify-content:flex-end;gap:18px;flex:1 1 auto;position:relative}.site-nav .nav-link{color:#f5f1ea;font-weight:700;font-size:15px;letter-spacing:.01em;position:relative;padding:10px 2px;white-space:nowrap;transition:color .22s ease,transform .22s ease}.site-nav .nav-link:hover,.site-nav .nav-link.active{color:#fff}.site-nav .nav-link:hover{transform:translateY(-1px)}.site-nav .nav-link::after{content:"";position:absolute;left:50%;bottom:-8px;width:0;height:14px;opacity:0;transform:translateX(-50%);border-radius:999px;background:radial-gradient(ellipse at center,rgba(242,210,139,.95) 0%,rgba(213,166,64,.75) 42%,rgba(213,166,64,0) 76%);filter:blur(.35px);transition:width .24s ease,opacity .24s ease}.site-nav .nav-link:hover::after,.site-nav .nav-link.active::after{width:64px;opacity:1}.nav-star{position:absolute;bottom:-10px;left:0;width:72px;height:18px;pointer-events:none;opacity:0;transform:translateX(0);transition:transform .42s cubic-bezier(.2,.8,.2,1),width .32s ease,opacity .2s ease}.nav-star::before,.nav-star::after{content:"";position:absolute;inset:0;border-radius:999px}.nav-star::before{background:radial-gradient(circle at 18% 45%,rgba(255,246,219,.98) 0 8%,rgba(255,246,219,0) 16%),linear-gradient(90deg,rgba(255,242,203,.96) 0%,rgba(221,174,74,.9) 36%,rgba(213,166,64,.16) 100%);clip-path:path("M 0 10 Q 20 1 38 7 T 72 10 L 72 16 Q 38 12 0 16 Z");filter:drop-shadow(0 0 10px rgba(233,191,99,.36))}.nav-star::after{background:radial-gradient(circle at center,rgba(244,216,145,.8),rgba(244,216,145,0) 70%);filter:blur(6px);opacity:.9}.menu-toggle{display:none;background:none;border:none;color:#fff;font-size:32px;padding:8px;cursor:pointer;margin-left:auto}.button,.button-ghost{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;border-radius:999px;padding:0 22px;font-weight:800;font-size:16px;transition:transform .22s ease,box-shadow .22s ease,background .22s ease,border-color .22s ease}.button{color:#14110a;background:linear-gradient(180deg,#e6bc61 0%,#cb9731 100%);box-shadow:0 16px 34px rgba(213,166,64,.22);border:none}.button:hover{transform:translateY(-1px);box-shadow:0 20px 38px rgba(213,166,64,.28)}.button-ghost{color:var(--ink)!important;background:rgba(246,240,230,.9)!important;border:1px solid rgba(22,33,51,.16)!important;box-shadow:none!important}.button-small{min-height:44px;padding:0 18px;font-size:15px}.hero,.page-hero,.page-hero-dark{position:relative;overflow:clip;color:#fff;background:linear-gradient(90deg,rgba(9,10,12,.9) 0%,rgba(9,10,12,.62) 46%,rgba(9,10,12,.42) 74%,rgba(9,10,12,.56) 100%),radial-gradient(circle at 80% 10%,rgba(213,166,64,.20),transparent 27%),var(--hero-image,url('/assets/img/hero-remodel.jpg')) center/cover no-repeat}.hero::before,.page-hero::before,.page-hero-dark::before{content:"";position:absolute;inset:auto -12% -28% auto;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(213,166,64,.16),rgba(213,166,64,0) 72%);pointer-events:none}.hero::after,.page-hero::after,.page-hero-dark::after{content:"";position:absolute;inset:auto 0 0 0;height:110px;background:linear-gradient(180deg,rgba(246,240,230,0),rgba(246,240,230,.86));pointer-events:none}.hero-inner,.page-hero-inner,.page-hero-dark .container,.page-hero .container{position:relative;z-index:2;padding:86px 0 78px;transition:opacity .25s ease,transform .25s ease}.hero-grid,.hero-inner{display:grid;grid-template-columns:1.08fr .92fr;gap:34px;align-items:center}.hero h1,.page-hero h1,.page-hero-dark h1{margin:0 0 16px;font-size:clamp(40px,5.4vw,78px);line-height:.96;letter-spacing:-.055em;max-width:900px}.hero p,.page-hero p,.page-hero-dark p{margin:0;max-width:760px;font-size:19px;color:#ece6dc}.hero-kicker{display:inline-flex;align-items:center;gap:10px;margin-bottom:16px;padding:8px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.08);color:#f7f3ea;font-size:12px;letter-spacing:.12em;text-transform:uppercase}.hero-actions,.stacked-actions,.cta-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:24px}.hero-badges{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px}.hero-badge{padding:18px 16px;border-radius:20px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.1);backdrop-filter:blur(10px)}.hero-badge strong{display:block;margin-bottom:8px;font-size:17px;color:#fff}.hero-badge span{display:block;color:#e8e2d8;font-size:14px;line-height:1.45}.hero-card{align-self:end;overflow:hidden;border-radius:30px;background:rgba(18,19,21,.66);border:1px solid rgba(255,255,255,.12);box-shadow:var(--shadow);backdrop-filter:blur(10px)}.hero-card-image img{width:100%;aspect-ratio:4/3;object-fit:cover}.hero-card-body{padding:26px 24px 28px}.hero-card h2{margin:0 0 12px;font-size:31px;line-height:1.03;letter-spacing:-.04em}.hero-card p{font-size:17px;color:#efe7db}.hero-trust-row{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:22px}.hero-trust-pill{display:inline-flex;align-items:center;gap:10px;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.12);color:#fff;font-weight:700}.hero-trust-pill img{width:28px;height:auto}.section,.page-section{padding:62px 0}.section-warm,.section-ivory,.section-alt{background:transparent}.section-dark-band{background:linear-gradient(180deg,#101113 0%,#14161a 100%);color:#fff}.section-dark-band h2,.section-dark-band p,.section-dark-band li,.section-dark-band h3{color:#fff}.section h2,.page-section h2{margin:0 0 14px;font-size:clamp(32px,4vw,54px);line-height:1.02;letter-spacing:-.045em}.section p,.page-section p,.simple-card p,.project-teaser p,.city-card p,.city-pill p{font-size:18px;color:var(--ink-soft)}.section-lead{font-size:20px}.section-intro{max-width:760px;margin-bottom:24px}.section-tight{padding-top:28px}.home-tighten{margin-top:-36px;position:relative;z-index:3}.split-panel,.page-grid-2,.split,.contact-grid,.dark-showcase,.logos-row,.testimonial-grid,.reviews-showcase{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center}.split img,.premium-image{width:100%;height:440px;object-fit:cover;border-radius:24px;box-shadow:var(--shadow)}.split-media-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.split-media-grid img{width:100%;height:236px;object-fit:cover;border-radius:24px;box-shadow:var(--shadow)}.split-media-grid .split-tall{grid-row:span 2;height:490px}.check-list{list-style:none;padding:0;margin:22px 0 0;display:grid;gap:12px}.check-list li{display:flex;gap:12px;color:#33435b;font-size:18px}.check-list li::before{content:"✓";color:var(--gold-deep);font-weight:800}.featured-grid,.service-grid,.card-list,.project-list,.city-list-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.featured-card,.featured-card-large,.service-card,.simple-card,.city-card,.project-teaser,.contact-form-card,.contact-side-card,.panel,.city-pill,.review-cta-card,.review-card,.glass-card,.stat-card{overflow:hidden;background:rgba(255,255,255,.92);border-radius:26px;border:1px solid rgba(221,211,193,.9);box-shadow:var(--shadow-soft)}.featured-card,.featured-card-large{position:relative;min-height:360px}.featured-card img,.featured-card-large img,.service-card img,.city-card img{width:100%;height:100%;object-fit:cover}.featured-card-large{grid-column:span 2;min-height:420px}.featured-overlay{position:absolute;inset:auto 0 0 0;padding:26px;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.82));color:#fff}.featured-overlay h3{margin:0 0 8px;font-size:30px;line-height:1.05;letter-spacing:-.03em}.featured-overlay p{margin:0;color:#efe7db;font-size:16px}.service-card img,.city-card img{height:260px;aspect-ratio:4/3}.service-card-body,.city-card-body,.simple-card,.project-teaser,.contact-form-card,.contact-side-card,.panel,.city-pill,.review-cta-card,.review-card,.glass-card,.stat-card{padding:24px}.service-card h3,.simple-card h3,.city-card h3,.project-teaser h3,.city-pill h3,.review-card h3{margin:0 0 12px;font-size:24px;line-height:1.12}.project-teaser .meta{color:#7c889b;font-size:15px;margin-bottom:12px}.project-card-link,.text-link-inline{color:#14529f;font-weight:800}.project-card-link,.text-link-inline{display:inline-flex;align-items:center;gap:6px}.dark-showcase{align-items:stretch}.dark-copy{display:flex;flex-direction:column;justify-content:center}.dark-copy p{font-size:19px;color:#e6dfd3;max-width:640px}.dark-stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:22px}.dark-stat{padding:18px 16px;border-radius:20px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08)}.dark-stat strong{display:block;font-size:26px;color:#fff}.dark-stat span{display:block;margin-top:4px;color:#ddd4c7;font-size:14px}.cta-strip{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:32px 0 0;margin-top:12px;border-top:1px solid rgba(213,166,64,.16)}.cta-strip-copy{max-width:700px}.cta-strip-copy h2{margin:0 0 12px;color:#fff;font-size:clamp(34px,4vw,54px);line-height:1.04}.cta-strip-copy p{margin:0;color:#ece6dc;font-size:20px}.cta-strip-actions{display:flex;gap:14px;flex-wrap:wrap}.reviews-showcase{align-items:start;grid-template-columns:1.04fr .96fr;gap:24px}.review-cta-card{padding:28px;background:linear-gradient(180deg,#fff,#f8f3ea)}.review-cta-card img{max-width:240px;height:auto;margin-bottom:14px}.review-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.review-card{padding:22px;display:flex;flex-direction:column;justify-content:space-between;min-height:212px}.review-card.featured{grid-column:span 2;min-height:248px;background:linear-gradient(180deg,#fffaf1,#f7efe0);border-color:rgba(213,166,64,.34)}.review-card.featured p{font-size:19px;line-height:1.72}.review-stars{color:var(--gold);font-size:19px;letter-spacing:2px;margin-bottom:10px}.review-card p{margin:0 0 14px}.review-author{font-weight:800;font-size:17px;color:var(--ink)}.review-role{color:#7a879a;font-size:14px}.review-note{display:inline-flex;align-items:center;gap:10px;margin-top:14px;color:#536177;font-size:14px;font-weight:700}.logos-row img{width:100%;height:auto;border-radius:18px}.areas-served-section{position:relative}.areas-served-shell{position:relative;overflow:hidden;padding:30px;border-radius:32px;background:linear-gradient(135deg,#121418 0%,#171b21 58%,#20252d 100%);border:1px solid rgba(213,166,64,.16);box-shadow:var(--shadow)}.areas-served-shell::before{content:"";position:absolute;inset:auto -80px -120px auto;width:340px;height:340px;border-radius:50%;background:radial-gradient(circle,rgba(213,166,64,.18),rgba(213,166,64,0) 70%)}.areas-served-shell h2,.areas-served-shell p{position:relative;z-index:1;color:#fff}.areas-served-shell p{max-width:840px;color:#dad3c7}.areas-served-list{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:26px}.areas-served-list a{display:block;padding:14px 16px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);border-radius:18px;color:#fff;font-weight:700;transition:transform .2s ease,background .2s ease,border-color .2s ease}.areas-served-list a:hover{transform:translateY(-1px);background:rgba(255,255,255,.1);border-color:rgba(213,166,64,.28)}.contact-grid{grid-template-columns:1.05fr .95fr;gap:26px}.form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{display:block;margin-bottom:8px;font-weight:700;color:#182536}input,textarea,select{width:100%;border:1px solid #d0d7e0;border-radius:18px;padding:15px 16px;font:inherit;color:var(--ink);background:#fff;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}input:focus,textarea:focus,select:focus{outline:none;border-color:rgba(213,166,64,.72);box-shadow:0 0 0 4px rgba(213,166,64,.12)}textarea{min-height:160px;resize:vertical}.form-actions{margin-top:20px}.field-note{margin-top:6px;color:#748196;font-size:13px}.form-status{margin-bottom:18px;padding:14px 16px;border-radius:16px;font-weight:700}.form-status.success{background:#eef7ed;border:1px solid #cde2cb;color:#1c5b2c}.form-status.error{background:#fff3f0;border:1px solid #e7c2b8;color:#8b3a2b}.inline-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:22px 0 0}.mini-info{padding:16px;border-radius:18px;background:#fff;border:1px solid rgba(22,33,51,.08)}.mini-info strong{display:block;margin-bottom:4px}.contact-side-card h3{margin:0 0 14px;font-size:28px}.contact-highlight-list{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:12px}.contact-highlight-list li{display:flex;gap:10px;color:#415166}.contact-highlight-list li::before{content:"•";color:var(--gold);font-weight:800}.faq-accordion{display:grid;gap:12px}.faq-accordion details{background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 8px 24px rgba(20,20,20,.05);overflow:hidden}.faq-accordion summary{list-style:none;cursor:pointer;padding:22px 24px;font-size:20px;font-weight:800;color:var(--ink);position:relative}.faq-accordion summary::-webkit-details-marker{display:none}.faq-accordion summary:after{content:'+';position:absolute;right:24px;top:50%;transform:translateY(-50%);font-size:28px;color:var(--gold)}.faq-accordion details[open] summary:after{content:'−'}.faq-answer{padding:0 24px 22px;color:var(--ink-soft);font-size:18px}.city-pill h3{font-size:20px;margin-bottom:6px}.city-pill p{font-size:16px;margin:0}.city-grid-feature{display:grid;grid-template-columns:1.05fr .95fr;gap:22px;align-items:stretch}.city-spotlight{display:grid;gap:18px}.city-feature-card{background:linear-gradient(180deg,#fff,#f8f2e8)}.city-feature-card h3{margin:0 0 10px;font-size:28px}.city-service-links{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:18px}.city-service-links a{display:block;padding:18px;border-radius:18px;background:#fff;border:1px solid var(--line);font-weight:800;box-shadow:var(--shadow-soft)}.city-service-links span{display:block;margin-top:6px;color:#6c788a;font-weight:400;font-size:14px}.service-cta-panel{display:grid;grid-template-columns:1fr 1fr;gap:18px}.project-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.project-gallery img{width:100%;height:260px;object-fit:cover;border-radius:20px;box-shadow:var(--shadow-soft)}.muted{color:#748196}.card{padding:24px;border-radius:26px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-soft)}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:14px 12px;border-bottom:1px solid #e8dfd0}.table th{color:#526076;font-size:14px;text-transform:uppercase;letter-spacing:.06em}.admin-shell{display:grid;grid-template-columns:280px 1fr;gap:26px;align-items:start}.admin-menu{position:sticky;top:110px;padding:24px;border-radius:26px;background:linear-gradient(180deg,#15181e,#101216);color:#fff;box-shadow:var(--shadow)}.admin-menu p,.admin-menu a,.admin-menu .muted{color:#e7e0d4}.lead-form{display:grid;gap:16px}.row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.upload-note{margin-top:10px;color:#6c788a;font-size:14px}.services-hub-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.services-hub-col{display:grid;gap:14px}.services-hub-col a{display:block;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow-soft);padding:20px 22px;font-weight:800;color:var(--ink);transition:transform .2s ease,box-shadow .2s ease}.services-hub-col a:hover{text-decoration:none;transform:translateY(-1px);box-shadow:0 18px 34px rgba(17,21,29,.1)}.site-footer{margin-top:10px;padding:56px 0 34px;background:linear-gradient(180deg,#111214 0%,#0d0f12 100%);color:#fff;border-top:1px solid rgba(213,166,64,.16)}.footer-callout{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 0 34px;margin-bottom:34px;border-bottom:1px solid rgba(213,166,64,.16)}.footer-callout h2{margin:0 0 12px;font-size:clamp(34px,4vw,54px);line-height:1.04;color:#fff}.footer-callout p{margin:0;max-width:700px;font-size:20px;color:#ebe3d8}.footer-callout-actions,.footer-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.footer-grid{display:grid;grid-template-columns:1.25fr .8fr .8fr 1fr;gap:30px}.footer-brand{display:flex;gap:18px;align-items:flex-start;color:#fff}.footer-brand img{width:128px;height:128px;object-fit:contain;filter:drop-shadow(0 2px 6px rgba(0,0,0,.14))}.site-footer h3,.site-footer h4{margin:0 0 16px;font-size:25px;color:#fff}.site-footer p,.site-footer li,.site-footer a{color:#ebe3d8;font-size:17px}.footer-links{list-style:none;padding:0;margin:0;display:grid;gap:12px}.footer-phone{margin-top:16px;font-size:30px;font-weight:800;color:#fff}.footer-service-area{margin-top:18px}.google-review-link{display:inline-block;margin-top:16px;color:#daba6b!important;font-weight:800}.footer-bottom{margin-top:28px;padding-top:18px;border-top:1px solid rgba(255,255,255,.08)}@media (max-width:1180px){.hero-inner,.featured-grid,.split-panel,.service-grid,.footer-grid,.page-grid-2,.card-list,.project-list,.contact-grid,.split,.city-list-grid,.logos-row,.reviews-showcase,.city-grid-feature,.admin-shell,.project-gallery{grid-template-columns:1fr}.hero-card{max-width:680px}.featured-card-large{grid-column:auto}.footer-callout{flex-direction:column;align-items:flex-start}.areas-served-list{grid-template-columns:1fr 1fr}.city-service-links{grid-template-columns:1fr 1fr}.admin-menu{position:relative;top:0}}@media (max-width:900px){.container{width:min(calc(100% - 26px),var(--max))}.menu-toggle{display:inline-flex}.site-nav{display:none;position:absolute;top:100%;left:0;right:0;padding:18px;background:#111214;border-top:1px solid rgba(213,166,64,.16);flex-direction:column;align-items:flex-start;gap:14px}.site-nav.open{display:flex}.nav-star,.button-call{display:none}.nav-wrap{min-height:76px}.brand img{width:74px;height:74px;transform:translateY(14px) scale(1.34)}.site-header.is-scrolled .brand img{transform:translateY(0) scale(1)}.brand strong{font-size:16px}.brand small{font-size:10px}.hero-inner,.page-hero-inner,.page-hero-dark .container,.page-hero .container{padding:50px 0 50px}.hero-grid,.hero-inner,.hero-badges,.form-grid-2,.split-media-grid,.review-grid,.row,.dark-stat-row,.service-cta-panel,.city-service-links,.areas-served-list,.inline-grid{grid-template-columns:1fr}.hero h1,.page-hero h1,.page-hero-dark h1{font-size:clamp(34px,11vw,54px)}.hero p,.page-hero p,.page-hero-dark p{font-size:17px}.split-media-grid .split-tall{height:280px;grid-row:auto}.service-card img,.city-card img,.project-gallery img{height:220px}.footer-brand img{width:102px;height:102px}.reviews-showcase{gap:18px}.areas-served-shell{padding:24px}}
