
:root{--piel:#F2DBCC;--terr:#C4998A;--marron:#2A1A14;--crema:#FAF3EF;--cacao:#6B4C42;--nude:#EDD5C5;--lino:#F7ECE7;--blanco:#fff;--negro:#1A1A1A}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--crema);color:var(--marron);font-family:Jost,Arial,sans-serif;font-weight:300}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}button,input,select,textarea{font:inherit}:focus-visible{outline:2px solid var(--marron);outline-offset:4px}.skip{position:fixed;top:-5rem;left:1rem;background:var(--marron);color:var(--piel);padding:.75rem;z-index:99}.skip:focus{top:1rem}.nav{position:fixed;top:0;left:0;right:0;height:80px;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1rem,4vw,4rem);background:rgba(250,243,239,.78);backdrop-filter:blur(12px);border-bottom:1px solid rgba(196,153,138,.25)}.brand{display:flex;align-items:center;gap:.75rem;font-family:"Noto Serif Display",serif;font-size:1.6rem}.brand img{width:58px;height:58px;border-radius:50%;object-fit:contain}.links{display:flex;align-items:center;gap:1.5rem;color:var(--cacao)}.menu-btn{display:none;background:none;border:0;font-size:1.8rem}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border-radius:2px;border:1px solid transparent;padding:.85rem 1.25rem;text-transform:uppercase;letter-spacing:.15em;font-size:.78rem}.dark{background:var(--marron);color:var(--piel);border-color:var(--marron)}.soft{background:var(--piel);color:var(--marron)}.outline{border-color:var(--piel);color:var(--piel)}.plain{margin-left:1.25rem;text-transform:uppercase;letter-spacing:.15em;font-size:.85rem}.home-hero{position:relative;min-height:100vh;display:grid;place-items:center;text-align:center;overflow:hidden}.home-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.home-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(242,219,204,.7),rgba(242,219,204,.35),rgba(250,243,239,.2))}.home-hero>div{position:relative;z-index:1;max-width:900px;padding:7rem 1.25rem 2rem}.eyebrow{color:var(--terr);font-size:.76rem;letter-spacing:.3em;text-transform:uppercase}.home-hero h1,.home-hero h2,.shell h2,.split h2,.section-hero h1,.service-detail h2,.quote,.final-cta h2,.testimonials h2,.login-page h1,.contact h2,.booking h2{font-family:"Noto Serif Display",serif;font-weight:200;line-height:.98}.home-hero h1,.home-hero h2{font-size:clamp(2.5rem,8vw,4.5rem);margin:.35rem 0}.home-hero h2,.final-cta h2{font-style:italic}.values{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;background:var(--marron);color:var(--piel);padding:1.6rem;text-align:center;text-transform:uppercase;letter-spacing:.2em;font-size:.8rem}.shell{max-width:1180px;margin:auto;padding:6rem 1.25rem}.center{text-align:center}.shell h2,.split h2,.section-hero h1{font-size:clamp(2.5rem,6vw,4.5rem);margin:.5rem 0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin:3rem 0}.card,.testimonials article{background:var(--blanco);text-align:left}.card img{width:100%;height:280px;object-fit:cover}.card div{padding:1.5rem}.card h3{font-family:"Noto Serif Display",serif;font-size:2rem;font-weight:300}.quote{background:var(--piel);text-align:center;padding:5rem 1.25rem;font-size:clamp(2rem,5vw,3rem)}.split{max-width:1180px;margin:auto;padding:6rem 1.25rem;display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}.split img{width:100%;aspect-ratio:1;object-fit:cover}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin:3rem 0}.gallery.full{grid-template-columns:repeat(4,1fr)}.gallery figure{margin:0;position:relative;aspect-ratio:4/5;overflow:hidden}.gallery img{width:100%;height:100%;object-fit:cover;transition:.3s}.gallery figure:hover img{transform:scale(1.04)}.gallery figcaption{position:absolute;left:.75rem;bottom:.75rem;background:rgba(250,243,239,.9);padding:.3rem .6rem;font-size:.78rem}.testimonials{background:var(--crema);padding:6rem 1.25rem;text-align:center}.testimonials>div{max-width:1180px;margin:3rem auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.testimonials article{padding:2rem}.testimonials span{display:block;color:var(--cacao);margin:.4rem 0 1rem}.final-cta{background:var(--marron);color:var(--piel);padding:5rem 1.25rem;text-align:center}.final-cta p{color:var(--terr)}.section-hero{background:var(--piel);padding:9rem 1.25rem 5rem;text-align:center}.section-hero p{color:var(--cacao)}.detail{display:grid;gap:3rem}.service-detail{display:grid;grid-template-columns:1fr 1fr;gap:2rem;background:var(--blanco)}.service-detail img{height:100%;min-height:360px;object-fit:cover}.service-detail div{padding:2rem}.price,.value-grid{background:var(--piel);padding:3rem;text-align:center}.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;max-width:1180px;margin:0 auto 4rem}.value-grid span{border:1px solid rgba(196,153,138,.6);padding:2rem;text-transform:uppercase;letter-spacing:.18em}.contact{max-width:1180px;margin:auto;padding:5rem 1.25rem;display:grid;grid-template-columns:.85fr 1.15fr;gap:2rem}.contact aside{background:var(--piel);padding:2rem}.contact form,.login-page,.booking{background:var(--blanco);padding:2rem}label{display:grid;gap:.4rem;color:var(--cacao);font-size:.92rem}input,select,textarea{border:1px solid rgba(196,153,138,.6);background:var(--crema);min-height:48px;padding:.8rem;color:var(--marron)}form{display:grid;gap:1rem}.booking{max-width:1100px;margin:5rem auto}.stepper{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin-bottom:2rem}.stepper span{border:1px solid rgba(196,153,138,.6);padding:1rem}.stepper .active{background:var(--piel);border-color:var(--marron)}.booking-step{display:none}.booking-step.active{display:grid;gap:1rem}.select-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.select-cards button,.hours button{border:1px solid rgba(196,153,138,.6);background:var(--crema);padding:1rem;text-align:left}.select-cards button.active,.hours button.active{border-color:var(--marron);background:var(--piel)}.select-cards span{display:block;margin-top:.75rem;color:var(--cacao)}.hours{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.booking-actions{display:flex;gap:1rem;margin-top:2rem}.booking [data-submit]{display:none}.login-page{max-width:430px;margin:8rem auto 4rem;text-align:center}.login-page img{width:86px;border-radius:50%}.footer{border-top:1px solid var(--terr);text-align:center;padding:3rem 1rem;color:var(--cacao)}.footer img{width:72px;border-radius:50%}.footer div{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem;margin:1.5rem 0}.fab{position:fixed;right:1.25rem;bottom:1.25rem;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:#25D366;color:white;z-index:40;font-size:1.5rem}.fab span{position:absolute;right:0;bottom:64px;width:max-content;background:var(--marron);color:var(--piel);font-size:.75rem;padding:.5rem;opacity:0}.fab:hover span{opacity:1}@media(max-width:850px){.menu-btn{display:block}.links{position:fixed;top:80px;right:0;bottom:0;width:min(330px,86vw);background:var(--crema);padding:2rem;display:none;flex-direction:column;align-items:flex-start}.links.open{display:flex}.values,.cards,.split,.gallery,.gallery.full,.testimonials>div,.service-detail,.value-grid,.contact,.select-cards{grid-template-columns:1fr}.home-hero .plain{display:block;margin:1rem 0 0}.stepper{grid-template-columns:1fr 1fr}.hours{grid-template-columns:1fr 1fr}}