/*
 * ALPHA FITNESS — SECTIONS
 * Bloques extraídos del HTML monolítico (sweep final 2026-06-03).
 * Total: 6 bloques.
 */


/* ────── hero pointer-events fixes (era HTML líneas 213-363) ────── */
/* ===== Fix: hero::before no captura eventos del dropdown ===== */
.hero::before, .hero::after{
  pointer-events:none !important;
}
.hero h1, .hero .subtitle, .hero .hero-content{
  pointer-events:none;
}
.hero .hero-actions, .hero .hero-actions *{
  pointer-events:auto;
}
/* Forzar que el header (y su dropdown) estén encima de cualquier elemento del hero */
body > header{
  position:relative !important;
  z-index:99999 !important;
}

/* ===== Dropdown del userMenu (Hola, X) ===== */
#userMenu{
  display:inline-flex !important;
  align-items:center !important;
  position:relative !important;
}
#userMenu #dropdownMenu{
  display:none !important;
  position:absolute;
  top:calc(100% + 18px);
  right:-10px;
  background:#0a0a0a !important;
  background-color:#0a0a0a !important;
  border:1.5px solid #39ff14;
  padding:10px;
  border-radius:12px;
  z-index:2147483647;
  min-width:290px;
  max-height:calc(100vh - 140px);
  overflow-y:auto;
  /* overflow-x:hidden EXPLÍCITO: sin esto, `overflow-y:auto` hace que overflow-x
     compute a `auto` (regla CSS) y aparecía una barra horizontal inútil abajo
     (no hay nada que mover al costado). El scroll vertical funcional se mantiene. */
  overflow-x:hidden;
  box-shadow:0 16px 40px rgba(0,0,0,0.95), 0 0 25px rgba(57,255,20,0.18);
  text-align:left;
  font-family:'Raleway',sans-serif;
  text-shadow:none !important;
  pointer-events:auto !important;
}
#userMenu:hover #dropdownMenu,
#userMenu:focus-within #dropdownMenu,
#dropdownMenu:hover{
  display:block !important;
}
/* Puente invisible amplio para que el mouse no pierda el hover al moverse */
#userMenu #dropdownMenu::before{
  content:'';
  position:absolute;
  top:-22px; left:-20px; right:-20px;
  height:24px;
  pointer-events:auto;
  background:transparent;
}
#userMenu::after{
  content:'';
  position:absolute;
  top:100%; left:-10px; right:-10px;
  height:24px;
  pointer-events:auto;
}
#dropdownMenu, #dropdownMenu *{
  text-shadow:none !important;
  filter:none !important;
}

.dd-header{
  padding:12px 14px 14px;
  border-bottom:1px solid #1f1f1f;
  margin-bottom:8px;
}
.dd-header-row{
  display:flex; align-items:center; gap:10px;
}
.dd-avatar{
  width:34px; height:34px;
  background:rgba(57,255,20,0.12);
  border:1.5px solid #39ff14;
  border-radius:50%;
  display:inline-flex; align-items:center; justify-content:center;
  color:#39ff14; font-size:14px;
  flex-shrink:0;
}
.dd-name{
  color:#fff !important;
  font-weight:700; font-size:14px;
}
.dd-email{
  color:#888 !important;
  font-size:11px; margin-top:8px; padding-left:44px;
  letter-spacing:0.3px;
}

.dd-label{
  padding:4px 14px 8px;
  color:#666 !important;
  font-size:10px; letter-spacing:2px;
  font-weight:800; text-transform:uppercase;
}

.dd-item{
  cursor:pointer;
  color:#e8e8e8 !important;
  padding:11px 14px;
  border-radius:8px;
  font-size:13px;
  font-weight:600;
  display:flex; align-items:center; gap:12px;
  transition:background .18s, color .18s, padding-left .18s, border-left-color .18s;
  border-left:3px solid transparent;
  position:relative;
}
.dd-item i{
  color:#39ff14 !important;
  width:18px; text-align:center; font-size:14px;
  transition:transform .18s;
}
.dd-item span{ color:inherit !important; }
.dd-item:hover{
  background:rgba(57,255,20,0.12) !important;
  color:#39ff14 !important;
  border-left-color:#39ff14;
  padding-left:18px;
}
.dd-item:hover i{
  transform:scale(1.15);
  filter:drop-shadow(0 0 6px rgba(57,255,20,0.55)) !important;
}

.dd-divider{
  border-top:1px solid #1f1f1f;
  margin:8px 4px 4px;
}

