
:root{
  --primary:#d97c9d;
  --primary-dark:#b15f7e;
  --bg:#fff7fa;
  --text:#2b2b2b;
  --muted:#6b6b6b;
  --card:#ffffff;
}
*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,'Helvetica Neue',Arial,'Noto Sans',sans-serif;background:var(--bg);color:var(--text);line-height:1.5}
a{color:var(--primary);text-decoration:none}
header{position:sticky;top:0;background:rgba(255,255,255,.9);backdrop-filter:saturate(180%) blur(6px);box-shadow:0 2px 10px rgba(0,0,0,.06);z-index:1000}
.nav{display:flex;align-items:center;justify-content:space-between;max-width:1200px;margin:auto;padding:12px 20px}
.logo{display:flex;align-items:center;gap:12px}
.logo img{height:40px;border-radius:8px}
.logo h1{margin:0;font-size:1.1rem;font-weight:700;color:var(--primary-dark)}
nav ul{display:flex;gap:16px;margin:0;padding:0;list-style:none}
nav a{padding:8px 12px;border-radius:999px;font-weight:600}
nav a:hover{background:var(--bg)}

.hero{display:grid;grid-template-columns:1.2fr .8fr;gap:24px;max-width:1200px;margin:40px auto;padding:0 20px;align-items:center}
.hero-text h2{font-size:clamp(28px,4vw,42px);margin:.2em 0 .4em 0;color:#271c1f}
.badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}
.badge{background:#ffe5ee;color:#7a3b51;border:1px solid #f5c1d4;padding:6px 10px;border-radius:999px;font-size:.85rem}
.ctas{display:flex;gap:12px;margin-top:18px;flex-wrap:wrap}
.btn{appearance:none;border:0;border-radius:12px;padding:12px 16px;font-weight:700;cursor:pointer}
.btn-primary{background:var(--primary);color:white;box-shadow:0 6px 18px rgba(217,124,157,.3)}
.btn-primary:hover{background:var(--primary-dark)}
.btn-outline{background:transparent;border:2px solid var(--primary);color:var(--primary)}
.hero-card{background:var(--card);border-radius:16px;padding:16px;box-shadow:0 10px 30px rgba(0,0,0,.06)}
.hero-card img{width:100%;border-radius:12px;display:block}

.section{max-width:1200px;margin:40px auto;padding:0 20px}
.section h3{font-size:clamp(22px,3vw,32px);margin-bottom:16px;color:#39252a}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.card{background:var(--card);border-radius:16px;padding:16px;box-shadow:0 8px 20px rgba(0,0,0,.05)}
.card p{color:var(--muted)}

.gallery{columns:1;column-gap:12px}
.gallery img{width:100%;border-radius:12px;margin:0 0 12px 0;page-break-inside:avoid;break-inside:avoid}
@media(min-width:700px){.gallery{columns:2}}
@media(min-width:1024px){.gallery{columns:3}}

.social-embeds{display:grid;grid-template-columns:1fr;gap:16px}
@media(min-width:900px){.social-embeds{grid-template-columns:1fr 1fr}}
.embed{background:white;border-radius:16px;overflow:hidden;box-shadow:0 8px 20px rgba(0,0,0,.05)}

.contact{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.contact form{background:var(--card);padding:16px;border-radius:16px;box-shadow:0 8px 20px rgba(0,0,0,.05)}
.input{width:100%;padding:12px;border:1px solid #eee;border-radius:12px;margin-bottom:10px}
textarea.input{min-height:140px;resize:vertical}
.map{border:0;width:100%;height:100%;min-height:320px;border-radius:16px;box-shadow:0 8px 20px rgba(0,0,0,.05)}

.footer{margin-top:40px;background:#fff;border-top:1px solid #f1d7e2}
.footer-inner{max-width:1200px;margin:auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:16px 20px;color:#7a6c71;font-size:.9rem}
.footer a{color:#7a3b51;font-weight:700}

#whats-btn{
 position:fixed;right:16px;bottom:16px;background:#25d366;color:#fff;width:58px;height:58px;border-radius:50%;
 display:flex;align-items:center;justify-content:center;box-shadow:0 10px 22px rgba(37,211,102,.45);z-index:1001;
}
#lightbox{position:fixed;inset:0;background:rgba(0,0,0,.85);display:none;align-items:center;justify-content:center;z-index:2000}
#lightbox img{max-width:92vw;max-height:85vh;border-radius:12px}
#lightbox.close{display:none}
