/* Local quote journey — 2026-10-23 */
.hero{min-height:720px;min-height:min(780px,100svh)}
.hero-content{max-width:100%;padding-top:145px;padding-bottom:100px}
.hero-title{max-width:900px;font-size:clamp(2.5rem,5.1vw,4.4rem)}
.hero-subtitle{max-width:570px;margin-bottom:26px}
.hero-reassurance{font-size:13px;line-height:1.6;color:rgba(255,255,255,.85);margin-top:16px;max-width:480px}
.hero-actions .btn{white-space:normal;text-align:center;justify-content:center}
.scroll-cue{display:none}
.local-strip{margin-top:0;padding:0;background:var(--white);border-bottom:1px solid var(--paper-line)}
.local-strip-inner{display:flex;justify-content:space-between;align-items:center;gap:32px;padding:30px 0}
.local-strip .eyebrow{margin-bottom:8px}
.local-strip h2{font-size:clamp(1.2rem,2vw,1.6rem);margin-bottom:8px}
.local-strip p{font-size:14px;line-height:1.6;color:var(--ink-soft)}
.products{padding-top:80px;padding-bottom:80px}
.products .section-head{margin-bottom:32px}
.products .product-grid{grid-auto-rows:240px}
.products .product-card{aspect-ratio:auto}
.quote-panel{display:flex;align-items:center;justify-content:space-between;gap:28px;background:var(--white);border:1px solid var(--paper-line);border-radius:var(--radius);padding:30px;margin-top:28px}
.quote-panel h3{font-size:1.4rem;margin-bottom:8px}
.quote-panel p{color:var(--ink-soft);font-size:14px;line-height:1.7;max-width:560px}
.quote-process{padding:80px 0;background:var(--paper)}
.quote-process .section-head{margin-bottom:32px}
.quote-steps{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;margin:0 0 32px;padding:0}
.quote-steps li{border-top:1px solid var(--paper-line);padding-top:22px}
.step-number{display:block;color:var(--accent-dark);font-family:var(--font-serif);margin-bottom:14px;font-size:1.2rem}
.quote-steps h3{font-size:1.25rem;margin-bottom:10px}
.quote-steps p{font-size:14px;line-height:1.7;color:var(--ink-soft)}
.about{padding:80px 0}.about-grid{gap:48px}.about-media img{aspect-ratio:1/1}
.contact-direct{margin-top:24px}.direct-note{font-size:13px;color:var(--ink-soft);margin-top:10px;line-height:1.6}
.contact-form h3{margin-bottom:12px}.form-intro{font-size:13px;line-height:1.6;color:var(--ink-soft);margin-bottom:24px}
section[id]{scroll-margin-top:90px}
@media(max-width:980px){.local-strip-inner,.quote-panel{align-items:flex-start;flex-direction:column;gap:20px}.quote-steps{gap:24px}}
@media(max-width:760px){
.hero{min-height:0}.hero-content{padding-top:122px;padding-bottom:48px}
.hero-title{font-size:clamp(2.1rem,8vw,3.2rem);margin-bottom:20px}
.hero-subtitle{font-size:16px}.hero-actions{align-items:stretch;max-width:420px;gap:12px}
.hero-actions .btn{width:100%;font-size:14px;padding:14px 18px}
.hero-reassurance{font-size:12px}.local-strip-inner{padding:24px 0}
.local-strip .btn{white-space:normal}
.products,.quote-process,.about{padding:56px 0}
.products .product-grid{grid-auto-rows:280px;gap:16px}
.quote-panel{padding:24px}.quote-panel .btn{width:100%;white-space:normal;justify-content:center}
.quote-steps{grid-template-columns:1fr;gap:24px}
.quote-process>.wrap>.btn,.contact-direct{white-space:normal;justify-content:center;text-align:center}
.contact-form{padding:24px}.contact-direct{width:100%}
}

/* Keep the logo visible and navigation comfortable on tablets. */
.site-header .brand{flex:0 0 108px}
.site-header .brand img{width:108px;height:auto}
@media(max-width:1100px){
.site-header .main-nav{display:none}
.site-header .nav-toggle{display:flex}
.site-header .header-actions{margin-left:auto}
.site-header .main-nav.open{display:flex;flex-direction:column;align-items:flex-start;position:fixed;top:0;right:0;height:100dvh;width:min(78vw,320px);background:var(--dark);padding:100px 36px 40px;gap:26px;z-index:600;box-shadow:-20px 0 50px #0005}
.site-header .main-nav.open .nav-link{color:var(--white);font-size:16px;text-align:left}
.site-header .nav-backdrop{display:none;position:fixed;inset:0;background:#0006;z-index:590}
.site-header .nav-backdrop.open{display:block}
}
@media(max-width:800px){
.hero-content{padding-top:122px;padding-bottom:48px}
.hero{min-height:0}
.hero-title{font-size:clamp(2.1rem,7vw,3.2rem)}
.hero-actions{align-items:stretch;max-width:420px}
.hero-actions .btn{width:100%;font-size:14px}
}

.hero{padding:0}

/* Environment-specific WhatsApp requests */
.environment-quotes{margin-top:28px}
.environment-quotes p{font-size:14px;color:var(--ink-soft);margin-bottom:12px}
.environment-quote-links{display:flex;flex-wrap:wrap;gap:10px}
.environment-quote{display:inline-flex;align-items:center;gap:10px;padding:12px 18px;border:1px solid var(--paper-line);border-radius:999px;background:var(--white);font-size:14px;font-weight:600;color:var(--ink);transition:border-color .2s}
.environment-quote:hover{border-color:var(--accent);color:var(--accent-dark)}
.gallery-quote{margin-top:20px;justify-content:center;white-space:normal;text-align:center}
.field select{width:100%;font:inherit;font-size:14.5px;padding:13px 15px;border:1px solid var(--paper-line);border-radius:var(--radius-sm);background:var(--paper);color:var(--ink)}
.field select:focus{outline:2px solid var(--accent);outline-offset:2px}
@media(max-width:760px){.lightbox-stage img{max-height:58svh}.gallery-quote{max-width:100%;padding:13px 18px;font-size:14px}.environment-quote{font-size:13px;padding:11px 15px}}