:root{--ink:#171513;--soft:#f7f6f3;--white:#fff;--gold:#9c7541;--line:#dedbd5;--muted:#68635e}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--white);font:16px/1.65 "DM Sans",sans-serif}img{display:block;width:100%}a{color:inherit;text-decoration:none}button{font:inherit}.section{width:min(1220px,calc(100% - 64px));margin:auto}.nav{position:fixed;z-index:30;left:0;right:0;top:0;height:76px;display:flex;align-items:center;padding:0 3vw;color:#fff;background:linear-gradient(#0008,transparent);transition:.3s}.nav.scrolled{background:#11100ff2;backdrop-filter:blur(18px);border-bottom:1px solid #ffffff1f}.logo{display:flex;align-items:center;gap:10px;font:17px/1 Italiana,serif;white-space:nowrap}.logo img{width:38px;height:38px;border-radius:50%}.logo span{display:grid}.logo small{font:500 8px/1.3 "DM Sans";letter-spacing:.22em;text-transform:uppercase;margin-top:4px}.nav nav{display:flex;gap:22px;margin:auto;font-size:13px}.nav nav a{opacity:.82}.nav-tools{display:flex;align-items:center;gap:14px}.nav-tools button{border:0;background:none;color:#fff;cursor:pointer}.nav-cta{font-size:13px;font-weight:600;padding:10px 17px;border:1px solid #ffffffa0;border-radius:99px}#menu{display:none;font-size:23px}.hero{height:100svh;min-height:730px;position:relative;color:#fff;overflow:hidden}.hero>img{height:100%;object-fit:cover;object-position:center 70%}.hero-veil{position:absolute;inset:0;background:linear-gradient(180deg,#130c076b 0%,transparent 45%,#100b0775 100%)}.hero-copy{position:absolute;top:19%;left:50%;transform:translateX(-50%);width:min(900px,calc(100% - 40px));text-align:center}.overline{margin:0 0 18px;font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase}.gold{color:var(--gold)}h1,h2,h3{font-family:Italiana,serif;font-weight:400;line-height:1.04;margin:0}h1{font-size:clamp(4rem,7vw,7.8rem);text-shadow:0 2px 25px #0005}.hero-copy>p:not(.overline){font-size:18px;max-width:610px;margin:24px auto}.hero-actions{display:flex;justify-content:center;align-items:center;gap:22px;margin-top:32px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 24px;border-radius:99px;font-size:14px;font-weight:600}.button.light{background:#fff;color:var(--ink)}.button.dark{background:var(--ink);color:#fff}.hero-link{font-size:14px;font-weight:600;border-bottom:1px solid #fff}.promise{padding:140px 0;text-align:center}.promise h2,.heading h2,.process h2,.contact h2{font-size:clamp(3rem,5.8vw,6.3rem)}.promise>p:last-child{max-width:760px;margin:30px auto 0;color:var(--muted);font-size:18px}.heading{margin-bottom:56px}.heading h2{max-width:900px}.featured-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px 26px;padding-bottom:140px}.experience img{height:620px;object-fit:cover;background:var(--soft)}.experience>div{padding:26px 4px}.experience h3{font-size:38px}.experience p{color:var(--muted);max-width:520px;margin:12px 0}.experience strong{display:block;font-size:16px}.experience a{display:inline-block;margin-top:17px;font-weight:600;font-size:14px;border-bottom:1px solid}.experience small{display:block;color:var(--muted);margin-top:12px}.clean-band{background:var(--ink);color:#fff;text-align:center;padding:130px 0}.clean-band h2{font-size:clamp(3.2rem,6vw,6.5rem);max-width:930px;margin:0 auto 35px}.collection{padding:140px 0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px 22px}.service-grid article{background:var(--soft)}.service-grid img,.text-visual{height:430px;object-fit:cover}.service-grid article>div:last-child{padding:22px 24px 26px}.service-grid h3{font-size:28px}.service-grid p{margin:8px 0 0;color:var(--muted)}.text-visual{display:grid;place-items:center;font:70px Italiana,serif;color:#c59a60;background:#171513}.text-visual.vip{background:#27211d}.center{text-align:center;margin-top:55px}.packages{padding:140px 0}.package-columns{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.package-columns>div{padding:35px}.package-columns>div+div{border-left:1px solid var(--line)}.package-columns h3{font-size:30px;margin-bottom:25px}.package-columns p{display:flex;justify-content:space-between;gap:18px;padding:13px 0;margin:0;border-top:1px solid var(--line);font-size:14px}.package-columns b{white-space:nowrap}.process{background:var(--soft);padding:130px 0}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:36px}.steps article{padding-top:24px;border-top:1px solid var(--ink)}.steps h3{font-size:30px}.steps p{color:var(--muted)}.gallery{padding:140px 0}.gallery-grid{display:grid;grid-template-columns:2fr 1fr 1fr;grid-auto-rows:330px;gap:14px}.gallery-grid img{height:100%;object-fit:cover}.gallery-grid img:first-child{grid-row:span 2}.gallery-grid img:nth-child(4){grid-column:span 2}.reviews{padding:80px 0 140px}.review-empty{max-width:720px;background:var(--soft);padding:48px}.review-empty>div{color:var(--gold);letter-spacing:.22em;font-size:20px}.review-empty h3{font-size:34px;margin:16px 0}.review-empty p{color:var(--muted)}.review-empty a{display:inline-block;margin-top:12px;font-weight:600;border-bottom:1px solid}.faq{padding:130px 0;display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;border-top:1px solid var(--line)}details{padding:22px 0;border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;font-weight:600;display:flex;justify-content:space-between}summary:after{content:"+";color:var(--gold);font-size:22px}details[open] summary:after{content:"−"}details p{color:var(--muted)}.contact{background:var(--ink);color:#fff;text-align:center;padding:130px max(24px,calc((100vw - 1220px)/2));width:100%;max-width:none}.contact>p:not(.overline){max-width:650px;margin:28px auto}.contact .button{margin-top:10px}footer{background:#0c0b0a;color:#eee9e2;padding:75px 0 28px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:60px}.footer-grid h3{font:600 12px "DM Sans";letter-spacing:.15em;text-transform:uppercase;color:var(--gold);margin-bottom:18px}.footer-grid>div a,.footer-grid>div span,.legal{display:block;color:#9a948e;margin:8px 0}.legal{border:0;background:none;padding:0;cursor:pointer}.copyright{border-top:1px solid #ffffff18;margin-top:55px;padding-top:24px;color:#706b66;font-size:12px}.whatsapp{position:fixed;z-index:20;right:22px;bottom:22px;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#25d366;color:#083c1d;font-weight:800;box-shadow:0 10px 30px #0004}dialog{max-width:700px;width:calc(100% - 36px);border:0;padding:48px;background:var(--soft)}dialog::backdrop{background:#000a}.close{position:absolute;right:15px;top:8px;border:0;background:none;font-size:32px;cursor:pointer}.reveal{opacity:0;transform:translateY(18px);transition:.65s}.reveal.visible{opacity:1;transform:none}
@media(max-width:1020px){.nav nav{display:none;position:absolute;top:76px;left:0;right:0;background:#11100f;padding:25px;flex-direction:column}.nav nav.open{display:flex}.nav-cta{display:none}#menu{display:block}.nav{justify-content:space-between}.featured-grid{gap:55px 18px}.experience img{height:520px}.service-grid{grid-template-columns:1fr 1fr}.package-columns{grid-template-columns:1fr}.package-columns>div+div{border-left:0;border-top:1px solid var(--line)}.steps{grid-template-columns:1fr 1fr}.faq{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>.logo{grid-column:span 2}}
@media(max-width:650px){.section{width:calc(100% - 30px)}.nav{height:68px;padding:0 16px}.hero{min-height:720px}.hero>img{object-position:52% 66%}.hero-copy{top:16%;width:calc(100% - 34px)}h1{font-size:3.55rem}.hero-copy>p:not(.overline){font-size:16px}.hero-actions{flex-direction:column;gap:14px}.promise{padding:90px 0}.promise h2,.heading h2,.process h2,.contact h2{font-size:3.35rem}.promise>p:last-child{font-size:16px}.featured-grid{grid-template-columns:1fr;padding-bottom:95px}.experience img{height:500px}.experience h3{font-size:33px}.clean-band{padding:90px 15px}.clean-band h2{font-size:3.4rem}.collection,.packages,.process,.gallery,.faq{padding-top:95px;padding-bottom:95px}.service-grid{grid-template-columns:1fr}.service-grid img,.text-visual{height:460px}.package-columns>div{padding:28px 4px}.steps{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:420px}.gallery-grid img:first-child{grid-row:auto}.gallery-grid img:nth-child(4){grid-column:auto}.reviews{padding:60px 0 95px}.review-empty{padding:32px 24px}.contact{padding:95px 20px}.footer-grid{grid-template-columns:1fr}.footer-grid>.logo{grid-column:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}

/* Sunset-inspired refinement */
:root{--ink:#203238;--soft:#fff4ee;--white:#fffdfa;--gold:#ba814c;--line:#ead9cf;--muted:#6f615d;--coral:#c7675d;--rose:#8f4254;--sea:#245867}
body{background:#fffdfa}
.nav.scrolled{background:#203238f2;border-bottom-color:#ffffff2b}
.hero-veil{background:linear-gradient(180deg,#172d356b 0%,#8f42540f 42%,#351d197d 100%)}
.hero-copy{top:50%;left:50%;right:auto;width:min(900px,calc(100% - 40px));text-align:center}
.hero-copy.reveal{transform:translate(-50%,calc(-50% + 18px))}
.hero-copy.reveal.visible{transform:translate(-50%,-50%)}
.hero-copy h1,.hero-copy p{overflow-wrap:break-word}
.hero-copy .overline{color:#ffe2bd}
.button.light{background:#fffaf4;color:#773f43;box-shadow:0 10px 32px #32140d24}
.button.dark{background:var(--coral);color:#fff;box-shadow:0 12px 30px #9e4e4530}
.promise{background:linear-gradient(180deg,#fffdfa,#fff5ef)}
.featured-grid{padding-top:10px}
.experience{background:#fff;border-radius:2px;overflow:hidden;box-shadow:0 15px 45px #70413712}
.experience>div{padding:28px 28px 32px}
.experience a{color:var(--rose)}
.birthday-feature{grid-column:1/-1;display:grid;grid-template-columns:1.3fr 1fr;align-items:center;background:linear-gradient(135deg,#fff7f1,#f7ebe3)}
.birthday-feature img{height:560px}
.birthday-feature>div{padding:54px}
.clean-band{background:linear-gradient(135deg,#8f4254 0%,#c7675d 55%,#d99063 100%)}
#personaliza{padding-top:140px;padding-bottom:140px;background:linear-gradient(180deg,#fffdfa,#fff7f2)}
.service-grid article{background:#fff;box-shadow:0 12px 34px #70413710}
.service-grid article:nth-child(4n+2){background:#f7eeee}
.service-grid article:nth-child(4n+3){background:#eef6f5}
.packages{background:#fffaf5}
.process{background:linear-gradient(135deg,#193943,#245867);color:#fff}
.process .overline{color:#f3bd8f}.steps article{border-top-color:#ffffff70}.steps p{color:#d9e7e7}
.gallery{background:#fffdfa}.gallery-grid img{filter:saturate(1.04);transition:transform .35s ease,filter .35s ease}.gallery-grid img:hover{transform:scale(1.01);filter:saturate(1.12)}
.reviews{background:linear-gradient(180deg,#fffdfa,#f8efeb)}.review-empty{background:#fff;box-shadow:0 16px 45px #70413710}
.contact{background:linear-gradient(135deg,#8f4254,#ba6257 58%,#d48b64)}
.whatsapp{background:#245867}
@media(max-width:760px){.hero>img{object-position:52% center}.hero-copy{top:48%;left:50%;right:auto;width:calc(100% - 34px);text-align:center}.hero-copy.reveal{transform:translate(-50%,calc(-50% + 18px))}.hero-copy.reveal.visible{transform:translate(-50%,-50%)}.birthday-feature{grid-column:auto;display:block}.birthday-feature img{height:500px}.birthday-feature>div{padding:28px}.experience>div{padding:25px 22px 29px}#personaliza{padding-top:95px;padding-bottom:95px}}

.review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.review-card{display:flex;flex-direction:column;min-height:320px;padding:36px;background:#fff;border-top:3px solid var(--coral);box-shadow:0 16px 45px #70413710}
.review-card:first-child{grid-column:1/-1;min-height:auto;background:linear-gradient(135deg,#fff,#fff6f0)}
.review-stars{color:#d29a42;font-size:18px;letter-spacing:.13em}
.review-stars span{float:right;color:var(--muted);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.review-card blockquote{margin:28px 0 34px;font:clamp(1.25rem,2vw,1.65rem)/1.48 Italiana,serif;color:var(--ink)}
.review-author{display:grid;gap:2px;margin-top:auto;padding-top:18px;border-top:1px solid var(--line)}
.review-author strong{font-size:15px}.review-author span{color:var(--muted);font-size:13px}
@media(max-width:760px){.review-grid{grid-template-columns:1fr}.review-card:first-child{grid-column:auto}.review-card{min-height:auto;padding:28px 24px}.review-card blockquote{font-size:1.3rem}}
