/* ===== REVEAL ===== */
.reveal{opacity:0;transform:translateY(24px);transition:.7s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}

/* ===== RESPONSIVE ===== */
@media(max-width:860px){
  .nav__links{position:fixed;inset:0 0 0 auto;width:min(78%,320px);background:var(--cream);flex-direction:column;justify-content:center;gap:1.6rem;padding:2rem;transform:translateX(100%);transition:.35s ease;box-shadow:var(--shadow)}
  .nav__links.open{transform:none}
  .nav__burger{display:flex}
  .nav.menu-open .nav__burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .nav.menu-open .nav__burger span:nth-child(2){opacity:0}
  .nav.menu-open .nav__burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .hero__decor{opacity:.25}
  .philosophy__grid{grid-template-columns:1fr;gap:2.5rem}
  .contact__card{grid-template-columns:1fr;gap:2rem}
  .footer__inner{grid-template-columns:1fr 1fr}
  .footer__brand,.footer__news{grid-column:1/-1}
}
@media(max-width:720px){
  .modal__box{display:flex;flex-direction:column;width:min(560px,100%);height:auto;max-height:90vh}
  .modal__media{flex:none;height:240px}
  .modal__body{flex:1 1 auto;height:auto;padding:1.5rem}
}
@media(max-width:520px){
  .hero__stats{gap:1.6rem}
  .contact__form{grid-template-columns:1fr}
  .footer__inner{grid-template-columns:1fr}
  .footer__bottom{flex-direction:column;align-items:flex-start}
  .topbar__inner{font-size:.72rem}
}
@media(prefers-reduced-motion:reduce){
  *{animation:none!important;scroll-behavior:auto}
  .reveal{opacity:1;transform:none}
}

/* ===== AJUSTES MÓVIL ===== */
@media(max-width:768px){
  .section{padding:4.5rem 1.2rem}
  .section__head{margin-bottom:2.4rem}
  .hero{padding:3rem 1.2rem}
  .hero__actions{margin-bottom:2.5rem}
  .nav__inner{padding:.6rem 1.1rem}
  .brand__mark{width:46px;height:46px}
  .brand__name{font-size:1.45rem}
  .footer{padding:3.5rem 1.2rem 2rem}
  .book__info{padding:1.5rem}
  .book__picker{padding:1.5rem}
}
@media(max-width:600px){
  .hero__title{margin-bottom:1rem}
  .hero__lead{font-size:1.05rem}
  .hero__stats{gap:1.4rem 2rem}
  .hero__stats strong{font-size:1.6rem}
  .cat-tabs{gap:.5rem;margin-bottom:2rem}
  .tab{font-size:.82rem;padding:.45rem .9rem}
  .products{grid-template-columns:1fr 1fr;gap:1rem}
  .product{padding:1.1rem}
  .product__vial{height:150px}
  .product h3{font-size:1.15rem}
  .modal{padding:.8rem}
  .nav__account,.nav__theme{width:36px;height:36px}
  .nav__theme{margin-left:.4rem}
}
@media(max-width:420px){
  .products{grid-template-columns:1fr}
  .product__vial{height:200px}
  .hero__stats{flex-direction:row;flex-wrap:wrap}
  .book__day{font-size:.82rem}
}
