:root{--blue:#0b6fd1;--deep:#0a2540;--sky:#e8f3ff;--aqua:#3cc3f2;--text:#33475b;--r:16px}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,sans-serif;color:var(--text);line-height:1.6;background:#fff}
h1,h2,h3{font-family:Poppins,system-ui,sans-serif;color:var(--deep);line-height:1.2;margin:0 0 .5em}
a{color:var(--blue)}img{max-width:100%}
.wrap{width:min(1120px,92%);margin:auto}.narrow{width:min(760px,92%)}
.topbar{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.95);backdrop-filter:blur(8px);border-bottom:1px solid #e6eef7}
.nav{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.6rem 0}
.brand img{display:block;height:34px;width:auto}
.links{display:none;gap:1.4rem}.links a{text-decoration:none;color:var(--deep);font-weight:500}
.btn{display:inline-flex;align-items:center;gap:.4rem;background:var(--blue);color:#fff;text-decoration:none;font-weight:600;padding:.85rem 1.3rem;border-radius:999px;border:0;font-size:1rem;cursor:pointer;box-shadow:0 6px 18px rgba(11,111,209,.25)}
.btn:hover{background:#085bb0}.btn-sm{padding:.5rem .9rem;font-size:.85rem}
.btn-ghost{background:#fff;color:var(--blue);box-shadow:inset 0 0 0 2px var(--blue)}.btn-ghost:hover{background:var(--sky)}
.hero{position:relative;background:linear-gradient(160deg,#eaf5ff 0%,#cfe8ff 55%,#a9dbf7 100%);padding:3rem 0 5rem;overflow:hidden}
.hero-grid{display:grid;gap:2.5rem;align-items:center}
.eyebrow{color:var(--blue);font-weight:600;text-transform:uppercase;letter-spacing:.06em;font-size:.8rem;margin:0 0 .6rem}
h1{font-size:clamp(2rem,6vw,3.4rem)}h1 span{color:var(--blue)}
.lead{font-size:1.1rem;max-width:36rem}
.cta{display:flex;flex-wrap:wrap;gap:.7rem;margin:1.5rem 0}
.ticks{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.4rem 1.2rem;font-weight:500;color:var(--deep)}
.ticks li::before{content:"✓ ";color:#14a44d;font-weight:700}
.hero-card{position:relative;background:#fff;border-radius:24px;padding:1.5rem;box-shadow:0 20px 50px rgba(10,37,64,.15)}
.window{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:10px;background:#fff;border:10px solid #f1f5f9;border-radius:12px;aspect-ratio:4/3;overflow:hidden}
.pane{background:linear-gradient(135deg,#bfe4ff,#7cc7f5 60%,#5ab4ef)}
.shine{position:absolute;inset:-30%;background:linear-gradient(115deg,transparent 40%,rgba(255,255,255,.75) 50%,transparent 60%)}
.badge{position:absolute;left:-10px;bottom:28px;background:var(--deep);color:#ffd34d;padding:.6rem 1rem;border-radius:12px;font-weight:700}
.badge small{color:#fff;font-weight:500;margin-left:.3rem}
.photo-note{font-size:.8rem;color:#7a8ca0;text-align:center;margin:.8rem 0 0}
.wave{position:absolute;bottom:-1px;left:0;width:100%;height:60px}
.section{padding:4rem 0}.alt{background:var(--sky)}
h2{font-size:clamp(1.6rem,4vw,2.3rem)}.sub{max-width:40rem;margin-top:0}
.cards{display:grid;gap:1.2rem;margin-top:2rem}
.card{background:#fff;border:1px solid #e3edf7;border-radius:var(--r);padding:1.5rem;box-shadow:0 4px 14px rgba(10,37,64,.05)}
.ico{font-size:1.8rem;width:56px;height:56px;display:grid;place-items:center;background:var(--sky);border-radius:14px;margin-bottom:.8rem}
.price{font-weight:600;color:var(--blue);margin:0}
.commercial{margin-top:2rem;background:var(--deep);color:#dbe9f7;border-radius:var(--r);padding:1.8rem}.commercial h3{color:#fff}
.quotes{display:grid;gap:1.2rem;margin-top:1.5rem}
blockquote{margin:0;background:#fff;border-radius:var(--r);padding:1.6rem;border-left:5px solid var(--blue);box-shadow:0 4px 14px rgba(10,37,64,.06)}
blockquote p{font-size:1.1rem;color:var(--deep);margin:0 0 .6rem}cite{font-style:normal;color:#d79b00;font-weight:600}
.small{font-size:.85rem;color:#6b7f94}.center{text-align:center;margin-top:1.2rem}
.two{display:grid;gap:2.5rem}
.chips{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}
.chips li{background:var(--sky);color:var(--deep);padding:.45rem .9rem;border-radius:999px;font-weight:500}
.pay{background:#fff;border:2px solid #d6e8fb;border-radius:var(--r);padding:1.6rem}
.steps{padding-left:1.2rem}.steps li{margin-bottom:.6rem}
code{background:var(--sky);padding:.1rem .4rem;border-radius:6px;color:var(--deep)}
.bank{background:var(--sky);border-radius:12px;padding:1rem 1.2rem}.bank p{margin:.2rem 0;display:flex;justify-content:space-between;gap:1rem}.bank span{color:#6b7f94}
details{background:#fff;border:1px solid #e3edf7;border-radius:12px;padding:1rem 1.2rem;margin-bottom:.7rem}
summary{cursor:pointer;font-weight:600;color:var(--deep)}
.contact{background:linear-gradient(160deg,#0b6fd1,#0a2540);color:#dbe9f7}.contact h2{color:#fff}
.contact-list{list-style:none;padding:0;font-size:1.1rem}.contact-list li{margin:.6rem 0}.contact-list a{color:#fff}
.form{background:#fff;border-radius:var(--r);padding:1.6rem;display:grid;gap:.9rem;color:var(--text)}
.form label{display:grid;gap:.3rem;font-weight:500;color:var(--deep)}
.form input,.form textarea{font:inherit;padding:.75rem;border:1px solid #cfdceb;border-radius:10px}
.footer{background:#071a2e;color:#9fb3c8;padding:2.5rem 0 5rem;text-align:center}.footer a{color:#fff}
.foot-logo{background:#fff;border-radius:10px;padding:.4rem .6rem;height:auto}
.float-call{position:fixed;right:16px;bottom:16px;background:#14a44d;color:#fff;text-decoration:none;font-weight:700;padding:.85rem 1.2rem;border-radius:999px;box-shadow:0 8px 20px rgba(0,0,0,.2);z-index:30}
@media(min-width:700px){.cards{grid-template-columns:repeat(2,1fr)}.quotes{grid-template-columns:1fr 1fr}}
@media(min-width:960px){.links{display:flex}.hero{padding:5rem 0 7rem}.hero-grid{grid-template-columns:1.15fr .85fr}.cards{grid-template-columns:repeat(3,1fr)}.two{grid-template-columns:1fr 1fr}.float-call{display:none}.footer{padding-bottom:2.5rem}}
/* Price guide */
.houses{display:grid;grid-template-columns:1fr;gap:1rem;margin-top:1.8rem}
.house{font:inherit;background:#fff;border:2px dashed #b9cfe6;border-radius:var(--r);padding:1rem;cursor:pointer;display:grid;justify-items:center;gap:.2rem;color:var(--deep);transition:transform .15s,border-color .15s,box-shadow .15s}
.house:hover{transform:translateY(-3px);border-color:var(--blue)}
.house:focus-visible{outline:3px solid var(--aqua);outline-offset:3px}
.house[aria-pressed="true"]{border:2px solid var(--blue);background:#f2f8ff;box-shadow:0 10px 26px rgba(11,111,209,.22)}
.sketch{width:100%;max-width:240px;height:auto}
.sketch .fillwall,.sketch .fillroof,.sketch .glass,.sketch .door{transition:fill .2s}
.house[aria-pressed="true"] .fillroof{fill:#cfe6fb}.house[aria-pressed="true"] .fillwall{fill:#fff}
.house[aria-pressed="true"] .glass{fill:#8fd0f7}.house[aria-pressed="true"] .door{fill:#0b6fd1}
.hname{font-family:Poppins,sans-serif;font-weight:600;font-size:1.1rem}
.hhint{font-size:.85rem;color:#6b7f94}
.price-panel{margin-top:1.5rem;background:#fff;border-radius:var(--r);padding:1.4rem 1.6rem;box-shadow:0 4px 14px rgba(10,37,64,.06)}
.cons{display:inline-flex;align-items:center;gap:.6rem;font-weight:600;color:var(--deep);cursor:pointer}
.cons input{width:22px;height:22px;accent-color:var(--blue)}
.price-out{min-height:5.5rem;margin:1rem 0;padding:1rem 1.2rem;border-radius:12px;background:var(--sky)}
.price-out p{margin:.15rem 0}.po-empty{color:#6b7f94}
.po-type{font-weight:600;color:var(--blue);text-transform:uppercase;font-size:.8rem;letter-spacing:.05em}
.po-price{font-family:Poppins,sans-serif;font-size:1.8rem;font-weight:700;color:var(--deep)}
.po-total{font-size:1.1rem;color:var(--deep)}.po-total span,.po-note{color:#6b7f94}
@media(min-width:700px){.houses{grid-template-columns:repeat(3,1fr)}}
@media(max-width:699px){.house{grid-template-columns:110px 1fr;justify-items:start;align-items:center;text-align:left}.house .sketch{grid-row:span 2;max-width:110px}}
/* Exact price panel */
.price-row{display:grid;gap:1.2rem;margin-top:1.5rem}.price-row .price-panel{margin-top:0}
.exact{background:linear-gradient(160deg,#0b6fd1,#0a2540);color:#dbe9f7;border-radius:var(--r);padding:1.4rem 1.6rem;box-shadow:0 10px 26px rgba(10,37,64,.18)}
.exact h3{color:#fff;font-size:1.35rem}
.exact-steps{padding-left:1.2rem;margin:.6rem 0 1rem}.exact-steps li{margin:.2rem 0}
.exact-btns{display:flex;flex-wrap:wrap;gap:.7rem}
.btn-wa{background:#25d366;color:#06301a;box-shadow:0 6px 18px rgba(37,211,102,.35)}.btn-wa:hover{background:#1ebe5a}
.exact .btn-ghost{background:transparent;color:#fff;box-shadow:inset 0 0 0 2px #fff}.exact .btn-ghost:hover{background:rgba(255,255,255,.1)}
.exact .small{color:#b8cde3;margin-bottom:0}
@media(min-width:900px){.price-row{grid-template-columns:1.1fr .9fr}}
/* Service photo-price links */
.photo-link{display:inline-block;background:#25d366;color:#06301a;text-decoration:none;font-weight:600;font-size:.9rem;padding:.45rem .9rem;border-radius:999px}
.photo-link:hover{background:#1ebe5a}
.price .or{font-weight:400;font-size:.85rem;color:#6b7f94;margin-left:.3rem}
.exact{scroll-margin-top:80px}#exact-h{scroll-margin-top:90px}
/* 4th house option */
@media(min-width:700px){.houses{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1000px){.houses{grid-template-columns:repeat(4,1fr)}}
.po-big{color:var(--deep);font-size:1.05rem;font-weight:500;margin:.3rem 0 .8rem!important}
.po-btns{display:flex;flex-wrap:wrap;gap:.5rem}
.cons.off{opacity:.45;cursor:not-allowed}
/* Hero photo */
.hero-photo{padding:0;overflow:visible;background:transparent;box-shadow:none}
.hero-photo picture,.hero-photo img{display:block;width:100%;height:auto;border-radius:24px;box-shadow:0 20px 50px rgba(10,37,64,.2);aspect-ratio:4/3;object-fit:cover}
.hero-photo .badge{top:16px;left:16px;bottom:auto}

/* Commercial section */
.comm-sec{scroll-margin-top:70px}
.comm-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));margin:24px 0}
.comm-card{background:#fff;border:1px solid #dbe7f5;border-radius:16px;padding:20px;box-shadow:0 4px 14px rgba(10,37,64,.05)}
.comm-card h3{margin:0 0 8px}
.comm-card p{margin:0}
.comm-vat{background:#eaf3ff;border-color:#b9d6fb}
.comm-cta{display:flex;flex-wrap:wrap;gap:12px}
