/* Reference-inspired homepage layout. Original content is preserved in full. */
body.home-mockup{background:var(--bg);color:var(--text);--hm-shadow:0 3px 14px color-mix(in srgb,var(--primary) 13%,transparent)}
.home-mockup main{padding-top:82px}
.home-mockup .hm-wrap{width:min(1180px,calc(100% - 64px));margin-inline:auto}
.home-mockup main h1,.home-mockup main h2{font-weight:700;}
.home-mockup main h2{text-wrap:balance}
.home-mockup main h3{font-weight:700;}
.home-mockup main p{}
.home-mockup main .hp-accent{color:var(--button);white-space:nowrap}
.home-mockup main .hp-sec{padding:42px 0;background:var(--card);position:relative}
.home-mockup main .hp-services,.home-mockup main .hp-styles,.home-mockup main .hp-faq,.home-mockup main .hp-kitchens{background:var(--bg)}
.home-mockup main .hp-sec>div[class*="max-w-7xl"]{max-width:1244px}
.home-mockup main .hp-sec p.text-xs.uppercase,.home-mockup main .hp-sec span.text-xs.uppercase{font-weight:700;}
.home-mockup main .hp-sec .text-center>p:last-child{margin-top:10px}
.home-mockup main a.rounded-full{padding:12px 22px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
.home-mockup main a.bronze-gradient{background:var(--button);color:var(--button-text)}
.home-mockup main a.bronze-gradient:hover{background:var(--button-hover)}
.home-mockup main :is(a,button,summary,[tabindex]):focus-visible{outline:3px solid var(--button);outline-offset:4px}
/* Existing fixed header and menus. */
body.home-mockup>header>div:first-child{max-width:1244px;padding-top:8px;padding-bottom:8px;min-height:82px}
.home-mockup header .site-logo-img{height:64px;max-width:200px}
.home-mockup header nav{gap:20px}
.home-mockup header nav>a,.home-mockup header .nav-dropdown-trigger{}
.home-mockup header>div:first-child>div:last-of-type>a[href^="tel:"]{display:none}
.home-mockup header>div:first-child>div:last-of-type>a:last-child{padding:11px 17px;white-space:nowrap}
.home-mockup .vanilla-mobile-menu{max-height:calc(100dvh - 82px);overflow-y:auto;overscroll-behavior:contain}
/* Hero retains the original photograph, headline, copy, buttons and trust claims. */
.home-mockup main .hp-hero{isolation:isolate;min-height:490px;padding:44px 0 48px;background:var(--primary)}
.home-mockup .hp-hero>img{object-position:67% 52%}
.home-mockup .hp-hero>div.absolute:nth-child(2){background:linear-gradient(90deg,color-mix(in srgb,var(--primary) 97%,transparent) 0%,color-mix(in srgb,var(--primary) 88%,transparent) 30%,color-mix(in srgb,var(--primary) 25%,transparent) 65%,transparent 100%)}
.home-mockup .hp-hero>div.absolute:nth-child(3){background:none}
.home-mockup .hp-hero::after{content:'';position:absolute;width:720px;height:250px;right:-165px;bottom:-197px;border-top:27px solid var(--button);border-radius:50%;transform:rotate(-15deg);pointer-events:none}
.home-mockup .hp-hero-inner{max-width:570px}
.home-mockup .hp-hero h1{color:var(--text-on-dark);margin:15px 0 21px}
.home-mockup .hp-hero h1 .hp-accent{display:block}
.home-mockup .hp-eyebrow-chip{padding:0;background:none;border:0;border-radius:0;color:var(--button);}
.home-mockup .hp-hero-inner>p{max-width:450px;color:var(--text-on-dark-body)}
.home-mockup .hp-hero-ctas{gap:14px;margin-top:24px}
.home-mockup .hp-btn-phone{background:transparent;border:1px solid var(--text-on-dark-body);color:var(--text-on-dark)}
.home-mockup .hp-trust{display:flex;flex-wrap:nowrap;gap:18px;margin-top:30px;max-width:555px;padding:0;border:0;font-weight:600;color:var(--text-on-dark)}
.home-mockup .hp-trust>div{flex:1;padding-right:16px;border-right:1px solid color-mix(in srgb,var(--border) 35%,transparent);gap:9px}
.home-mockup .hp-trust>div:last-child{border:0;padding:0}
.home-mockup .hp-trust svg{width:25px;height:25px;flex:none;color:var(--button)}
/* Original introduction: copy on the left and estimate form on the right. */
.home-mockup .hp-intro-copy{background:transparent;padding:0;border:0}
.home-mockup .hp-intro-copy .space-y-4{margin-top:20px}
.home-mockup .hp-form-card{margin:0;border:1px solid var(--border);border-radius:16px;background:var(--card);padding:28px;display:flex;flex-direction:column;box-shadow:var(--hm-shadow);--surface-heading:var(--heading);--surface-text:var(--text);--surface-muted:var(--text-muted)}
.home-mockup .hp-form-card>.ghl-survey-embed{margin-top:18px;width:100%}
.home-mockup .hp-form-card iframe{min-height:430px}
/* Compact image cards, with all original descriptions and links visible. */
.home-mockup .hp-services .mt-14.grid{gap:20px;margin-top:26px}
.home-mockup .hp-svc-card{background:var(--card);border-radius:10px;border:0;box-shadow:var(--hm-shadow);display:flex;flex-direction:column}
.home-mockup .hp-svc-card>div:first-child{height:150px;flex:none;overflow:hidden}
.home-mockup .hp-svc-card>div:last-child{padding:15px 17px;flex:1;display:flex;flex-direction:column}
.home-mockup .hp-svc-card h3{}
.home-mockup .hp-svc-card p{margin-top:8px;}
.home-mockup .hp-svc-card span{margin-top:auto;padding-top:12px}
.home-mockup .hp-extra{margin-top:28px}
.home-mockup .hp-extra h4{}
.home-mockup .hp-extra>.grid{margin-top:18px;gap:18px}
.home-mockup .hp-extra-card{background:var(--card);border:1px solid var(--border);border-radius:10px;overflow:hidden}
.home-mockup .hp-extra-card>div:first-child{height:115px}
.home-mockup .hp-extra-card>div:last-child{padding:15px}
.home-mockup .hp-extra-card h3{}.home-mockup .hp-extra-card p{}
/* Process band. */
.home-mockup main .hp-process,.home-mockup main .hp-reviews,.home-mockup main .hp-cta{--surface-heading:var(--text-on-dark);--surface-text:var(--text-on-dark-body);--surface-muted:var(--text-on-dark-muted);--surface-accent:var(--button);background:var(--primary);color:var(--text-on-dark-body)}
.home-mockup main .hp-process{background:linear-gradient(color-mix(in srgb,var(--primary) 93%,transparent),color-mix(in srgb,var(--primary) 93%,transparent)),url('/assets/images/home/kitchen-remodeling-orange-county.avif') center/cover}
.home-mockup .hp-process>.grid{display:block}
.home-mockup .hp-process>.grid>div:first-child{text-align:center;max-width:820px;margin:0 auto 27px;align-items:center}
.home-mockup .hp-process>.grid>div:first-child>p{}
.home-mockup .hp-process>.grid>div:first-child>a{margin-top:14px}
.home-mockup .hp-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px}
.home-mockup .hp-step{display:flex;flex-direction:column;align-items:center;text-align:center;border:0;background:transparent;padding:0;gap:13px}
.home-mockup .hp-step>div:first-child{background:var(--card);color:var(--button);width:50px;height:50px;}
.home-mockup .hp-step p.font-semibold{}
.home-mockup .hp-step p.text-sm{}
/* Projects and reviews have working arrows, keyboard scrolling and snap points. */
.home-mockup .hm-carousel{position:relative;margin-top:26px}
.home-mockup .hm-track{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;border-radius:10px;scroll-behavior:smooth}
.home-mockup .hm-track::-webkit-scrollbar{display:none}
.home-mockup .hp-proj,.home-mockup .hp-review{flex:0 0 calc((100% - 40px)/3);width:auto;scroll-snap-align:start;border-radius:10px;overflow:hidden}
.home-mockup .hp-proj{background:var(--bg);border:0}
.home-mockup .hp-proj>img{width:100%;height:205px;object-fit:cover}
.home-mockup .hp-proj>div{padding:12px 15px}.home-mockup .hp-proj p:first-child{}
.home-mockup .hm-slider-btn{position:absolute;top:42%;z-index:2;display:grid;place-items:center;width:35px;height:35px;border:1px solid var(--button);border-radius:50%;background:var(--card);color:var(--button);cursor:pointer;box-shadow:var(--hm-shadow)}
.home-mockup .hm-prev{left:-17px}.home-mockup .hm-next{right:-17px}
.home-mockup .hm-slider-btn:disabled{opacity:.4;cursor:default}
.home-mockup .hp-review{padding:21px;border:1px solid color-mix(in srgb,var(--border) 25%,transparent);background:color-mix(in srgb,var(--card) 4%,transparent)}
.home-mockup .hp-review p{}
.home-mockup .hp-review>div:first-child{color:var(--button)}
/* Retained kitchen types, all nine styles and all eight differentiators. */
.home-mockup .hp-kitchens .mt-12.grid{margin-top:25px;gap:20px}
.home-mockup .hp-feature{height:310px;border-radius:12px;overflow:hidden;border:0}
.home-mockup .hp-feature>.absolute.bottom-0{background:linear-gradient(transparent,var(--primary));padding:30px 22px 20px}
.home-mockup .hp-feature h3{color:var(--text-on-dark);}
.home-mockup .hp-feature p{color:var(--text-on-dark-body);}
.home-mockup .hp-feature span{color:var(--text-on-dark-body);}
.home-mockup .hp-styles .mt-12.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:30px;overflow:visible}
.home-mockup .hp-style-card{min-width:0;display:flex;flex-direction:column;border-radius:14px;border:1px solid var(--border);background:var(--card);box-shadow:var(--hm-shadow);overflow:hidden}
.home-mockup .hp-style-card>div:first-child{height:auto;aspect-ratio:16/9;flex:none}
.home-mockup .hp-style-card>div:last-child{padding:20px;flex:1}
.home-mockup .hp-style-card h3{}.home-mockup .hp-style-card p{}
.home-mockup main .hp-why{background:var(--card)}
.home-mockup .hp-why .mt-12.grid{margin-top:25px;gap:15px}
.home-mockup .hp-why-card{background:var(--bg);border:1px solid var(--border);padding:20px;border-radius:10px}
.home-mockup .hp-why-card h3{margin-top:14px}.home-mockup .hp-why-card p{}
.home-mockup .hp-why-icon{background:var(--button);width:37px;height:37px;border-radius:9px;color:var(--button-text)}
/* Service areas, original FAQ answers and original final consultation form. */
.home-mockup .hp-areas .grid{gap:50px;align-items:center}
.home-mockup .hp-areas p{}
.home-mockup .hp-cities{gap:8px!important;margin:20px 0}
.home-mockup .hp-cities>div{border:1px solid var(--border);border-radius:999px;padding:6px 9px;gap:6px;background:var(--card)}
.home-mockup .hp-areas a.glass-bg{background:var(--primary);color:var(--text-on-dark)}
.home-mockup .hp-map{height:310px;min-height:310px;border:5px solid var(--card);border-radius:16px;box-shadow:var(--hm-shadow)}
.home-mockup .hp-faq>div{display:grid;grid-template-columns:1fr 1.7fr;column-gap:55px;align-items:start}
.home-mockup .hp-faq>div>p,.home-mockup .hp-faq>div>h2{grid-column:1;text-align:left}
.home-mockup .hp-faq>div>h2{grid-row:2;margin-top:8px}
.home-mockup .hp-faq>div>.grid{display:contents}
.home-mockup .hp-faq-media{grid-column:1;grid-row:3;max-height:225px;border-radius:12px;margin-top:22px;overflow:hidden}
.home-mockup .hp-faq-media img{width:100%;height:225px;object-fit:cover}
.home-mockup .hp-faq>div>.grid>div:last-child{grid-column:2;grid-row:1/5}
.home-mockup .hp-faq-item{padding:0;border:1px solid var(--border);border-radius:10px;background:var(--card);box-shadow:var(--hm-shadow)}
.home-mockup .hp-faq-item summary{padding:13px 16px;cursor:pointer}
.home-mockup .hp-faq-item summary svg{color:var(--button);width:20px;height:20px;flex:none}
.home-mockup .hp-faq-item>p{padding:0 16px 15px;margin:0}
.home-mockup main .hp-cta{background:linear-gradient(90deg,color-mix(in srgb,var(--primary) 94%,transparent),color-mix(in srgb,var(--primary) 82%,transparent)),url('/assets/images/home/kitchen-remodeling-orange-county.avif') center/cover}
.home-mockup .hp-cta>.pointer-events-none{display:none}
.home-mockup .hp-cta>.grid{gap:50px}
.home-mockup .hp-cta h2{}
.home-mockup .hp-cta p,.home-mockup .hp-cta li{}
.home-mockup .hp-cta-form{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:26px;--surface-heading:var(--heading);--surface-text:var(--text);--surface-muted:var(--text-muted)}
.home-mockup .hp-cta-form iframe{min-height:430px}
.home-mockup .hp-cta-form h3{}
.home-mockup .hp-cta-form>p{color:var(--text)}
.home-mockup footer{padding-top:27px;padding-bottom:20px}
.home-mockup footer .site-logo-img{height:55px}
.home-mockup footer>div{max-width:1244px}
.home-mockup footer p,.home-mockup footer a,.home-mockup footer li{}
.home-mockup footer .mt-12{margin-top:20px}.home-mockup footer .mt-4{margin-top:10px}.home-mockup footer .contractor-info-strip{margin-top:20px}
@media(min-width:1024px) and (max-width:1190px){.home-mockup header nav{gap:12px}.home-mockup header .site-logo-img{max-width:175px;height:59px}.home-mockup header nav>a,.home-mockup header .nav-dropdown-trigger{}.home-mockup header>div:first-child>div:last-of-type>a:last-child{padding:10px 12px}}
@media(max-width:1023px){.home-mockup .hm-wrap{width:calc(100% - 48px)}.home-mockup .hp-intro-copy h2{}.home-mockup .hp-steps{gap:17px}.home-mockup .hp-step p.font-semibold{}.home-mockup .hp-proj>img{height:155px}.home-mockup .hp-styles .mt-12.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.home-mockup .hp-areas .grid{gap:30px}.home-mockup .hp-cities{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:639px){
 .home-mockup main{padding-top:74px}.home-mockup .hm-wrap{width:calc(100% - 36px)}
 body.home-mockup>header>div:first-child{min-height:74px;padding:7px 18px}.home-mockup header .site-logo-img{height:60px;max-width:185px}.home-mockup .vanilla-mobile-menu{max-height:calc(100dvh - 74px)}
 .home-mockup main .hp-sec{padding:30px 0}.home-mockup main h2{}.home-mockup main p{}
 .home-mockup main .hp-hero{min-height:570px;padding:36px 0 45px}.home-mockup .hp-hero>img{object-position:64% center}.home-mockup .hp-hero>div.absolute:nth-child(2){background:linear-gradient(90deg,color-mix(in srgb,var(--primary) 95%,transparent),color-mix(in srgb,var(--primary) 68%,transparent))}.home-mockup .hp-hero h1{max-width:350px}.home-mockup .hp-hero-inner>p{max-width:345px}.home-mockup .hp-eyebrow-chip{}
 .home-mockup .hp-hero-ctas{display:grid;justify-items:start;gap:10px}.home-mockup main a.rounded-full{padding:11px 19px}.home-mockup .hp-trust{gap:9px;margin-top:27px}.home-mockup .hp-trust>div{display:grid;align-content:start;gap:8px;padding-right:8px;}.home-mockup .hp-trust svg{width:22px;height:22px}.home-mockup .hp-hero::after{width:460px;right:-200px;bottom:-213px}
 .home-mockup .hp-form-card{display:block;padding:20px}.home-mockup .hp-form-card>.ghl-survey-embed{margin-top:15px}.home-mockup .hp-form-card h3{}
 .home-mockup .hp-services .mt-14.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.home-mockup .hp-svc-card>div:first-child{height:110px}.home-mockup .hp-svc-card>div:last-child{padding:12px}.home-mockup .hp-svc-card h3{}.home-mockup .hp-svc-card p{}.home-mockup .hp-svc-card span{}
 .home-mockup .hp-extra>.grid{grid-template-columns:1fr}.home-mockup .hp-extra-card{display:grid;grid-template-columns:1fr 1.5fr}.home-mockup .hp-extra-card>div:first-child{height:100%;min-height:140px}
 .home-mockup .hp-steps{grid-template-columns:1fr;gap:22px;max-width:420px;margin:auto}.home-mockup .hp-step{flex-direction:row;align-items:start;text-align:left;gap:16px}.home-mockup .hp-step p.font-semibold{}.home-mockup .hp-step p.text-sm{}.home-mockup .hp-step>div:first-child{width:43px;height:43px;flex:none}
 .home-mockup .hp-proj,.home-mockup .hp-review{flex-basis:88%}.home-mockup .hm-track{gap:14px}.home-mockup .hp-proj>img{height:195px}.home-mockup .hm-slider-btn{width:30px;height:30px;}.home-mockup .hm-prev{left:-12px}.home-mockup .hm-next{right:-12px}
 .home-mockup .hp-feature{height:290px}.home-mockup .hp-styles .mt-12.grid{grid-template-columns:minmax(0,1fr);gap:20px}.home-mockup .hp-style-card p{}.home-mockup .hp-why .mt-12.grid{grid-template-columns:1fr}.home-mockup .hp-why-card{padding:17px}
 .home-mockup .hp-map{height:260px;min-height:260px}.home-mockup .hp-cities>div{padding:6px}
 .home-mockup .hp-faq>div{display:block}.home-mockup .hp-faq-media{height:180px;margin:20px 0}.home-mockup .hp-faq-media img{height:180px}.home-mockup .hp-faq-item summary{padding:12px}.home-mockup .hp-faq-item>p{padding:0 12px 12px}
 .home-mockup .hp-cta h2{}.home-mockup .hp-cta-form{padding:20px}.home-mockup .hp-cta>.grid{gap:25px}.home-mockup footer .grid{gap:24px}.home-mockup footer .site-logo-img{max-width:210px}
}
@media(prefers-reduced-motion:reduce){.home-mockup .hm-track{scroll-behavior:auto}.home-mockup main *{transition:none!important;animation:none!important}}
/* Preserve dark-band foregrounds despite legacy light-card utility classes. */
.home-mockup .hp-step,.home-mockup .hp-review{--surface-heading:var(--text-on-dark);--surface-text:var(--text-on-dark-body);--surface-muted:var(--text-on-dark-muted);--surface-accent:var(--button);color:var(--text-on-dark-body)}
.home-mockup .hp-step>div:first-child{background:var(--button)!important;color:var(--button-text)!important}

/* Slider arrows are icons; content uses the shared site typography. */
.home-mockup .hm-slider-btn{font-size:28px;line-height:1}
/* Why choose us: spacious feature rows with individual line icons. */
.home-mockup main .hp-why{padding:64px 0;background:var(--bg)}
.home-mockup .hp-why>div>.text-center{max-width:900px}
.home-mockup .hp-why>div>.text-center>p{display:flex;align-items:center;justify-content:center;gap:12px}
.home-mockup .hp-why>div>.text-center>p::before,.home-mockup .hp-why>div>.text-center>p::after{content:'';height:1px;width:36px;background:var(--border)}
.home-mockup .hp-why .mt-12.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:36px}
.home-mockup .hp-why-card{display:grid;grid-template-columns:56px minmax(0,1fr);column-gap:20px;align-content:start;position:relative;padding:26px;border:1px solid var(--border);border-radius:18px;background:var(--card);box-shadow:0 4px 18px color-mix(in srgb,var(--primary) 4%,transparent);transition:box-shadow .2s,border-color .2s}
.home-mockup .hp-why-card::before{content:'';position:absolute;left:0;top:28px;bottom:28px;width:3px;background:var(--button);border-radius:0 3px 3px 0;opacity:.65}
.home-mockup .hp-why-icon{grid-column:1;grid-row:1/3;width:56px;height:56px;border-radius:16px;background:var(--bg)!important;color:var(--button)!important;border:1px solid var(--border)}
.home-mockup .hp-why-icon svg{width:26px;height:26px;color:inherit}
.home-mockup .hp-why-card h3{grid-column:2;margin:1px 0 0}
.home-mockup .hp-why-card p{grid-column:2;margin:9px 0 0}
@media(hover:hover){.home-mockup .hp-why-card:hover{border-color:var(--button);box-shadow:0 8px 24px color-mix(in srgb,var(--primary) 9%,transparent)}}
@media(max-width:767px){.home-mockup main .hp-why{padding:40px 0}.home-mockup .hp-why .mt-12.grid{grid-template-columns:minmax(0,1fr);gap:16px;margin-top:26px}.home-mockup .hp-why-card{grid-template-columns:46px minmax(0,1fr);column-gap:16px;padding:21px}.home-mockup .hp-why-icon{width:46px;height:46px;border-radius:13px}.home-mockup .hp-why-icon svg{width:24px;height:24px}}