.dd-logout{
  color:#ff6b6b !important;
}
.dd-logout i{ color:#ff6b6b !important; }
.dd-logout:hover{
  background:rgba(255,68,68,0.12) !important;
  color:#ff4444 !important;
  border-left-color:#ff4444 !important;
}
.dd-logout:hover i{
  color:#ff4444 !important;
  filter:drop-shadow(0 0 6px rgba(255,68,68,0.55)) !important;
}

/* ────── hero main (era HTML líneas 579-649) ────── */
  .hero{
    min-height:100vh;
    height:100vh;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:40px 20px 140px;
    margin-top:0;
  }
  .hero-content{
    width:100%; max-width:780px; margin:0 auto;
    display:flex; flex-direction:column; align-items:center;
    position:relative; z-index:2;
  }
  .hero h1{
    margin-bottom:10px !important;
  }
  .hero .subtitle{
    margin-bottom:22px !important;
  }
  .hero-lead{
    font-family:'Raleway',sans-serif;
    color:#aaa; font-size:clamp(0.85rem, 1.4vw, 0.95rem);
    margin:0 0 38px; line-height:1.6;
    font-weight:500; letter-spacing:1px;
    text-transform:uppercase;
  }
  .hero-actions{
    display:flex; gap:14px; justify-content:center;
    align-items:stretch; flex-wrap:wrap;
  }
  .hero-cta-primary,
  .hero-cta-secondary{
    height:54px;
    display:inline-flex; align-items:center; justify-content:center;
    gap:10px; padding:0 32px;
    border-radius:50px; text-decoration:none;
    font-family:'Raleway',sans-serif; font-weight:800;
    font-size:13px; letter-spacing:2px; text-transform:uppercase;
    transition:transform .2s, box-shadow .2s, border-color .2s, color .2s;
    box-sizing:border-box;
    line-height:1;
  }
  .hero-cta-primary{
    background:linear-gradient(45deg,#39ff14,#2ecc00);
    color:#000;
    box-shadow:0 8px 28px rgba(57,255,20,0.35);
  }
  .hero-cta-primary:hover{
    transform:translateY(-2px);
    box-shadow:0 12px 36px rgba(57,255,20,0.55);
  }
  .hero-cta-secondary{
    color:#fff;
    background:transparent;
    border:1.5px solid rgba(255,255,255,0.2);
  }
  .hero-cta-secondary:hover{
    border-color:#39ff14; color:#39ff14;
  }
  @media (max-width: 820px){
    .hero{ min-height:70vh !important; padding:60px 20px !important; }
    .hero-lead{
      font-size:0.7rem !important; letter-spacing:0.5px;
      margin-bottom:28px !important; padding:0 8px;
    }
    .hero-actions{ flex-direction:column; gap:10px; width:100%; max-width:280px; }
    .hero-cta-primary, .hero-cta-secondary{ width:100%; height:50px; font-size:12px; }
  }

/* ────── combo section · rediseño minimalista 2026-06-11 ──────
   Principios: superficies planas, bordes hairline, sin glows ni gradientes.
   El verde #39ff14 se reserva como acento funcional: CTA, descuento,
   progreso y estados de selección. El resto es escala de grises. */
  #comboSection{
    display:none; /* Página aislada: se muestra solo vía abrirCombos() */
    background:#050505;
    padding:26px 24px 90px;
    min-height:100vh;
    min-height:100dvh;
  }
  .combo-wrap{ max-width:1200px; margin:0 auto; }
  /* Botón volver: neutro, discreto */
  .combo-back{
    display:inline-flex; align-items:center; gap:8px; background:transparent;
    color:#888; border:1px solid #1e1e1e; padding:8px 15px;
    border-radius:999px; cursor:pointer; font-weight:600; font-size:12.5px;
    letter-spacing:0.3px; font-family:'Raleway',sans-serif; transition:color .2s, border-color .2s;
    margin-bottom:24px; -webkit-tap-highlight-color:transparent; touch-action:manipulation;
  }
  .combo-back:hover{ color:#fff; border-color:#3a3a3a; }
  /* Encabezado compacto: texto izquierda + progreso derecha, en una franja */
  .combo-head{
    display:flex; justify-content:space-between; align-items:flex-end; gap:32px;
    text-align:left; margin-bottom:24px; padding-bottom:22px;
    border-bottom:1px solid #141414;
  }
  .combo-head-text{ max-width:620px; }
  .combo-head .combo-kicker{
    color:#6a6a6a; font-weight:700; font-size:10px; letter-spacing:3px;
    text-transform:uppercase; margin-bottom:8px; font-family:'Raleway',sans-serif;
  }
  .combo-head h2{
    font-family:'Cormorant Garamond',serif; font-size:30px; font-weight:600;
    line-height:1.1; color:#fff; margin:0 0 8px; letter-spacing:0.4px;
  }
  .combo-head h2 span{ color:#39ff14; font-style:italic; }
  .combo-head p{ color:#7e7e7e; font-size:13px; margin:0; line-height:1.6; }
  .combo-head p b{ color:#fff; font-weight:700; }

  /* Progreso: compacto, alineado a la derecha del encabezado */
  .combo-progress{ width:250px; flex-shrink:0; margin:0 0 4px; }
  .combo-progress-track{ height:3px; background:#1a1a1a; border-radius:3px; overflow:hidden; }
  .combo-progress-fill{ height:100%; width:0%; background:#39ff14; border-radius:3px; transition:width .45s cubic-bezier(.4,0,.2,1); }
  .combo-progress-text{ text-align:right; margin:0 0 9px; font-size:11.5px; font-weight:600; color:#6e6e6e; letter-spacing:0.3px; transition:color .3s; }
  #comboSection.combo-active .combo-progress-text{ color:#39ff14; }

  /* Layout 2 columnas */
  .combo-layout{ display:grid; grid-template-columns:1fr 340px; gap:32px; align-items:start; }

  /* Filtros: toolbar de pills en una sola fila (desktop) */
  .combo-filters{ display:flex; flex-wrap:wrap; gap:8px; margin-bottom:20px; align-items:center; }
  .combo-filters .combo-search{ flex:1; min-width:170px; position:relative; }
  .combo-filters .combo-search i{ position:absolute; left:16px; top:50%; transform:translateY(-50%); color:#555; font-size:12px; }
  .combo-filters input, .combo-filters select{
    background:#0c0c0c; border:1px solid #1c1c1c; color:#ddd;
    padding:10px 16px; border-radius:999px; font-size:12.5px; font-family:'Raleway',sans-serif; outline:none;
    transition:border-color .2s, color .2s;
  }
  .combo-filters .combo-search input{ width:100%; padding-left:40px; }
  .combo-filters input:focus{ border-color:#3a3a3a; }
  .combo-filters input::placeholder{ color:#555; }
  /* Selects: sin flecha nativa del sistema — chevron propio, ancho al contenido */
  .combo-filters select{
    appearance:none; -webkit-appearance:none; -moz-appearance:none;
    width:auto; min-width:0; cursor:pointer; padding-right:38px;
    background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="10" height="6" viewBox="0 0 10 6"><path d="M1 1l4 4 4-4" stroke="%23666" stroke-width="1.5" fill="none" stroke-linecap="round" stroke-linejoin="round"/></svg>');
    background-repeat:no-repeat; background-position:right 16px center;
  }
  .combo-filters select:hover, .combo-filters select:focus{ border-color:#3a3a3a; color:#fff; }
  .combo-filters .combo-clear{
    background:transparent; border:1px solid #1c1c1c; color:#666; padding:10px 16px;
    border-radius:999px; cursor:pointer; font-size:12px; font-weight:600; white-space:nowrap;
    font-family:'Raleway',sans-serif; transition:color .2s, border-color .2s;
  }
  .combo-filters .combo-clear:hover{ border-color:#3a3a3a; color:#fff; }

  /* ===== Dropdown CUSTOM de marca/categoría (reemplaza el <select> nativo) ===== */
  .combo-dd{ position:relative; }
  .combo-dd-btn{
    display:inline-flex; align-items:center; gap:10px; white-space:nowrap; cursor:pointer;
    background:#0c0c0c; border:1px solid #1c1c1c; color:#ddd;
    padding:10px 16px; border-radius:999px; font-size:12.5px; font-family:'Raleway',sans-serif;
    transition:border-color .2s, color .2s, background .2s;
  }
  .combo-dd-btn:hover{ border-color:#3a3a3a; color:#fff; }
  .combo-dd.open .combo-dd-btn{ border-color:#39ff14; color:#fff; background:#0e120c; }
  .combo-dd-chev{ font-size:9px; color:#666; transition:transform .2s, color .2s; }
  .combo-dd.open .combo-dd-chev{ transform:rotate(180deg); color:#39ff14; }
  .combo-dd-panel{
    position:absolute; top:calc(100% + 8px); left:0; z-index:60;
    min-width:210px; max-width:min(280px, calc(100vw - 40px)); max-height:300px; overflow-y:auto; overflow-x:hidden;
    background:#0e0e0e; border:1px solid #242424; border-radius:14px; padding:6px;
    box-shadow:0 18px 44px rgba(0,0,0,.65);
    opacity:0; transform:translateY(-6px) scale(.97); pointer-events:none; transform-origin:top left;
    transition:opacity .16s ease, transform .16s ease;
  }
  .combo-dd.open .combo-dd-panel{ opacity:1; transform:translateY(0) scale(1); pointer-events:auto; }
  .combo-dd-item{
    display:flex; align-items:center; justify-content:space-between; gap:12px;
    padding:9px 12px; border-radius:10px; cursor:pointer; color:#bbb;
    font-size:12.5px; font-family:'Raleway',sans-serif; line-height:1.2;
    transition:background .15s, color .15s; outline:none;
  }
  .combo-dd-item:hover, .combo-dd-item:focus-visible{ background:#1a1a1a; color:#fff; }
  .combo-dd-item.sel{ color:#fff; background:rgba(57,255,20,.09); }
  .combo-dd-item i{ font-size:10px; color:#39ff14; opacity:0; transition:opacity .15s; }
  .combo-dd-item.sel i{ opacity:1; }
  .combo-dd-panel::-webkit-scrollbar{ width:8px; }
  .combo-dd-panel::-webkit-scrollbar-track{ background:transparent; }
  .combo-dd-panel::-webkit-scrollbar-thumb{ background:#242424; border-radius:8px; border:2px solid #0e0e0e; }
  .combo-dd-panel::-webkit-scrollbar-thumb:hover{ background:#333; }
  /* Mobile: dropdowns a ancho completo (apilados) → el panel nunca se desborda */
  @media (max-width: 820px){
    .combo-filters .combo-dd{ flex:1 1 100%; }
    .combo-filters .combo-dd-btn{ width:100%; justify-content:space-between; }
    .combo-dd-panel{ left:0; right:0; min-width:0; max-width:100%; }
  }

  /* Grilla de productos: cards planas, jerarquía tipográfica */
  .combo-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(175px,1fr)); gap:12px; }
  .combo-card{
    background:#0a0a0a; border:1px solid #161616; border-radius:14px; padding:12px;
    position:relative; display:flex; flex-direction:column; gap:8px;
    transition:border-color .2s, transform .2s;
  }
  .combo-card:hover{ border-color:#2c2c2c; transform:translateY(-2px); }
  .combo-card.is-added{ border-color:rgba(57,255,20,0.6); }
  .combo-check{ position:absolute; top:10px; right:10px; color:#39ff14; font-size:16px; z-index:2; animation:comboPop .3s ease; }
  @keyframes comboPop{ 0%{transform:scale(0);} 70%{transform:scale(1.25);} 100%{transform:scale(1);} }
  .combo-card-img{
    height:120px; display:flex; align-items:center; justify-content:center;
    background:#0f0f0f; border-radius:10px; overflow:hidden;
  }
  .combo-card-img img{ max-width:100%; max-height:100%; object-fit:contain; }
  .combo-card-noimg{ font-size:32px; color:#222; }
  .combo-card-brand{ color:#6a6a6a; font-size:9.5px; font-weight:700; text-transform:uppercase; letter-spacing:1.2px; }
  .combo-card-name{ color:#eee; font-size:13px; font-weight:600; margin:0; line-height:1.35; min-height:34px; }
  .combo-card-price{ color:#fff; font-size:15.5px; font-weight:700; letter-spacing:0.2px; }
  .combo-card-btn{
    margin-top:auto; width:100%; background:transparent; color:#999; border:1px solid #222;
    padding:9px; border-radius:9px; cursor:pointer; font-size:12px; font-weight:600;
    display:flex; align-items:center; justify-content:center; gap:6px;
    font-family:'Raleway',sans-serif; transition:color .18s, border-color .18s, background .18s;
    -webkit-tap-highlight-color:transparent; touch-action:manipulation;
  }
  .combo-card-btn:hover{ border-color:#fff; color:#fff; }
  .combo-card-btn.added{ background:rgba(57,255,20,0.08); border-color:rgba(57,255,20,0.5); color:#39ff14; }
  .combo-card-btn:active{ transform:scale(0.97); }

  .combo-empty-grid{ grid-column:1/-1; text-align:center; padding:60px 20px; color:#666; }
  .combo-empty-grid i{ font-size:30px; margin-bottom:14px; color:#262626; }
  .combo-empty-grid p{ font-size:13.5px; }
  .combo-empty-grid button{ margin-top:16px; background:transparent; border:1px solid #2a2a2a; color:#aaa; padding:9px 18px; border-radius:9px; cursor:pointer; font-weight:600; font-size:12.5px; transition:color .2s, border-color .2s; }
  .combo-empty-grid button:hover{ color:#fff; border-color:#3a3a3a; }

  /* Panel de resumen: plano, sticky */
  .combo-summary{
    background:#0a0a0a; border:1px solid #161616;
    border-radius:16px; padding:24px; position:sticky; top:90px;
    transition:border-color .3s;
  }
  #comboSection.combo-active .combo-summary{ border-color:rgba(57,255,20,0.45); }
  .combo-summary h3{
    font-family:'Raleway',sans-serif; font-size:12px; font-weight:800;
    letter-spacing:2.5px; text-transform:uppercase; color:#fff; margin:0 0 6px;
  }
  .combo-summary .combo-summary-sub{ color:#6e6e6e; font-size:12px; margin-bottom:18px; }
  .combo-summary-sub b{ color:#fff; }
  .combo-summary-list{ max-height:230px; overflow-y:auto; margin-bottom:18px; display:flex; flex-direction:column; gap:6px; }
  .combo-summary-empty{ text-align:center; color:#5e5e5e; padding:28px 10px; }
  .combo-summary-empty i{ font-size:22px; color:#262626; margin-bottom:10px; }
  .combo-summary-empty p{ font-size:12.5px; line-height:1.55; }
  .combo-summary-item{
    display:flex; align-items:center; gap:10px; background:transparent;
    border-bottom:1px solid #141414; border-radius:0; padding:9px 2px;
    animation:comboSlideIn .25s ease;
  }
  .combo-summary-item:last-child{ border-bottom:none; }
  @keyframes comboSlideIn{ from{opacity:0; transform:translateX(8px);} to{opacity:1; transform:translateX(0);} }
  .combo-summary-item-info{ flex:1; min-width:0; }
  .combo-summary-item-name{ display:block; color:#ddd; font-size:12.5px; font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  .combo-summary-item-brand{ display:block; color:#5e5e5e; font-size:10.5px; }
  .combo-summary-item-price{ color:#fff; font-size:12.5px; font-weight:700; white-space:nowrap; }
  .combo-summary-item-remove{ background:transparent; border:none; color:#555; cursor:pointer; font-size:13px; padding:2px 4px; transition:color .15s; }
  .combo-summary-item-remove:hover{ color:#ff6b6b; }

  .combo-totals{ border-top:1px solid #161616; padding-top:16px; }
  .combo-total-row{ display:flex; justify-content:space-between; font-size:13px; color:#8a8a8a; margin-bottom:9px; }
  .combo-total-row.discount{ color:#39ff14; font-weight:600; }
  .combo-total-row.grand{ font-size:17px; color:#fff; font-weight:700; border-top:1px solid #161616; padding-top:14px; margin-top:6px; }
  .combo-total-row.grand .combo-total-val{ color:#fff; }
  .combo-savings{
    display:none; background:rgba(57,255,20,0.06);
    color:#39ff14; border-radius:10px; padding:10px 12px; font-size:12.5px; margin:14px 0;
    text-align:center; animation:comboSlideIn .3s ease;
  }
  .combo-savings strong{ font-size:13.5px; }
  .combo-add-btn{
    width:100%; background:#39ff14; color:#000; border:none;
    padding:15px; border-radius:12px; cursor:pointer; font-weight:800; font-size:13px;
    letter-spacing:1px; text-transform:uppercase; transition:opacity .2s, transform .2s; margin-top:8px;
    display:flex; align-items:center; justify-content:center; gap:8px;
    font-family:'Raleway',sans-serif;
    -webkit-tap-highlight-color:transparent; touch-action:manipulation;
  }
  .combo-add-btn:hover:not(.disabled){ opacity:0.88; transform:translateY(-1px); }
  .combo-add-btn.disabled, .combo-add-btn:disabled{ background:#141414; color:#555; cursor:not-allowed; }
  .combo-btn-hint{ text-align:center; color:#6a6a6a; font-size:11.5px; margin-top:10px; }
  .combo-clear-btn{
    width:100%; background:transparent; border:none; color:#5e5e5e;
    padding:10px; border-radius:10px; cursor:pointer; font-size:12px; font-weight:600;
    margin-top:6px; transition:color .2s; font-family:'Raleway',sans-serif;
  }
  .combo-clear-btn:hover{ color:#ff6b6b; }

  /* Toast de confirmación */
  .combo-confirm-toast{
    position:fixed; bottom:24px; left:50%; transform:translate(-50%,140%);
    background:#0c0c0c; border:1px solid #222; border-radius:14px; padding:14px 18px;
    display:flex; align-items:center; gap:14px; z-index:1000000; max-width:92vw;
    box-shadow:0 16px 50px rgba(0,0,0,0.6); transition:transform .35s cubic-bezier(.2,.8,.2,1);
  }
  .combo-confirm-toast.show{ transform:translate(-50%,0); }
  .combo-confirm-toast > i{ color:#39ff14; font-size:24px; }
  .combo-confirm-toast strong{ display:block; color:#fff; font-size:14px; }
  .combo-confirm-toast span{ display:block; color:#999; font-size:12px; }
  .combo-confirm-toast button{ background:#39ff14; color:#000; border:none; padding:9px 14px; border-radius:8px; font-weight:800; font-size:12px; cursor:pointer; white-space:nowrap; }

  /* ===== RESPONSIVE / MOBILE ===== */
  @media (max-width: 900px){
    .combo-layout{ grid-template-columns:1fr; }
    .combo-summary{ position:static; order:2; }
    #comboSection .combo-grid-wrap{ order:1; }
  }
  @media (max-width: 760px){
    /* Encabezado apilado: texto arriba, progreso debajo a lo ancho */
    .combo-head{ flex-direction:column; align-items:stretch; gap:18px; }
    .combo-progress{ width:100%; margin:0; }
    .combo-progress-text{ text-align:left; }
  }
  @media (max-width: 600px){
    #comboSection{ padding:20px 16px 70px; }
    .combo-back{ margin-bottom:20px; }
    .combo-head{ margin-bottom:20px; padding-bottom:18px; }
    .combo-head h2{ font-size:26px; }
    .combo-head p{ font-size:12.5px; }
    .combo-grid{ grid-template-columns:repeat(2,1fr); gap:10px; }
    .combo-card{ padding:10px; }
    .combo-card-img{ height:96px; }
    .combo-card-name{ font-size:12px; min-height:30px; }
    /* Filtros en mobile: buscador full-width, selects 50/50, limpiar full */
    .combo-filters{ gap:8px; }
    .combo-filters .combo-search{ flex:1 1 100%; min-width:0; }
    .combo-filters select{ min-width:0; flex:1 1 calc(50% - 4px); }
    .combo-filters .combo-clear{ flex:1 1 100%; justify-content:center; }
    .combo-summary{ padding:20px; }
  }

/* ────── alpha cats section (era HTML líneas 930-1132) ────── */
    .alpha-cats-section {
      padding: 48px 24px 56px;
      background: #000;
      overflow: hidden;
    }
    .alpha-cats-title {
      text-align: center;
      margin-bottom: 36px;
    }
    .alpha-cats-title h2 {
      font-family: 'Cormorant Garamond', Georgia, serif;
      font-size: 2.2rem;
      font-weight: 700;
      color: #fff;
      letter-spacing: 3px;
      text-transform: uppercase;
      margin: 0;
    }
    .alpha-cats-title p {
      color: #888;
      font-size: 14px;
      margin-top: 8px;
      font-family: 'Raleway', sans-serif;
      letter-spacing: 1px;
    }
    .alpha-cats-grid {
      display: flex;
      gap: 14px;
      max-width: 1360px;
      margin: 0 auto;
      overflow-x: auto;
      scroll-snap-type: x mandatory;
      scrollbar-width: none;
      -ms-overflow-style: none;
      padding-bottom: 4px;
    }
    .alpha-cats-grid::-webkit-scrollbar { display: none; }

    .alpha-cat-card {
      position: relative;
      flex: 0 0 calc(16.666% - 12px);
      min-width: 180px;
      aspect-ratio: 3/5.5;
      border-radius: 12px;
      overflow: hidden;
      cursor: pointer;
      scroll-snap-align: start;
      transition: transform 0.35s cubic-bezier(0.22,1,0.36,1);
    }
    .alpha-cat-card:hover {
      transform: translateY(-6px);
    }

    .alpha-cat-card img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
      transition: transform 0.5s cubic-bezier(0.22,1,0.36,1), filter 0.4s ease;
    }
    .alpha-cat-card:hover img {
      transform: scale(1.06);
      filter: brightness(0.45);
    }

    .alpha-cat-overlay {
      position: absolute;
      inset: 0;
      background: rgba(0,0,0,0);
      transition: background 0.4s ease;
      z-index: 2;
    }
    .alpha-cat-card:hover .alpha-cat-overlay {
      background: rgba(0,0,0,0.45);
    }

    .alpha-cat-bar {
      position: absolute;
      top: 24px;
      left: 20px;
      width: 80px;
      height: 5px;
      border-radius: 3px;
      z-index: 3;
      opacity: 0.9;
    }

    .alpha-cat-content {
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0;
      padding: 24px 20px;
      z-index: 3;
      background: linear-gradient(0deg, rgba(0,0,0,0.75) 0%, rgba(0,0,0,0.3) 60%, transparent 100%);
    }
    .alpha-cat-name {
      font-family: 'Raleway', Arial, sans-serif;
      font-size: 17px;
      font-weight: 800;
      color: #fff;
      text-transform: uppercase;
      letter-spacing: 1.5px;
      line-height: 1.25;
      margin: 0;
    }
    .alpha-cat-count {
      font-size: 12px;
      color: rgba(255,255,255,0.6);
      margin-top: 6px;
      font-weight: 500;
      letter-spacing: 0.5px;
      opacity: 0;
      transform: translateY(8px);
      transition: opacity 0.35s ease, transform 0.35s ease;
    }
    .alpha-cat-card:hover .alpha-cat-count {
      opacity: 1;
      transform: translateY(0);
    }

    .alpha-cat-btn {
      position: absolute;
      bottom: 50%;
      left: 50%;
      transform: translate(-50%, 50%) scale(0.85);
      z-index: 4;
      background: rgba(255,255,255,0.15);
      backdrop-filter: blur(8px);
      border: 1px solid rgba(255,255,255,0.3);
      color: #fff;
      padding: 10px 24px;
      border-radius: 6px;
      font-size: 13px;
      font-weight: 700;
      letter-spacing: 1.5px;
      text-transform: uppercase;
      opacity: 0;
      transition: opacity 0.35s ease, transform 0.35s ease;
      pointer-events: none;
    }
    .alpha-cat-card:hover .alpha-cat-btn {
      opacity: 1;
      transform: translate(-50%, 50%) scale(1);
    }

    /* Admin edit badge */
    .alpha-cat-edit {
      position: absolute;
      top: 10px;
      right: 10px;
      z-index: 10;
      background: rgba(10,10,12,0.55);
      -webkit-backdrop-filter: blur(6px);
      backdrop-filter: blur(6px);
      color: #f0f0f0;
      border: 1px solid rgba(60,60,66,0.9);
      padding: 6px 12px;
      min-height: 0;            /* anula el button{min-height:44px} global */
      border-radius: 8px;
      cursor: pointer;
      font-family: inherit;
      font-size: 11px;
      font-weight: 700;
      letter-spacing: 1px;
      text-transform: uppercase;
      line-height: 1;
      display: none;            /* el JS lo pone en inline-flex para admin */
      align-items: center;
      gap: 6px;
      transition: background 0.2s, border-color 0.2s, transform 0.2s;
    }
    .alpha-cat-edit i { font-size: 10px; }
    .alpha-cat-edit:hover {
      background: rgba(22,22,26,0.8);
      border-color: rgba(110,110,118,0.95);
      transform: translateY(-1px);
    }
    .alpha-cat-add-card {
      position: relative;
      flex: 0 0 calc(16.666% - 12px);
      min-width: 180px;
      aspect-ratio: 3/5.5;
      border-radius: 12px;
      overflow: hidden;
      cursor: pointer;
      border: 2px dashed rgba(57,255,20,0.4);
      display: none;
      align-items: center;
      justify-content: center;
      flex-direction: column;
      gap: 8px;
      color: rgba(57,255,20,0.6);
      font-size: 14px;
      font-weight: 600;
      transition: border-color 0.3s, color 0.3s;
    }
    .alpha-cat-add-card:hover { border-color: #39ff14; color: #39ff14; }
    .alpha-cat-add-card i { font-size: 32px; }

    @media (max-width: 1024px) {
      .alpha-cat-card, .alpha-cat-add-card { flex: 0 0 calc(25% - 11px); min-width: 160px; }
    }
    @media (max-width: 768px) {
      .alpha-cats-section { padding: 32px 16px 40px; }
      .alpha-cats-title h2 { font-size: 1.6rem; letter-spacing: 2px; }
      .alpha-cat-card, .alpha-cat-add-card { flex: 0 0 calc(42% - 7px); min-width: 145px; aspect-ratio: 3/5.7; }
      .alpha-cat-name { font-size: 14px; }
      .alpha-cat-btn { padding: 8px 16px; font-size: 11px; }
    }
    @media (max-width: 480px) {
      .alpha-cat-card, .alpha-cat-add-card { flex: 0 0 calc(48% - 7px); min-width: 130px; }
    }

/* ────── mega menu pro (era HTML líneas 2279-2471) ────── */
/* Mejorar mega menú: minimalista y prolijo */
.mega-menu-pro{
  background:linear-gradient(180deg,#0a0a0a 0%, #000 100%) !important;
  border:1px solid #1f1f1f !important;
  border-top:2px solid #39ff14 !important;
  border-radius:0 0 14px 14px !important;
  box-shadow:0 14px 40px rgba(0,0,0,0.7), 0 0 30px rgba(57,255,20,0.08) !important;
  padding:28px 36px !important;
  gap:30px !important;
}
.mega-col h4{
  color:#39ff14 !important;
  font-family:'Raleway',sans-serif !important;
  font-size:11px !important;
  font-weight:800 !important;
  letter-spacing:2.5px !important;
  text-transform:uppercase !important;
  margin-bottom:14px !important;
  padding-bottom:10px !important;
  border-bottom:1px solid #1a1a1a !important;
  text-shadow:none !important;
}
.mega-col a{
  display:block !important;
  color:#bbb !important;
  font-size:13px !important;
  padding:7px 0 !important;
  text-decoration:none !important;
  transition:color .2s, padding-left .2s !important;
  cursor:pointer !important;
  font-weight:500 !important;
  text-shadow:none !important;
}
.mega-col a:hover{
  color:#39ff14 !important;
  padding-left:6px !important;
}

/* Vista de categoría / búsqueda */
#category-view{
  display:none; background:#000; color:#fff; min-height:60vh;
  padding:30px 20px 60px;
}
.cv-wrap{ max-width:1280px; margin:0 auto; }
.cv-header{
  display:flex; align-items:center; justify-content:space-between;
  padding:20px 0 16px; margin-bottom:24px;
  border-bottom:1px solid #1f1f1f; flex-wrap:wrap; gap:12px;
}
.cv-header h1{
  font-family:'Cormorant Garamond',serif;
  font-size:36px; color:#fff; letter-spacing:1px;
}
.cv-header h1 span{ color:#39ff14; }
.cv-count{ color:#888; font-size:13px; margin-top:4px; }
.cv-count span{ color:#39ff14; font-weight:700; }
.cv-back{
  background:transparent; color:#39ff14; border:1px solid #39ff14;
  padding:10px 18px; border-radius:8px; cursor:pointer;
  font-weight:700; letter-spacing:1px; text-transform:uppercase;
  font-size:12px; font-family:'Raleway',sans-serif;
}
.cv-back:hover{ background:#39ff14; color:#000; }

.cv-toolbar{
  display:flex; gap:14px; align-items:flex-end; flex-wrap:wrap;
  background:#0f0f0f; border:1px solid #1f1f1f; border-radius:12px;
  padding:16px 20px; margin-bottom:24px;
}
.cv-filter-group{ display:flex; flex-direction:column; gap:6px; }
.cv-filter-group label{
  color:#666; font-size:10px; letter-spacing:2px; font-weight:800;
  text-transform:uppercase; font-family:'Raleway',sans-serif;
}
.cv-select{
  background:#000 url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='%2339ff14' d='M8 11L3 6h10z'/%3e%3c/svg%3e") no-repeat right 14px center;
  background-size:14px;
  border:1px solid #2a2a2a; border-radius:8px;
  padding:10px 36px 10px 14px; color:#fff;
  font-size:13px; outline:none; cursor:pointer;
  -webkit-appearance:none; appearance:none;
  font-family:'Raleway',sans-serif; font-weight:600;
  min-width:180px; transition:border-color .2s;
}
.cv-select:hover, .cv-select:focus{ border-color:#39ff14; }
.cv-reset{
  background:transparent; border:1px solid #2a2a2a; color:#888;
  padding:10px 14px; border-radius:8px; cursor:pointer;
  font-family:'Raleway',sans-serif; font-weight:600; font-size:12px;
  letter-spacing:0.5px; transition:all .2s;
  display:inline-flex; align-items:center; gap:6px;
  align-self:stretch; margin-top:auto;
}
.cv-reset:hover{ border-color:#ff6b6b; color:#ff6b6b; }
.cv-chip{
  background:#0d0d0d; border:1px solid #2a2a2a; color:#aaa;
  padding:6px 12px; border-radius:20px; cursor:pointer;
  font-family:'Raleway',sans-serif; font-weight:600; font-size:12px;
  transition:all .18s; line-height:1; white-space:nowrap;
  -webkit-tap-highlight-color:transparent; touch-action:manipulation;
}
.cv-chip:hover{ border-color:#39ff14; color:#fff; }
.cv-chip.on{ background:rgba(57,255,20,0.12); border-color:#39ff14; color:#39ff14; }

@media (max-width: 820px){
  .cv-toolbar{ padding:12px; gap:10px; }
  .cv-select{ min-width:0; width:100%; }
  .cv-filter-group{ flex:1; min-width:140px; }
  .cv-reset{ width:100%; justify-content:center; margin-top:4px; }
}

.cv-grid{
  display:grid; grid-template-columns:repeat(4,1fr); gap:20px;
}
/* ── Card de producto (rediseño 2026-07-05, pedido del titular) ──
   Principio: UN solo acento verde por card (el precio). La marca pasa a gris
   tipográfico, el precio pierde el glow, y el CTA deja de ser una losa verde
   sólida: botón fantasma sobrio que recién se enciende al interactuar.
   La profundidad del hover viene de sombra NEGRA (elevación), no de bloom verde. */
.cv-card{
  background:#0d0d0d; border:1px solid #1c1c1c; border-radius:16px;
  padding:18px; display:flex; flex-direction:column; cursor:pointer;
  transition:transform .25s ease, border-color .25s ease, box-shadow .25s ease;
  position:relative;
}
.cv-card:hover{
  transform:translateY(-4px); border-color:rgba(57,255,20,0.28);
  box-shadow:0 18px 40px rgba(0,0,0,0.55);
}
.cv-card-img{
  background:radial-gradient(ellipse at center, #161616 0%, #0b0b0b 70%, #070707 100%);
  border:1px solid #181818;
  border-radius:12px; padding:14px;
  display:flex; align-items:center; justify-content:center;
  height:200px; margin-bottom:16px; overflow:hidden;
  position:relative;
}
.cv-card-img::before{
  content:''; position:absolute; inset:0;
  background:radial-gradient(circle at center, rgba(57,255,20,0.03) 0%, transparent 65%);
  pointer-events:none;
}
.cv-card-img img{
  max-width:100% !important; max-height:170px !important;
  width:auto !important; height:auto !important;
  object-fit:contain !important;
  transition:transform .35s ease;
}
.cv-card:hover .cv-card-img img{ transform:scale(1.04); }
.cv-card-brand{
  color:#8f8f8f; font-size:10px; font-weight:700; letter-spacing:2.2px;
  text-transform:uppercase; margin-bottom:5px;
}
.cv-card h3{
  color:#f2f2f2; font-family:'Raleway',sans-serif;
  font-size:15px; font-weight:600; line-height:1.35;
  margin-bottom:8px; min-height:40px;
}
.cv-card .cv-price{
  color:#39ff14; font-size:20px; font-weight:800; letter-spacing:-0.3px;
  margin-bottom:12px;
}
.cv-card .cv-price small{ color:#777; font-size:12px; font-weight:500; margin-left:4px; }
.cv-card .cv-btn{
  background:#141414; color:#e9e9e9;
  border:1px solid #282828; padding:11px 14px; border-radius:10px; cursor:pointer;
  font-weight:600; letter-spacing:1.2px; font-size:12px;
  text-transform:uppercase; font-family:inherit;
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  transition:border-color .22s ease, color .22s ease, background .22s ease, transform .12s ease;
  -webkit-tap-highlight-color:transparent;
}
.cv-card .cv-btn::after{
  content:'\2192'; font-size:13px; line-height:1;
  transition:transform .22s ease;
}
.cv-card .cv-btn:hover{
  border-color:rgba(57,255,20,0.55); color:#39ff14;
  background:rgba(57,255,20,0.05);
}
.cv-card .cv-btn:hover::after{ transform:translateX(3px); }
.cv-card .cv-btn:active{ transform:scale(0.985); }
.cv-card .cv-btn:focus-visible{ outline:2px solid rgba(57,255,20,0.5); outline-offset:2px; }

.cv-empty{
  text-align:center; padding:80px 20px; color:#666;
}
.cv-empty i{ font-size:56px; color:#222; margin-bottom:18px; display:block; }
.cv-empty h3{ color:#fff; font-family:'Cormorant Garamond',serif; font-size:24px; margin-bottom:8px; }
.cv-empty p{ color:#888; font-size:14px; margin-bottom:20px; }
.cv-empty button{
  background:transparent; color:#39ff14;
  border:1px solid rgba(57,255,20,0.5); padding:12px 28px; border-radius:10px;
  font-weight:700; cursor:pointer; letter-spacing:1px; text-transform:uppercase;
  transition:background .2s ease, color .2s ease;
}
.cv-empty button:hover{ background:#39ff14; color:#000; }

@media (max-width: 1100px){ .cv-grid{ grid-template-columns:repeat(3,1fr); } }
@media (max-width: 820px){
  .cv-grid{ grid-template-columns:repeat(2,1fr); gap:12px; }
  .cv-header h1{ font-size:24px; }
  .cv-card{ padding:12px; border-radius:14px; }
  .cv-card-img{ height:140px; padding:8px; margin-bottom:12px; border-radius:10px; }
  .cv-card-img img{ max-height:120px !important; }
  .cv-card-brand{ font-size:9px; letter-spacing:1.8px; }
  .cv-card h3{ font-size:13px; min-height:34px; }
  .cv-card .cv-price{ font-size:17px; margin-bottom:10px; }
  .cv-card .cv-btn{ padding:9px 10px; font-size:11px; letter-spacing:1px; }
}
@media (max-width: 400px){ .cv-grid{ grid-template-columns:1fr; } }

/* ────── af-footer (era HTML líneas 2478-2690) ────── */
.af-footer{
  background:linear-gradient(180deg,#050505 0%, #000 100%);
  border-top:1px solid #1f1f1f;
  margin-top:60px;
  color:#bbb;
  font-family:'Raleway',sans-serif;
}

/* Newsletter top strip */
.af-newsletter-strip{
  background:linear-gradient(135deg,#0a0a0a 0%, #151515 100%);
  border-bottom:1px solid #1f1f1f;
  padding:40px 20px;
}
.af-newsletter-inner{
  max-width:1200px; margin:0 auto;
  display:grid; grid-template-columns:1fr 1.2fr; gap:40px; align-items:center;
}
.af-news-text h3{
  font-family:'Cormorant Garamond',serif;
  color:#fff; font-size:28px; letter-spacing:1px; margin-bottom:6px;
}
.af-news-text h3 span{ color:#39ff14; }
.af-news-text p{ color:#888; font-size:14px; }
.af-news-form{
  display:flex; gap:10px; flex-wrap:wrap;
}
.af-news-form input{
  flex:1; min-width:220px; padding:14px 18px;
  background:#000; border:1px solid #2a2a2a; border-radius:30px;
  color:#fff; font-size:14px; outline:none; font-family:inherit;
}
.af-news-form input:focus{ border-color:#39ff14; }
.af-news-form button{
  background:linear-gradient(45deg,#39ff14,#2ecc00); color:#000;
  border:none; padding:14px 28px; border-radius:30px; cursor:pointer;
  font-weight:800; font-size:13px; letter-spacing:1.5px; text-transform:uppercase;
  font-family:inherit; transition:transform .2s, box-shadow .2s;
}
.af-news-form button:hover{ transform:translateY(-2px); box-shadow:0 6px 18px rgba(57,255,20,0.35); }

/* Main grid */
.af-footer-main{
  max-width:1200px; margin:0 auto;
  padding:50px 20px 30px;
  display:grid;
  grid-template-columns:1.5fr 1fr 1fr 1fr 1fr;
  gap:36px;
}
.af-col h4{
  color:#fff; font-size:13px; font-weight:800; letter-spacing:2px;
  text-transform:uppercase; margin-bottom:18px;
  position:relative; padding-bottom:10px;
}
.af-col h4::after{
  content:''; position:absolute; left:0; bottom:0;
  width:32px; height:2px; background:#39ff14;
  box-shadow:0 0 8px rgba(57,255,20,0.5);
}
.af-col-brand h2{
  font-family:'Cormorant Garamond',serif;
  color:#39ff14; font-size:30px; letter-spacing:3px; margin-bottom:14px;
  text-shadow:0 0 12px rgba(57,255,20,0.4);
}
.af-col-brand p{
  color:#888; font-size:13px; line-height:1.7; margin-bottom:18px;
}
.af-col a, .af-col button.lnk{
  display:block; color:#999; text-decoration:none; padding:7px 0;
  font-size:13px; transition:color .2s, transform .2s;
  background:transparent; border:none; cursor:pointer;
  font-family:inherit; text-align:left;
}
.af-col a:hover, .af-col button.lnk:hover{ color:#39ff14; transform:translateX(4px); }
.af-col a i, .af-col button.lnk i{
  color:#39ff14; margin-right:8px; width:14px; display:inline-block;
}

/* Contact info column */
.af-contact-item{
  display:flex; gap:12px; align-items:flex-start; padding:8px 0;
}
.af-contact-item i{
  color:#39ff14; font-size:14px; margin-top:3px;
  width:18px; text-align:center; flex-shrink:0;
}
.af-contact-item .lbl{ color:#666; font-size:11px; letter-spacing:1px; text-transform:uppercase; font-weight:700; }
.af-contact-item .val{ color:#fff; font-size:13px; margin-top:1px; line-height:1.4; }
.af-contact-item .val a{ color:#fff; padding:0; display:inline; }
.af-contact-item .val a:hover{ color:#39ff14; transform:none; }

/* Social */
.af-social{
  display:flex; gap:10px; margin-top:20px;
}
.af-social a{
  width:38px; height:38px; padding:0;
  background:#0f0f0f; border:1px solid #2a2a2a; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  color:#bbb; font-size:14px; transition:all .25s;
}
.af-social a:hover{
  background:#39ff14; border-color:#39ff14; color:#000;
  transform:translateY(-3px); box-shadow:0 6px 16px rgba(57,255,20,0.4);
}

/* Payment methods */
.af-payments{
  display:flex; gap:8px; flex-wrap:wrap; align-items:center;
  margin-top:10px;
}
.af-pay{
  background:#fff; color:#000; padding:6px 10px; border-radius:6px;
  font-size:10px; font-weight:800; letter-spacing:1px; text-transform:uppercase;
}
.af-pay.visa{ background:#1a1f71; color:#fff; }
.af-pay.master{ background:#eb001b; color:#fff; }
.af-pay.mp{ background:#00b1ea; color:#fff; }
.af-pay.amex{ background:#006fcf; color:#fff; }
.af-pay.cash{ background:#39ff14; color:#000; }

/* Trust strip */
.af-trust-strip{
  max-width:1200px; margin:0 auto;
  padding:24px 20px;
  border-top:1px solid #1a1a1a;
  display:grid; grid-template-columns:repeat(4,1fr); gap:20px;
}
.af-trust{
  display:flex; align-items:center; gap:12px;
}
.af-trust .ic{
  width:48px; height:48px; border-radius:50%;
  background:rgba(57,255,20,0.15); border:2px solid rgba(57,255,20,0.5);
  display:flex; align-items:center; justify-content:center;
  color:#39ff14; font-size:20px; flex-shrink:0;
  box-shadow: 0 0 12px rgba(57,255,20,0.2);
}
.af-trust .t{ color:#fff; font-size:13px; font-weight:700; }
.af-trust .s{ color:#666; font-size:11px; margin-top:2px; }

/* Bottom bar */
.af-bottom{
  border-top:1px solid #1a1a1a;
  padding:20px;
  background:#000;
}
.af-bottom-inner{
  max-width:1200px; margin:0 auto;
  display:flex; justify-content:space-between; align-items:center;
  flex-wrap:wrap; gap:14px;
}
.af-copy{
  color:#666; font-size:12px;
}
.af-copy span{ color:#39ff14; font-weight:700; }
.af-legal{
  display:flex; gap:24px;
}
.af-legal a{
  color:#888; font-size:12px; text-decoration:none;
  transition:color .2s;
}
.af-legal a:hover{ color:#39ff14; }

/* WhatsApp floating button */
.af-whatsapp-fab{
  position:fixed; bottom:24px; left:24px; z-index:9989;
  width:58px; height:58px; border-radius:50%;
  background:#25d366; color:#fff;
  display:flex; align-items:center; justify-content:center;
  font-size:28px; text-decoration:none;
  box-shadow:0 8px 25px rgba(37,211,102,0.5);
  transition:transform .2s, box-shadow .2s;
  animation:wsPulse 2.4s infinite;
}
@keyframes wsPulse{
  0%, 100%{ box-shadow:0 8px 25px rgba(37,211,102,0.5); }
  50%{ box-shadow:0 8px 25px rgba(37,211,102,0.8), 0 0 0 12px rgba(37,211,102,0.15); }
}
.af-whatsapp-fab:hover{ transform:scale(1.1); }

@media (max-width: 1024px){
  .af-footer-main{ grid-template-columns:1fr 1fr 1fr; }
  .af-col-brand{ grid-column:1 / -1; }
}
@media (max-width: 820px){
  .af-newsletter-inner{ grid-template-columns:1fr; gap:20px; text-align:center; }
  .af-news-form input{ min-width:0; }
  .af-footer-main{ grid-template-columns:1fr 1fr; padding:36px 18px 20px; gap:28px; }
  .af-col-brand{ grid-column:1 / -1; text-align:center; }
  .af-col-brand h4::after{ left:50%; transform:translateX(-50%); }
  .af-col-brand .af-social{ justify-content:center; }
  .af-col h4{ font-size:12px; }
  .af-trust-strip{ grid-template-columns:1fr 1fr; gap:14px; padding:20px 18px; }
  .af-trust{ gap:10px; }
  .af-trust .ic{ width:42px; height:42px; font-size:16px; border-width:1.5px; }
  .af-trust .t{ font-size:12px; }
  .af-trust .s{ font-size:10px; }
  .af-bottom-inner{ flex-direction:column; text-align:center; gap:14px; }
  .af-legal{ justify-content:center; flex-wrap:wrap; }
  .af-whatsapp-fab{ width:52px; height:52px; bottom:80px; left:14px; font-size:24px; }
}
@media (max-width: 480px){
  .af-footer-main{ grid-template-columns:1fr; }
  .af-col h4{ text-align:center; }
  .af-col h4::after{ left:50%; transform:translateX(-50%); }
  .af-col a, .af-col button.lnk{ text-align:center; }
  .af-col a:hover, .af-col button.lnk:hover{ transform:none; }
  .af-contact-item{ justify-content:center; }
}
