
:root{
  --brand:#14b8c4; /* turquoise from logo */
  --dark:#0f172a; /* slate-900 */
  --light:#f8fafc;
  --muted:#475569;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,'Helvetica Neue',Arial;
  color:#111827;
  background:#fff;
}
a{color:var(--brand);text-decoration:none}
.header{
  position:sticky;top:0;z-index:50;
  background:rgba(255,255,255,.9);backdrop-filter:saturate(180%) blur(10px);
  border-bottom:1px solid #e5e7eb;
}
.container{max-width:1200px;margin:0 auto;padding:0 16px}
.nav{display:flex;align-items:center;justify-content:space-between;padding:10px 0}
.logo{display:flex;align-items:center;gap:10px}
.logo img{height:40px;width:auto;border-radius:6px}
.btn{
  display:inline-block;padding:12px 18px;border-radius:999px;
  background:var(--brand);color:#fff;font-weight:700;border:none;cursor:pointer
}
.btn:hover{filter:brightness(.95)}
.hero{position:relative}
.slider{position:relative;overflow:hidden;height:min(70vh,680px)}
.slide{position:absolute;inset:0;opacity:0;transition:opacity .8s ease}
.slide.active{opacity:1}
.slide img{width:100%;height:100%;object-fit:cover}
.hero-overlay{
  position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.55),rgba(0,0,0,.25) 50%,rgba(0,0,0,.6));
  display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;padding:24px
}
.hero h1{font-size:clamp(28px,6vw,60px);margin:0 0 12px}
.hero p{font-size:clamp(16px,2.5vw,22px);opacity:.95}
.hero .cta{margin-top:14px;display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
.section{padding:56px 0}
.section h2{margin:0 0 12px;font-size:clamp(24px,4vw,36px)}
.section p.lead{color:var(--muted);max-width:65ch}
.grid{display:grid;gap:16px}
.grid.cards{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.card{
  border:1px solid #e5e7eb;border-radius:16px;overflow:hidden;background:#fff;
  box-shadow:0 8px 24px rgba(15,23,42,.05)
}
.card img{width:100%;height:200px;object-fit:cover;display:block}
.card .pad{padding:16px}

.gallery{columns:1;column-gap:12px}
@media(min-width:640px){.gallery{columns:2}}
@media(min-width:1024px){.gallery{columns:3}}
.gallery img{
  width:100%;margin:0 0 12px;border-radius:12px;display:block;break-inside:avoid;
  cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.08)
}

/* Lightbox */
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.9);display:none;align-items:center;justify-content:center;z-index:1000}
.lightbox.active{display:flex}
.lightbox img{max-width:92vw;max-height:88vh;border-radius:8px}

/* Contact */
.form{display:grid;gap:12px;max-width:720px}
.input, textarea{
  width:100%;padding:12px 14px;border-radius:12px;border:1px solid #cbd5e1;font:inherit
}
textarea{min-height:140px}
.footer{
  background:var(--dark);color:#e2e8f0;padding:28px 0;margin-top:32px
}
.footer a{color:#93c5fd}
.badge{padding:6px 10px;border-radius:999px;background:rgba(20,184,196,.12);color:var(--brand);font-weight:600;display:inline-block}

.whatsapp{
  position:fixed;right:18px;bottom:18px;z-index:1001;
  background:#25D366;color:#fff;border-radius:999px;padding:14px 18px;
  box-shadow:0 12px 24px rgba(0,0,0,.2);display:flex;align-items:center;gap:10px;font-weight:700
}
.whatsapp img{height:24px}
/* Mobile menu */
.menu-btn{display:none}
@media(max-width:900px){
  .menu{display:none}
  .menu.open{display:block;position:absolute;right:16px;top:64px;background:#fff;border:1px solid #e5e7eb;border-radius:14px;box-shadow:0 12px 24px rgba(0,0,0,.08)}
  .menu a{display:block;padding:12px 18px}
  .menu-btn{display:block}
}
