:root{
  --bg:#fbf6f2;
  --card:#fffaf5;
  --line:rgba(119,67,51,.16);
  --brown:#5a3426;
  --brown-2:#6a4332;
  --gold:#b88735;
  --gold-2:#d8b26b;
  --rose:#b8736d;
  --rose-dark:#8d5a54;
  --text:#553c33;
  --shadow:0 18px 45px rgba(79,47,35,.10);
  --radius:20px;
  --font-title:"Cormorant Garamond",serif;
  --font-body:"Montserrat",system-ui,sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:linear-gradient(180deg,#fefbf8 0%,#fbf4ef 52%,#fff9f5 100%);color:var(--text);font-family:var(--font-body)}
a{text-decoration:none;color:inherit}img{max-width:100%;display:block}button,input,textarea{font:inherit}body.no-scroll{overflow:hidden}

.container,.section-card{width:min(1180px,calc(100% - 42px));margin-inline:auto}
.section-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.soft-panel{background:linear-gradient(135deg,#f8ebe1,#f4ddd0)}

h1,h2,h3{font-family:var(--font-title);line-height:.96;color:var(--brown);margin:0 0 12px}h1{font-size:74px;font-weight:700}h2{font-size:48px;font-weight:700}h3{font-size:24px;font-weight:700}p{margin:0 0 12px;line-height:1.55}ul{margin:0;padding:0;list-style:none}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;padding:15px 28px;font-weight:700;transition:all .25s ease;border:1px solid transparent;cursor:pointer}.btn:hover{transform:translateY(-2px)}
.btn-gold{background:linear-gradient(135deg,var(--gold),var(--gold-2));color:#fff;box-shadow:0 10px 24px rgba(184,135,53,.22)}
.btn-gold:hover{filter:brightness(1.03)}
.btn-outline{background:transparent;border-color:rgba(119,67,51,.22);color:var(--brown)}
.btn-outline:hover{background:#fff4ee;color:var(--brown)}
.btn-light{background:rgba(255,250,245,.92);color:var(--brown);border:1px solid rgba(255,255,255,.38);box-shadow:0 10px 22px rgba(34,20,16,.08)}
.btn-light:hover{background:#fff;color:var(--brown)}
.btn.small{padding:12px 18px;font-size:14px}

.site-header{position:sticky;top:0;z-index:30;background:rgba(255,250,245,.88);border-bottom:1px solid rgba(119,67,51,.08);backdrop-filter:saturate(140%) blur(10px)}
.nav-wrap{height:88px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand img{width:142px;height:auto}.main-nav{display:flex;align-items:center;gap:34px}.main-nav a{font-weight:600;color:#3e2a23;position:relative;padding:6px 0}.main-nav a::after{content:"";position:absolute;left:0;right:0;bottom:-14px;height:3px;border-radius:999px;background:linear-gradient(90deg,var(--gold),#d7b57a);transform:scaleX(0);transform-origin:center;transition:.25s ease}.main-nav a:hover::after,.main-nav a.active::after{transform:scaleX(1)}
.menu-toggle{display:none;width:46px;height:46px;border-radius:14px;border:1px solid var(--line);background:#fff7f1;align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer}.menu-toggle span{width:20px;height:2px;background:var(--brown);border-radius:999px}.nav-cta{white-space:nowrap;padding:14px 22px}

.hero{padding:0;overflow:hidden;background:linear-gradient(135deg,#f8eee6,#f0d9c9)}
.hero-banner{position:relative;min-height:600px;border-radius:var(--radius);overflow:hidden}
.hero-banner img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(48,24,18,.48) 0%,rgba(48,24,18,.20) 35%,rgba(48,24,18,0) 65%)}
.hero-content{position:relative;z-index:2;min-height:600px;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;padding:48px 52px 54px;max-width:650px}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.16em;color:#fff5eb;background:rgba(96,55,37,.24);border:1px solid rgba(255,245,235,.28);backdrop-filter:blur(8px);padding:10px 16px;border-radius:999px;margin-bottom:16px}
.hero-content h1{color:#fff;margin-bottom:14px;text-shadow:0 10px 28px rgba(0,0,0,.18)}
.hero-text{font-size:18px;max-width:560px;margin-bottom:26px;color:#fff8f2;text-shadow:0 6px 20px rgba(0,0,0,.15)}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}

.services{padding:22px 0 10px}.section-title{display:flex;align-items:center;justify-content:center;gap:16px;padding:12px 0 20px}.section-title span{display:block;width:68px;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}.section-title h2{font-size:56px;margin:0;color:var(--brown-2)}
.filters{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin-bottom:22px}.filter{padding:9px 22px;border-radius:999px;border:1px solid rgba(119,67,51,.18);background:#fff7f2;color:#6a4332;font-weight:600;cursor:pointer;transition:all .2s ease;min-width:128px}.filter.active,.filter:hover{background:linear-gradient(135deg,#c98d86,#b97267);color:#fff;border-color:transparent;box-shadow:0 10px 20px rgba(185,114,103,.18)}
.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding:0 4px}.service-card{background:linear-gradient(180deg,#fff8f4,#fffdfb);border:1px solid rgba(119,67,51,.16);border-radius:18px;padding:24px 22px;box-shadow:0 14px 28px rgba(74,44,32,.06);transition:transform .2s ease, box-shadow .2s ease;min-height:430px}.service-card:hover{transform:translateY(-4px);box-shadow:0 18px 32px rgba(74,44,32,.10)}.service-card.is-hidden{display:none}.service-icon{font-size:24px;color:var(--rose);margin-bottom:12px}.service-card h3{margin-bottom:16px}.service-card li{font-size:13px;padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid rgba(119,67,51,.10)}.service-card li:last-child{border-bottom:0;margin-bottom:18px}.service-card a{display:inline-flex;border-radius:999px;background:#c88f87;color:#fff;padding:12px 18px;font-size:13px;font-weight:700}

.ritual{padding:0;margin-top:20px}.ritual-grid{display:grid;grid-template-columns:420px 1fr;gap:0;align-items:stretch}.ritual-image img{width:100%;height:100%;object-fit:cover;border-top-left-radius:var(--radius);border-bottom-left-radius:var(--radius)}.ritual-copy{padding:34px 38px 28px;position:relative}.ritual-copy::after{content:"✦ ✧";position:absolute;right:24px;top:20px;color:rgba(195,149,74,.7);letter-spacing:10px;font-size:18px}.ritual-copy p{font-size:16px;max-width:620px}.benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:22px}.benefits div{display:grid;gap:8px;justify-items:start;font-weight:700;font-size:15px;color:var(--brown)}.benefits span{width:42px;height:42px;border:1px solid rgba(119,67,51,.14);border-radius:999px;display:grid;place-items:center;color:var(--rose);background:rgba(255,255,255,.46);font-size:18px}

.gallery{padding:10px 0 0}.gallery-grid{display:grid;grid-template-columns:230px 1fr;gap:20px;padding:12px 20px 8px;align-items:stretch;background:linear-gradient(135deg,#fff7f0,#f8e2d3)}.gallery-intro{padding:14px 12px}.gallery-intro h2{margin-bottom:8px}.gallery-intro p{font-size:14px;font-weight:600;color:#563a31;margin-bottom:18px}.gallery-wall{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:98px;gap:8px}.gallery-wall img{width:100%;height:100%;object-fit:cover;border-radius:10px;box-shadow:0 5px 14px rgba(72,40,25,.12)}.gallery-wall img:nth-child(3){grid-row:span 2}.gallery-wall img:nth-child(6){grid-column:span 2}.gallery-note{grid-column:2;color:#7a5a4f;font-size:11px;text-align:center;margin:0}

.promos{padding:14px 0}.promo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;width:min(1180px,calc(100% - 42px));margin-inline:auto}.promo-card{min-height:168px;border-radius:14px;border:1px solid rgba(119,67,51,.18);background:linear-gradient(135deg,#fdeee5,#fff8f2);display:grid;grid-template-columns:1.1fr .9fr;gap:10px;overflow:hidden;box-shadow:0 14px 32px rgba(65,35,23,.09)}.promo-card>div:first-child{padding:22px 0 20px 24px}.promo-card small{display:inline-block;color:#9c5d56;background:rgba(255,255,255,.62);border:1px solid rgba(185,125,112,.22);border-radius:999px;padding:4px 10px;font-weight:700;font-size:10px;text-transform:uppercase;letter-spacing:.05em;margin-bottom:10px}.promo-card h3{font-family:var(--font-title);font-size:26px;margin-bottom:6px;line-height:1.05;color:var(--brown)}.promo-card p{font-size:13px;font-weight:600;margin-bottom:12px;color:#55382f}.promo-card a{font-size:13px;font-weight:800;color:var(--rose-dark)}.promo-card img{width:100%;height:100%;object-fit:cover;min-height:168px}.calendar-mini{margin:20px 18px 18px 0;background:#fffaf7;border-radius:14px;border:1px solid rgba(119,67,51,.18);display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:14px;align-self:stretch;box-shadow:inset 0 0 0 5px rgba(246,225,212,.4)}.calendar-mini strong{grid-column:1/-1;font-family:var(--font-title);font-size:22px;color:var(--brown-2)}.calendar-mini span{display:grid;place-items:center;font-size:12px;color:#8b6960;background:#f8eadf;border-radius:8px;padding:4px 0}

.about-location{padding-bottom:14px}.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:0}.about-card,.location-card{width:100%;border-radius:0;box-shadow:none;padding:28px 42px;background:rgba(255,250,245,.8)}.about-card{border-top-left-radius:var(--radius);border-bottom-left-radius:var(--radius)}.location-card{border-left:0;border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius)}.about-card p{font-size:14px;font-weight:500;color:#4f342c}.values{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:22px}.values span{font-family:var(--font-title);font-weight:700;text-align:center;border-top:1px solid rgba(181,121,111,.24);padding-top:10px;color:var(--rose-dark)}.location-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:26px;align-items:stretch}.info-list p{display:flex;gap:10px;align-items:flex-start;font-size:14px;font-weight:600;color:#51342c;margin-bottom:14px}.info-list span{color:var(--rose);font-size:20px}.location-actions{display:grid;gap:10px;margin-top:20px}.map-card{position:relative;display:block;border:1px solid rgba(119,67,51,.16);border-radius:14px;overflow:hidden;min-height:190px;background:#f2e2d5}.map-card img{width:100%;height:100%;min-height:190px;object-fit:cover;filter:saturate(.75) sepia(.16) brightness(1.02)}.map-card div{position:absolute;left:16px;right:16px;bottom:14px;padding:12px 14px;border-radius:14px;background:rgba(255,250,245,.86);box-shadow:0 10px 20px rgba(55,33,22,.12);font-size:13px;color:var(--brown)}

.faq-contact{padding-bottom:18px}.contact-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:0}.faq-card,.message-card{width:100%;border-radius:0;box-shadow:none;background:rgba(255,250,245,.84);padding:28px 42px}.faq-card{border-top-left-radius:var(--radius);border-bottom-left-radius:var(--radius)}.message-card{border-left:0;border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius);display:grid;grid-template-columns:1.2fr .85fr;gap:24px;align-items:center;background:linear-gradient(135deg,#fff7f0,#f4d7c7)}.accordion{border-top:1px solid rgba(119,67,51,.16);margin-bottom:12px}.accordion button{width:100%;border:0;border-bottom:1px solid rgba(119,67,51,.16);background:transparent;padding:13px 0;text-align:left;display:flex;justify-content:space-between;align-items:center;color:var(--brown);font-weight:800;font-size:14px;cursor:pointer}.accordion button span{transition:transform .2s ease;color:var(--rose-dark)}.accordion button.open span{transform:rotate(180deg)}.accordion div{display:none;padding:0 0 12px;color:#5b4138;font-size:13px}.accordion div.show{display:block}.accordion p{margin:0}.link-muted{font-size:13px;font-weight:700;color:var(--rose-dark);text-decoration:underline}.message-card p{font-size:14px;font-weight:600;color:#594037}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}input,textarea{width:100%;border:1px solid rgba(119,67,51,.22);border-radius:9px;background:rgba(255,255,255,.72);padding:13px 14px;color:var(--brown);outline:none;margin-bottom:10px}textarea{resize:vertical}input:focus,textarea:focus{border-color:var(--gold);box-shadow:0 0 0 4px rgba(189,135,46,.13)}.message-card button{width:210px}.message-card img{width:100%;height:220px;object-fit:cover;border-radius:14px;box-shadow:0 14px 28px rgba(62,35,22,.16)}

.final-cta{background:linear-gradient(135deg,#bd7772,#bf8b45);color:#fff;margin-bottom:18px;border-color:rgba(255,255,255,.24);position:relative}.final-cta::before,.final-cta::after{content:"☾ ✦ ✧";position:absolute;color:rgba(255,231,184,.6);font-size:28px;letter-spacing:14px}.final-cta::before{left:34px;top:24px}.final-cta::after{right:34px;bottom:24px}.final-grid{display:flex;align-items:center;justify-content:center;gap:80px;text-align:center;padding:34px 54px;position:relative;z-index:1}.final-cta h2{color:#fff;margin-bottom:8px}.final-cta p{font-weight:600;margin:0;max-width:620px}.final-cta .btn-gold{background:linear-gradient(135deg,#c89034,#e0b452)}

.footer{padding:18px 0 70px;background:#fff8f1;border-top:1px solid rgba(119,67,51,.12)}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:36px;align-items:start}.footer img{width:150px;margin-bottom:8px}.footer p{font-size:13px;color:#5d4137;margin-bottom:10px;font-weight:500}.footer a{font-weight:800;color:var(--rose-dark)}.copyright{text-align:center;color:#80685d;font-size:12px;margin-top:12px}.floating-whatsapp{position:fixed;right:26px;bottom:26px;width:66px;height:66px;border-radius:999px;background:#25d366;color:#fff;display:grid;place-items:center;font-size:31px;font-weight:900;box-shadow:0 18px 34px rgba(37,211,102,.34);z-index:40;border:5px solid rgba(255,255,255,.9)}

@media (max-width:1050px){
  .nav-cta{display:none}.main-nav{gap:22px}.services-grid{padding-inline:0;grid-template-columns:repeat(2,1fr)}.benefits{grid-template-columns:repeat(2,1fr)}.promo-grid{grid-template-columns:1fr}.split-grid,.contact-grid{grid-template-columns:1fr}.about-card,.location-card,.faq-card,.message-card{border-radius:0;border-left:1px solid var(--line)}.about-card,.faq-card{border-top-left-radius:var(--radius);border-top-right-radius:var(--radius)}.location-card,.message-card{border-bottom-left-radius:var(--radius);border-bottom-right-radius:var(--radius);border-top:0}.footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:820px){
  .container,.section-card,.promo-grid{width:min(100% - 28px,1180px)}.nav-wrap{height:72px}.brand img{width:112px}.menu-toggle{display:flex}.main-nav{position:fixed;left:14px;right:14px;top:80px;display:none;flex-direction:column;gap:0;background:#fffaf5;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:18px;padding:10px}.main-nav.open{display:flex}.main-nav a{width:100%;padding:14px 16px;border-radius:12px}.main-nav a::after{display:none}.main-nav a:hover,.main-nav a.active{background:#f7e6dc}.hero-banner{min-height:470px}.hero-banner img{object-position:60% center}.hero-overlay{background:linear-gradient(180deg,rgba(48,24,18,.18) 0%,rgba(48,24,18,.45) 100%)}.hero-content{min-height:470px;padding:28px 24px 32px;max-width:100%}.hero-content h1{font-size:48px}.section-title span{width:44px}.filters{gap:10px}.filter{min-width:auto;padding:9px 15px}.ritual-grid{grid-template-columns:1fr}.ritual-image{height:220px}.ritual-copy{padding:24px}.ritual-copy::after{display:none}.gallery-grid{grid-template-columns:1fr}.gallery-note{grid-column:auto}.gallery-wall{grid-template-columns:repeat(2,1fr);grid-auto-rows:120px}.gallery-wall img:nth-child(3),.gallery-wall img:nth-child(6){grid-row:auto;grid-column:auto}.location-grid,.message-card{grid-template-columns:1fr}.final-grid{flex-direction:column;gap:18px;padding:34px 18px}.final-cta::before,.final-cta::after{display:none}
}
@media (max-width:560px){
  h1{font-size:43px}.hero-text{font-size:15px}.hero-actions .btn{width:100%}.hero-content{padding:22px 18px 24px}.hero-banner{min-height:320px}.hero-content h1{font-size:40px}.services-grid{grid-template-columns:1fr}.service-card{min-height:auto}.promo-card{grid-template-columns:1fr}.promo-card>div:first-child{padding:20px}.promo-card img{height:190px}.calendar-mini{margin:0 18px 18px}.values{grid-template-columns:1fr 1fr}.form-row{grid-template-columns:1fr}.message-card button{width:100%}.footer-grid{grid-template-columns:1fr}.floating-whatsapp{width:58px;height:58px;right:18px;bottom:18px}.about-card,.location-card,.faq-card,.message-card{padding:24px 20px}.gallery-wall{grid-auto-rows:105px}
}
