
:root{--ink:#111;--ink-2:#555;--ink-3:#8a8a8a;--line:#e7e7e7;--bg:#fff;--bg-alt:#f7f6f3;--accent:#1f6f3f;--on-accent:#fff;--radius:16px;--max:1040px}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:Heebo,-apple-system,"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--bg);line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}img{max-width:100%;display:block}
h1,h2,h3{margin:0 0 .4em;line-height:1.15}
h1{font-size:clamp(2rem,6.5vw,3.6rem);font-weight:800}
h2{font-size:clamp(1.6rem,4.5vw,2.4rem);font-weight:800;margin-bottom:.7em}
h3{font-size:1.15rem;font-weight:700}p{margin:0 0 1em}
.lead{font-size:1.15rem;color:var(--ink-2);max-width:42ch}.fine{font-size:.85rem;color:var(--ink-3)}
.wrap{max-width:var(--max);margin:0 auto;padding:0 1.2rem}
.nav{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.88);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem 1.2rem}
.logo{font-weight:800;font-size:1.25rem;display:flex;align-items:center;gap:.6rem}.logo img{height:36px;width:auto}
.nav nav{display:none;gap:1.3rem;color:var(--ink-2);font-weight:500}.nav nav a.on{color:var(--ink);font-weight:700}
@media(min-width:760px){.nav nav{display:flex}}
.btn{display:inline-block;background:var(--accent);color:var(--on-accent);font-weight:700;padding:.85rem 1.5rem;border-radius:999px;border:0;font-size:1rem;cursor:pointer}
.btn:hover{opacity:.93}.btn-sm{padding:.5rem 1rem;font-size:.9rem}.btn-ghost{background:transparent;color:var(--ink);border:1.5px solid var(--line)}
.hero{padding:4rem 0 3rem;background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 9%,#fff) 0%,#fff 100%)}@media(min-width:760px){.hero{padding:6rem 0 4rem}}
.hero .wrap{display:grid;gap:2rem;align-items:center}@media(min-width:760px){.hero.with-img .wrap{grid-template-columns:1.1fr 1fr}.hero:not(.with-img) .wrap{max-width:760px}}
.hero img{border-radius:22px;aspect-ratio:4/3;object-fit:cover;width:100%}
.cta-row{display:flex;flex-wrap:wrap;gap:.7rem;margin:1.4rem 0 1rem}
.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;margin:1.6rem 0 0;padding:0;list-style:none}.facts li{background:#fff;border:1px solid var(--line);border-radius:12px;padding:.7rem .8rem}.facts strong{display:block;font-size:1.25rem;font-weight:800}.facts span{font-size:.8rem;color:var(--ink-2)}
.section{padding:3.5rem 0}.alt{background:var(--bg-alt)}
.cards{list-style:none;padding:0;margin:0;display:grid;gap:1rem}@media(min-width:760px){.cards{grid-template-columns:repeat(3,1fr)}}
.cards li{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.3rem}
.cards p{margin:0;color:var(--ink-2);font-size:.95rem}.cards .price{margin-top:.6rem;font-weight:800;color:var(--ink)}
.quotes{list-style:none;padding:0;margin:0;display:grid;gap:1rem}@media(min-width:760px){.quotes{grid-template-columns:repeat(2,1fr)}}
.quotes li{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.4rem}
.quotes blockquote{margin:0 0 .8rem;font-size:1.05rem}.quotes cite{font-style:normal;color:var(--ink-3);font-size:.9rem}
.stars{color:#f5a623;letter-spacing:.1em;margin-bottom:.5rem}
.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:.7rem}@media(min-width:760px){.gallery{grid-template-columns:repeat(3,1fr)}}
.gallery img{aspect-ratio:1;object-fit:cover;border-radius:12px;width:100%}
.split{display:grid;gap:2rem}@media(min-width:760px){.split{grid-template-columns:1fr 1fr}}
.info dl{margin:0}.info dt{font-weight:700;margin-top:1rem}.info dd{margin:0;color:var(--ink-2)}
.map{border:0;width:100%;height:320px;border-radius:var(--radius)}
.form{display:grid;gap:.9rem;max-width:520px}.form label{display:grid;gap:.3rem;font-weight:600;font-size:.95rem}
.form input,.form textarea{font:inherit;padding:.8rem .9rem;border:1.5px solid var(--line);border-radius:12px;width:100%;background:#fff}
.form input:focus,.form textarea:focus{outline:none;border-color:var(--accent)}
.thanks{background:var(--bg-alt);border-radius:var(--radius);padding:1.6rem;max-width:520px}
footer{border-top:1px solid var(--line);padding:2rem 0 3rem;color:var(--ink-2);font-size:.95rem}
footer .wrap{display:grid;gap:.6rem}
.wa-float{display:none;position:fixed;bottom:1.1rem;left:1.1rem;z-index:20;width:56px;height:56px;border-radius:50%;background:#25D366;place-items:center;box-shadow:0 6px 20px rgba(0,0,0,.18)}
.wa-float svg{width:30px;height:30px;fill:#fff}
.mobile-bar{position:fixed;bottom:0;right:0;left:0;z-index:15;display:grid;grid-template-columns:1fr 1fr;gap:.5rem;padding:.6rem .8rem;background:rgba(255,255,255,.95);border-top:1px solid var(--line)}
@media(min-width:760px){.mobile-bar{display:none}.wa-float{display:grid}}
.mobile-bar .btn{text-align:center;padding:.75rem}
body.has-bar{padding-bottom:4.5rem}
