/* ⚠️ KNOWN WORKING (2026-05-22) — läs innan du pillar:
   - Kör INTE *,*::before,*::after{min-width:0} — krossar inputfält
   - Kör INTE overflow-x:hidden på html,body utan att testa formuläret
   - input,select,textarea SKA ha pointer-events:auto; user-select:auto */
:root{
  --ink:#070707;
  --muted:#5d5a54;
  --line:#171717;
  --paper:#fbfaf7;
  --soft:#ede8df;
  --accent:#bddbfb;
  --accent-dark:#8ab8e7;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,Arial,sans-serif;line-height:1.5}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
.site-header{position:fixed;z-index:10;top:0;left:0;right:0;display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:28px;padding:22px clamp(18px,4vw,58px);color:white;background:linear-gradient(to bottom,rgba(0,0,0,.42),rgba(0,0,0,0));transition:.25s ease}
.brand img{width:82px;height:82px;object-fit:contain;border-radius:50%;mix-blend-mode:screen;filter:contrast(1.15)}
.main-nav{display:flex;justify-content:center;gap:44px;font-family:'Playfair Display',Georgia,serif;font-size:17px;font-weight:600;text-shadow:0 1px 12px rgba(0,0,0,.5)}
.main-nav a,.socials a{opacity:.95}.main-nav a:hover,.socials a:hover{opacity:.7}
.socials{display:flex;gap:24px;font-weight:700;align-items:center}.socials a{font-size:15px}.nav-cta,.primary-btn{background:var(--accent);color:#111;padding:17px 32px;text-transform:uppercase;font-size:13px;letter-spacing:.08em;font-weight:700;border:0}.nav-cta:hover,.primary-btn:hover{background:var(--accent-dark)}
.hero{position:relative;min-height:720px;display:grid;place-items:center;text-align:center;overflow:hidden;color:white}.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(rgba(0,0,0,.16),rgba(0,0,0,.33)),radial-gradient(circle at center,rgba(0,0,0,.12),rgba(0,0,0,.42))}.hero-content{position:relative;max-width:900px;padding:140px 22px 70px}.eyebrow,.kicker{text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:700}.hero h1{font-family:'Playfair Display',Georgia,serif;font-size:clamp(48px,7vw,82px);line-height:1.02;margin:22px 0 20px;font-weight:500}.hero-copy{font-family:'Playfair Display',Georgia,serif;font-size:18px;max-width:780px;margin:0 auto 46px;text-shadow:0 1px 15px rgba(0,0,0,.5)}
.section-pad{max-width:var(--max);margin:auto;padding:104px 24px}.intro,.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:62px;align-items:center}.intro h2,.feature-grid h2,.quote h2{font-size:clamp(38px,5vw,66px);letter-spacing:-.05em;line-height:.98;margin:15px 0 22px}.intro p,.quote p,.feature-card li{color:var(--muted);font-size:17px}.intro-image img,.image-card img{height:520px;width:100%;object-fit:cover}.kicker{color:#82786b}
.services{text-align:center;max-width:980px}.services h2{font-size:clamp(48px,7vw,82px);letter-spacing:-.06em;line-height:1;margin:0 0 44px;font-weight:800}.service-list{border-top:1.5px solid var(--line)}.service-item{border-bottom:1.5px solid var(--line)}.service-toggle{width:100%;background:transparent;border:0;padding:18px 10px;display:flex;justify-content:center;gap:28px;align-items:center;font-family:'Playfair Display',Georgia,serif;font-size:34px;cursor:pointer}.service-item.open .service-toggle{outline:1.5px solid var(--line);outline-offset:-6px;padding-block:22px}.symbol{position:absolute;right:calc(50% - 440px);font-family:Inter,sans-serif;font-size:22px;font-weight:300}.service-body{max-height:0;overflow:hidden;transition:max-height .25s ease}.service-body p{max-width:560px;margin:0 auto 28px;font-family:'Playfair Display',Georgia,serif;font-size:16px}.service-item.open .service-body{max-height:180px}.wide-btn{display:block;background:#000;color:white;margin-top:12px;padding:20px;font-weight:600}.wide-btn:hover{background:#222}
.feature-grid{padding-top:60px}.feature-card{min-height:520px}.text-card{background:#fff;padding:70px 58px;border:1px solid #e7e1d7}.text-card ul{padding-left:20px;margin:28px 0 0}.text-card li{margin-bottom:14px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:0 12px 20px}.gallery img{width:100%;height:410px;object-fit:cover}.quote{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start}.quote-form{background:#fff;border:1px solid #e4ded2;padding:34px;display:grid;gap:18px;box-shadow:0 24px 70px rgba(0,0,0,.06);position:relative;z-index:1;pointer-events:auto}label{font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:800}input,select,textarea{margin-top:8px;width:100%;min-width:0;padding:15px 14px;border:1px solid #d7d0c5;background:#fbfaf7;font:inherit;text-transform:none;letter-spacing:0;position:relative;z-index:1;pointer-events:auto;user-select:auto}textarea{resize:vertical}.quote-form button{background:#000;color:white;border:0;padding:18px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;cursor:pointer}.footer{border-top:1px solid #ded8ce;padding:38px clamp(22px,5vw,70px);display:flex;justify-content:space-between;gap:24px;color:#514d46}.footer p{margin:.25rem 0 0}
@media (max-width:900px){.site-header{grid-template-columns:auto auto;gap:14px;background:rgba(0,0,0,.35);padding:14px 18px}.brand img{width:64px;height:64px}.main-nav{order:3;grid-column:1/-1;justify-content:flex-start;gap:18px;overflow-x:auto;font-size:15px}.socials{display:none}.nav-cta{padding:13px 15px;font-size:11px}.hero{min-height:640px}.intro,.feature-grid,.quote{grid-template-columns:1fr;gap:34px}.intro-image img,.image-card img,.feature-card{height:auto;min-height:0}.services h2{font-size:48px}.service-toggle{font-size:27px}.symbol{position:static}.gallery{grid-template-columns:1fr}.gallery img{height:310px}.section-pad{padding:72px 20px}.text-card{padding:40px 24px}.footer{display:block}}
.service-hero{position:relative;min-height:520px;display:grid;align-items:center;overflow:hidden;color:#fff}.service-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.service-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.42),rgba(0,0,0,.2),rgba(0,0,0,.46))}.service-hero-content{position:relative;display:grid;grid-template-columns:1.1fr .8fr;gap:64px;align-items:center;max-width:var(--max);margin:0 auto;padding:150px 24px 80px}.service-hero h1{font-size:clamp(54px,8vw,92px);font-weight:400;letter-spacing:-.06em;margin:0}.service-hero p{font-family:'Playfair Display',Georgia,serif;font-size:18px;line-height:1.45;text-shadow:0 1px 14px rgba(0,0,0,.55)}.offer{display:grid;grid-template-columns:1.45fr .55fr;gap:70px;align-items:start}.offer h2,.process h2{font-size:clamp(54px,7vw,84px);letter-spacing:-.07em;line-height:.95;margin:0 0 24px}.offer p{max-width:650px;color:var(--muted);font-family:'Playfair Display',Georgia,serif;font-size:18px}.offer img{height:210px;width:100%;object-fit:cover;border-radius:18px}.offer-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding-top:0}.offer-cards article{background:#fff;border:1px solid #e7e1d7;padding:34px}.offer-cards h3{font-size:22px;margin:0 0 14px}.offer-cards p{color:var(--muted);margin:0}.process{padding-top:40px}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:54px}.process article span{display:block;width:58px;height:78px;background:#1476ad;border-radius:0 0 50px 50px;margin-bottom:26px}.process article:nth-child(2) span{border-radius:50px 50px 0 0;background:#8bbbe5}.process article:nth-child(3) span{clip-path:polygon(18% 0,82% 0,62% 100%,38% 100%);background:#e7e5ea}.process article:nth-child(4) span{border-radius:50%;height:78px;background:#0f79b5}.process h3{font-size:18px;line-height:1.2;margin:0 0 18px}.process p{font-family:'Playfair Display',Georgia,serif;color:#2e2a24;font-size:15px}
@media (max-width:900px){.service-hero-content,.offer{grid-template-columns:1fr}.service-hero-content{gap:22px}.offer-cards,.process-grid{grid-template-columns:1fr}.process-grid{gap:26px}.offer h2,.process h2{font-size:48px}}
/* CleanCare logo fix: uses the visible preview source until a transparent PNG/SVG is available. */
.site-header{grid-template-columns:auto 1fr auto;}
.brand-crop{width:94px;height:94px;border-radius:50%;display:block;background-image:url('assets/logo-preview-source.jpg');background-size:250px auto;background-position:-74px -24px;background-repeat:no-repeat;filter:drop-shadow(0 8px 18px rgba(0,0,0,.38));justify-self:end;}
.brand-crop img{display:none}.socials{display:none}.nav-cta{justify-self:end}.main-nav{justify-self:center}.site-header .brand{order:3}.site-header .nav-cta{order:2}.site-header .main-nav{order:1}
@media (max-width:900px){.site-header{grid-template-columns:1fr auto;}.brand-crop{width:72px;height:72px;background-size:192px auto;background-position:-57px -18px}.site-header .brand{order:2}.site-header .nav-cta{order:1;justify-self:start}.site-header .main-nav{order:3;grid-column:1/-1}}

/* v4 refinements: cleaner spacing + real transparent logo top-left */
.site-header{grid-template-columns:auto 1fr auto !important;}
.site-header .brand{order:1 !important;justify-self:start !important;}
.site-header .main-nav{order:2 !important;justify-self:center !important;}
.site-header .nav-cta{order:3 !important;justify-self:end !important;}
.brand{width:104px;height:104px;display:block;}
.brand img{width:100% !important;height:100% !important;object-fit:contain !important;border-radius:0 !important;mix-blend-mode:normal !important;filter:drop-shadow(0 8px 22px rgba(0,0,0,.45)) !important;}
.main-nav{letter-spacing:.055em;gap:50px;}
.nav-cta,.primary-btn,.wide-btn,.quote-form button{letter-spacing:.13em;}
.eyebrow,.kicker,label{letter-spacing:.18em;}
.hero h1,.services h2,.intro h2,.feature-grid h2,.quote h2,.service-hero h1,.offer h2,.process h2{letter-spacing:-.025em;}
.hero-copy,.service-body p,.service-hero p,.offer p,.process p{letter-spacing:.018em;}
@media (max-width:900px){.site-header{grid-template-columns:auto auto !important}.brand{width:76px;height:76px}.site-header .brand{order:1 !important}.site-header .nav-cta{order:2 !important}.site-header .main-nav{order:3 !important;grid-column:1/-1 !important;letter-spacing:.035em;gap:22px}}
/* v5 Vasaglansen-inspired structure, CleanCare branded */
.split-hero-content{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;text-align:left;align-items:end;max-width:1180px}.split-hero-content h1{font-size:clamp(48px,6.5vw,78px)}.hero-side-copy{align-self:end;padding-bottom:18px}.hero-side-copy p{font-family:'Playfair Display',Georgia,serif;font-size:18px;line-height:1.55;margin:0 0 34px;text-shadow:0 1px 14px rgba(0,0,0,.45)}.intro-vasa{grid-template-columns:1.2fr .8fr}.framed-image img{border-radius:26px;box-shadow:0 30px 80px rgba(0,0,0,.12)}.section-heading{max-width:820px;margin-bottom:42px}.section-heading.centered{margin-left:auto;margin-right:auto;text-align:center}.section-heading h2,.sustain h2,.reasons h2,.areas h2,.faq h2{font-size:clamp(42px,6vw,74px);line-height:.96;letter-spacing:-.025em;margin:14px 0 0}.service-cards{max-width:1240px}.cards-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.cards-grid article{background:#fff;border:1px solid #e5ded2;padding:16px 16px 24px;min-height:100%;transition:.2s ease}.cards-grid article:hover{transform:translateY(-4px);box-shadow:0 22px 60px rgba(0,0,0,.08)}.cards-grid img{width:100%;height:210px;object-fit:cover;margin-bottom:22px}.cards-grid h3{font-size:23px;margin:0 0 10px;letter-spacing:-.01em}.cards-grid p{color:var(--muted);font-size:15px;margin:0 0 22px}.cards-grid a{font-weight:800;text-transform:uppercase;font-size:12px;letter-spacing:.14em;border-bottom:1px solid #111;padding-bottom:4px}.sustain{display:grid;grid-template-columns:.9fr 1.1fr;gap:78px;border-top:1px solid #ded8ce;border-bottom:1px solid #ded8ce}.sustain-list p{font-family:'Playfair Display',Georgia,serif;font-size:20px;color:#25221d;margin-top:0}.sustain-list ul{display:grid;grid-template-columns:1fr 1fr;gap:14px 24px;margin:30px 0 0;padding:0;list-style:none}.sustain-list li{border-top:1px solid #cfc7ba;padding-top:14px;color:var(--muted);font-weight:600}.process-grid-three{grid-template-columns:repeat(3,1fr)}.reasons-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.reasons-grid article{background:#0b0b0b;color:#fff;padding:42px 34px;min-height:290px}.reasons-grid strong{font-family:'Playfair Display',Georgia,serif;font-size:54px;color:var(--accent)}.reasons-grid h3{font-size:24px;margin:24px 0 12px}.reasons-grid p{color:#d7d2ca;margin:0}.areas{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}.areas img{height:520px;width:100%;object-fit:cover;border-radius:28px}.areas p{font-family:'Playfair Display',Georgia,serif;font-size:19px;color:var(--muted);max-width:640px}.dark-btn{display:inline-block;background:#000;color:#fff;margin-top:24px}.faq-list{border-top:1.5px solid #111}.faq details{border-bottom:1.5px solid #111;padding:24px 0}.faq summary{cursor:pointer;font-size:24px;font-family:'Playfair Display',Georgia,serif}.faq p{color:var(--muted);max-width:760px}.hero-vasa .hero-shade{background:linear-gradient(90deg,rgba(0,0,0,.52),rgba(0,0,0,.18),rgba(0,0,0,.58))}
@media (max-width:1050px){.cards-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:900px){.split-hero-content,.sustain,.areas,.intro-vasa{grid-template-columns:1fr}.split-hero-content{gap:24px;text-align:left}.cards-grid,.reasons-grid,.process-grid-three{grid-template-columns:1fr}.sustain-list ul{grid-template-columns:1fr}.areas img{height:340px}.cards-grid img{height:240px}.hero-side-copy{padding-bottom:0}}

/* v7 service-page polish: centered nav, darker heroes, cleaner typography */
.site-header{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  min-height:112px;
}
.site-header .brand{position:relative;z-index:2;flex:0 0 auto;}
.site-header .main-nav{
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  transform:translate(-50%,-50%) !important;
  justify-self:auto !important;
  order:initial !important;
  display:flex !important;
  gap:54px !important;
  font-family:Inter,Arial,sans-serif !important;
  font-size:14px !important;
  font-weight:800 !important;
  letter-spacing:.075em !important;
  text-transform:none;
  white-space:nowrap;
}
.site-header .nav-cta{position:relative;z-index:2;flex:0 0 auto;}
.service-hero-polished{min-height:560px;}
.service-hero-polished > img{filter:brightness(.68) contrast(1.05) saturate(.92);}
.service-hero-polished .service-hero-shade{
  background:linear-gradient(90deg,rgba(0,0,0,.68),rgba(0,0,0,.34),rgba(0,0,0,.76)) !important;
}
.service-hero-content{
  grid-template-columns:1.15fr .85fr !important;
  align-items:center !important;
  gap:70px !important;
  width:100%;
}
.service-title-block{display:flex;flex-direction:column;align-items:flex-start;gap:42px;}
.service-title-block h1,
.service-hero h1{
  font-family:Inter,Arial,sans-serif !important;
  font-weight:500 !important;
  letter-spacing:.018em !important;
  line-height:1.02 !important;
  font-size:clamp(52px,7vw,86px) !important;
}
.service-intro-block{align-self:center;max-width:390px;}
.service-intro-block p,
.service-hero p{
  font-family:Inter,Arial,sans-serif !important;
  font-size:16px !important;
  line-height:1.65 !important;
  letter-spacing:.035em !important;
  font-weight:650 !important;
  margin:0 !important;
  text-shadow:0 1px 18px rgba(0,0,0,.7) !important;
}
.primary-btn,.nav-cta,.fast-quote-strip a{font-family:Inter,Arial,sans-serif !important;letter-spacing:.16em !important;}
.service-offer-clean{
  display:block !important;
  max-width:980px !important;
  padding-top:92px !important;
  padding-bottom:46px !important;
}
.service-offer-clean h2{max-width:880px;letter-spacing:.005em !important;font-family:Inter,Arial,sans-serif !important;font-weight:800 !important;}
.service-offer-clean p{font-family:Inter,Arial,sans-serif !important;letter-spacing:.025em !important;line-height:1.75 !important;max-width:720px;}
.offer img{border-radius:0 !important;display:none !important;}
.framed-image img,.areas img,.cards-grid img{border-radius:0 !important;}
.offer-cards article{border-radius:0 !important;}
.offer-cards h3,.process h3,.service-detail-band h2{font-family:Inter,Arial,sans-serif !important;letter-spacing:.015em !important;}
.offer-cards p,.process p,.service-detail-band li{font-family:Inter,Arial,sans-serif !important;letter-spacing:.025em !important;line-height:1.7 !important;}
.service-detail-band{display:grid;grid-template-columns:1fr 1fr;gap:70px;border-top:1px solid #ded8ce;border-bottom:1px solid #ded8ce;}
.service-detail-band h2{font-size:clamp(38px,5vw,62px);line-height:1.02;margin:14px 0 0;}
.service-detail-band ul{list-style:none;margin:0;padding:0;display:grid;gap:16px;align-content:center;}
.service-detail-band li{border-top:1px solid #cfc7ba;padding:16px 0;font-weight:650;color:#3b3832;}
.fast-quote-strip{display:flex;align-items:center;justify-content:space-between;gap:24px;background:#0a0a0a;color:white;padding:28px clamp(22px,5vw,70px);}
.fast-quote-strip p{margin:0;font-size:22px;font-family:Inter,Arial,sans-serif;font-weight:750;letter-spacing:.025em;}
.fast-quote-strip a{background:var(--accent);color:#111;padding:16px 26px;text-transform:uppercase;font-weight:850;font-size:12px;white-space:nowrap;}
@media (max-width:900px){
  .site-header{min-height:106px;display:grid !important;grid-template-columns:auto auto !important;}
  .site-header .main-nav{position:static !important;transform:none !important;grid-column:1/-1 !important;order:3 !important;overflow-x:auto;width:100%;justify-content:flex-start;font-size:12px !important;gap:20px !important;}
  .service-hero-content{grid-template-columns:1fr !important;gap:26px !important;padding-top:145px !important;}
  .service-title-block{gap:26px;}
  .service-intro-block{max-width:100%;}
  .service-title-block h1,.service-hero h1{font-size:clamp(42px,13vw,62px) !important;}
  .service-detail-band{grid-template-columns:1fr;gap:28px;}
  .fast-quote-strip{display:grid;}
}

/* v8 FAQ copy polish */
.faq .section-heading{max-width:900px;}
.faq-intro{font-family:Inter,Arial,sans-serif;font-size:18px;line-height:1.7;letter-spacing:.025em;color:var(--muted);max-width:760px;margin:22px 0 0;}
.faq summary{font-family:Inter,Arial,sans-serif !important;font-weight:800 !important;letter-spacing:.015em !important;}
.faq p{font-family:Inter,Arial,sans-serif !important;letter-spacing:.02em !important;line-height:1.7 !important;}

.hidden-field{display:none !important;}

.thank-you-page{min-height:100vh;background:#080808;color:white;display:grid;place-items:center;padding:40px 24px;text-align:center;position:relative}.thank-you-page section{max-width:760px}.thank-you-page h1{font-family:Inter,Arial,sans-serif;font-size:clamp(42px,7vw,78px);line-height:1.02;letter-spacing:.01em;margin:18px 0}.thank-you-page p{font-size:18px;color:#ddd;margin:0 0 34px}.thank-brand{position:absolute;top:26px;left:36px}

/* v12 hide Netlify honeypot aggressively */
.hidden-field,.hidden-field *{display:none !important;visibility:hidden !important;height:0 !important;max-height:0 !important;overflow:hidden !important;margin:0 !important;padding:0 !important;border:0 !important;position:absolute !important;left:-9999px !important;}

/* v13 center service offer intro */
.service-offer-clean{
  text-align:center !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
.service-offer-clean > div{
  max-width:760px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
.service-offer-clean .kicker,
.service-offer-clean h2,
.service-offer-clean p{
  text-align:center !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
.service-offer-clean h2{
  max-width:760px !important;
}
.service-offer-clean p{
  max-width:680px !important;
}

/* v14 process section grid alignment */
.process{
  max-width:1040px !important;
  overflow:hidden !important;
  text-align:left !important;
}
.process > .kicker{
  display:block !important;
  text-align:left !important;
  margin-left:0 !important;
  padding-left:0 !important;
}
.process > h2{
  max-width:860px !important;
  font-size:clamp(48px,7.2vw,86px) !important;
  line-height:.98 !important;
  letter-spacing:-.012em !important;
  margin-left:0 !important;
  text-align:left !important;
  overflow-wrap:normal !important;
}
.process-grid,
.process-grid-three{
  margin-top:54px !important;
  align-items:start !important;
}
.process article{
  min-width:0 !important;
}
@media (max-width:900px){
  .process > h2{font-size:clamp(42px,12vw,62px) !important;max-width:100% !important;}
  .process-grid,.process-grid-three{margin-top:34px !important;}
}

/* v15 align service hero intro with title top */
.service-hero-polished .service-hero-content{
  align-items:start !important;
  padding-top:175px !important;
}
.service-title-block,
.service-intro-block{
  align-self:start !important;
}
.service-intro-block{
  padding-top:22px !important;
}
@media (max-width:900px){
  .service-hero-polished .service-hero-content{padding-top:145px !important;}
  .service-intro-block{padding-top:0 !important;}
}


/* v16 mobile hero cleanup */
.hero-mobile-copy{display:none;}
@media (max-width:900px){
  .hero{min-height:760px !important;place-items:start !important;}
  .hero-content.split-hero-content{padding:185px 26px 72px !important;display:block !important;}
  .split-hero-content h1{font-size:clamp(48px,14vw,70px) !important;line-height:.98 !important;margin:22px 0 28px !important;letter-spacing:-.025em !important;}
  .hero-side-copy{padding-bottom:0 !important;max-width:100% !important;}
  .hero-desktop-copy{display:none !important;}
  .hero-mobile-copy{display:block !important;font-size:22px !important;line-height:1.35 !important;margin:0 0 34px !important;max-width:430px !important;}
  .hero .eyebrow{font-size:12px !important;line-height:1.4 !important;letter-spacing:.20em !important;}
  .hero .primary-btn{display:inline-block !important;padding:19px 34px !important;}
}
@media (max-width:430px){
  .hero{min-height:735px !important;}
  .hero-content.split-hero-content{padding-top:178px !important;}
  .split-hero-content h1{font-size:clamp(46px,13vw,58px) !important;}
  .hero-mobile-copy{font-size:20px !important;}
}

/* v17 requested copy + service typography consistency */
.service-title-block h1,
.service-hero h1{
  font-family:'Playfair Display',Georgia,serif !important;
  font-weight:500 !important;
  letter-spacing:-.018em !important;
}
.service-intro-block p,
.service-hero p{
  font-family:'Playfair Display',Georgia,serif !important;
  font-weight:600 !important;
  letter-spacing:.012em !important;
}
@media (max-width:1100px){
  .site-header .main-nav{gap:30px !important;font-size:12px !important;}
}
@media (max-width:900px){
  .site-header .main-nav{gap:18px !important;font-size:12px !important;}
}

/* v18 premium nav typography */
.site-header .main-nav{
  font-family:'Playfair Display',Georgia,serif !important;
  font-weight:600 !important;
  letter-spacing:.035em !important;
  font-size:16px !important;
}
@media (max-width:900px){
  .site-header .main-nav{font-size:15px !important;letter-spacing:.025em !important;}
}

/* v19 darker homepage hero for better text contrast */
.hero-vasa .hero-bg{
  filter:brightness(.62) contrast(1.06) saturate(.92) !important;
}
.hero-vasa .hero-shade{
  background:linear-gradient(90deg,rgba(0,0,0,.70),rgba(0,0,0,.38),rgba(0,0,0,.74)),radial-gradient(circle at center,rgba(0,0,0,.12),rgba(0,0,0,.48)) !important;
}
@media (max-width:900px){
  .hero-vasa .hero-bg{filter:brightness(.56) contrast(1.08) saturate(.9) !important;}
  .hero-vasa .hero-shade{background:linear-gradient(180deg,rgba(0,0,0,.64),rgba(0,0,0,.38),rgba(0,0,0,.76)) !important;}
}

/* v20 rebalance homepage hero: visible image + readable text */
.hero-vasa .hero-bg{
  filter:brightness(.76) contrast(1.04) saturate(.96) !important;
}
.hero-vasa .hero-shade{
  background:linear-gradient(90deg,rgba(0,0,0,.54),rgba(0,0,0,.22),rgba(0,0,0,.58)),radial-gradient(circle at center,rgba(0,0,0,.04),rgba(0,0,0,.32)) !important;
}
@media (max-width:900px){
  .hero-vasa .hero-bg{filter:brightness(.70) contrast(1.05) saturate(.95) !important;}
  .hero-vasa .hero-shade{background:linear-gradient(180deg,rgba(0,0,0,.50),rgba(0,0,0,.22),rgba(0,0,0,.58)) !important;}
}

/* v21 mobile sticky header + smaller service mobile text */
@media (max-width:900px){
  .site-header{
    transition:transform .28s ease, background .28s ease !important;
    will-change:transform;
  }
  .site-header.header-hidden{
    transform:translateY(-115%) !important;
  }
  .service-hero-polished{min-height:640px !important;}
  .service-title-block h1,
  .service-hero h1{
    font-size:clamp(38px,12vw,54px) !important;
    line-height:1.02 !important;
  }
  .service-intro-block p,
  .service-hero p{
    font-size:15px !important;
    line-height:1.5 !important;
    letter-spacing:.008em !important;
    font-weight:600 !important;
    max-width:95% !important;
  }
  .service-title-block{gap:22px !important;}
}
@media (max-width:430px){
  .service-hero-polished{min-height:610px !important;}
  .service-title-block h1,
  .service-hero h1{font-size:clamp(36px,11.5vw,48px) !important;}
  .service-intro-block p,
  .service-hero p{font-size:14px !important;line-height:1.45 !important;}
}

/* v22 fix mobile horizontal overflow + service offer heading */
html, body{
  max-width:100% !important;
  overflow-x:hidden !important;
}
*, *::before, *::after{
  min-width:0;
}
.service-offer-clean,
.service-offer-clean > div,
.service-offer-clean h2,
.service-offer-clean p{
  max-width:100% !important;
}
@media (max-width:900px){
  .section-pad{
    width:100% !important;
    padding-left:22px !important;
    padding-right:22px !important;
  }
  .service-offer-clean{
    padding-top:68px !important;
    padding-bottom:34px !important;
  }
  .service-offer-clean h2{
    font-size:clamp(34px,10.5vw,48px) !important;
    line-height:1.05 !important;
    letter-spacing:-.01em !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    hyphens:none !important;
  }
  .service-offer-clean p{
    font-size:16px !important;
    line-height:1.65 !important;
    max-width:330px !important;
  }
  .offer-cards{
    width:100% !important;
    padding-left:22px !important;
    padding-right:22px !important;
  }
  .offer-cards article{
    width:100% !important;
  }
}
@media (max-width:430px){
  .service-offer-clean h2{
    font-size:clamp(32px,9.8vw,42px) !important;
  }
  .service-offer-clean p{
    max-width:305px !important;
  }
}

/* v23 extra mobile heading containment */
@media (max-width:900px){
  .service-offer-clean h2,
  .offer h2,
  .process > h2,
  .service-detail-band h2,
  .section-heading h2,
  .reasons h2,
  .faq h2,
  .quote h2{
    font-size:clamp(28px,8.6vw,38px) !important;
    line-height:1.08 !important;
    max-width:100% !important;
    width:100% !important;
    overflow-wrap:break-word !important;
    word-break:normal !important;
    hyphens:auto !important;
  }
  .service-offer-clean h2{
    max-width:320px !important;
  }
}
@media (max-width:430px){
  .service-offer-clean h2,
  .offer h2,
  .process > h2,
  .service-detail-band h2,
  .section-heading h2,
  .reasons h2,
  .faq h2,
  .quote h2{
    font-size:clamp(26px,8vw,34px) !important;
  }
  .service-offer-clean h2{
    max-width:290px !important;
  }
}

/* v24 mobile homepage hero safe spacing under browser bar */
@media (max-width:900px){
  .hero-content.split-hero-content{
    padding-top:235px !important;
  }
  .hero .eyebrow{
    display:none !important;
  }
  .split-hero-content h1{
    max-width:92vw !important;
  }
  .hero-mobile-copy{
    max-width:86vw !important;
  }
}
@media (max-width:430px){
  .hero-content.split-hero-content{
    padding-top:225px !important;
  }
  .hero{min-height:760px !important;}
}

/* v25 cleaner mobile top bar/header */
@media (max-width:900px){
  .site-header{
    background:linear-gradient(to bottom,rgba(0,0,0,.34),rgba(0,0,0,0)) !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }
  .site-header.header-hidden{
    transform:translateY(-125%) !important;
  }
  body{
    background:#fbfaf7 !important;
  }
}
@media (max-width:900px) and (min-height:500px){
  .hero-vasa{
    margin-top:0 !important;
  }
}

/* v26 mobile browser chrome / safe-area color follows page */
:root{--mobile-chrome:#0b0b0b;}
@media (max-width:900px){
  html{
    background:var(--mobile-chrome) !important;
  }
  body{
    background:#fbfaf7 !important;
  }
  body::before{
    content:"";
    position:fixed;
    z-index:9;
    top:0;
    left:0;
    right:0;
    height:calc(env(safe-area-inset-top,0px) + 10px);
    background:var(--mobile-chrome);
    pointer-events:none;
    transition:background .22s ease;
  }
  .site-header{
    padding-top:calc(14px + env(safe-area-inset-top,0px)) !important;
    background:transparent !important;
  }
  .site-header:not(.header-hidden)::after{
    content:"";
    position:absolute;
    inset:0;
    z-index:-1;
    background:linear-gradient(to bottom,rgba(0,0,0,.22),rgba(0,0,0,0));
    pointer-events:none;
  }
}

/* v21b mobile header reset: transparent over hero + non-overlapping menu */
@media (max-width:900px){
  html{background:#0b0b0b !important;}
  body::before{display:none !important;content:none !important;}
  .site-header{
    position:fixed !important;
    top:0 !important;
    left:0 !important;
    right:0 !important;
    display:grid !important;
    grid-template-columns:auto auto !important;
    grid-template-areas:"logo cta" "nav nav" !important;
    align-items:center !important;
    min-height:0 !important;
    padding:calc(18px + env(safe-area-inset-top,0px)) 24px 8px !important;
    background:transparent !important;
    box-shadow:none !important;
  }
  .site-header::after{display:none !important;content:none !important;}
  .site-header .brand{
    grid-area:logo !important;
    width:78px !important;
    height:78px !important;
  }
  .site-header .nav-cta{
    grid-area:cta !important;
    justify-self:end !important;
    padding:17px 24px !important;
    font-size:12px !important;
    letter-spacing:.16em !important;
    white-space:nowrap !important;
  }
  .site-header .main-nav{
    grid-area:nav !important;
    position:static !important;
    transform:none !important;
    width:100% !important;
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:6px !important;
    justify-content:center !important;
    align-items:center !important;
    overflow:visible !important;
    padding-top:10px !important;
    font-size:12.5px !important;
    line-height:1.05 !important;
    letter-spacing:-.015em !important;
    text-align:center !important;
    text-shadow:0 2px 14px rgba(0,0,0,.9) !important;
  }
  .site-header .main-nav a{
    display:block !important;
    white-space:normal !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    min-width:0 !important;
  }
  .hero-content.split-hero-content{
    padding-top:250px !important;
  }
}
@media (max-width:430px){
  .site-header{padding-left:20px !important;padding-right:20px !important;}
  .site-header .brand{width:70px !important;height:70px !important;}
  .site-header .nav-cta{padding:15px 20px !important;font-size:11px !important;}
  .site-header .main-nav{font-size:11.5px !important;gap:4px !important;letter-spacing:-.025em !important;}
  .hero-content.split-hero-content{padding-top:235px !important;}
}
@media (max-width:370px){
  .site-header .main-nav{font-size:10.5px !important;}
}

.form-status {
  min-height: 1.4em;
  margin: .25rem 0 0;
  color: rgba(255,255,255,.82);
  font-size: .95rem;
}
.quote-form button:disabled {
  opacity: .72;
  cursor: progress;
}
