*{box-sizing:border-box}:root{--blue:#073b90;--blue2:#0a58ca;--ink:#152033;--muted:#667085;--line:#dce4ef;--bg:#f3f6fb;--ok:#087443;--danger:#b42318}html,body{margin:0;background:var(--bg);font-family:Arial,Helvetica,sans-serif;color:var(--ink)}body{min-height:100vh}.page{max-width:1220px;margin:auto;padding:24px 14px 60px}.brand{display:flex;align-items:center;gap:12px;margin-bottom:22px}.logo-box{width:52px;height:52px;border-radius:15px;display:grid;place-items:center;background:var(--blue);color:#fff;font-weight:900;font-size:20px}.brand strong{display:block;color:var(--blue);font-size:22px}.brand span{display:block;color:var(--muted);font-size:13px;margin-top:2px}.auth-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:18px}.hero-card,.form-card,.portal-top,.home-section,.advisor-card{background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 12px 32px rgba(16,24,40,.06)}.hero-card{min-height:500px;padding:48px;background:linear-gradient(145deg,#073b90,#0a58ca);color:#fff;display:flex;flex-direction:column;justify-content:center}.hero-card .eyebrow{color:#d9e8ff}.hero-card h1{font-size:42px;line-height:1.08;margin:8px 0 16px;max-width:650px}.hero-card>p:not(.eyebrow){font-size:18px;line-height:1.55;color:#eef5ff}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.chips span{padding:9px 12px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);font-size:12px;font-weight:800}.form-card{padding:22px}.tabs{display:grid;grid-template-columns:1fr 1fr;background:#eef3f9;border-radius:12px;padding:4px;margin-bottom:18px}.tabs button{border:0;background:transparent;padding:11px;border-radius:9px;font-weight:900;color:#667085;cursor:pointer}.tabs button.active{background:#fff;color:var(--blue);box-shadow:0 2px 7px rgba(16,24,40,.08)}form{display:grid;gap:12px}label{font-size:13px;font-weight:800}input,select{width:100%;margin-top:6px;border:1px solid #b9c4d3;border-radius:10px;padding:11px 12px;font:inherit;background:#fff}.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.primary,.secondary{border:0;border-radius:11px;padding:12px 14px;font-weight:900;cursor:pointer}.primary{background:var(--blue);color:#fff}.secondary{background:#eef4ff;color:var(--blue)}fieldset{border:1px solid var(--line);border-radius:12px;padding:12px;margin:0}legend{font-size:13px;font-weight:900;color:var(--blue);padding:0 6px}.check{display:flex;align-items:center;gap:7px;margin:6px 0;font-weight:700}.check input{width:auto;margin:0}.option-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px 8px}.field-title{font-size:12px;font-weight:900;margin:12px 0 4px}.note{font-size:12px;color:var(--muted);line-height:1.45;margin:0}.message{padding:11px 12px;border-radius:10px;font-size:13px;font-weight:800;margin-bottom:12px;background:#eef4ff;color:var(--blue)}.message.error{background:#fef3f2;color:#b42318}.message.ok{background:#ecfdf3;color:var(--ok)}.hidden{display:none!important}.eyebrow,.section-kicker{font-size:11px;font-weight:900;letter-spacing:.11em;color:var(--blue);margin:0}.portal-shell{display:grid;gap:18px}.portal-top{display:flex;justify-content:space-between;align-items:center;padding:22px}.portal-top h1{margin:5px 0;color:var(--blue)}.portal-top p{margin:0;color:var(--muted)}.home-status{padding:12px 15px;border-radius:12px;background:#eef4ff;color:var(--blue);font-weight:800}.home-status.error{background:#fef3f2;color:var(--danger)}.banner-section{position:relative}.banner-stage{min-height:330px}.banner-card,.banner-fallback{min-height:330px;border-radius:24px;overflow:hidden;box-shadow:0 16px 40px rgba(7,59,144,.18);background-size:cover;background-position:center;display:flex;align-items:flex-end}.banner-card.banner-no-image,.banner-fallback{background:linear-gradient(135deg,#073b90,#0b65d8)}.banner-copy{padding:38px;color:#fff;max-width:700px}.banner-copy .section-kicker,.banner-fallback .section-kicker{color:#dbeafe}.banner-copy h2,.banner-fallback h2{font-size:40px;line-height:1.05;margin:8px 0 12px}.banner-subtitle,.banner-fallback p{font-size:17px;line-height:1.5;margin:0 0 18px;color:#eef5ff}.banner-button{display:inline-block;padding:12px 16px;border-radius:11px;background:#fff;color:var(--blue);font-weight:900;text-decoration:none}.banner-fallback{padding:38px;color:#fff;flex-direction:column;align-items:flex-start;justify-content:center}.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.7);background:rgba(255,255,255,.92);color:var(--blue);font-size:28px;cursor:pointer;box-shadow:0 4px 18px rgba(0,0,0,.16)}.carousel-prev{left:14px}.carousel-next{right:14px}.banner-dots{display:flex;justify-content:center;gap:7px;margin-top:10px}.banner-dot{width:9px;height:9px;border-radius:50%;padding:0;border:0;background:#b8c5d8;cursor:pointer}.banner-dot.active{background:var(--blue);transform:scale(1.2)}.home-section{padding:22px}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:15px}.section-head h2,.advisor-card h2{margin:4px 0 0;color:#073b90}.category-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.category-card,.promotion-card{border:1px solid #e2e7ef;border-radius:16px;overflow:hidden;background:#fff;min-width:0}.category-media{aspect-ratio:4/3;background:#eaf0f8;overflow:hidden}.category-image,.promotion-image,.news-image{width:100%;height:100%;object-fit:cover;display:block}.image-placeholder{display:grid;place-items:center;width:100%;height:100%;min-height:120px;background:linear-gradient(145deg,#eef4ff,#d9e8ff);color:#073b90;font-weight:900}.category-body,.promotion-body{padding:14px}.category-body h3,.promotion-body h3,.news-copy h3,.notice-item h3{margin:0 0 7px;color:#073b90}.category-body p,.promotion-body p,.news-copy p,.notice-item p{margin:0;color:var(--muted);font-size:13px;line-height:1.45}.text-link{display:inline-block;margin-top:10px;color:#073b90;text-decoration:none;font-size:13px;font-weight:900}.promotion-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.promotion-card>.promotion-image,.promotion-card>.image-placeholder{aspect-ratio:16/9;min-height:0}.home-columns{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}.news-list,.notice-list{display:grid;gap:10px}.news-item{display:grid;grid-template-columns:120px 1fr;gap:12px;border:1px solid #e2e7ef;border-radius:14px;padding:10px}.news-thumb{height:90px;border-radius:10px;overflow:hidden;background:#eef4ff}.news-thumb .image-placeholder{min-height:90px;font-size:11px}.news-meta{font-size:11px;color:#667085;font-weight:800}.news-copy h3{margin-top:4px}.notice-item{border:1px solid #e2e7ef;border-left:4px solid #8fa7c5;border-radius:12px;padding:13px}.notice-item.important{border-left-color:#f59e0b}.notice-item.urgent{border-left-color:#d92d20}.notice-badge{display:inline-block;font-size:10px;font-weight:900;letter-spacing:.05em;margin-bottom:5px;color:#667085}.notice-item.important .notice-badge{color:#a15c00}.notice-item.urgent .notice-badge{color:#b42318}.advisor-card{padding:22px;display:flex;align-items:center;justify-content:space-between;gap:16px}.advisor-card p:not(.section-kicker){margin:7px 0 0;color:var(--muted)}.action-link{text-decoration:none}.empty-card{grid-column:1/-1;padding:22px;border:1px dashed #cbd5e1;border-radius:14px;color:#667085;text-align:center}.link-button{border:0;background:transparent;color:var(--blue);font-weight:800;cursor:pointer;padding:5px;text-align:center}.form-title{margin:0;color:var(--blue);font-size:20px}.optional{font-weight:500;color:var(--muted)}.reset-wrap{max-width:560px;margin:40px auto}.reset-card{padding:28px}.reset-title{color:var(--blue);margin:8px 0 18px}.back-link{display:block;text-align:center;color:var(--blue);font-weight:800;text-decoration:none;margin-top:18px}@media(max-width:1000px){.category-grid{grid-template-columns:repeat(3,1fr)}.home-columns{grid-template-columns:1fr}.promotion-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:800px){.auth-grid{grid-template-columns:1fr}.hero-card{min-height:300px;padding:28px}.hero-card h1{font-size:32px}.banner-stage,.banner-card,.banner-fallback{min-height:280px}.banner-copy h2,.banner-fallback h2{font-size:31px}.category-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.page{padding:14px 9px 30px}.two,.option-grid,.category-grid,.promotion-grid{grid-template-columns:1fr}.form-card{padding:16px}.portal-top,.advisor-card{align-items:flex-start;gap:12px;flex-direction:column}.banner-stage,.banner-card,.banner-fallback{min-height:300px}.banner-copy,.banner-fallback{padding:26px 22px}.banner-copy h2,.banner-fallback h2{font-size:28px}.carousel-arrow{display:none!important}.news-item{grid-template-columns:90px 1fr}.news-thumb{height:80px}}

/* =========================================================
   Aires Depot Portal Profesional
   Ajuste responsive: banner completo + novedades visuales
   2026-09-09
   ========================================================= */

/* Banner principal: respeta siempre la proporción recomendada 1800x500 (3.6:1).
   Ya no fuerza una altura fija que provoque recortes en celular. */
.banner-stage{
  min-height:0;
}
.banner-card{
  width:100%;
  min-height:0;
  aspect-ratio:18 / 5;
  background-size:contain;
  background-repeat:no-repeat;
  background-position:center center;
  background-color:#073b90;
}
.banner-fallback{
  min-height:330px;
}

/* Cuando el banner lleva textos HTML encima, mantenemos la capa sobre la imagen
   sin alterar la proporción del banner. */
.banner-copy{
  position:relative;
  z-index:1;
}

/* Novedades: en computadora pasan a tarjetas visuales de ancho completo.
   Las imágenes recomendadas 800x600 (4:3) se muestran grandes y sin recorte. */
.home-columns{
  grid-template-columns:1fr;
}
.news-list{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.news-item{
  display:flex;
  flex-direction:column;
  gap:0;
  padding:0;
  overflow:hidden;
  background:#fff;
  min-width:0;
}
.news-thumb{
  width:100%;
  height:auto;
  aspect-ratio:4 / 3;
  border-radius:0;
  overflow:hidden;
  background:#eef4ff;
}
.news-image{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
}
.news-thumb .image-placeholder{
  min-height:0;
  height:100%;
}
.news-copy{
  padding:14px 15px 16px;
}
.news-meta{
  display:block;
  margin-bottom:6px;
}
.news-copy h3{
  margin:0 0 8px;
  font-size:20px;
}
.news-copy p{
  font-size:14px;
}

/* Tablets */
@media(max-width:900px){
  .news-list{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

/* Celular: banner completo y novedades a una sola columna con imagen grande. */
@media(max-width:560px){
  .banner-stage,
  .banner-card{
    min-height:0;
  }
  .banner-card{
    aspect-ratio:18 / 5;
    border-radius:18px;
    background-size:contain;
    background-position:center center;
  }
  .banner-fallback{
    min-height:250px;
  }
  .banner-copy{
    padding:16px;
  }
  .banner-copy h2{
    font-size:22px;
  }
  .banner-subtitle{
    font-size:14px;
  }
  .news-list{
    grid-template-columns:1fr;
  }
  .news-item{
    display:flex;
    flex-direction:column;
  }
  .news-thumb{
    width:100%;
    height:auto;
    aspect-ratio:4 / 3;
  }
  .news-copy{
    padding:14px 15px 16px;
  }
  .news-copy h3{
    font-size:21px;
  }
}

/* =========================================================
   Fase 4: Mi cuenta, cuentas bancarias, módulos preparados
   y centros de servicio
   ========================================================= */
#portalHome{display:grid;gap:18px}.quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.quick-card{appearance:none;text-align:left;border:1px solid #dce4ef;background:#fff;border-radius:16px;padding:18px;cursor:pointer;box-shadow:0 6px 18px rgba(16,24,40,.04);transition:.15s ease}.quick-card:hover{transform:translateY(-1px);border-color:#a9c5ed}.quick-card strong{display:block;color:#073b90;font-size:17px;margin-bottom:6px}.quick-card span{display:block;color:#667085;font-size:12px;line-height:1.4}.quick-card.prepared{background:linear-gradient(145deg,#f8fbff,#eef4ff)}.module-view{display:grid;gap:18px}.module-head{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#fff;border:1px solid #dce4ef;border-radius:22px;padding:20px 22px;box-shadow:0 12px 32px rgba(16,24,40,.06)}.module-head h2{margin:4px 0 0;color:#073b90}.placeholder-module{text-align:center;padding:42px 24px}.placeholder-module h3{color:#073b90;font-size:26px;margin:0 0 10px}.placeholder-module p{color:#667085;max-width:720px;margin:0 auto 18px;line-height:1.55}.coming-badge{display:inline-block;border-radius:999px;padding:8px 12px;background:#eef4ff;color:#073b90;font-weight:900;font-size:11px;letter-spacing:.08em}.account-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:18px}.account-layout h3{margin:0 0 15px;color:#073b90}.data-grid{display:grid;grid-template-columns:1fr;gap:9px}.data-item{display:grid;gap:3px;padding:11px 12px;background:#f8fafc;border:1px solid #e4e9f1;border-radius:11px}.data-item span{font-size:11px;color:#667085;font-weight:800}.data-item strong{font-size:14px;color:#152033;word-break:break-word}.fiscal-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:15px}.fiscal-form .span2{grid-column:span 2}.account-note{margin-bottom:5px}.bank-warning{margin:0 0 15px;padding:11px 13px;border-radius:11px;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;font-size:13px;font-weight:800}.bank-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.bank-card{position:relative;border:1px solid #dce4ef;border-radius:16px;padding:18px;background:#fff;overflow:hidden}.bank-card.highlight{border:2px solid #f59e0b;background:linear-gradient(145deg,#fffaf0,#fff)}.bank-highlight{display:inline-block;background:#f59e0b;color:#fff;border-radius:999px;padding:6px 9px;font-size:10px;font-weight:900;letter-spacing:.06em;margin-bottom:9px}.bank-card h3{margin:0 0 7px;color:#073b90}.brand-restriction{margin:0 0 14px;color:#b45309;font-size:13px;font-weight:900}.bank-data{display:grid;gap:8px}.bank-row{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:8px;align-items:center;padding-top:8px;border-top:1px solid #edf0f5}.bank-row span{font-size:11px;color:#667085;font-weight:800}.bank-row strong{font-size:13px;word-break:break-word}.copy-button{border:0;border-radius:8px;background:#eef4ff;color:#073b90;padding:6px 8px;font-size:11px;font-weight:900;cursor:pointer}.bank-note{margin:13px 0 0;padding:10px;border-radius:10px;background:#fff7ed;color:#9a3412;font-size:12px;font-weight:800;line-height:1.45}.service-center-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.service-center-card{border:1px solid #dce4ef;border-radius:15px;padding:16px;background:#fff}.service-center-card h3{margin:5px 0 10px;color:#073b90}.service-center-card p{margin:5px 0;color:#667085;font-size:13px;line-height:1.4}.service-brand{display:inline-block;color:#073b90;background:#eef4ff;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:900;text-transform:uppercase}.service-note{padding-top:7px;border-top:1px solid #edf0f5}.bank-card .copy-button:focus,.quick-card:focus{outline:3px solid rgba(10,88,202,.2);outline-offset:2px}
@media(max-width:1000px){.quick-grid{grid-template-columns:repeat(2,1fr)}.account-layout{grid-template-columns:1fr}.service-center-list{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.quick-grid,.bank-grid,.service-center-list,.fiscal-form{grid-template-columns:1fr}.fiscal-form .span2{grid-column:auto}.module-head{align-items:flex-start;flex-direction:column}.bank-row{grid-template-columns:90px minmax(0,1fr)}.bank-row .copy-button{grid-column:2;justify-self:start}.quick-card{padding:15px}.bank-card{padding:15px}}


/* Ajuste edición de Mi cuenta */
.account-email-note{margin-top:10px}.fiscal-form input[readonly]{background:#f2f4f7;color:#667085;cursor:not-allowed}
@media(max-width:650px){.account-layout .home-section{padding:18px}.fiscal-form label{min-width:0}}

/* =========================================================
   Fase 5: Productos, Precio Profesional y mayoreo por volumen
   ========================================================= */
.category-product-button{border:0;background:transparent;padding:0;cursor:pointer;text-align:left}.products-toolbar{display:grid;gap:14px;margin-bottom:14px}.product-category-tabs{display:flex;gap:8px;flex-wrap:wrap}.product-category-tab{border:1px solid #cdd8e7;background:#fff;color:#073b90;border-radius:999px;padding:9px 12px;font-weight:900;cursor:pointer}.product-category-tab.active{background:#073b90;color:#fff;border-color:#073b90}.product-search{max-width:520px;color:#344054}.product-search input{margin-top:6px}.volume-pricing-notice{margin:0 0 14px;padding:12px 14px;border-radius:12px;background:#ecfdf3;border:1px solid #a6f4c5;color:#067647;font-size:13px;font-weight:900}.products-status{color:#667085;font-size:12px;font-weight:800;margin:0 0 12px}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.product-card{display:flex;flex-direction:column;border:1px solid #dce4ef;border-radius:16px;padding:16px;background:#fff;min-width:0;box-shadow:0 6px 18px rgba(16,24,40,.035)}.product-card-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.product-brand{font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:#073b90}.availability-badge{display:inline-block;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:900;white-space:nowrap}.availability-badge.floor{background:#ecfdf3;color:#067647}.availability-badge.warehouse{background:#eef4ff;color:#073b90}.product-name{margin:12px 0 8px;color:#152033;font-size:17px;line-height:1.3}.product-details{margin:0 0 14px;color:#667085;font-size:12px;line-height:1.45}.product-prices{display:grid;gap:8px;margin-top:auto;padding-top:12px;border-top:1px solid #edf0f5}.price-row{display:flex;justify-content:space-between;gap:12px;align-items:end}.price-row span{color:#667085;font-size:11px;font-weight:800}.price-row strong{font-size:15px;color:#152033;white-space:nowrap}.professional-price{padding:9px 10px;border-radius:10px;background:#eef4ff}.professional-price span,.professional-price strong{color:#073b90}.volume-price{padding:10px;border-radius:10px;background:#ecfdf3;border:1px solid #a6f4c5}.volume-price span,.volume-price strong{color:#067647}.volume-price strong{font-size:17px}.public-price strong{font-weight:800}.product-actions{display:flex;gap:8px;margin-top:13px}.product-actions>*{flex:1;text-align:center;text-decoration:none}.product-link{display:inline-flex;justify-content:center;align-items:center}.product-quote{border:1px solid #cdd8e7}.product-card .secondary,.product-card .primary{padding:10px 11px;font-size:12px}@media(max-width:1000px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.product-grid{grid-template-columns:1fr}.product-category-tabs{display:grid;grid-template-columns:1fr 1fr}.product-category-tab{border-radius:10px;text-align:left}.product-actions{flex-direction:column}.price-row{align-items:center}.product-name{font-size:18px}}
.quick-grid{grid-template-columns:repeat(5,minmax(0,1fr))}@media(max-width:1000px){.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.quick-grid{grid-template-columns:1fr}}

/* Fase 5B - navegación funcional Productos / Novedades */
.category-card{display:flex;flex-direction:column}.category-body{display:flex;flex-direction:column;flex:1}.category-body p{margin-bottom:12px}.category-cta{margin-top:auto;display:inline-flex;align-items:center;justify-content:center;width:100%;border:0;border-radius:10px;padding:10px 12px;background:#eef4ff;color:#073b90;font-size:13px;font-weight:900;text-decoration:none;cursor:pointer}.category-card.is-clickable{cursor:pointer;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.category-card.is-clickable:hover{transform:translateY(-2px);border-color:#aac5ed;box-shadow:0 8px 22px rgba(7,59,144,.10)}.category-card.is-clickable:focus{outline:3px solid rgba(10,88,202,.22);outline-offset:3px}.section-action{border:0;border-radius:10px;padding:9px 12px;background:#eef4ff;color:#073b90;font-weight:900;cursor:pointer}.module-intro{margin:0 0 16px;color:#667085;font-size:13px;line-height:1.55}.news-clickable{cursor:pointer;transition:transform .15s ease,border-color .15s ease}.news-clickable:hover{transform:translateY(-1px);border-color:#aac5ed}.news-open-label{display:inline-block;margin-top:8px;color:#073b90;font-size:12px;font-weight:900}.news-full-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.news-full-card{overflow:hidden;border:1px solid #dce4ef;border-radius:16px;background:#fff}.news-full-card.focused{border:2px solid #0a58ca;box-shadow:0 10px 28px rgba(7,59,144,.12)}.news-full-media{aspect-ratio:4/3;background:#eef4ff;overflow:hidden}.news-full-image{width:100%;height:100%;object-fit:cover;display:block}.news-full-body{padding:16px}.news-full-body h3{margin:6px 0 8px;color:#073b90;font-size:20px}.news-full-body p{margin:0;color:#667085;line-height:1.55}.news-external-link{display:inline-flex;margin-top:14px;text-decoration:none;justify-content:center}.quick-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:900px){.news-full-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.news-full-grid,.quick-grid{grid-template-columns:1fr}.category-cta{font-size:14px}.section-action{padding:8px 10px}.news-full-body h3{font-size:19px}}


/* Ajuste 18-sep-2026: agrupación de productos, 24h y envío gratis */
.product-legal-note{margin:0 0 16px;padding:11px 13px;border-radius:11px;background:#fff8e1;border:1px solid #f6c453;color:#784b00;font-size:12px;font-weight:800;line-height:1.45}
.product-results{display:grid;gap:20px}
.product-group{border-radius:16px;min-width:0}
.product-group-head{margin:0 0 12px;padding:12px 14px;border-radius:12px;border-left:5px solid #0a58ca;background:#f5f8fd}
.product-group-title{margin:0;color:#073b90;font-size:18px;line-height:1.25}
.product-group-description{margin:5px 0 0;color:#667085;font-size:12px;line-height:1.45}
.product-group-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.warehouse-group{padding-top:6px;border-top:3px solid #d9e5f6}
.warehouse-group .product-group-head{border-left-color:#2563eb;background:#eef4ff}
.shipping-group{padding-top:6px;border-top:3px solid #f6c453}
.shipping-group .product-group-head{border-left-color:#f59e0b;background:#fff8e1}
.availability-badge.shipping{background:#fff1c2;color:#92400e;border:1px solid #f6c453}
@media(max-width:1000px){.product-group-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.product-group-grid{grid-template-columns:1fr}.product-group-title{font-size:17px}.product-group-head{padding:11px 12px}}

/* Ajuste 19-sep-2026: disponibilidad y diferenciación visual */
.availability-badge.floor{background:#e8f7ee;color:#137a3f;border:1px solid #a9dfbc}
.floor-group .product-group-head{border-left-color:#1d7a46;background:#edf9f1}
.floor-group .product-group-title{color:#146c3b}
.warehouse-group{padding-top:8px;border-top:3px solid #f59e0b}
.warehouse-group .product-group-head{border-left-color:#f59e0b;background:#fff1d6;border:1px solid #ffd18a;border-left-width:6px;box-shadow:0 5px 14px rgba(245,158,11,.10)}
.warehouse-group .product-group-title{color:#a64b00}
.warehouse-group .product-group-description{color:#805326}
.availability-badge.warehouse{background:#fff1d6;color:#a64b00;border:1px solid #ffd18a}
.shipping-group{padding-top:8px;border-top:3px solid #16a34a}
.shipping-group .product-group-head{border-left-color:#16a34a;background:#ecfdf3;border:1px solid #a6f4c5;border-left-width:6px}
.shipping-group .product-group-title{color:#067647}
.shipping-empty-message{padding:14px;border:1px dashed #8bd4a4;border-radius:12px;background:#f7fef9;color:#50705c;font-size:12px;font-weight:700;line-height:1.5}


/* =========================================================
   Cotizador profesional · 19-sep-2026
   ========================================================= */
.quote-module-head{gap:14px}.quote-head-actions{display:flex;gap:8px;flex-wrap:wrap}.quote-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px;align-items:start}.quote-builder-panel{min-width:0}.quote-items{display:grid;gap:14px}.quote-item{border:1px solid #dce4ef;border-radius:16px;padding:16px;background:#fff}.quote-item-top{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.quote-item-copy h4{margin:5px 0 5px;color:#152033;font-size:17px;line-height:1.3}.quote-item-copy p{margin:0;color:#667085;font-size:12px;line-height:1.45}.quote-remove{border:1px solid #f1b8b4;background:#fff5f4;color:#b42318;border-radius:9px;padding:8px 10px;font-weight:900;cursor:pointer}.quote-item-controls{display:grid;grid-template-columns:100px 150px minmax(220px,1fr) 150px;gap:12px;align-items:end;margin-top:15px;padding-top:14px;border-top:1px solid #edf0f5}.quote-field{display:grid;gap:6px;color:#344054;font-size:12px;font-weight:800}.quote-field input{width:100%}.quote-price-box{display:grid;gap:5px;padding:10px 11px;border-radius:11px;background:#f7f9fc;border:1px solid #e6ebf2}.quote-price-box span{font-size:10px;color:#667085;font-weight:900;text-transform:uppercase}.quote-price-box strong{font-size:16px;color:#073b90}.quote-sale-price{background:#ecfdf3;border-color:#a6f4c5}.quote-sale-price strong{color:#067647}.quote-profit-control{display:grid;gap:7px}.quote-profit-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.quote-profit-head>span{font-size:12px;font-weight:900;color:#344054}.quote-profit-head small{color:#067647;font-weight:900}.quote-profit-inputs{display:grid;grid-template-columns:minmax(100px,1fr) 70px 18px;gap:8px;align-items:center}.quote-profit-inputs input[type=range]{width:100%;accent-color:#0a58ca}.quote-profit-inputs input[type=number]{margin:0;text-align:center;font-weight:900}.quote-percent-suffix{font-weight:900;color:#073b90}.quote-service-card,.quote-commercial-card{margin-top:18px;padding-top:18px;border-top:1px solid #e7edf5}.quote-service-card h3,.quote-commercial-card h3{margin:4px 0 12px;color:#073b90}.quote-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.quote-form-grid label{display:grid;gap:6px;color:#344054;font-size:12px;font-weight:800}.quote-form-grid .span2{grid-column:1/-1}.quote-form-grid textarea{resize:vertical;min-height:82px}.quote-summary-panel{position:sticky;top:16px}.quote-summary-panel h3{margin:4px 0 12px;color:#073b90}.quote-issuer-summary{display:grid;gap:4px;padding:12px;border-radius:12px;background:#f5f8fd;border:1px solid #dce7f6}.quote-issuer-summary strong{color:#073b90}.quote-issuer-summary span{font-size:12px;color:#667085;line-height:1.4}.quote-issuer-summary .quote-data-warning{color:#9a3412;font-weight:800}.quote-totals{display:grid;gap:9px;margin:16px 0}.quote-totals>div{display:flex;justify-content:space-between;gap:14px;padding:8px 0;border-bottom:1px solid #edf0f5}.quote-totals span{color:#667085;font-size:12px;font-weight:800}.quote-totals strong{color:#152033}.quote-grand-total{padding:12px 0!important;border-top:2px solid #073b90;border-bottom:0!important}.quote-grand-total span,.quote-grand-total strong{color:#073b90;font-size:18px}.quote-private-note{margin:12px 0;padding:10px;border-radius:10px;background:#fff8e1;border:1px solid #f6c453;color:#784b00;font-size:11px;line-height:1.45}.quote-main-action{width:100%;margin-top:9px}.quote-preview-section{margin-top:18px}.quote-print-area{border:1px solid #dce4ef;border-radius:14px;padding:24px;background:#fff;color:#152033}.quote-print-header{display:flex;justify-content:space-between;gap:24px;padding-bottom:16px;border-bottom:2px solid #073b90}.quote-print-issuer h2{margin:0 0 6px;color:#073b90}.quote-print-issuer p{margin:3px 0;color:#475467;font-size:12px}.quote-print-title{text-align:right}.quote-print-title span{display:block;color:#073b90;font-size:20px;font-weight:900}.quote-print-title strong{display:block;margin-top:7px;color:#667085;font-size:12px}.quote-print-table{width:100%;border-collapse:collapse;margin-top:16px}.quote-print-table th,.quote-print-table td{padding:10px 8px;border-bottom:1px solid #e5e7eb;text-align:left;font-size:12px}.quote-print-table th{color:#073b90;font-size:11px;text-transform:uppercase}.quote-print-table th:nth-child(1),.quote-print-table td:nth-child(1){width:60px;text-align:center}.quote-print-table th:nth-child(3),.quote-print-table td:nth-child(3),.quote-print-table th:nth-child(4),.quote-print-table td:nth-child(4){text-align:right;white-space:nowrap}.quote-print-total{display:flex;justify-content:flex-end;gap:22px;align-items:center;padding:16px 8px}.quote-print-total span{font-weight:900;color:#073b90}.quote-print-total strong{font-size:22px;color:#073b90}.quote-print-terms{padding:14px;border-radius:10px;background:#f7f9fc}.quote-print-terms p{margin:5px 0;color:#475467;font-size:11px;line-height:1.5}
@media(max-width:1100px){.quote-layout{grid-template-columns:1fr}.quote-summary-panel{position:static}.quote-item-controls{grid-template-columns:100px 1fr 1fr}.quote-profit-control{grid-column:2/-1}.quote-sale-price{grid-column:3}}
@media(max-width:700px){.quote-module-head{align-items:stretch}.quote-head-actions{width:100%}.quote-head-actions .secondary{flex:1}.quote-item-top{align-items:stretch}.quote-item-controls{grid-template-columns:1fr 1fr}.quote-profit-control{grid-column:1/-1}.quote-sale-price{grid-column:auto}.quote-form-grid{grid-template-columns:1fr}.quote-form-grid .span2{grid-column:auto}.quote-print-area{padding:16px}.quote-print-header{flex-direction:column}.quote-print-title{text-align:left}.quote-print-table{display:block;overflow-x:auto}.quote-preview-section{padding:14px}}
@media print{body{background:#fff!important}.brand,.pwa-install-card,#authView,.portal-top,#homeStatus,#portalHome,#productsView,#newsView,#accountView,#toolsView,#serviceCentersView,.quote-module-head,#quoteMessage,.quote-layout,.quote-preview-section>.section-head{display:none!important}main.page{max-width:none!important;margin:0!important;padding:0!important}.portal-shell,.module-view,#quoteView,.quote-preview-section{display:block!important;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important;background:#fff!important}.quote-preview-section{display:block!important}.quote-print-area{display:block!important;border:0!important;border-radius:0!important;padding:0!important;box-shadow:none!important}@page{size:A4;margin:14mm}.quote-print-table th,.quote-print-table td{font-size:10pt}.quote-print-issuer p,.quote-print-terms p{font-size:9pt}}


/* Cotizador Profesional V2 */
.module-head-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.quote-top-button{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}
.quote-top-button span{display:inline-grid;place-items:center;min-width:23px;height:23px;padding:0 6px;border-radius:999px;background:#fff;color:#073b90;font-size:11px}
.quote-add-products-top{display:inline-flex;align-items:center;justify-content:center;gap:6px}

.quote-top-meta{display:grid;grid-template-columns:minmax(210px,280px) minmax(260px,1fr);gap:14px;margin:0 0 18px}
.quote-number-box,.quote-customer-field{background:#fff;border:1px solid #dce4ef;border-radius:15px;padding:14px 16px;box-shadow:0 6px 18px rgba(16,24,40,.035)}
.quote-number-box{display:grid;gap:5px}
.quote-number-box span,.quote-customer-field>span{color:#667085;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.quote-number-box strong{color:#073b90;font-size:18px;letter-spacing:.03em}
.quote-customer-field{display:grid;gap:7px}
.quote-customer-field input{margin:0}

.quote-profit-money{display:flex;justify-content:flex-end;gap:7px;align-items:center;margin-top:2px;padding:7px 9px;border-radius:9px;background:#ecfdf3;border:1px solid #a6f4c5;color:#067647}
.quote-profit-money span{font-size:11px;font-weight:800}
.quote-profit-money strong{font-size:13px}

.quote-print-number{color:#073b90!important;font-size:13px!important;letter-spacing:.04em}
.quote-print-attention{display:flex;gap:10px;align-items:center;padding:12px 0 4px;border-bottom:1px solid #e5e7eb}
.quote-print-attention span{font-size:10px;font-weight:900;letter-spacing:.05em;color:#667085}
.quote-print-attention strong{font-size:13px;color:#152033}
.quote-print-footer{margin-top:18px;padding-top:12px;border-top:1px solid #dce4ef;text-align:center}
.quote-print-footer span{color:#073b90;font-size:12px;font-weight:900;letter-spacing:.03em}

@media(max-width:700px){
  .products-module-head{align-items:stretch}
  .products-module-head .module-head-actions{width:100%}
  .products-module-head .module-head-actions>*{flex:1}
  .quote-top-meta{grid-template-columns:1fr}
}


/* Cotizador Profesional V3 */
.quote-new-top{
  border:1px solid #f59e0b;
  border-radius:10px;
  background:#fff7ed;
  color:#b45309;
  font-weight:900;
  padding:10px 14px;
  cursor:pointer;
}
.quote-new-top:hover{background:#ffedd5}
.quote-cost-block{
  margin-top:14px;
  padding:14px;
  border:1px solid #dce4ef;
  border-radius:14px;
  background:#fbfdff;
}
.quote-cost-block h4{margin:0 0 10px;color:#073b90;font-size:15px}
.quote-shipping-block{border-color:#f6c66a;background:#fffaf0}
.quote-shipping-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}
.quote-shipping-head p{margin:3px 0 0;color:#8a5b00;font-size:12px;line-height:1.4}
.quote-shipping-toggle{
  display:flex!important;
  align-items:center;
  gap:7px!important;
  margin:0!important;
  padding:7px 10px;
  border-radius:999px;
  background:#fff;
  border:1px solid #f2c15d;
  white-space:nowrap;
  font-size:12px;
  font-weight:800;
  color:#8a5b00;
}
.quote-shipping-toggle input{width:auto!important;margin:0!important}
#quoteShippingAmount.is-disabled{opacity:.55;background:#eef2f6;cursor:not-allowed}
@media(max-width:700px){
  .quote-shipping-head{flex-direction:column}
  .quote-shipping-toggle{align-self:flex-start}
}

/* Cotizador Profesional V4 */
.quote-whatsapp-button{width:100%;border:0;border-radius:11px;background:#25D366;color:#fff;font-weight:900;padding:12px 14px;cursor:pointer;margin-bottom:10px}
.quote-whatsapp-button:hover{filter:brightness(.96)}


/* Acciones de producto + asesores disponibles V5 */
.product-actions-three{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}
.product-actions-three>*{
  min-height:42px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  line-height:1.15;
}
.product-view-link{
  border:1px solid #cdd8e7;
  background:#eef4ff;
  color:#073b90;
  font-weight:900;
  border-radius:11px;
}
.product-whatsapp-order{
  border:0;
  border-radius:11px;
  padding:10px 11px;
  background:#25D366;
  color:#fff;
  font-weight:900;
  cursor:pointer;
}
.product-whatsapp-order:hover{filter:brightness(.96)}
.product-view-link:disabled{opacity:.55;cursor:not-allowed}

.available-advisors-list{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.available-advisor-card{
  border:1px solid #dce4ef;
  border-radius:15px;
  padding:14px;
  background:#fff;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.available-advisor-copy{display:grid;gap:4px}
.available-advisor-copy strong{color:#073b90}
.available-advisor-copy span{font-size:12px;color:#087443;font-weight:800}
.advisor-alt-whatsapp{
  text-decoration:none;
  border-radius:10px;
  padding:9px 12px;
  background:#25D366;
  color:#fff;
  font-size:12px;
  font-weight:900;
  white-space:nowrap;
}
@media(max-width:900px){
  .available-advisors-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .product-actions-three{grid-template-columns:1fr}
  .available-advisors-list{grid-template-columns:1fr}
}


/* V6 · precio de venta editable + imagen de producto */
.product-image-wrap{
  width:100%;
  height:170px;
  margin:8px 0 12px;
  border-radius:12px;
  background:#f7f9fc;
  border:1px solid #e4eaf2;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
}
.product-image{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}
.quote-sale-price{
  display:grid!important;
  gap:6px;
  align-content:center;
}
.quote-sale-price-input{
  width:100%;
  min-width:0;
  border:1px solid #95e2b4;
  border-radius:9px;
  background:#ecfdf3;
  color:#067647;
  font-weight:900;
  font-size:16px;
  padding:9px 10px;
  text-align:right;
}
.quote-sale-price-input:focus{
  outline:2px solid rgba(6,118,71,.16);
  border-color:#12b76a;
}
@media(max-width:620px){
  .product-image-wrap{height:145px}
}


/* V7 · Novedades en carrusel */
.news-section-head{
  align-items:center;
}
.news-title-button{
  border:0;
  background:transparent;
  padding:0;
  text-align:left;
  cursor:pointer;
}
.news-title-button span{
  display:grid;
  gap:3px;
}
.news-title-button .section-kicker{
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
  color:#073b90;
}
.news-title-button strong{
  color:#073b90;
  font-size:24px;
  line-height:1.1;
}
.news-carousel-shell{
  position:relative;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
}
.news-carousel-viewport{
  overflow:hidden;
  min-width:0;
}
.news-carousel-track{
  display:flex;
  transition:transform .38s ease;
  will-change:transform;
}
.news-carousel-track .news-item{
  flex:0 0 33.333333%;
  box-sizing:border-box;
  margin:0;
  min-width:0;
  grid-template-columns:120px minmax(0,1fr);
}
.news-carousel-arrow{
  width:38px;
  height:38px;
  border:1px solid #cfd9e8;
  border-radius:999px;
  background:#fff;
  color:#073b90;
  font-size:27px;
  font-weight:900;
  display:grid;
  place-items:center;
  cursor:pointer;
  box-shadow:0 6px 16px rgba(7,59,144,.08);
}
.news-carousel-arrow:hover{
  background:#eef4ff;
}
.news-carousel-dots{
  margin-top:12px;
  display:flex;
  justify-content:center;
  gap:7px;
}
.news-carousel-dot{
  width:8px;
  height:8px;
  border:0;
  border-radius:999px;
  padding:0;
  background:#c8d3e3;
  cursor:pointer;
}
.news-carousel-dot.active{
  width:22px;
  background:#073b90;
}
.news-clickable{
  cursor:pointer;
}
@media(max-width:980px){
  .news-carousel-track .news-item{
    flex-basis:50%;
  }
}
@media(max-width:620px){
  .news-carousel-track .news-item{
    flex-basis:100%;
    grid-template-columns:110px minmax(0,1fr);
  }
  .news-carousel-shell{
    grid-template-columns:32px minmax(0,1fr) 32px;
    gap:6px;
  }
  .news-carousel-arrow{
    width:32px;
    height:32px;
    font-size:22px;
  }
  .news-title-button strong{
    font-size:22px;
  }
}


/* V8 · Buscador principal + novedades carrusel destacado */
.portal-main-search-section{
  display:grid;
  grid-template-columns:minmax(260px,.8fr) minmax(520px,1.7fr);
  gap:22px;
  align-items:end;
  border:1px solid #b7cff5;
  background:linear-gradient(135deg,#f8fbff 0%,#eef5ff 100%);
}
.portal-search-copy h2{margin:3px 0 7px;color:#073b90}
.portal-search-copy p{margin:0;color:#667085;line-height:1.45}
.portal-main-search-form{
  display:grid;
  grid-template-columns:minmax(240px,1fr) minmax(190px,.55fr) auto;
  gap:10px;
  align-items:end;
}
.portal-main-search-form label{display:grid;gap:6px;margin:0}
.portal-main-search-form label>span{font-size:11px;font-weight:900;color:#344054;text-transform:uppercase;letter-spacing:.04em}
.portal-main-search-form input,.portal-main-search-form select{
  width:100%;height:46px;border:1px solid #b8c7dc;border-radius:11px;background:#fff;padding:0 13px;color:#152033;font-weight:700;
}
.portal-main-search-button{height:46px;white-space:nowrap}

/* Una novedad por vez también en computadora */
#newsSection{overflow:hidden}
.news-carousel-track .news-item{
  flex:0 0 100%!important;
  grid-template-columns:minmax(300px,42%) minmax(0,1fr)!important;
  min-height:280px;
  padding:0;
  overflow:hidden;
  border-radius:16px;
}
.news-carousel-track .news-thumb{
  min-height:280px;
  height:100%;
  border-radius:0;
}
.news-carousel-track .news-image,
.news-carousel-track .news-thumb .image-placeholder{
  width:100%;height:100%;min-height:280px;object-fit:cover;border-radius:0;
}
.news-carousel-track .news-copy{
  padding:24px 24px 22px;
  align-self:center;
}
.news-carousel-track .news-copy h3{font-size:25px;line-height:1.12;margin:6px 0 10px}
.news-carousel-track .news-copy p{font-size:15px;line-height:1.5}
.news-open-label{display:inline-block;margin-top:10px;color:#073b90;font-weight:900}
.news-full-media-button{border:0;padding:0;background:transparent;cursor:pointer;text-align:inherit}

@media(max-width:900px){
  .portal-main-search-section{grid-template-columns:1fr}
  .portal-main-search-form{grid-template-columns:1fr 1fr}
  .portal-main-search-button{grid-column:1/-1}
}
@media(max-width:620px){
  .portal-main-search-form{grid-template-columns:1fr}
  .portal-main-search-button{grid-column:auto;width:100%}
  .news-carousel-track .news-item{grid-template-columns:1fr!important;min-height:0}
  .news-carousel-track .news-thumb{height:220px;min-height:220px}
  .news-carousel-track .news-image,.news-carousel-track .news-thumb .image-placeholder{min-height:220px;height:220px}
  .news-carousel-track .news-copy{padding:17px}
  .news-carousel-track .news-copy h3{font-size:20px}
}


/* ==========================================================
   V9 · ENCABEZADO / ACCESOS / CARRUSELES
========================================================== */

.portal-brandbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}
.brand-identity{
  display:flex;
  align-items:center;
  gap:12px;
}
.brand-account-button{
  border:1px solid #d7e1ef;
  border-radius:14px;
  background:#fff;
  color:#073b90;
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px 14px;
  cursor:pointer;
  box-shadow:0 6px 18px rgba(16,24,40,.05);
}
.brand-account-button:hover{border-color:#9fbae3;background:#f8fbff}
.brand-account-icon{
  width:34px;height:34px;border-radius:10px;background:#eef4ff;
  display:grid;place-items:center;font-size:20px;font-weight:900
}
.brand-account-button strong{display:block;font-size:14px;text-align:left}
.brand-account-button small{display:block;margin-top:2px;color:#667085;font-size:10px;text-align:left}
.portal-welcome{justify-content:flex-start}

/* Accesos rápidos profesionales */
.quick-access-pro{
  background:linear-gradient(145deg,#fff,#f8fbff);
}
.quick-grid.quick-grid-pro{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px;
}
.quick-card-pro{
  min-height:126px;
  position:relative;
  display:grid;
  grid-template-columns:42px minmax(0,1fr) 18px;
  align-items:start;
  gap:11px;
  text-align:left;
  padding:16px;
  border:1px solid #dce4ef;
  border-radius:16px;
  background:#fff;
  color:#152033;
  box-shadow:0 5px 18px rgba(16,24,40,.035);
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease;
}
.quick-card-pro:hover{
  transform:translateY(-2px);
  border-color:#9fbae3;
  box-shadow:0 10px 24px rgba(7,59,144,.09);
}
.quick-card-pro.prepared{background:#f7f9fc}
.quick-card-icon{
  width:42px;height:42px;border-radius:12px;
  display:grid;place-items:center;
  background:#eef4ff;color:#073b90;
  font-size:20px;font-weight:900;
}
.quick-card-copy{display:grid;gap:6px}
.quick-card-copy strong{color:#073b90;font-size:15px;line-height:1.15}
.quick-card-copy small{color:#667085;font-size:11px;line-height:1.4;font-weight:600}
.quick-card-arrow{color:#8aa4ca;font-size:24px;line-height:1}

/* Novedades: 3 en escritorio, 2 tablet, 1 celular */
#newsSection{overflow:hidden}
.news-carousel-track .news-item{
  flex:0 0 33.333333%!important;
  display:block!important;
  min-height:0!important;
  grid-template-columns:none!important;
  padding:0 6px!important;
  border:0!important;
  background:transparent!important;
  overflow:visible!important;
}
.news-carousel-track .news-item::before{
  content:"";
}
.news-carousel-track .news-thumb{
  height:auto!important;
  min-height:0!important;
  aspect-ratio:4/3;
  border-radius:15px 15px 0 0!important;
  overflow:hidden;
  background:#eef4ff;
  border:1px solid #e2e7ef;
  border-bottom:0;
}
.news-carousel-track .news-image,
.news-carousel-track .news-thumb .image-placeholder{
  width:100%!important;height:100%!important;min-height:0!important;
  object-fit:cover;border-radius:0!important
}
.news-carousel-track .news-copy{
  padding:14px!important;
  border:1px solid #e2e7ef;
  border-top:0;
  border-radius:0 0 15px 15px;
  background:#fff;
  min-height:142px;
}
.news-carousel-track .news-copy h3{
  font-size:18px!important;line-height:1.2!important;margin:5px 0 7px!important
}
.news-carousel-track .news-copy p{font-size:12px!important;line-height:1.42!important}
.news-carousel-counter{
  display:inline-flex;padding:6px 10px;border-radius:999px;
  background:#eef4ff;color:#073b90;font-size:11px;font-weight:900
}

/* Productos destacados */
.featured-products-section{overflow:hidden}
.featured-carousel-shell{
  display:grid;
  grid-template-columns:38px minmax(0,1fr) 38px;
  gap:8px;
  align-items:center;
}
.featured-carousel-viewport{overflow:hidden;min-width:0}
.featured-products-track{
  display:flex;
  transition:transform .38s ease;
  will-change:transform;
}
.featured-product-slide{
  flex:0 0 33.333333%;
  min-width:0;
  padding:0 7px;
  box-sizing:border-box;
}
.featured-product-slide .product-card{height:100%}
.featured-carousel-arrow{
  width:38px;height:38px;border:1px solid #cfd9e8;border-radius:999px;
  background:#fff;color:#073b90;font-size:27px;font-weight:900;
  display:grid;place-items:center;cursor:pointer;
  box-shadow:0 6px 16px rgba(7,59,144,.08)
}
.featured-carousel-dots{
  display:flex;justify-content:center;gap:7px;margin-top:12px
}
.featured-carousel-dot{
  width:8px;height:8px;border:0;border-radius:999px;padding:0;
  background:#c8d3e3;cursor:pointer
}
.featured-carousel-dot.active{width:22px;background:#073b90}

/* Sesión persistente: no se muestra cerrar sesión en el encabezado */
#logoutButton{display:none!important}

@media(max-width:1000px){
  .quick-grid.quick-grid-pro{grid-template-columns:repeat(2,minmax(0,1fr))}
  .news-carousel-track .news-item{flex-basis:50%!important}
}
@media(max-width:720px){
  .featured-product-slide{flex-basis:50%}
  .featured-carousel-shell{grid-template-columns:30px minmax(0,1fr) 30px;gap:4px}
  .featured-carousel-arrow{width:30px;height:30px;font-size:21px}
  .featured-product-slide{padding:0 4px}
  .featured-product-slide .product-card{padding:10px}
  .featured-product-slide .product-image-wrap{height:105px}
  .featured-product-slide .product-name{font-size:13px}
  .featured-product-slide .product-details{font-size:10px}
  .featured-product-slide .price-row span{font-size:9px}
  .featured-product-slide .price-row strong{font-size:12px}
  .featured-product-slide .product-actions-three{grid-template-columns:1fr!important}
  .featured-product-slide .product-actions-three>*{min-height:34px;font-size:10px!important;padding:7px!important}
}
@media(max-width:620px){
  .portal-brandbar{align-items:center;margin-bottom:14px}
  .brand-account-button{padding:8px 10px}
  .brand-account-button small{display:none}
  .brand-account-icon{width:32px;height:32px}
  .quick-grid.quick-grid-pro{grid-template-columns:repeat(2,minmax(0,1fr))}
  .quick-card-pro{
    min-height:112px;grid-template-columns:36px minmax(0,1fr);padding:13px
  }
  .quick-card-icon{width:36px;height:36px;font-size:17px}
  .quick-card-arrow{display:none}
  .quick-card-copy strong{font-size:13px}
  .quick-card-copy small{font-size:10px}
  .news-carousel-track .news-item{flex-basis:100%!important;padding:0!important}
  .news-carousel-track .news-thumb{height:220px!important;aspect-ratio:auto}
  .news-carousel-track .news-copy{padding:17px!important;min-height:0}
  .news-carousel-track .news-copy h3{font-size:20px!important}
}
@media(max-width:390px){
  .quick-grid.quick-grid-pro{grid-template-columns:1fr}
}


/* ==========================================================
   V10 · BUSCADOR COMPACTO
========================================================== */
.portal-welcome-search{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}
.portal-welcome-copy{min-width:220px}
.portal-inline-search{
  width:min(560px,58%);
  display:grid;
  grid-template-columns:minmax(0,1fr) 48px;
  gap:8px;
  align-items:center;
}
.portal-inline-search input{
  width:100%;
  min-width:0;
  border:1px solid #b9c8dc;
  border-radius:12px;
  background:#fff;
  padding:12px 14px;
  font:inherit;
  color:#172033;
}
.portal-search-icon-button{
  width:48px;height:44px;border:0;border-radius:12px;
  background:#073b90;color:#fff;font-size:26px;font-weight:900;
  display:grid;place-items:center;cursor:pointer
}
.portal-search-icon-button:hover{background:#052f74}
.portal-main-search-section{display:none!important}

/* Novedades: controlar tamaño en PC, sin afectar móvil */
@media(min-width:981px){
  .news-carousel-track .news-item{flex:0 0 33.333333%!important}
  .news-carousel-track .news-thumb{
    height:210px!important;
    aspect-ratio:auto!important;
  }
  .news-carousel-track .news-copy{min-height:128px!important}
}
@media(min-width:621px) and (max-width:980px){
  .news-carousel-track .news-item{flex:0 0 50%!important}
  .news-carousel-track .news-thumb{height:230px!important;aspect-ratio:auto!important}
}

/* Mini tienda en dos partes: fila superior / fila inferior */
.featured-store-row + .featured-store-row{margin-top:18px}
.featured-products-section .featured-carousel-viewport{
  padding:2px 0;
}
.featured-products-section .featured-product-slide{
  flex:0 0 33.333333%;
}
@media(max-width:720px){
  .featured-products-section .featured-product-slide{
    flex:0 0 50%;
  }
}

/* Móvil: conservar experiencia actual */
@media(max-width:620px){
  .portal-welcome-search{
    align-items:flex-start;
    flex-direction:column;
    gap:12px;
  }
  .portal-inline-search{width:100%}
  .portal-inline-search input{padding:11px 12px}
}


/* ==========================================================
   V11 · MINI TIENDA ESTABLE
   Desktop: 3 productos por fila.
   Celular: 2 productos visibles y desplazamiento horizontal.
========================================================== */
.featured-store-row{
  width:100%;
  min-width:0;
}
.featured-carousel-shell{
  display:grid!important;
  grid-template-columns:38px minmax(0,1fr) 38px!important;
  gap:8px!important;
  align-items:center!important;
}
.featured-carousel-viewport{
  min-width:0!important;
  overflow:hidden!important;
}
.featured-products-track{
  width:100%!important;
  display:grid!important;
  grid-auto-flow:column!important;
  grid-auto-columns:calc((100% - 28px) / 3)!important;
  column-gap:14px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x mandatory!important;
  scrollbar-width:none!important;
  transform:none!important;
  transition:none!important;
  padding:2px!important;
}
.featured-products-track::-webkit-scrollbar{display:none!important}
.featured-product-slide{
  width:auto!important;
  min-width:0!important;
  flex:none!important;
  padding:0!important;
  scroll-snap-align:start!important;
}
.featured-product-slide .product-card{
  width:100%!important;
  min-width:0!important;
  height:100%!important;
}
.featured-load-error{
  grid-column:1/-1;
  width:100%;
  padding:20px;
  border:1px dashed #d0d9e6;
  border-radius:14px;
  color:#667085;
  background:#fbfcfe;
  font-weight:700;
}
@media(max-width:720px){
  .featured-carousel-shell{
    grid-template-columns:30px minmax(0,1fr) 30px!important;
    gap:4px!important;
  }
  .featured-products-track{
    grid-auto-columns:calc((100% - 8px) / 2)!important;
    column-gap:8px!important;
  }
}


/* ==========================================================
   V12 · CORRECCIÓN MINI TIENDA
========================================================== */
.featured-carousel-shell{
  position:relative!important;
}
.featured-carousel-shell > .featured-carousel-arrow:first-child{
  grid-column:1!important;
}
.featured-carousel-shell > .featured-carousel-viewport{
  grid-column:2!important;
  width:100%!important;
  min-width:0!important;
}
.featured-carousel-shell > .featured-carousel-arrow:last-child{
  grid-column:3!important;
}
.featured-carousel-arrow.featured-arrow-inactive{
  display:grid!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
}
.featured-products-track{
  width:100%!important;
  min-width:0!important;
}
.featured-product-slide{
  overflow:visible!important;
}
.featured-product-slide > .product-card{
  width:100%!important;
  max-width:none!important;
  box-sizing:border-box!important;
}
@media(min-width:721px){
  .featured-products-track{
    grid-auto-columns:calc((100% - 28px) / 3)!important;
  }
}
@media(max-width:720px){
  .featured-products-track{
    grid-auto-columns:calc((100% - 8px) / 2)!important;
  }
}


/* ==========================================================
   V13 · CARRUSEL HASTA 30 POR FILA + MÓVIL COMPACTO
========================================================== */

/* El carrusel admite hasta 30 productos por fila.
   En escritorio siguen viéndose 3 a la vez. */
.featured-products-track{
  scroll-behavior:smooth!important;
}

/* MÓVIL: dar más ancho real a las 2 tarjetas.
   Las flechas quedan superpuestas y ya no consumen columnas. */
@media(max-width:720px){
  .featured-products-section{
    padding-left:12px!important;
    padding-right:12px!important;
  }

  .featured-carousel-shell{
    display:block!important;
    position:relative!important;
  }

  .featured-carousel-shell > .featured-carousel-viewport{
    width:100%!important;
    grid-column:auto!important;
    overflow:hidden!important;
  }

  .featured-carousel-shell > .featured-carousel-arrow{
    position:absolute!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    z-index:8!important;
    width:28px!important;
    height:28px!important;
    font-size:18px!important;
    background:rgba(255,255,255,.94)!important;
  }

  .featured-carousel-shell > .featured-carousel-arrow:first-child{
    left:-8px!important;
    grid-column:auto!important;
  }

  .featured-carousel-shell > .featured-carousel-arrow:last-child{
    right:-8px!important;
    grid-column:auto!important;
  }

  .featured-products-track{
    grid-auto-columns:calc((100% - 8px) / 2)!important;
    column-gap:8px!important;
    padding:1px!important;
  }

  .featured-product-slide{
    min-width:0!important;
  }

  /* Tarjeta compacta: evita que quede excesivamente alta. */
  .featured-product-slide .product-card{
    padding:9px!important;
    border-radius:12px!important;
  }

  .featured-product-slide .product-card-head{
    gap:4px!important;
    min-width:0!important;
  }

  .featured-product-slide .product-brand{
    font-size:9px!important;
    max-width:48%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  .featured-product-slide .availability-badge{
    font-size:8px!important;
    padding:4px 6px!important;
    max-width:58%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  .featured-product-slide .product-image-wrap{
    height:92px!important;
    margin:7px 0 8px!important;
    border-radius:10px!important;
  }

  .featured-product-slide .product-name{
    font-size:12px!important;
    line-height:1.25!important;
    margin:8px 0 5px!important;
    display:-webkit-box!important;
    -webkit-line-clamp:4!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
    min-height:60px!important;
    max-height:60px!important;
  }

  .featured-product-slide .product-details{
    font-size:9px!important;
    line-height:1.25!important;
    margin:0 0 8px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  .featured-product-slide .product-prices{
    gap:4px!important;
    padding-top:7px!important;
  }

  .featured-product-slide .price-row{
    gap:4px!important;
  }

  .featured-product-slide .price-row span{
    font-size:8px!important;
    line-height:1.1!important;
  }

  .featured-product-slide .price-row strong{
    font-size:10.5px!important;
    line-height:1.1!important;
  }

  .featured-product-slide .professional-price{
    padding:6px!important;
    border-radius:8px!important;
  }

  .featured-product-slide .product-actions-three{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:5px!important;
    margin-top:8px!important;
  }

  .featured-product-slide .product-actions-three > *{
    min-width:0!important;
    min-height:32px!important;
    padding:6px 4px!important;
    border-radius:8px!important;
    font-size:8.5px!important;
    line-height:1.12!important;
  }

  /* WhatsApp ocupa toda la segunda fila. */
  .featured-product-slide .product-whatsapp-order{
    grid-column:1/-1!important;
  }
}

/* ACCESOS RÁPIDOS: mucho más compactos en celular. */
@media(max-width:620px){
  .quick-access-section{
    padding:14px!important;
  }

  .quick-access-section .section-head{
    margin-bottom:10px!important;
  }

  .quick-access-section .section-kicker{
    font-size:9px!important;
  }

  .quick-access-section h2{
    font-size:23px!important;
    line-height:1.1!important;
  }

  .quick-grid.quick-grid-pro{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }

  .quick-card-pro{
    min-height:76px!important;
    grid-template-columns:30px minmax(0,1fr)!important;
    gap:8px!important;
    padding:10px!important;
    border-radius:12px!important;
    align-items:center!important;
  }

  .quick-card-icon{
    width:30px!important;
    height:30px!important;
    border-radius:9px!important;
    font-size:14px!important;
  }

  .quick-card-copy{
    gap:2px!important;
  }

  .quick-card-copy strong{
    font-size:11px!important;
    line-height:1.15!important;
  }

  /* En celular ocultamos la descripción para que el menú no ocupe media pantalla. */
  .quick-card-copy small{
    display:none!important;
  }

  .quick-card-arrow{
    display:none!important;
  }
}

/* Incluso en teléfonos angostos se mantienen dos columnas. */
@media(max-width:390px){
  .quick-grid.quick-grid-pro{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}


/* V14 · En PC mostrar 6 productos visibles en Productos destacados */
@media(min-width:721px){
  .featured-products-track{
    grid-auto-columns:calc((100% - 70px) / 6)!important;
    column-gap:14px!important;
  }
}
@media(max-width:720px){
  .featured-products-track{
    grid-auto-columns:calc((100% - 8px) / 2)!important;
  }
}


/* ==========================================================
   V15 · ESCRITORIO MÁS ANCHO + 6 PRODUCTOS CON MÁS ESPACIO
   Aprovecha mejor los laterales sin modificar móvil.
========================================================== */
@media(min-width:1001px){
  .page{
    max-width:1680px!important;
    width:calc(100% - 28px)!important;
    padding-left:0!important;
    padding-right:0!important;
  }

  /* Productos destacados: las flechas van encima y ya no consumen columnas. */
  .featured-carousel-shell{
    display:block!important;
    position:relative!important;
  }

  .featured-carousel-shell > .featured-carousel-viewport{
    width:100%!important;
    min-width:0!important;
    grid-column:auto!important;
    overflow:hidden!important;
  }

  .featured-carousel-shell > .featured-carousel-arrow{
    position:absolute!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    z-index:10!important;
    width:34px!important;
    height:34px!important;
    background:rgba(255,255,255,.96)!important;
  }

  .featured-carousel-shell > .featured-carousel-arrow:first-child{
    left:6px!important;
    grid-column:auto!important;
  }

  .featured-carousel-shell > .featured-carousel-arrow:last-child{
    right:6px!important;
    grid-column:auto!important;
  }

  .featured-products-track{
    grid-auto-columns:calc((100% - 60px) / 6)!important;
    column-gap:12px!important;
    padding:2px 2px!important;
  }

  /* Un poco más compacto para que los 6 se lean mejor sin verse apretados. */
  .featured-product-slide .product-card{
    padding:13px!important;
  }

  .featured-product-slide .product-name{
    font-size:15px!important;
    line-height:1.25!important;
  }

  .featured-product-slide .product-details{
    font-size:11px!important;
  }

  .featured-product-slide .product-image-wrap{
    height:150px!important;
  }

  .featured-product-slide .product-actions-three > *{
    font-size:11px!important;
    padding:9px 6px!important;
  }
}


/* ==========================================================
   V17 · CATÁLOGO MÁS VISUAL + ENTREGA LOCAL / ENVÍO NACIONAL
========================================================== */

/* Volver al inicio más visible */
.products-back-button{
  border:2px solid #f59e0b!important;
  background:#fff7df!important;
  color:#9a4b00!important;
  font-weight:900!important;
  box-shadow:0 5px 14px rgba(245,158,11,.16)!important;
}
.products-back-button:hover{background:#ffefbd!important}

/* Dos estados pueden coexistir en un mismo producto */
.availability-badges{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:5px;
  flex-wrap:wrap;
  min-width:0;
}
.availability-badge.warehouse{
  background:#fff1d6!important;
  color:#9a4b00!important;
  border:1px solid #f5b84b!important;
}
.availability-badge.shipping{
  background:#ecfdf3!important;
  color:#067647!important;
  border:1px solid #86dba7!important;
}

/* La nota legal queda después del catálogo */
.product-legal-note-bottom{margin-top:16px!important;margin-bottom:0!important}

/* En teléfono: entrar directo al catálogo, no a una pantalla llena de categorías */
@media(max-width:620px){
  #productsView .product-category-tabs{
    display:none!important;
  }
  #productsView .products-toolbar{
    margin-bottom:8px!important;
    gap:8px!important;
  }
  #productsView .product-search{
    max-width:none!important;
    width:100%!important;
  }
  #productsView .products-status{
    display:none!important;
  }
  #productsView .home-section{
    padding-top:14px!important;
  }
  #productsView .product-group-head{
    margin-bottom:8px!important;
    padding:10px 11px!important;
  }
  #productsView .product-group-title{
    font-size:16px!important;
  }
  #productsView .product-group-description{
    font-size:10.5px!important;
    line-height:1.35!important;
  }
  #productsView .product-legal-note-bottom{
    font-size:10.5px!important;
    margin-top:12px!important;
    padding:10px 11px!important;
  }
  .products-back-button{
    background:#f59e0b!important;
    color:#fff!important;
    border-color:#f59e0b!important;
  }
  .product-card-head{
    align-items:flex-start!important;
  }
  .availability-badges{
    max-width:64%!important;
    gap:3px!important;
  }
  .availability-badge{
    font-size:8px!important;
    padding:4px 5px!important;
    white-space:normal!important;
    text-align:center!important;
    line-height:1.1!important;
  }
}


/* ==========================================================
   V18 · LEYENDA DE PRECIOS MÁS VISIBLE
   Se mantiene arriba del catálogo, después del contador.
========================================================== */
.product-legal-note-prominent{
  margin:0 0 16px!important;
  padding:13px 15px!important;
  border:2px solid #f59e0b!important;
  border-left:7px solid #ea580c!important;
  border-radius:12px!important;
  background:linear-gradient(90deg,#fff4cc 0%,#fff8e8 100%)!important;
  color:#9a3412!important;
  font-size:13px!important;
  font-weight:900!important;
  line-height:1.45!important;
  box-shadow:0 5px 14px rgba(234,88,12,.12)!important;
}
@media(max-width:620px){
  .product-legal-note-prominent{
    margin:0 0 13px!important;
    padding:12px 13px!important;
    font-size:12px!important;
    border-left-width:6px!important;
  }
}


/* ==========================================================
   V19 · DOBLE BENEFICIO POR PRODUCTO
   bodega-24h = entrega local 24 h hábiles
   SYSCOM     = envío gratis nacional
   Si tiene ambos criterios, aparecen ambos.
========================================================== */
.product-delivery-benefits{
  display:grid;
  gap:5px;
  margin:8px 0 10px;
}
.product-delivery-benefit{
  display:flex;
  align-items:center;
  gap:7px;
  min-width:0;
  padding:7px 9px;
  border-radius:9px;
  font-size:10px;
  font-weight:900;
  line-height:1.25;
}
.product-delivery-benefit.local{
  background:#fff4df;
  border:1px solid #f5c56e;
  color:#9a4b00;
}
.product-delivery-benefit.national{
  background:#ecfdf3;
  border:1px solid #86dba7;
  color:#067647;
}
.product-delivery-icon{
  flex:0 0 auto;
  width:18px;
  height:18px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.72);
  font-size:11px;
}
.product-delivery-text{
  min-width:0;
}

/* En tarjetas angostas de productos destacados, apilar también los badges superiores */
.featured-product-slide .availability-badges{
  display:grid!important;
  justify-items:end!important;
  gap:3px!important;
}
.featured-product-slide .availability-badge{
  max-width:100%!important;
  white-space:normal!important;
  text-align:center!important;
  line-height:1.1!important;
}

/* En móvil mantener las dos leyendas legibles pero compactas */
@media(max-width:620px){
  .product-delivery-benefits{
    margin:7px 0 9px!important;
    gap:4px!important;
  }
  .product-delivery-benefit{
    padding:6px 7px!important;
    gap:5px!important;
    font-size:9px!important;
    border-radius:8px!important;
  }
  .product-delivery-icon{
    width:16px!important;
    height:16px!important;
    font-size:9px!important;
  }
}

/* ==========================================================
   V22 · EXPERIENCIA MÓVIL + SOPORTE + HERRAMIENTAS
========================================================== */

/* Banner de Centros de servicio antes de Atención personal */
.service-support-home-section{margin-top:18px}
.service-support-banner{position:relative;width:100%;min-height:190px;border:0;border-radius:20px;overflow:hidden;padding:0;background:linear-gradient(120deg,#063c91 0%,#075bb7 62%,#0b82d7 100%);color:#fff;text-align:left;cursor:pointer;box-shadow:0 12px 28px rgba(7,59,144,.16)}
.service-support-banner-copy{position:relative;z-index:3;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:7px;min-height:190px;width:58%;padding:26px 30px;background:linear-gradient(90deg,rgba(4,44,111,.98) 0%,rgba(4,55,132,.92) 60%,rgba(4,55,132,.15) 100%)}
.service-support-kicker{font-size:10px;letter-spacing:.15em;font-weight:900;color:#bfe3ff}
.service-support-banner-copy strong{font-size:28px;line-height:1.04;font-weight:900}
.service-support-banner-copy>span:nth-of-type(2){font-size:14px;line-height:1.45;color:#e7f3ff;max-width:520px}
.service-support-banner-action{margin-top:6px;display:inline-flex;padding:9px 12px;border-radius:10px;background:#fff;color:#063c91;font-size:12px;font-weight:900}
.service-support-banner-image{position:absolute;inset:0 0 0 auto;width:56%;height:100%;object-fit:cover;z-index:1}
.service-support-banner.has-image:after{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(90deg,rgba(4,44,111,0) 48%,rgba(4,44,111,.06) 68%,rgba(4,44,111,.15) 100%);pointer-events:none}
.service-support-banner-symbol{position:absolute;right:34px;top:50%;transform:translateY(-50%);z-index:4;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.35);font-size:34px;font-weight:300}

/* Dos accesos azules, inspirados en las referencias del usuario */
.tools-preview-section{margin-top:18px}
.tools-preview-head{align-items:flex-end}
.tools-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.tool-preview-card{min-height:180px;border:0;border-radius:18px;background:#08a8df;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:22px;cursor:pointer;box-shadow:0 8px 20px rgba(5,137,190,.16);font:inherit}
.tool-preview-card:hover{transform:translateY(-2px);background:#069ed2}
.tool-preview-card>span:last-child{font-size:20px;font-weight:800;text-align:center;line-height:1.2}
.tool-preview-icon{width:56px;height:56px;display:grid;place-items:center}
.tool-preview-icon svg{width:52px;height:52px;fill:none;stroke:#fff;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}

/* Módulo de herramientas */
.tools-module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.tool-module-card{display:grid;grid-template-columns:58px minmax(0,1fr);gap:14px;padding:18px;border:1px solid #dbe4f0;border-radius:16px;background:#fff}
.tool-module-icon{width:58px;height:58px;border-radius:14px;background:#eaf3ff;color:#06479e;display:grid;place-items:center;font-size:28px}
.tool-module-card h3{margin:0;color:#06479e}.tool-module-card p{margin:7px 0;color:#667085;line-height:1.45}
.tools-module-note{margin:16px 0 0;color:#667085;font-size:13px}

/* Garantías / requisitos por marca */
.warranty-requirements-section,.authorized-centers-section{margin-top:16px}
.service-warranty-list{display:grid;gap:10px}
.warranty-brand-card{border:1px solid #dce5f1;border-radius:14px;background:#fff;overflow:hidden}
.warranty-brand-card summary{list-style:none;cursor:pointer;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#f8fbff}
.warranty-brand-card summary::-webkit-details-marker{display:none}
.warranty-summary-copy{display:flex;flex-direction:column;gap:4px}.warranty-summary-copy strong{color:#073b90;font-size:15px}.warranty-summary-arrow{color:#7390b7;font-size:18px}
.warranty-brand-card[open] .warranty-summary-arrow{transform:rotate(180deg)}
.warranty-brand-body{padding:15px 16px;display:grid;gap:12px}
.warranty-info-block{padding:12px;border-radius:12px;background:#f8fafc;border:1px solid #e7edf4}.warranty-info-label{display:block;margin-bottom:6px;color:#073b90;font-size:12px}.warranty-info-block p{margin:0;color:#48566a;line-height:1.5}.warranty-info-list{margin:0;padding-left:18px;color:#48566a;display:grid;gap:5px;line-height:1.45}.warranty-support-link{display:inline-flex;width:max-content;padding:9px 11px;border-radius:9px;background:#073b90;color:#fff;text-decoration:none;font-weight:800;font-size:12px}

/* En celular: quitar completamente Accesos rápidos. El primer contenedor después del buscador es el banner principal. */
@media(max-width:720px){
  .quick-access-section{display:none!important}
  .banner-section{margin-top:14px!important}
  .service-support-home-section{margin-top:14px}
  .service-support-banner{min-height:150px;border-radius:17px}
  .service-support-banner-copy{min-height:150px;width:70%;padding:18px 20px;gap:5px}
  .service-support-banner-copy strong{font-size:22px}
  .service-support-banner-copy>span:nth-of-type(2){font-size:11px;line-height:1.35}
  .service-support-banner-action{font-size:10px;padding:7px 9px}
  .service-support-banner-image{width:55%}
  .service-support-banner-symbol{right:16px;width:42px;height:42px;font-size:25px}
  .tools-preview-section{padding:14px!important}
  .tools-preview-head h2{font-size:22px!important}
  .tools-preview-grid{gap:10px}
  .tool-preview-card{min-height:132px;border-radius:14px;padding:14px;gap:10px}
  .tool-preview-card>span:last-child{font-size:14px;line-height:1.2}
  .tool-preview-icon{width:42px;height:42px}.tool-preview-icon svg{width:40px;height:40px}
  .tools-module-grid{grid-template-columns:1fr}
  .tool-module-card{grid-template-columns:46px minmax(0,1fr);padding:14px}.tool-module-icon{width:46px;height:46px;font-size:22px}
  .warranty-brand-card summary{padding:12px}.warranty-brand-body{padding:12px}
}


/* ==========================================================
   V25 · DIRECTORIO DE GARANTÍAS POR MARCA
   Móvil: 2 marcas por fila · Computadora: 6 por fila
========================================================== */
.authorized-centers-section .note{margin-bottom:14px}
.service-brand-directory{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:14px!important;margin-top:14px!important}
.service-brand-tile{appearance:none;-webkit-appearance:none;width:100%;min-width:0;aspect-ratio:1.55/1;border:0;border-radius:18px;background:#12aee6;color:#fff;display:flex;align-items:center;justify-content:center;padding:16px;cursor:pointer;box-shadow:0 8px 20px rgba(18,174,230,.18);transition:transform .16s ease,box-shadow .16s ease,background .16s ease}
.service-brand-tile:hover{transform:translateY(-2px);background:#079fda;box-shadow:0 12px 24px rgba(7,159,218,.24)}
.service-brand-tile:focus-visible{outline:4px solid rgba(7,59,144,.22);outline-offset:3px}
.service-brand-tile-name{display:block;color:#fff;font-size:clamp(17px,1.35vw,25px);line-height:1;text-align:center;font-weight:900;letter-spacing:.055em;text-transform:uppercase;overflow-wrap:anywhere}
.service-center-empty{grid-column:1/-1}

.service-center-modal{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:22px}
.service-center-modal.hidden{display:none!important}
.service-center-modal-backdrop{position:absolute;inset:0;border:0;background:rgba(7,23,48,.58);backdrop-filter:blur(3px);cursor:pointer}
.service-center-modal-dialog{position:relative;z-index:2;width:min(720px,calc(100vw - 34px));max-height:min(82vh,760px);overflow:auto;background:#fff;border:1px solid #dbe5f0;border-radius:22px;box-shadow:0 28px 80px rgba(0,0,0,.28);padding:22px}
.service-center-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:14px;border-bottom:1px solid #e7edf5}
.service-center-modal-head h3{margin:4px 0 0;color:#073b90;font-size:30px;line-height:1.05;text-transform:uppercase}
.service-center-modal-close{appearance:none;border:0;width:42px;height:42px;flex:0 0 42px;border-radius:50%;background:#eef4ff;color:#073b90;font-size:28px;line-height:1;display:grid;place-items:center;cursor:pointer;font-weight:500}
.service-center-modal-close:hover{background:#dce9ff}
.service-center-modal-body{display:grid;gap:14px;padding-top:16px}
.service-center-detail-card{border:1px solid #dce4ef;border-radius:16px;padding:17px;background:#fff}
.service-center-detail-card h4{margin:6px 0 11px;color:#073b90;font-size:21px}
.service-center-detail-card p{margin:6px 0;color:#5f6b7d;font-size:14px;line-height:1.45;overflow-wrap:anywhere}
.service-center-detail-card .service-brand{background:#eef4ff;color:#073b90}
.service-center-site{display:inline-flex;margin-top:6px;color:#073b90;font-weight:900;text-decoration:none}
.service-center-site:hover{text-decoration:underline}
.service-center-detail-card .service-note{margin-top:12px;padding-top:10px;border-top:1px solid #e7edf5;color:#475467}
body.service-modal-open{overflow:hidden}

@media(max-width:1180px){.service-brand-directory{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
@media(max-width:820px){.service-brand-directory{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:650px){
  .service-brand-directory{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
  .service-brand-tile{aspect-ratio:1.45/1;border-radius:16px;padding:12px}
  .service-brand-tile-name{font-size:21px}
  .service-center-modal{padding:12px;align-items:flex-end}
  .service-center-modal-dialog{width:100%;max-height:86vh;border-radius:22px 22px 10px 10px;padding:18px}
  .service-center-modal-head h3{font-size:25px}
}


/* ==========================================================
   V26 · CONDICIONES DE PRECIOS / MAYOREO
========================================================== */
.product-legal-note-prominent{
  display:grid!important;
  gap:5px!important;
  margin:0 0 16px!important;
  padding:14px 16px!important;
  border:1px solid #0b4aa2!important;
  border-left:7px solid #18aeea!important;
  border-radius:12px!important;
  background:linear-gradient(135deg,#073b90 0%,#0b56b8 100%)!important;
  color:#ffffff!important;
  font-size:12px!important;
  font-weight:600!important;
  line-height:1.45!important;
  box-shadow:0 6px 16px rgba(7,59,144,.18)!important;
}
.product-legal-note-prominent strong{
  display:block!important;
  color:#ffffff!important;
  font-size:13px!important;
  font-weight:900!important;
  line-height:1.25!important;
  margin-bottom:2px!important;
}
.product-legal-note-prominent span{
  display:block!important;
  color:#ffffff!important;
}
@media(max-width:620px){
  .product-legal-note-prominent{
    gap:6px!important;
    margin:0 0 13px!important;
    padding:13px 14px!important;
    border-left-width:6px!important;
    font-size:11px!important;
    line-height:1.4!important;
  }
  .product-legal-note-prominent strong{
    font-size:12px!important;
  }
}


/* ==========================================================
   V27 · PRECIO MSI EN MENÚ FLOTANTE
========================================================== */
.msi-price-trigger{
  appearance:none;
  width:100%;
  border:0;
  border-top:1px dashed #cbd8e8;
  background:transparent;
  color:#0754ad;
  padding:8px 2px 1px;
  margin:0;
  text-align:left;
  font:inherit;
  font-size:11px;
  font-weight:900;
  cursor:pointer;
}
.msi-price-trigger:hover{
  color:#073b90;
  text-decoration:underline;
}
.featured-product-slide .msi-price-trigger{
  font-size:9px;
  padding-top:6px;
}

.msi-price-modal{
  position:fixed;
  inset:0;
  z-index:10020;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:22px;
}
.msi-price-modal.hidden{display:none!important}
.msi-price-modal-backdrop{
  position:absolute;
  inset:0;
  border:0;
  background:rgba(7,23,48,.62);
  backdrop-filter:blur(3px);
  cursor:pointer;
}
.msi-price-modal-dialog{
  position:relative;
  z-index:2;
  width:min(760px,calc(100vw - 34px));
  max-height:min(86vh,780px);
  overflow:auto;
  background:#fff;
  border:1px solid #dbe5f0;
  border-radius:22px;
  box-shadow:0 28px 80px rgba(0,0,0,.30);
  padding:22px;
}
.msi-price-modal-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  padding-bottom:14px;
  border-bottom:1px solid #e7edf5;
}
.msi-price-modal-head h3{
  margin:4px 0 0;
  color:#073b90;
  font-size:24px;
  line-height:1.15;
}
.msi-price-modal-meta{
  margin:7px 0 0;
  color:#667085;
  font-size:12px;
  font-weight:700;
}
.msi-price-modal-close{
  appearance:none;
  border:0;
  width:42px;
  height:42px;
  flex:0 0 42px;
  border-radius:50%;
  background:#eef4ff;
  color:#073b90;
  font-size:28px;
  line-height:1;
  display:grid;
  place-items:center;
  cursor:pointer;
  font-weight:500;
}
.msi-price-modal-close:hover{background:#dce9ff}
.msi-public-reference{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin:16px 0 13px;
  padding:11px 13px;
  border-radius:12px;
  background:#f5f7fb;
  border:1px solid #e3e9f2;
}
.msi-public-reference span{
  color:#667085;
  font-size:12px;
  font-weight:800;
}
.msi-public-reference strong{
  color:#152033;
  font-size:18px;
  white-space:nowrap;
}
.msi-price-modal-body{min-height:70px}
.msi-modal-message{
  padding:18px 12px;
  border-radius:12px;
  background:#f7f9fc;
  color:#667085;
  text-align:center;
  font-size:13px;
  font-weight:800;
}
.msi-modal-message.error{
  background:#fff0f0;
  color:#b42318;
}
.msi-options-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.msi-option-card{
  min-width:0;
  padding:13px;
  border:1px solid #d9e4f1;
  border-radius:14px;
  background:#fff;
  box-shadow:0 4px 12px rgba(16,24,40,.04);
}
.msi-option-months{
  color:#073b90;
  font-size:14px;
  font-weight:1000;
  margin-bottom:8px;
}
.msi-option-price-label{
  color:#667085;
  font-size:10px;
  font-weight:800;
  margin-bottom:2px;
}
.msi-option-price{
  display:block;
  color:#152033;
  font-size:17px;
  white-space:nowrap;
}
.msi-option-monthly{
  margin-top:7px;
  padding-top:7px;
  border-top:1px solid #edf1f6;
  color:#067647;
  font-size:12px;
  font-weight:900;
}
.msi-price-note{
  margin:14px 0 0;
  color:#667085;
  font-size:10px;
  line-height:1.4;
}
body.msi-modal-open{overflow:hidden}

@media(max-width:620px){
  .msi-price-modal{
    padding:10px;
    align-items:flex-end;
  }
  .msi-price-modal-dialog{
    width:100%;
    max-height:88vh;
    border-radius:22px 22px 10px 10px;
    padding:17px;
  }
  .msi-price-modal-head h3{font-size:20px}
  .msi-options-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
  }
  .msi-option-card{padding:11px}
  .msi-option-price{font-size:15px}
  .msi-option-monthly{font-size:11px}
}


/* ==========================================================
   CALCULADORA BTU · V1
========================================================== */
.btu-calculator-card{
  grid-column:1/-1;
  display:block!important;
  padding:20px!important;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%)!important;
  border:1px solid #cfdff2!important;
}
.btu-calculator-heading{
  display:flex;
  align-items:flex-start;
  gap:13px;
  margin-bottom:17px;
}
.btu-calculator-heading .tool-module-icon{flex:0 0 auto}
.btu-calculator-heading h3{margin:0;color:#073b90}
.btu-calculator-heading p{
  margin:5px 0 0;
  color:#667085;
  font-size:12px;
  line-height:1.45;
}
.btu-title-row{
  display:flex;
  align-items:center;
  gap:9px;
  flex-wrap:wrap;
}
.btu-active-badge{
  background:#e9f8ef!important;
  color:#067647!important;
}
.btu-calculator-form{
  border-top:1px solid #e5edf6;
  padding-top:16px;
}
.btu-form-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.btu-field{
  display:grid;
  gap:6px;
  min-width:0;
}
.btu-field>span{
  color:#344054;
  font-size:11px;
  font-weight:900;
}
.btu-field input,.btu-field select{
  width:100%;
  min-height:43px;
  padding:10px 11px;
  border:1px solid #bdc9d8;
  border-radius:10px;
  background:#fff;
  color:#152033;
  font:inherit;
  font-size:13px;
}
.btu-field input:focus,.btu-field select:focus{
  outline:3px solid rgba(7,59,144,.12);
  border-color:#5c8fd6;
}
.btu-input-unit{
  display:grid;
  grid-template-columns:minmax(0,1fr) 38px;
  align-items:stretch;
}
.btu-input-unit input{
  border-radius:10px 0 0 10px;
}
.btu-input-unit small{
  display:grid;
  place-items:center;
  border:1px solid #bdc9d8;
  border-left:0;
  border-radius:0 10px 10px 0;
  background:#eef4ff;
  color:#073b90;
  font-size:11px;
  font-weight:900;
}
.btu-form-actions{
  display:flex;
  gap:9px;
  margin-top:14px;
  flex-wrap:wrap;
}
.btu-calculate-button{min-width:170px}
.btu-calculator-error{
  margin-top:14px;
  padding:12px 14px;
  border-radius:11px;
  background:#fff0f0;
  color:#b42318;
  font-size:12px;
  font-weight:800;
  line-height:1.45;
}
.btu-result{
  margin-top:18px;
  border:1px solid #c8d9ef;
  border-radius:17px;
  background:#fff;
  overflow:hidden;
}
.btu-result-main{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1px;
  background:#dce7f4;
}
.btu-result-main>div{
  background:#073b90;
  color:#fff;
  padding:18px;
}
.btu-result-main .btu-result-recommendation{
  background:#0b57b7;
}
.btu-result-kicker,.btu-result-recommendation span{
  display:block;
  color:#dce9ff;
  font-size:9px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.btu-result-main strong{
  display:block;
  margin-top:5px;
  font-size:27px;
  line-height:1.05;
}
.btu-result-main small{
  display:block;
  margin-top:4px;
  color:#eaf2ff;
  font-size:11px;
  font-weight:700;
}
.btu-result-data{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:0;
  border-bottom:1px solid #e7edf5;
}
.btu-result-data>div{
  padding:12px;
  border-right:1px solid #e7edf5;
}
.btu-result-data>div:last-child{border-right:0}
.btu-result-data span{
  display:block;
  color:#667085;
  font-size:9px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.btu-result-data strong{
  display:block;
  margin-top:4px;
  color:#152033;
  font-size:12px;
}
.btu-breakdown{
  padding:15px 17px 9px;
}
.btu-breakdown h4{
  margin:0 0 8px;
  color:#073b90;
  font-size:12px;
}
.btu-breakdown-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  padding:7px 0;
  border-bottom:1px dashed #e2e8f0;
  font-size:11px;
}
.btu-breakdown-row span{color:#667085}
.btu-breakdown-row strong{
  color:#152033;
  text-align:right;
  white-space:nowrap;
}
.btu-result-warning{
  margin:8px 17px 0;
  padding:11px 12px;
  border-radius:10px;
  background:#fff8e6;
  color:#7a5200;
  font-size:10px;
  line-height:1.45;
  font-weight:700;
}
.btu-products-button{
  margin:13px 17px 0;
}
.btu-disclaimer{
  margin:12px 17px 16px;
  color:#667085;
  font-size:9px;
  line-height:1.45;
}
@media(max-width:760px){
  .btu-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .btu-result-data{grid-template-columns:repeat(2,minmax(0,1fr))}
  .btu-result-data>div:nth-child(2){border-right:0}
  .btu-result-data>div:nth-child(-n+2){border-bottom:1px solid #e7edf5}
}
@media(max-width:520px){
  .btu-calculator-card{padding:14px!important}
  .btu-calculator-heading{gap:9px}
  .btu-calculator-heading .tool-module-icon{width:42px;height:42px}
  .btu-form-grid{grid-template-columns:1fr}
  .btu-form-actions{display:grid;grid-template-columns:1fr 1fr}
  .btu-calculate-button{min-width:0}
  .btu-result-main{grid-template-columns:1fr}
  .btu-result-main strong{font-size:24px}
  .btu-breakdown-row{align-items:flex-start}
  .btu-products-button{width:calc(100% - 34px)}
}


/* ==========================================================
   CALCULADORA BTU · V2 MÉXICO
========================================================== */
.btu-method-note{
  margin:0 0 16px;
  padding:11px 13px;
  border-radius:11px;
  background:#eef6ff;
  border-left:5px solid #0b57b7;
  color:#344054;
  font-size:10px;
  line-height:1.45;
}
.btu-method-note strong{color:#073b90}
.btu-field-wide{grid-column:span 2}
.btu-calculation-basis{
  margin:10px 17px 0;
  padding:10px 12px;
  border-radius:10px;
  background:#eef4ff;
  color:#344054;
  font-size:10px;
  line-height:1.45;
}
.btu-calculation-basis strong{color:#073b90}
@media(max-width:760px){
  .btu-field-wide{grid-column:span 2}
}
@media(max-width:520px){
  .btu-field-wide{grid-column:auto}
}


/* ==========================================================
   CALCULADORA BTU · V3 SIMPLE
========================================================== */
.btu-form-grid-simple{grid-template-columns:repeat(3,minmax(0,1fr))}
.btu-field-help{display:block;margin-top:-2px;color:#667085;font-size:9px;line-height:1.3}
.btu-window-rule{
  margin-top:13px;display:flex;align-items:center;gap:10px;padding:11px 13px;
  border:1px solid #c9ddf4;border-radius:11px;background:#f5f9ff
}
.btu-window-rule-icon{
  width:36px;height:36px;flex:0 0 36px;display:grid;place-items:center;border-radius:9px;
  background:#073b90;color:#fff;font-size:17px
}
.btu-window-rule strong{display:block;color:#073b90;font-size:11px}
.btu-window-rule small{display:block;margin-top:2px;color:#667085;font-size:10px}
.btu-result-main-simple{grid-template-columns:1fr 1fr}
.btu-result-data-simple{grid-template-columns:repeat(4,minmax(0,1fr))}
.btu-commercial-options{padding:12px 17px 4px}
.btu-commercial-options-title{display:block;margin-bottom:8px;color:#073b90;font-size:11px;font-weight:900}
.btu-commercial-options-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.btu-commercial-option{
  position:relative;padding:12px 8px 10px;border:1px solid #dbe5f0;border-radius:12px;
  background:#fff;text-align:center
}
.btu-commercial-option strong{display:block;color:#073b90;font-size:17px;line-height:1}
.btu-commercial-option span{display:block;margin-top:3px;color:#667085;font-size:9px;font-weight:800}
.btu-commercial-option small{display:block;margin-top:5px;color:#344054;font-size:9px;font-weight:800}
.btu-commercial-option em{
  display:inline-block;margin-top:7px;padding:4px 7px;border-radius:999px;background:#eaf8ef;
  color:#067647;font-size:8px;font-style:normal;font-weight:1000
}
.btu-commercial-option.recommended{border:2px solid #0b57b7;background:#eef5ff}
.btu-commercial-option.below-load{opacity:.52}
.btu-commercial-option.recommended.below-load{opacity:1}
@media(max-width:760px){
  .btu-form-grid-simple{grid-template-columns:repeat(2,minmax(0,1fr))}
  .btu-commercial-options-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:520px){
  .btu-form-grid-simple{grid-template-columns:1fr}
  .btu-result-main-simple{grid-template-columns:1fr}
  .btu-result-data-simple{grid-template-columns:repeat(2,minmax(0,1fr))}
}


/* ==========================================================
   CONSUMO ELÉCTRICO · EQUIPO ESTÁNDAR / ON-OFF · V1
========================================================== */
.power-calculator-card{
  grid-column:1/-1;
  display:block!important;
  padding:20px!important;
  background:linear-gradient(180deg,#fff 0%,#fbfcff 100%)!important;
  border:1px solid #d7e0ec!important;
}
.power-calculator-heading{
  display:flex;
  align-items:flex-start;
  gap:13px;
  margin-bottom:16px;
}
.power-calculator-heading .tool-module-icon{flex:0 0 auto}
.power-calculator-heading h3{margin:0;color:#073b90}
.power-calculator-heading p{
  margin:5px 0 0;
  color:#667085;
  font-size:12px;
  line-height:1.45;
}
.power-title-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.power-active-badge{background:#e9f8ef!important;color:#067647!important}
.power-method-note{
  margin:0 0 15px;
  padding:11px 13px;
  border-radius:11px;
  background:#eef5ff;
  border-left:5px solid #073b90;
  color:#344054;
  font-size:10px;
  line-height:1.5;
}
.power-method-note strong{color:#073b90}
.power-method-note em{font-style:normal;font-weight:900}
.power-calculator-form{border-top:1px solid #e5edf6;padding-top:15px}
.power-form-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.power-field{display:grid;gap:6px;min-width:0}
.power-field-wide{grid-column:span 2}
.power-field>span{color:#344054;font-size:11px;font-weight:900}
.power-field input,.power-field select{
  width:100%;
  min-height:43px;
  padding:10px 11px;
  border:1px solid #bdc9d8;
  border-radius:10px;
  background:#fff;
  color:#152033;
  font:inherit;
  font-size:13px;
}
.power-field input:focus,.power-field select:focus{
  outline:3px solid rgba(7,59,144,.12);
  border-color:#5c8fd6
}
.power-input-unit{
  display:grid;
  grid-template-columns:minmax(0,1fr) 58px;
  align-items:stretch
}
.power-input-unit input{border-radius:10px 0 0 10px}
.power-input-unit small{
  display:grid;
  place-items:center;
  border:1px solid #bdc9d8;
  border-left:0;
  border-radius:0 10px 10px 0;
  background:#eef4ff;
  color:#073b90;
  font-size:10px;
  font-weight:900
}
.power-field-help{
  display:block;
  color:#667085;
  font-size:9px;
  line-height:1.35
}
.power-inline-button{
  justify-self:start;
  border:0;
  background:transparent;
  color:#0754ad;
  padding:1px 0;
  font:inherit;
  font-size:10px;
  font-weight:900;
  text-decoration:underline;
  cursor:pointer
}
.power-form-actions{display:flex;gap:9px;margin-top:14px;flex-wrap:wrap}
.power-calculate-button{min-width:190px}
.power-calculator-error{
  margin-top:14px;
  padding:12px 14px;
  border-radius:11px;
  background:#fff0f0;
  color:#b42318;
  font-size:12px;
  font-weight:800;
  line-height:1.45
}
.power-result{
  margin-top:18px;
  border:1px solid #cbd9ea;
  border-radius:17px;
  background:#fff;
  overflow:hidden
}
.power-result-main{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1px;
  background:#dce7f4
}
.power-result-main>div{
  padding:18px;
  background:#073b90;
  color:#fff
}
.power-result-main .power-result-maximum{background:#344054}
.power-result-kicker,.power-result-maximum span{
  display:block;
  color:#dce9ff;
  font-size:9px;
  font-weight:900;
  letter-spacing:.08em
}
.power-result-main strong{
  display:block;
  margin-top:5px;
  font-size:27px;
  line-height:1.05
}
.power-result-main small{
  display:block;
  margin-top:4px;
  color:#eaf2ff;
  font-size:11px;
  font-weight:700
}
.power-load-index{padding:14px 17px;border-bottom:1px solid #e7edf5}
.power-load-index>div:first-child{
  display:flex;justify-content:space-between;gap:12px;align-items:center
}
.power-load-index span{color:#344054;font-size:11px;font-weight:800}
.power-load-index strong{color:#073b90;font-size:18px}
.power-load-index small{display:block;margin-top:6px;color:#667085;font-size:9px}
.power-load-bar{
  height:9px;
  margin-top:8px;
  border-radius:999px;
  background:#e8eef5;
  overflow:hidden
}
.power-load-bar span{
  display:block;
  width:0;
  height:100%;
  border-radius:999px;
  background:#0b57b7;
  transition:width .2s ease
}
.power-result-data{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  border-bottom:1px solid #e7edf5
}
.power-result-data>div{
  padding:12px;
  border-right:1px solid #e7edf5
}
.power-result-data>div:last-child{border-right:0}
.power-result-data span{
  display:block;
  color:#667085;
  font-size:9px;
  font-weight:800;
  text-transform:uppercase
}
.power-result-data strong{
  display:block;
  margin-top:4px;
  color:#152033;
  font-size:12px
}
.power-breakdown{padding:15px 17px 9px}
.power-breakdown h4{margin:0 0 8px;color:#073b90;font-size:12px}
.power-breakdown-row{
  display:flex;
  justify-content:space-between;
  gap:14px;
  padding:7px 0;
  border-bottom:1px dashed #e2e8f0;
  font-size:11px
}
.power-breakdown-row span{color:#667085}
.power-breakdown-row strong{color:#152033;text-align:right;white-space:nowrap}
.power-cost-box{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin:10px 17px 0
}
.power-cost-box>div{
  padding:11px;
  border-radius:11px;
  background:#edf9f2;
  border:1px solid #c9ead5
}
.power-cost-box span{display:block;color:#466554;font-size:9px;font-weight:800}
.power-cost-box strong{display:block;margin-top:4px;color:#067647;font-size:15px}
.power-result-warning{
  margin:11px 17px 0;
  padding:11px 12px;
  border-radius:10px;
  background:#fff8e6;
  color:#7a5200;
  font-size:10px;
  line-height:1.45;
  font-weight:700
}
.power-disclaimer{
  margin:12px 17px 16px;
  color:#667085;
  font-size:9px;
  line-height:1.5
}
@media(max-width:760px){
  .power-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .power-field-wide{grid-column:span 2}
  .power-result-data{grid-template-columns:repeat(2,minmax(0,1fr))}
  .power-result-data>div:nth-child(2){border-right:0}
  .power-result-data>div:nth-child(-n+2){border-bottom:1px solid #e7edf5}
  .power-cost-box{grid-template-columns:1fr}
}
@media(max-width:520px){
  .power-calculator-card{padding:14px!important}
  .power-form-grid{grid-template-columns:1fr}
  .power-field-wide{grid-column:auto}
  .power-form-actions{display:grid;grid-template-columns:1fr 1fr}
  .power-calculate-button{min-width:0}
  .power-result-main{grid-template-columns:1fr}
}


/* ==========================================================
   HERRAMIENTAS · NAVEGACIÓN SEPARADA V2
   El listado muestra solo accesos. Cada herramienta abre sola.
========================================================== */
.tools-menu-intro{
  margin:0 0 14px;
  color:#667085;
  font-size:11px;
  line-height:1.45;
}
.tools-menu-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.tools-menu-card{
  display:flex;
  align-items:center;
  gap:13px;
  width:100%;
  min-height:88px;
  padding:15px;
  border:1px solid #d6e1ee;
  border-radius:14px;
  background:#fff;
  color:#152033;
  text-align:left;
  cursor:pointer;
  transition:border-color .15s ease, background .15s ease;
}
.tools-menu-card:hover{
  border-color:#8fb3df;
  background:#f8fbff;
}
.tools-menu-card:focus-visible{
  outline:3px solid rgba(7,59,144,.16);
  outline-offset:2px;
}
.tools-menu-card-icon{
  width:48px;
  height:48px;
  flex:0 0 48px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:#073b90;
  color:#fff;
  font-size:22px;
  font-weight:900;
}
.tools-menu-card-copy{
  display:grid;
  gap:4px;
  min-width:0;
  flex:1;
}
.tools-menu-card-copy strong{
  color:#073b90;
  font-size:13px;
}
.tools-menu-card-copy small{
  color:#667085;
  font-size:10px;
  line-height:1.35;
}
.tools-menu-card-arrow{
  color:#073b90;
  font-size:24px;
  font-weight:900;
}
.tool-detail-view{
  margin-top:14px;
}
.tool-detail-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:12px;
}
.tool-detail-back{
  min-height:40px;
}
.tool-detail-view .tool-module-card{
  margin:0;
}
@media(max-width:620px){
  .tools-menu-grid{grid-template-columns:1fr}
  .tools-menu-card{min-height:80px;padding:13px}
  .tools-menu-card-icon{width:44px;height:44px;flex-basis:44px}
}

/* ==========================================================
   V3 · VOLVER A HERRAMIENTAS + PRODUCTOS RECOMENDADOS
========================================================== */
.tools-back-strong{
  background:#073b90!important;
  color:#fff!important;
  border-color:#073b90!important;
  font-weight:900!important;
}
.tools-back-strong:hover{background:#052f74!important;border-color:#052f74!important}
.tool-detail-footer{
  display:flex;
  justify-content:center;
  margin-top:16px;
  padding:4px 0 10px;
}
.tools-back-bottom{
  min-width:220px;
  background:#073b90!important;
  color:#fff!important;
  border-color:#073b90!important;
  font-weight:900!important;
}
@media(max-width:520px){
  .tools-back-bottom{width:100%}
}


/* ==========================================================
   LOGIN PORTAL PROFESIONAL · V8 EXACTO
   El panel izquierdo usa directamente la composición visual
   aprobada por el usuario. Sin reconstruirla con CSS.
========================================================== */

#authView.auth-grid{
  align-items:stretch;
}

#authView .hero-card-exact{
  padding:0!important;
  min-height:0!important;
  overflow:hidden!important;
  background:none!important;
  display:block!important;
}

#authView .hero-card-exact-image{
  display:block;
  width:100%;
  height:100%;
  object-fit:fill;
  border-radius:inherit;
}

@media (min-width: 801px){
  #authView.auth-grid{
    grid-template-columns:minmax(0,1.80fr) minmax(390px,.82fr)!important;
    gap:18px!important;
  }

  #authView .hero-card-exact,
  #authView .form-card{
    height:auto!important;
    min-height:0!important;
  }

  #authView .form-card{
    align-self:stretch!important;
    padding:22px!important;
  }
}

@media (max-width: 800px){
  #authView .hero-card-exact-image{
    height:auto!important;
    object-fit:contain!important;
  }
}

/* Aires Cash V1 */
.aires-cash-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;margin-bottom:18px}
.aires-cash-balance-card{display:flex;flex-direction:column;justify-content:center}
.aires-cash-balance{font-size:clamp(2rem,6vw,3.6rem);font-weight:900;color:#073f9c;letter-spacing:-.04em;margin:8px 0 12px}
.aires-cash-expirations{display:grid;gap:10px;margin-top:14px}
.aires-cash-expiration-row{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:12px 14px;border:1px solid #d9e3f2;border-radius:12px;background:#f8fbff}
.aires-cash-expiration-row strong{color:#073f9c}.aires-cash-expiration-row span{font-size:.9rem;color:#5b6678}
.aires-cash-table-wrap{overflow:auto}.aires-cash-table{width:100%;border-collapse:collapse;min-width:650px}.aires-cash-table th,.aires-cash-table td{padding:12px 10px;border-bottom:1px solid #e3e8f0;text-align:left}.aires-cash-table th{font-size:.82rem;color:#536174;text-transform:uppercase;letter-spacing:.04em}.aires-cash-positive{font-weight:800;color:#08783f}.aires-cash-negative{font-weight:800;color:#a72a2a}
@media(max-width:760px){.aires-cash-layout{grid-template-columns:1fr}.aires-cash-expiration-row{align-items:flex-start;flex-direction:column;gap:3px}}

/* Aires Cash V2 */
.welcome-name-line{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.welcome-name-line h1{margin-right:2px}
.welcome-cash-badge{display:inline-flex;align-items:center;gap:6px;border:1px solid #c8daf7;background:#f4f8ff;color:#073f9c;border-radius:999px;padding:7px 11px;font:inherit;font-size:13px;font-weight:800;cursor:pointer}
.welcome-cash-badge strong{font-size:14px}
.welcome-cash-coin{font-size:18px;line-height:1}
#airesCashView>.aires-cash-balance-card{margin-bottom:18px}
@media(max-width:600px){.welcome-name-line{align-items:flex-start}.welcome-cash-badge{padding:6px 9px}}

/* Aires Cash · promociones */
.aires-cash-promotions{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.aires-cash-promo-card{border:1px solid #d9e2ef;border-radius:16px;padding:16px;background:#fff}.aires-cash-promo-card h4{margin:0 0 8px;color:#003c8f;font-size:18px}.aires-cash-promo-card strong{display:block;color:#08743f;font-size:22px;margin-bottom:8px}.aires-cash-promo-card p{margin:0;color:#5b6577;line-height:1.45}
