:root{
  --bg:#f7f2ee;
  --paper:#fffaf7;
  --ink:#3b3330;
  --muted:#776964;
  --brand:#a88d81;
  --brand-dark:#725c54;
  --accent:#d8c4bb;
  --line:rgba(88,70,64,.14);
  --shadow:0 24px 70px rgba(76,55,47,.18);
  --radius:26px;
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:linear-gradient(180deg,var(--bg),#fff);color:var(--ink);font-family:Montserrat,system-ui,sans-serif;line-height:1.6;overflow-x:hidden} a{color:inherit;text-decoration:none} img{max-width:100%;display:block}.skip-link{position:absolute;left:-999px;top:10px;background:#fff;padding:10px;z-index:99}.skip-link:focus{left:10px}.site-header{position:fixed;top:0;left:0;right:0;z-index:40;padding:14px 4vw}.navbar{max-width:1180px;margin:auto;background:rgba(255,250,247,.82);backdrop-filter:blur(18px);border:1px solid var(--line);border-radius:999px;display:flex;align-items:center;justify-content:space-between;padding:10px 14px;box-shadow:0 12px 40px rgba(60,48,45,.08)}.brand{display:flex;align-items:center;gap:10px;font-weight:800;letter-spacing:.03em}.brand img{width:44px;height:44px;border-radius:50%;object-fit:cover}.nav-links{display:flex;align-items:center;gap:18px;font-size:.92rem}.nav-links a{color:var(--muted);font-weight:700}.nav-links a:hover{color:var(--brand-dark)}.lang-btn,.menu-toggle{border:0;background:transparent;cursor:pointer;font-weight:800;color:var(--muted)}.lang-btn{border:1px solid var(--line);border-radius:999px;padding:7px 10px}.lang-btn.active{background:var(--brand-dark);color:white}.menu-toggle{display:none;font-size:1.6rem}.hero{min-height:100vh;position:relative;display:grid;align-items:center;padding:130px 6vw 70px;overflow:hidden}.hero-bg{position:absolute;inset:0;background:url('assets/portada-ama-tu-cuerpo-spa.jpg') center/cover no-repeat;transform:scale(1.03)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(42,33,30,.78),rgba(55,46,44,.48) 45%,rgba(247,242,238,.25))}.hero-content{position:relative;z-index:2;max-width:760px;color:white}.eyebrow,.section-kicker{text-transform:uppercase;letter-spacing:.23em;font-size:.78rem;font-weight:800;color:var(--brand);margin:0 0 14px}.hero .eyebrow{color:#f1ddd3}.hero h1{font-family:'Cormorant Garamond',serif;font-size:clamp(3rem,8vw,7.6rem);line-height:.85;margin:0 0 20px;max-width:900px;text-transform:uppercase;letter-spacing:.02em}.hero-copy{font-size:clamp(1rem,2vw,1.25rem);max-width:650px;color:#fff7f2}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:14px 22px;font-weight:800;border:1px solid transparent;transition:.25s ease;cursor:pointer}.btn.primary{background:var(--brand-dark);color:#fff;box-shadow:0 16px 35px rgba(44,32,29,.26)}.btn.primary:hover{transform:translateY(-2px);background:#594640}.btn.ghost{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.55);color:#fff;backdrop-filter:blur(10px)}.hero-card{position:absolute;z-index:3;right:7vw;bottom:8vh;width:min(270px,78vw);background:rgba(255,250,247,.88);backdrop-filter:blur(14px);border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow)}.hero-card img{width:86px;height:86px;border-radius:22px;object-fit:cover;margin-bottom:12px}.hero-card strong{display:block;font-family:'Cormorant Garamond',serif;font-size:1.7rem}.hero-card span{color:var(--muted);font-size:.93rem}.section{max-width:1180px;margin:auto;padding:86px 5vw}.intro{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center}.intro h2,.section-head h2,.promo h2,.contact-card h2{font-family:'Cormorant Garamond',serif;font-size:clamp(2.1rem,4vw,4rem);line-height:1;margin:0;color:var(--brand-dark)}.intro p:last-child{font-size:1.1rem;color:var(--muted)}.stats{max-width:1120px;margin:0 auto 30px;padding:0 5vw;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.stats article{background:var(--paper);border:1px solid var(--line);border-radius:24px;padding:24px;box-shadow:0 16px 40px rgba(77,56,49,.08)}.stats strong{display:block;font-family:'Cormorant Garamond',serif;font-size:2.6rem;color:var(--brand-dark)}.stats span{color:var(--muted);font-weight:600}.section-head{text-align:center;max-width:750px;margin:0 auto 42px}.section-head p{color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.service-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:28px;min-height:250px;box-shadow:0 18px 55px rgba(76,55,47,.09);transition:.25s ease}.service-card:hover{transform:translateY(-6px)}.icon{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:#efe0d9;color:var(--brand-dark);font-size:1.45rem;margin-bottom:24px}.service-card h3{font-family:'Cormorant Garamond',serif;font-size:1.7rem;margin:0 0 10px;color:var(--brand-dark)}.service-card p{color:var(--muted);margin:0}.promo{max-width:1080px;margin:20px auto;padding:42px 5vw;background:linear-gradient(135deg,#fffaf7,#eadbd4);border:1px solid var(--line);border-radius:34px;display:flex;justify-content:space-between;gap:30px;align-items:center;box-shadow:var(--shadow)}.promo p{max-width:650px;color:var(--muted)}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.gallery-item{border:0;padding:0;border-radius:24px;overflow:hidden;background:#ddd;aspect-ratio:1/1;cursor:pointer;box-shadow:0 14px 40px rgba(76,55,47,.11)}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:.35s ease}.gallery-item:hover img{transform:scale(1.07)}.video-wrap{max-width:860px;margin:auto;aspect-ratio:16/9;border-radius:30px;overflow:hidden;box-shadow:var(--shadow);background:#000}.video-wrap iframe,.map-card iframe{width:100%;height:100%;border:0}.social-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.social-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:24px;min-height:480px;box-shadow:0 16px 50px rgba(76,55,47,.09);overflow:hidden}.social-card h3{font-family:'Cormorant Garamond',serif;font-size:2rem;color:var(--brand-dark);margin:0 0 16px}.instagram-fallback{display:grid;place-items:center;text-align:center;min-height:360px;border:1px dashed var(--line);border-radius:22px;padding:26px}.instagram-fallback img{width:130px;height:130px;object-fit:cover;border-radius:28px;margin-bottom:18px}.social-fallback{display:inline-flex;margin-top:14px;color:#fff;background:var(--brand-dark);padding:12px 16px;border-radius:999px;font-weight:800}.contact-section{display:grid;grid-template-columns:1.1fr .9fr;gap:24px}.contact-card{display:grid;grid-template-columns:.95fr 1.05fr;gap:28px;background:var(--paper);border:1px solid var(--line);border-radius:34px;padding:34px;box-shadow:var(--shadow)}.contact-list{display:grid;gap:13px;margin-top:24px;color:var(--muted);font-weight:700}.contact-form{display:grid;gap:14px}.contact-form label{display:grid;gap:8px;color:var(--muted);font-weight:800;font-size:.9rem}.contact-form input,.contact-form textarea{width:100%;border:1px solid var(--line);border-radius:16px;padding:13px 14px;background:#fff;color:var(--ink);font:inherit}.contact-form textarea{resize:vertical}.map-card{min-height:520px;border-radius:34px;overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--line)}.site-footer{text-align:center;padding:50px 5vw 90px;color:var(--muted)}.site-footer img{width:76px;height:76px;border-radius:22px;object-fit:cover;margin:0 auto 12px}.site-footer a{color:var(--brand-dark);font-weight:800}.whatsapp-float{position:fixed;right:22px;bottom:22px;width:62px;height:62px;background:#25D366;border-radius:50%;z-index:60;display:grid;place-items:center;box-shadow:0 16px 40px rgba(20,120,60,.35);transition:.25s ease}.whatsapp-float:hover{transform:scale(1.06)}.whatsapp-float svg{width:38px;height:38px;fill:white}.lightbox{position:fixed;inset:0;background:rgba(25,20,18,.88);z-index:80;display:none;align-items:center;justify-content:center;border:0;padding:5vw;cursor:pointer}.lightbox.open{display:flex}.lightbox img{max-width:min(100%,1000px);max-height:86vh;border-radius:24px;box-shadow:0 30px 80px rgba(0,0,0,.4)}.lightbox span{position:absolute;top:22px;right:30px;color:#fff;font-size:3rem}.reveal{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s ease}.reveal.visible{opacity:1;transform:translateY(0)}
@media(max-width:980px){.nav-links{position:fixed;top:84px;left:5vw;right:5vw;display:none;flex-direction:column;background:rgba(255,250,247,.96);border:1px solid var(--line);border-radius:24px;padding:24px;box-shadow:var(--shadow)}.nav-links.open{display:flex}.menu-toggle{display:block}.hero-card{position:relative;right:auto;bottom:auto;margin-top:34px}.hero{display:block}.intro,.contact-section,.contact-card,.social-grid{grid-template-columns:1fr}.service-grid,.stats{grid-template-columns:repeat(2,1fr)}.gallery{grid-template-columns:repeat(3,1fr)}.promo{flex-direction:column;align-items:flex-start}.map-card{min-height:380px}}
@media(max-width:640px){.site-header{padding:10px}.navbar{border-radius:22px}.brand span{font-size:.84rem}.hero{padding:118px 5vw 56px;min-height:auto}.hero h1{font-size:clamp(2.8rem,15vw,4.7rem)}.hero-actions .btn{width:100%}.section{padding:64px 5vw}.service-grid,.stats,.gallery{grid-template-columns:1fr}.contact-card{padding:24px}.social-card{min-height:auto}.whatsapp-float{width:56px;height:56px;right:16px;bottom:16px}.site-footer{padding-bottom:86px}}
