*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Nunito,Arial,sans-serif;color:#161616;background:#fff;line-height:1.6}img{max-width:100%;display:block}a{text-decoration:none;color:inherit}.topbar{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-bottom:1px solid #ececec;display:flex;align-items:center;justify-content:space-between;padding:14px clamp(18px,4vw,56px)}.brand{font-family:Montserrat,sans-serif;font-weight:900;letter-spacing:.02em;display:flex;gap:10px;align-items:center;color:#0a0a0a}.brand-mark{background:#28a745;color:#fff;border-radius:50%;width:38px;height:38px;display:grid;place-items:center}.nav{display:flex;gap:22px;align-items:center;font-weight:800}.nav a{color:#232323}.nav a:hover{color:#168a3a}.nav-cta{background:#111!important;color:#fff!important;padding:10px 16px;border-radius:999px}.menu-btn{display:none;border:0;background:#111;color:#fff;border-radius:12px;padding:9px 12px;font-size:20px}.section-pad{padding:clamp(54px,7vw,96px) clamp(18px,5vw,78px)}.hero{min-height:calc(100vh - 72px);display:grid;grid-template-columns:1.05fr .95fr;gap:42px;align-items:center;background:radial-gradient(circle at 80% 5%,rgba(40,167,69,.14),transparent 34%),linear-gradient(135deg,#fff 0%,#fff 55%,#f6fbf7 100%)}.eyebrow{font-family:Montserrat,sans-serif;font-weight:900;text-transform:uppercase;letter-spacing:.12em;color:#169447;font-size:.82rem;margin:0 0 12px}.hero h1{font-family:Montserrat,sans-serif;font-size:clamp(3.2rem,8vw,7.4rem);line-height:.9;margin:0;color:#000;letter-spacing:-.07em;text-transform:uppercase}.hero h2{font-family:Montserrat,sans-serif;font-size:clamp(1.15rem,2.5vw,2rem);line-height:1.15;margin:22px 0 0;color:#333;font-weight:800}.hero-text{font-size:clamp(1.05rem,1.5vw,1.25rem);max-width:730px;margin:24px 0 0;color:#2a2a2a}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.center{justify-content:center}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:14px 20px;font-weight:900;box-shadow:0 12px 30px rgba(0,0,0,.08);transition:.25s ease}.btn:hover{transform:translateY(-2px)}.primary{background:#111;color:#fff}.secondary{background:#fff;color:#111;border:2px solid #111}.notice{margin-top:18px;display:inline-block;background:#fff1f1;color:#9f1f1f;font-weight:900;padding:12px 16px;border-radius:16px;border:1px solid #ffd1d1}.hero-visual{position:relative}.photo-frame{background:#fff;border-radius:32px;padding:14px;box-shadow:0 25px 70px rgba(0,0,0,.14);overflow:hidden}.photo-frame img{border-radius:22px;width:100%;height:auto;object-fit:contain}.floating-card{position:absolute;right:-6px;bottom:26px;background:#111;color:#fff;border-radius:22px;padding:18px 20px;box-shadow:0 20px 45px rgba(0,0,0,.24);display:grid;gap:4px}.floating-card strong{font-family:Montserrat,sans-serif}.soft-bg{background:#f7faf7}.intro-grid,.schedule-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.intro-card,.schedule-card{background:#fff;border:1px solid #e9efe9;border-radius:26px;padding:28px;box-shadow:0 15px 40px rgba(0,0,0,.06)}.pill{display:inline-flex;background:#e6f6ea;color:#137737;border-radius:999px;padding:7px 12px;font-weight:900;font-size:.83rem}.intro-card h2,.section-title h2,.domicile h2,.location h2,.final-box h2{font-family:Montserrat,sans-serif;color:#111;line-height:1.05;margin:14px 0;font-size:clamp(2rem,4vw,4rem);letter-spacing:-.04em}.section-title{text-align:center;max-width:850px;margin:0 auto 38px}.section-title p:not(.eyebrow){color:#555;font-size:1.1rem}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{background:#fff;border:1px solid #ededed;border-radius:28px;overflow:hidden;box-shadow:0 16px 44px rgba(0,0,0,.07);display:flex;flex-direction:column}.service-img{height:235px;background:#f4f5f2;display:grid;place-items:center;padding:8px}.service-img img{width:100%;height:100%;object-fit:contain;border-radius:20px}.service-info{padding:22px}.service-info h3{font-family:Montserrat,sans-serif;margin:0 0 10px;font-size:1.17rem;color:#111}.service-info p{margin:0;color:#4a4a4a}.domicile,.location{display:grid;grid-template-columns:.95fr 1.05fr;gap:36px;align-items:center}.domicile-img,.location-card{border-radius:32px;overflow:hidden;background:#f4f4f4;box-shadow:0 20px 55px rgba(0,0,0,.12);padding:12px}.domicile-img img,.location-card img{border-radius:23px;width:100%;height:auto;object-fit:contain}.contact-box{display:grid;gap:7px;background:#fff;border:1px solid #e9e9e9;border-radius:24px;padding:22px;margin:24px 0;box-shadow:0 14px 36px rgba(0,0,0,.06)}.contact-box strong{font-family:Montserrat,sans-serif}.contact-box span{font-size:1.35rem;font-weight:900;color:#0f7d36}.gallery-grid{columns:3 260px;column-gap:18px}.gallery-item{break-inside:avoid;margin:0 0 18px;background:#f7f7f7;border-radius:24px;padding:10px;box-shadow:0 14px 34px rgba(0,0,0,.07)}.gallery-item img{border-radius:17px;width:100%;height:auto;object-fit:contain}.final-cta{background:linear-gradient(135deg,#111,#1e1e1e);color:#fff;text-align:center}.final-box{max-width:920px;margin:auto}.final-box h2{color:#fff}.final-box p{font-size:1.2rem}.footer{background:#fff;border-top:1px solid #eee;padding:30px clamp(18px,5vw,78px);display:flex;gap:12px;flex-wrap:wrap;justify-content:space-between;color:#333}.footer strong{font-family:Montserrat,sans-serif;color:#000}.whatsapp-float{position:fixed;right:18px;bottom:18px;z-index:60;background:#25d366;color:white;border-radius:999px;padding:14px 18px;font-weight:900;box-shadow:0 14px 35px rgba(0,0,0,.22)}.reveal{opacity:0;transform:translateY(24px);transition:.75s ease}.reveal.visible{opacity:1;transform:none}@media(max-width:920px){.hero,.domicile,.location{grid-template-columns:1fr}.intro-grid,.schedule-grid,.services-grid{grid-template-columns:1fr 1fr}.floating-card{position:static;margin-top:14px}.nav{position:fixed;inset:70px 16px auto 16px;background:#fff;border:1px solid #eee;border-radius:24px;padding:22px;display:none;flex-direction:column;box-shadow:0 25px 60px rgba(0,0,0,.18)}.nav.open{display:flex}.menu-btn{display:block}}@media(max-width:620px){.section-pad{padding:44px 16px}.intro-grid,.schedule-grid,.services-grid{grid-template-columns:1fr}.hero h1{font-size:3rem}.hero-actions .btn{width:100%}.topbar{padding:12px 14px}.brand span:last-child{font-size:.86rem}.service-img{height:210px}.footer{display:grid}.whatsapp-float{left:16px;right:16px;text-align:center}}