
:root{
  --brand:#6B5BA6;
  --brand-2:#86BBD8;
  --brand-3:#75A47F;
  --wa:#25D366;
  --pastel-1:#e6e6fa;
  --pastel-2:#add8e6;
  --pastel-3:#8fbc8b;
  --text:#2b2b2b;
}
html,body{scroll-behavior:smooth}
body{color:var(--text)}
.navbar-nav .nav-link.active, .navbar-nav .nav-link.show{
  color: #644E8B !important;
}
/* Topbar */
.topbar{background:#faf7ff;border-bottom:1px solid rgba(0,0,0,.06);font-size:.95rem}
.topbar a{color:inherit;text-decoration:none}

/* Navbar - bigger */
.navbar{padding-top:.9rem;padding-bottom:.9rem}
.navbar .navbar-brand{font-weight:700;font-size:1.2rem}
.navbar .nav-link{letter-spacing:.02em;font-size:1.05rem;padding:.7rem 1rem}
.navbar .btn-wa{border-color:var(--brand);color:var(--brand)}
.navbar .btn-wa:hover{background:var(--brand);color:#fff}

/* Hero (parallax) */
.hero{
  min-height: 48vh;      /* fallback */
    min-height: 48svh;     /* mejor en móviles modernos */
  position:relative;display:grid;place-items:center;text-align:center;color:#fff;
  background: #000 url('../images/hero5.jpg') center top / cover no-repeat fixed;
}
/*.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.25),rgba(0,0,0,.55))}*/
.hero .container{position:relative;z-index:1;text-shadow:
    0 2px 6px rgba(0,0,0,.55),
    0 6px 18px rgba(0,0,0,.35),
    0 12px 30px rgba(0,0,0,.25);}
.headline{font-weight:800;font-size:clamp(2rem,4.6vw,3.6rem)}
.lead{text-shadow:
    0 2px 6px rgba(0,0,0,.55),
    0 6px 18px rgba(0,0,0,.35),
    0 12px 30px rgba(0,0,0,.25);}
/* Sections */
.section-title{font-weight:800}
.about img{border-radius:1rem}
.lead-big{font-size:1.15rem}

/* Service tiles */
.service-tile{border-radius:1rem;padding:2rem;height:100%}
.service-1{background:var(--pastel-1)}
.service-2{background:var(--pastel-2)}
.service-3{background:var(--pastel-3)}

/* Modality cards */
.modality .card{border:0;border-radius:1rem;overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,.05)}

/* Testimonios */
.testimonios{position:relative;color:#fff;background:#4b3d79 url('../images/testimonios.jpg') center/cover no-repeat fixed}
.testimonios::before{content:"";position:absolute;inset:0;background:rgba(75,61,121,.70)}
.testimonios .container{position:relative;z-index:1}

/* FAQ per color requirement */
.accordion-button{background:#CCB1C1;color:#fff}
.accordion-button:not(.collapsed){background:#644e8b;color:#fff;box-shadow:none}
.accordion-button:focus{box-shadow:none}
.accordion-button::after{filter:invert(1)}

/* WhatsApp FAB */
.wa-fab{position:fixed;right:18px;bottom:18px;z-index:1080;display:inline-flex;align-items:center;gap:.5rem;
  padding:.9rem 1.15rem;background:var(--wa);color:#fff;border-radius:999px;box-shadow:0 10px 30px rgba(0,0,0,.2);font-weight:700}
.wa-fab:hover{opacity:.92;color:#fff}
@media (max-width:576px){.wa-fab .label{display:none}}

footer{background:#1f1f1f;color:#cfcfcf}
.logo-img{height:34px;width:auto}
.fade-up{opacity:0;transform:translateY(15px);transition:all .6s ease}
.fade-up.reveal{opacity:1;transform:none}

.testimonial-author{font-weight:600;color:#fff;opacity:.9}


/* Citas – cards */
#citas .card-img-top{
  height: 220px;           /* ajusta si necesitas más alto */
  object-fit: cover;
}
.card-lift{
  transition: transform .25s ease, box-shadow .25s ease;
}
.card-lift:hover{
  transform: translateY(-4px);
  box-shadow: 0 16px 40px rgba(0,0,0,.12) !important;
}



/* Galería responsive (2025-ready) */
#galeria .gallery{
  display:grid;
  grid-template-columns: repeat(auto-fill, minmax(220px,1fr));
  gap: 16px;
}
#galeria .g-item{
  position:relative; display:block; overflow:hidden; border-radius:14px;
  background:#f3f3f3;
}
#galeria .g-item img{
  width:100%; height:100%;
  aspect-ratio: 4/3;          /* mantiene rejilla limpia */
  object-fit: cover;
  transition: transform .4s ease, filter .4s ease;
  will-change: transform;
}
#galeria .g-item:hover img{ transform: scale(1.04); filter: saturate(1.05); }

/* Lightbox */
#lightbox .modal-content{ border:0; }
#lightbox .modal-body{ min-height: 80svh; display:flex; align-items:center; justify-content:center; }
#lightbox-img{ max-height: 92vh; }
.lb-nav{
  position:absolute; top:50%; transform:translateY(-50%);
  background:rgba(0,0,0,.45); border:0; color:#fff; width:44px; height:44px;
  display:grid; place-items:center; border-radius:999px; cursor:pointer;
}
.lb-prev{ left:12px; } .lb-next{ right:12px; }
.lb-nav:hover{ background:rgba(0,0,0,.65); }
