/* AMKTEC Technology — calcado del mockup de diseno (Claude Design canvas) */

body{margin:0;background:#F4F6F9;font-family:Archivo,system-ui,sans-serif;color:#142A4F;-webkit-font-smoothing:antialiased}
*{box-sizing:border-box}
a{color:#0C7CB0;text-decoration:none}
a:hover{color:#F58220}
img{display:block}
/* <picture> reemplaza a varios <img> sueltos (ver _macros.html#picture).
   display:contents lo saca por completo del layout: el <img> de adentro
   queda como si fuera hijo directo del contenedor de siempre (flex/grid con
   aspect-ratio), asi que todo el CSS existente ("X img{width:100%;...}")
   sigue funcionando sin tocarlo. Mismo patron ya verificado en produccion
   en asesorias-juridicas. */
picture{display:contents}
input,select,textarea,button{font-family:Archivo,system-ui,sans-serif}
:focus-visible{outline:2px solid #F58220;outline-offset:2px}
::selection{background:#F58220;color:#fff}
button{border-radius:0}

@keyframes amkFade{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes amkPulse{0%,100%{opacity:.35}50%{opacity:.85}}

.wrap{max-width:1320px;margin:0 auto;padding:0 clamp(16px,4vw,32px)}
.eyebrow{font:700 11px/1 Archivo,sans-serif;letter-spacing:.2em;text-transform:uppercase;margin-bottom:12px}
.eyebrow-orange{color:#B54F00}
.eyebrow-cyan{color:#0C7CB0}
.h-section{font:900 clamp(26px,3.4vw,42px)/1 "Archivo Expanded",Archivo,sans-serif;letter-spacing:-.02em;text-transform:uppercase;color:#142A4F;margin:0}
.h-section.on-dark{color:#fff}
.h-page{font:900 clamp(28px,3.6vw,44px)/1 "Archivo Expanded",Archivo,sans-serif;letter-spacing:-.02em;text-transform:uppercase;color:#142A4F;margin:0 0 26px}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:30px}
.section-link{font:700 12px/1 Archivo,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#142A4F;border-bottom:2px solid #F58220;padding-bottom:5px}
.section-link.on-dark{color:#fff}
.breadcrumb{font:500 12px/1 Archivo,sans-serif;color:#5F6E82;letter-spacing:.06em;margin-bottom:14px}
.breadcrumb .current{color:#142A4F;font-weight:700}

/* ---- buttons ---- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:50px;padding:0 24px;border:none;cursor:pointer;
  font:800 12px/1 Archivo,sans-serif;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;transition:background .16s ease,color .16s ease;white-space:nowrap}
.btn:disabled{opacity:.5;cursor:not-allowed}
.btn-orange{background:#B54F00;color:#fff}
.btn-orange:hover{background:#8F3F00;color:#fff}
.btn-navy{background:#142A4F;color:#fff;border:2px solid #142A4F}
.btn-navy:hover{background:#1E3B69;color:#fff}
.btn-navy-o{background:#fff;color:#142A4F;border:2px solid #142A4F}
.btn-navy-o:hover{background:#142A4F;color:#fff}
.btn-white-o{background:transparent;color:#fff;border:2px solid #fff}
.btn-white-o:hover{background:#fff;color:#142A4F}
.btn-danger-o{background:#fff;color:#D9463A;border:2px solid #D9463A}
.btn-danger-o:hover{background:#D9463A;color:#fff}
.btn-sm{height:36px;padding:0 14px;font-size:10.5px;letter-spacing:.08em}
.btn-full{width:100%}
.btn-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,max-content));gap:12px}

/* ---- header ---- */
.top-bar{background:#0E1E3A;color:#A9BBD4;font:500 12px/1 Archivo,sans-serif;letter-spacing:.04em}
.top-bar .wrap{padding:10px clamp(16px,4vw,32px);display:flex;flex-wrap:wrap;gap:18px;align-items:center;justify-content:space-between}
.top-bar a{color:#A9BBD4}
.top-bar a:hover{color:#fff}
.site-header{position:sticky;top:0;z-index:60;background:#fff;border-bottom:2px solid #142A4F}
.site-header .bar{padding:12px clamp(16px,4vw,32px);display:flex;align-items:center;gap:clamp(12px,2vw,26px)}
.brand-logo{display:block;flex:none}
.brand-logo img{height:46px;width:auto}
.main-nav{display:flex;gap:clamp(10px,1.4vw,20px);align-items:center;margin-left:6px;flex:1;flex-wrap:wrap}
.main-nav a{font:700 12px/1 Archivo,sans-serif;letter-spacing:.09em;text-transform:uppercase;color:#5B6B80;white-space:nowrap;padding:6px 0;border-bottom:2px solid transparent}
.main-nav a:hover{color:#F58220}
.main-nav a.active{color:#142A4F;border-color:#F58220}
.header-search{display:flex;align-items:center;border:2px solid #E1E7EE;background:#F4F6F9;height:42px;padding:0 12px;gap:8px;min-width:clamp(0px,18vw,230px)}
.header-search input{border:none;background:transparent;outline:none;font:500 13px/1 Archivo,sans-serif;color:#142A4F;width:100%;min-width:0}
.icon-btn{width:42px;height:42px;border:2px solid #E1E7EE;background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer}
.icon-btn:hover{border-color:#142A4F}
.cart-btn{position:relative;height:42px;padding:0 16px;border:none;background:#142A4F;color:#fff;display:flex;align-items:center;gap:9px;cursor:pointer;transition:background .16s ease;text-decoration:none}
.cart-btn:hover{background:#1E3B69;color:#fff}
.header-actions{display:flex;align-items:center;gap:10px;flex:none}
.mobile-menu-btn{width:42px;height:42px;border:2px solid #142A4F;background:#fff;display:none;align-items:center;justify-content:center;cursor:pointer}
.mobile-panel{border-top:1px solid #E1E7EE;background:#0E1E3A;padding:14px clamp(16px,4vw,32px) 18px}
.mobile-panel .header-search{border:2px solid #2F5490;background:#142A4F;height:46px;margin-bottom:6px}
.mobile-panel .header-search input{color:#fff}
.mobile-panel a{display:block;padding:13px 0;border-bottom:1px solid #23375F;color:#fff;font:700 13px/1 Archivo,sans-serif;letter-spacing:.1em;text-transform:uppercase}

.mobile-menu-btn .mm-close{display:none}
.mobile-panel[hidden]{display:none}
.mobile-panel-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}
.mobile-panel-btn,.mobile-panel-wa{display:flex;align-items:center;justify-content:center;gap:9px;height:48px;
  font:800 11px/1 Archivo,sans-serif;letter-spacing:.1em;text-transform:uppercase;padding:0;border-bottom:0}
.mobile-panel .mobile-panel-btn{border:2px solid #2F5490;color:#fff}
.mobile-panel .mobile-panel-btn:hover{border-color:#F58220;color:#fff}
.mobile-panel .mobile-panel-wa{background:#B54F00;color:#fff;margin-top:10px}
.mobile-panel .mobile-panel-wa:hover{background:#8F3F00;color:#fff}
.mobile-panel a.active{color:#F58220}

@media (max-width:1080px){
  .main-nav,.header-search{display:none!important}
  .mobile-menu-btn{display:flex!important;width:48px;height:48px}
  .mobile-menu-btn.is-open{background:#142A4F;border-color:#142A4F}
  .mobile-menu-btn.is-open .mm-open{display:none}
  .mobile-menu-btn.is-open .mm-close{display:block}

  /* barra superior: una sola linea, solo lo esencial */
  .top-bar .wrap{flex-wrap:nowrap;gap:12px}
  .top-bar-info{gap:0;min-width:0}
  .top-bar-info span + span{display:none}
  .top-bar-info span:first-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
  .top-bar-links{gap:0;flex:none}
  .top-bar-links a{display:none}

  /* cabecera: solo logo + boton de menu */
  .site-header .bar{gap:14px;justify-content:space-between}
  .header-actions{gap:0}
  .header-actions .icon-btn,.header-actions .cart-btn{display:none}

  .mobile-panel .header-search{display:flex!important;height:48px;margin-bottom:14px}
  .mobile-panel a{padding:15px 0}
}

/* ---- flash ---- */
.flash{max-width:1320px;margin:14px auto 0;padding:0 clamp(16px,4vw,32px)}
.flash .msg{padding:12px 16px;border-left:4px solid #17A6E8;background:#F4F6F9;margin-bottom:8px;font-size:14px}
.flash .msg.error{border-color:#D9463A;background:#FDF2F1;color:#9B2C22}
.flash .msg.ok{border-color:#17A06A;background:#F0FBF6;color:#0d5f42}

/* ---- footer ---- */
.site-footer{background:#0E1E3A;color:#9DB2CE;border-top:6px solid #F58220}
.footer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:32px;padding:clamp(36px,4vw,58px) 0}
.footer-brand-mark{margin-bottom:18px}
.footer-brand-name{display:block;font:900 30px/1 "Archivo Expanded",Archivo,sans-serif;letter-spacing:-.02em;text-transform:uppercase;color:#fff}
.footer-brand-sub{display:block;font:700 12px/1 Archivo,sans-serif;letter-spacing:.32em;text-transform:uppercase;color:#F58220;margin-top:7px}
.footer-col-title{font:800 11.5px/1 Archivo,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#fff;margin:0 0 18px}
.footer-col a{display:block;font:400 13.5px/1.3 Archivo,sans-serif;color:#9DB2CE;margin-bottom:11px}
.footer-col a:hover{color:#F58220}
.social-row{display:flex;gap:9px}
.social-btn{width:38px;height:38px;border:1px solid #2F5490;display:flex;align-items:center;justify-content:center}
.social-btn:hover{border-color:#F58220}
.social-btn i{font-size:16px;line-height:1;color:#9DB2CE}
.social-btn:hover i{color:#F58220}
.footer-bottom{border-top:1px solid #23375F;padding:22px 0 clamp(24px,3vw,36px);display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:center;font:400 12.5px/1 Archivo,sans-serif}
.footer-bottom .links{display:flex;gap:20px;flex-wrap:wrap}
.footer-bottom a{color:#9DB2CE}
.footer-bottom a:hover{color:#F58220}

/* ---- cards / grids ---- */
.card{background:#fff;border:1px solid #DDE4EC}
.grid-lines{display:grid;gap:1px;background:#DDE4EC;border:1px solid #DDE4EC}
.grid-lines>*{background:#fff}
.cat-card{padding:24px 18px;display:flex;flex-direction:column;gap:14px;transition:background .16s ease,color .16s ease;text-decoration:none}
.cat-card:hover{background:#142A4F}
.cat-card:hover .cat-name,.cat-card:hover .cat-count{color:#fff}
.cat-name{font:700 13px/1.25 Archivo,sans-serif;color:#142A4F;letter-spacing:.02em;display:block}
.cat-count{font:500 11px/1 Archivo,sans-serif;color:#5F6E82;margin-top:6px;letter-spacing:.06em;display:block}

/* ---- product card ---- */
.product-card{display:flex;flex-direction:column;height:100%;background:#fff;border:1px solid #DDE4EC;transition:border-color .18s ease,box-shadow .18s ease;text-decoration:none;color:inherit}
.product-card:hover{border-color:#142A4F;box-shadow:0 10px 26px rgba(20,42,79,.13)}
.product-thumb{position:relative;aspect-ratio:4/3;background:#EDF1F6;display:flex;align-items:center;justify-content:center;overflow:hidden;border-bottom:1px solid #DDE4EC}
.product-thumb img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.badge-disc{position:absolute;top:0;right:0;background:#B54F00;color:#fff;font:800 12px/1 Archivo,sans-serif;letter-spacing:.06em;padding:8px 10px}
.badge-out{position:absolute;inset:0;background:rgba(20,42,79,.72);color:#fff;display:flex;align-items:center;justify-content:center;font:800 13px/1 Archivo,sans-serif;letter-spacing:.14em}
.product-body{display:flex;flex-direction:column;gap:9px;padding:16px 16px 18px;flex:1}
.product-brand{font:700 11px/1 Archivo,sans-serif;letter-spacing:.16em;color:#0C7CB0;text-transform:uppercase}
.product-name{font:600 15px/1.28 Archivo,sans-serif;color:#142A4F;height:39px;overflow:hidden;text-decoration:none}
.product-name:hover{color:#F58220}
.price-row{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap;min-height:30px}
.price{font:800 22px/1 Archivo,sans-serif;color:#142A4F}
.old-price{font:400 13px/1 Archivo,sans-serif;color:#5F6E82;text-decoration:line-through}
.stock-row{display:flex;align-items:center;gap:7px;font:600 11px/1 Archivo,sans-serif;letter-spacing:.1em;text-transform:uppercase}
.stock-dot{width:7px;height:7px;display:block}
.product-actions{margin-top:auto;padding-top:12px;display:grid;grid-template-columns:1fr 1fr;gap:8px}

/* ---- forms ---- */
.field{display:flex;flex-direction:column;gap:7px}
.field-label{font:700 11px/1 Archivo,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#5B6B80}
.field input,.field select,.field textarea{
  height:46px;border:2px solid #E1E7EE;background:#F8FAFC;padding:0 13px;font:500 14px/1 Archivo,sans-serif;color:#142A4F;outline:none;width:100%}
.field textarea{height:auto;padding:13px;resize:vertical;font:500 14px/1.5 Archivo,sans-serif}
.field input:focus,.field select:focus,.field textarea:focus{border-color:#17A6E8;background:#fff}
.field-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px}
.filter-check{display:flex;align-items:center;gap:9px;font:500 13px/1 Archivo,sans-serif;color:#4A5A6E;cursor:pointer;margin-bottom:9px}
.filter-check input{width:15px;height:15px;accent-color:#F58220;cursor:pointer}
.panel-title{font:800 12px/1 Archivo,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#142A4F;padding-bottom:14px;border-bottom:2px solid #142A4F;margin-bottom:22px}

/* ---- tags/status ---- */
.status-dot{width:9px;height:9px;display:inline-block}
.status-pill{font:800 10.5px/1 Archivo,sans-serif;letter-spacing:.12em;text-transform:uppercase;padding:8px 12px;color:#fff;display:inline-block}

/* ---- empty state ---- */
.empty-state{background:#fff;border:1px solid #DDE4EC;padding:76px 30px;text-align:center}
.empty-state svg{margin-bottom:18px}
.empty-title{font:800 22px/1.2 Archivo,sans-serif;color:#142A4F;margin-bottom:10px}
.empty-text{font:400 14.5px/1.6 Archivo,sans-serif;color:#5F6E82;margin-bottom:26px}

/* ---- success panel ---- */
.success-panel{background:#fff;border:1px solid #DDE4EC;border-top:6px solid #17A06A;padding:clamp(30px,5vw,54px);animation:amkFade .35s ease both}
.success-title{font:900 clamp(26px,3.4vw,40px)/1.05 "Archivo Expanded",Archivo,sans-serif;text-transform:uppercase;letter-spacing:-.02em;color:#142A4F;margin:0 0 14px}
.success-text{font:400 15.5px/1.6 Archivo,sans-serif;color:#5B6B80;margin:0 0 24px}
.token-box{border:1px solid #DDE4EC;background:#F8FAFC;padding:20px;margin-bottom:26px}
.token-value{font:800 20px/1 Archivo,sans-serif;color:#0C7CB0;letter-spacing:.06em;margin-bottom:10px}

/* ---- order timeline ---- */
.timeline{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:4px}
.tl-step{display:flex;flex-direction:column;gap:10px}
.tl-dotbar{display:flex;align-items:center}
.tl-dot{width:14px;height:14px;background:#DDE4EC;display:block;flex:none}
.tl-bar{height:3px;background:#DDE4EC;flex:1}
.tl-label{font:600 12px/1.3 Archivo,sans-serif;color:#A5B1C0;letter-spacing:.04em;text-transform:uppercase}
.tl-when{font:500 11.5px/1 Archivo,sans-serif;color:#A5B1C0}

/* ---- summary box (carrito/checkout) ---- */
.summary-box{background:#142A4F;color:#fff;padding:26px;max-width:420px;width:100%}
.summary-title{font:800 13px/1 Archivo,sans-serif;letter-spacing:.16em;text-transform:uppercase;margin-bottom:20px}
.summary-row{display:flex;justify-content:space-between;padding:10px 0;font:400 14px/1 Archivo,sans-serif;color:#B7C8E0}
.summary-row.line{border-bottom:1px solid #2F5490}
.summary-total{display:flex;justify-content:space-between;align-items:baseline;padding:18px 0 24px}
.summary-total .lbl{font:800 13px/1 Archivo,sans-serif;letter-spacing:.14em;text-transform:uppercase}
.summary-total .val{font:900 30px/1 "Archivo Expanded",Archivo,sans-serif;letter-spacing:-.02em}

/* ---- admin ---- */
.admin-body{background:#F4F6F9;min-height:100vh}
.admin-hero{background:#0E1E3A}
.admin-hero .inner{padding:clamp(28px,3.5vw,46px) 0 0}
.admin-tabs{display:flex;gap:2px;margin-top:26px;flex-wrap:wrap}
.admin-tab{height:48px;padding:0 24px;border:none;font:800 12px/1 Archivo,sans-serif;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background:transparent;color:#8FB4E4;text-decoration:none;display:inline-flex;align-items:center}
.admin-tab.active{background:#F4F6F9;color:#142A4F}
.admin-tab:hover:not(.active){color:#fff}
.admin-main{padding:clamp(26px,3vw,42px) 0 72px}
.stat-strip{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}
.stat-cell{padding:26px 22px}
.stat-bar{width:34px;height:4px;margin-bottom:16px}
.stat-n{font:900 clamp(24px,3vw,34px)/1 "Archivo Expanded",Archivo,sans-serif;color:#142A4F;letter-spacing:-.02em;margin-bottom:10px}
.stat-label{font:600 12px/1.4 Archivo,sans-serif;color:#5F6E82;letter-spacing:.06em;text-transform:uppercase}
.admin-panel-head{font:800 12px/1 Archivo,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#142A4F;padding:20px 22px;border-bottom:2px solid #142A4F;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.admin-table-wrap{overflow-x:auto}
.admin-row-head{display:grid;gap:14px;padding:13px 22px;background:#F4F6F9;border-bottom:1px solid #DDE4EC;font:800 10.5px/1 Archivo,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#5F6E82}
.admin-row{display:grid;gap:14px;padding:14px 22px;border-bottom:1px solid #E9EEF4;align-items:center}
.products-cols{grid-template-columns:3fr 1.1fr 1.3fr 1.1fr .8fr 1.5fr;min-width:820px}
.clients-cols{grid-template-columns:1.4fr 1.8fr 1.1fr .7fr 1.1fr 1.4fr;min-width:760px}
.order-card{padding:18px 22px;border-bottom:1px solid #E9EEF4}
.order-card-link{padding-top:14px;margin-top:14px;border-top:1px dashed #E1E7EE;display:flex;flex-wrap:wrap;gap:10px;align-items:center}

@media (max-width:900px){
  .footer-grid{grid-template-columns:1fr 1fr}
}

/* ------------------------------------------------------- carrito flotante */
.cart-drawer-backdrop{position:fixed;inset:0;background:rgba(14,30,58,.45);opacity:0;pointer-events:none;transition:opacity .22s ease;z-index:190}
.cart-drawer-backdrop.open{opacity:1;pointer-events:auto}
.cart-drawer{position:fixed;top:0;right:0;bottom:0;width:380px;max-width:92vw;background:#ffffff;box-shadow:-8px 0 28px rgba(20,42,79,.2);transform:translateX(100%);transition:transform .28s ease;z-index:200;display:flex;flex-direction:column}
.cart-drawer.open{transform:translateX(0)}
.cart-fab{position:fixed;right:22px;bottom:22px;width:56px;height:56px;border-radius:50%;background:#142A4F;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 8px 20px rgba(20,42,79,.35);z-index:150;transition:background .16s ease}
.cart-fab:hover{background:#1E3B69}
.cart-fab-badge{position:absolute;top:-4px;right:-4px;background:#B54F00;color:#ffffff;font:800 11px/1 Archivo,sans-serif;min-width:20px;height:20px;border-radius:10px;display:flex;align-items:center;justify-content:center;padding:0 5px;border:2px solid #F4F6F9}
.whatsapp-fab{position:fixed;right:22px;bottom:92px;width:56px;height:56px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 20px rgba(37,211,102,.4);z-index:150;text-decoration:none;transition:background .16s ease}
.whatsapp-fab:hover{background:#1EBE5A}
.cart-toast{position:fixed;top:18px;right:22px;max-width:min(360px,86vw);background:#0d5f42;color:#ffffff;padding:14px 20px;font:600 13.5px/1.4 Archivo,sans-serif;box-shadow:0 10px 26px rgba(20,42,79,.28);z-index:300;opacity:0;transform:translateY(-12px);transition:opacity .25s ease,transform .25s ease;pointer-events:none}
.cart-toast.show{opacity:1;transform:translateY(0)}
.cart-toast.error{background:#9B2C22}
@media (max-width:640px){
  .cart-fab,.whatsapp-fab{width:50px;height:50px;right:14px}
  .whatsapp-fab{bottom:80px}
  .cart-toast{left:14px;right:14px;max-width:none}
}

/* --------------------------------------------------------------------- home */
.home-hero-media{min-height:460px;overflow:hidden}
@media (max-width:760px){
  .home-hero-media{min-height:320px}
}

/* --------------------------------------------------------------------- blog */
.blog-hero{background:#142A4F;position:relative;overflow:hidden;padding:clamp(34px,4vw,56px) 0}
.blog-hero .wrap-wide{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(24px,5vw,80px);align-items:end}
.blog-hero-intro{min-width:0}
.blog-hero h1{font:900 clamp(30px,4.4vw,54px)/1 'Archivo Expanded',Archivo,sans-serif;letter-spacing:-.025em;text-transform:uppercase;color:#fff;margin:0 0 14px}
.blog-hero p{font:400 clamp(15px,1.1vw,17.5px)/1.65 Archivo,sans-serif;color:#B7C8E0;margin:0;max-width:60ch}
.blog-hero-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-left:1px solid #2D4470}
.blog-hero-stat{padding:0 18px}
.blog-hero-stat + .blog-hero-stat{border-left:1px solid #2D4470}
.blog-hero-stat-n{font:900 28px/1 'Archivo Expanded',Archivo,sans-serif;color:#fff}
.blog-hero-stat-l{font:600 10.5px/1.4 Archivo,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#8FA6C6;margin-top:8px}

/* franja de etiquetas: seccion propia, angosta, separada del hero por su propio borde */
.blog-tagsbar{background:#fff;border-bottom:1px solid #DDE4EC}
.blog-tags{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:14px 0}
.blog-tags-label{font:800 10px/1 Archivo,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#8A96A6;margin-right:4px}
.blog-tags a{font:700 11px/1 Archivo,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:#5B6B80;border:1px solid #DDE4EC;padding:9px 14px;background:#fff}
.blog-tags a:hover{border-color:#142A4F;color:#142A4F}
.blog-tags a.is-active{background:#142A4F;border-color:#142A4F;color:#fff}

.blog-wrap{padding-top:clamp(28px,3.2vw,48px);padding-bottom:80px}

.blog-featured{display:grid;grid-template-columns:1.25fr 1fr;gap:0;border:2px solid #142A4F;background:#fff;margin-bottom:clamp(28px,3vw,44px);text-decoration:none;transition:box-shadow .2s ease}
.blog-featured:hover{box-shadow:0 10px 30px rgba(20,42,79,.12)}
.blog-featured-media{position:relative;min-height:320px;background:#EDF1F6;overflow:hidden}
.blog-featured-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.blog-featured:hover .blog-featured-media img{transform:scale(1.04)}
.blog-featured-tag{position:absolute;top:0;left:0;font:800 10px/1 Archivo,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#fff;background:#B54F00;padding:9px 13px}
.blog-featured-body{padding:clamp(26px,2.6vw,46px);display:flex;flex-direction:column;justify-content:center}
.blog-featured-meta{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:16px}
.blog-featured-cat{font:800 10.5px/1 Archivo,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#0C7CB0}
.blog-featured-sep{width:16px;height:1px;background:#C7D2E0}
.blog-featured-date{font:600 11.5px/1 Archivo,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#5F6E82}
.blog-featured-body h2{font:800 clamp(22px,2.4vw,34px)/1.2 Archivo,sans-serif;letter-spacing:-.012em;color:#142A4F;margin:0 0 16px}
.blog-featured-body p{font:400 clamp(14.5px,1vw,16px)/1.7 Archivo,sans-serif;color:#4A5A6E;margin:0 0 22px}
.blog-featured-foot{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.blog-readmore{font:800 12px/1 Archivo,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#B54F00}
.blog-featured:hover .blog-readmore{color:#8F3F00}
.blog-read-time{font:500 12px/1 Archivo,sans-serif;color:#8A96A6}

.blog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:clamp(20px,1.8vw,30px)}
.blog-main .blog-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}
.blog-card{display:flex;flex-direction:column;background:#fff;border:1px solid #DDE4EC;text-decoration:none;transition:border-color .18s ease,box-shadow .18s ease}
.blog-card:hover{border-color:#142A4F;box-shadow:0 10px 26px rgba(20,42,79,.1)}
.blog-card-media{position:relative;aspect-ratio:16/10;background:#EDF1F6;overflow:hidden}
.blog-card-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.blog-card:hover .blog-card-media img{transform:scale(1.04)}
.blog-card-noimg{width:100%;height:100%;background:linear-gradient(135deg,#EDF1F6,#DDE4EC)}
.blog-card-cat{position:absolute;top:0;left:0;font:800 9.5px/1 Archivo,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#fff;background:#142A4F;padding:8px 11px}
.blog-card-body{padding:20px 20px 18px;display:flex;flex-direction:column;flex:1;gap:10px}
.blog-card-date{font:700 10px/1 Archivo,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#5F6E82}
.blog-card-body h3{font:800 17px/1.3 Archivo,sans-serif;letter-spacing:-.01em;color:#142A4F;margin:0}
.blog-card-body p{font:400 13.5px/1.65 Archivo,sans-serif;color:#5B6B80;margin:0}
.blog-card-foot{margin-top:auto;padding-top:16px;border-top:1px solid #E9EEF4;display:flex;align-items:center;justify-content:space-between;gap:10px}
.blog-card-foot .blog-readmore{font-size:10.5px}
.blog-card-tags{display:flex;flex-wrap:wrap;gap:6px}
.blog-card-tags span{font:600 9.5px/1 Archivo,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:#5B6B80;background:#EDF1F6;padding:5px 7px}

.blog-empty{padding:60px 0;text-align:center;color:#5B6B80;font:400 15px/1.6 Archivo,sans-serif}
.blog-pager{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:clamp(30px,3vw,48px);padding-top:22px;border-top:1px solid #DDE4EC;font:600 12.5px/1 Archivo,sans-serif;color:#5B6B80}
.blog-pager a{font:800 12px/1 Archivo,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#B54F00}
.blog-pager a:hover{color:#8F3F00}

/* ---- artículo ---- */
.blog-draft-note{background:#FFF4EA;color:#B25309;text-align:center;padding:10px;font:700 12.5px/1.4 Archivo,sans-serif}
.blog-article-head{background:#F7F9FC;border-bottom:2px solid #142A4F;padding:clamp(28px,3.2vw,42px) 0 clamp(30px,3.4vw,50px)}
.blog-breadcrumb{display:flex;align-items:center;gap:10px;font:600 11.5px/1 Archivo,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#8A96A6;margin-bottom:clamp(20px,2.2vw,32px)}
.blog-breadcrumb .blog-back{font:inherit;letter-spacing:inherit;color:#B54F00;font-weight:800}
.blog-head-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:clamp(24px,5vw,80px);align-items:end}
.blog-cat-badge{display:inline-flex;font:800 10.5px/1 Archivo,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#fff;background:#0C7CB0;padding:9px 13px;margin-bottom:18px}
.blog-article-head h1{font:800 clamp(28px,3.6vw,50px)/1.1 Archivo,sans-serif;letter-spacing:-.02em;color:#142A4F;margin:0;max-width:22ch}
.blog-article-excerpt{font:400 clamp(16px,1.15vw,19px)/1.6 Archivo,sans-serif;color:#4A5A6E;margin:20px 0 0;max-width:62ch}
.blog-meta-panel{display:flex;flex-direction:column;gap:13px;border-left:2px solid #DDE4EC;padding-left:clamp(18px,1.8vw,26px)}
.blog-meta-row{display:flex;justify-content:space-between;gap:14px}
.blog-meta-row .lbl{font:600 11px/1 Archivo,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#8A96A6}
.blog-meta-row .val{font:700 13px/1 Archivo,sans-serif;color:#142A4F;text-align:right}
.blog-article-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:5px}
.blog-article-tags a{font:600 10.5px/1 Archivo,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#5B6B80;border:1px solid #C7D2E0;padding:7px 11px}
.blog-article-tags a:hover{border-color:#142A4F;color:#142A4F}
.blog-cover{margin:0;background:#142A4F;border-bottom:2px solid #142A4F}
.blog-cover img{display:block;width:100%;max-height:520px;object-fit:cover}
.blog-article-body{max-width:780px;padding-top:clamp(34px,4vw,54px);padding-bottom:clamp(40px,5vw,80px)}

.blog-body{font:400 clamp(16.5px,1.1vw,18px)/1.85 Archivo,sans-serif;color:#33404F}
.blog-body .blog-p p{margin:0 0 24px;text-align:justify;text-wrap:pretty;hyphens:auto}
.blog-body .blog-p:first-of-type p:first-child{font-size:1.1em;line-height:1.7;color:#22303F}
.blog-body .blog-p a{color:#1E63C4;text-decoration:underline}
.blog-body .blog-p strong{color:#142A4F}
.blog-h2{font:800 clamp(21px,2.4vw,30px)/1.25 Archivo,sans-serif;letter-spacing:-.015em;color:#142A4F;margin:48px 0 20px;padding-top:24px;border-top:2px solid #142A4F;text-align:left;scroll-margin-top:96px}
.blog-fig{margin:38px 0}
.blog-fig img{display:block;width:100%}
.blog-fig figcaption{margin-top:10px;font:400 12.5px/1.5 Archivo,sans-serif;color:#5F6E82;border-left:2px solid #F58220;padding-left:11px;text-align:left}
.blog-quote{margin:36px 0;padding:6px 0 6px 24px;border-left:3px solid #F58220}
.blog-quote p{font:500 clamp(18px,1.5vw,22px)/1.5 Archivo,sans-serif;color:#142A4F;margin:0;text-align:left}
.blog-quote cite{display:block;margin-top:10px;font:400 12.5px/1.4 Archivo,sans-serif;font-style:normal;color:#5F6E82}
.blog-list{margin:0 0 24px;padding-left:24px;text-align:left}
.blog-list li{margin:0 0 10px}
.blog-list li a{color:#1E63C4;text-decoration:underline}
.blog-hr{border:0;border-top:2px solid #DDE4EC;margin:36px 0}
.blog-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:48px;padding-top:28px;border-top:2px solid #142A4F}

.blog-more{background:#F7F9FC;border-top:2px solid #142A4F;padding:clamp(40px,5vw,64px) 0}
.blog-more h2{font:800 clamp(19px,2.4vw,26px)/1.2 Archivo,sans-serif;letter-spacing:-.012em;color:#142A4F;margin:0 0 24px;padding-bottom:14px;border-bottom:2px solid #142A4F}

@media (max-width:1000px){
  .blog-head-grid{grid-template-columns:minmax(0,1fr);align-items:start}
  .blog-meta-panel{border-left:0;border-top:2px solid #DDE4EC;padding-left:0;padding-top:20px;flex-direction:row;flex-wrap:wrap;gap:20px 32px}
  .blog-meta-panel .blog-article-tags{width:100%}
}
@media (max-width:900px){
  .blog-hero .wrap{grid-template-columns:minmax(0,1fr)}
  .blog-hero-stats{border-left:0;margin-top:6px;gap:10px 0}
}
@media (max-width:760px){
  .blog-featured{grid-template-columns:1fr}
  .blog-featured-media{min-height:200px}
}
@media (max-width:640px){
  .blog-hero-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .blog-meta-row .val{text-align:left}
  .blog-meta-panel{flex-direction:column;gap:13px}
}

/* ---- listado: rail lateral (más leídos + CTA) ---- */
.wrap-wide{max-width:1520px;margin:0 auto;padding-left:clamp(16px,4vw,32px);padding-right:clamp(16px,4vw,32px)}
.blog-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:clamp(24px,2.6vw,44px);align-items:start}
.blog-list-head{display:flex;align-items:baseline;justify-content:space-between;gap:20px;padding-bottom:14px;border-bottom:2px solid #142A4F;margin-bottom:clamp(20px,2vw,30px)}
.blog-list-head h2{font:800 clamp(18px,1.5vw,22px)/1 Archivo,sans-serif;letter-spacing:-.01em;color:#142A4F;margin:0}
.blog-list-head span{font:600 12px/1 Archivo,sans-serif;color:#5F6E82}

.blog-rail{display:flex;flex-direction:column;gap:20px;position:sticky;top:88px} /* top deja lugar al site-header sticky (~64px) */
.blog-rail-box{background:#fff;border:1px solid #DDE4EC;padding:24px}
.blog-rail-title{font:800 10.5px/1 Archivo,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#B54F00;padding-bottom:14px;border-bottom:2px solid #142A4F}
.blog-rail-item{display:block;padding:16px 0;border-bottom:1px solid #E9EEF4;text-decoration:none}
.blog-rail-item:last-child{border-bottom:0;padding-bottom:0}
.blog-rail-item-n{display:grid;grid-template-columns:26px minmax(0,1fr);gap:12px}
.blog-rail-n{font:900 16px/1.3 'Archivo Expanded',Archivo,sans-serif;color:#C7D2E0}
.blog-rail-item-title{display:block;font:700 14px/1.45 Archivo,sans-serif;color:#142A4F}
.blog-rail-cat{display:block;margin-bottom:8px;font:500 11px/1 Archivo,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:#8A96A6}
.blog-rail-item-n .blog-rail-cat{margin-bottom:0;margin-top:6px}
.blog-rail-promo{background:#142A4F;padding:26px 24px;display:flex;flex-direction:column;gap:10px}
.blog-rail-promo-eyebrow{font:800 10.5px/1 Archivo,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#F58220}
.blog-rail-promo-title{font:800 19px/1.3 Archivo,sans-serif;color:#fff}
.blog-rail-promo p{font:400 13.5px/1.65 Archivo,sans-serif;color:#B7C8E0;margin:0 0 6px}

@media (max-width:1080px){
  .blog-layout{grid-template-columns:minmax(0,1fr)}
  .blog-rail{position:static;flex-direction:row;flex-wrap:wrap}
  .blog-rail-box,.blog-rail-promo{flex:1;min-width:260px}
}

/* ---- detalle: indice + cuerpo + relacionados ---- */
.blog-article-grid{display:grid;grid-template-columns:200px minmax(0,1fr) 300px;gap:clamp(28px,3.4vw,56px);align-items:start;padding:clamp(34px,3.6vw,60px) 0 clamp(50px,5vw,88px)}
.blog-article-grid .blog-article-body{padding-top:0;padding-bottom:0}

.blog-toc{position:sticky;top:88px;display:flex;flex-direction:column;gap:2px;border-left:2px solid #DDE4EC;padding-left:18px}
.blog-toc-title{font:800 10.5px/1 Archivo,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#8A96A6;margin-bottom:14px}
.blog-toc a{font:500 13px/1.5 Archivo,sans-serif;color:#5B6B80;padding:7px 0;text-decoration:none}
.blog-toc a:hover{color:#B54F00}
.blog-toc-share{margin-top:22px;padding-top:18px;border-top:1px solid #E9EEF4;display:flex;gap:8px}
.blog-toc-icon{width:36px;height:36px;border:1px solid #DDE4EC;background:#fff;display:flex;align-items:center;justify-content:center;color:#142A4F;cursor:pointer;padding:0}
.blog-toc-icon:hover{border-color:#142A4F}
.blog-toc-icon.is-done{border-color:#17A06A;color:#17A06A}

@media (max-width:1200px){
  .blog-article-grid{grid-template-columns:minmax(0,1fr) 300px}
  .blog-toc{display:none}
}
@media (max-width:1000px){
  .blog-article-grid{grid-template-columns:minmax(0,1fr)}
  .blog-rail{position:static;flex-direction:row;flex-wrap:wrap;top:auto}
  .blog-rail .blog-rail-box,.blog-rail .blog-rail-promo{flex:1;min-width:260px}
}

/* ===================================================== tienda: layout + filtros */
.shop-layout{display:grid;grid-template-columns:290px minmax(0,1fr);gap:26px;align-items:start}
.shop-filters{width:100%;max-width:290px;position:sticky;top:72px;max-height:calc(100vh - 88px);overflow-y:auto}
.shop-filters-head{padding:16px 18px;border-bottom:2px solid #142A4F;display:flex;justify-content:space-between;align-items:center;gap:12px}
.shop-filters-title{font:800 12px/1 Archivo,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#142A4F}
.shop-filters-clear{font:600 11px/1 Archivo,sans-serif;letter-spacing:.06em;color:#B54F00}
.shop-filters-close{display:none;width:40px;height:40px;border:none;background:#F4F6F9;align-items:center;justify-content:center;cursor:pointer;flex:none}
.filter-group{padding:18px;border-bottom:1px solid #E9EEF4}
.filter-group:last-child{border-bottom:0}
.filter-group-title{font:800 11px/1 Archivo,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#142A4F;margin-bottom:12px}
.filter-check-list{display:flex;flex-direction:column;gap:9px;max-height:220px;overflow:auto}
.filter-check-list--scroll{max-height:200px}
.filter-price-label{font:700 13px/1 Archivo,sans-serif;color:#142A4F;margin-top:10px}
.filter-seg{display:flex;flex-direction:column;gap:9px}
.shop-filters-foot{display:none}

.shop-toolbar{background:#fff;border:1px solid #DDE4EC;padding:14px 18px;display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;margin-bottom:20px;
  position:sticky;top:72px;z-index:40}
.shop-search{flex:1;min-width:220px;background:#F4F6F9}
.shop-toolbar-controls{display:flex;align-items:center;gap:10px}
.shop-count{font:600 12px/1 Archivo,sans-serif;color:#5F6E82;letter-spacing:.06em;white-space:nowrap}
.shop-filters-open{display:none;height:44px;padding:0 14px}
.shop-filters-badge{background:#B54F00;color:#fff;font:800 11px/1 Archivo,sans-serif;min-width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;padding:0 5px}
.shop-sort select{height:44px;border:2px solid #E1E7EE;background:#fff;padding:0 12px;font:600 13px/1 Archivo,sans-serif;color:#142A4F;cursor:pointer}

.shop-chips{display:none;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 18px}
.shop-chip{display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 10px;background:#142A4F;border:none;color:#fff;font:700 11px/1 Archivo,sans-serif;letter-spacing:.06em;cursor:pointer}
.shop-chips-clear{background:transparent;border:none;color:#B54F00;font:700 11px/1 Archivo,sans-serif;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;padding:0 6px}

.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(258px,1fr));gap:20px}
.shop-pager{display:flex;gap:6px;justify-content:center;margin:36px 0;flex-wrap:wrap}
.shop-pager-link{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid #DDE4EC;color:#142A4F;font:700 13px/1 Archivo,sans-serif}
.shop-pager-link.is-current{background:#142A4F;color:#fff;border-color:#142A4F}
.shop-backdrop{display:none}

@media (max-width:900px){
  .shop-layout{display:block}

  /* filtros -> drawer inferior */
  .shop-filters{position:fixed;left:0;right:0;bottom:0;top:auto;max-width:none;max-height:85vh;z-index:200;
    display:flex;flex-direction:column;transform:translateY(100%);transition:transform .26s ease;visibility:hidden;
    border:none;border-top:2px solid #142A4F;box-shadow:0 -8px 28px rgba(20,42,79,.2)}
  .shop-filters.open{transform:translateY(0);visibility:visible}
  .shop-filters-head{position:sticky;top:0;background:#fff;flex:none}
  .shop-filters-clear{display:none}
  .shop-filters-close{display:flex}
  #filters-form{flex:1;display:flex;flex-direction:column;overflow:hidden}
  .shop-filters-body{flex:1;overflow-y:auto}
  .shop-filters-foot{display:grid;grid-template-columns:1fr 1.4fr;gap:10px;padding:14px 18px;border-top:2px solid #142A4F;background:#fff;flex:none}
  .shop-filters-foot .btn{width:100%;height:50px}

  .filter-check-list,.filter-check-list--scroll{display:grid;grid-template-columns:1fr 1fr;gap:2px 12px;max-height:none}
  .filter-check-list--scroll{max-height:238px;overflow:auto}
  .filter-check{min-height:44px;margin-bottom:0}
  .filter-check input{width:20px;height:20px}
  #filters-form input[type=range]{height:32px}

  .filter-seg{flex-direction:row;flex-wrap:wrap;gap:8px}
  .filter-seg-opt{flex:1;min-width:92px;margin:0;justify-content:center;height:46px;border:2px solid #E1E7EE;
    color:#5B6B80;font:700 11.5px/1 Archivo,sans-serif;letter-spacing:.06em;text-transform:uppercase}
  .filter-seg-opt input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
  .filter-seg-opt:has(input:checked){border-color:#142A4F;background:#142A4F;color:#fff}

  /* barra de herramientas compacta (sin sticky: solo aplica en escritorio) */
  .shop-toolbar{display:block;background:none;border:none;padding:0;margin-bottom:0;position:static}
  .shop-search{display:flex!important;width:100%;min-width:0;height:48px;margin-bottom:10px;background:#fff}
  .shop-toolbar-controls{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:stretch}
  .shop-filters-open{display:inline-flex;order:1;height:48px}
  .shop-sort{order:2}
  .shop-sort select{width:100%;height:48px}
  .shop-count{order:3;grid-column:1 / -1;margin-top:2px}

  .shop-chips{display:flex;margin:14px 0 6px}

  .product-grid{grid-template-columns:1fr 1fr;gap:12px}

  .shop-pager-link{width:44px;height:44px}

  .shop-backdrop{display:block;position:fixed;inset:0;background:rgba(14,30,58,.45);opacity:0;pointer-events:none;
    transition:opacity .22s ease;z-index:190}
  .shop-backdrop.open{opacity:1;pointer-events:auto}
}

/* ============================================ producto: tarjeta compacta en movil */
@media (max-width:900px){
  .product-actions{grid-template-columns:1fr;gap:6px}
  .product-actions .btn-sm{height:44px}
  .product-name{height:auto;min-height:34px;font-size:13.5px;line-height:1.3;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .product-body{padding:13px 13px 15px;gap:7px}
  .product-brand{font-size:10px}
  .price{font-size:18px}
  .btn-row{grid-template-columns:1fr}
  .cat-grid{grid-template-columns:1fr 1fr!important}
}

/* ============================================ detalle de producto en movil */
@media (max-width:640px){
  .pd-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}
  .pd-tabs .pd-tab{flex:0 0 auto!important;padding:0 16px;white-space:nowrap}
  .pd-price{font-size:30px!important}
  .pd-actions{grid-template-columns:1fr!important}
}

/* ============================================ carrito en movil */
@media (max-width:640px){
  .cart-row{flex-wrap:wrap}
  .cart-row-actions{flex-basis:100%;justify-content:space-between;border-top:1px solid #E9EEF4;padding-top:12px;margin-top:2px}
}

/* ============================================ botones pequenos: mejor tap en movil */
@media (max-width:640px){
  .btn-sm{height:44px;font-size:11px}
}
