/* RESPONSIVE
   Todos los media queries juntos y cargados al final, para que las
   sobrescrituras por ancho ganen sin depender del orden de los ficheros. */

@media(min-width:931px){
  .padrino{grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr)}
}

@media(max-width:1200px){
  .btn-nav{width:42px;height:42px;padding:0;border-radius:50%}
  .btn-nav-label{
    position:absolute;width:1px;height:1px;padding:0;margin:-1px;
    overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0
  }
}
@media(max-width:930px){
  :root{--desfase-barra:140px}
  .nav{grid-template-columns:1fr auto;min-height:0;gap:10px 14px;padding:11px 0}
  .brand{grid-column:1;grid-row:1}
  .actions{grid-column:2;grid-row:1}
  .navlinks{
    grid-column:1/-1;grid-row:2;justify-self:stretch;width:100%;
    display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px
  }
  .navlinks a{text-align:center}
  .hero-grid,.split,.booking-grid,.section-head{grid-template-columns:1fr}
  .cierre-grid,.padrino,.experiencia{grid-template-columns:1fr;gap:26px}
  .padrino-precio{justify-items:stretch}.padrino-precio .precio-grande{justify-self:start}
  .persona,.persona:nth-child(even){grid-template-columns:1fr;direction:ltr;gap:20px}
  .persona-foto{max-width:280px}
  .cards{grid-template-columns:1fr 1fr}
  .reviews-head{align-items:flex-start;flex-wrap:wrap}
  .legal-hero-grid,.legal-layout{grid-template-columns:1fr}
  .legal-toc{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}
  .legal-toc strong,.legal-print{grid-column:1/-1}
  .hero-grid{padding-top:52px}.visual{min-height:430px}.section-head{gap:10px}
}
@media(max-width:640px){
  :root{--desfase-barra:128px}
  .container{width:min(100% - 24px,1180px)}
  .nav{gap:8px 10px;padding:9px 0}
  .brand span{display:none}.brand-mark{width:40px;height:40px;border-radius:12px}
  .actions{gap:6px}
  .navlinks{padding:4px;font-size:.8rem;overflow-x:auto;scrollbar-width:none}
  .navlinks a{display:flex;align-items:center;justify-content:center;min-height:40px;padding:8px 5px}
  .hero-grid{gap:34px}.visual{min-height:360px}.cards,.form{grid-template-columns:1fr}
  .reviews-head{display:grid}.reviews-toggle{justify-self:start}
  .review-card{flex-basis:clamp(268px,82vw,310px);padding:22px}
  .field.full,.form .btn,.micro{grid-column:auto}section{padding:65px 0}.footer-grid{align-items:flex-start;flex-direction:column}
  .legal-header-inner{min-height:64px;gap:8px}.legal-header-actions{gap:6px}.legal-back{padding:9px 11px;font-size:.78rem}
  .legal-hero{padding:48px 0 34px}.legal-hero h1{font-size:2.35rem}.legal-draft{padding:20px}
  .legal-layout{padding-top:24px;padding-bottom:52px;gap:20px}.legal-toc{grid-template-columns:1fr;padding:16px}
  .legal-toc strong,.legal-print{grid-column:auto}.legal-card{padding:22px 18px}.legal-data{grid-template-columns:1fr}
  .legal-data dt{padding-bottom:2px;border-bottom:0}.legal-data dd{padding-top:2px}
  .legal-action-form{grid-template-columns:1fr}.legal-action-form .full,.legal-action-form .privacy-summary,.legal-action-form .form-status{grid-column:auto}
  .lang-select{width:74px;padding:9px 10px}.cart-btn{padding:8px 10px}.btn-nav,.tema-btn{width:40px;height:40px}
}
@media(max-width:360px){
  .nav{column-gap:6px}.actions{gap:4px}.lang-select{width:64px;padding-inline:6px}
  .cart-btn{padding-inline:8px}
  .navlinks{grid-template-columns:.78fr 1.24fr 1.08fr 1fr;gap:1px;font-size:.74rem}
  .navlinks a{min-width:0;padding-inline:2px}
  .legal-back{width:40px;height:40px;padding:0;font-size:0;border-radius:50%}
  .legal-back::before{content:"←";font-size:1.1rem}
}
@media(max-width:930px){.shop-layout,.checkout-layout{grid-template-columns:1fr}.cart-panel,.order-summary{position:static}.featured-product{grid-template-columns:1fr}.cross-sell{flex-direction:column;align-items:flex-start}}
@media(max-width:640px){.featured-product{padding:18px}.product-visual{min-height:280px}.featured-product.secundario .product-visual{min-height:230px}.qty{width:88px;flex:0 0 auto}.product-actions .btn{flex:1 1 auto}}
