:root{--ink:#17342d;--muted:#587068;--bg:#f7f8f5;--surface:#fff;--tint:#e9f1ed;--line:#d7e1dc;--primary:#0d5c4d;--accent:#f2b84b;--shadow:0 18px 45px #12382a16;color:var(--ink);background:var(--bg);scroll-behavior:smooth;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}html[data-theme=dark]{--ink:#edf5f0;--muted:#b3c6bd;--bg:#10221d;--surface:#17342d;--tint:#1c382f;--line:#315347;--primary:#5bc3a7;--accent:#f3c766;--shadow:0 18px 45px #0006}*{box-sizing:border-box}body{background:var(--bg);margin:0;line-height:1.6}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.skip{position:absolute;left:-999px}.skip:focus{z-index:99;background:var(--surface);padding:.7rem;top:1rem;left:1rem}header{background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);z-index:20;justify-content:space-between;align-items:center;height:76px;padding:0 clamp(1.2rem,5vw,6rem);display:flex;position:sticky;top:0}.brand{align-items:center;gap:.65rem;font-weight:800;display:flex}.brand b{background:var(--primary);color:#fff;border-radius:12px;place-items:center;width:38px;height:38px;display:grid}.brand span{line-height:1.1}.brand small{color:var(--muted);margin-top:.25rem;font-size:.67rem;font-weight:600;display:block}nav{align-items:center;gap:1.35rem;font-size:.9rem;font-weight:650;display:flex}nav>a:not(.button):hover,footer a:hover{color:var(--primary)}.button,.ghost{border:1px solid var(--primary);border-radius:999px;justify-content:center;align-items:center;gap:.5rem;padding:.78rem 1.15rem;font-weight:750;transition:transform .2s,background .2s;display:inline-flex}.button{background:var(--primary);color:#fff}.button:hover{filter:brightness(1.05);transform:translateY(-2px)}.ghost{color:var(--primary);background:0 0}.ghost:hover{background:var(--tint)}.theme,.menu{color:var(--ink);background:0 0;border:0;font-size:1.1rem}.menu{display:none}.hero,.section{padding:clamp(4.7rem,8vw,8rem) clamp(1.2rem,8vw,10rem)}.hero{grid-template-columns:1.05fr .95fr;align-items:center;gap:clamp(2.5rem,7vw,8rem);max-width:1500px;min-height:calc(100vh - 76px);margin:auto;display:grid}.eyebrow{letter-spacing:.15em;color:var(--primary);margin:0 0 .85rem;font-size:.72rem;font-weight:800}.hero h1,h2{letter-spacing:-.045em;margin:.2rem 0 1.3rem;font-family:Georgia,serif;line-height:1.06}.hero h1{font-size:clamp(3rem,5.6vw,5.6rem)}h2{font-size:clamp(2.25rem,4vw,4rem)}h3{line-height:1.25}.lead{color:var(--muted);max-width:38rem;font-size:1.17rem}.actions{flex-wrap:wrap;gap:.8rem;margin:2rem 0;display:flex}.trust{flex-wrap:wrap;gap:.8rem 1.2rem;font-size:.83rem;font-weight:650;display:flex}.hero-image{position:relative}.hero-image>img{object-fit:cover;width:100%;height:clamp(390px,55vw,630px);box-shadow:var(--shadow);border-radius:2rem}.floating-card{background:var(--surface);box-shadow:var(--shadow);border-radius:1rem;padding:1rem 1.2rem;position:absolute;bottom:1.5rem;left:-1.5rem}.floating-card strong,.floating-card span{display:block}.floating-card strong{color:var(--primary);font-size:1.4rem}.floating-card span{color:var(--muted);font-size:.78rem}.section{max-width:1500px;margin:auto}.tinted{background:var(--tint);max-width:none}.split{grid-template-columns:1fr 1fr;align-items:center;gap:clamp(2rem,8vw,10rem);display:grid}.split>img{aspect-ratio:4/3;object-fit:cover;border-radius:1.4rem;width:100%}.split p{color:var(--muted);max-width:38rem}.stats{gap:1.7rem;margin-top:2rem;display:flex}.stats b,.stats span{display:block}.stats b{color:var(--primary);font-size:1.7rem}.stats span{color:var(--muted);font-size:.78rem}.section-intro{max-width:42rem;margin-bottom:2.6rem}.section-intro p:last-child{color:var(--muted)}.cards{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.card{background:var(--surface);border:1px solid var(--line);border-radius:1.2rem;padding:1.7rem;transition:transform .2s,box-shadow .2s}.card:hover{box-shadow:var(--shadow);transform:translateY(-5px)}.icon{color:var(--primary);font-size:1.35rem}.card h3{margin:1rem 0 .5rem}.card p,.features p{color:var(--muted);font-size:.94rem}.card a{color:var(--primary);font-size:.88rem;font-weight:750}.features{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}.features article{border-top:1px solid var(--line);gap:1rem;padding:1.2rem;display:flex}.features h3{margin:0}.features p{margin:.3rem 0}.gallery{grid-template-columns:repeat(4,1fr);gap:.75rem;display:grid}.gallery-item{background:0 0;border:0;border-radius:1rem;min-height:200px;padding:0;overflow:hidden}.gallery-item:first-child{grid-area:span 2/span 2}.gallery img{object-fit:cover;width:100%;height:100%;transition:transform .35s}.gallery-item:hover img{transform:scale(1.05)}.testimonials{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.testimonials figure{background:var(--surface);border-radius:1rem;margin:0;padding:1.5rem}.stars{color:var(--accent);letter-spacing:.12rem}.testimonials blockquote{margin:1rem 0;line-height:1.55}.testimonials figcaption span,.testimonials figcaption b{display:block}.testimonials figcaption span{color:var(--muted);font-size:.8rem}.faq{max-width:900px}.faq details{border-top:1px solid var(--line);padding:1.2rem 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;justify-content:space-between;font-weight:750;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary span{color:var(--primary);font-size:1.4rem}.faq p{color:var(--muted);max-width:46rem}.location{background:var(--tint);grid-template-columns:.8fr 1.2fr;gap:3rem;max-width:none;display:grid}.location>div:first-child{justify-self:end;width:100%;max-width:500px}address{font-size:1.05rem;font-style:normal;font-weight:700}.map{background:var(--surface);border-radius:1.25rem;min-height:340px;overflow:hidden}.map iframe{border:0;width:100%;height:100%;min-height:340px}.map button{background:linear-gradient(135deg,var(--primary),#1e7a66);color:#fff;border:0;width:100%;height:340px;font-size:1.1rem}.map button span{font-size:3rem;display:block}.map small{opacity:.8}.contact{grid-template-columns:.75fr 1.25fr;gap:clamp(2rem,7vw,8rem);display:grid}.contact p{color:var(--muted)}.contact-link{color:var(--primary);margin:.7rem 0;font-weight:750;display:block}.contact-form{background:var(--surface);box-shadow:var(--shadow);border-radius:1.25rem;padding:clamp(1.3rem,3vw,2.2rem)}.contact-form label{gap:.35rem;margin:.7rem 0;font-size:.86rem;font-weight:700;display:grid}.contact-form input,.contact-form textarea{background:var(--bg);border:1px solid var(--line);color:var(--ink);resize:vertical;border-radius:.55rem;padding:.75rem}.form-grid{grid-template-columns:1fr 1fr;gap:0 1rem;display:grid}.form-note,.status{font-size:.82rem}.hp{position:absolute;left:-9999px}.status{color:var(--primary);font-weight:700}footer{color:#eff8f2;background:#102a23;padding:4rem clamp(1.2rem,8vw,10rem) 1.5rem}.footer-top{grid-template-columns:2fr 1fr 1fr;gap:2rem;padding-bottom:3rem;display:grid}.footer-top .brand small{color:#bcd2c8}.footer-top p{color:#bcd2c8;max-width:28rem}.footer-top h3{text-transform:uppercase;letter-spacing:.1em;color:#bcd2c8;font-size:.85rem}.footer-top a:not(.brand){margin:.55rem 0;display:block}.footer-bottom{color:#bcd2c8;border-top:1px solid #ffffff2b;flex-wrap:wrap;justify-content:space-between;gap:1rem;padding-top:1.2rem;font-size:.78rem;display:flex}.link-button,.text-button{color:inherit;background:0 0;border:0;padding:0;text-decoration:underline}.whatsapp-float,.to-top{right:max(1rem,env(safe-area-inset-right));z-index:15;border-radius:50%;place-items:center;display:grid;position:fixed}.whatsapp-float{bottom:max(1.2rem,env(safe-area-inset-bottom));color:#073b1d;width:56px;height:56px;box-shadow:var(--shadow);background:#25d366;font-size:1.8rem}.to-top{background:var(--surface);border:1px solid var(--line);width:38px;height:38px;bottom:5.4rem}.consent{z-index:50;background:var(--surface);max-width:850px;box-shadow:var(--shadow);border-radius:1rem;align-items:center;gap:2rem;margin:auto;padding:1.2rem;display:flex;position:fixed;bottom:1rem;left:1rem;right:1rem}.consent p{color:var(--muted);margin:.25rem 0;font-size:.84rem}.consent-actions{flex-shrink:0;align-items:center;gap:.6rem;display:flex}.cookie-options{gap:1rem;font-size:.8rem;display:flex}.modal-backdrop{z-index:60;background:#0009;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.modal{background:var(--surface);border-radius:1rem;max-width:680px;max-height:90vh;padding:2rem;position:relative;overflow:auto}.close{color:var(--ink);background:0 0;border:0;font-size:1.7rem;position:absolute;top:.7rem;right:1rem}.lightbox-img{border-radius:.7rem;width:100%}.lightbox-nav{justify-content:space-between;margin-top:1rem;display:flex}.lightbox-nav button{color:var(--primary);background:0 0;border:0;font-weight:700}@media (width<=760px){header{height:65px}.menu{display:block}nav{background:var(--surface);border-bottom:1px solid var(--line);box-shadow:var(--shadow);align-items:stretch;padding:1rem 1.2rem;display:none;position:absolute;top:64px;left:0;right:0}nav.open{flex-direction:column;display:flex}.nav-cta{display:flex}.hero{grid-template-columns:1fr;min-height:auto;padding-top:3rem}.hero-image{order:-1}.hero-image>img{height:330px}.floating-card{left:1rem}.split,.location,.contact{grid-template-columns:1fr}.location>div:first-child{justify-self:start}.cards,.testimonials,.features{grid-template-columns:1fr}.gallery{grid-template-columns:1fr 1fr}.gallery-item{min-height:145px}.gallery-item:first-child{grid-area:span 1/span 2}.form-grid{grid-template-columns:1fr}.footer-top{grid-template-columns:1fr 1fr}.footer-top>div:first-child{grid-column:span 2}.consent{border-radius:1rem 1rem 0 0;display:block;bottom:0;left:0;right:0}.consent-actions{flex-wrap:wrap;margin-top:1rem}.hero,.section{padding-left:1.2rem;padding-right:1.2rem}.stats{gap:1rem}.stats b{font-size:1.35rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
