/* AquaFix — soft wave / mosaic (distinct from VoltForge & CoolAir) */
.demo-float-home{position:fixed;right:1.2rem;bottom:1.2rem;z-index:9000;display:inline-flex;padding:.8rem 1.2rem;background:#0d7377;color:#fff!important;font-family:DM Sans,sans-serif;font-weight:700;font-size:.85rem;text-decoration:none;border-radius:999px}
.demo-float-home:hover{background:#c4785a}
.demo-aquafix{--teal:#0d7377;--deep:#095456;--copper:#c4785a;--foam:#eef7f7;--ink:#1a3335;--muted:#5f7274;--white:#fff;margin:0;font-family:DM Sans,system-ui,sans-serif;color:var(--ink);background:var(--foam);line-height:1.55;-webkit-font-smoothing:antialiased}
.demo-aquafix *,.demo-aquafix *::before,.demo-aquafix *::after{box-sizing:border-box}
.demo-aquafix img{display:block;max-width:100%;height:auto}
.demo-aquafix a{color:inherit;text-decoration:none}
.demo-aquafix h1,.demo-aquafix h2,.demo-aquafix h3,.demo-aquafix .aq-logo{font-family:Fraunces,Georgia,serif;font-weight:600;letter-spacing:-.02em;line-height:1.15}
.aq-wrap{width:min(1060px,92%);margin-inline:auto}
.aq-header{position:sticky;top:0;z-index:40;background:rgba(238,247,247,.95);backdrop-filter:blur(10px)}
.aq-header-inner{display:flex;align-items:center;justify-content:space-between;height:64px}
.aq-logo{font-size:1.4rem;color:var(--deep)}.aq-logo span{color:var(--copper)}
.aq-nav{display:flex;gap:1rem;align-items:center;font-weight:650;font-size:.9rem}
.aq-nav a{color:var(--muted)}.aq-nav-cta{background:var(--teal)!important;color:#fff!important;padding:.5rem 1rem;border-radius:999px}
.aq-btn{display:inline-flex;align-items:center;justify-content:center;padding:.85rem 1.3rem;border-radius:999px;font:inherit;font-weight:700;border:none;cursor:pointer}
.aq-btn-teal{background:var(--teal);color:#fff!important}
.aq-btn-soft{background:#d8ecec;color:var(--deep)!important}
.aq-btn-block{width:100%}

/* 1 Hero — side-by-side, no dead vertical space */
.aq-hero{position:relative;padding:1.5rem 0 0;background:linear-gradient(180deg,#d4ecec 0%,var(--foam) 70%);overflow:hidden;color:var(--deep)}
.aq-hero-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:1.75rem;align-items:center;padding-bottom:1.25rem}
.aq-kicker{margin:0 0 .55rem;font-size:.75rem;font-weight:750;letter-spacing:.1em;text-transform:uppercase;color:var(--copper)}
.aq-hero h1{margin:0 0 .75rem;font-size:clamp(1.7rem,3.2vw,2.35rem);max-width:16ch;font-weight:600}
.aq-lede{margin:0 0 1.15rem;max-width:38ch;color:var(--muted);font-size:1.02rem}
.aq-actions{display:flex;flex-wrap:wrap;gap:.65rem;margin:0}
.aq-hero-mosaic{display:grid;grid-template-columns:1.35fr 1fr;grid-template-rows:140px 140px;gap:.65rem;width:100%;margin:0;padding:0}
.aq-hero-mosaic img{width:100%;height:100%;object-fit:cover;border-radius:1.1rem}
.aq-hero-mosaic img:first-child{grid-row:1/-1}
.aq-wave{display:block;width:100%;height:48px;color:var(--white);margin-top:-1px}

/* 2 How */
.aq-how{padding:3rem 0;background:var(--white)}
.aq-how h2{margin:0 0 1.5rem;font-size:clamp(1.6rem,3vw,2.1rem);text-align:center}
.aq-steps{list-style:none;margin:0;padding:0;display:grid;gap:.85rem;max-width:720px;margin-inline:auto}
.aq-steps li{display:grid;grid-template-columns:auto 1fr;gap:1rem;align-items:start;padding:1.1rem 1.2rem;background:var(--foam);border-radius:1rem}
.aq-steps span{width:2.2rem;height:2.2rem;display:grid;place-items:center;background:var(--teal);color:#fff;border-radius:50%;font-weight:800}
.aq-steps h3{margin:0 0 .25rem;font-size:1.15rem}
.aq-steps p{margin:0;color:var(--muted);font-size:.92rem}

/* 3 Services cards */
.aq-services{padding:3rem 0;background:var(--foam)}
.aq-head{text-align:center;margin-bottom:1.5rem}
.aq-head span,.aq-eyebrow{display:inline-block;font-size:.75rem;font-weight:750;letter-spacing:.1em;text-transform:uppercase;color:var(--copper);margin-bottom:.35rem}
.aq-head h2{margin:0;font-size:clamp(1.6rem,3vw,2.2rem)}
.aq-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:.85rem}
.aq-cards article{background:var(--white);border-radius:1.15rem;padding:1.25rem;display:flex;flex-direction:column;gap:.5rem;box-shadow:0 8px 24px rgba(13,115,119,.06)}
.aq-cards h3{margin:0;font-size:1.15rem}
.aq-cards p{margin:0;color:var(--muted);font-size:.88rem;flex:1}
.aq-cards footer{display:flex;align-items:center;justify-content:space-between;padding-top:.65rem;border-top:1px solid #e0ecec}
.aq-cards strong{color:var(--teal);font-size:1.1rem}
.aq-cards a{font-weight:750;font-size:.85rem;color:var(--copper)!important}

/* 4 Why */
.aq-why{padding:3rem 0;background:var(--white)}
.aq-why-inner{display:grid;grid-template-columns:.85fr 1.15fr;gap:2.5rem;align-items:center}
.aq-why figure{margin:0;border-radius:1.5rem 1.5rem 1.5rem 3rem;overflow:hidden;aspect-ratio:4/5}
.aq-why img{width:100%;height:100%;object-fit:cover}
.aq-why h2{margin:.35rem 0 1.1rem;font-size:clamp(1.6rem,3vw,2.2rem);max-width:12ch}
.aq-why ul{list-style:none;margin:0;padding:0;display:grid;gap:.55rem}
.aq-why li{padding-left:1.15rem;position:relative;font-weight:650}
.aq-why li::before{content:'';position:absolute;left:0;top:.5em;width:.5rem;height:.5rem;border-radius:50%;background:var(--copper)}

/* 5 Areas */
.aq-areas{padding:2.75rem 0;background:var(--deep);color:#e8f6f6;text-align:center}
.aq-areas h2{margin:0 0 1.25rem;font-size:clamp(1.5rem,3vw,2rem);color:#fff}
.aq-map-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:.55rem}
.aq-map-list li{padding:.55rem 1rem;border:1px solid rgba(255,255,255,.25);border-radius:999px;font-weight:650;font-size:.9rem}

/* 6 Reviews */
.aq-reviews{padding:3rem 0;background:var(--foam)}
.aq-rev{display:grid;grid-template-columns:repeat(3,1fr);gap:.85rem}
.aq-reviews blockquote{margin:0;padding:1.35rem;background:var(--white);border-radius:1.15rem;border-top:3px solid var(--teal)}
.aq-reviews p{margin:0 0 1rem;font-family:Fraunces,Georgia,serif;font-size:1.05rem;line-height:1.4}
.aq-reviews footer{font-size:.82rem;font-weight:750;color:var(--copper)}

/* 7 Book */
.aq-book{padding:3rem 0;background:var(--white)}
.aq-book-grid{display:grid;grid-template-columns:.9fr 1.1fr;grid-template-areas:'copy form' 'map map';gap:1.25rem 1.5rem}
.aq-book-grid>div:first-child{grid-area:copy}
.aq-form{grid-area:form}
.aq-map{grid-area:map}
.aq-book h2{margin:.35rem 0 .5rem;font-size:clamp(1.55rem,3vw,2.1rem)}
.aq-phone{font-family:Fraunces,Georgia,serif;font-size:1.7rem;margin-top:.75rem!important}
.aq-phone a{color:var(--teal)}
.aq-form{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;padding:1.35rem;background:var(--foam);border-radius:1.15rem}
.aq-form label{display:grid;gap:.3rem;font-size:.75rem;font-weight:750}
.aq-full{grid-column:1/-1}
.aq-form input,.aq-form select{padding:.8rem;border:1.5px solid #d5e4e4;border-radius:.75rem;font:inherit;background:#fff}
.aq-form input:focus,.aq-form select:focus{outline:none;border-color:var(--teal)}
.aq-form .aq-btn{grid-column:1/-1}
.aq-map{border-radius:1.15rem;overflow:hidden;min-height:260px}
.aq-map iframe{width:100%;height:280px;border:0}
.aq-footer{padding:1.35rem 0 4.5rem;text-align:center;color:var(--muted);font-size:.85rem}
.aq-demo{opacity:.55;font-size:.75rem}
@media(max-width:900px){
.aq-nav a:not(.aq-nav-cta){display:none}
.aq-hero-grid{grid-template-columns:1fr;gap:1.15rem;padding-bottom:.75rem}
.aq-hero-mosaic,.aq-cards,.aq-why-inner,.aq-rev,.aq-book-grid{grid-template-columns:1fr;grid-template-areas:'copy' 'form' 'map'}
.aq-hero-mosaic{grid-template-rows:auto;grid-template-columns:1fr 1fr}
.aq-hero-mosaic img:first-child{grid-column:1/-1;grid-row:auto;min-height:200px}
.aq-form{grid-template-columns:1fr}
}
