
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
img{max-width:100%;height:auto;display:block}
body{font-family:Inter,system-ui,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:#111827;background:#fff;line-height:1.6}
a{text-decoration:none;color:inherit}
:root{--magenta:#e31c79;--pink:#ff5aa7;--gold:#f0a13b;--gradient:linear-gradient(135deg,var(--magenta),var(--pink),var(--gold))}
.container{max-width:1140px;margin:0 auto;padding:0 1rem}
.section{padding:64px 0}
.header{position:sticky;top:0;background:rgba(255,255,255,.85);backdrop-filter:blur(10px);z-index:40;border-bottom:1px solid #f3f4f6}
.header .row{display:flex;align-items:center;justify-content:space-between;padding:10px 0}
.brand{display:flex;align-items:center;gap:10px}
.brand img{width:56px;height:56px;border-radius:12px;object-fit:contain}
.brand strong{color:var(--magenta);font-weight:900}
.nav{display:flex;gap:14px;flex-wrap:wrap}
.nav a{padding:8px 10px;border-radius:10px;font-weight:700;color:#374151}
.nav a:hover{background:#f3f4f6}
.hero{background:radial-gradient(1200px 400px at 80% -20%, #ffe6f3 10%, transparent),#faf5ff}
.hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:24px;align-items:center;min-height:520px}
@media (max-width:900px){.hero .wrap{grid-template-columns:1fr;min-height:auto}}
.hero h1{font-size:clamp(1.9rem,4vw,3.1rem);line-height:1.1;margin-bottom:10px}
.hero p{color:#4b5563;margin-bottom:18px}
.badge{display:inline-block;background:#fff;border:1px solid #eee;border-radius:999px;padding:6px 12px;font-weight:700;margin:6px 8px 0 0}
.btn{display:inline-flex;align-items:center;gap:10px;padding:12px 16px;border-radius:12px;font-weight:800;border:2px solid transparent}
.btn-primary{background:linear-gradient(135deg,#ec4899,#f9a8d4);color:#fff;box-shadow:0 4px 14px rgba(236,72,153,0.4);transition:all .3s ease}
.btn-outline{background:#fff;border-color:#e5e7eb}
.grid{display:grid;gap:22px}
.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:900px){.grid-3,.grid-2{grid-template-columns:1fr}}
.card{
  border:2px solid transparent;
  border-radius:16px;
  background-image:linear-gradient(white,white),linear-gradient(135deg,#ec4899,#f9a8d4);
  background-origin:border-box;
  background-clip:content-box,border-box;
  box-shadow:0 8px 20px rgba(236,72,153,0.1);
  transition:all .3s ease;
}
.card:hover{
  transform:translateY(-4px);
  box-shadow:0 12px 28px rgba(236,72,153,0.2);
}
.card .content{padding:16px}
footer{background:#0b0b0c;color:#d1d5db}
footer a{color:#f9a8d4}
.footerbar{border-top:1px solid #1f2937;padding:14px 0;margin-top:16px;color:#9ca3af;font-size:.9rem}
.whatsapp-float{position:fixed;right:18px;bottom:18px;width:56px;height:56px;border-radius:999px;background:linear-gradient(135deg,#ec4899,#f9a8d4);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:900;box-shadow:0 12px 22px rgba(236,72,153,.45);z-index:60;transition:all .3s ease}
.whatsapp-float:hover{transform:translateY(-2px)}

.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 18px rgba(236,72,153,0.5)}
.gallery img{
  border:2px solid transparent;
  border-radius:16px;
  background-image:linear-gradient(white,white),linear-gradient(135deg,#ec4899,#f9a8d4);
  background-origin:border-box;
  background-clip:content-box,border-box;
  box-shadow:0 8px 20px rgba(236,72,153,0.1);
  transition:all .3s ease;
}
.gallery img:hover{
  transform:translateY(-4px);
  box-shadow:0 12px 28px rgba(236,72,153,0.2);
}

/* Mobile-first nav */
.menu-toggle{font-size:1.6rem;line-height:1;border:1px solid #e5e7eb;border-radius:10px;padding:6px 10px;background:#fff}
.nav.collapsible{display:none;position:absolute;top:60px;right:12px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 10px 24px rgba(17,24,39,.12);padding:8px;flex-direction:column;gap:6px}
.nav.collapsible a{padding:10px 12px;border-radius:10px;font-weight:700;color:#374151}
.nav.open{display:flex}
@media (min-width:900px){
  .menu-toggle{display:none}
  .nav.collapsible{all:unset;display:flex}
  .nav.collapsible a{padding:8px 10px;border-radius:10px;color:#374151}
}

/* Tighter mobile spacing */
@media (max-width:640px){
  .section{padding:42px 0}
  .hero h1{font-size:1.6rem}
}

/* Ensure hero overlay text stays readable on small screens */
#hero .absolute h1{padding:0 12px;text-shadow:0 2px 10px rgba(0,0,0,.35)}

/* Sticky WhatsApp on mobile (top-right), hidden on desktop */
.whatsapp-sticky-mobile{
  position:fixed; top:72px; right:14px; width:44px; height:44px; border-radius:999px;
  background:linear-gradient(135deg,#ec4899,#f9a8d4); color:#fff;
  display:flex; align-items:center; justify-content:center; font-weight:900;
  box-shadow:0 12px 22px rgba(236,72,153,.45); z-index:70; transition:all .3s ease;
}
.whatsapp-sticky-mobile:hover{ transform:translateY(-2px); box-shadow:0 14px 24px rgba(236,72,153,.6); }
@media (min-width:900px){ .whatsapp-sticky-mobile{ display:none; } }

/* CTA spacing */
#cta-hero .btn{ font-size:1rem; padding:12px 18px }
@media (max-width:640px){
  #cta-hero{ padding:18px 0 }
}

.btn-outline:hover{background:#fdf2f8;border-color:#f9a8d4}