@font-face{
  font-family:'Gilroy';
  src:url('../fonts/gilroy/Gilroy-Light.otf') format('opentype');
  font-weight:400;
  font-style:normal;
  font-display:swap;
}
@font-face{
  font-family:'Gilroy';
  src:url('../fonts/gilroy/Gilroy-ExtraBold.otf') format('opentype');
  font-weight:700;
  font-style:normal;
  font-display:swap;
}

:root{
  --blue-950:#06192f;--blue-900:#0c2f5a;--blue-800:#173B6C;--blue-500:#2E86FF;--yellow:#F4B400;
  --bg:#F4F7FB;--text:#253044;--muted:#5B6B80;--white:#fff;--line:rgba(23,59,108,.12);
  --shadow:0 24px 60px rgba(12,34,64,.12);--shadow-soft:0 14px 34px rgba(12,34,64,.08);
  --radius-xl:32px;--radius-lg:24px;--radius-md:18px;--header-h:76px;--max:1180px;
  --font-primary:"Gilroy","Poppins",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --font-body:"Poppins",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --font:var(--font-body);
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font);color:var(--text);line-height:1.55;background:linear-gradient(180deg,#fff 0%,var(--bg) 45%,#fff 100%);overflow-x:hidden}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}button,input,textarea,select{font:inherit}details summary{cursor:pointer}summary::-webkit-details-marker{display:none}.container{width:min(var(--max),calc(100% - 48px));margin-inline:auto}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-bottom:1px solid rgba(23,59,108,.08)}.site-header__inner{min-height:var(--header-h);display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:inline-flex;align-items:center}.brand__logo{height:38px;width:auto}.brand--footer .brand__logo{height:40px}.nav{display:flex;align-items:center;gap:28px;color:#4f6480;font-size:14px;font-weight:500}.nav a{position:relative;padding:8px 0}.nav a::after{content:"";position:absolute;left:0;bottom:0;width:0;height:2px;background:var(--yellow);border-radius:999px;transition:width .25s ease}.nav a:hover::after{width:100%}
.btn{min-height:46px;display:inline-flex;align-items:center;justify-content:center;padding:12px 22px;border-radius:999px;border:1px solid transparent;font-size:14px;font-weight:700;white-space:nowrap;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.btn:hover{transform:translateY(-1px)}.btn-primary{color:#fff;background:linear-gradient(135deg,#19498d,#2e86ff);box-shadow:0 14px 30px rgba(46,134,255,.22)}.btn-outline{color:var(--blue-800);background:#fff;border-color:rgba(23,59,108,.16)}.btn-outline--light{background:rgba(255,255,255,.96);color:var(--blue-800);border-color:rgba(255,255,255,.18)}
.menu-toggle{display:none;width:44px;height:44px;border-radius:14px;border:1px solid rgba(23,59,108,.14);background:#fff;align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer}.menu-toggle span{width:20px;height:2px;border-radius:999px;background:var(--blue-800);transition:transform .25s ease,opacity .25s ease}.menu-toggle.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-toggle.is-open span:nth-child(2){opacity:0}.menu-toggle.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.hero{position:relative;overflow:hidden;background:radial-gradient(circle at 78% 36%,rgba(46,134,255,.28),transparent 22rem),linear-gradient(135deg,#06192f 0%,#0d2c52 52%,#173B6C 100%);color:#fff}.hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:72px 72px;opacity:.22;pointer-events:none}.hero__inner{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) 460px;gap:54px;align-items:center;min-height:640px;padding:72px 0}.hero--home .hero__inner--home{grid-template-columns:minmax(0,1fr) 520px;padding:60px 0 132px;min-height:calc(100vh - var(--header-h))}.hero__content{max-width:720px}.eyebrow,.eyebrow-light{display:inline-flex;align-items:center;gap:9px;width:fit-content;padding:8px 12px;border-radius:999px;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.eyebrow{border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.08);color:rgba(255,255,255,.92);backdrop-filter:blur(10px)}.eyebrow-light{border:1px solid rgba(23,59,108,.12);background:#fff;color:var(--blue-800)}.eyebrow::before,.eyebrow-light::before{content:"";width:8px;height:8px;border-radius:999px;background:var(--yellow);box-shadow:0 0 0 4px rgba(244,180,0,.14)}.hero h1,.section h1{margin:22px 0 0;max-width:780px;font-size:clamp(34px,4.2vw,54px);line-height:1.05;letter-spacing:-.045em;font-weight:700}.hero__copy,.copy-stack{margin-top:22px;color:rgba(255,255,255,.82);font-size:17px;display:grid;gap:14px}.hero__actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}
.hero__visual{position:relative;display:flex;align-items:center;justify-content:center;min-height:420px}.hero__glow{position:absolute;right:40px;bottom:50px;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,rgba(89,146,255,.44) 0%,rgba(89,146,255,.18) 34%,rgba(89,146,255,0) 72%)}.hero__printer{position:relative;z-index:3;max-height:500px;width:auto;filter:drop-shadow(0 30px 50px rgba(0,0,0,.18))}.hero-marquee{position:absolute;left:0;right:0;bottom:0;z-index:4;min-height:96px;background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.07));border-top:1px solid rgba(255,255,255,.10);backdrop-filter:blur(14px)}.hero-marquee__viewport,.client-marquee{overflow:hidden}.marquee-track{display:flex;align-items:center;gap:34px;width:max-content;animation:marquee 28s linear infinite}.hero-marquee .marquee-track{min-height:96px}.hero-marquee .marquee-track span{color:rgba(255,255,255,.86);font-weight:800;font-size:18px;white-space:nowrap}.marquee-track--cards span{padding:16px 22px;border-radius:18px;background:#fff;border:1px solid var(--line);color:var(--blue-800);font-size:14px;box-shadow:var(--shadow-soft)}@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:26px;max-width:720px}.feature-pill{display:flex;align-items:center;gap:12px;min-height:52px;padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.90);font-size:14px;font-weight:500}.feature-pill span{width:24px;height:24px;display:grid;place-items:center;border-radius:999px;background:rgba(244,180,0,.16);color:var(--yellow);font-size:13px;font-weight:800}
.section{padding:76px 0}.section-soft{background:linear-gradient(180deg,rgba(232,237,243,.52),rgba(255,255,255,.92));border-top:1px solid rgba(23,59,108,.07);border-bottom:1px solid rgba(23,59,108,.07)}.section-head{max-width:780px;margin-bottom:34px}.section-head.center{text-align:center;margin-inline:auto}.section-head h2{margin:14px 0 0;font-size:clamp(28px,3.2vw,38px);line-height:1.12;letter-spacing:-.035em;color:var(--blue-950);font-weight:700}.section-head p{margin-top:14px;color:var(--muted);font-size:17px;max-width:760px}.section-head.center p{margin-inline:auto}.grid{display:grid;gap:18px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-gap-sm{gap:14px}.top-space-sm{margin-top:18px}.pt-sm{padding-top:20px}
.card,.service-card--light,.metric-card,.pill-card,.info-card,.generic-card,.form-card--light,.mini-list__item,.status-panel,.history-highlight{background:rgba(255,255,255,.92);border:1px solid var(--line);box-shadow:0 12px 30px rgba(12,34,64,.06)}.card,.service-card--light,.generic-card{padding:24px;border-radius:24px;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.card:hover,.service-card--light:hover{transform:translateY(-4px);box-shadow:var(--shadow-soft);border-color:rgba(46,134,255,.22)}.card h3,.service-card--light h3,.glass-card h3,.status-panel h3,.history-highlight h3,.cta-banner h2,.form-banner h2,.quote-box h2,.info-card h3{color:var(--blue-950);font-size:20px;line-height:1.2;letter-spacing:-.02em;font-weight:700;margin:0 0 10px}.card h4{color:var(--blue-800);font-size:14px;font-weight:700;margin:0 0 10px}.card p,.service-card--light p,.pill-card span,.mini-list__item span,.status-row span,.generic-card p,.info-card p,.faq-list p{color:var(--muted);font-size:15px}.number-tag,.icon-tag{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;margin-bottom:18px;color:var(--blue-800);background:rgba(46,134,255,.10);font-size:13px;font-weight:800}.icon-tag{width:50px;height:50px;font-size:14px;letter-spacing:.04em;background:linear-gradient(135deg,rgba(46,134,255,.12),rgba(244,180,0,.14))}.card-link{display:inline-flex;align-items:center;gap:8px;margin-top:20px;color:var(--blue-800);font-size:14px;font-weight:750}.card-link::after{content:"→";transition:transform .2s ease}.card-link:hover::after{transform:translateX(4px)}.category-chip{display:inline-flex;align-items:center;width:fit-content;padding:6px 10px;border-radius:999px;background:rgba(46,134,255,.1);color:var(--blue-800);font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;margin-bottom:16px}
.split-layout{display:grid;gap:38px}.split-layout--about{grid-template-columns:400px minmax(0,1fr);align-items:center}.split-layout--history{grid-template-columns:360px minmax(0,1fr);align-items:center}.split-layout--cta{grid-template-columns:minmax(0,1fr) 380px;align-items:center}.split-layout--form{grid-template-columns:minmax(0,1fr) 330px;align-items:start}.status-panel{padding:28px;border-radius:30px}.status-panel__label{display:inline-flex;padding:8px 12px;border-radius:999px;background:rgba(46,134,255,.1);color:var(--blue-800);font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.status-panel h3{margin-top:18px;color:var(--blue-950);font-size:34px;line-height:1.04}.status-row{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-radius:16px;background:#f5f8fc;border:1px solid rgba(23,59,108,.08);margin-top:12px}.status-row strong{color:var(--blue-800)}.bullet-list{display:grid;gap:12px;max-width:580px}.bullet-list--check div{display:flex;align-items:center;gap:12px;color:var(--text);font-size:15px;font-weight:600}.bullet-list--check div::before{content:"✓";width:24px;height:24px;border-radius:999px;display:grid;place-items:center;background:rgba(244,180,0,.18);color:var(--blue-800);font-size:12px;font-weight:900}
.mini-list{display:grid;gap:14px}.mini-list__item{padding:20px;border-radius:22px}.mini-list__item strong{display:block;color:var(--blue-950);font-size:16px;margin-bottom:6px}
.cta-banner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;padding:40px;border-radius:32px;background:linear-gradient(135deg,#173B6C,#06192f);color:#fff;box-shadow:var(--shadow)}.cta-banner h2{color:#fff;font-size:clamp(28px,3vw,38px)}.cta-banner p{margin-top:12px;max-width:760px;color:rgba(255,255,255,.78);font-size:16.5px}
.glass-card,.service-card{border-radius:30px;padding:28px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.13);box-shadow:0 24px 70px rgba(0,0,0,.18);backdrop-filter:blur(14px)}.glass-card h3,.service-card h3{color:#fff;font-size:26px;line-height:1.1;letter-spacing:-.035em;margin-top:18px}.glass-card p,.light-list li,.service-card p{color:rgba(255,255,255,.82)}.placeholder-photo{height:250px;border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.05)),radial-gradient(circle at 50% 25%,rgba(255,255,255,.32),transparent 90px),linear-gradient(135deg,rgba(46,134,255,.28),rgba(244,180,0,.10));border:1px solid rgba(255,255,255,.12);display:grid;place-items:center;color:rgba(255,255,255,.82);font-size:14px;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.glass-card blockquote{margin:18px 0 0;padding:22px;border-radius:22px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.12)}.glass-card blockquote p{margin:0;color:rgba(255,255,255,.9);font-size:16px;font-weight:600;line-height:1.5}.glass-card blockquote footer{margin-top:14px;color:rgba(255,255,255,.66);font-size:13px;font-weight:700}
.metric-inline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:34px;max-width:640px}.metric-inline div,.metric-card{padding:20px;border-radius:20px}.metric-inline div{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12)}.metric-inline strong{display:block;color:#fff;font-size:28px;line-height:1}.metric-inline span{display:block;margin-top:8px;color:rgba(255,255,255,.72);font-size:13px;font-weight:600}.history-highlight{min-height:360px;padding:30px;border-radius:30px;color:#fff;background:linear-gradient(135deg,#06192f,#173B6C);display:grid;align-content:center}.history-highlight strong{font-size:64px;line-height:.9;letter-spacing:-.06em}.history-highlight h3{margin-top:12px;max-width:260px;color:#fff;font-size:25px}.history-highlight p{margin-top:20px;color:rgba(255,255,255,.76)}.pill-card{padding:16px;border-radius:18px}.pill-card strong{display:block;color:var(--blue-950);font-size:15px;margin-bottom:6px}.pill-row{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.pill-row span{padding:10px 14px;border-radius:999px;background:#fff;border:1px solid var(--line);color:var(--blue-800);font-size:14px;font-weight:650}
.list-check{display:grid;gap:10px;margin:20px 0 24px;padding:0}.list-check li{list-style:none;display:flex;gap:10px;color:var(--muted);font-size:15px}.list-check li::before{content:"✓";width:22px;height:22px;flex:0 0 22px;display:grid;place-items:center;border-radius:8px;background:rgba(244,180,0,.18);color:var(--blue-800);font-size:12px;font-weight:900;margin-top:1px}.light-list li{font-size:14.5px}.light-list li::before{background:rgba(244,180,0,.16);color:var(--yellow)}.metric-cards{padding:22px;border-radius:28px;background:#fff;border:1px solid rgba(23,59,108,.10);box-shadow:var(--shadow)}.metric-card strong{display:block;color:var(--blue-800);font-size:34px;line-height:1;letter-spacing:-.045em}.metric-card span{display:block;margin-top:8px;color:var(--muted);font-size:14px;font-weight:650}.pull-up-metrics{margin-top:-44px;padding-top:0}.printer-card{margin-top:18px;padding:16px;border-radius:22px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12)}.printer-card img{max-height:280px;margin:auto}.device-placeholder{margin-top:18px;height:240px;border-radius:22px;border:1px solid rgba(255,255,255,.12);background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.05));display:grid;place-items:center;color:rgba(255,255,255,.86);font-size:20px;font-weight:700}
.form-banner{display:grid;grid-template-columns:minmax(0,1fr) 430px;gap:28px;align-items:center;padding:34px;border-radius:32px;background:linear-gradient(135deg,#0D2340,#173B6C);color:#fff;box-shadow:var(--shadow)}.form-banner__copy h2{margin-top:18px;color:#fff;font-size:clamp(28px,3vw,38px);line-height:1.12;letter-spacing:-.035em}.form-banner__copy p{margin-top:14px;color:rgba(255,255,255,.78);font-size:16.5px}.align-center-vertical{align-self:center}.form-card{display:grid;gap:12px}.form-card--dark{padding:22px;border-radius:24px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.12)}.form-card--light{padding:24px;border-radius:24px}.form-grid{display:grid;gap:12px}.form-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.field{width:100%;min-height:48px;padding:13px 14px;border-radius:14px;border:1px solid rgba(23,59,108,.12);background:#fff;color:var(--text);outline:none}.field--dark{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.10);color:#fff}.field::placeholder{color:#8190a6}.field--dark::placeholder{color:rgba(255,255,255,.62)}.field--dark option{color:#253044}.form-note{margin:0;color:var(--muted);font-size:13px}.info-card{padding:24px;border-radius:24px}.info-list{display:grid;gap:14px;padding:0;margin:0 0 16px;list-style:none}.info-list li{display:grid;gap:4px}.info-list strong{color:var(--blue-950);font-size:14px}.info-list span{color:var(--muted);font-size:14px}.contact-badges{display:grid;gap:12px;margin-top:18px}.contact-badges div{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border-radius:16px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1)}.contact-badges strong{width:28px;height:28px;display:grid;place-items:center;border-radius:10px;background:rgba(255,255,255,.12);color:#fff;font-size:12px}.contact-badges span{color:rgba(255,255,255,.82);font-size:14px}
.faq-list{display:grid;gap:14px}.faq-list details{padding:18px 20px;border-radius:20px;background:#fff;border:1px solid var(--line);box-shadow:0 10px 26px rgba(12,34,64,.05)}.faq-list summary{display:flex;justify-content:space-between;align-items:center;gap:16px;color:var(--blue-950);font-size:16px;font-weight:700}.faq-list summary::after{content:"+";font-size:22px;line-height:1;color:var(--blue-800)}.faq-list details[open] summary::after{content:"–"}.faq-list p{margin:14px 0 0}
.footer{padding:62px 0 30px;background:#081B30;color:rgba(255,255,255,.76)}.footer-grid{display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:34px}.footer-brand p{max-width:360px;margin-top:18px;font-size:14.5px}.footer h3{margin:0 0 15px;color:#fff;font-size:15px;font-weight:700}.footer ul{list-style:none;display:grid;gap:10px;padding:0;margin:0;font-size:14.5px}.footer a:hover{color:#fff}.footer-bottom{margin-top:40px;padding-top:22px;border-top:1px solid rgba(255,255,255,.10);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:13px;color:rgba(255,255,255,.56)}
.reveal-up,.stagger-item{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease;transition-delay:var(--delay,0ms)}.is-visible{opacity:1;transform:none}
@media (max-width:1060px){.nav{gap:18px}.hero__inner,.hero--home .hero__inner--home,.split-layout--about,.split-layout--history,.split-layout--cta,.split-layout--form,.cta-banner,.form-banner{grid-template-columns:1fr}.glass-card,.service-card,.hero__visual{max-width:560px}.grid-5{grid-template-columns:repeat(3,minmax(0,1fr))}.footer-grid{grid-template-columns:1.2fr 1fr 1fr}.pull-up-metrics{margin-top:-28px}}
@media (max-width:820px){:root{--header-h:68px}.container{width:min(var(--max),calc(100% - 28px))}.menu-toggle{display:inline-flex}.header-cta{display:none}.nav{position:absolute;left:14px;right:14px;top:calc(var(--header-h) + 8px);display:grid;gap:0;padding:12px;border-radius:22px;background:rgba(255,255,255,.98);border:1px solid rgba(23,59,108,.10);box-shadow:var(--shadow-soft);transform:translateY(-12px);opacity:0;pointer-events:none;transition:opacity .25s ease,transform .25s ease}.nav.is-open{opacity:1;transform:translateY(0);pointer-events:auto}.nav a{padding:12px 14px;border-radius:14px}.nav a:hover{background:rgba(46,134,255,.08)}.nav a::after{display:none}.hero__inner,.hero--home .hero__inner--home{min-height:auto;padding:52px 0 110px}.hero__visual{min-height:300px}.hero__printer{max-height:360px}.feature-grid,.metric-inline,.grid-2,.grid-3,.grid-4,.grid-5,.form-grid-2{grid-template-columns:1fr}.hero__actions,.cta-banner .hero__actions{flex-direction:column;align-items:stretch}.btn{width:100%}.section{padding:58px 0}.card,.service-card--light,.generic-card{padding:18px;border-radius:20px}.number-tag,.icon-tag{margin-bottom:14px}.footer-grid{grid-template-columns:1fr}.form-banner,.cta-banner{padding:24px;border-radius:26px}.footer-bottom{justify-content:flex-start}.pill-row{justify-content:flex-start}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.reveal-up,.stagger-item{opacity:1;transform:none}}


/* WooCommerce / Tienda TECNIMAX */
.hero--shop .hero__inner{min-height:560px}.shop-summary-card{align-self:center}.shop-toolbar{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:30px}.shop-toolbar h2{margin:12px 0 0;color:var(--blue-950);font-size:clamp(28px,3vw,38px);line-height:1.12;letter-spacing:-.035em}.shop-toolbar__links{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.tmx-category-row{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.tmx-category-pill{display:grid;gap:4px;padding:14px 18px;border-radius:18px;background:#fff;border:1px solid var(--line);color:var(--blue-800);font-weight:800;box-shadow:0 10px 26px rgba(12,34,64,.05)}.tmx-category-pill span{color:var(--muted);font-size:12px;font-weight:650}.tmx-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.tmx-product-card{display:flex;flex-direction:column;min-height:100%;border-radius:24px;overflow:hidden;background:#fff;border:1px solid var(--line);box-shadow:0 12px 30px rgba(12,34,64,.06);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.tmx-product-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-soft);border-color:rgba(46,134,255,.22)}.tmx-product-card__image{display:grid;place-items:center;aspect-ratio:1/0.78;background:linear-gradient(180deg,#fff,#f4f7fb);padding:18px}.tmx-product-card__image img{width:100%;height:100%;object-fit:contain}.tmx-product-card__body{display:flex;flex-direction:column;flex:1;padding:20px}.tmx-product-card__cat{display:inline-flex;width:fit-content;margin-bottom:10px;padding:6px 10px;border-radius:999px;background:rgba(46,134,255,.1);color:var(--blue-800);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.tmx-product-card__title{margin:0 0 10px;color:var(--blue-950);font-size:17px;line-height:1.25;letter-spacing:-.015em}.tmx-product-card__meta{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.tmx-product-card__meta span{font-size:12px;color:var(--muted);background:#f5f8fc;border:1px solid rgba(23,59,108,.08);border-radius:999px;padding:4px 8px}.tmx-product-card__price{margin-top:auto;color:var(--blue-800);font-size:20px;font-weight:800}.tmx-product-card__price del{color:#95a1b3;font-size:14px}.tmx-product-card__price ins{text-decoration:none}.tmx-product-card__actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}.tmx-add-cart,.tmx-detail-btn,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{min-height:42px;display:inline-flex!important;align-items:center;justify-content:center;padding:10px 13px!important;border-radius:999px!important;border:1px solid transparent!important;font-size:13px!important;font-weight:800!important;line-height:1.1!important;text-align:center!important;transition:transform .2s ease!important}.tmx-add-cart,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{background:linear-gradient(135deg,#19498d,#2e86ff)!important;color:#fff!important}.tmx-detail-btn{background:#fff;color:var(--blue-800);border-color:rgba(23,59,108,.16)!important}.tmx-add-cart:hover,.tmx-detail-btn:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover{transform:translateY(-1px)}.added_to_cart.wc-forward{display:none!important}.tmx-pagination{margin-top:34px;display:flex;justify-content:center}.tmx-pagination .page-numbers{display:flex;gap:8px;list-style:none;padding:0}.tmx-pagination .page-numbers a,.tmx-pagination .page-numbers span{min-width:42px;height:42px;border-radius:999px;display:grid;place-items:center;background:#fff;border:1px solid var(--line);color:var(--blue-800);font-weight:800}.tmx-pagination .page-numbers .current{background:var(--blue-800);color:#fff}.empty-state{text-align:center;max-width:620px;margin:0 auto;padding:42px;border-radius:28px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-soft)}.empty-state__icon{width:56px;height:56px;margin:0 auto 16px;border-radius:18px;display:grid;place-items:center;background:rgba(46,134,255,.1);font-size:25px}.empty-state h3{margin:0;color:var(--blue-950);font-size:24px}.empty-state p{margin:10px 0 0;color:var(--muted)}.woocommerce-result-count{margin:0;color:var(--muted);font-size:14px}.woocommerce-ordering select{min-height:44px;border-radius:999px;border:1px solid var(--line);padding:0 14px;background:#fff;color:var(--text)}.tmx-single-product{display:grid;grid-template-columns:minmax(0,.95fr) minmax(360px,.75fr);gap:38px;align-items:start}.tmx-single-product__gallery,.tmx-single-product__summary{border-radius:28px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-soft);padding:28px}.tmx-single-product__gallery img{width:100%;height:auto;object-fit:contain}.tmx-single-product__summary h1{margin:16px 0 0;color:var(--blue-950);font-size:clamp(30px,3.2vw,44px);line-height:1.1;letter-spacing:-.04em}.tmx-single-price{margin-top:18px;color:var(--blue-800);font-size:30px;font-weight:800}.tmx-single-excerpt{margin-top:14px;color:var(--muted)}.tmx-single-cart{margin-top:22px}.tmx-single-cart form.cart{display:flex;gap:12px;flex-wrap:wrap}.tmx-single-cart .quantity input{min-height:46px;border-radius:999px;border:1px solid var(--line);padding:0 12px}.tmx-single-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.tmx-product-support{margin-top:22px;padding:18px;border-radius:18px;background:#f5f8fc;border:1px solid rgba(23,59,108,.08)}.tmx-product-support h3{margin:0 0 8px;color:var(--blue-950)}.tmx-product-support p{margin:0 0 8px;color:var(--muted)}.tmx-product-support a{color:var(--blue-800);font-weight:800}.woocommerce table.shop_table{border-collapse:separate;border-spacing:0;width:100%;border:1px solid var(--line);border-radius:22px;overflow:hidden;background:#fff;box-shadow:var(--shadow-soft)}.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:16px;border-bottom:1px solid rgba(23,59,108,.08);text-align:left}.woocommerce table.shop_table th{background:#f5f8fc;color:var(--blue-950);font-size:14px}.woocommerce table.shop_table td{color:var(--text)}.woocommerce table.shop_table img{width:72px;height:72px;object-fit:contain}.woocommerce .remove{width:30px;height:30px;border-radius:999px;display:grid!important;place-items:center;background:#fff0f0;color:#e63946!important;text-decoration:none}.woocommerce-cart .cart-collaterals,.cart-collaterals{margin-top:28px}.cart_totals{margin-left:auto;max-width:420px;background:#fff;border:1px solid var(--line);border-radius:24px;padding:22px;box-shadow:var(--shadow-soft)}.cart_totals h2{margin:0 0 16px;color:var(--blue-950)}.coupon{display:flex;gap:10px;flex-wrap:wrap}.coupon .input-text{min-height:44px;border-radius:999px;border:1px solid var(--line);padding:0 14px}

/* Blog */
.tmx-blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.tmx-blog-card{background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:var(--shadow-soft)}.tmx-blog-card__image{display:block;aspect-ratio:1.6/1;background:#f5f8fc}.tmx-blog-card__image img{width:100%;height:100%;object-fit:cover}.tmx-blog-card__body{padding:22px}.tmx-blog-card h2{margin:0 0 10px;color:var(--blue-950);font-size:22px;line-height:1.18;letter-spacing:-.025em}.tmx-blog-card p{margin:0;color:var(--muted)}.tmx-single-post{max-width:920px}.tmx-single-post__image{margin-bottom:24px;border-radius:28px;overflow:hidden;box-shadow:var(--shadow-soft)}.tmx-single-post__image img{width:100%;height:auto}.tmx-entry-content{font-size:17px}.tmx-entry-content h2,.tmx-entry-content h3{color:var(--blue-950);line-height:1.2}.tmx-entry-content a{color:var(--blue-800);font-weight:700}

@media (max-width:1060px){.tmx-product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.tmx-single-product{grid-template-columns:1fr}.tmx-blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.shop-toolbar{align-items:flex-start;flex-direction:column}.shop-toolbar__links{width:100%;justify-content:space-between}}
@media (max-width:820px){.tmx-product-grid,.tmx-blog-grid{grid-template-columns:1fr}.tmx-product-card__actions{grid-template-columns:1fr}.tmx-category-row{justify-content:flex-start}.tmx-single-product__gallery,.tmx-single-product__summary{padding:18px;border-radius:22px}.tmx-single-actions{flex-direction:column}.coupon{display:grid}.woocommerce table.shop_table thead{display:none}.woocommerce table.shop_table tr{display:grid;border-bottom:1px solid rgba(23,59,108,.08)}.woocommerce table.shop_table td{display:flex;justify-content:space-between;gap:16px}.woocommerce table.shop_table td::before{content:attr(data-title);font-weight:800;color:var(--blue-950)}.woocommerce table.shop_table td.product-thumbnail::before,.woocommerce table.shop_table td.product-remove::before{display:none}.cart_totals{max-width:none}.shop-toolbar__links{display:grid;width:100%}}


/* =========================================================
   TECNIMAX FORCE WOO DESIGN
   WooCommerce solo aporta lógica. El diseño lo controla el tema.
   ========================================================= */

.woocommerce,
.woocommerce-page,
.woocommerce-page body,
.woocommerce div.product,
.woocommerce ul.products,
.woocommerce-cart,
.woocommerce-checkout {
  font-family: var(--font) !important;
  color: var(--text) !important;
}

.woocommerce * {
  box-sizing: border-box;
}

.woocommerce a {
  color: var(--blue-800);
  text-decoration: none;
}

.woocommerce .woocommerce-breadcrumb,
.woocommerce .woocommerce-products-header,
.woocommerce .woocommerce-products-header__title,
.woocommerce .woocommerce-notices-wrapper:empty {
  display: none !important;
}

.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-error {
  max-width: var(--max);
  margin: 22px auto !important;
  border: 1px solid var(--line) !important;
  border-radius: 18px !important;
  background: #fff !important;
  color: var(--text) !important;
  box-shadow: var(--shadow-soft) !important;
  padding: 16px 20px !important;
  font-size: 14px !important;
}

.woocommerce .woocommerce-error {
  border-color: rgba(230,57,70,.22) !important;
}

.woocommerce .woocommerce-message::before,
.woocommerce .woocommerce-info::before,
.woocommerce .woocommerce-error::before {
  display: none !important;
}

.woocommerce .button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce a.added_to_cart,
.woocommerce .checkout-button,
.woocommerce button[name="woocommerce_checkout_place_order"],
.woocommerce .single_add_to_cart_button {
  min-height: 46px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 12px 22px !important;
  border-radius: 999px !important;
  border: 1px solid transparent !important;
  background: linear-gradient(135deg,#19498d,#2e86ff) !important;
  color: #fff !important;
  font-family: var(--font) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.1 !important;
  text-align: center !important;
  box-shadow: 0 14px 30px rgba(46,134,255,.18) !important;
  transition: transform .2s ease, box-shadow .2s ease !important;
}

.woocommerce .button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover,
.woocommerce .checkout-button:hover,
.woocommerce button[name="woocommerce_checkout_place_order"]:hover,
.woocommerce .single_add_to_cart_button:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 16px 34px rgba(46,134,255,.24) !important;
  background: linear-gradient(135deg,#19498d,#2e86ff) !important;
  color: #fff !important;
}

.woocommerce .quantity .qty,
.woocommerce input.input-text,
.woocommerce textarea,
.woocommerce select,
.woocommerce .select2-container .select2-selection--single {
  min-height: 48px !important;
  border-radius: 14px !important;
  border: 1px solid var(--line) !important;
  background: #fff !important;
  color: var(--text) !important;
  padding: 12px 14px !important;
  font-family: var(--font) !important;
  font-size: 14px !important;
  outline: none !important;
  box-shadow: none !important;
}

.woocommerce textarea {
  min-height: 120px !important;
}

.woocommerce label {
  color: var(--blue-950) !important;
  font-size: 14px !important;
  font-weight: 750 !important;
  margin-bottom: 7px !important;
}

.woocommerce form .form-row {
  padding: 0 !important;
  margin: 0 0 16px !important;
}

.woocommerce form .form-row-first,
.woocommerce form .form-row-last {
  width: 49% !important;
}

.woocommerce form .form-row-wide {
  clear: both;
}

/* Product archives forced */
.woocommerce ul.products,
.woocommerce-page ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 20px !important;
  margin: 0 !important;
  padding: 0 !important;
}

.woocommerce ul.products::before,
.woocommerce ul.products::after {
  display: none !important;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
  width: auto !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.woocommerce .tmx-product-card,
.woocommerce-page .tmx-product-card {
  width: auto !important;
  float: none !important;
}

.woocommerce span.onsale {
  min-height: auto !important;
  min-width: auto !important;
  top: 14px !important;
  left: 14px !important;
  right: auto !important;
  margin: 0 !important;
  padding: 7px 10px !important;
  border-radius: 999px !important;
  background: var(--yellow) !important;
  color: var(--blue-950) !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
}

/* Cart forced */
.woocommerce-cart main,
.woocommerce-checkout main {
  background: linear-gradient(180deg,#fff 0%, var(--bg) 45%, #fff 100%);
}

.woocommerce-cart .entry-content,
.woocommerce-checkout .entry-content,
.tmx-woo-shell,
.tmx-checkout-shell {
  max-width: var(--max);
  margin: 0 auto;
}

.woocommerce table.shop_table {
  border-collapse: separate !important;
  border-spacing: 0 !important;
  width: 100% !important;
  border: 1px solid var(--line) !important;
  border-radius: 24px !important;
  overflow: hidden !important;
  background: #fff !important;
  box-shadow: var(--shadow-soft) !important;
  margin: 0 0 28px !important;
}

.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
  padding: 16px !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(23,59,108,.08) !important;
  background: transparent !important;
  color: var(--text) !important;
  vertical-align: middle !important;
}

.woocommerce table.shop_table th {
  background: #f5f8fc !important;
  color: var(--blue-950) !important;
  font-size: 13px !important;
  font-weight: 850 !important;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.woocommerce table.shop_table td.product-name a {
  color: var(--blue-950) !important;
  font-weight: 800 !important;
}

.woocommerce table.shop_table td.product-price,
.woocommerce table.shop_table td.product-subtotal,
.woocommerce table.shop_table .amount {
  color: var(--blue-800) !important;
  font-weight: 850 !important;
}

.woocommerce table.shop_table img {
  width: 76px !important;
  height: 76px !important;
  object-fit: contain !important;
  border-radius: 14px !important;
  background: #f5f8fc !important;
  padding: 6px !important;
}

.woocommerce a.remove {
  width: 32px !important;
  height: 32px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 999px !important;
  background: #fff0f0 !important;
  color: #e63946 !important;
  font-size: 22px !important;
  line-height: 1 !important;
  text-decoration: none !important;
}

.woocommerce a.remove:hover {
  background: #e63946 !important;
  color: #fff !important;
}

.woocommerce-cart .cart-collaterals .cart_totals,
.woocommerce .cart_totals,
.woocommerce .woocommerce-checkout-review-order,
.tmx-checkout-card {
  background: #fff !important;
  border: 1px solid var(--line) !important;
  border-radius: 24px !important;
  box-shadow: var(--shadow-soft) !important;
  padding: 24px !important;
}

.woocommerce-cart .cart-collaterals .cart_totals {
  max-width: 460px;
  margin-left: auto;
}

.woocommerce-cart .cart-collaterals .cart_totals h2,
.woocommerce .cart_totals h2,
.tmx-checkout-card h3,
.tmx-checkout-head h2 {
  margin: 0 0 18px !important;
  color: var(--blue-950) !important;
  font-size: 26px !important;
  line-height: 1.15 !important;
  letter-spacing: -.03em !important;
}

/* Checkout forced */
.tmx-checkout-head {
  margin-bottom: 28px;
}

.tmx-checkout-head h2 {
  margin-top: 14px !important;
  font-size: clamp(30px, 3vw, 40px) !important;
}

.tmx-checkout-head p {
  color: var(--muted);
  font-size: 16px;
}

.tmx-checkout-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 430px;
  gap: 28px;
  align-items: start;
}

.tmx-checkout-section + .tmx-checkout-section {
  margin-top: 24px;
}

.woocommerce-checkout h3 {
  color: var(--blue-950) !important;
  font-size: 22px !important;
  line-height: 1.2 !important;
  letter-spacing: -.02em !important;
  margin: 0 0 18px !important;
}

.woocommerce-checkout-review-order-table {
  box-shadow: none !important;
  border-radius: 18px !important;
}

/* Single product forced */
.woocommerce div.product div.images,
.woocommerce div.product div.summary {
  float: none !important;
  width: auto !important;
  margin: 0 !important;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce div.product .tmx-single-price {
  color: var(--blue-800) !important;
  font-size: 30px !important;
  font-weight: 850 !important;
}

.woocommerce div.product form.cart {
  display: flex !important;
  gap: 12px !important;
  flex-wrap: wrap !important;
  margin: 22px 0 0 !important;
}

.woocommerce div.product form.cart div.quantity {
  margin: 0 !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
  display: none !important;
}

.woocommerce div.product .woocommerce-tabs .panel {
  margin: 0 !important;
}

.woocommerce .related.products h2 {
  display: none !important;
}

/* Woo blocks forced basic */
.wp-block-woocommerce-cart,
.wp-block-woocommerce-checkout {
  max-width: var(--max);
  margin: 0 auto;
  font-family: var(--font) !important;
}

.wc-block-components-button,
.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button {
  border-radius: 999px !important;
  background: linear-gradient(135deg,#19498d,#2e86ff) !important;
  color: #fff !important;
  font-weight: 800 !important;
  min-height: 46px !important;
}

/* Responsive Woo forced */
@media (max-width:1060px){
  .woocommerce ul.products,
  .woocommerce-page ul.products,
  .tmx-product-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  .tmx-checkout-grid {
    grid-template-columns: 1fr;
  }

  .woocommerce-cart .cart-collaterals .cart_totals {
    max-width: none;
  }
}

@media (max-width:820px){
  .woocommerce ul.products,
  .woocommerce-page ul.products,
  .tmx-product-grid {
    grid-template-columns: 1fr !important;
  }

  .woocommerce form .form-row-first,
  .woocommerce form .form-row-last {
    width: 100% !important;
    float: none !important;
  }

  .woocommerce table.shop_table thead {
    display: none !important;
  }

  .woocommerce table.shop_table tr {
    display: grid !important;
    border-bottom: 1px solid rgba(23,59,108,.08) !important;
  }

  .woocommerce table.shop_table td {
    display: flex !important;
    justify-content: space-between !important;
    gap: 16px !important;
    text-align: right !important;
  }

  .woocommerce table.shop_table td::before {
    content: attr(data-title);
    font-weight: 850;
    color: var(--blue-950);
    text-align: left;
  }

  .woocommerce table.shop_table td.product-thumbnail::before,
  .woocommerce table.shop_table td.product-remove::before,
  .woocommerce table.shop_table td.actions::before {
    display: none;
  }

  .woocommerce table.shop_table td.actions,
  .woocommerce table.shop_table td.product-thumbnail,
  .woocommerce table.shop_table td.product-remove {
    justify-content: center !important;
  }

  .woocommerce .coupon {
    display: grid !important;
    width: 100% !important;
  }

  .woocommerce .coupon input,
  .woocommerce .coupon button,
  .woocommerce table.shop_table td.actions > button {
    width: 100% !important;
  }

  .tmx-checkout-card {
    padding: 18px !important;
    border-radius: 20px !important;
  }
}


/* Navbar real pages */
.nav a.is-active,
.nav a.tecnimax-nav__link.is-active {
  color: var(--blue-800);
  font-weight: 800;
}
.nav a.is-active::after,
.nav a.tecnimax-nav__link.is-active::after {
  width: 100%;
}


/* Carruseles de clientes */
.section-clients{
  background:
    radial-gradient(circle at 15% 20%, rgba(46,134,255,.20), transparent 26rem),
    linear-gradient(135deg,#06192f 0%,#081B30 55%,#0c2f5a 100%);
  color:#fff;
  overflow:hidden;
}

.section-clients .section-head h2{
  color:#fff;
}

.section-clients .section-head p{
  color:rgba(255,255,255,.72);
}

.section-clients .eyebrow-light{
  color:#fff;
  border-color:rgba(255,255,255,.14);
  background:rgba(255,255,255,.08);
}

.client-logo-marquee,
.client-name-marquee{
  position:relative;
  overflow:hidden;
  width:100%;
}

.client-logo-marquee{
  margin-top:8px;
  padding:18px 0;
}

.client-name-marquee{
  margin-top:12px;
  padding:12px 0;
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,255,255,.08);
}

.client-logo-marquee::before,
.client-logo-marquee::after,
.client-name-marquee::before,
.client-name-marquee::after,
.hero-marquee--logos .hero-marquee__viewport::before,
.hero-marquee--logos .hero-marquee__viewport::after{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  width:120px;
  z-index:2;
  pointer-events:none;
}

.client-logo-marquee::before,
.client-name-marquee::before,
.hero-marquee--logos .hero-marquee__viewport::before{
  left:0;
  background:linear-gradient(90deg,#06192f,rgba(6,25,47,0));
}

.client-logo-marquee::after,
.client-name-marquee::after,
.hero-marquee--logos .hero-marquee__viewport::after{
  right:0;
  background:linear-gradient(270deg,#06192f,rgba(6,25,47,0));
}

.client-logo-track,
.client-name-track{
  display:flex;
  align-items:center;
  width:max-content;
  will-change:transform;
}

.client-logo-track{
  gap:28px;
  animation:clientLogoMarquee 36s linear infinite;
}

.client-name-track{
  gap:16px;
  animation:clientNameMarquee 44s linear infinite reverse;
}

.client-logo-item{
  width:210px;
  height:104px;
  flex:0 0 auto;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px 24px;
  border-radius:22px;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.09);
}

.client-logo-item img{
  max-width:100%;
  max-height:64px;
  object-fit:contain;
  opacity:.94;
  filter:drop-shadow(0 10px 22px rgba(0,0,0,.14));
}

.client-name-track span{
  flex:0 0 auto;
  padding:10px 16px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.055);
  color:rgba(255,255,255,.76);
  font-size:14px;
  font-weight:700;
  white-space:nowrap;
}

.hero-marquee--logos{
  min-height:116px;
}

.hero-marquee--logos .hero-marquee__viewport{
  position:relative;
  overflow:hidden;
}

.hero-marquee--logos .client-logo-track{
  min-height:116px;
  gap:24px;
  animation-duration:34s;
}

.hero-marquee--logos .client-logo-item{
  width:190px;
  height:82px;
  padding:14px 22px;
  background:rgba(255,255,255,.055);
}

.hero-marquee--logos .client-logo-item img{
  max-height:52px;
}

@keyframes clientLogoMarquee{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}

@keyframes clientNameMarquee{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}

@media (max-width:820px){
  .client-logo-marquee::before,
  .client-logo-marquee::after,
  .client-name-marquee::before,
  .client-name-marquee::after,
  .hero-marquee--logos .hero-marquee__viewport::before,
  .hero-marquee--logos .hero-marquee__viewport::after{
    width:52px;
  }

  .client-logo-track{
    gap:16px;
    animation-duration:30s;
  }

  .client-logo-item{
    width:168px;
    height:88px;
    padding:16px 18px;
    border-radius:18px;
  }

  .client-logo-item img{
    max-height:50px;
  }

  .hero-marquee--logos,
  .hero-marquee--logos .client-logo-track{
    min-height:98px;
  }

  .hero-marquee--logos .client-logo-item{
    width:150px;
    height:70px;
  }

  .hero-marquee--logos .client-logo-item img{
    max-height:42px;
  }

  .client-name-track span{
    font-size:13px;
    padding:9px 13px;
  }
}


/* =========================================================
   HERO TECNIMAX v7 - carrusel full width + glow reforzado
   ========================================================= */

.hero--home{
  min-height: calc(100vh - var(--header-h));
}

.hero--home .hero__inner--home{
  padding-bottom: 156px;
}

.hero--home .hero__visual{
  overflow: visible;
}

.hero--home .hero__visual::before{
  content:"";
  position:absolute;
  width:640px;
  height:360px;
  right:-80px;
  bottom:38px;
  border-radius:50%;
  background:
    radial-gradient(circle at 50% 55%,
      rgba(78,158,255,.70) 0%,
      rgba(46,134,255,.42) 28%,
      rgba(46,134,255,.18) 54%,
      rgba(46,134,255,0) 76%);
  filter: blur(18px);
  opacity: 1;
  z-index:1;
  pointer-events:none;
}

.hero--home .hero__visual::after{
  content:"";
  position:absolute;
  width:760px;
  height:150px;
  right:-150px;
  bottom:26px;
  border-radius:50%;
  background:
    radial-gradient(ellipse,
      rgba(87,157,255,.42) 0%,
      rgba(46,134,255,.22) 44%,
      rgba(46,134,255,0) 76%);
  filter: blur(22px);
  z-index:1;
  pointer-events:none;
}

.hero__glow{
  width:520px;
  height:520px;
  right:-40px;
  bottom:28px;
  background:
    radial-gradient(circle,
      rgba(108,177,255,.72) 0%,
      rgba(46,134,255,.38) 32%,
      rgba(46,134,255,.15) 58%,
      rgba(46,134,255,0) 78%);
  filter: blur(12px);
  opacity: 1;
}

.hero__printer{
  z-index:3;
}

.hero-marquee--logos{
  left:0;
  right:0;
  width:100%;
  min-height:118px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.075)),
    rgba(3,17,34,.56);
  border-top:1px solid rgba(255,255,255,.12);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.06),
    0 -24px 70px rgba(46,134,255,.12);
  backdrop-filter: blur(18px);
}

.hero-marquee--logos .hero-marquee__viewport{
  width:100%;
  max-width:none;
  margin:0;
  padding:0;
}

.hero-marquee--logos .client-logo-track{
  min-height:118px;
  gap:26px;
  padding-left:26px;
  animation-duration:36s;
}

.hero-marquee--logos .client-logo-item{
  width:214px;
  height:82px;
  border-radius:20px;
  padding:14px 24px;
  background:
    linear-gradient(135deg,rgba(255,255,255,.10),rgba(255,255,255,.035));
  border:1px solid rgba(255,255,255,.12);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 12px 32px rgba(0,0,0,.12);
}

.hero-marquee--logos .client-logo-item img{
  max-height:52px;
  opacity:.96;
}

.hero-marquee--logos .hero-marquee__viewport::before{
  width:170px;
  background:linear-gradient(90deg,#06192f 0%,rgba(6,25,47,.78) 28%,rgba(6,25,47,0) 100%);
}

.hero-marquee--logos .hero-marquee__viewport::after{
  width:170px;
  background:linear-gradient(270deg,#06192f 0%,rgba(6,25,47,.78) 28%,rgba(6,25,47,0) 100%);
}

@media (max-width:1060px){
  .hero--home .hero__inner--home{
    padding-bottom:138px;
  }

  .hero--home .hero__visual::before{
    width:520px;
    height:300px;
    right:-90px;
    bottom:20px;
  }

  .hero--home .hero__visual::after{
    width:620px;
    right:-160px;
  }
}

@media (max-width:820px){
  .hero--home .hero__inner--home{
    padding-bottom:124px;
  }

  .hero--home .hero__visual::before{
    width:420px;
    height:260px;
    right:-80px;
    bottom:8px;
    filter: blur(16px);
  }

  .hero--home .hero__visual::after{
    width:460px;
    height:100px;
    right:-100px;
    bottom:18px;
  }

  .hero__glow{
    width:360px;
    height:360px;
    right:-40px;
    bottom:10px;
  }

  .hero-marquee--logos{
    min-height:98px;
  }

  .hero-marquee--logos .client-logo-track{
    min-height:98px;
    gap:16px;
    padding-left:16px;
  }

  .hero-marquee--logos .client-logo-item{
    width:164px;
    height:68px;
    padding:12px 18px;
    border-radius:18px;
  }

  .hero-marquee--logos .client-logo-item img{
    max-height:40px;
  }

  .hero-marquee--logos .hero-marquee__viewport::before,
  .hero-marquee--logos .hero-marquee__viewport::after{
    width:54px;
  }
}


/* =========================================================
   CLIENTES v8 - doble carrusel full width
   ========================================================= */

.section-clients .container{
  width:100%;
  max-width:none;
  margin:0;
}

.section-clients .section-head{
  width:min(var(--max), calc(100% - 48px));
  margin-inline:auto;
}

.section-clients .client-logo-marquee,
.section-clients .client-name-marquee{
  width:100vw;
  max-width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
}

.section-clients .client-logo-marquee{
  margin-top:30px;
  padding:18px 0;
  background:rgba(3,17,34,.34);
}

.section-clients .client-name-marquee{
  margin-top:14px;
  padding:12px 0;
  background:rgba(3,17,34,.28);
}

.section-clients .client-logo-track{
  padding-left:28px;
}

.section-clients .client-name-track{
  padding-left:28px;
}

.section-clients .client-logo-marquee::before,
.section-clients .client-name-marquee::before{
  width:180px;
  background:linear-gradient(90deg,#06192f 0%,rgba(6,25,47,.82) 32%,rgba(6,25,47,0) 100%);
}

.section-clients .client-logo-marquee::after,
.section-clients .client-name-marquee::after{
  width:180px;
  background:linear-gradient(270deg,#06192f 0%,rgba(6,25,47,.82) 32%,rgba(6,25,47,0) 100%);
}

@media (max-width:820px){
  .section-clients .section-head{
    width:min(var(--max), calc(100% - 28px));
  }

  .section-clients .client-logo-marquee{
    margin-top:22px;
  }

  .section-clients .client-logo-track,
  .section-clients .client-name-track{
    padding-left:16px;
  }

  .section-clients .client-logo-marquee::before,
  .section-clients .client-logo-marquee::after,
  .section-clients .client-name-marquee::before,
  .section-clients .client-name-marquee::after{
    width:54px;
  }
}


/* =========================================================
   TIENDA v9 - filtros, hero limpio y productos con precio
   ========================================================= */

.btn-primary,
a.btn-primary,
button.btn-primary,
.header-cta.btn-primary{
  color:#fff !important;
}

.hero--shop-clean .hero__inner--single{
  grid-template-columns:1fr;
  min-height:430px;
  padding-top:92px;
  padding-bottom:92px;
}

.hero--shop-clean .hero__content{
  max-width:760px;
}

.shop-layout{
  display:grid;
  grid-template-columns:280px minmax(0,1fr);
  gap:26px;
  align-items:start;
}

.shop-filter-card{
  position:sticky;
  top:calc(var(--header-h) + 24px);
  padding:22px;
  border-radius:24px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow-soft);
}

.shop-filter-card__head h3{
  margin:14px 0 0;
  color:var(--blue-950);
  font-size:22px;
  line-height:1.15;
  letter-spacing:-.025em;
}

.shop-filter-form{
  display:grid;
  gap:16px;
  margin-top:22px;
}

.shop-filter-form label{
  display:grid;
  gap:8px;
  color:var(--blue-950);
  font-size:14px;
  font-weight:800;
}

.shop-filter-form input,
.shop-filter-form select{
  width:100%;
  min-height:48px;
  padding:12px 14px;
  border-radius:14px;
  border:1px solid var(--line);
  background:#fff;
  color:var(--text);
  outline:none;
}

.shop-filter-form input:focus,
.shop-filter-form select:focus{
  border-color:rgba(46,134,255,.42);
  box-shadow:0 0 0 4px rgba(46,134,255,.10);
}

.shop-filter-reset{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  color:var(--muted);
  font-size:14px;
  font-weight:750;
}

.shop-result-note{
  margin-bottom:16px;
  padding:12px 14px;
  border-radius:16px;
  background:#f5f8fc;
  border:1px solid rgba(23,59,108,.08);
  color:var(--muted);
  font-size:14px;
  font-weight:700;
}

.shop-layout .tmx-product-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.shop-toolbar .btn-outline{
  background:#fff !important;
  color:var(--blue-800) !important;
}

.hero--shop .btn-outline--light{
  background:#fff !important;
  color:var(--blue-950) !important;
  border-color:rgba(255,255,255,.24) !important;
}

.tmx-pagination{
  width:100%;
}

.tmx-pagination ul.page-numbers{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:8px;
  list-style:none;
  margin:0;
  padding:0;
}

.tmx-pagination .page-numbers a,
.tmx-pagination .page-numbers span{
  min-width:42px;
  height:42px;
  padding:0 12px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:#fff;
  border:1px solid var(--line);
  color:var(--blue-800);
  font-weight:800;
}

.tmx-pagination .page-numbers .current{
  background:var(--blue-800);
  color:#fff;
}

@media (max-width:1060px){
  .shop-layout{
    grid-template-columns:240px minmax(0,1fr);
    gap:20px;
  }

  .shop-layout .tmx-product-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:820px){
  .hero--shop-clean .hero__inner--single{
    min-height:auto;
    padding-top:58px;
    padding-bottom:58px;
  }

  .shop-layout{
    grid-template-columns:1fr;
  }

  .shop-filter-card{
    position:relative;
    top:auto;
  }

  .shop-layout .tmx-product-grid{
    grid-template-columns:1fr;
  }
}


/* =========================================================
   TIENDA v10 - sin hero azul, más ancho y tipografía ligera
   ========================================================= */

.shop-page-clean{
  background:linear-gradient(180deg,#fff 0%,#f7f9fc 42%,#fff 100%);
}

.shop-products-section{
  padding-top:56px;
}

.shop-wide-container{
  width:min(1440px, calc(100% - 48px));
  margin-inline:auto;
}

.shop-toolbar{
  margin-bottom:30px;
}

.shop-toolbar h1,
.shop-toolbar h2{
  margin:14px 0 0;
  color:var(--blue-950);
  font-size:clamp(32px,3.1vw,44px);
  line-height:1.08;
  letter-spacing:-.04em;
  font-weight:650;
}

.shop-toolbar p{
  margin:10px 0 0;
  max-width:680px;
  color:var(--muted);
  font-size:16px;
  font-weight:400;
}

.shop-toolbar__links .btn{
  font-weight:650 !important;
}

.shop-layout{
  grid-template-columns:260px minmax(0,1fr);
  gap:22px;
}

.shop-filter-card{
  padding:20px;
  border-radius:22px;
}

.shop-filter-card__head h3{
  font-weight:650;
  font-size:21px;
}

.shop-filter-form label{
  font-weight:650;
}

.shop-filter-form .btn{
  font-weight:650 !important;
}

.shop-result-note{
  font-weight:500;
}

.shop-layout .tmx-product-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}

.tmx-product-card{
  border-radius:22px;
}

.tmx-product-card__body{
  padding:18px;
}

.tmx-product-card__title{
  font-weight:650;
  font-size:17px;
  line-height:1.22;
}

.tmx-product-card__cat{
  font-weight:650;
}

.tmx-product-card__meta span{
  font-weight:400;
}

.tmx-product-card__price{
  font-size:18px;
  font-weight:650;
}

.tmx-product-card__actions{
  display:flex !important;
  align-items:center;
  gap:8px;
}

.tmx-product-card__actions .button,
.tmx-product-card__actions .tmx-add-cart,
.tmx-product-card__actions .tmx-detail-btn{
  flex:1 1 0;
  min-width:0;
  white-space:nowrap !important;
  min-height:40px !important;
  padding:10px 11px !important;
  font-size:12.5px !important;
  font-weight:650 !important;
  letter-spacing:-.01em;
}

.woocommerce .button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce a.button,
.woocommerce .checkout-button,
.woocommerce button[name="woocommerce_checkout_place_order"],
.woocommerce .single_add_to_cart_button{
  font-weight:650 !important;
}

.card h3,
.service-card--light h3,
.glass-card h3,
.status-panel h3,
.history-highlight h3,
.info-card h3,
.shop-filter-card h3{
  font-weight:650;
}

@media (min-width:1500px){
  .shop-wide-container{
    width:min(1520px, calc(100% - 64px));
  }

  .shop-layout{
    grid-template-columns:270px minmax(0,1fr);
  }

  .shop-layout .tmx-product-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
}

@media (max-width:1200px){
  .shop-layout .tmx-product-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:820px){
  .shop-wide-container{
    width:min(var(--max), calc(100% - 28px));
  }

  .shop-products-section{
    padding-top:44px;
  }

  .shop-layout{
    grid-template-columns:1fr;
  }

  .shop-layout .tmx-product-grid{
    grid-template-columns:1fr;
  }

  .tmx-product-card__actions{
    display:grid !important;
    grid-template-columns:1fr 1fr;
  }
}

@media (max-width:420px){
  .tmx-product-card__actions{
    grid-template-columns:1fr;
  }
}


/* =========================================================
   v11 - footer legible + productos sin padding en imagen
   ========================================================= */

/* Footer con contraste real */
.footer{
  background:#06192f !important;
  color:rgba(255,255,255,.86) !important;
}

.footer-brand p,
.footer p{
  color:rgba(255,255,255,.86) !important;
  font-weight:400;
}

.footer h3{
  color:#fff !important;
  font-weight:650;
}

.footer ul,
.footer li,
.footer a{
  color:rgba(255,255,255,.74) !important;
}

.footer a:hover{
  color:#fff !important;
}

.footer-bottom{
  border-top-color:rgba(255,255,255,.16) !important;
  color:rgba(255,255,255,.68) !important;
}

.footer-bottom span{
  color:rgba(255,255,255,.68) !important;
}

/* Producto: la imagen/fondo ocupa todo el contenedor */
.tmx-product-card__image{
  padding:0 !important;
  background:#f3f5f8 !important;
  overflow:hidden;
}

.tmx-product-card__image img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
  border-radius:0 !important;
}

/* Mantener tarjetas limpias y elegantes */
.tmx-product-card{
  overflow:hidden;
}

.tmx-product-card__body{
  background:#fff;
}

@media (max-width:820px){
  .footer-grid{
    gap:28px;
  }
}


/* =========================================================
   v12 - corrección textos claros fuera del hero
   ========================================================= */

/* .copy-stack nació para el hero oscuro, pero también se usa en secciones claras.
   Aquí forzamos lectura correcta fuera del hero. */
.section .copy-stack,
.simple-page .copy-stack,
main:not(.hero) .copy-stack{
  color:var(--muted) !important;
}

.section .copy-stack p,
.simple-page .copy-stack p,
main:not(.hero) .copy-stack p{
  color:var(--muted) !important;
  font-weight:400;
}

/* En el hero sí debe mantenerse claro */
.hero .copy-stack,
.hero .copy-stack p{
  color:rgba(255,255,255,.82) !important;
}

/* Historia / Nosotros */
.split-layout--history .copy-stack,
.split-layout--history .copy-stack p{
  color:var(--muted) !important;
}

.split-layout--history .section-head h2{
  color:var(--blue-950) !important;
}

.split-layout--history .section-head p{
  color:var(--muted) !important;
}


/* =========================================================
   v14 - refinamiento Contacto
   ========================================================= */

.page-template-page-contacto .split-layout--form,
.split-layout--form{
  grid-template-columns:minmax(0, 1fr) 360px;
  gap:42px;
  align-items:start;
}

.page-template-page-contacto .form-card--light{
  padding:28px;
  border-radius:26px;
}

.page-template-page-contacto .section-head{
  margin-bottom:30px;
}

.contact-side{
  display:grid;
  gap:18px;
  align-self:start;
  margin-top:0;
}

.contact-info-card{
  padding:26px;
  border-radius:26px;
}

.contact-info-card h3{
  margin-bottom:18px;
}

.contact-info-card .info-list{
  gap:17px;
}

.contact-info-card .info-list li{
  gap:5px;
}

.contact-info-card p{
  margin-top:18px;
  line-height:1.55;
}

.contact-map-card{
  overflow:hidden;
  min-height:260px;
  border-radius:26px;
  border:1px solid var(--line);
  background:#fff;
  box-shadow:var(--shadow-soft);
}

.contact-map-card iframe{
  width:100%;
  height:300px;
  display:block;
  border:0;
  filter:saturate(.9) contrast(.96);
}

@media (max-width:1060px){
  .page-template-page-contacto .split-layout--form,
  .split-layout--form{
    grid-template-columns:1fr;
    gap:28px;
  }

  .contact-side{
    grid-template-columns:1fr 1fr;
  }

  .contact-map-card iframe{
    height:100%;
    min-height:280px;
  }
}

@media (max-width:820px){
  .contact-side{
    grid-template-columns:1fr;
  }

  .page-template-page-contacto .form-card--light{
    padding:20px;
    border-radius:22px;
  }

  .contact-info-card,
  .contact-map-card{
    border-radius:22px;
  }

  .contact-map-card iframe{
    height:260px;
  }
}


/* =========================================================
   v15 - reconstrucción Alquiler general
   ========================================================= */

.alquiler-hero .hero__inner{
  min-height:600px;
}

.alquiler-hero .glass-card{
  align-self:center;
}

.alquiler-metrics{
  position:relative;
  z-index:3;
}

.alquiler-service-grid .service-card--light{
  min-height:100%;
}

.alquiler-service-grid .btn{
  width:fit-content;
  margin-top:4px;
}

.alquiler-process-grid .card{
  min-height:220px;
}

@media (max-width:1060px){
  .alquiler-hero .hero__inner{
    min-height:auto;
  }

  .alquiler-service-grid .btn{
    width:100%;
  }

  .alquiler-process-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:820px){
  .alquiler-process-grid{
    grid-template-columns:1fr;
  }

  .alquiler-process-grid .card{
    min-height:auto;
  }
}


/* =========================================================
   v16 - Contacto alineado + Alquiler por slug
   ========================================================= */

/* En Contacto la columna derecha debe iniciar alineada con la card del formulario, no con el título. */
.page-template-page-contacto .contact-side,
body.page-id-contacto .contact-side{
  margin-top:172px;
}

/* Fallback por si WordPress no agrega una clase específica de template */
.split-layout--form > .contact-side{
  margin-top:172px;
}

/* Ya no mostramos notas técnicas de formulario */
.form-note{
  display:none !important;
}

/* Alquiler: evita cualquier bloque fantasma heredado de contenido WPBakery o contenido vacío */
.page-template-page-alquiler .entry-content:empty,
.page-template-page-alquiler-general .entry-content:empty{
  display:none !important;
}

.alquiler-hero{
  margin-top:0;
}

.alquiler-hero .hero__content h1{
  color:#fff !important;
}

.alquiler-hero .copy-stack,
.alquiler-hero .copy-stack p{
  color:rgba(255,255,255,.82) !important;
}

@media (max-width:1060px){
  .page-template-page-contacto .contact-side,
  body.page-id-contacto .contact-side,
  .split-layout--form > .contact-side{
    margin-top:0;
  }
}


/* =========================================================
   v17 - Navbar Alquiler dropdown + rutas robustas
   ========================================================= */

.nav-dropdown{
  position:relative;
  display:flex;
  align-items:center;
}

.nav-dropdown__trigger{
  display:inline-flex !important;
  align-items:center;
  gap:6px;
}

.nav-dropdown__chevron{
  font-size:13px;
  line-height:1;
  transform:translateY(-1px);
  opacity:.75;
}

.nav-dropdown__menu{
  position:absolute;
  top:calc(100% + 14px);
  left:50%;
  min-width:210px;
  transform:translate(-50%, 10px);
  padding:10px;
  border-radius:18px;
  background:#fff;
  border:1px solid rgba(23,59,108,.10);
  box-shadow:0 18px 44px rgba(12,34,64,.14);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .2s ease, transform .2s ease, visibility .2s ease;
  z-index:80;
}

.nav-dropdown__menu::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:-16px;
  height:16px;
}

.nav-dropdown:hover .nav-dropdown__menu,
.nav-dropdown:focus-within .nav-dropdown__menu{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translate(-50%, 0);
}

.nav-dropdown__menu a{
  display:flex;
  align-items:center;
  min-height:42px;
  padding:10px 12px !important;
  border-radius:12px;
  color:var(--text);
  font-size:14px;
  font-weight:600;
}

.nav-dropdown__menu a:hover{
  background:rgba(46,134,255,.08);
  color:var(--blue-800);
}

.nav-dropdown.is-active > .nav-dropdown__trigger,
.nav-dropdown__trigger.is-active{
  color:var(--blue-800);
  font-weight:800;
}

@media (max-width:820px){
  .nav-dropdown{
    display:grid;
  }

  .nav-dropdown__trigger{
    justify-content:space-between;
    width:100%;
  }

  .nav-dropdown__menu{
    position:static;
    min-width:0;
    transform:none;
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    box-shadow:none;
    border:0;
    background:rgba(46,134,255,.06);
    margin:0 8px 8px;
    padding:6px;
  }

  .nav-dropdown:hover .nav-dropdown__menu,
  .nav-dropdown:focus-within .nav-dropdown__menu{
    transform:none;
  }
}


/* =========================================================
   v18 - Hero readability + impresora más grande + logos legibles
   ========================================================= */

/* Textos de todos los hero oscuros siempre blancos */
.hero,
.hero h1,
.hero h2,
.hero h3,
.hero p,
.hero .copy-stack,
.hero .copy-stack p,
.hero .hero__copy,
.hero .hero__content p,
.hero .glass-card p,
.hero .glass-card li,
.hero .light-list li,
.hero .contact-badges span{
  color:rgba(255,255,255,.86) !important;
}

.hero h1,
.hero .hero__content h1{
  color:#fff !important;
}

.hero .glass-card h3{
  color:#fff !important;
}

.hero .eyebrow{
  color:#fff !important;
}

/* Home: impresora más grande y naciendo desde abajo */
.hero--home .hero__inner--home{
  grid-template-columns:minmax(0,1fr) 610px;
  align-items:end;
  padding-top:54px;
  padding-bottom:138px;
}

.hero--home .hero__visual{
  min-height:570px;
  align-self:end;
  align-items:flex-end;
  justify-content:center;
}

.hero--home .hero__printer{
  max-height:650px;
  width:auto;
  transform:translateY(74px) scale(1.08);
  transform-origin:bottom center;
  filter:drop-shadow(0 34px 58px rgba(0,0,0,.24));
}

.hero--home .hero__visual::before{
  width:760px;
  height:430px;
  right:-115px;
  bottom:-10px;
  opacity:1;
  filter:blur(20px);
}

.hero--home .hero__visual::after{
  width:880px;
  height:170px;
  right:-180px;
  bottom:-4px;
  opacity:1;
}

/* Carrusel de logos: más grandes, menos apretados y más legibles */
.hero-marquee--logos{
  min-height:138px;
}

.hero-marquee--logos .client-logo-track{
  min-height:138px;
  gap:32px;
  animation-duration:42s;
}

.hero-marquee--logos .client-logo-item{
  width:268px;
  height:102px;
  padding:16px 26px;
  border-radius:24px;
  background:linear-gradient(135deg,rgba(255,255,255,.13),rgba(255,255,255,.045));
}

.hero-marquee--logos .client-logo-item img{
  max-height:72px;
  max-width:100%;
  opacity:1;
  image-rendering:auto;
  filter:drop-shadow(0 12px 24px rgba(0,0,0,.18));
}

.section-clients .client-logo-track{
  gap:34px;
  animation-duration:44s;
}

.section-clients .client-logo-item{
  width:280px;
  height:124px;
  padding:20px 30px;
  border-radius:26px;
}

.section-clients .client-logo-item img{
  max-height:82px;
  opacity:1;
  image-rendering:auto;
  filter:drop-shadow(0 12px 24px rgba(0,0,0,.18));
}

/* Nombres también un poco más claros */
.client-name-track span{
  color:rgba(255,255,255,.86);
  font-weight:650;
}

/* Responsive */
@media (max-width:1200px){
  .hero--home .hero__inner--home{
    grid-template-columns:minmax(0,1fr) 520px;
  }

  .hero--home .hero__printer{
    max-height:575px;
    transform:translateY(62px) scale(1.05);
  }

  .hero--home .hero__visual{
    min-height:500px;
  }

  .hero-marquee--logos .client-logo-item{
    width:236px;
    height:94px;
  }

  .hero-marquee--logos .client-logo-item img{
    max-height:64px;
  }
}

@media (max-width:1060px){
  .hero--home .hero__inner--home{
    grid-template-columns:1fr;
    align-items:center;
    padding-bottom:138px;
  }

  .hero--home .hero__visual{
    min-height:430px;
  }

  .hero--home .hero__printer{
    max-height:500px;
    transform:translateY(46px) scale(1.02);
  }

  .section-clients .client-logo-item{
    width:238px;
    height:104px;
  }

  .section-clients .client-logo-item img{
    max-height:68px;
  }
}

@media (max-width:820px){
  .hero--home .hero__inner--home{
    padding-bottom:116px;
  }

  .hero--home .hero__visual{
    min-height:340px;
  }

  .hero--home .hero__printer{
    max-height:390px;
    transform:translateY(34px) scale(1.02);
  }

  .hero-marquee--logos{
    min-height:108px;
  }

  .hero-marquee--logos .client-logo-track{
    min-height:108px;
    gap:18px;
  }

  .hero-marquee--logos .client-logo-item{
    width:190px;
    height:78px;
    padding:12px 18px;
  }

  .hero-marquee--logos .client-logo-item img{
    max-height:50px;
  }

  .section-clients .client-logo-item{
    width:190px;
    height:88px;
    padding:14px 20px;
  }

  .section-clients .client-logo-item img{
    max-height:54px;
  }
}


/* =========================================================
   v19 - Ajuste fino hero Home
   ========================================================= */

/* Título menos grande y más elegante */
.hero--home h1,
.hero--home .hero__content h1{
  font-size:clamp(36px,4.05vw,54px) !important;
  line-height:1.07 !important;
  letter-spacing:-.04em !important;
  font-weight:680 !important;
  max-width:700px;
}

/* Párrafo con más aire entre líneas */
.hero--home .hero__copy,
.hero--home .hero__content p{
  line-height:1.72 !important;
  max-width:680px;
}

/* La impresora sigue grande, pero menos pegada al carrusel inferior */
.hero--home .hero__inner--home{
  padding-bottom:164px !important;
}

.hero--home .hero__visual{
  min-height:540px !important;
}

.hero--home .hero__printer{
  max-height:610px !important;
  transform:translateY(38px) scale(1.04) !important;
}

.hero--home .hero__visual::before{
  bottom:24px !important;
}

.hero--home .hero__visual::after{
  bottom:30px !important;
}

/* Ajuste del carrusel para compensar más aire arriba */
.hero-marquee--logos{
  min-height:128px !important;
}

.hero-marquee--logos .client-logo-track{
  min-height:128px !important;
}

@media (max-width:1200px){
  .hero--home h1,
  .hero--home .hero__content h1{
    font-size:clamp(34px,4vw,50px) !important;
  }

  .hero--home .hero__printer{
    max-height:540px !important;
    transform:translateY(30px) scale(1.02) !important;
  }
}

@media (max-width:1060px){
  .hero--home .hero__inner--home{
    padding-bottom:148px !important;
  }

  .hero--home .hero__visual{
    min-height:410px !important;
  }

  .hero--home .hero__printer{
    max-height:470px !important;
    transform:translateY(26px) scale(1) !important;
  }
}

@media (max-width:820px){
  .hero--home h1,
  .hero--home .hero__content h1{
    font-size:clamp(32px,9vw,40px) !important;
    line-height:1.08 !important;
  }

  .hero--home .hero__inner--home{
    padding-bottom:124px !important;
  }

  .hero--home .hero__copy,
  .hero--home .hero__content p{
    line-height:1.65 !important;
  }

  .hero--home .hero__visual{
    min-height:320px !important;
  }

  .hero--home .hero__printer{
    max-height:360px !important;
    transform:translateY(20px) scale(1) !important;
  }
}


/* =========================================================
   v20 - Paleta TECNIMAX con acento rojo + aire en cards hero
   Paleta:
   #173b6c / #2e86ff / #e63946 / #f4b400 / #e8edf3 / #2d3748
   ========================================================= */

:root{
  --blue-800:#173b6c;
  --blue-500:#2e86ff;
  --red:#e63946;
  --yellow:#f4b400;
  --bg:#e8edf3;
  --text:#2d3748;
}

/* Acentos rojos */
.eyebrow::before,
.eyebrow-light::before{
  background:var(--red) !important;
  box-shadow:0 0 0 4px rgba(230,57,70,.16) !important;
}

.feature-pill span,
.list-check li::before,
.light-list li::before,
.bullet-list--check div::before{
  background:rgba(230,57,70,.14) !important;
  color:var(--red) !important;
}

.number-tag,
.icon-tag{
  color:var(--red) !important;
  background:rgba(230,57,70,.10) !important;
}

.category-chip,
.tmx-product-card__cat,
.status-panel__label{
  color:var(--red) !important;
  background:rgba(230,57,70,.09) !important;
}

/* Botón principal: azul con detalle rojo sutil */
.btn-primary,
a.btn-primary,
button.btn-primary,
.header-cta.btn-primary,
.woocommerce .button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce a.button,
.woocommerce .checkout-button,
.woocommerce button[name="woocommerce_checkout_place_order"],
.woocommerce .single_add_to_cart_button{
  background:
    linear-gradient(135deg, #173b6c 0%, #2e86ff 72%, #e63946 145%) !important;
  color:#fff !important;
  box-shadow:0 14px 30px rgba(46,134,255,.20), 0 8px 18px rgba(230,57,70,.08) !important;
}

.btn-primary:hover,
a.btn-primary:hover,
button.btn-primary:hover,
.header-cta.btn-primary:hover{
  background:
    linear-gradient(135deg, #173b6c 0%, #2e86ff 58%, #e63946 130%) !important;
}

/* Subrayado / estado activo de navbar con rojo */
.nav a::after,
.nav a.is-active::after,
.nav a.tecnimax-nav__link.is-active::after{
  background:var(--red) !important;
}

.nav a.is-active,
.nav a.tecnimax-nav__link.is-active,
.nav-dropdown.is-active > .nav-dropdown__trigger,
.nav-dropdown__trigger.is-active{
  color:#173b6c !important;
}

/* Hero: cards inferiores con más aire, no pegadas al carrusel/borde */
.hero--home .feature-grid{
  margin-top:30px !important;
  margin-bottom:34px !important;
  max-width:680px !important;
}

.hero--home .feature-pill{
  padding:15px 18px !important;
  min-height:56px !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.09) !important;
  border-color:rgba(255,255,255,.14) !important;
}

/* Aumenta ligeramente la zona del contenido para que las cards respiren */
.hero--home .hero__content{
  padding-bottom:18px !important;
}

.hero--home .hero__inner--home{
  padding-bottom:178px !important;
}

/* Carrusel mantiene azul oscuro, pero con rojo muy sutil en profundidad */
.hero-marquee--logos{
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.06),
    0 -24px 70px rgba(46,134,255,.10),
    0 -12px 36px rgba(230,57,70,.07) !important;
}

.hero-marquee--logos .client-logo-item,
.section-clients .client-logo-item{
  border-color:rgba(255,255,255,.12) !important;
}

@media (max-width:1060px){
  .hero--home .feature-grid{
    margin-bottom:26px !important;
  }

  .hero--home .hero__inner--home{
    padding-bottom:158px !important;
  }
}

@media (max-width:820px){
  .hero--home .feature-grid{
    margin-bottom:22px !important;
  }

  .hero--home .hero__inner--home{
    padding-bottom:130px !important;
  }
}


/* =========================================================
   v21 - Métricas separadas, sin contenedor único
   ========================================================= */

.metric-cards{
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
  gap:20px !important;
}

.metric-card{
  background:#fff !important;
  border:1px solid var(--line) !important;
  border-radius:22px !important;
  box-shadow:0 14px 34px rgba(12,34,64,.08) !important;
  padding:22px 24px !important;
}

.pull-up-metrics .metric-card{
  min-height:110px;
  display:grid;
  align-content:center;
}

@media (max-width:820px){
  .metric-cards{
    gap:14px !important;
  }

  .metric-card{
    border-radius:18px !important;
    padding:18px !important;
  }
}


/* =========================================================
   v22 - Rojo SOLO en botones + heros con texto blanco
   ========================================================= */

/* Revertir acentos rojos que NO son botones */
.eyebrow::before,
.eyebrow-light::before{
  background:var(--yellow) !important;
  box-shadow:0 0 0 4px rgba(244,180,0,.14) !important;
}

.feature-pill span,
.list-check li::before,
.light-list li::before,
.bullet-list--check div::before{
  background:rgba(244,180,0,.18) !important;
  color:var(--yellow) !important;
}

.number-tag,
.icon-tag{
  color:var(--blue-800) !important;
  background:rgba(46,134,255,.10) !important;
}

.category-chip,
.tmx-product-card__cat,
.status-panel__label{
  color:var(--blue-800) !important;
  background:rgba(46,134,255,.10) !important;
}

.nav a::after,
.nav a.is-active::after,
.nav a.tecnimax-nav__link.is-active::after{
  background:var(--yellow) !important;
}

.nav a.is-active,
.nav a.tecnimax-nav__link.is-active,
.nav-dropdown.is-active > .nav-dropdown__trigger,
.nav-dropdown__trigger.is-active{
  color:var(--blue-800) !important;
}

/* Rojo SOLO en botones principales */
.btn-primary,
a.btn-primary,
button.btn-primary,
.header-cta.btn-primary,
.form-card .btn-primary,
.cta-banner .btn-primary,
.woocommerce .button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce a.button,
.woocommerce .checkout-button,
.woocommerce button[name="woocommerce_checkout_place_order"],
.woocommerce .single_add_to_cart_button,
.tmx-add-cart{
  background:#e63946 !important;
  color:#fff !important;
  border-color:#e63946 !important;
  box-shadow:0 14px 30px rgba(230,57,70,.22) !important;
}

.btn-primary:hover,
a.btn-primary:hover,
button.btn-primary:hover,
.header-cta.btn-primary:hover,
.form-card .btn-primary:hover,
.cta-banner .btn-primary:hover,
.woocommerce .button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce a.button:hover,
.woocommerce .checkout-button:hover,
.woocommerce button[name="woocommerce_checkout_place_order"]:hover,
.woocommerce .single_add_to_cart_button:hover,
.tmx-add-cart:hover{
  background:#d92f3b !important;
  border-color:#d92f3b !important;
  color:#fff !important;
}

/* Botones secundarios siguen claros / azules */
.btn-outline,
a.btn-outline,
.tmx-detail-btn{
  background:#fff !important;
  color:var(--blue-800) !important;
  border-color:rgba(23,59,108,.16) !important;
}

.hero .btn-outline--light,
.hero a.btn-outline--light{
  background:#fff !important;
  color:var(--blue-950) !important;
  border-color:rgba(255,255,255,.20) !important;
}

/* Heros: textos directos sobre fondo oscuro siempre blancos.
   No alteramos contenido dentro de cards blancas. */
.hero > .container .hero__content h1,
.hero > .container .hero__content h2,
.hero > .container .hero__content p,
.hero > .container .hero__content .copy-stack,
.hero > .container .hero__content .copy-stack p,
.hero > .container .hero__content .hero__copy{
  color:#fff !important;
}

.hero .hero__content .copy-stack p,
.hero .hero__content p{
  color:rgba(255,255,255,.86) !important;
}

/* Cards claras dentro o fuera del hero conservan texto oscuro */
.hero .info-card,
.hero .form-card--light,
.hero .service-card--light,
.hero .generic-card,
.hero .card{
  color:var(--text) !important;
}

.hero .info-card h3,
.hero .form-card--light h3,
.hero .service-card--light h3,
.hero .generic-card h3,
.hero .card h3{
  color:var(--blue-950) !important;
}

.hero .info-card p,
.hero .form-card--light p,
.hero .service-card--light p,
.hero .generic-card p,
.hero .card p{
  color:var(--muted) !important;
}

/* Cards oscuras/glass dentro del hero siguen con texto blanco */
.hero .glass-card,
.hero .glass-card h3,
.hero .glass-card p,
.hero .glass-card li,
.hero .glass-card span,
.hero .service-card,
.hero .service-card h3,
.hero .service-card p,
.hero .service-card li{
  color:rgba(255,255,255,.88) !important;
}

.hero .glass-card h3,
.hero .service-card h3{
  color:#fff !important;
}

/* Textos de listas/mini badges dentro de hero oscuro */
.hero .contact-badges span,
.hero .metric-inline span,
.hero .metric-inline strong{
  color:rgba(255,255,255,.86) !important;
}

.hero .metric-inline strong{
  color:#fff !important;
}


/* =========================================================
   v23 - Impresora del hero un poco más grande
   ========================================================= */

.hero--home .hero__printer{
  max-height:650px !important;
  transform:translateY(34px) scale(1.07) !important;
}

.hero--home .hero__visual{
  min-height:560px !important;
}

@media (max-width:1200px){
  .hero--home .hero__printer{
    max-height:575px !important;
    transform:translateY(28px) scale(1.05) !important;
  }

  .hero--home .hero__visual{
    min-height:500px !important;
  }
}

@media (max-width:1060px){
  .hero--home .hero__printer{
    max-height:500px !important;
    transform:translateY(24px) scale(1.03) !important;
  }

  .hero--home .hero__visual{
    min-height:430px !important;
  }
}

@media (max-width:820px){
  .hero--home .hero__printer{
    max-height:385px !important;
    transform:translateY(18px) scale(1.02) !important;
  }

  .hero--home .hero__visual{
    min-height:330px !important;
  }
}


/* =========================================================
   v24 - Carrusel del hero debajo de la impresora
   ========================================================= */

/* El hero ya no reserva espacio para un carrusel global inferior */
.hero--home .hero__inner--home{
  padding-bottom:72px !important;
  align-items:center !important;
}

/* El bloque visual ahora organiza impresora + carrusel debajo */
.hero--home .hero__visual{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:22px !important;
  min-height:620px !important;
  padding-top:12px;
  padding-bottom:0;
}

/* La impresora sube un poco y deja espacio natural al carrusel */
.hero--home .hero__printer{
  max-height:610px !important;
  transform:translateY(0) scale(1.05) !important;
  margin-bottom:0 !important;
}

/* Carrusel propio del bloque de impresora */
.hero-visual-marquee{
  position:relative !important;
  left:auto !important;
  right:auto !important;
  bottom:auto !important;
  z-index:5 !important;
  width:min(620px, 100%) !important;
  min-height:72px !important;
  overflow:hidden !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  margin-top:-4px !important;
}

/* Viewport sin container ni fondo */
.hero-visual-marquee .hero-marquee__viewport{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
}

/* Degradados laterales suaves, sin caja */
.hero-visual-marquee .hero-marquee__viewport::before,
.hero-visual-marquee .hero-marquee__viewport::after{
  width:74px !important;
}

.hero-visual-marquee .hero-marquee__viewport::before{
  background:linear-gradient(90deg, rgba(9,30,57,1), rgba(9,30,57,0)) !important;
}

.hero-visual-marquee .hero-marquee__viewport::after{
  background:linear-gradient(270deg, rgba(9,30,57,1), rgba(9,30,57,0)) !important;
}

/* Logos sin fondo, sin borde, sin tarjeta */
.hero-visual-marquee .client-logo-track{
  min-height:72px !important;
  gap:34px !important;
  padding-left:0 !important;
  animation-duration:34s !important;
}

.hero-visual-marquee .client-logo-item{
  width:150px !important;
  height:58px !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

.hero-visual-marquee .client-logo-item img{
  max-height:46px !important;
  max-width:148px !important;
  opacity:.98 !important;
  filter:drop-shadow(0 8px 16px rgba(0,0,0,.18)) !important;
}

/* Anula cualquier hero-marquee global dentro del home fuera del visual */
.hero--home > .hero-marquee{
  display:none !important;
}

/* Ajuste del glow para acompañar nueva posición */
.hero--home .hero__visual::before{
  bottom:72px !important;
}

.hero--home .hero__visual::after{
  bottom:76px !important;
}

/* Desktop medio */
@media (max-width:1200px){
  .hero--home .hero__inner--home{
    grid-template-columns:minmax(0,1fr) 540px !important;
  }

  .hero--home .hero__visual{
    min-height:560px !important;
  }

  .hero--home .hero__printer{
    max-height:540px !important;
    transform:translateY(0) scale(1.03) !important;
  }

  .hero-visual-marquee{
    width:min(540px,100%) !important;
  }
}

/* Tablet: carrusel también queda debajo de la impresora */
@media (max-width:1060px){
  .hero--home .hero__inner--home{
    grid-template-columns:1fr !important;
    padding-bottom:64px !important;
  }

  .hero--home .hero__visual{
    min-height:auto !important;
    margin-top:16px;
  }

  .hero--home .hero__printer{
    max-height:460px !important;
  }

  .hero-visual-marquee{
    width:min(620px,100%) !important;
  }
}

/* Móvil */
@media (max-width:820px){
  .hero--home .hero__inner--home{
    padding-bottom:52px !important;
  }

  .hero--home .hero__printer{
    max-height:340px !important;
    transform:translateY(0) scale(1) !important;
  }

  .hero-visual-marquee{
    width:100% !important;
    min-height:60px !important;
  }

  .hero-visual-marquee .client-logo-track{
    min-height:60px !important;
    gap:24px !important;
  }

  .hero-visual-marquee .client-logo-item{
    width:124px !important;
    height:48px !important;
  }

  .hero-visual-marquee .client-logo-item img{
    max-height:36px !important;
    max-width:122px !important;
  }
}


/* =========================================================
   v25 - Hero Home más ancho + carrusel sin franja distinta
   ========================================================= */

/* Aprovechar mejor el ancho real del hero */
.hero--home .hero__inner--home{
  width:min(1320px, calc(100% - 64px)) !important;
  max-width:none !important;
  grid-template-columns:minmax(520px, 0.92fr) minmax(620px, 1.08fr) !important;
  gap:44px !important;
  padding-top:42px !important;
  padding-bottom:62px !important;
  align-items:center !important;
}

/* El texto ocupa más ancho para evitar una columna tan angosta */
.hero--home .hero__content{
  max-width:760px !important;
  padding-bottom:0 !important;
}

.hero--home h1,
.hero--home .hero__content h1{
  max-width:760px !important;
  font-size:clamp(38px, 4vw, 56px) !important;
  line-height:1.05 !important;
}

/* Párrafo más elegante y ancho */
.hero--home .hero__copy,
.hero--home .hero__content p{
  max-width:720px !important;
  line-height:1.68 !important;
}

/* Cards inferiores con más ancho útil */
.hero--home .feature-grid{
  max-width:760px !important;
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  gap:14px !important;
  margin-top:28px !important;
  margin-bottom:0 !important;
}

.hero--home .feature-pill{
  min-height:58px !important;
  padding:14px 18px !important;
}

/* Visual más amplio */
.hero--home .hero__visual{
  width:100% !important;
  min-height:610px !important;
  gap:14px !important;
  justify-content:center !important;
  align-items:center !important;
}

/* Impresora más centrada en el bloque derecho */
.hero--home .hero__printer{
  max-height:620px !important;
  transform:translateY(0) scale(1.02) !important;
}

/* Carrusel debajo de la impresora, pero sin caja ni color distinto */
.hero-visual-marquee{
  width:min(760px, 100%) !important;
  min-height:64px !important;
  margin-top:-2px !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  isolation:isolate;
}

/* Quitar cualquier fondo accidental del viewport */
.hero-visual-marquee .hero-marquee__viewport{
  background:transparent !important;
  box-shadow:none !important;
  border:0 !important;
}

/* Degradados laterales usando el mismo fondo del hero, no una mancha rectangular */
.hero-visual-marquee .hero-marquee__viewport::before,
.hero-visual-marquee .hero-marquee__viewport::after{
  width:86px !important;
  background:none !important;
  backdrop-filter:none !important;
}

.hero-visual-marquee .hero-marquee__viewport::before{
  background:linear-gradient(90deg, rgba(19,58,105,.98), rgba(19,58,105,0)) !important;
}

.hero-visual-marquee .hero-marquee__viewport::after{
  background:linear-gradient(270deg, rgba(19,58,105,.98), rgba(19,58,105,0)) !important;
}

/* Track sin fondo visible */
.hero-visual-marquee .client-logo-track{
  min-height:64px !important;
  gap:42px !important;
  padding-left:0 !important;
  background:transparent !important;
}

/* Logos limpios, sin tarjetas */
.hero-visual-marquee .client-logo-item{
  width:168px !important;
  height:54px !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
}

.hero-visual-marquee .client-logo-item img{
  max-height:44px !important;
  max-width:168px !important;
  opacity:.95 !important;
  filter:drop-shadow(0 8px 16px rgba(0,0,0,.18)) !important;
}

/* Glow acompaña al visual completo */
.hero--home .hero__visual::before{
  width:820px !important;
  height:470px !important;
  right:-120px !important;
  bottom:78px !important;
}

.hero--home .hero__visual::after{
  width:900px !important;
  right:-170px !important;
  bottom:82px !important;
}

/* Pantallas medianas */
@media (max-width:1280px){
  .hero--home .hero__inner--home{
    width:min(1180px, calc(100% - 48px)) !important;
    grid-template-columns:minmax(460px, .95fr) minmax(520px, 1.05fr) !important;
    gap:36px !important;
  }

  .hero--home h1,
  .hero--home .hero__content h1{
    font-size:clamp(36px,4vw,52px) !important;
  }

  .hero--home .hero__printer{
    max-height:570px !important;
  }

  .hero-visual-marquee{
    width:min(650px, 100%) !important;
  }
}

@media (max-width:1060px){
  .hero--home .hero__inner--home{
    width:min(var(--max), calc(100% - 40px)) !important;
    grid-template-columns:1fr !important;
    gap:26px !important;
    padding-bottom:56px !important;
  }

  .hero--home .hero__content{
    max-width:820px !important;
  }

  .hero--home .hero__visual{
    min-height:auto !important;
  }

  .hero--home .hero__printer{
    max-height:440px !important;
  }

  .hero-visual-marquee{
    width:min(720px, 100%) !important;
  }

  .hero-visual-marquee .hero-marquee__viewport::before{
    background:linear-gradient(90deg, rgba(13,44,82,.98), rgba(13,44,82,0)) !important;
  }

  .hero-visual-marquee .hero-marquee__viewport::after{
    background:linear-gradient(270deg, rgba(13,44,82,.98), rgba(13,44,82,0)) !important;
  }
}

@media (max-width:820px){
  .hero--home .hero__inner--home{
    width:min(var(--max), calc(100% - 28px)) !important;
    padding-top:40px !important;
    padding-bottom:44px !important;
  }

  .hero--home h1,
  .hero--home .hero__content h1{
    font-size:clamp(32px,9vw,40px) !important;
  }

  .hero--home .feature-grid{
    grid-template-columns:1fr !important;
  }

  .hero--home .hero__printer{
    max-height:330px !important;
  }

  .hero-visual-marquee{
    width:100% !important;
    min-height:54px !important;
  }

  .hero-visual-marquee .client-logo-track{
    min-height:54px !important;
    gap:28px !important;
  }

  .hero-visual-marquee .client-logo-item{
    width:132px !important;
    height:46px !important;
  }

  .hero-visual-marquee .client-logo-item img{
    max-height:34px !important;
    max-width:132px !important;
  }
}


/* =========================================================
   v26 - Carrusel hero sin franja + logos más grandes
   ========================================================= */

/* Quitar totalmente la franja/degradado que se veía diferente al fondo */
.hero-visual-marquee,
.hero-visual-marquee *,
.hero-visual-marquee .hero-marquee__viewport,
.hero-visual-marquee .client-logo-track{
  background:transparent !important;
  box-shadow:none !important;
  border:0 !important;
  backdrop-filter:none !important;
}

.hero-visual-marquee .hero-marquee__viewport::before,
.hero-visual-marquee .hero-marquee__viewport::after{
  display:none !important;
  content:none !important;
  background:transparent !important;
}

/* Ampliar carrusel para aprovechar más espacio lateral */
.hero-visual-marquee{
  width:min(980px, 118%) !important;
  max-width:none !important;
  min-height:88px !important;
  margin-top:2px !important;
  overflow:hidden !important;
  transform:translateX(-1%) !important;
}

/* Track más abierto */
.hero-visual-marquee .client-logo-track{
  min-height:88px !important;
  gap:58px !important;
  padding-left:0 !important;
  animation-duration:38s !important;
}

/* Logos sin tarjeta, pero más grandes */
.hero-visual-marquee .client-logo-item{
  width:230px !important;
  height:78px !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}

.hero-visual-marquee .client-logo-item img{
  max-width:230px !important;
  max-height:68px !important;
  width:auto !important;
  height:auto !important;
  opacity:1 !important;
  image-rendering:auto !important;
  filter:drop-shadow(0 8px 18px rgba(0,0,0,.16)) !important;
}

/* Mejor balance con impresora + carrusel */
.hero--home .hero__visual{
  min-height:630px !important;
  gap:10px !important;
}

.hero--home .hero__printer{
  max-height:625px !important;
  transform:translateY(0) scale(1.03) !important;
}

/* En desktop ancho, permitir que el bloque derecho respire más */
@media (min-width:1281px){
  .hero--home .hero__inner--home{
    width:min(1400px, calc(100% - 64px)) !important;
    grid-template-columns:minmax(540px, .9fr) minmax(700px, 1.1fr) !important;
    gap:48px !important;
  }

  .hero-visual-marquee{
    width:min(1060px, 122%) !important;
  }
}

@media (max-width:1280px){
  .hero-visual-marquee{
    width:min(860px, 116%) !important;
  }

  .hero-visual-marquee .client-logo-track{
    gap:48px !important;
  }

  .hero-visual-marquee .client-logo-item{
    width:205px !important;
    height:72px !important;
  }

  .hero-visual-marquee .client-logo-item img{
    max-width:205px !important;
    max-height:60px !important;
  }
}

@media (max-width:1060px){
  .hero-visual-marquee{
    width:min(760px,100%) !important;
    transform:none !important;
  }

  .hero-visual-marquee .client-logo-track{
    gap:38px !important;
  }

  .hero-visual-marquee .client-logo-item{
    width:180px !important;
    height:62px !important;
  }

  .hero-visual-marquee .client-logo-item img{
    max-width:180px !important;
    max-height:52px !important;
  }
}

@media (max-width:820px){
  .hero--home .hero__visual{
    min-height:auto !important;
  }

  .hero-visual-marquee{
    width:100% !important;
    min-height:58px !important;
  }

  .hero-visual-marquee .client-logo-track{
    min-height:58px !important;
    gap:28px !important;
  }

  .hero-visual-marquee .client-logo-item{
    width:138px !important;
    height:48px !important;
  }

  .hero-visual-marquee .client-logo-item img{
    max-width:138px !important;
    max-height:38px !important;
  }
}


/* =========================================================
   v27 - Carrusel limitado al bloque derecho + radius 5px global
   ========================================================= */

/* Carrusel del hero: no debe invadir la mitad izquierda */
.hero-visual-marquee{
  width:100% !important;
  max-width:620px !important;
  transform:none !important;
  margin-left:auto !important;
  margin-right:auto !important;
  overflow:hidden !important;
}

.hero-visual-marquee .client-logo-track{
  gap:42px !important;
}

.hero-visual-marquee .client-logo-item{
  width:190px !important;
  height:68px !important;
}

.hero-visual-marquee .client-logo-item img{
  max-width:190px !important;
  max-height:58px !important;
}

/* En pantallas grandes, mantenerlo dentro del lado de la impresora */
@media (min-width:1281px){
  .hero-visual-marquee{
    max-width:650px !important;
  }
}

@media (max-width:1280px){
  .hero-visual-marquee{
    max-width:560px !important;
  }
}

@media (max-width:1060px){
  .hero-visual-marquee{
    max-width:680px !important;
  }
}

@media (max-width:820px){
  .hero-visual-marquee{
    max-width:100% !important;
  }

  .hero-visual-marquee .client-logo-item{
    width:138px !important;
    height:48px !important;
  }

  .hero-visual-marquee .client-logo-item img{
    max-width:138px !important;
    max-height:38px !important;
  }
}

/* Border radius global: 5px en botones, cards, inputs, logos, productos y bloques */
.btn,
button,
input,
textarea,
select,
.field,
.header-cta,
.brand-mark,
.eyebrow,
.eyebrow-light,
.feature-pill,
.metric-card,
.card,
.generic-card,
.info-card,
.glass-card,
.service-card,
.service-card--light,
.form-card,
.form-banner,
.cta-banner,
.status-panel,
.history-highlight,
.icon-tag,
.number-tag,
.category-chip,
.tmx-product-card,
.tmx-product-card__image,
.tmx-product-card__cat,
.tmx-product-card__meta span,
.tmx-product-card__actions a,
.tmx-add-cart,
.tmx-detail-btn,
.shop-filter-card,
.shop-result-note,
.empty-state,
.empty-state__icon,
.tmx-category-pill,
.tmx-blog-card,
.tmx-blog-card__image,
.contact-info-card,
.contact-map-card,
.contact-map-card iframe,
.client-logo-item,
.client-name-track span,
.nav-dropdown__menu,
.nav-dropdown__menu a,
.woocommerce .button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce a.button,
.woocommerce table.shop_table,
.woocommerce table.shop_table img,
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-error,
.woocommerce .quantity .qty,
.woocommerce input.input-text,
.woocommerce textarea,
.woocommerce select,
.woocommerce .select2-container .select2-selection--single,
.cart_totals,
.tmx-single-product__gallery,
.tmx-single-product__summary,
.tmx-product-support,
.tmx-woo-shortcode-card{
  border-radius:5px !important;
}

/* Elementos circulares pequeños se mantienen redondos porque funcionan como indicadores */
.eyebrow::before,
.eyebrow-light::before,
.feature-pill span,
.list-check li::before,
.light-list li::before,
.bullet-list--check div::before,
.woocommerce a.remove{
  border-radius:999px !important;
}

/* Asegura que los botones no queden en pill */
.btn,
button.btn,
.btn-primary,
.btn-outline,
.header-cta,
.woocommerce .button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce a.button,
.tmx-add-cart,
.tmx-detail-btn{
  border-radius:5px !important;
}


/* =========================================================
   v28 - Botón cotizar navbar azul, ancho y thin uppercase
   ========================================================= */

.site-header .header-cta,
.site-header .header-cta.btn-primary,
.header-cta.btn-primary{
  min-width:210px !important;
  min-height:48px !important;
  padding:13px 34px !important;
  background:#2e86ff !important;
  border-color:#2e86ff !important;
  color:#fff !important;
  border-radius:5px !important;
  text-transform:uppercase !important;
  letter-spacing:.075em !important;
  font-weight:500 !important;
  font-size:12px !important;
  box-shadow:0 14px 32px rgba(46,134,255,.22) !important;
}

.site-header .header-cta:hover,
.site-header .header-cta.btn-primary:hover,
.header-cta.btn-primary:hover{
  background:#173b6c !important;
  border-color:#173b6c !important;
  color:#fff !important;
}

@media (max-width:820px){
  .site-header .header-cta,
  .site-header .header-cta.btn-primary,
  .header-cta.btn-primary{
    min-width:100% !important;
    width:100% !important;
  }
}


/* =========================================================
   v29 - Radius 5px específico para cards del hero
   ========================================================= */

.hero--home .feature-grid .feature-pill,
.hero .feature-grid .feature-pill,
.feature-grid .feature-pill{
  border-radius:5px !important;
}

.hero--home .feature-grid .feature-pill span,
.hero .feature-grid .feature-pill span,
.feature-grid .feature-pill span{
  border-radius:5px !important;
}

/* Refuerzo para cualquier card tipo pill que haya heredado radius grande */
.hero [class*="pill"],
.hero [class*="card"],
.hero [class*="tag"]{
  border-radius:5px !important;
}

/* Mantener solo puntos decorativos redondos */
.hero .eyebrow::before,
.hero .eyebrow-light::before{
  border-radius:999px !important;
}


/* =========================================================
   v30 - Foto oficial Nosotros
   ========================================================= */

.about-photo-card{
  align-self:center;
  overflow:hidden;
  border-radius:5px !important;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.06);
  box-shadow:0 28px 70px rgba(0,0,0,.20);
}

.about-photo-card img{
  width:100%;
  min-height:420px;
  height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
  border-radius:5px !important;
}

@media (max-width:1060px){
  .about-photo-card img{
    min-height:360px;
  }
}

@media (max-width:820px){
  .about-photo-card img{
    min-height:260px;
  }
}


/* =========================================================
   v31 - Alquiler impresoras/laptops: visual limpio + métricas visibles
   ========================================================= */

/* Evitar que el hero tape las 3 cards de métricas */
.page-template-page-alquiler-de-impresoras .hero,
.page-template-page-alquiler-de-laptops .hero,
body[class*="alquiler-impresoras"] .hero,
body[class*="alquiler-laptops"] .hero{
  overflow:visible !important;
}

.page-template-page-alquiler-de-impresoras .hero__inner,
.page-template-page-alquiler-de-laptops .hero__inner,
body[class*="alquiler-impresoras"] .hero__inner,
body[class*="alquiler-laptops"] .hero__inner{
  min-height:620px !important;
  padding-bottom:110px !important;
}

.page-template-page-alquiler-de-impresoras .pull-up-metrics,
.page-template-page-alquiler-de-laptops .pull-up-metrics,
body[class*="alquiler-impresoras"] .pull-up-metrics,
body[class*="alquiler-laptops"] .pull-up-metrics{
  margin-top:0 !important;
  padding-top:48px !important;
  position:relative !important;
  z-index:5 !important;
}

/* Visual derecho: solo imagen grande, sin card, borde, fondo ni título */
.hero-product-visual{
  align-self:center;
  justify-self:center;
  width:100%;
  min-height:480px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  padding:0 !important;
  border-radius:0 !important;
}

.hero-product-visual img{
  width:auto;
  max-width:100%;
  max-height:560px;
  object-fit:contain;
  filter:drop-shadow(0 34px 58px rgba(0,0,0,.26));
  border:0 !important;
  background:transparent !important;
  border-radius:0 !important;
}

.hero-product-visual--printer img{
  max-height:585px;
  transform:translateY(24px) scale(1.05);
}

/* Laptop visual limpio, sin card */
.laptop-visual-only{
  width:min(520px, 100%);
  aspect-ratio:1.45/1;
  position:relative;
  filter:drop-shadow(0 34px 58px rgba(0,0,0,.26));
}

.laptop-visual-only::before{
  content:"";
  position:absolute;
  left:8%;
  right:8%;
  top:5%;
  height:68%;
  border-radius:5px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.16), rgba(255,255,255,.05)),
    linear-gradient(135deg, #1b2536, #0d1524);
  border:1px solid rgba(255,255,255,.20);
}

.laptop-visual-only::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:13%;
  height:13%;
  border-radius:5px;
  background:linear-gradient(180deg, #dbe3ec, #aeb9c7);
  transform:perspective(500px) rotateX(18deg);
}

@media (max-width:1060px){
  .page-template-page-alquiler-de-impresoras .hero__inner,
  .page-template-page-alquiler-de-laptops .hero__inner,
  body[class*="alquiler-impresoras"] .hero__inner,
  body[class*="alquiler-laptops"] .hero__inner{
    min-height:auto !important;
    padding-bottom:72px !important;
  }

  .hero-product-visual{
    min-height:360px;
  }

  .hero-product-visual--printer img{
    max-height:430px;
    transform:translateY(0) scale(1);
  }

  .laptop-visual-only{
    width:min(430px,100%);
  }
}

@media (max-width:820px){
  .page-template-page-alquiler-de-impresoras .hero__inner,
  .page-template-page-alquiler-de-laptops .hero__inner,
  body[class*="alquiler-impresoras"] .hero__inner,
  body[class*="alquiler-laptops"] .hero__inner{
    padding-bottom:54px !important;
  }

  .page-template-page-alquiler-de-impresoras .pull-up-metrics,
  .page-template-page-alquiler-de-laptops .pull-up-metrics,
  body[class*="alquiler-impresoras"] .pull-up-metrics,
  body[class*="alquiler-laptops"] .pull-up-metrics{
    padding-top:34px !important;
  }

  .hero-product-visual{
    min-height:280px;
  }

  .hero-product-visual--printer img{
    max-height:320px;
  }
}


/* =========================================================
   v32 - Botones de producto con mismo alto
   ========================================================= */

.tmx-product-card__actions{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  align-items:stretch !important;
  gap:8px !important;
}

.tmx-product-card__actions .button,
.tmx-product-card__actions .tmx-add-cart,
.tmx-product-card__actions .tmx-detail-btn,
.tmx-product-card__actions a{
  width:100% !important;
  min-height:44px !important;
  height:44px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 12px !important;
  line-height:1.1 !important;
  box-sizing:border-box !important;
  white-space:nowrap !important;
  font-size:13px !important;
}

@media (max-width:420px){
  .tmx-product-card__actions{
    grid-template-columns:1fr !important;
  }

  .tmx-product-card__actions .button,
  .tmx-product-card__actions .tmx-add-cart,
  .tmx-product-card__actions .tmx-detail-btn,
  .tmx-product-card__actions a{
    height:44px !important;
  }
}


/* =========================================================
   v35 - Producto individual más claro y ordenado
   ========================================================= */

.tmx-product-page .product-detail{
  background:linear-gradient(180deg,#fff 0%,#f5f8fc 100%);
}

.tmx-single-product--refined{
  grid-template-columns:minmax(420px,.95fr) minmax(420px,.78fr);
  gap:34px;
  align-items:start;
}

.tmx-single-product--refined .tmx-single-product__gallery,
.tmx-single-product--refined .tmx-single-product__summary{
  border-radius:5px !important;
}

.tmx-single-product--refined .tmx-single-product__gallery{
  padding:28px;
  background:#fff;
}

.tmx-single-product--refined .tmx-single-product__gallery img{
  width:100%;
  max-height:620px;
  object-fit:contain;
  background:#f5f5f7;
  border-radius:5px !important;
}

.tmx-single-product--refined .tmx-single-product__summary{
  padding:30px;
}

.tmx-single-product--refined .tmx-single-product__summary h1{
  margin:18px 0 18px;
  color:var(--blue-950);
  font-size:clamp(30px,3vw,42px);
  line-height:1.08;
  letter-spacing:-.035em;
  font-weight:650;
}

.tmx-product-info-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin:0 0 20px;
}

.tmx-info-mini{
  padding:12px;
  border:1px solid var(--line);
  background:#f7f9fc;
  border-radius:5px;
}

.tmx-info-mini span,
.tmx-detail-label{
  display:block;
  margin-bottom:6px;
  color:var(--muted);
  font-size:11px;
  font-weight:650;
  line-height:1;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.tmx-info-mini strong{
  display:block;
  color:var(--blue-950);
  font-size:13px;
  font-weight:600;
  line-height:1.35;
}

.tmx-info-mini a{
  color:var(--blue-800);
}

.tmx-detail-section{
  padding:17px 0;
  border-top:1px solid rgba(23,59,108,.10);
}

.tmx-detail-section:first-of-type{
  border-top:0;
  padding-top:0;
}

.tmx-single-product--refined .tmx-single-price{
  margin:0;
  color:var(--blue-800);
  font-size:26px;
  line-height:1.1;
  font-weight:650;
}

.tmx-single-product--refined .tmx-single-excerpt{
  margin:0;
  color:var(--text);
  font-size:15px;
  line-height:1.65;
  font-weight:400;
}

.tmx-single-product--refined .tmx-single-excerpt p{
  margin:0;
}

.tmx-single-product--refined .tmx-single-cart{
  margin:0;
}

.tmx-single-product--refined .tmx-single-cart form.cart{
  display:grid !important;
  grid-template-columns:140px minmax(180px,1fr);
  gap:10px !important;
  align-items:stretch;
  margin:0 !important;
}

.tmx-single-product--refined .quantity{
  margin:0 !important;
}

.tmx-single-product--refined .quantity input{
  width:100% !important;
  height:48px !important;
  min-height:48px !important;
  border-radius:5px !important;
  text-align:left;
  font-weight:600;
}

.tmx-single-product--refined .single_add_to_cart_button{
  width:100% !important;
  height:48px !important;
  min-height:48px !important;
  border-radius:5px !important;
  font-weight:650 !important;
}

.tmx-single-actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-top:4px;
}

.tmx-single-actions .btn{
  width:100%;
  height:46px;
  min-height:46px;
  border-radius:5px !important;
  font-weight:650;
}

.tmx-product-support{
  margin-top:18px;
  padding:18px;
  border-radius:5px !important;
  background:#f3f6fa;
  border:1px solid rgba(23,59,108,.10);
}

.tmx-product-support h3{
  margin:0 0 8px;
  color:var(--blue-950);
  font-size:18px;
  font-weight:650;
}

.tmx-product-support p{
  margin:0 0 12px;
  color:var(--muted);
  font-size:14px;
  line-height:1.55;
}

.tmx-support-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

.tmx-support-actions a{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:8px 10px;
  border-radius:5px;
  background:#fff;
  border:1px solid var(--line);
  color:var(--blue-800);
  font-size:13px;
  font-weight:650;
}

@media (max-width:1060px){
  .tmx-single-product--refined{
    grid-template-columns:1fr;
  }

  .tmx-single-product--refined .tmx-single-product__gallery img{
    max-height:520px;
  }
}

@media (max-width:620px){
  .tmx-product-info-grid,
  .tmx-single-actions,
  .tmx-single-product--refined .tmx-single-cart form.cart{
    grid-template-columns:1fr;
  }

  .tmx-single-product--refined .tmx-single-product__summary{
    padding:20px;
  }

  .tmx-single-product--refined .tmx-single-product__gallery{
    padding:16px;
  }
}


/* =========================================================
   v38 - Fix vistas alquiler y navbar
   ========================================================= */

.hero-product-visual--laptop img{
  width:auto;
  max-width:100%;
  max-height:540px;
  object-fit:contain;
  filter:drop-shadow(0 30px 52px rgba(0,0,0,.24));
}

@media (max-width:820px){
  /* El menú móvil se muestra/oculta con opacity + visibility en el bloque
     consolidado del final del archivo. No usar display:none aquí porque
     rompía la apertura del menú responsive. */
  .hero-product-visual--laptop img{
    max-height:340px;
  }
}


/* =========================================================
   v39 - Producto individual balanceado
   ========================================================= */

.product-detail--balanced{
  background:linear-gradient(180deg,#fff 0%,#f5f8fc 100%) !important;
  padding-top:78px !important;
}

.tmx-single-product--balanced{
  display:grid !important;
  grid-template-columns:minmax(520px, 1fr) minmax(460px, .84fr) !important;
  gap:32px !important;
  align-items:stretch !important;
}

.tmx-single-product--balanced .tmx-single-product__gallery,
.tmx-single-product--balanced .tmx-single-product__summary{
  min-height:640px !important;
  height:100% !important;
  border-radius:5px !important;
  background:#fff !important;
  border:1px solid var(--line) !important;
  box-shadow:0 24px 60px rgba(12,34,64,.08) !important;
}

.tmx-single-product--balanced .tmx-single-product__gallery{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:28px !important;
}

.tmx-single-product--balanced .tmx-single-product__gallery img{
  width:100% !important;
  height:100% !important;
  max-height:584px !important;
  object-fit:contain !important;
  background:#f5f5f7 !important;
  border-radius:5px !important;
}

.tmx-single-product--balanced .tmx-single-product__summary{
  display:flex !important;
  flex-direction:column !important;
  padding:32px !important;
  overflow:visible !important;
}

.tmx-single-product--balanced .tmx-single-product__summary h1{
  margin:18px 0 16px !important;
  color:var(--blue-950) !important;
  font-size:clamp(28px, 2.35vw, 40px) !important;
  line-height:1.08 !important;
  letter-spacing:-.035em !important;
  font-weight:650 !important;
}

.tmx-single-product--balanced .tmx-detail-section{
  padding:15px 0 !important;
  border-top:1px solid rgba(23,59,108,.10) !important;
}

.tmx-single-product--balanced .tmx-price-block{
  border-top:0 !important;
  padding-top:0 !important;
}

.tmx-single-product--balanced .tmx-detail-label,
.tmx-single-product--balanced .tmx-info-mini span{
  display:block !important;
  margin-bottom:7px !important;
  color:var(--muted) !important;
  font-size:11px !important;
  font-weight:650 !important;
  letter-spacing:.06em !important;
  text-transform:uppercase !important;
}

.tmx-single-product--balanced .tmx-single-price{
  color:var(--blue-800) !important;
  font-size:25px !important;
  line-height:1.1 !important;
  font-weight:650 !important;
}

.tmx-single-product--balanced .tmx-product-info-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:10px !important;
  margin:0 0 4px !important;
}

.tmx-single-product--balanced .tmx-info-mini{
  padding:12px !important;
  border:1px solid var(--line) !important;
  background:#f7f9fc !important;
  border-radius:5px !important;
}

.tmx-single-product--balanced .tmx-info-mini strong{
  display:block !important;
  color:var(--blue-950) !important;
  font-size:13px !important;
  line-height:1.35 !important;
  font-weight:600 !important;
}

.tmx-single-product--balanced .tmx-single-excerpt,
.tmx-single-product--balanced .tmx-single-excerpt p{
  color:var(--text) !important;
  font-size:14.5px !important;
  line-height:1.62 !important;
  font-weight:400 !important;
  margin:0 !important;
}

.tmx-single-product--balanced .tmx-cart-section{
  margin-top:auto !important;
}

.tmx-single-product--balanced .tmx-single-cart form.cart{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:10px !important;
  align-items:stretch !important;
  margin:0 !important;
}

.tmx-single-product--balanced .quantity{
  margin:0 !important;
  width:100% !important;
}

.tmx-single-product--balanced .quantity input,
.tmx-single-product--balanced .single_add_to_cart_button{
  width:100% !important;
  min-width:0 !important;
  height:48px !important;
  min-height:48px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:5px !important;
  box-sizing:border-box !important;
}

.tmx-single-product--balanced .quantity input{
  text-align:left !important;
  padding:0 14px !important;
  font-weight:600 !important;
}

.tmx-single-product--balanced .single_add_to_cart_button{
  padding:0 16px !important;
  font-size:13px !important;
  font-weight:650 !important;
  white-space:nowrap !important;
}

.tmx-single-product--balanced .tmx-single-actions{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:10px !important;
  margin-top:12px !important;
}

.tmx-single-product--balanced .tmx-single-actions .btn{
  width:100% !important;
  height:46px !important;
  min-height:46px !important;
  border-radius:5px !important;
  font-size:13px !important;
  font-weight:650 !important;
}

.tmx-product-lower{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:24px !important;
  margin-top:24px !important;
}

.tmx-product-lower .tmx-product-support,
.tmx-product-extra{
  padding:22px !important;
  border-radius:5px !important;
  background:#fff !important;
  border:1px solid var(--line) !important;
  box-shadow:0 18px 44px rgba(12,34,64,.06) !important;
}

.tmx-product-lower h3{
  margin:0 0 8px !important;
  color:var(--blue-950) !important;
  font-size:18px !important;
  font-weight:650 !important;
}

.tmx-product-lower p{
  margin:0 0 14px !important;
  color:var(--muted) !important;
  font-size:14px !important;
  line-height:1.58 !important;
}

.tmx-support-actions{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
}

.tmx-support-actions a{
  display:inline-flex !important;
  align-items:center !important;
  min-height:36px !important;
  padding:8px 10px !important;
  border-radius:5px !important;
  background:#f7f9fc !important;
  border:1px solid var(--line) !important;
  color:var(--blue-800) !important;
  font-size:13px !important;
  font-weight:650 !important;
}

/* reCAPTCHA: ese ícono normalmente lo inyecta Google reCAPTCHA desde un plugin/formulario */
.grecaptcha-badge{
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}

@media (max-width:1180px){
  .tmx-single-product--balanced{
    grid-template-columns:1fr !important;
  }

  .tmx-single-product--balanced .tmx-single-product__gallery,
  .tmx-single-product--balanced .tmx-single-product__summary{
    min-height:auto !important;
  }

  .tmx-single-product--balanced .tmx-single-product__gallery img{
    max-height:520px !important;
  }
}

@media (max-width:720px){
  .product-detail--balanced{
    padding-top:48px !important;
  }

  .tmx-single-product--balanced{
    gap:18px !important;
  }

  .tmx-single-product--balanced .tmx-single-product__gallery,
  .tmx-single-product--balanced .tmx-single-product__summary{
    padding:18px !important;
  }

  .tmx-single-product--balanced .tmx-product-info-grid,
  .tmx-single-product--balanced .tmx-single-cart form.cart,
  .tmx-single-product--balanced .tmx-single-actions,
  .tmx-product-lower{
    grid-template-columns:1fr !important;
  }
}

/* =========================================================
   v39.1 - Ajustes producto: separadores, cards y alerta
   ========================================================= */

.tmx-single-product--balanced .tmx-detail-section{
  border-top:0 !important;
}

.tmx-single-product--balanced .tmx-detail-section:not(.tmx-price-block){
  padding-top:13px !important;
  padding-bottom:13px !important;
}

.tmx-product-lower{
  align-items:stretch !important;
}

.tmx-product-lower .tmx-product-support,
.tmx-product-lower .tmx-product-extra{
  display:flex !important;
  flex-direction:column !important;
  height:100% !important;
  min-height:160px !important;
  margin-top:0 !important;
}

.tmx-product-lower .tmx-support-actions{
  margin-top:auto !important;
}

.tmx-woo-notices{
  position:relative;
  z-index:4;
}

.tmx-cart-toast{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:99999;
  max-width:min(360px, calc(100vw - 32px));
  padding:14px 18px;
  border-radius:5px;
  background:#0b2a4d;
  color:#fff;
  box-shadow:0 18px 44px rgba(12,34,64,.22);
  font-size:14px;
  font-weight:650;
  line-height:1.35;
  opacity:0;
  transform:translateY(14px);
  pointer-events:none;
  transition:opacity .22s ease, transform .22s ease;
}

.tmx-cart-toast.is-visible{
  opacity:1;
  transform:translateY(0);
}

@media (max-width:720px){
  .tmx-product-lower .tmx-product-support,
  .tmx-product-lower .tmx-product-extra{
    min-height:auto !important;
  }

  .tmx-cart-toast{
    right:16px;
    bottom:16px;
    left:16px;
    max-width:none;
  }
}

/* =========================================================
   v39.2 - Badge de cantidad en carrito
   ========================================================= */

.tmx-cart-link{
  position:relative !important;
  overflow:visible !important;
}

.tmx-cart-badge{
  position:absolute;
  top:-9px;
  right:-9px;
  min-width:22px;
  height:22px;
  padding:0 6px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:#e63946;
  color:#fff;
  border:2px solid #fff;
  box-shadow:0 8px 18px rgba(230,57,70,.30);
  font-size:11px;
  font-weight:800;
  line-height:1;
}

.header-cta .tmx-cart-badge{
  top:-8px;
  right:-8px;
}

@media (max-width:720px){
  .tmx-cart-badge{
    top:-8px;
    right:-8px;
  }
}

/* =========================================================
   v39.3 - Home feedback: dropdown, hero tag, botones y minicards
   ========================================================= */

/* Flecha navbar: un poco más ancha y hacia arriba en hover */
.nav-dropdown__trigger{
  gap:8px !important;
}

.nav-dropdown__chevron{
  width:10px !important;
  height:10px !important;
  display:inline-block !important;
  flex:0 0 10px !important;
  font-size:0 !important;
  line-height:0 !important;
  border-right:2px solid currentColor !important;
  border-bottom:2px solid currentColor !important;
  transform:rotate(45deg) translateY(-2px) !important;
  opacity:.82 !important;
  transition:transform .18s ease, opacity .18s ease !important;
}

.nav-dropdown:hover .nav-dropdown__chevron,
.nav-dropdown:focus-within .nav-dropdown__chevron{
  transform:rotate(-135deg) translateY(-1px) !important;
  opacity:1 !important;
}

/* Mini etiqueta del hero: texto thin y punto al inicio/final */
.hero--home .eyebrow{
  position:relative !important;
  gap:9px !important;
  font-weight:300 !important;
  letter-spacing:.07em !important;
}

.hero--home .eyebrow::before,
.hero--home .eyebrow::after{
  content:"" !important;
  width:8px !important;
  height:8px !important;
  display:inline-block !important;
  flex:0 0 8px !important;
  border-radius:999px !important;
  background:var(--yellow) !important;
  box-shadow:0 0 0 4px rgba(244,180,0,.14) !important;
}

/* Botones del hero del mismo ancho */
.hero--home .hero__actions{
  align-items:center !important;
}

.hero--home .hero__actions .btn{
  width:160px !important;
  min-width:160px !important;
  max-width:160px !important;
}

/* Botones rojos: borde por defecto, relleno solo en hover */
.btn-primary:not(.header-cta),
a.btn-primary:not(.header-cta),
button.btn-primary:not(.header-cta),
.form-card .btn-primary,
.cta-banner .btn-primary,
.tmx-add-cart,
.woocommerce .button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce a.button,
.woocommerce .checkout-button,
.woocommerce button[name="woocommerce_checkout_place_order"],
.woocommerce .single_add_to_cart_button{
  background:transparent !important;
  color:var(--red) !important;
  border:1px solid var(--red) !important;
  box-shadow:none !important;
}

.hero .btn-primary:not(.header-cta),
.hero a.btn-primary:not(.header-cta),
.form-card--dark .btn-primary,
.cta-banner .btn-primary{
  color:#fff !important;
}

.btn-primary:not(.header-cta):hover,
a.btn-primary:not(.header-cta):hover,
button.btn-primary:not(.header-cta):hover,
.form-card .btn-primary:hover,
.cta-banner .btn-primary:hover,
.tmx-add-cart:hover,
.woocommerce .button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce a.button:hover,
.woocommerce .checkout-button:hover,
.woocommerce button[name="woocommerce_checkout_place_order"]:hover,
.woocommerce .single_add_to_cart_button:hover{
  background:var(--red) !important;
  border-color:var(--red) !important;
  color:#fff !important;
  box-shadow:0 14px 30px rgba(230,57,70,.18) !important;
}

/* Mantener el CTA del navbar azul como estaba */
.site-header .header-cta,
.site-header .header-cta.btn-primary,
.header-cta.btn-primary{
  background:#2e86ff !important;
  border-color:#2e86ff !important;
  color:#fff !important;
  box-shadow:0 14px 32px rgba(46,134,255,.22) !important;
}

.site-header .header-cta:hover,
.site-header .header-cta.btn-primary:hover,
.header-cta.btn-primary:hover{
  background:#173b6c !important;
  border-color:#173b6c !important;
  color:#fff !important;
}

/* Minicards del hero: blancas, flotando entre hero y sección siguiente */
.hero--home{
  overflow:visible !important;
}

.hero--home .hero__inner--home{
  padding-bottom:118px !important;
}

.hero--home .feature-grid{
  position:absolute !important;
  left:50% !important;
  bottom:-52px !important;
  transform:translateX(-50%) !important;
  width:min(var(--max), calc(100vw - 48px)) !important;
  max-width:min(var(--max), calc(100vw - 48px)) !important;
  display:grid !important;
  grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
  gap:16px !important;
  margin:0 !important;
  z-index:12 !important;
}

.hero--home .feature-pill{
  min-height:104px !important;
  height:100% !important;
  padding:20px 18px !important;
  align-items:center !important;
  background:#fff !important;
  border:1px solid rgba(23,59,108,.08) !important;
  color:var(--blue-950) !important;
  box-shadow:0 20px 46px rgba(12,34,64,.13) !important;
  font-size:14px !important;
  font-weight:350 !important;
  line-height:1.42 !important;
}

.hero--home .feature-pill span{
  width:26px !important;
  height:26px !important;
  flex:0 0 26px !important;
  border-radius:5px !important;
  background:rgba(244,180,0,.16) !important;
  color:#b78300 !important;
  font-weight:700 !important;
}

#soluciones{
  padding-top:118px !important;
}

@media (max-width:1060px){
  .hero--home .hero__inner--home{
    padding-bottom:124px !important;
  }

  .hero--home .feature-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    bottom:-84px !important;
    width:min(760px, calc(100vw - 40px)) !important;
    max-width:min(760px, calc(100vw - 40px)) !important;
  }

  .hero--home .feature-pill{
    min-height:78px !important;
  }

  #soluciones{
    padding-top:140px !important;
  }
}

@media (max-width:820px){
  .hero--home .hero__actions .btn{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
  }

  .hero--home .hero__inner--home{
    padding-bottom:44px !important;
  }

  .hero--home .feature-grid{
    position:relative !important;
    left:auto !important;
    bottom:auto !important;
    transform:none !important;
    width:100% !important;
    max-width:100% !important;
    grid-template-columns:1fr !important;
    margin-top:28px !important;
  }

  .hero--home .feature-pill{
    min-height:66px !important;
  }

  #soluciones{
    padding-top:58px !important;
  }
}

/* =========================================================
   v40 - Etiquetas con punto al inicio y al final en todo el sitio
   ========================================================= */

.eyebrow,
.eyebrow-light{
  position:relative !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:9px !important;
  font-weight:300 !important;
}

.eyebrow::before,
.eyebrow-light::before,
.eyebrow::after,
.eyebrow-light::after{
  content:"" !important;
  width:8px !important;
  height:8px !important;
  display:inline-block !important;
  flex:0 0 8px !important;
  border-radius:999px !important;
  background:var(--yellow) !important;
  box-shadow:0 0 0 4px rgba(244,180,0,.14) !important;
}


/* =========================================================
   v39.5 - Tipografías oficiales + refinamiento visual
   ========================================================= */

:root{
  --font-primary:"Gilroy","Poppins",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --font-body:"Poppins",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --font:var(--font-body);
}

html,
body,
p,
a,
li,
span,
div,
button,
input,
textarea,
select,
.woocommerce,
.woocommerce-page{
  font-family:var(--font-body) !important;
}

body,
p,
li,
.hero__copy,
.section-head p,
.card p,
.service-card--light p,
.generic-card p,
.info-card p,
.faq-list p,
.tmx-product-card__meta,
.tmx-product-card__price,
.tmx-single-excerpt,
.woocommerce table.shop_table td{
  font-weight:400 !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
.hero h1,
.section h1,
.section-head h2,
.card h3,
.service-card--light h3,
.glass-card h3,
.status-panel h3,
.history-highlight h3,
.cta-banner h2,
.form-banner h2,
.quote-box h2,
.info-card h3,
.tmx-product-card__title,
.tmx-single-product__summary h1,
.tmx-blog-card h2,
.tmx-entry-content h2,
.tmx-entry-content h3{
  font-family:var(--font-primary) !important;
  font-weight:500 !important;
}

strong,
b,
.card-link,
.nav-dropdown__menu a,
.tmx-product-card__cat,
.tmx-detail-btn,
.tmx-add-cart,
.woocommerce .button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce a.button,
.woocommerce .checkout-button,
.woocommerce button[name="woocommerce_checkout_place_order"],
.woocommerce .single_add_to_cart_button,
.btn{
  font-weight:600 !important;
}

.nav,
.nav a,
.tecnimax-nav__link,
.nav-dropdown__trigger{
  font-family:var(--font-body) !important;
  font-weight:400 !important;
}

.nav a.is-active,
.nav a.tecnimax-nav__link.is-active,
.nav-dropdown.is-active > .nav-dropdown__trigger,
.nav-dropdown__trigger.is-active{
  font-weight:500 !important;
}

.eyebrow,
.eyebrow-light{
  font-family:var(--font-body) !important;
  font-weight:300 !important;
}

.hero--home .feature-grid{
  bottom:-50px !important;
  gap:16px !important;
}

.hero--home .feature-pill{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  min-height:104px !important;
  padding:24px 26px !important;
  background:#fff !important;
  color:var(--blue-950) !important;
  border:1px solid rgba(23,59,108,.08) !important;
  box-shadow:0 20px 46px rgba(12,34,64,.13) !important;
  font-family:var(--font-body) !important;
  font-size:15.5px !important;
  line-height:1.38 !important;
  font-weight:400 !important;
  letter-spacing:-.005em !important;
}

.hero--home .feature-pill span,
.hero .feature-grid .feature-pill span,
.feature-grid .feature-pill span{
  display:none !important;
}

@media (max-width:1060px){
  .hero--home .feature-grid{
    bottom:-84px !important;
  }

  .hero--home .feature-pill{
    min-height:82px !important;
    padding:22px 24px !important;
    font-size:15px !important;
  }
}

@media (max-width:820px){
  .hero--home .feature-grid{
    bottom:auto !important;
  }

  .hero--home .feature-pill{
    min-height:68px !important;
    padding:20px 22px !important;
    font-size:15px !important;
  }
}

/* v39-7 - Home hero features + soluciones principales */
.hero--home .feature-grid{
  position:relative;
  z-index:8;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
  max-width:none;
  margin-top:34px;
}
.hero--home .feature-pill{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:14px;
  min-height:108px;
  padding:22px 24px;
  background:#fff;
  border:1px solid rgba(23,59,108,.10);
  box-shadow:0 20px 40px rgba(12,34,64,.10);
  color:var(--blue-800);
  text-align:left;
}
.hero--home .feature-pill__icon{
  width:42px;
  height:42px;
  flex:0 0 42px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:rgba(23,59,108,.08);
  color:var(--blue-800);
}
.hero--home .feature-pill__icon svg{
  width:22px;
  height:22px;
  stroke:currentColor;
}
.hero--home .feature-pill__text{
  display:block;
  color:var(--blue-800);
  font-family:'Poppins',sans-serif;
  font-size:17px;
  line-height:1.35;
  font-weight:400;
  letter-spacing:-.01em;
}
.hero--home .feature-pill span:not(.feature-pill__icon):not(.feature-pill__text){
  display:none;
}

.solutions-grid{
  align-items:stretch;
}
.solutions-grid > *{
  height:100%;
}
.card--solution{
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  min-height:100%;
  padding:28px 22px 22px;
  border:1px solid rgba(23,59,108,.10);
  box-shadow:0 18px 34px rgba(12,34,64,.06);
  background:#fff;
}
.card--solution__accent{
  width:112px;
  height:4px;
  border-radius:999px;
  background:linear-gradient(90deg,#173B6C,#2E86FF);
  margin-bottom:22px;
}
.card--solution__icon{
  width:58px;
  height:58px;
  display:grid;
  place-items:center;
  border-radius:14px;
  background:rgba(23,59,108,.08);
  color:var(--blue-800);
  margin-bottom:18px;
}
.card--solution__icon svg{
  width:28px;
  height:28px;
  stroke:currentColor;
}
.card--solution h3{
  width:100%;
  color:var(--blue-800);
  font-family:'Gilroy','Poppins',sans-serif;
  font-size:29px;
  line-height:1.08;
  font-weight:600;
  letter-spacing:-.03em;
  margin:0 0 14px;
}
.card--solution p{
  width:100%;
  color:#4D6485;
  font-family:'Poppins',sans-serif;
  font-size:16px;
  line-height:1.6;
  font-weight:400;
  margin:0 0 22px;
}
.card--solution .btn-solution{
  margin-top:auto;
  min-width:100%;
  justify-content:center;
  font-size:14px;
  font-weight:600;
  color:var(--blue-800);
  border:1px solid rgba(23,59,108,.18);
  background:#fff;
}
.card--solution .btn-solution:hover{
  background:var(--blue-800);
  color:#fff;
  border-color:var(--blue-800);
}
.card--solution .card-link{display:none !important;}

#soluciones .section-head.center .eyebrow-light{
  padding:10px 16px;
  border-color:rgba(23,59,108,.14);
  box-shadow:0 10px 22px rgba(12,34,64,.06);
}
#soluciones .section-head.center h2{
  color:var(--blue-800);
  font-family:'Gilroy','Poppins',sans-serif;
  font-weight:600;
}
#soluciones .section-head.center p{
  color:#4D6485;
  font-family:'Poppins',sans-serif;
  font-weight:400;
}

@media (max-width: 1080px){
  .hero--home .feature-grid,
  .solutions-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width: 767px){
  .hero--home .feature-grid,
  .solutions-grid{
    grid-template-columns:1fr;
  }
  .hero--home .feature-pill{
    min-height:88px;
    padding:18px 18px;
  }
  .hero--home .feature-pill__text{
    font-size:16px;
  }
  .card--solution{
    padding:22px 18px 18px;
  }
  .card--solution h3{
    font-size:24px;
  }
  .card--solution p{
    font-size:15px;
  }
}


/* v39-8 - Corrección de lectura e iconografía centrada */
.hero--home .feature-pill span.feature-pill__icon{
  display:grid !important;
  place-items:center !important;
  width:46px !important;
  height:46px !important;
  min-width:46px !important;
  flex:0 0 46px !important;
  border-radius:12px !important;
  background:rgba(23,59,108,.08) !important;
  color:#173B6C !important;
  box-shadow:none !important;
}
.hero--home .feature-pill span.feature-pill__icon svg{
  display:block !important;
  width:23px !important;
  height:23px !important;
  color:#173B6C !important;
  stroke:currentColor !important;
}
.hero--home .feature-pill span.feature-pill__text{
  display:block !important;
  width:auto !important;
  height:auto !important;
  min-width:0 !important;
  flex:1 1 auto !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#173B6C !important;
  font-family:'Poppins',sans-serif !important;
  font-size:16.5px !important;
  line-height:1.35 !important;
  font-weight:400 !important;
  letter-spacing:-.01em !important;
  text-align:left !important;
}
.hero--home .feature-pill{
  overflow:visible !important;
}

/* Soluciones principales: icono superior centrado, visible y en azul oscuro */
.solutions-grid .card--solution{
  align-items:center !important;
  text-align:center !important;
  padding:30px 22px 24px !important;
  overflow:hidden !important;
}
.solutions-grid .card--solution__icon{
  order:1 !important;
  width:70px !important;
  height:70px !important;
  display:grid !important;
  place-items:center !important;
  margin:0 auto 16px !important;
  border-radius:0 !important;
  background:transparent !important;
  color:#173B6C !important;
  box-shadow:none !important;
}
.solutions-grid .card--solution__icon svg{
  display:block !important;
  width:44px !important;
  height:44px !important;
  color:#173B6C !important;
  stroke:#173B6C !important;
}
.solutions-grid .card--solution__icon svg *{
  stroke:#173B6C !important;
  stroke-width:1.85 !important;
}
.solutions-grid .card--solution h3{
  order:2 !important;
  color:#173B6C !important;
  font-size:22px !important;
  line-height:1.18 !important;
  font-weight:600 !important;
  margin:0 0 12px !important;
  text-align:center !important;
}
.solutions-grid .card--solution__accent{
  order:3 !important;
  width:58px !important;
  height:3px !important;
  margin:0 auto 18px !important;
  border-radius:999px !important;
  background:#173B6C !important;
}
.solutions-grid .card--solution p{
  order:4 !important;
  color:#4D6485 !important;
  font-size:14.8px !important;
  line-height:1.58 !important;
  font-weight:400 !important;
  text-align:center !important;
  margin:0 0 24px !important;
}
.solutions-grid .card--solution .btn-solution{
  order:5 !important;
  width:100% !important;
  max-width:190px !important;
  min-width:0 !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
@media (max-width:767px){
  .hero--home .feature-pill span.feature-pill__text{
    font-size:15.5px !important;
  }
  .solutions-grid .card--solution__icon{
    width:64px !important;
    height:64px !important;
  }
  .solutions-grid .card--solution__icon svg{
    width:40px !important;
    height:40px !important;
  }
}

/* v39-9 - Hover dark para cards de soluciones */
.card--solution,
.card--solution h3,
.card--solution p,
.card--solution .card--solution__icon,
.card--solution .card--solution__icon svg,
.card--solution .card--solution__accent,
.card--solution .btn-solution{
  transition:background .25s ease,color .25s ease,border-color .25s ease,box-shadow .25s ease,transform .25s ease,opacity .25s ease;
}

.card--solution:hover,
.card--solution:focus-within{
  background:var(--blue-800);
  border-color:var(--blue-800);
  box-shadow:0 22px 42px rgba(12,34,64,.18);
}

.card--solution:hover .card--solution__accent,
.card--solution:focus-within .card--solution__accent{
  background:rgba(255,255,255,.92);
}

.card--solution:hover .card--solution__icon,
.card--solution:focus-within .card--solution__icon{
  background:rgba(255,255,255,.14);
  color:#fff;
}

.card--solution:hover h3,
.card--solution:focus-within h3,
.card--solution:hover p,
.card--solution:focus-within p{
  color:#fff;
}

.card--solution:hover .btn-solution,
.card--solution:focus-within .btn-solution{
  background:#fff;
  color:var(--blue-800);
  border-color:#fff;
}

.card--solution:hover .btn-solution:hover,
.card--solution:focus-within .btn-solution:hover{
  background:transparent;
  color:#fff;
  border-color:rgba(255,255,255,.88);
}

/* v39-10 - Status cards + about image/cards on home */
.mini-status-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
  margin-top:22px;
}
.mini-status-card{
  display:flex;
  align-items:center;
  gap:14px;
  padding:18px 18px;
  background:#fff;
  border:1px solid rgba(23,59,108,.10);
  box-shadow:0 14px 28px rgba(12,34,64,.07);
  border-radius:5px;
}
.mini-status-card__icon{
  width:46px;
  height:46px;
  flex:0 0 46px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:rgba(23,59,108,.08);
  color:var(--blue-800);
}
.mini-status-card__icon svg{
  width:24px;
  height:24px;
  stroke:currentColor;
}
.mini-status-card__body{
  display:grid;
  gap:4px;
}
.mini-status-card__body strong{
  color:var(--blue-950);
  font-family:'Gilroy','Poppins',sans-serif;
  font-size:18px;
  line-height:1.1;
  font-weight:600;
}
.mini-status-card__body span{
  color:#5f7594;
  font-family:'Poppins',sans-serif;
  font-size:14px;
  line-height:1.3;
  font-weight:400;
}

.split-layout--about-home{
  grid-template-columns:460px minmax(0,1fr);
  align-items:center;
}
.split-layout--about-home .about-photo-card{
  max-width:460px;
  width:100%;
  background:#fff;
  border:1px solid rgba(23,59,108,.10);
  box-shadow:0 20px 42px rgba(12,34,64,.08);
}
.split-layout--about-home .about-photo-card img{
  min-height:520px;
}
.about-mini-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  margin-top:22px;
}
.about-mini-card{
  display:flex;
  align-items:center;
  gap:14px;
  min-height:90px;
  padding:18px 18px;
  background:#fff;
  border:1px solid rgba(23,59,108,.10);
  box-shadow:0 14px 28px rgba(12,34,64,.07);
  border-radius:5px;
}
.about-mini-card__icon{
  width:42px;
  height:42px;
  flex:0 0 42px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:rgba(244,180,0,.14);
  color:var(--blue-800);
}
.about-mini-card__icon svg{
  width:22px;
  height:22px;
  stroke:currentColor;
}
.about-mini-card strong{
  color:var(--blue-950);
  font-family:'Poppins',sans-serif;
  font-size:16px;
  line-height:1.35;
  font-weight:500;
}

@media (max-width: 1180px){
  .mini-status-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .split-layout--about-home{
    grid-template-columns:1fr;
  }
  .split-layout--about-home .about-photo-card{
    max-width:none;
  }
  .split-layout--about-home .about-photo-card img{
    min-height:380px;
  }
}
@media (max-width: 767px){
  .mini-status-grid,
  .about-mini-grid{
    grid-template-columns:1fr;
  }
  .mini-status-card,
  .about-mini-card{
    padding:16px;
  }
  .split-layout--about-home .about-photo-card img{
    min-height:260px;
  }
}


/* v39-11 - Hover blanco completo + imagen Nosotros sin recorte + botón full width */
.card--solution:hover,
.card--solution:focus-within,
.mini-status-card:hover,
.mini-status-card:focus-within,
.about-mini-card:hover,
.about-mini-card:focus-within{
  background:var(--blue-800) !important;
  border-color:var(--blue-800) !important;
  box-shadow:0 22px 42px rgba(12,34,64,.18);
}

.card--solution:hover h3,
.card--solution:focus-within h3,
.card--solution:hover p,
.card--solution:focus-within p,
.card--solution:hover .card--solution__icon,
.card--solution:focus-within .card--solution__icon,
.card--solution:hover .card--solution__icon *,
.card--solution:focus-within .card--solution__icon *,
.card--solution:hover .btn-solution,
.card--solution:focus-within .btn-solution,
.mini-status-card:hover *,
.mini-status-card:focus-within *,
.about-mini-card:hover *,
.about-mini-card:focus-within *{
  color:#fff !important;
}

.card--solution:hover .card--solution__accent,
.card--solution:focus-within .card--solution__accent{
  background:#fff !important;
}

.card--solution:hover .card--solution__icon,
.card--solution:focus-within .card--solution__icon,
.mini-status-card:hover .mini-status-card__icon,
.mini-status-card:focus-within .mini-status-card__icon,
.about-mini-card:hover .about-mini-card__icon,
.about-mini-card:focus-within .about-mini-card__icon{
  background:rgba(255,255,255,.14) !important;
}

.card--solution:hover svg,
.card--solution:focus-within svg,
.card--solution:hover svg *,
.card--solution:focus-within svg *,
.mini-status-card:hover svg,
.mini-status-card:focus-within svg,
.mini-status-card:hover svg *,
.mini-status-card:focus-within svg *,
.about-mini-card:hover svg,
.about-mini-card:focus-within svg,
.about-mini-card:hover svg *,
.about-mini-card:focus-within svg *{
  stroke:currentColor !important;
}

.card--solution:hover .btn-solution,
.card--solution:focus-within .btn-solution{
  width:100%;
  background:transparent !important;
  border-color:rgba(255,255,255,.85) !important;
  color:#fff !important;
}

.card--solution:hover .btn-solution:hover,
.card--solution:focus-within .btn-solution:hover{
  background:rgba(255,255,255,.12) !important;
  border-color:#fff !important;
  color:#fff !important;
}

.about-photo-card img,
.split-layout--about-home .about-photo-card img{
  width:100%;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  object-fit:contain !important;
  object-position:center !important;
  display:block;
  background:#fff;
}

.split-layout--about-home .about-photo-card{
  display:flex;
  align-items:center;
  justify-content:center;
  background:#fff;
}

.split-layout--about-home .hero__actions{
  width:100%;
}

.split-layout--about-home .hero__actions .btn,
#nosotros .hero__actions .btn{
  width:100%;
  max-width:none;
}

/* v39-12 - Imagen Nosotros a altura completa del contenido derecho */
#nosotros .split-layout--about-home{
  align-items:stretch !important;
}

#nosotros .split-layout--about-home > .reveal-up:not(.about-photo-card){
  display:flex;
  flex-direction:column;
  justify-content:center;
}

#nosotros .split-layout--about-home .about-photo-card{
  align-self:stretch !important;
  height:100% !important;
  min-height:100% !important;
  max-width:none !important;
  display:flex !important;
  align-items:stretch !important;
  justify-content:stretch !important;
  overflow:hidden !important;
  background:#fff;
}

#nosotros .split-layout--about-home .about-photo-card img{
  width:100% !important;
  height:100% !important;
  min-height:100% !important;
  max-height:none !important;
  object-fit:cover !important;
  object-position:center center !important;
  display:block !important;
}

@media (max-width:1180px){
  #nosotros .split-layout--about-home .about-photo-card{
    min-height:360px !important;
  }
  #nosotros .split-layout--about-home .about-photo-card img{
    min-height:360px !important;
  }
}

@media (max-width:767px){
  #nosotros .split-layout--about-home .about-photo-card{
    min-height:260px !important;
  }
  #nosotros .split-layout--about-home .about-photo-card img{
    min-height:260px !important;
  }
}

/* v39-13 - Nosotros: menos padding X y foto más ancha sin recorte */
@media (min-width:1181px){
  #nosotros > .container{
    width:min(1480px, calc(100% - 48px)) !important;
    max-width:none !important;
  }

  #nosotros .split-layout--about-home{
    grid-template-columns:minmax(640px, 1.08fr) minmax(560px, .92fr) !important;
    gap:36px !important;
    align-items:stretch !important;
  }

  #nosotros .split-layout--about-home .about-photo-card{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    align-self:stretch !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    overflow:hidden !important;
    background:#fff !important;
  }

  #nosotros .split-layout--about-home .about-photo-card img{
    width:100% !important;
    height:100% !important;
    min-height:100% !important;
    object-fit:contain !important;
    object-position:center center !important;
    background:#fff !important;
  }
}

@media (min-width:1500px){
  #nosotros > .container{
    width:min(1540px, calc(100% - 56px)) !important;
  }

  #nosotros .split-layout--about-home{
    grid-template-columns:minmax(720px, 1.05fr) minmax(600px, .95fr) !important;
    gap:38px !important;
  }
}

@media (min-width:1061px) and (max-width:1180px){
  #nosotros > .container{
    width:calc(100% - 32px) !important;
    max-width:none !important;
  }

  #nosotros .split-layout--about-home{
    grid-template-columns:minmax(52%, 1fr) minmax(0, .92fr) !important;
    gap:26px !important;
  }

  #nosotros .split-layout--about-home .about-photo-card img{
    object-fit:contain !important;
    object-position:center center !important;
  }
}

/* v39-14 - Hero minicards: iconos sin fondo y más grandes */
.hero--home .feature-pill{
  gap:16px !important;
}
.hero--home .feature-pill span.feature-pill__icon{
  width:32px !important;
  height:32px !important;
  min-width:32px !important;
  flex:0 0 32px !important;
  border-radius:0 !important;
  background:transparent !important;
  padding:0 !important;
}
.hero--home .feature-pill span.feature-pill__icon svg{
  width:28px !important;
  height:28px !important;
}

/* v39-15 - Soluciones hover: icono sin fondo + soporte más claro */
.card--solution:hover .card--solution__icon,
.card--solution:focus-within .card--solution__icon,
.card--solution:hover .card--solution__icon *,
.card--solution:focus-within .card--solution__icon *{
  background:transparent !important;
  box-shadow:none !important;
}
.card--solution:hover .card--solution__icon,
.card--solution:focus-within .card--solution__icon{
  color:#fff !important;
}

/* v39-16 - Hover para mini status cards y about mini cards */
.mini-status-card,
.mini-status-card__icon,
.mini-status-card__icon svg,
.mini-status-card__icon *,
.mini-status-card__body strong,
.mini-status-card__body span,
.about-mini-card,
.about-mini-card__icon,
.about-mini-card__icon svg,
.about-mini-card__icon *,
.about-mini-card strong{
  transition:background .25s ease,color .25s ease,border-color .25s ease,box-shadow .25s ease,transform .25s ease;
}

.mini-status-card:hover,
.mini-status-card:focus-within,
.about-mini-card:hover,
.about-mini-card:focus-within{
  background:var(--blue-800);
  border-color:var(--blue-800);
  box-shadow:0 20px 40px rgba(12,34,64,.18);
}

.mini-status-card:hover .mini-status-card__icon,
.mini-status-card:focus-within .mini-status-card__icon,
.about-mini-card:hover .about-mini-card__icon,
.about-mini-card:focus-within .about-mini-card__icon{
  background:transparent !important;
  box-shadow:none !important;
  color:#fff !important;
}

.mini-status-card:hover .mini-status-card__icon *,
.mini-status-card:focus-within .mini-status-card__icon *,
.about-mini-card:hover .about-mini-card__icon *,
.about-mini-card:focus-within .about-mini-card__icon *{
  color:#fff !important;
  stroke:currentColor !important;
}

.mini-status-card:hover .mini-status-card__body strong,
.mini-status-card:focus-within .mini-status-card__body strong,
.mini-status-card:hover .mini-status-card__body span,
.mini-status-card:focus-within .mini-status-card__body span,
.about-mini-card:hover strong,
.about-mini-card:focus-within strong{
  color:#fff !important;
}

/* v39-17 - Alternancia de fondos + nuevo diseño para Por qué alquilar y Sectores */
#por-que-alquilar.section-why{
  background:#fff !important;
  border-top:1px solid rgba(23,59,108,.06);
  border-bottom:1px solid rgba(23,59,108,.06);
}
#sectores.section-sectors{
  background:linear-gradient(180deg,#eef4fa 0%,#f8fbff 100%) !important;
  border-top:1px solid rgba(23,59,108,.07);
  border-bottom:1px solid rgba(23,59,108,.07);
}

#por-que-alquilar .section-head h2,
#sectores .section-head h2{
  color:var(--blue-950);
  font-family:'Gilroy','Poppins',sans-serif;
  font-weight:600;
}

.rent-benefits-grid,
.sector-grid{
  align-items:stretch;
  gap:20px;
}
.rent-benefits-grid > *,
.sector-grid > *{
  height:100%;
}

.rent-benefit-card,
.sector-card{
  position:relative;
  min-height:255px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  padding:28px 24px 24px;
  background:#fff;
  border:1px solid rgba(23,59,108,.10);
  box-shadow:0 14px 30px rgba(12,34,64,.055);
  border-radius:5px;
  overflow:hidden;
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease,background .25s ease,color .25s ease;
}
.rent-benefit-card::before,
.sector-card::before{
  content:"";
  position:absolute;
  left:24px;
  top:0;
  width:86px;
  height:4px;
  background:linear-gradient(90deg,var(--blue-800),#2E86FF);
  border-radius:0 0 999px 999px;
  transition:background .25s ease,width .25s ease;
}
.rent-benefit-card:hover,
.rent-benefit-card:focus-within,
.sector-card:hover,
.sector-card:focus-within{
  transform:translateY(-5px);
  background:var(--blue-800);
  border-color:var(--blue-800);
  box-shadow:0 24px 46px rgba(12,34,64,.18);
}
.rent-benefit-card:hover::before,
.rent-benefit-card:focus-within::before,
.sector-card:hover::before,
.sector-card:focus-within::before{
  width:calc(100% - 48px);
  background:rgba(255,255,255,.9);
}

.rent-benefit-card__icon,
.sector-card__icon{
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border-radius:14px;
  background:rgba(23,59,108,.08);
  color:var(--blue-800);
  margin-bottom:22px;
  transition:background .25s ease,color .25s ease,box-shadow .25s ease;
}
.rent-benefit-card__icon svg,
.sector-card__icon svg{
  width:28px;
  height:28px;
  display:block;
  stroke:currentColor;
}
.rent-benefit-card__number{
  position:absolute;
  top:24px;
  right:22px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:42px;
  height:28px;
  padding:0 10px;
  border-radius:999px;
  background:rgba(23,59,108,.06);
  color:var(--blue-800);
  font-size:12px;
  line-height:1;
  font-weight:600;
  letter-spacing:.04em;
  transition:background .25s ease,color .25s ease;
}
.rent-benefit-card h3,
.sector-card h3{
  margin:0 0 12px;
  color:var(--blue-950);
  font-family:'Gilroy','Poppins',sans-serif;
  font-size:21px;
  line-height:1.16;
  letter-spacing:-.025em;
  font-weight:600;
  transition:color .25s ease;
}
.rent-benefit-card p,
.sector-card p{
  margin:0;
  color:#4D6485;
  font-family:'Poppins',sans-serif;
  font-size:15.5px;
  line-height:1.58;
  font-weight:400;
  transition:color .25s ease;
}
.rent-benefit-card:hover .rent-benefit-card__icon,
.rent-benefit-card:focus-within .rent-benefit-card__icon,
.sector-card:hover .sector-card__icon,
.sector-card:focus-within .sector-card__icon{
  background:transparent !important;
  color:#fff !important;
  box-shadow:none !important;
}
.rent-benefit-card:hover .rent-benefit-card__number,
.rent-benefit-card:focus-within .rent-benefit-card__number{
  background:rgba(255,255,255,.14);
  color:#fff;
}
.rent-benefit-card:hover h3,
.rent-benefit-card:focus-within h3,
.rent-benefit-card:hover p,
.rent-benefit-card:focus-within p,
.sector-card:hover h3,
.sector-card:focus-within h3,
.sector-card:hover p,
.sector-card:focus-within p{
  color:#fff !important;
}
.rent-benefit-card:hover svg,
.rent-benefit-card:focus-within svg,
.sector-card:hover svg,
.sector-card:focus-within svg{
  color:#fff !important;
  stroke:currentColor !important;
}

@media (max-width:1080px){
  .rent-benefits-grid,
  .sector-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .rent-benefit-card,
  .sector-card{
    min-height:230px;
  }
}
@media (max-width:820px){
  .rent-benefits-grid,
  .sector-grid{
    grid-template-columns:1fr;
  }
  .rent-benefit-card,
  .sector-card{
    min-height:auto;
    padding:24px 20px 22px;
  }
  .rent-benefit-card::before,
  .sector-card::before{
    left:20px;
  }
  .rent-benefit-card:hover::before,
  .rent-benefit-card:focus-within::before,
  .sector-card:hover::before,
  .sector-card:focus-within::before{
    width:calc(100% - 40px);
  }
}

/* v39-18 - Clientes: quitar fondos internos y separar nombres con línea amarilla */
.section-clients .client-logo-item{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
  padding:0 34px !important;
  width:260px !important;
  height:112px !important;
}
.section-clients .client-logo-item img{
  filter:drop-shadow(0 10px 22px rgba(0,0,0,.18)) !important;
}
.section-clients .client-name-track{
  gap:0 !important;
}
.section-clients .client-name-track span{
  position:relative;
  display:inline-flex;
  align-items:center;
  padding:0 24px !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  color:rgba(255,255,255,.86) !important;
  font-size:14px !important;
  line-height:1.4 !important;
  font-weight:500 !important;
}
.section-clients .client-name-track span::after{
  content:"";
  position:absolute;
  right:0;
  top:50%;
  width:2px;
  height:18px;
  border-radius:999px;
  background:var(--yellow);
  transform:translateY(-50%);
  opacity:.95;
}
@media (max-width:820px){
  .section-clients .client-logo-item{
    width:210px !important;
    height:88px !important;
    padding:0 22px !important;
  }
  .section-clients .client-name-track span{
    padding:0 18px !important;
    font-size:13px !important;
  }
}

/* v39-19 - Hover solo en Soluciones, iconos limpios y foto Nosotros sin zona blanca */

/* Foto Nosotros: llenar el bloque y evitar el área blanca del contenedor/encuadre */
#nosotros .split-layout--about-home .about-photo-card{
  background:transparent !important;
  border:0 !important;
  box-shadow:0 18px 40px rgba(12,34,64,.08) !important;
  overflow:hidden !important;
}
#nosotros .split-layout--about-home .about-photo-card img{
  width:100% !important;
  height:100% !important;
  min-height:100% !important;
  object-fit:cover !important;
  object-position:center bottom !important;
  background:transparent !important;
}

/* Iconos de cards: sin fondo y un poco más grandes */
.card--solution__icon,
.mini-status-card__icon,
.about-mini-card__icon,
.rent-benefit-card__icon,
.sector-card__icon,
.icon-tag,
.number-tag{
  background:transparent !important;
  box-shadow:none !important;
  border:0 !important;
  border-radius:0 !important;
}
.card--solution__icon{
  width:76px !important;
  height:76px !important;
  margin-bottom:18px !important;
}
.card--solution__icon svg{
  width:38px !important;
  height:38px !important;
}
.mini-status-card__icon,
.about-mini-card__icon{
  width:44px !important;
  height:44px !important;
  flex:0 0 44px !important;
}
.mini-status-card__icon svg,
.about-mini-card__icon svg{
  width:29px !important;
  height:29px !important;
}
.rent-benefit-card__icon,
.sector-card__icon{
  width:60px !important;
  height:60px !important;
  margin-bottom:20px !important;
}
.rent-benefit-card__icon svg,
.sector-card__icon svg{
  width:34px !important;
  height:34px !important;
}

/* Quitar hover oscuro de todas las cards excepto Soluciones principales */
.mini-status-card:hover,
.mini-status-card:focus-within,
.about-mini-card:hover,
.about-mini-card:focus-within,
.rent-benefit-card:hover,
.rent-benefit-card:focus-within,
.sector-card:hover,
.sector-card:focus-within{
  background:#fff !important;
  border-color:rgba(23,59,108,.10) !important;
  box-shadow:0 16px 32px rgba(12,34,64,.08) !important;
  transform:translateY(-2px) !important;
}

.mini-status-card:hover .mini-status-card__icon,
.mini-status-card:focus-within .mini-status-card__icon,
.about-mini-card:hover .about-mini-card__icon,
.about-mini-card:focus-within .about-mini-card__icon,
.rent-benefit-card:hover .rent-benefit-card__icon,
.rent-benefit-card:focus-within .rent-benefit-card__icon,
.sector-card:hover .sector-card__icon,
.sector-card:focus-within .sector-card__icon{
  background:transparent !important;
  color:var(--blue-800) !important;
  box-shadow:none !important;
}

.mini-status-card:hover .mini-status-card__icon *,
.mini-status-card:focus-within .mini-status-card__icon *,
.about-mini-card:hover .about-mini-card__icon *,
.about-mini-card:focus-within .about-mini-card__icon *,
.rent-benefit-card:hover .rent-benefit-card__icon *,
.rent-benefit-card:focus-within .rent-benefit-card__icon *,
.sector-card:hover .sector-card__icon *,
.sector-card:focus-within .sector-card__icon *{
  color:var(--blue-800) !important;
  stroke:currentColor !important;
}

.mini-status-card:hover .mini-status-card__body strong,
.mini-status-card:focus-within .mini-status-card__body strong,
.about-mini-card:hover strong,
.about-mini-card:focus-within strong,
.rent-benefit-card:hover h3,
.rent-benefit-card:focus-within h3,
.sector-card:hover h3,
.sector-card:focus-within h3{
  color:var(--blue-950) !important;
}

.mini-status-card:hover .mini-status-card__body span,
.mini-status-card:focus-within .mini-status-card__body span,
.rent-benefit-card:hover p,
.rent-benefit-card:focus-within p,
.sector-card:hover p,
.sector-card:focus-within p{
  color:#4D6485 !important;
}

.rent-benefit-card:hover::before,
.rent-benefit-card:focus-within::before,
.sector-card:hover::before,
.sector-card:focus-within::before{
  width:86px !important;
  background:linear-gradient(90deg,var(--blue-800),#2E86FF) !important;
}
.rent-benefit-card:hover .rent-benefit-card__number,
.rent-benefit-card:focus-within .rent-benefit-card__number{
  background:rgba(23,59,108,.06) !important;
  color:var(--blue-800) !important;
}

/* Mantener hover oscuro SOLO en Soluciones tecnológicas para tu operación diaria */
.solutions-grid .card--solution:hover,
.solutions-grid .card--solution:focus-within{
  background:var(--blue-800) !important;
  border-color:var(--blue-800) !important;
  box-shadow:0 22px 42px rgba(12,34,64,.18) !important;
  transform:translateY(-4px) !important;
}
.solutions-grid .card--solution:hover h3,
.solutions-grid .card--solution:focus-within h3,
.solutions-grid .card--solution:hover p,
.solutions-grid .card--solution:focus-within p,
.solutions-grid .card--solution:hover .card--solution__icon,
.solutions-grid .card--solution:focus-within .card--solution__icon,
.solutions-grid .card--solution:hover .card--solution__icon *,
.solutions-grid .card--solution:focus-within .card--solution__icon *{
  color:#fff !important;
  stroke:currentColor !important;
}
.solutions-grid .card--solution:hover .card--solution__icon,
.solutions-grid .card--solution:focus-within .card--solution__icon{
  background:transparent !important;
  box-shadow:none !important;
}
.solutions-grid .card--solution:hover .card--solution__accent,
.solutions-grid .card--solution:focus-within .card--solution__accent{
  background:#fff !important;
}
.solutions-grid .card--solution:hover .btn-solution,
.solutions-grid .card--solution:focus-within .btn-solution{
  background:transparent !important;
  border-color:rgba(255,255,255,.86) !important;
  color:#fff !important;
}

/* v39-20 - Botones rojos sobre fondos no blancos: texto blanco */
.hero .btn-primary:not(.header-cta),
.hero a.btn-primary:not(.header-cta),
.hero button.btn-primary:not(.header-cta),
.cta-banner .btn-primary,
.cta-banner a.btn-primary,
.cta-banner button.btn-primary,
.form-banner .btn-primary,
.form-banner a.btn-primary,
.form-banner button.btn-primary,
.form-card--dark .btn-primary,
.form-card--dark button.btn-primary,
.glass-card .btn-primary,
.service-card .btn-primary,
.site-footer .btn-primary,
.site-footer a.btn-primary,
.footer .btn-primary,
.section-dark .btn-primary,
.dark-section .btn-primary,
.section-clients .btn-primary,
.client-section .btn-primary,
[class*="--dark"] .btn-primary:not(.header-cta){
  color:#fff !important;
}

.hero .btn-primary:not(.header-cta):hover,
.cta-banner .btn-primary:hover,
.form-banner .btn-primary:hover,
.form-card--dark .btn-primary:hover,
.glass-card .btn-primary:hover,
.service-card .btn-primary:hover,
.site-footer .btn-primary:hover,
.footer .btn-primary:hover,
.section-dark .btn-primary:hover,
.dark-section .btn-primary:hover,
.section-clients .btn-primary:hover,
.client-section .btn-primary:hover,
[class*="--dark"] .btn-primary:not(.header-cta):hover{
  color:#fff !important;
}

/* v39-21 - Botones blancos sobre fondos oscuros */
.hero .btn-outline:not(.btn-solution):not(.tmx-cart-link),
.hero a.btn-outline:not(.btn-solution):not(.tmx-cart-link),
.cta-banner .btn-outline:not(.btn-solution):not(.tmx-cart-link),
.cta-banner a.btn-outline:not(.btn-solution):not(.tmx-cart-link),
.form-banner .btn-outline:not(.btn-solution):not(.tmx-cart-link),
.form-banner a.btn-outline:not(.btn-solution):not(.tmx-cart-link),
.form-card--dark .btn-outline:not(.btn-solution):not(.tmx-cart-link),
.glass-card .btn-outline:not(.btn-solution):not(.tmx-cart-link),
.service-card .btn-outline:not(.btn-solution):not(.tmx-cart-link),
.site-footer .btn-outline:not(.btn-solution):not(.tmx-cart-link),
.footer .btn-outline:not(.btn-solution):not(.tmx-cart-link),
.section-dark .btn-outline:not(.btn-solution):not(.tmx-cart-link),
.dark-section .btn-outline:not(.btn-solution):not(.tmx-cart-link),
.section-clients .btn-outline:not(.btn-solution):not(.tmx-cart-link),
.client-section .btn-outline:not(.btn-solution):not(.tmx-cart-link),
[class*="--dark"] .btn-outline:not(.btn-solution):not(.tmx-cart-link){
  background:transparent !important;
  color:#fff !important;
  border-color:rgba(255,255,255,.88) !important;
  box-shadow:none !important;
}

.hero .btn-outline:not(.btn-solution):not(.tmx-cart-link):hover,
.cta-banner .btn-outline:not(.btn-solution):not(.tmx-cart-link):hover,
.form-banner .btn-outline:not(.btn-solution):not(.tmx-cart-link):hover,
.form-card--dark .btn-outline:not(.btn-solution):not(.tmx-cart-link):hover,
.glass-card .btn-outline:not(.btn-solution):not(.tmx-cart-link):hover,
.service-card .btn-outline:not(.btn-solution):not(.tmx-cart-link):hover,
.site-footer .btn-outline:not(.btn-solution):not(.tmx-cart-link):hover,
.footer .btn-outline:not(.btn-solution):not(.tmx-cart-link):hover,
.section-dark .btn-outline:not(.btn-solution):not(.tmx-cart-link):hover,
.dark-section .btn-outline:not(.btn-solution):not(.tmx-cart-link):hover,
.section-clients .btn-outline:not(.btn-solution):not(.tmx-cart-link):hover,
.client-section .btn-outline:not(.btn-solution):not(.tmx-cart-link):hover,
[class*="--dark"] .btn-outline:not(.btn-solution):not(.tmx-cart-link):hover{
  background:#fff !important;
  color:var(--blue-800) !important;
  border-color:#fff !important;
}

/* v39-22 - Animación de borde desde la izquierda en botones outline */
.btn.btn-primary:not(.header-cta),
a.btn.btn-primary:not(.header-cta),
button.btn.btn-primary:not(.header-cta),
.btn.btn-outline,
a.btn.btn-outline,
button.btn.btn-outline,
.header-cta.btn-primary{
  position:relative;
  overflow:hidden;
  isolation:isolate;
}

.btn.btn-primary:not(.header-cta)::before,
a.btn.btn-primary:not(.header-cta)::before,
button.btn.btn-primary:not(.header-cta)::before,
.btn.btn-outline::before,
a.btn.btn-outline::before,
button.btn.btn-outline::before,
.header-cta.btn-primary::before{
  content:"";
  position:absolute;
  inset:0;
  border:1px solid currentColor;
  border-radius:inherit;
  pointer-events:none;
  transform:scaleX(0);
  transform-origin:left center;
  opacity:0;
  transition:transform .38s cubic-bezier(.22,1,.36,1), opacity .18s ease;
  z-index:1;
}

.btn.btn-primary:not(.header-cta):hover::before,
a.btn.btn-primary:not(.header-cta):hover::before,
button.btn.btn-primary:not(.header-cta):hover::before,
.btn.btn-primary:not(.header-cta):focus-visible::before,
.btn.btn-outline:hover::before,
a.btn.btn-outline:hover::before,
button.btn.btn-outline:hover::before,
.btn.btn-outline:focus-visible::before,
.header-cta.btn-primary:hover::before,
.header-cta.btn-primary:focus-visible::before{
  transform:scaleX(1);
  opacity:1;
}

.btn.btn-primary:not(.header-cta):hover,
a.btn.btn-primary:not(.header-cta):hover,
button.btn.btn-primary:not(.header-cta):hover,
.btn.btn-outline:hover,
a.btn.btn-outline:hover,
button.btn.btn-outline:hover,
.header-cta.btn-primary:hover{
  border-color:transparent !important;
}

.btn.btn-primary:not(.header-cta) > *,
a.btn.btn-primary:not(.header-cta) > *,
button.btn.btn-primary:not(.header-cta) > *,
.btn.btn-outline > *,
a.btn.btn-outline > *,
button.btn.btn-outline > *,
.header-cta.btn-primary > *{
  position:relative;
  z-index:2;
}

/* v39-23 - Tienda online dinámica por categorías WooCommerce */
.home-shop-showcase{
  background:linear-gradient(180deg,#f7faff 0%,#fff 100%);
}
.home-shop-showcase__head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:28px;
  margin-bottom:30px;
}
.home-shop-showcase__head .section-head{
  max-width:720px;
}
.home-shop-showcase__head .btn{
  flex:0 0 auto;
}
.home-shop-showcase__layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) 360px;
  gap:26px;
  align-items:start;
}
.home-shop-products-panel,
.home-shop-categories{
  background:#fff;
  border:1px solid rgba(23,59,108,.10);
  border-radius:5px;
  box-shadow:0 18px 42px rgba(12,34,64,.07);
}
.home-shop-products-panel{
  padding:24px;
  min-height:560px;
}
.home-shop-products-panel__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding-bottom:18px;
  margin-bottom:22px;
  border-bottom:1px solid rgba(23,59,108,.08);
}
.home-shop-products-panel__head span,
.home-shop-categories__head span{
  display:block;
  color:#607794;
  font-family:'Poppins',sans-serif;
  font-size:12px;
  font-weight:500;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin-bottom:6px;
}
.home-shop-products-panel__head h3{
  margin:0;
  color:var(--blue-950);
  font-family:'Gilroy','Poppins',sans-serif;
  font-size:28px;
  line-height:1.05;
  font-weight:600;
  letter-spacing:-.03em;
}
.home-shop-products-panel__link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:10px 16px;
  border:1px solid rgba(239,51,64,.90);
  border-radius:5px;
  color:#EF3340;
  font-family:'Poppins',sans-serif;
  font-size:13px;
  font-weight:600;
  white-space:nowrap;
  transition:background .22s ease,color .22s ease,border-color .22s ease,transform .22s ease;
}
.home-shop-products-panel__link:hover{
  background:#EF3340;
  color:#fff;
  border-color:#EF3340;
  transform:translateY(-1px);
}
.home-shop-products-grid{
  position:relative;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  min-height:420px;
  transition:opacity .2s ease;
}
.home-shop-showcase.is-loading .home-shop-products-grid{
  opacity:.45;
  pointer-events:none;
}
.home-shop-showcase.is-loading .home-shop-products-grid::after{
  content:"Cargando productos...";
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  color:var(--blue-800);
  font-family:'Poppins',sans-serif;
  font-size:14px;
  font-weight:600;
}
.home-shop-product-card{
  display:flex;
  flex-direction:column;
  min-height:100%;
  overflow:hidden;
  background:#fff;
  border:1px solid rgba(23,59,108,.10);
  border-radius:5px;
  box-shadow:0 12px 26px rgba(12,34,64,.045);
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
.home-shop-product-card:hover{
  transform:translateY(-3px);
  border-color:rgba(23,59,108,.20);
  box-shadow:0 20px 38px rgba(12,34,64,.10);
}
.home-shop-product-card__image{
  display:flex;
  align-items:center;
  justify-content:center;
  height:178px;
  padding:18px;
  background:linear-gradient(180deg,#f8fbff,#fff);
  border-bottom:1px solid rgba(23,59,108,.08);
}
.home-shop-product-card__image img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}
.home-shop-product-card__body{
  display:flex;
  flex-direction:column;
  flex:1 1 auto;
  padding:18px;
}
.home-shop-product-card__cat{
  width:fit-content;
  margin-bottom:10px;
  color:var(--blue-800);
  font-family:'Poppins',sans-serif;
  font-size:11px;
  font-weight:600;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.home-shop-product-card h3{
  margin:0 0 10px;
  color:var(--blue-950);
  font-family:'Gilroy','Poppins',sans-serif;
  font-size:18px;
  line-height:1.18;
  font-weight:600;
  letter-spacing:-.02em;
}
.home-shop-product-card h3 a{
  color:inherit;
}
.home-shop-product-card__meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px 12px;
  margin-bottom:12px;
  color:#607794;
  font-family:'Poppins',sans-serif;
  font-size:12px;
  line-height:1.35;
  font-weight:400;
}
.home-shop-product-card__price{
  margin-top:auto;
  color:var(--blue-800);
  font-family:'Poppins',sans-serif;
  font-size:16px;
  font-weight:600;
}
.home-shop-product-card__price del{
  color:#889ab0;
  font-size:13px;
  margin-right:5px;
}
.home-shop-product-card__price ins{
  text-decoration:none;
}
.home-shop-product-card__actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-top:16px;
}
.home-shop-product-card__detail,
.home-shop-product-card__cart,
.home-shop-product-card__actions .button{
  min-height:40px;
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  padding:10px 12px !important;
  border-radius:5px !important;
  font-family:'Poppins',sans-serif !important;
  font-size:12.5px !important;
  font-weight:600 !important;
  line-height:1 !important;
  text-align:center;
  box-shadow:none !important;
}
.home-shop-product-card__detail{
  color:var(--blue-800);
  background:#fff;
  border:1px solid rgba(23,59,108,.18);
}
.home-shop-product-card__cart,
.home-shop-product-card__actions .button{
  color:#EF3340 !important;
  background:#fff !important;
  border:1px solid #EF3340 !important;
}
.home-shop-product-card__detail:hover{
  color:#fff;
  background:var(--blue-800);
  border-color:var(--blue-800);
}
.home-shop-product-card__cart:hover,
.home-shop-product-card__actions .button:hover{
  color:#fff !important;
  background:#EF3340 !important;
  border-color:#EF3340 !important;
}
.home-shop-categories{
  position:sticky;
  top:calc(var(--header-h) + 24px);
  padding:22px;
}
.home-shop-categories__head{
  margin-bottom:18px;
}
.home-shop-categories__head strong{
  display:block;
  color:var(--blue-950);
  font-family:'Gilroy','Poppins',sans-serif;
  font-size:24px;
  line-height:1.1;
  font-weight:600;
  letter-spacing:-.02em;
}
.home-shop-categories__list{
  display:grid;
  gap:10px;
}
.home-shop-category{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  min-height:68px;
  padding:15px 16px;
  background:#fff;
  border:1px solid rgba(23,59,108,.10);
  border-radius:5px;
  color:var(--blue-950);
  transition:background .22s ease,color .22s ease,border-color .22s ease,transform .22s ease,box-shadow .22s ease;
}
.home-shop-category:hover,
.home-shop-category.is-active{
  background:var(--blue-800);
  border-color:var(--blue-800);
  color:#fff;
  transform:translateY(-1px);
  box-shadow:0 14px 28px rgba(12,34,64,.14);
}
.home-shop-category__name{
  color:inherit;
  font-family:'Poppins',sans-serif;
  font-size:15px;
  line-height:1.25;
  font-weight:600;
}
.home-shop-category__count{
  flex:0 0 auto;
  color:#607794;
  font-family:'Poppins',sans-serif;
  font-size:12px;
  line-height:1;
  font-weight:500;
  white-space:nowrap;
}
.home-shop-category:hover .home-shop-category__count,
.home-shop-category.is-active .home-shop-category__count{
  color:rgba(255,255,255,.78);
}
.home-shop-category.is-active .home-shop-category__count::after{
  content:"";
  display:inline-block;
  width:7px;
  height:7px;
  margin-left:8px;
  border-radius:999px;
  background:var(--yellow);
  vertical-align:middle;
}
.home-shop-empty{
  grid-column:1 / -1;
  min-height:260px;
  display:grid;
  place-items:center;
  align-content:center;
  gap:8px;
  padding:28px;
  border:1px dashed rgba(23,59,108,.18);
  border-radius:5px;
  color:var(--blue-800);
  text-align:center;
}
.home-shop-empty strong{
  font-size:18px;
  color:var(--blue-950);
}
.home-shop-empty span{
  color:#607794;
  font-size:14px;
}

@media (max-width: 1180px){
  .home-shop-showcase__layout{
    grid-template-columns:1fr;
  }
  .home-shop-categories{
    position:relative;
    top:auto;
    order:-1;
  }
  .home-shop-categories__list{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width: 820px){
  .home-shop-showcase__head,
  .home-shop-products-panel__head{
    align-items:flex-start;
    flex-direction:column;
  }
  .home-shop-showcase__head .btn,
  .home-shop-products-panel__link{
    width:100%;
  }
  .home-shop-products-grid,
  .home-shop-categories__list{
    grid-template-columns:1fr;
  }
  .home-shop-products-panel,
  .home-shop-categories{
    padding:18px;
  }
  .home-shop-product-card__actions{
    grid-template-columns:1fr;
  }
}


/* v39-24 - Tienda online: estructura original + productos compactos en fila */
.home-shop-showcase__layout--compact{
  grid-template-columns:minmax(0,1fr) 380px !important;
  gap:34px !important;
  align-items:start !important;
}

.home-shop-main{
  min-width:0;
}

.home-shop-main .section-head{
  max-width:760px;
  margin-bottom:24px;
}

.home-shop-main .section-head h2{
  max-width:780px;
}

.home-shop-main__toolbar{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin:0 0 16px;
}

.home-shop-main__label{
  display:block;
  color:#607794;
  font-family:'Poppins',sans-serif;
  font-size:11px;
  font-weight:500;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin-bottom:5px;
}

.home-shop-main__toolbar h3{
  margin:0;
  color:var(--blue-950);
  font-family:'Gilroy','Poppins',sans-serif;
  font-size:24px;
  line-height:1.05;
  font-weight:600;
  letter-spacing:-.03em;
}

.home-shop-main__actions{
  display:flex;
  align-items:center;
  gap:10px;
  flex:0 0 auto;
}

.home-shop-main__actions .btn,
.home-shop-main__actions .home-shop-products-panel__link{
  min-height:40px;
  padding:10px 16px;
}

.home-shop-products-grid--compact{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:12px !important;
  min-height:0 !important;
}

.home-shop-products-grid--compact .home-shop-product-card{
  min-height:0;
  box-shadow:0 12px 24px rgba(12,34,64,.045);
}

.home-shop-products-grid--compact .home-shop-product-card__image{
  height:112px;
  padding:12px;
}

.home-shop-products-grid--compact .home-shop-product-card__body{
  padding:12px;
}

.home-shop-products-grid--compact .home-shop-product-card__cat{
  margin-bottom:7px;
  font-size:9.5px;
  line-height:1.2;
}

.home-shop-products-grid--compact .home-shop-product-card h3{
  min-height:34px;
  margin-bottom:8px;
  font-size:14px;
  line-height:1.2;
  letter-spacing:-.015em;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.home-shop-products-grid--compact .home-shop-product-card__meta{
  gap:6px;
  margin-bottom:8px;
  font-size:11px;
  line-height:1.25;
}

.home-shop-products-grid--compact .home-shop-product-card__meta span:nth-child(n+2){
  display:none;
}

.home-shop-products-grid--compact .home-shop-product-card__price{
  font-size:13.5px;
  line-height:1.25;
}

.home-shop-products-grid--compact .home-shop-product-card__price del{
  display:block;
  margin:0 0 2px;
  font-size:11px;
}

.home-shop-products-grid--compact .home-shop-product-card__actions{
  grid-template-columns:1fr 1fr;
  gap:6px;
  margin-top:10px;
}

.home-shop-products-grid--compact .home-shop-product-card__detail,
.home-shop-products-grid--compact .home-shop-product-card__cart,
.home-shop-products-grid--compact .home-shop-product-card__actions .button{
  min-height:34px;
  padding:8px 8px !important;
  font-size:11px !important;
}

.home-shop-categories--compact{
  padding:22px;
}

.home-shop-categories--compact .home-shop-category{
  min-height:74px;
  padding:17px 18px;
}

.home-shop-categories--compact .home-shop-category__name{
  font-size:16px;
}

.home-shop-categories--compact .home-shop-category__count{
  font-size:12px;
}

@media (max-width: 1240px){
  .home-shop-showcase__layout--compact{
    grid-template-columns:1fr !important;
  }
  .home-shop-categories--compact{
    position:relative;
    top:auto;
    order:-1;
  }
  .home-shop-products-grid--compact{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  }
}

@media (max-width: 980px){
  .home-shop-products-grid--compact{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .home-shop-main__toolbar{
    align-items:flex-start;
    flex-direction:column;
  }
  .home-shop-main__actions{
    width:100%;
  }
  .home-shop-main__actions .btn,
  .home-shop-main__actions .home-shop-products-panel__link{
    flex:1 1 0;
  }
}

@media (max-width: 640px){
  .home-shop-products-grid--compact,
  .home-shop-categories__list{
    grid-template-columns:1fr !important;
  }
  .home-shop-main__actions{
    flex-direction:column;
  }
  .home-shop-main__actions .btn,
  .home-shop-main__actions .home-shop-products-panel__link{
    width:100%;
  }
}

/* v39-25 - Tienda online rediseñada como bloque de descubrimiento, no tienda completa */
.home-shop-showcase--discovery{
  background:linear-gradient(180deg,#f6f9fd 0%,#eef4fb 100%) !important;
  overflow:hidden;
}
.home-shop-showcase--discovery .container{
  max-width:1180px;
}
.home-shop-discovery{
  display:grid;
  gap:24px;
}
.home-shop-discovery__intro{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:32px;
  align-items:end;
}
.home-shop-discovery__intro .section-head{
  max-width:720px;
  margin:0;
}
.home-shop-discovery__intro .section-head h2{
  max-width:720px;
  color:var(--blue-950);
  font-family:'Gilroy','Poppins',sans-serif;
  font-size:clamp(32px,3.2vw,46px);
  line-height:1.05;
  font-weight:600;
  letter-spacing:-.04em;
}
.home-shop-discovery__intro .section-head p{
  max-width:760px;
  color:#4d6485;
  font-family:'Poppins',sans-serif;
  font-size:17px;
  line-height:1.65;
  font-weight:400;
}
.home-shop-discovery__actions{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:12px;
  min-width:220px;
}
.home-shop-discovery__actions .btn{
  width:100%;
}
.home-shop-discovery__category-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:11px 16px;
  border:1px solid rgba(23,59,108,.16);
  background:rgba(255,255,255,.78);
  color:var(--blue-800);
  border-radius:5px;
  font-size:13px;
  font-weight:600;
  transition:background .25s ease,color .25s ease,border-color .25s ease,transform .25s ease;
}
.home-shop-discovery__category-link:hover{
  background:var(--blue-800);
  color:#fff;
  border-color:var(--blue-800);
  transform:translateY(-1px);
}
.home-shop-discovery__categories{
  padding:18px 18px;
  border:1px solid rgba(23,59,108,.10);
  background:rgba(255,255,255,.62);
  box-shadow:0 18px 36px rgba(12,34,64,.05);
  border-radius:5px;
}
.home-shop-discovery__label,
.home-shop-main__label{
  display:block;
  color:#5c7190;
  font-family:'Poppins',sans-serif;
  font-size:12px;
  line-height:1.2;
  font-weight:500;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin-bottom:10px;
}
.home-shop-tags{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.home-shop-tag{
  display:inline-flex;
  align-items:center;
  gap:9px;
  min-height:40px;
  padding:9px 13px;
  border:1px solid rgba(23,59,108,.14);
  background:#fff;
  color:var(--blue-800);
  border-radius:999px;
  font-family:'Poppins',sans-serif;
  font-size:14px;
  font-weight:500;
  box-shadow:none;
  transition:background .25s ease,color .25s ease,border-color .25s ease,transform .25s ease;
}
.home-shop-tag::before{
  content:"";
  width:7px;
  height:7px;
  border-radius:999px;
  background:var(--yellow);
  flex:0 0 7px;
}
.home-shop-tag small{
  display:inline-grid;
  place-items:center;
  min-width:22px;
  height:22px;
  padding:0 7px;
  border-radius:999px;
  background:rgba(23,59,108,.08);
  color:var(--blue-800);
  font-size:11px;
  font-weight:600;
}
.home-shop-tag:hover,
.home-shop-tag.is-active{
  background:var(--blue-800);
  color:#fff;
  border-color:var(--blue-800);
  transform:translateY(-1px);
}
.home-shop-tag:hover small,
.home-shop-tag.is-active small{
  background:rgba(255,255,255,.16);
  color:#fff;
}
.home-shop-tag--empty{
  border-radius:5px;
}
.home-shop-discovery__featured{
  padding:22px;
  border:1px solid rgba(23,59,108,.10);
  background:rgba(255,255,255,.72);
  box-shadow:0 20px 44px rgba(12,34,64,.06);
  border-radius:5px;
}
.home-shop-discovery__featured-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:24px;
  margin-bottom:18px;
}
.home-shop-discovery__featured-head h3{
  margin:0;
  color:var(--blue-950);
  font-family:'Gilroy','Poppins',sans-serif;
  font-size:28px;
  line-height:1.1;
  font-weight:600;
  letter-spacing:-.03em;
}
.home-shop-discovery__featured-head p{
  max-width:360px;
  margin:0;
  color:#5a7090;
  font-size:14px;
  line-height:1.45;
  font-weight:400;
  text-align:right;
}
.home-shop-showcase--discovery .home-shop-products-grid,
.home-shop-products-grid--discovery{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:14px !important;
}
.home-shop-products-grid--discovery .home-shop-product-card,
.home-shop-product-card--recommendation{
  display:grid !important;
  grid-template-rows:auto 1fr !important;
  min-height:0 !important;
  background:#fff !important;
  border:1px solid rgba(23,59,108,.10) !important;
  border-radius:5px !important;
  overflow:hidden !important;
  box-shadow:0 12px 26px rgba(12,34,64,.06) !important;
  transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease !important;
}
.home-shop-products-grid--discovery .home-shop-product-card:hover,
.home-shop-product-card--recommendation:hover{
  transform:translateY(-3px) !important;
  border-color:rgba(23,59,108,.20) !important;
  box-shadow:0 18px 34px rgba(12,34,64,.10) !important;
}
.home-shop-products-grid--discovery .home-shop-product-card__image,
.home-shop-product-card--recommendation .home-shop-product-card__image{
  height:118px !important;
  padding:12px !important;
  background:linear-gradient(180deg,#f7faff,#edf3fa) !important;
  border:0 !important;
  display:grid !important;
  place-items:center !important;
}
.home-shop-products-grid--discovery .home-shop-product-card__image img,
.home-shop-product-card--recommendation .home-shop-product-card__image img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  display:block !important;
}
.home-shop-products-grid--discovery .home-shop-product-card__body,
.home-shop-product-card--recommendation .home-shop-product-card__body{
  padding:14px !important;
  display:flex !important;
  flex-direction:column !important;
  gap:8px !important;
}
.home-shop-products-grid--discovery .home-shop-product-card__cat,
.home-shop-product-card--recommendation .home-shop-product-card__cat{
  display:inline-flex !important;
  width:fit-content !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  color:#667b99 !important;
  font-size:11px !important;
  line-height:1.2 !important;
  font-weight:500 !important;
  letter-spacing:.04em !important;
  text-transform:uppercase !important;
}
.home-shop-products-grid--discovery .home-shop-product-card h3,
.home-shop-product-card--recommendation h3{
  margin:0 !important;
  min-height:42px !important;
  color:var(--blue-950) !important;
  font-family:'Poppins',sans-serif !important;
  font-size:14px !important;
  line-height:1.25 !important;
  font-weight:600 !important;
  letter-spacing:-.01em !important;
}
.home-shop-products-grid--discovery .home-shop-product-card h3 a,
.home-shop-product-card--recommendation h3 a{
  color:inherit !important;
}
.home-shop-products-grid--discovery .home-shop-product-card__meta,
.home-shop-product-card--recommendation .home-shop-product-card__meta{
  display:flex !important;
  margin:0 !important;
  padding:0 !important;
  gap:0 !important;
  color:#5a7090 !important;
  font-size:12px !important;
  font-weight:400 !important;
}
.home-shop-products-grid--discovery .home-shop-product-card__detail,
.home-shop-product-card--recommendation .home-shop-product-card__detail{
  margin-top:auto !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:36px !important;
  padding:8px 10px !important;
  border:1px solid rgba(23,59,108,.16) !important;
  background:#fff !important;
  color:var(--blue-800) !important;
  border-radius:5px !important;
  font-size:12px !important;
  font-weight:600 !important;
  transition:background .25s ease,color .25s ease,border-color .25s ease !important;
}
.home-shop-products-grid--discovery .home-shop-product-card__detail:hover,
.home-shop-product-card--recommendation .home-shop-product-card__detail:hover{
  background:var(--blue-800) !important;
  color:#fff !important;
  border-color:var(--blue-800) !important;
}
.home-shop-showcase--discovery.is-loading .home-shop-products-grid{
  opacity:.45;
  pointer-events:none;
}
.home-shop-showcase--discovery.is-loading .home-shop-products-grid::after{
  display:none !important;
}
.home-shop-showcase--discovery .home-shop-empty{
  grid-column:1 / -1;
  min-height:140px;
  display:grid;
  place-items:center;
  text-align:center;
  background:#fff;
  border:1px dashed rgba(23,59,108,.20);
  border-radius:5px;
  color:var(--blue-800);
}
@media (max-width: 1120px){
  .home-shop-discovery__intro{
    grid-template-columns:1fr;
    align-items:start;
  }
  .home-shop-discovery__actions{
    flex-direction:row;
    min-width:0;
  }
  .home-shop-discovery__actions .btn,
  .home-shop-discovery__category-link{
    width:auto;
  }
  .home-shop-showcase--discovery .home-shop-products-grid,
  .home-shop-products-grid--discovery{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}
@media (max-width: 767px){
  .home-shop-discovery__intro .section-head h2{
    font-size:32px;
  }
  .home-shop-discovery__actions{
    flex-direction:column;
  }
  .home-shop-discovery__actions .btn,
  .home-shop-discovery__category-link{
    width:100%;
  }
  .home-shop-discovery__categories,
  .home-shop-discovery__featured{
    padding:16px;
  }
  .home-shop-discovery__featured-head{
    display:grid;
    gap:10px;
  }
  .home-shop-discovery__featured-head p{
    text-align:left;
    max-width:none;
  }
  .home-shop-showcase--discovery .home-shop-products-grid,
  .home-shop-products-grid--discovery{
    grid-template-columns:1fr !important;
  }
}

/* v39-26 - Tienda discovery: sin cabecera interna y cards sin superposición */
.home-shop-showcase--discovery .home-shop-discovery__featured-head{
  display:none !important;
}
.home-shop-showcase--discovery .home-shop-discovery__featured{
  padding:18px !important;
}
.home-shop-showcase--discovery .home-shop-products-grid,
.home-shop-products-grid--discovery{
  align-items:stretch !important;
  min-height:0 !important;
}
.home-shop-showcase--discovery .home-shop-product-card,
.home-shop-products-grid--discovery .home-shop-product-card,
.home-shop-product-card--recommendation{
  display:flex !important;
  flex-direction:column !important;
  height:100% !important;
  min-height:315px !important;
  position:relative !important;
  overflow:hidden !important;
}
.home-shop-showcase--discovery .home-shop-product-card__image,
.home-shop-products-grid--discovery .home-shop-product-card__image,
.home-shop-product-card--recommendation .home-shop-product-card__image{
  position:relative !important;
  z-index:1 !important;
  flex:0 0 138px !important;
  width:100% !important;
  height:138px !important;
  min-height:138px !important;
  max-height:138px !important;
  margin:0 !important;
  padding:12px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:linear-gradient(180deg,#f7faff,#edf3fa) !important;
  border-bottom:1px solid rgba(23,59,108,.08) !important;
  transform:none !important;
}
.home-shop-showcase--discovery .home-shop-product-card__image img,
.home-shop-products-grid--discovery .home-shop-product-card__image img,
.home-shop-product-card--recommendation .home-shop-product-card__image img{
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
  object-position:center !important;
  display:block !important;
  transform:none !important;
}
.home-shop-showcase--discovery .home-shop-product-card__body,
.home-shop-products-grid--discovery .home-shop-product-card__body,
.home-shop-product-card--recommendation .home-shop-product-card__body{
  position:relative !important;
  z-index:2 !important;
  inset:auto !important;
  top:auto !important;
  right:auto !important;
  bottom:auto !important;
  left:auto !important;
  transform:none !important;
  margin:0 !important;
  flex:1 1 auto !important;
  display:flex !important;
  flex-direction:column !important;
  padding:14px !important;
  background:#fff !important;
}
.home-shop-showcase--discovery .home-shop-product-card__cat,
.home-shop-products-grid--discovery .home-shop-product-card__cat,
.home-shop-product-card--recommendation .home-shop-product-card__cat{
  margin:0 0 8px !important;
  position:static !important;
  transform:none !important;
}
.home-shop-showcase--discovery .home-shop-product-card h3,
.home-shop-products-grid--discovery .home-shop-product-card h3,
.home-shop-product-card--recommendation h3{
  position:static !important;
  transform:none !important;
  margin:0 0 8px !important;
  min-height:42px !important;
  display:-webkit-box !important;
  -webkit-line-clamp:2 !important;
  -webkit-box-orient:vertical !important;
  overflow:hidden !important;
}
.home-shop-showcase--discovery .home-shop-product-card__meta,
.home-shop-products-grid--discovery .home-shop-product-card__meta,
.home-shop-product-card--recommendation .home-shop-product-card__meta{
  margin:0 0 10px !important;
  position:static !important;
  transform:none !important;
}
.home-shop-showcase--discovery .home-shop-product-card__detail,
.home-shop-products-grid--discovery .home-shop-product-card__detail,
.home-shop-product-card--recommendation .home-shop-product-card__detail{
  margin-top:auto !important;
}
@media (max-width: 1120px){
  .home-shop-showcase--discovery .home-shop-product-card,
  .home-shop-products-grid--discovery .home-shop-product-card,
  .home-shop-product-card--recommendation{
    min-height:300px !important;
  }
}

/* v39-27 - Categorías sin cantidad + animación solo de fondo en botones */
.home-shop-tag small{
  display:none !important;
}
.home-shop-tag{
  gap:8px !important;
  padding-right:14px !important;
}

/* Anula el pseudo-borde anterior: el borde debe quedarse fijo */
.btn.btn-primary:not(.header-cta)::before,
a.btn.btn-primary:not(.header-cta)::before,
button.btn.btn-primary:not(.header-cta)::before,
.btn.btn-outline::before,
a.btn.btn-outline::before,
button.btn.btn-outline::before,
.header-cta.btn-primary::before{
  content:none !important;
  display:none !important;
}

/* El movimiento ahora es únicamente del fondo, desde la izquierda */
.btn.btn-primary:not(.header-cta),
a.btn.btn-primary:not(.header-cta),
button.btn.btn-primary:not(.header-cta),
.tmx-add-cart,
.woocommerce .button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce a.button,
.woocommerce .checkout-button,
.woocommerce button[name="woocommerce_checkout_place_order"],
.woocommerce .single_add_to_cart_button{
  --tmx-btn-fill: var(--red);
  background-color:transparent !important;
  background-image:linear-gradient(90deg,var(--tmx-btn-fill),var(--tmx-btn-fill)) !important;
  background-repeat:no-repeat !important;
  background-position:left center !important;
  background-size:0% 100% !important;
  transition:background-size .46s cubic-bezier(.22,1,.36,1), color .22s ease, border-color .22s ease, box-shadow .22s ease, transform .22s ease !important;
}

.btn.btn-primary:not(.header-cta):hover,
a.btn.btn-primary:not(.header-cta):hover,
button.btn.btn-primary:not(.header-cta):hover,
.tmx-add-cart:hover,
.woocommerce .button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce a.button:hover,
.woocommerce .checkout-button:hover,
.woocommerce button[name="woocommerce_checkout_place_order"]:hover,
.woocommerce .single_add_to_cart_button:hover{
  background-color:transparent !important;
  background-image:linear-gradient(90deg,var(--tmx-btn-fill),var(--tmx-btn-fill)) !important;
  background-size:100% 100% !important;
  border-color:var(--red) !important;
  color:#fff !important;
}

.btn.btn-outline:not(.btn-solution),
a.btn.btn-outline:not(.btn-solution),
button.btn.btn-outline:not(.btn-solution){
  --tmx-btn-fill: var(--blue-800);
  background-color:transparent !important;
  background-image:linear-gradient(90deg,var(--tmx-btn-fill),var(--tmx-btn-fill)) !important;
  background-repeat:no-repeat !important;
  background-position:left center !important;
  background-size:0% 100% !important;
  transition:background-size .46s cubic-bezier(.22,1,.36,1), color .22s ease, border-color .22s ease, box-shadow .22s ease, transform .22s ease !important;
}

.btn.btn-outline:not(.btn-solution):hover,
a.btn.btn-outline:not(.btn-solution):hover,
button.btn.btn-outline:not(.btn-solution):hover{
  background-color:transparent !important;
  background-image:linear-gradient(90deg,var(--tmx-btn-fill),var(--tmx-btn-fill)) !important;
  background-size:100% 100% !important;
  border-color:var(--tmx-btn-fill) !important;
  color:#fff !important;
}

/* En fondos oscuros, los outline blancos se rellenan de blanco desde la izquierda */
.hero .btn-outline:not(.btn-solution):not(.tmx-cart-link),
.hero a.btn-outline:not(.btn-solution):not(.tmx-cart-link),
.cta-banner .btn-outline:not(.btn-solution):not(.tmx-cart-link),
.cta-banner a.btn-outline:not(.btn-solution):not(.tmx-cart-link),
.form-banner .btn-outline:not(.btn-solution):not(.tmx-cart-link),
.form-banner a.btn-outline:not(.btn-solution):not(.tmx-cart-link),
.form-card--dark .btn-outline:not(.btn-solution):not(.tmx-cart-link),
.glass-card .btn-outline:not(.btn-solution):not(.tmx-cart-link),
.service-card .btn-outline:not(.btn-solution):not(.tmx-cart-link),
.site-footer .btn-outline:not(.btn-solution):not(.tmx-cart-link),
.footer .btn-outline:not(.btn-solution):not(.tmx-cart-link),
.section-dark .btn-outline:not(.btn-solution):not(.tmx-cart-link),
.dark-section .btn-outline:not(.btn-solution):not(.tmx-cart-link),
.section-clients .btn-outline:not(.btn-solution):not(.tmx-cart-link),
.client-section .btn-outline:not(.btn-solution):not(.tmx-cart-link),
[class*="--dark"] .btn-outline:not(.btn-solution):not(.tmx-cart-link){
  --tmx-btn-fill:#fff;
  color:#fff !important;
  border-color:rgba(255,255,255,.88) !important;
}

.hero .btn-outline:not(.btn-solution):not(.tmx-cart-link):hover,
.hero a.btn-outline:not(.btn-solution):not(.tmx-cart-link):hover,
.cta-banner .btn-outline:not(.btn-solution):not(.tmx-cart-link):hover,
.form-banner .btn-outline:not(.btn-solution):not(.tmx-cart-link):hover,
.form-card--dark .btn-outline:not(.btn-solution):not(.tmx-cart-link):hover,
.glass-card .btn-outline:not(.btn-solution):not(.tmx-cart-link):hover,
.service-card .btn-outline:not(.btn-solution):not(.tmx-cart-link):hover,
.site-footer .btn-outline:not(.btn-solution):not(.tmx-cart-link):hover,
.footer .btn-outline:not(.btn-solution):not(.tmx-cart-link):hover,
.section-dark .btn-outline:not(.btn-solution):not(.tmx-cart-link):hover,
.dark-section .btn-outline:not(.btn-solution):not(.tmx-cart-link):hover,
.section-clients .btn-outline:not(.btn-solution):not(.tmx-cart-link):hover,
.client-section .btn-outline:not(.btn-solution):not(.tmx-cart-link):hover,
[class*="--dark"] .btn-outline:not(.btn-solution):not(.tmx-cart-link):hover{
  border-color:#fff !important;
  color:var(--blue-800) !important;
}

/* v39-28 - Animación de fondo más lenta y visible en botones outline/relleno */
.btn.btn-primary:not(.header-cta),
a.btn.btn-primary:not(.header-cta),
button.btn.btn-primary:not(.header-cta),
.tmx-add-cart,
.woocommerce .button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce a.button,
.woocommerce .checkout-button,
.woocommerce button[name="woocommerce_checkout_place_order"],
.woocommerce .single_add_to_cart_button,
.btn.btn-outline:not(.btn-solution),
a.btn.btn-outline:not(.btn-solution),
button.btn.btn-outline:not(.btn-solution){
  background-position:left center !important;
  background-size:0% 100% !important;
  transition:
    background-size .92s cubic-bezier(.42,0,.18,1) !important,
    color .28s ease !important,
    border-color .28s ease !important,
    box-shadow .28s ease !important,
    transform .28s ease !important;
}

.btn.btn-primary:not(.header-cta):hover,
a.btn.btn-primary:not(.header-cta):hover,
button.btn.btn-primary:not(.header-cta):hover,
.tmx-add-cart:hover,
.woocommerce .button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce a.button:hover,
.woocommerce .checkout-button:hover,
.woocommerce button[name="woocommerce_checkout_place_order"]:hover,
.woocommerce .single_add_to_cart_button:hover,
.btn.btn-outline:not(.btn-solution):hover,
a.btn.btn-outline:not(.btn-solution):hover,
button.btn.btn-outline:not(.btn-solution):hover{
  background-size:100% 100% !important;
}

@media (prefers-reduced-motion: reduce){
  .btn.btn-primary:not(.header-cta),
  a.btn.btn-primary:not(.header-cta),
  button.btn.btn-primary:not(.header-cta),
  .btn.btn-outline:not(.btn-solution),
  a.btn.btn-outline:not(.btn-solution),
  button.btn.btn-outline:not(.btn-solution){
    transition:none !important;
  }
}

/* v39-29 - Quitar puntos amarillos de categorías tienda */
.home-shop-tag{
  gap:0 !important;
}
.home-shop-tag::before,
.home-shop-category__count,
.home-shop-category.is-active .home-shop-category__count::after{
  display:none !important;
  content:none !important;
}

/* v39-30 - Nosotros: imagen igual al alto del contenido y sin métricas inferiores */
.hero--about-page .hero__inner--about-page{
  grid-template-columns:minmax(0,1fr) minmax(420px,520px);
  align-items:stretch !important;
  gap:64px;
}
.hero--about-page .hero__content{
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.hero--about-page .about-photo-card{
  align-self:stretch !important;
  display:flex;
  width:100%;
  min-height:100%;
  margin:0;
  background:transparent;
}
.hero--about-page .about-photo-card img{
  width:100%;
  height:100% !important;
  min-height:0 !important;
  object-fit:cover !important;
  object-position:center center !important;
}
.hero--about-page .metric-inline{
  display:none !important;
}
@media (max-width:1060px){
  .hero--about-page .hero__inner--about-page{
    grid-template-columns:1fr;
    gap:32px;
  }
  .hero--about-page .about-photo-card{
    min-height:360px;
  }
  .hero--about-page .about-photo-card img{
    min-height:360px !important;
  }
}
@media (max-width:820px){
  .hero--about-page .about-photo-card,
  .hero--about-page .about-photo-card img{
    min-height:260px !important;
  }
}

/* v39-31 - Nosotros: alternancia de fondos + proceso/equipo rediseñados */
#proceso-atencion.about-process-section{
  background:#fff !important;
  border-top:1px solid rgba(23,59,108,.06);
  border-bottom:1px solid rgba(23,59,108,.06);
}
#equipo.about-team-section{
  background:linear-gradient(180deg,#eef4fa 0%,#f8fbff 100%) !important;
  border-top:1px solid rgba(23,59,108,.07);
  border-bottom:1px solid rgba(23,59,108,.07);
}
#proceso-atencion .section-head h2,
#equipo .section-head h2{
  color:var(--blue-950);
  font-family:'Gilroy','Poppins',sans-serif;
  font-weight:600;
}
.about-process-grid,
.about-team-grid{
  align-items:stretch;
  gap:20px;
}
.about-process-grid > *,
.about-team-grid > *{
  height:100%;
}
.about-process-card,
.about-team-card{
  border-radius:5px !important;
}
.about-process-card{
  min-height:285px;
}
.about-team-card{
  min-height:255px;
}
.about-team-card h4{
  margin:0 0 12px;
  color:var(--blue-800);
  font-family:'Poppins',sans-serif;
  font-size:13px;
  line-height:1.25;
  font-weight:600;
}
.about-team-card:hover h4,
.about-team-card:focus-within h4{
  color:var(--blue-800) !important;
}
#equipo .sector-card__icon,
#proceso-atencion .rent-benefit-card__icon{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  color:var(--blue-800) !important;
}
#equipo .sector-card__icon svg,
#proceso-atencion .rent-benefit-card__icon svg{
  width:34px !important;
  height:34px !important;
}
#equipo .sector-card:hover,
#equipo .sector-card:focus-within,
#proceso-atencion .rent-benefit-card:hover,
#proceso-atencion .rent-benefit-card:focus-within{
  background:#fff !important;
  border-color:rgba(23,59,108,.10) !important;
  box-shadow:0 16px 32px rgba(12,34,64,.08) !important;
  transform:translateY(-2px) !important;
}
#equipo .sector-card:hover .sector-card__icon,
#equipo .sector-card:focus-within .sector-card__icon,
#proceso-atencion .rent-benefit-card:hover .rent-benefit-card__icon,
#proceso-atencion .rent-benefit-card:focus-within .rent-benefit-card__icon{
  color:var(--blue-800) !important;
  background:transparent !important;
}
#equipo .sector-card:hover h3,
#equipo .sector-card:focus-within h3,
#proceso-atencion .rent-benefit-card:hover h3,
#proceso-atencion .rent-benefit-card:focus-within h3{
  color:var(--blue-950) !important;
}
#equipo .sector-card:hover p,
#equipo .sector-card:focus-within p,
#proceso-atencion .rent-benefit-card:hover p,
#proceso-atencion .rent-benefit-card:focus-within p{
  color:#4D6485 !important;
}
#proceso-atencion .rent-benefit-card:hover .rent-benefit-card__number,
#proceso-atencion .rent-benefit-card:focus-within .rent-benefit-card__number{
  background:rgba(23,59,108,.06) !important;
  color:var(--blue-800) !important;
}
#equipo .sector-card:hover::before,
#equipo .sector-card:focus-within::before,
#proceso-atencion .rent-benefit-card:hover::before,
#proceso-atencion .rent-benefit-card:focus-within::before{
  width:86px !important;
  background:linear-gradient(90deg,var(--blue-800),#2E86FF) !important;
}
@media (max-width:1180px){
  .about-process-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width:820px){
  .about-process-grid,
  .about-team-grid{
    grid-template-columns:1fr;
  }
  .about-process-card,
  .about-team-card{
    min-height:auto;
  }
}

/* v39-32 - Nosotros: Misión / Visión / Enfoque en carrusel */
#valores .about-mvv-carousel{
  max-width:980px;
  margin:34px auto 28px;
  position:relative;
}
#valores .about-mvv-carousel__top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:14px;
}
#valores .about-mvv-carousel__counter{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:8px 12px;
  border:1px solid rgba(23,59,108,.12);
  background:#fff;
  color:var(--blue-800);
  border-radius:5px;
  font-family:'Poppins',sans-serif;
  font-size:12px;
  line-height:1;
  font-weight:600;
  letter-spacing:.08em;
}
#valores .about-mvv-carousel__controls{
  display:flex;
  align-items:center;
  gap:10px;
}
#valores .about-mvv-carousel__arrow{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:5px;
  border:1px solid rgba(23,59,108,.16);
  background:#fff;
  color:var(--blue-800);
  font-size:30px;
  line-height:1;
  font-weight:300;
  cursor:pointer;
  transition:background .25s ease,color .25s ease,border-color .25s ease,transform .25s ease,box-shadow .25s ease;
}
#valores .about-mvv-carousel__arrow:hover,
#valores .about-mvv-carousel__arrow:focus-visible{
  background:var(--blue-800);
  border-color:var(--blue-800);
  color:#fff;
  transform:translateY(-1px);
  box-shadow:0 14px 28px rgba(12,34,64,.14);
}
#valores .about-mvv-carousel__viewport{
  overflow:hidden;
  border-radius:5px;
}
#valores .about-mvv-carousel__track{
  display:flex;
  width:100%;
  transform:translateX(0);
  transition:transform .45s cubic-bezier(.22,.61,.36,1);
}
#valores .about-mvv-card{
  flex:0 0 100%;
  min-height:300px;
  display:grid;
  grid-template-columns:130px minmax(0,1fr);
  gap:28px;
  align-items:center;
  padding:38px 42px;
  background:#fff;
  border:1px solid rgba(23,59,108,.10);
  border-radius:5px;
  box-shadow:0 18px 38px rgba(12,34,64,.08);
}
#valores .about-mvv-card__number{
  width:96px;
  height:96px;
  display:grid;
  place-items:center;
  border-radius:5px;
  background:rgba(23,59,108,.06);
  color:var(--blue-800);
  font-family:'Gilroy','Poppins',sans-serif;
  font-size:34px;
  line-height:1;
  font-weight:600;
  letter-spacing:-.04em;
}
#valores .about-mvv-card h3{
  margin:0 0 10px;
  color:var(--blue-950);
  font-family:'Gilroy','Poppins',sans-serif;
  font-size:clamp(30px,3vw,46px);
  line-height:1;
  font-weight:600;
  letter-spacing:-.04em;
}
#valores .about-mvv-card h4{
  margin:0 0 18px;
  color:var(--blue-800);
  font-family:'Poppins',sans-serif;
  font-size:17px;
  line-height:1.35;
  font-weight:600;
}
#valores .about-mvv-card p{
  max-width:660px;
  margin:0;
  color:#4D6485;
  font-family:'Poppins',sans-serif;
  font-size:17px;
  line-height:1.65;
  font-weight:400;
}
#valores .about-mvv-carousel__dots{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:9px;
  margin-top:16px;
}
#valores .about-mvv-carousel__dots button{
  width:10px;
  height:10px;
  padding:0;
  border:0;
  border-radius:999px;
  background:rgba(23,59,108,.20);
  cursor:pointer;
  transition:width .25s ease,background .25s ease;
}
#valores .about-mvv-carousel__dots button.is-active{
  width:30px;
  background:var(--blue-800);
}
#valores .grid-gap-sm.top-space-sm{
  margin-top:28px !important;
}
@media (max-width:820px){
  #valores .about-mvv-carousel{
    margin-top:26px;
  }
  #valores .about-mvv-card{
    grid-template-columns:1fr;
    gap:18px;
    min-height:auto;
    padding:26px 22px;
  }
  #valores .about-mvv-card__number{
    width:64px;
    height:64px;
    font-size:22px;
  }
  #valores .about-mvv-card h3{
    font-size:32px;
  }
  #valores .about-mvv-card p{
    font-size:15.5px;
  }
}

/* v39-33 - Nosotros: refinamiento Por qué TECNIMAX */
.about-why-section{
  position:relative;
  overflow:hidden;
  background:linear-gradient(180deg,#fff 0%,rgba(232,237,243,.42) 100%);
  border-top:1px solid rgba(23,59,108,.07);
}
.about-why-section::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 50% 0%,rgba(46,134,255,.10),transparent 34rem);
  pointer-events:none;
}
.about-why-section .container{
  position:relative;
  z-index:1;
}
.about-why-section .section-head{
  margin-bottom:38px;
}
.about-why-section .section-head h2{
  max-width:760px;
  margin-inline:auto;
  color:var(--blue-950);
  font-weight:600;
}
.about-why-section .section-head p{
  max-width:720px;
  color:#516986;
  font-weight:400;
}
.about-why-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  max-width:1180px;
  margin:0 auto;
}
.about-why-card{
  position:relative;
  min-height:256px;
  display:flex;
  flex-direction:column;
  padding:28px 26px 26px;
  overflow:hidden;
  background:rgba(255,255,255,.94);
  border:1px solid rgba(23,59,108,.10);
  border-radius:5px;
  box-shadow:0 18px 36px rgba(12,34,64,.065);
  transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease,background .25s ease;
}
.about-why-card::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:4px;
  background:linear-gradient(90deg,var(--blue-800),#2E86FF);
  opacity:.92;
}
.about-why-card::after{
  content:"";
  position:absolute;
  right:-34px;
  bottom:-34px;
  width:118px;
  height:118px;
  border-radius:999px;
  background:rgba(23,59,108,.04);
  pointer-events:none;
}
.about-why-card:hover,
.about-why-card:focus-within{
  transform:translateY(-4px);
  border-color:rgba(23,59,108,.20);
  box-shadow:0 24px 48px rgba(12,34,64,.10);
  background:#fff;
}
.about-why-card__top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:24px;
}
.about-why-card__icon{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  color:var(--blue-800);
  background:transparent !important;
  box-shadow:none !important;
}
.about-why-card__icon svg{
  width:38px;
  height:38px;
  display:block;
  stroke:currentColor;
}
.about-why-card__number{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:42px;
  height:32px;
  padding:0 10px;
  border:1px solid rgba(23,59,108,.12);
  border-radius:999px;
  color:var(--blue-800);
  background:rgba(23,59,108,.035);
  font-family:'Poppins',sans-serif;
  font-size:12px;
  line-height:1;
  font-weight:600;
  letter-spacing:.05em;
}
.about-why-card h3{
  position:relative;
  z-index:1;
  margin:0 0 12px;
  color:var(--blue-950);
  font-family:'Gilroy','Poppins',sans-serif;
  font-size:23px;
  line-height:1.14;
  font-weight:600;
  letter-spacing:-.025em;
}
.about-why-card p{
  position:relative;
  z-index:1;
  margin:0;
  color:#4D6485;
  font-family:'Poppins',sans-serif;
  font-size:15.5px;
  line-height:1.62;
  font-weight:400;
}
@media (max-width:1060px){
  .about-why-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width:720px){
  .about-why-grid{
    grid-template-columns:1fr;
  }
  .about-why-card{
    min-height:auto;
    padding:24px 20px 22px;
  }
  .about-why-card__top{
    margin-bottom:18px;
  }
  .about-why-card h3{
    font-size:21px;
  }
  .about-why-card p{
    font-size:15px;
  }
}

/* =========================================================
   v39-35 - Contacto: formulario simplificado + mapa amplio
   ========================================================= */
.page-template-page-contacto #cotizacion .split-layout--form,
body.page-template-page-contacto #cotizacion .split-layout--form,
#cotizacion .split-layout--form{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:36px;
  align-items:stretch;
}

.contact-quote-head{
  max-width:640px;
  margin-bottom:28px;
}

.page-template-page-contacto .contact-quote-form,
.contact-quote-form{
  display:grid;
  gap:18px;
  padding:28px;
  border-radius:5px;
  border:1px solid rgba(23,59,108,.10);
  background:#fff;
  box-shadow:0 18px 38px rgba(12,34,64,.07);
}

.contact-form-stack{
  display:grid;
  gap:14px;
}

.contact-field-group{
  display:grid;
  gap:8px;
  margin:0;
}

.contact-field-group > span{
  display:block;
  color:var(--blue-800);
  font-family:'Poppins',sans-serif;
  font-size:11px;
  line-height:1.2;
  font-weight:600;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.contact-quote-form .field{
  min-height:52px;
  border-radius:5px;
  border-color:rgba(23,59,108,.14);
  color:var(--blue-950);
  font-family:'Poppins',sans-serif;
  font-size:14px;
  font-weight:400;
  background:#fff;
}

.contact-quote-form .field:focus{
  border-color:var(--blue-800);
  box-shadow:0 0 0 4px rgba(23,59,108,.08);
}

.contact-quote-form select.field{
  appearance:auto;
  color:#607794;
}

.contact-quote-form .btn{
  width:100%;
  min-height:52px;
  margin-top:2px;
}

.page-template-page-contacto .contact-side--map-only,
body.page-template-page-contacto .contact-side--map-only,
.split-layout--form > .contact-side--map-only{
  display:flex;
  align-self:stretch;
  margin-top:0;
}

.page-template-page-contacto .contact-info-card,
body.page-template-page-contacto .contact-info-card{
  display:none !important;
}

.contact-map-card--large{
  width:100%;
  height:100%;
  flex:1 1 auto;
  overflow:hidden;
  border-radius:5px;
  border:1px solid rgba(23,59,108,.10);
  background:#fff;
  box-shadow:0 18px 38px rgba(12,34,64,.07);
}

.contact-map-card--large iframe{
  width:100%;
  height:100%;
  min-height:100%;
  display:block;
  border:0;
}

@media (max-width:1060px){
  .page-template-page-contacto #cotizacion .split-layout--form,
  body.page-template-page-contacto #cotizacion .split-layout--form,
  #cotizacion .split-layout--form{
    grid-template-columns:1fr;
  }
  .page-template-page-contacto .contact-side--map-only,
  body.page-template-page-contacto .contact-side--map-only,
  .split-layout--form > .contact-side--map-only{
    margin-top:0;
  }
  .contact-map-card--large iframe{
    min-height:420px;
  }
}

@media (max-width:720px){
  .contact-quote-form{
    padding:20px;
  }
  .contact-map-card--large iframe{
    min-height:320px;
  }
}

/* =========================================================
   v39-36 - Contacto: canales con estructura de minicards home
   ========================================================= */
.page-template-page-contacto #canales.contact-channels-section,
body.page-template-page-contacto #canales.contact-channels-section,
#canales.contact-channels-section{
  background:#fff;
  border-top:1px solid rgba(23,59,108,.07);
  border-bottom:1px solid rgba(23,59,108,.07);
}

.contact-channel-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  align-items:stretch;
}

.contact-channel-card{
  position:relative;
  display:flex;
  align-items:flex-start;
  gap:18px;
  min-height:205px;
  padding:26px 24px;
  background:#fff;
  border:1px solid rgba(23,59,108,.10);
  border-radius:5px;
  box-shadow:0 16px 34px rgba(12,34,64,.07);
  color:var(--blue-800);
  overflow:hidden;
  transition:background .28s ease,color .28s ease,border-color .28s ease,box-shadow .28s ease,transform .28s ease;
}

.contact-channel-card:hover,
.contact-channel-card:focus-within{
  background:var(--blue-800);
  border-color:var(--blue-800);
  color:#fff;
  box-shadow:0 22px 44px rgba(12,34,64,.18);
  transform:translateY(-2px);
}

.contact-channel-card__icon{
  width:44px;
  height:44px;
  flex:0 0 44px;
  display:grid;
  place-items:center;
  color:var(--blue-800);
  background:transparent !important;
  border-radius:0 !important;
  box-shadow:none !important;
  transition:color .28s ease,transform .28s ease;
}

.contact-channel-card__icon svg{
  width:34px;
  height:34px;
  stroke:currentColor;
}

.contact-channel-card:hover .contact-channel-card__icon,
.contact-channel-card:focus-within .contact-channel-card__icon{
  color:#fff !important;
  transform:scale(1.04);
}

.contact-channel-card__body{
  display:grid;
  align-content:start;
  gap:10px;
  min-width:0;
}

.contact-channel-card__body h3{
  margin:0;
  color:var(--blue-950);
  font-family:'Gilroy','Poppins',sans-serif;
  font-size:21px;
  line-height:1.18;
  font-weight:600;
  letter-spacing:-.02em;
  transition:color .28s ease;
}

.contact-channel-card__body p{
  margin:0;
  color:#536985;
  font-family:'Poppins',sans-serif;
  font-size:15px;
  line-height:1.55;
  font-weight:400;
  transition:color .28s ease;
}

.contact-channel-card__link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  width:max-content;
  margin-top:12px;
  color:var(--blue-800);
  font-family:'Poppins',sans-serif;
  font-size:13px;
  line-height:1;
  font-weight:600;
  transition:color .28s ease,transform .28s ease;
}

.contact-channel-card__link::after{
  content:"→";
  transition:transform .25s ease;
}

.contact-channel-card__link:hover::after{
  transform:translateX(4px);
}

.contact-channel-card:hover h3,
.contact-channel-card:focus-within h3,
.contact-channel-card:hover p,
.contact-channel-card:focus-within p,
.contact-channel-card:hover .contact-channel-card__link,
.contact-channel-card:focus-within .contact-channel-card__link{
  color:#fff !important;
}

@media (max-width:1060px){
  .contact-channel-grid{
    grid-template-columns:1fr;
  }
  .contact-channel-card{
    min-height:auto;
  }
}

@media (max-width:640px){
  .contact-channel-card{
    padding:22px 18px;
    gap:14px;
  }
  .contact-channel-card__icon{
    width:38px;
    height:38px;
    flex-basis:38px;
  }
  .contact-channel-card__icon svg{
    width:30px;
    height:30px;
  }
}

/* =========================================================
   v39-37 - Contacto: proceso refinado
   ========================================================= */
#proceso.contact-process-section{
  background:linear-gradient(180deg,#eef4fa 0%,#f8fbff 100%) !important;
  border-top:1px solid rgba(23,59,108,.07);
  border-bottom:1px solid rgba(23,59,108,.07);
}

#proceso.contact-process-section .section-head p{
  max-width:680px;
  color:#516986;
  font-weight:400;
}

.contact-process-grid{
  position:relative;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
  align-items:stretch;
  max-width:1180px;
  margin:0 auto;
}

.contact-process-grid::before{
  content:"";
  position:absolute;
  left:42px;
  right:42px;
  top:54px;
  height:1px;
  background:linear-gradient(90deg,rgba(244,180,0,.20),rgba(23,59,108,.18),rgba(244,180,0,.20));
  pointer-events:none;
}

.contact-process-card{
  position:relative;
  z-index:1;
  min-height:252px;
  display:flex;
  flex-direction:column;
  padding:28px 24px 26px;
  overflow:hidden;
  background:#fff;
  border:1px solid rgba(23,59,108,.10);
  border-radius:5px;
  box-shadow:0 18px 36px rgba(12,34,64,.065);
  transition:transform .26s ease,border-color .26s ease,box-shadow .26s ease,background .26s ease;
}

.contact-process-card::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:92px;
  height:4px;
  background:linear-gradient(90deg,var(--blue-800),#2E86FF);
  transition:width .32s ease;
}

.contact-process-card::after{
  content:"";
  position:absolute;
  right:-34px;
  bottom:-34px;
  width:118px;
  height:118px;
  border-radius:999px;
  background:rgba(23,59,108,.04);
  pointer-events:none;
}

.contact-process-card:hover,
.contact-process-card:focus-within{
  transform:translateY(-4px);
  border-color:rgba(23,59,108,.20);
  box-shadow:0 24px 48px rgba(12,34,64,.10);
  background:#fff;
}

.contact-process-card:hover::before,
.contact-process-card:focus-within::before{
  width:100%;
}

.contact-process-card__top{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-bottom:30px;
}

.contact-process-card__number{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:44px;
  height:32px;
  padding:0 12px;
  border:1px solid rgba(23,59,108,.12);
  border-radius:999px;
  color:var(--blue-800);
  background:rgba(23,59,108,.045);
  font-family:'Poppins',sans-serif;
  font-size:12px;
  line-height:1;
  font-weight:700;
  letter-spacing:.05em;
  transition:background .25s ease,color .25s ease,border-color .25s ease;
}

.contact-process-card:hover .contact-process-card__number,
.contact-process-card:focus-within .contact-process-card__number{
  background:var(--blue-800);
  border-color:var(--blue-800);
  color:#fff;
}

.contact-process-card__icon{
  width:52px;
  height:52px;
  flex:0 0 52px;
  display:grid;
  place-items:center;
  color:var(--blue-800);
  background:transparent !important;
  box-shadow:none !important;
}

.contact-process-card__icon svg{
  width:40px;
  height:40px;
  display:block;
  stroke:currentColor;
}

.contact-process-card h3{
  position:relative;
  z-index:1;
  margin:0 0 14px;
  color:var(--blue-950);
  font-family:'Gilroy','Poppins',sans-serif;
  font-size:22px;
  line-height:1.14;
  font-weight:600;
  letter-spacing:-.025em;
}

.contact-process-card p{
  position:relative;
  z-index:1;
  margin:0;
  color:#4D6485;
  font-family:'Poppins',sans-serif;
  font-size:15px;
  line-height:1.62;
  font-weight:400;
}

@media (max-width:1180px){
  .contact-process-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .contact-process-grid::before{
    display:none;
  }
}

@media (max-width:720px){
  .contact-process-grid{
    grid-template-columns:1fr;
  }
  .contact-process-card{
    min-height:auto;
    padding:24px 20px;
  }
  .contact-process-card__top{
    margin-bottom:22px;
  }
  .contact-process-card h3{
    font-size:20px;
  }
}

/* =========================================================
   v39-39 - Tienda directa con subnavbar de categorías
   ========================================================= */
.tmx-store-page{
  background:#fff;
}
.tmx-store-subnav{
  position:sticky;
  top:var(--header-h,82px);
  z-index:42;
  width:100%;
  background:#0b0f0d;
  border-top:1px solid rgba(255,255,255,.04);
  border-bottom:1px solid rgba(255,255,255,.08);
  box-shadow:0 18px 34px rgba(6,25,47,.12);
}
.admin-bar .tmx-store-subnav{
  top:calc(var(--header-h,82px) + 32px);
}
.tmx-store-subnav__inner{
  width:min(1126px,calc(100% - 48px));
  min-height:58px;
  margin:0 auto;
  display:flex;
  align-items:center;
  gap:16px;
  color:#fff;
}
.tmx-store-subnav__menu,
.tmx-store-subnav__link{
  min-height:58px;
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:#fff;
  font-family:'Poppins',sans-serif;
  font-size:14px;
  line-height:1;
  font-weight:400;
  white-space:nowrap;
  opacity:.94;
  transition:color .22s ease,opacity .22s ease,background .22s ease;
}
.tmx-store-subnav__menu:hover,
.tmx-store-subnav__link:hover,
.tmx-store-subnav__menu.is-active,
.tmx-store-subnav__link.is-active{
  color:#fff;
  opacity:1;
}
.tmx-store-subnav__menu.is-active,
.tmx-store-subnav__link.is-active{
  font-weight:600;
}
.tmx-store-subnav__hamb{
  width:22px;
  height:18px;
  display:grid;
  align-content:space-between;
  flex:0 0 22px;
}
.tmx-store-subnav__hamb span{
  display:block;
  height:2px;
  border-radius:999px;
  background:#fff;
}
.tmx-store-subnav__scroll{
  min-width:0;
  flex:1;
  display:flex;
  align-items:center;
  gap:0;
  overflow-x:auto;
  overflow-y:hidden;
  scrollbar-width:none;
}
.tmx-store-subnav__scroll::-webkit-scrollbar{
  display:none;
}
.tmx-store-subnav__link{
  position:relative;
  padding:0 18px;
}
.tmx-store-subnav__link + .tmx-store-subnav__link::before{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:1px;
  height:18px;
  background:rgba(244,180,0,.72);
  transform:translateY(-50%);
}
.tmx-store-subnav__icon{
  width:18px;
  height:18px;
  display:grid;
  place-items:center;
  color:#f4b400;
  flex:0 0 18px;
}
.tmx-store-subnav__icon svg{
  width:18px;
  height:18px;
  display:block;
}
.tmx-store-subnav__link.is-active .tmx-store-subnav__icon,
.tmx-store-subnav__link:hover .tmx-store-subnav__icon{
  color:#fff;
}
.tmx-store-catalog{
  padding:34px 0 72px;
  background:#fff;
}
.tmx-store-container{
  width:min(1126px,calc(100% - 48px));
  margin:0 auto;
}
.tmx-store-breadcrumb{
  display:flex;
  align-items:center;
  gap:12px;
  margin:2px 0 32px;
  color:#7c8da5;
  font-family:'Poppins',sans-serif;
  font-size:14px;
  font-weight:400;
}
.tmx-store-breadcrumb a{
  color:#5b6f8a;
}
.tmx-store-breadcrumb a:hover,
.tmx-store-breadcrumb strong{
  color:var(--blue-800);
  font-weight:500;
}
.tmx-store-controlbar{
  min-height:52px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-bottom:34px;
  padding:0 0 14px;
  border-bottom:1px solid rgba(23,59,108,.12);
}
.tmx-store-controlbar__count{
  color:#53687f;
  font-family:'Poppins',sans-serif;
  font-size:14px;
  font-weight:400;
}
.tmx-store-controlbar__right{
  display:flex;
  align-items:center;
  gap:24px;
}
.tmx-store-view-icons{
  display:flex;
  align-items:center;
  gap:10px;
}
.tmx-store-view-icons span{
  width:18px;
  height:18px;
  display:block;
  opacity:.45;
  background:
    linear-gradient(currentColor 0 0) left top/7px 7px no-repeat,
    linear-gradient(currentColor 0 0) right top/7px 7px no-repeat,
    linear-gradient(currentColor 0 0) left bottom/7px 7px no-repeat,
    linear-gradient(currentColor 0 0) right bottom/7px 7px no-repeat;
  color:#06192f;
}
.tmx-store-view-icons span:nth-child(1){
  opacity:.25;
  transform:scale(.92);
}
.tmx-store-view-icons span:nth-child(3){
  width:24px;
  background:
    linear-gradient(currentColor 0 0) 0 3px/22px 2px no-repeat,
    linear-gradient(currentColor 0 0) 0 8px/22px 2px no-repeat,
    linear-gradient(currentColor 0 0) 0 13px/22px 2px no-repeat;
  opacity:.32;
}
.tmx-store-view-icons span.is-active{
  opacity:1;
}
.tmx-store-sort-form label{
  display:flex;
  align-items:center;
  gap:12px;
  color:#53687f;
  font-family:'Poppins',sans-serif;
  font-size:14px;
  font-weight:400;
}
.tmx-store-sort-form select{
  min-width:190px;
  min-height:42px;
  padding:0 38px 0 14px;
  border:1px solid rgba(23,59,108,.14);
  border-radius:5px;
  background:#fff;
  color:var(--blue-800);
  font-family:'Poppins',sans-serif;
  font-size:14px;
  font-weight:500;
}
.tmx-store-product-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:30px;
}
.tmx-store-product-card{
  position:relative;
  display:flex;
  flex-direction:column;
  min-height:100%;
  background:#fff;
  border:1px solid rgba(23,59,108,.14);
  border-radius:0;
  overflow:hidden;
  box-shadow:none;
  transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease;
}
.tmx-store-product-card:hover{
  transform:translateY(-4px);
  border-color:rgba(23,59,108,.24);
  box-shadow:0 24px 48px rgba(12,34,64,.10);
}
.tmx-store-product-card__image{
  position:relative;
  min-height:310px;
  display:grid;
  place-items:center;
  padding:32px 28px 24px;
  background:#fff;
}
.tmx-store-product-card__image img{
  width:100%;
  height:250px;
  object-fit:contain;
  display:block;
  transition:transform .32s ease;
}
.tmx-store-product-card:hover .tmx-store-product-card__image img{
  transform:scale(1.035);
}
.tmx-store-product-card__badge{
  position:absolute;
  left:18px;
  top:18px;
  z-index:2;
  padding:7px 10px;
  background:#ef3340;
  color:#fff;
  border-radius:5px;
  font-size:11px;
  line-height:1;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.tmx-store-product-card__body{
  display:flex;
  flex-direction:column;
  flex:1;
  padding:0 28px 28px;
}
.tmx-store-product-card__topline{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}
.tmx-store-product-card__cat,
.tmx-store-product-card__stock{
  color:#61748f;
  font-family:'Poppins',sans-serif;
  font-size:11px;
  line-height:1;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.055em;
}
.tmx-store-product-card__stock{
  color:#173B6C;
  text-transform:none;
  letter-spacing:0;
  font-size:12px;
  font-weight:500;
}
.tmx-store-product-card__rating{
  margin-bottom:12px;
  color:#f4b400;
  font-size:15px;
  letter-spacing:.08em;
  line-height:1;
}
.tmx-store-product-card__title{
  margin:0 0 14px;
  color:#06192f;
  font-family:'Poppins',sans-serif;
  font-size:18px;
  line-height:1.35;
  font-weight:600;
  letter-spacing:-.02em;
}
.tmx-store-product-card__title a{
  color:inherit;
}
.tmx-store-product-card__title a:hover{
  color:var(--blue-800);
}
.tmx-store-product-card__price{
  margin-top:auto;
  color:#06192f;
  font-family:'Poppins',sans-serif;
  font-size:17px;
  font-weight:500;
  line-height:1.35;
}
.tmx-store-product-card__price del{
  color:#6f7f91;
  font-size:15px;
  font-weight:400;
  margin-right:8px;
}
.tmx-store-product-card__price ins{
  color:#ef3340;
  text-decoration:none;
  font-weight:600;
}
.tmx-store-product-card__price small{
  margin-left:4px;
  color:#61748f;
  font-size:12px;
  font-weight:400;
}
.tmx-store-product-card__actions{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-top:22px;
}
.woocommerce .tmx-store-product-card__actions .button,
.woocommerce .tmx-store-product-card__actions .tmx-store-add-cart,
.woocommerce .tmx-store-product-card__actions .tmx-store-detail-btn,
.tmx-store-product-card__actions .button,
.tmx-store-product-card__actions .tmx-store-add-cart,
.tmx-store-product-card__actions .tmx-store-detail-btn{
  position:relative !important;
  isolation:isolate;
  min-height:42px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden;
  padding:10px 12px !important;
  border-radius:5px !important;
  border:1px solid rgba(23,59,108,.18) !important;
  background:transparent !important;
  box-shadow:none !important;
  color:var(--blue-800) !important;
  font-family:'Poppins',sans-serif !important;
  font-size:12px !important;
  line-height:1.1 !important;
  font-weight:700 !important;
  text-align:center !important;
  transform:none !important;
  transition:color .42s ease,border-color .42s ease,transform .22s ease !important;
}
.woocommerce .tmx-store-product-card__actions .button::before,
.woocommerce .tmx-store-product-card__actions .tmx-store-add-cart::before,
.woocommerce .tmx-store-product-card__actions .tmx-store-detail-btn::before,
.tmx-store-product-card__actions .button::before,
.tmx-store-product-card__actions .tmx-store-add-cart::before,
.tmx-store-product-card__actions .tmx-store-detail-btn::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:var(--blue-800);
  transform:scaleX(0);
  transform-origin:left center;
  transition:transform .55s cubic-bezier(.22,1,.36,1);
}
.woocommerce .tmx-store-product-card__actions .button:hover,
.woocommerce .tmx-store-product-card__actions .tmx-store-add-cart:hover,
.woocommerce .tmx-store-product-card__actions .tmx-store-detail-btn:hover,
.tmx-store-product-card__actions .button:hover,
.tmx-store-product-card__actions .tmx-store-add-cart:hover,
.tmx-store-product-card__actions .tmx-store-detail-btn:hover{
  color:#fff !important;
  border-color:var(--blue-800) !important;
  transform:translateY(-1px) !important;
}
.woocommerce .tmx-store-product-card__actions .button:hover::before,
.woocommerce .tmx-store-product-card__actions .tmx-store-add-cart:hover::before,
.woocommerce .tmx-store-product-card__actions .tmx-store-detail-btn:hover::before,
.tmx-store-product-card__actions .button:hover::before,
.tmx-store-product-card__actions .tmx-store-add-cart:hover::before,
.tmx-store-product-card__actions .tmx-store-detail-btn:hover::before{
  transform:scaleX(1);
}
.woocommerce .tmx-store-product-card__actions .tmx-store-add-cart,
.tmx-store-product-card__actions .tmx-store-add-cart{
  border-color:#ef3340 !important;
  color:#ef3340 !important;
}
.woocommerce .tmx-store-product-card__actions .tmx-store-add-cart::before,
.tmx-store-product-card__actions .tmx-store-add-cart::before{
  background:#ef3340;
}
.woocommerce .tmx-store-product-card__actions .tmx-store-add-cart:hover,
.tmx-store-product-card__actions .tmx-store-add-cart:hover{
  border-color:#ef3340 !important;
  color:#fff !important;
}
.tmx-store-page .tmx-pagination{
  margin-top:42px;
}
.tmx-store-page .empty-state{
  border-radius:5px;
}

@media (max-width:1060px){
  .tmx-store-product-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .tmx-store-subnav__inner,
  .tmx-store-container{
    width:min(100% - 32px,1126px);
  }
  .admin-bar .tmx-store-subnav{
    top:calc(var(--header-h,82px) + 46px);
  }
}
@media (max-width:782px){
  .admin-bar .tmx-store-subnav{
    top:calc(var(--header-h,82px) + 46px);
  }
}
@media (max-width:760px){
  .tmx-store-subnav{
    top:var(--header-h,72px);
  }
  .tmx-store-subnav__inner{
    width:100%;
    padding-left:16px;
  }
  .tmx-store-subnav__menu span:last-child{
    display:none;
  }
  .tmx-store-subnav__link{
    padding:0 14px;
    font-size:13px;
  }
  .tmx-store-catalog{
    padding:24px 0 54px;
  }
  .tmx-store-container{
    width:calc(100% - 28px);
  }
  .tmx-store-breadcrumb{
    margin-bottom:18px;
    font-size:13px;
  }
  .tmx-store-controlbar{
    align-items:flex-start;
    flex-direction:column;
    margin-bottom:22px;
  }
  .tmx-store-controlbar__right{
    width:100%;
    justify-content:space-between;
    gap:14px;
  }
  .tmx-store-sort-form{
    flex:1;
  }
  .tmx-store-sort-form label{
    justify-content:flex-end;
  }
  .tmx-store-sort-form label span{
    display:none;
  }
  .tmx-store-sort-form select{
    width:100%;
    min-width:0;
  }
  .tmx-store-product-grid{
    grid-template-columns:1fr;
    gap:18px;
  }
  .tmx-store-product-card__image{
    min-height:250px;
  }
  .tmx-store-product-card__image img{
    height:200px;
  }
  .tmx-store-product-card__body{
    padding:0 20px 22px;
  }
  .tmx-store-product-card__actions{
    grid-template-columns:1fr;
  }
}

/* v39-40 - Ajustes tienda: subnavbar legible + IGV sin duplicado */
.tmx-store-subnav__hamb{
  display:none !important;
}
.tmx-store-subnav .tmx-store-subnav__menu,
.tmx-store-subnav .tmx-store-subnav__link,
.tmx-store-subnav .tmx-store-subnav__menu span,
.tmx-store-subnav .tmx-store-subnav__link span:not(.tmx-store-subnav__icon){
  color:rgba(255,255,255,.92) !important;
  opacity:1 !important;
}
.tmx-store-subnav .tmx-store-subnav__menu:hover,
.tmx-store-subnav .tmx-store-subnav__link:hover,
.tmx-store-subnav .tmx-store-subnav__menu.is-active,
.tmx-store-subnav .tmx-store-subnav__link.is-active,
.tmx-store-subnav .tmx-store-subnav__menu:hover span,
.tmx-store-subnav .tmx-store-subnav__link:hover span:not(.tmx-store-subnav__icon),
.tmx-store-subnav .tmx-store-subnav__menu.is-active span,
.tmx-store-subnav .tmx-store-subnav__link.is-active span:not(.tmx-store-subnav__icon){
  color:#fff !important;
  opacity:1 !important;
}
.tmx-store-subnav .tmx-store-subnav__icon{
  color:#f4b400 !important;
}
.tmx-store-subnav .tmx-store-subnav__link:hover .tmx-store-subnav__icon,
.tmx-store-subnav .tmx-store-subnav__link.is-active .tmx-store-subnav__icon{
  color:#f4b400 !important;
}
.tmx-store-product-card__price small{
  display:none !important;
}

/* v39-41 - Tienda: subnavbar pegada a la navbar principal al hacer scroll */
.tmx-store-subnav{
  top:var(--header-h,76px) !important;
}
.admin-bar .tmx-store-subnav{
  top:var(--header-h,76px) !important;
}
@media (max-width:820px){
  .tmx-store-subnav,
  .admin-bar .tmx-store-subnav{
    top:var(--header-h,68px) !important;
  }
}

/* v39-42 - Detalle de producto moderno */
.tmx-product-page--modern .tmx-product-modern-section{
  padding-top:40px;
  padding-bottom:56px;
}
.tmx-crumbs{
  display:flex;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;
  margin-bottom:30px;
  color:#5e7393;
  font-family:'Poppins',sans-serif;
  font-size:14px;
}
.tmx-crumbs a{
  color:#5e7393;
  text-decoration:none;
}
.tmx-crumbs span:last-child{
  color:#ff7f1e;
}
.tmx-product-modern{
  display:grid;
  grid-template-columns:minmax(0, 1.15fr) minmax(360px, .95fr);
  gap:54px;
  align-items:start;
}
.tmx-product-modern__gallery{
  display:grid;
  grid-template-columns:minmax(0,1fr) 112px;
  gap:20px;
}
.tmx-gallery-main{
  min-height:560px;
  border:1px solid rgba(18,40,77,.12);
  background:#fff;
  border-radius:10px;
  padding:28px;
  display:grid;
  place-items:center;
}
.tmx-gallery-main img{
  width:100%;
  height:100%;
  max-height:500px;
  object-fit:contain;
}
.tmx-gallery-thumbs{
  display:flex;
  flex-direction:column;
  gap:20px;
}
.tmx-gallery-thumb{
  width:100%;
  border:1px solid rgba(18,40,77,.12);
  background:#fff;
  border-radius:10px;
  padding:10px;
  min-height:110px;
  cursor:pointer;
  transition:border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.tmx-gallery-thumb img{
  width:100%;
  height:88px;
  object-fit:contain;
}
.tmx-gallery-thumb:hover,
.tmx-gallery-thumb.is-active{
  border-color:rgba(42,120,243,.45);
  box-shadow:0 12px 24px rgba(18,40,77,.10);
  transform:translateY(-1px);
}
.tmx-product-modern__summary h1{
  margin:0 0 14px;
  font-family:'Gilroy','Poppins',sans-serif;
  font-size:clamp(34px, 3vw, 54px);
  line-height:1.08;
  font-weight:600;
  color:#071d38;
}
.tmx-product-modern__rating{
  margin-bottom:20px;
}
.tmx-product-modern__rating .woocommerce-review-link{
  color:#5e7393;
  text-decoration:none;
  margin-left:8px;
}
.tmx-product-modern__price{
  margin-bottom:22px;
  font-family:'Gilroy','Poppins',sans-serif;
  font-size:38px;
  line-height:1;
  font-weight:600;
  color:#071d38;
}
.tmx-product-modern__price del{
  color:#8c9ab0;
  margin-right:10px;
  font-size:32px;
}
.tmx-product-modern__price ins{
  text-decoration:none;
}
.tmx-product-modern__excerpt,
.tmx-product-modern__excerpt p{
  color:#475d7b;
  font-family:'Poppins',sans-serif;
  font-size:18px;
  line-height:1.6;
}
.tmx-product-modern__excerpt{
  margin-bottom:24px;
}
.tmx-product-modern__meta{
  display:grid;
  gap:14px;
  margin-bottom:30px;
  color:#475d7b;
  font-family:'Poppins',sans-serif;
  font-size:16px;
  line-height:1.5;
}
.tmx-product-modern__meta strong{
  color:#071d38;
  font-weight:600;
}
.tmx-product-modern__meta a{
  color:#5e7393;
  text-decoration:none;
}
.tmx-product-modern__cart .quantity{
  margin-right:16px !important;
}
.tmx-product-modern__cart .quantity .qty{
  min-width:90px;
  height:50px;
  border:1px solid rgba(18,40,77,.15);
  border-radius:8px;
  text-align:center;
  font-size:18px;
}
.tmx-product-modern__cart .single_add_to_cart_button,
.tmx-product-modern__cart .button.alt{
  height:50px;
  padding:0 28px !important;
  border-radius:8px !important;
  background:#ff9918 !important;
  border:1px solid #ff9918 !important;
  color:#071d38 !important;
  font-family:'Gilroy','Poppins',sans-serif !important;
  font-size:18px !important;
  font-weight:600 !important;
  letter-spacing:.08em;
  text-transform:uppercase;
  box-shadow:none !important;
}
.tmx-product-modern__cart .single_add_to_cart_button:hover,
.tmx-product-modern__cart .button.alt:hover{
  filter:brightness(.98);
}
.tmx-product-modern-tabs{
  margin-top:56px;
}
.tmx-product-modern-tabs .woocommerce-tabs .tabs{
  margin:0 0 28px !important;
  padding:0 !important;
  display:flex;
  gap:24px;
  flex-wrap:wrap;
  list-style:none;
  border:0 !important;
}
.tmx-product-modern-tabs .woocommerce-tabs .tabs::before,
.tmx-product-modern-tabs .woocommerce-tabs .tabs::after,
.tmx-product-modern-tabs .woocommerce-tabs ul.tabs::before,
.tmx-product-modern-tabs .woocommerce-tabs ul.tabs::after{
  display:none !important;
}
.tmx-product-modern-tabs .woocommerce-tabs .tabs li,
.tmx-product-modern-tabs .woocommerce-tabs ul.tabs li{
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  border-radius:0 !important;
}
.tmx-product-modern-tabs .woocommerce-tabs .tabs li::before,
.tmx-product-modern-tabs .woocommerce-tabs .tabs li::after,
.tmx-product-modern-tabs .woocommerce-tabs ul.tabs li::before,
.tmx-product-modern-tabs .woocommerce-tabs ul.tabs li::after{
  display:none !important;
}
.tmx-product-modern-tabs .woocommerce-tabs .tabs li a,
.tmx-product-modern-tabs .woocommerce-tabs ul.tabs li a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:58px;
  padding:0 34px !important;
  border:1px solid rgba(18,40,77,.12);
  border-radius:0;
  background:#fff;
  color:#071d38 !important;
  font-family:'Gilroy','Poppins',sans-serif;
  font-size:20px;
  font-weight:600 !important;
  text-transform:uppercase;
}
.tmx-product-modern-tabs .woocommerce-tabs .tabs li.active a,
.tmx-product-modern-tabs .woocommerce-tabs ul.tabs li.active a{
  background:#ff9918;
  border-color:#ff9918;
  color:#fff !important;
}
.tmx-product-modern-tabs .woocommerce-Tabs-panel{
  padding-top:8px;
  color:#475d7b;
  font-family:'Poppins',sans-serif;
  font-size:17px;
  line-height:1.7;
}
.tmx-product-modern-tabs .shop_attributes{
  border-collapse:collapse;
  width:100%;
}
.tmx-product-modern-tabs .shop_attributes th,
.tmx-product-modern-tabs .shop_attributes td{
  padding:12px 16px;
  border:1px solid rgba(18,40,77,.08);
}
.tmx-product-modern-related{
  margin-top:50px;
}
.tmx-product-modern-related > h2,
.tmx-product-modern-related .related > h2{
  margin:0 0 26px;
  font-family:'Gilroy','Poppins',sans-serif;
  font-size:28px;
  color:#071d38;
}
@media (max-width: 1100px){
  .tmx-product-modern{
    grid-template-columns:1fr;
    gap:36px;
  }
  .tmx-gallery-main{
    min-height:460px;
  }
}
@media (max-width: 767px){
  .tmx-product-page--modern .tmx-product-modern-section{
    padding-top:26px;
  }
  .tmx-product-modern__gallery{
    grid-template-columns:1fr;
  }
  .tmx-gallery-thumbs{
    flex-direction:row;
    overflow:auto;
    padding-bottom:4px;
  }
  .tmx-gallery-thumb{
    min-width:94px;
    min-height:94px;
  }
  .tmx-gallery-main{
    min-height:320px;
    padding:18px;
  }
  .tmx-product-modern__summary h1{
    font-size:clamp(28px, 8vw, 40px);
  }
  .tmx-product-modern__price{
    font-size:30px;
  }
  .tmx-product-modern-tabs .woocommerce-tabs .tabs li a,
  .tmx-product-modern-tabs .woocommerce-tabs ul.tabs li a{
    min-height:50px;
    padding:0 20px !important;
    font-size:16px;
  }
}

/* v39-43 - Producto detalle: escala compacta y orden visual */
.tmx-product-page--modern{
  background:#f4f7fb;
}
.tmx-product-page--modern .tmx-product-modern-section{
  padding-top:28px !important;
  padding-bottom:48px !important;
}
.tmx-product-page--modern .tmx-product-modern-section > .container{
  max-width:1180px !important;
}
.tmx-product-page--modern .tmx-crumbs{
  margin-bottom:22px !important;
  font-size:13.5px !important;
}
.tmx-product-page--modern .tmx-product-modern{
  grid-template-columns:minmax(0, 1.02fr) minmax(360px, .88fr) !important;
  gap:34px !important;
  align-items:start !important;
}
.tmx-product-page--modern .tmx-product-modern__gallery{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 76px !important;
  gap:14px !important;
  align-items:start !important;
}
.tmx-product-page--modern .tmx-gallery-main{
  min-height:0 !important;
  height:500px !important;
  padding:24px !important;
  border-radius:8px !important;
  background:#fff !important;
  border:1px solid rgba(18,40,77,.12) !important;
  box-shadow:0 16px 36px rgba(12,34,64,.06) !important;
}
.tmx-product-page--modern .tmx-gallery-main img{
  width:100% !important;
  height:100% !important;
  max-height:430px !important;
  object-fit:contain !important;
}
.tmx-product-page--modern .tmx-gallery-thumbs{
  gap:12px !important;
}
.tmx-product-page--modern .tmx-gallery-thumb{
  min-height:76px !important;
  height:76px !important;
  padding:7px !important;
  border-radius:7px !important;
  background:#fff !important;
}
.tmx-product-page--modern .tmx-gallery-thumb img{
  height:60px !important;
  object-fit:contain !important;
}
.tmx-product-page--modern .tmx-product-modern__summary{
  padding:6px 0 0 !important;
}
.tmx-product-page--modern .tmx-product-modern__summary h1{
  margin:0 0 14px !important;
  max-width:540px !important;
  font-size:clamp(30px, 2.45vw, 42px) !important;
  line-height:1.1 !important;
  letter-spacing:-.035em !important;
  font-weight:600 !important;
  color:#071d38 !important;
}
.tmx-product-page--modern .tmx-product-modern__rating{
  margin:0 0 12px !important;
  min-height:0 !important;
}
.tmx-product-page--modern .tmx-product-modern__rating:empty{
  display:none !important;
}
.tmx-product-page--modern .tmx-product-modern__price{
  display:flex !important;
  align-items:baseline !important;
  gap:8px !important;
  margin:0 0 18px !important;
  font-family:'Gilroy','Poppins',sans-serif !important;
  font-size:30px !important;
  line-height:1.1 !important;
  font-weight:600 !important;
  color:#071d38 !important;
}
.tmx-product-page--modern .tmx-product-modern__price del{
  font-size:20px !important;
  color:#7c8da6 !important;
  opacity:1 !important;
}
.tmx-product-page--modern .tmx-product-modern__price ins{
  text-decoration:none !important;
}
.tmx-product-page--modern .tmx-product-modern__price small,
.tmx-product-page--modern .tmx-product-modern__price .woocommerce-Price-taxLabel,
.tmx-product-page--modern .tmx-product-modern__price .tax_label{
  font-size:16px !important;
  font-weight:500 !important;
  color:#445b7a !important;
}
.tmx-product-page--modern .tmx-product-modern__excerpt{
  margin:0 0 18px !important;
  padding:16px 18px !important;
  border-radius:8px !important;
  background:#fff !important;
  border:1px solid rgba(18,40,77,.10) !important;
}
.tmx-product-page--modern .tmx-product-modern__excerpt,
.tmx-product-page--modern .tmx-product-modern__excerpt p{
  font-size:15.5px !important;
  line-height:1.55 !important;
  font-weight:500 !important;
  color:#425a7a !important;
}
.tmx-product-page--modern .tmx-product-modern__excerpt p:last-child{
  margin-bottom:0 !important;
}
.tmx-product-page--modern .tmx-product-modern__meta{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:10px !important;
  margin:0 0 20px !important;
  font-size:14px !important;
  line-height:1.35 !important;
}
.tmx-product-page--modern .tmx-product-modern__meta div{
  padding:12px 14px !important;
  border-radius:8px !important;
  background:#fff !important;
  border:1px solid rgba(18,40,77,.10) !important;
  color:#4d6382 !important;
}
.tmx-product-page--modern .tmx-product-modern__meta div:nth-child(odd):last-child{
  grid-column:1 / -1 !important;
}
.tmx-product-page--modern .tmx-product-modern__meta strong{
  display:block !important;
  margin-bottom:3px !important;
  font-size:12px !important;
  letter-spacing:.05em !important;
  text-transform:uppercase !important;
  color:#071d38 !important;
}
.tmx-product-page--modern .tmx-product-modern__cart{
  margin-top:12px !important;
}
.tmx-product-page--modern .tmx-product-modern__cart form.cart{
  display:grid !important;
  grid-template-columns:112px minmax(190px, 1fr) !important;
  gap:12px !important;
  align-items:center !important;
  max-width:420px !important;
}
.tmx-product-page--modern .tmx-product-modern__cart form.cart::before,
.tmx-product-page--modern .tmx-product-modern__cart form.cart::after{
  display:none !important;
  content:none !important;
}
.tmx-product-page--modern .tmx-product-modern__cart .quantity{
  width:112px !important;
  margin:0 !important;
  float:none !important;
}
.tmx-product-page--modern .tmx-product-modern__cart .quantity .qty{
  width:112px !important;
  min-width:112px !important;
  height:48px !important;
  padding:0 10px !important;
  border-radius:8px !important;
  border:1px solid rgba(18,40,77,.16) !important;
  background:#fff !important;
  text-align:center !important;
  font-size:16px !important;
  font-weight:600 !important;
  color:#071d38 !important;
}
.tmx-product-page--modern .tmx-product-modern__cart .single_add_to_cart_button,
.tmx-product-page--modern .tmx-product-modern__cart .button.alt{
  width:100% !important;
  height:48px !important;
  min-height:48px !important;
  padding:0 20px !important;
  border-radius:8px !important;
  background:#ef3340 !important;
  border:1px solid #ef3340 !important;
  color:#fff !important;
  font-family:'Poppins',sans-serif !important;
  font-size:13px !important;
  font-weight:700 !important;
  letter-spacing:.04em !important;
  text-transform:uppercase !important;
  box-shadow:none !important;
}
.tmx-product-page--modern .tmx-product-modern__cart .single_add_to_cart_button:hover,
.tmx-product-page--modern .tmx-product-modern__cart .button.alt:hover{
  background:#c91f2b !important;
  border-color:#c91f2b !important;
  color:#fff !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs{
  margin-top:44px !important;
  padding-top:0 !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs{
  background:#fff !important;
  border:1px solid rgba(18,40,77,.10) !important;
  border-radius:8px !important;
  padding:22px !important;
  box-shadow:0 16px 36px rgba(12,34,64,.05) !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs .tabs,
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs ul.tabs{
  gap:10px !important;
  margin:0 0 18px !important;
  border-bottom:1px solid rgba(18,40,77,.08) !important;
  padding-bottom:14px !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs .tabs li a,
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs ul.tabs li a{
  min-height:42px !important;
  padding:0 18px !important;
  border-radius:8px !important;
  border:1px solid rgba(18,40,77,.12) !important;
  font-family:'Poppins',sans-serif !important;
  font-size:13px !important;
  font-weight:700 !important;
  letter-spacing:.04em !important;
  text-transform:uppercase !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs .tabs li.active a,
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs ul.tabs li.active a{
  background:#173B6C !important;
  border-color:#173B6C !important;
  color:#fff !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-Tabs-panel{
  padding:0 !important;
  font-size:15px !important;
  line-height:1.65 !important;
}
.tmx-product-page--modern .tmx-product-modern-related{
  margin-top:42px !important;
}
@media (max-width: 1180px){
  .tmx-product-page--modern .tmx-product-modern{
    grid-template-columns:1fr !important;
  }
  .tmx-product-page--modern .tmx-product-modern__gallery{
    max-width:760px !important;
  }
}
@media (max-width: 767px){
  .tmx-product-page--modern .tmx-product-modern-section > .container{
    padding-left:18px !important;
    padding-right:18px !important;
  }
  .tmx-product-page--modern .tmx-product-modern__gallery{
    grid-template-columns:1fr !important;
  }
  .tmx-product-page--modern .tmx-gallery-main{
    height:360px !important;
    padding:18px !important;
  }
  .tmx-product-page--modern .tmx-gallery-thumbs{
    flex-direction:row !important;
    overflow:auto !important;
  }
  .tmx-product-page--modern .tmx-gallery-thumb{
    width:76px !important;
    min-width:76px !important;
  }
  .tmx-product-page--modern .tmx-product-modern__summary h1{
    font-size:30px !important;
  }
  .tmx-product-page--modern .tmx-product-modern__meta{
    grid-template-columns:1fr !important;
  }
  .tmx-product-page--modern .tmx-product-modern__cart form.cart{
    grid-template-columns:1fr !important;
    max-width:none !important;
  }
  .tmx-product-page--modern .tmx-product-modern__cart .quantity,
  .tmx-product-page--modern .tmx-product-modern__cart .quantity .qty{
    width:100% !important;
    min-width:100% !important;
  }
}

/* v39-44 - Forzar detalle de producto al layout de referencia */
.tmx-product-page--modern{
  background:#fff !important;
}
.tmx-product-page--modern .tmx-product-modern-section{
  padding-top:34px !important;
  padding-bottom:54px !important;
}
.tmx-product-page--modern .tmx-product-modern-section > .container{
  max-width:1400px !important;
}
.tmx-product-page--modern .tmx-crumbs{
  margin-bottom:34px !important;
  color:#687b98 !important;
  font-size:15px !important;
}
.tmx-product-page--modern .tmx-crumbs a{ color:#687b98 !important; }
.tmx-product-page--modern .tmx-product-modern{
  grid-template-columns:minmax(0, 1.1fr) minmax(420px, .9fr) !important;
  gap:56px !important;
  align-items:start !important;
}
.tmx-product-page--modern .tmx-product-modern__gallery{
  grid-template-columns:minmax(0,1fr) 110px !important;
  gap:18px !important;
}
.tmx-product-page--modern .tmx-gallery-main{
  height:560px !important;
  min-height:560px !important;
  padding:32px !important;
  background:#fff !important;
  border:1px solid rgba(18,40,77,.12) !important;
  border-radius:8px !important;
  box-shadow:none !important;
}
.tmx-product-page--modern .tmx-gallery-main img{
  max-height:490px !important;
}
.tmx-product-page--modern .tmx-gallery-thumbs{
  gap:20px !important;
}
.tmx-product-page--modern .tmx-gallery-thumb{
  height:110px !important;
  min-height:110px !important;
  padding:10px !important;
  border-radius:8px !important;
  box-shadow:none !important;
}
.tmx-product-page--modern .tmx-gallery-thumb img{
  height:88px !important;
}
.tmx-product-page--modern .tmx-product-modern__summary{
  padding-top:4px !important;
}
.tmx-product-page--modern .tmx-product-modern__summary h1{
  margin:0 0 18px !important;
  max-width:620px !important;
  font-family:'Gilroy','Poppins',sans-serif !important;
  font-size:clamp(40px, 3.4vw, 58px) !important;
  line-height:1.05 !important;
  letter-spacing:-.04em !important;
  color:#071d38 !important;
}
.tmx-product-page--modern .tmx-product-modern__rating{
  margin:0 0 18px !important;
}
.tmx-product-page--modern .tmx-product-modern__rating .star-rating{
  margin-right:10px !important;
}
.tmx-product-page--modern .tmx-product-modern__rating .woocommerce-review-link{
  color:#6a778e !important;
  font-size:15px !important;
  text-decoration:none !important;
}
.tmx-product-page--modern .tmx-product-modern__price{
  gap:10px !important;
  margin:0 0 22px !important;
  font-size:40px !important;
  line-height:1.1 !important;
  color:#071d38 !important;
}
.tmx-product-page--modern .tmx-product-modern__price del{
  font-size:28px !important;
  color:#7f8ba0 !important;
}
.tmx-product-page--modern .tmx-product-modern__price small,
.tmx-product-page--modern .tmx-product-modern__price .woocommerce-Price-taxLabel,
.tmx-product-page--modern .tmx-product-modern__price .tax_label{
  font-size:18px !important;
  font-weight:600 !important;
  color:#071d38 !important;
}
.tmx-product-page--modern .tmx-product-modern__excerpt{
  margin:0 0 26px !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
}
.tmx-product-page--modern .tmx-product-modern__excerpt,
.tmx-product-page--modern .tmx-product-modern__excerpt p{
  color:#47586f !important;
  font-size:17px !important;
  line-height:1.75 !important;
  font-weight:400 !important;
}
.tmx-product-page--modern .tmx-product-modern__meta{
  display:block !important;
  margin:0 0 28px !important;
  color:#47586f !important;
  font-size:17px !important;
  line-height:1.7 !important;
}
.tmx-product-page--modern .tmx-product-modern__meta div{
  display:block !important;
  padding:0 !important;
  margin:0 0 12px !important;
  border:0 !important;
  background:transparent !important;
  border-radius:0 !important;
  color:#47586f !important;
}
.tmx-product-page--modern .tmx-product-modern__meta strong{
  display:inline !important;
  margin:0 !important;
  font-size:17px !important;
  text-transform:none !important;
  letter-spacing:0 !important;
  color:#071d38 !important;
}
.tmx-product-page--modern .tmx-product-modern__meta a{
  color:#687b98 !important;
}
.tmx-product-page--modern .tmx-product-modern__cart{
  margin-top:8px !important;
}
.tmx-product-page--modern .tmx-product-modern__cart form.cart{
  display:flex !important;
  align-items:center !important;
  gap:20px !important;
  max-width:none !important;
}
.tmx-product-page--modern .tmx-product-modern__cart .quantity{
  width:112px !important;
}
.tmx-product-page--modern .tmx-product-modern__cart .quantity .qty{
  width:112px !important;
  min-width:112px !important;
  height:50px !important;
  border-radius:6px !important;
  border:1px solid rgba(18,40,77,.12) !important;
  background:#fff !important;
  font-size:18px !important;
  font-weight:500 !important;
}
.tmx-product-page--modern .tmx-product-modern__cart .single_add_to_cart_button,
.tmx-product-page--modern .tmx-product-modern__cart .button.alt{
  width:auto !important;
  min-width:190px !important;
  height:50px !important;
  padding:0 28px !important;
  background:#ff9918 !important;
  border:1px solid #ff9918 !important;
  color:#071d38 !important;
  border-radius:6px !important;
  font-family:'Gilroy','Poppins',sans-serif !important;
  font-size:18px !important;
  font-weight:600 !important;
  letter-spacing:.06em !important;
  box-shadow:none !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs{
  margin-top:56px !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs{
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  padding:0 !important;
  box-shadow:none !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs .tabs,
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs ul.tabs{
  gap:14px !important;
  margin:0 0 30px !important;
  padding:0 !important;
  border:0 !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs .tabs li a,
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs ul.tabs li a{
  min-height:56px !important;
  padding:0 34px !important;
  background:#fff !important;
  border:1px solid rgba(18,40,77,.12) !important;
  border-radius:0 !important;
  color:#071d38 !important;
  font-family:'Gilroy','Poppins',sans-serif !important;
  font-size:18px !important;
  font-weight:600 !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs .tabs li.active a,
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs ul.tabs li.active a{
  background:#ff9918 !important;
  border-color:#ff9918 !important;
  color:#fff !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-Tabs-panel{
  padding:0 !important;
  color:#47586f !important;
  font-size:16px !important;
  line-height:1.8 !important;
}
.tmx-product-page--modern .tmx-product-modern-related{
  margin-top:56px !important;
}
@media (max-width: 1180px){
  .tmx-product-page--modern .tmx-product-modern{
    grid-template-columns:1fr !important;
    gap:36px !important;
  }
  .tmx-product-page--modern .tmx-product-modern__summary h1{
    max-width:none !important;
  }
}
@media (max-width: 767px){
  .tmx-product-page--modern .tmx-product-modern-section > .container{
    padding-left:18px !important;
    padding-right:18px !important;
  }
  .tmx-product-page--modern .tmx-crumbs{
    margin-bottom:24px !important;
  }
  .tmx-product-page--modern .tmx-product-modern__gallery{
    grid-template-columns:1fr !important;
  }
  .tmx-product-page--modern .tmx-gallery-main{
    height:360px !important;
    min-height:360px !important;
    padding:18px !important;
  }
  .tmx-product-page--modern .tmx-gallery-thumbs{
    flex-direction:row !important;
    gap:12px !important;
    overflow:auto !important;
  }
  .tmx-product-page--modern .tmx-gallery-thumb{
    width:82px !important;
    min-width:82px !important;
    height:82px !important;
    min-height:82px !important;
  }
  .tmx-product-page--modern .tmx-gallery-thumb img{
    height:60px !important;
  }
  .tmx-product-page--modern .tmx-product-modern__summary h1{
    font-size:34px !important;
  }
  .tmx-product-page--modern .tmx-product-modern__price{
    font-size:30px !important;
  }
  .tmx-product-page--modern .tmx-product-modern__cart form.cart{
    display:grid !important;
    grid-template-columns:1fr !important;
  }
  .tmx-product-page--modern .tmx-product-modern__cart .quantity,
  .tmx-product-page--modern .tmx-product-modern__cart .quantity .qty,
  .tmx-product-page--modern .tmx-product-modern__cart .single_add_to_cart_button{
    width:100% !important;
    min-width:100% !important;
  }
  .tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs .tabs li a,
  .tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs ul.tabs li a{
    min-height:48px !important;
    padding:0 20px !important;
    font-size:15px !important;
  }
}

/* =========================================================
   v39-45 - Producto individual final aprobado
   Layout tipo ecommerce premium, compacto y limpio
   ========================================================= */
.tmx-product-page--modern{
  --tmx-product-blue:#06192f;
  --tmx-product-muted:#5b6f8e;
  --tmx-product-line:#dbe3ee;
  --tmx-product-soft:#f8fafc;
  --tmx-product-accent:#F4B400;
  background:#fff !important;
}
.tmx-product-page--modern .tmx-woo-notices{
  max-width:1380px !important;
  margin:18px auto 0 !important;
  padding:0 24px !important;
}
.tmx-product-page--modern .tmx-product-modern-section{
  padding:34px 0 58px !important;
  background:#fff !important;
}
.tmx-product-page--modern .tmx-product-modern-section > .container{
  max-width:1380px !important;
  width:min(1380px, calc(100% - 64px)) !important;
  padding-left:0 !important;
  padding-right:0 !important;
}
.tmx-product-page--modern .tmx-crumbs{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  margin:0 0 30px !important;
  color:var(--tmx-product-muted) !important;
  font-family:'Poppins',sans-serif !important;
  font-size:14px !important;
  line-height:1.4 !important;
  font-weight:400 !important;
}
.tmx-product-page--modern .tmx-crumbs a{
  color:var(--tmx-product-muted) !important;
  text-decoration:none !important;
}
.tmx-product-page--modern .tmx-crumbs span:nth-child(2){
  color:#9aa7b8 !important;
}
.tmx-product-page--modern .tmx-crumbs span:last-child{
  color:#f58b12 !important;
}
.tmx-product-page--modern .tmx-product-modern{
  display:grid !important;
  grid-template-columns:minmax(600px, 650px) 128px minmax(440px, 1fr) !important;
  column-gap:34px !important;
  row-gap:0 !important;
  align-items:start !important;
}
.tmx-product-page--modern .tmx-product-modern__gallery{
  display:contents !important;
}
.tmx-product-page--modern .tmx-gallery-main{
  grid-column:1 !important;
  width:100% !important;
  height:560px !important;
  min-height:560px !important;
  padding:34px !important;
  display:grid !important;
  place-items:center !important;
  background:#fff !important;
  border:1px solid var(--tmx-product-line) !important;
  border-radius:6px !important;
  box-shadow:none !important;
  overflow:hidden !important;
}
.tmx-product-page--modern .tmx-gallery-main img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:492px !important;
  object-fit:contain !important;
  object-position:center !important;
}
.tmx-product-page--modern .tmx-gallery-thumbs{
  grid-column:2 !important;
  display:flex !important;
  flex-direction:column !important;
  gap:20px !important;
  width:128px !important;
}
.tmx-product-page--modern .tmx-gallery-thumb{
  width:128px !important;
  height:112px !important;
  min-width:128px !important;
  min-height:112px !important;
  padding:10px !important;
  display:grid !important;
  place-items:center !important;
  border:1px solid var(--tmx-product-line) !important;
  border-radius:6px !important;
  background:#fff !important;
  box-shadow:none !important;
  cursor:pointer !important;
  transform:none !important;
  transition:border-color .2s ease, box-shadow .2s ease !important;
}
.tmx-product-page--modern .tmx-gallery-thumb:hover,
.tmx-product-page--modern .tmx-gallery-thumb.is-active{
  border-color:#2E86FF !important;
  box-shadow:0 0 0 1px rgba(46,134,255,.18) !important;
}
.tmx-product-page--modern .tmx-gallery-thumb img{
  width:100% !important;
  height:88px !important;
  object-fit:contain !important;
  object-position:center !important;
}
.tmx-product-page--modern .tmx-product-modern__summary{
  grid-column:3 !important;
  padding:24px 0 0 0 !important;
  max-width:600px !important;
}
.tmx-product-page--modern .tmx-product-modern__summary h1{
  margin:0 0 18px !important;
  max-width:600px !important;
  color:var(--tmx-product-blue) !important;
  font-family:'Gilroy','Poppins',sans-serif !important;
  font-size:clamp(32px, 2.35vw, 42px) !important;
  line-height:1.18 !important;
  letter-spacing:-.035em !important;
  font-weight:600 !important;
}
.tmx-product-page--modern .tmx-product-modern__rating{
  display:flex !important;
  align-items:center !important;
  min-height:0 !important;
  margin:0 0 22px !important;
  color:var(--tmx-product-accent) !important;
  font-family:'Poppins',sans-serif !important;
  font-size:14px !important;
}
.tmx-product-page--modern .tmx-product-modern__rating:empty{
  display:none !important;
  margin:0 !important;
}
.tmx-product-page--modern .tmx-product-modern__rating .star-rating{
  float:none !important;
  margin:0 10px 0 0 !important;
  color:var(--tmx-product-accent) !important;
}
.tmx-product-page--modern .tmx-product-modern__rating .star-rating::before,
.tmx-product-page--modern .tmx-product-modern__rating .star-rating span::before{
  color:var(--tmx-product-accent) !important;
}
.tmx-product-page--modern .tmx-product-modern__rating .woocommerce-review-link{
  color:#6c7c91 !important;
  font-size:14px !important;
  font-weight:400 !important;
  text-decoration:none !important;
}
.tmx-product-page--modern .tmx-product-modern__price{
  display:flex !important;
  align-items:baseline !important;
  flex-wrap:wrap !important;
  gap:9px !important;
  margin:0 0 20px !important;
  color:var(--tmx-product-blue) !important;
  font-family:'Gilroy','Poppins',sans-serif !important;
  font-size:31px !important;
  line-height:1.15 !important;
  font-weight:600 !important;
  letter-spacing:-.02em !important;
}
.tmx-product-page--modern .tmx-product-modern__price .amount,
.tmx-product-page--modern .tmx-product-modern__price bdi{
  color:var(--tmx-product-blue) !important;
  font-weight:600 !important;
}
.tmx-product-page--modern .tmx-product-modern__price del{
  font-size:22px !important;
  color:#7f8ca2 !important;
  opacity:1 !important;
  font-weight:400 !important;
  margin:0 !important;
}
.tmx-product-page--modern .tmx-product-modern__price ins{
  text-decoration:none !important;
}
.tmx-product-page--modern .tmx-product-modern__price small,
.tmx-product-page--modern .tmx-product-modern__price .tax_label,
.tmx-product-page--modern .tmx-product-modern__price .woocommerce-Price-taxLabel{
  font-family:'Poppins',sans-serif !important;
  font-size:18px !important;
  line-height:1.2 !important;
  font-weight:500 !important;
  color:var(--tmx-product-blue) !important;
  letter-spacing:0 !important;
}
.tmx-product-page--modern .tmx-product-modern__excerpt{
  margin:0 0 26px !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  color:#53647b !important;
}
.tmx-product-page--modern .tmx-product-modern__excerpt,
.tmx-product-page--modern .tmx-product-modern__excerpt p{
  font-family:'Poppins',sans-serif !important;
  font-size:16px !important;
  line-height:1.72 !important;
  font-weight:400 !important;
  color:#53647b !important;
}
.tmx-product-page--modern .tmx-product-modern__excerpt p:last-child{
  margin-bottom:0 !important;
}
.tmx-product-page--modern .tmx-product-modern__meta{
  display:block !important;
  margin:0 0 28px !important;
  padding:0 !important;
  font-family:'Poppins',sans-serif !important;
  font-size:16px !important;
  line-height:1.45 !important;
  color:#53647b !important;
}
.tmx-product-page--modern .tmx-product-modern__meta div{
  display:block !important;
  margin:0 0 15px !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  color:#53647b !important;
}
.tmx-product-page--modern .tmx-product-modern__meta strong{
  display:inline !important;
  margin:0 !important;
  color:var(--tmx-product-blue) !important;
  font-family:'Poppins',sans-serif !important;
  font-size:16px !important;
  font-weight:700 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
}
.tmx-product-page--modern .tmx-product-modern__meta a{
  color:#52709a !important;
  text-decoration:none !important;
  font-weight:500 !important;
}
.tmx-product-page--modern .tmx-product-modern__cart{
  margin:0 0 22px !important;
}
.tmx-product-page--modern .tmx-product-modern__cart form.cart{
  display:flex !important;
  align-items:center !important;
  gap:20px !important;
  max-width:100% !important;
  margin:0 !important;
  padding:0 !important;
}
.tmx-product-page--modern .tmx-product-modern__cart form.cart::before,
.tmx-product-page--modern .tmx-product-modern__cart form.cart::after{
  display:none !important;
  content:none !important;
}
.tmx-product-page--modern .tmx-product-modern__cart .quantity{
  width:146px !important;
  height:56px !important;
  display:grid !important;
  grid-template-columns:40px 1fr 40px !important;
  align-items:center !important;
  margin:0 !important;
  float:none !important;
  border:1px solid var(--tmx-product-line) !important;
  border-radius:6px !important;
  background:#fff !important;
  overflow:hidden !important;
}
.tmx-product-page--modern .tmx-product-modern__cart .quantity .qty{
  width:100% !important;
  min-width:0 !important;
  height:54px !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  color:var(--tmx-product-blue) !important;
  text-align:center !important;
  font-family:'Poppins',sans-serif !important;
  font-size:18px !important;
  font-weight:500 !important;
  appearance:textfield !important;
  -moz-appearance:textfield !important;
}
.tmx-product-page--modern .tmx-product-modern__cart .quantity .qty::-webkit-outer-spin-button,
.tmx-product-page--modern .tmx-product-modern__cart .quantity .qty::-webkit-inner-spin-button{
  -webkit-appearance:none !important;
  margin:0 !important;
}
.tmx-product-page--modern .tmx-qty-btn{
  width:40px !important;
  height:54px !important;
  display:grid !important;
  place-items:center !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  color:#46566c !important;
  font-family:'Poppins',sans-serif !important;
  font-size:20px !important;
  font-weight:400 !important;
  cursor:pointer !important;
  line-height:1 !important;
}
.tmx-product-page--modern .tmx-qty-btn:hover{
  color:var(--tmx-product-blue) !important;
}
.tmx-product-page--modern .tmx-product-modern__cart .single_add_to_cart_button,
.tmx-product-page--modern .tmx-product-modern__cart .button.alt{
  width:300px !important;
  min-width:300px !important;
  height:56px !important;
  min-height:56px !important;
  margin:0 !important;
  padding:0 28px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:1px solid var(--tmx-product-accent) !important;
  border-radius:6px !important;
  background:var(--tmx-product-accent) !important;
  color:var(--tmx-product-blue) !important;
  font-family:'Gilroy','Poppins',sans-serif !important;
  font-size:18px !important;
  line-height:1 !important;
  font-weight:600 !important;
  letter-spacing:.025em !important;
  text-transform:uppercase !important;
  box-shadow:none !important;
  transition:filter .2s ease, transform .2s ease !important;
}
.tmx-product-page--modern .tmx-product-modern__cart .single_add_to_cart_button::before,
.tmx-product-page--modern .tmx-product-modern__cart .button.alt::before{
  content:"" !important;
  width:19px !important;
  height:19px !important;
  margin-right:10px !important;
  background:currentColor !important;
  mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="black" d="M7 18a2 2 0 1 0 0 4 2 2 0 0 0 0-4Zm10 0a2 2 0 1 0 .001 4A2 2 0 0 0 17 18ZM5.3 5l.44 2H21l-2 7.5a2 2 0 0 1-1.93 1.5H8.1a2 2 0 0 1-1.96-1.58L3.6 3H1V1h4.2l.1.45L5.3 5Zm.88 4 .95 4.58H17.1L18.3 9H6.18Z"/></svg>') center/contain no-repeat !important;
}
.tmx-product-page--modern .tmx-product-modern__cart .single_add_to_cart_button:hover,
.tmx-product-page--modern .tmx-product-modern__cart .button.alt:hover{
  filter:brightness(.96) !important;
  transform:translateY(-1px) !important;
}
.tmx-product-page--modern .tmx-product-modern__benefits{
  display:flex !important;
  align-items:center !important;
  flex-wrap:wrap !important;
  gap:30px !important;
  margin-top:8px !important;
  padding-top:20px !important;
  border-top:1px solid var(--tmx-product-line) !important;
  color:#43556d !important;
  font-family:'Poppins',sans-serif !important;
  font-size:14.5px !important;
  line-height:1.3 !important;
  font-weight:500 !important;
}
.tmx-product-page--modern .tmx-product-modern__benefits div{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  white-space:nowrap !important;
}
.tmx-product-page--modern .tmx-product-modern__benefits span{
  width:22px !important;
  height:22px !important;
  display:grid !important;
  place-items:center !important;
  color:var(--tmx-product-blue) !important;
  background:transparent !important;
}
.tmx-product-page--modern .tmx-product-modern__benefits svg{
  width:22px !important;
  height:22px !important;
  stroke:currentColor !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs{
  margin-top:74px !important;
  padding:0 !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs{
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs .tabs,
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs ul.tabs{
  display:flex !important;
  align-items:flex-end !important;
  gap:12px !important;
  margin:0 0 26px !important;
  padding:0 0 0 !important;
  list-style:none !important;
  border-bottom:1px solid var(--tmx-product-line) !important;
  flex-wrap:wrap !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs .tabs::before,
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs .tabs::after,
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs ul.tabs::before,
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs ul.tabs::after{
  display:none !important;
  content:none !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs .tabs li,
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs ul.tabs li{
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  border-radius:0 !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs .tabs li::before,
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs .tabs li::after,
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs ul.tabs li::before,
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs ul.tabs li::after{
  display:none !important;
  content:none !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs .tabs li a,
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs ul.tabs li a{
  min-height:56px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 34px !important;
  border:1px solid var(--tmx-product-line) !important;
  border-bottom:0 !important;
  border-radius:0 !important;
  background:#fff !important;
  color:var(--tmx-product-blue) !important;
  font-family:'Gilroy','Poppins',sans-serif !important;
  font-size:16px !important;
  line-height:1 !important;
  font-weight:600 !important;
  letter-spacing:.01em !important;
  text-transform:uppercase !important;
  text-decoration:none !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs .tabs li.active a,
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs ul.tabs li.active a{
  background:var(--tmx-product-accent) !important;
  border-color:var(--tmx-product-accent) !important;
  color:#fff !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-Tabs-panel{
  margin:0 !important;
  padding:0 0 8px !important;
  background:transparent !important;
  color:#59687c !important;
  font-family:'Poppins',sans-serif !important;
  font-size:16px !important;
  line-height:1.8 !important;
  font-weight:400 !important;
  max-width:960px !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-Tabs-panel h2:first-child{
  display:none !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-Tabs-panel p{
  color:#59687c !important;
  font-size:16px !important;
  line-height:1.8 !important;
}
.tmx-product-page--modern .tmx-product-modern-related{
  margin-top:64px !important;
}
@media (max-width: 1280px){
  .tmx-product-page--modern .tmx-product-modern-section > .container{
    width:min(1180px, calc(100% - 48px)) !important;
  }
  .tmx-product-page--modern .tmx-product-modern{
    grid-template-columns:minmax(480px, 1fr) 108px minmax(390px, .9fr) !important;
    column-gap:24px !important;
  }
  .tmx-product-page--modern .tmx-gallery-main{
    height:520px !important;
    min-height:520px !important;
  }
  .tmx-product-page--modern .tmx-gallery-thumbs,
  .tmx-product-page--modern .tmx-gallery-thumb{
    width:108px !important;
    min-width:108px !important;
  }
  .tmx-product-page--modern .tmx-product-modern__summary h1{
    font-size:clamp(30px, 2.25vw, 38px) !important;
  }
  .tmx-product-page--modern .tmx-product-modern__cart .single_add_to_cart_button,
  .tmx-product-page--modern .tmx-product-modern__cart .button.alt{
    width:260px !important;
    min-width:260px !important;
  }
}
@media (max-width: 1080px){
  .tmx-product-page--modern .tmx-product-modern{
    grid-template-columns:minmax(0, 1fr) 108px !important;
    row-gap:34px !important;
  }
  .tmx-product-page--modern .tmx-product-modern__summary{
    grid-column:1 / -1 !important;
    max-width:none !important;
    padding-top:0 !important;
  }
  .tmx-product-page--modern .tmx-product-modern__summary h1{
    max-width:none !important;
  }
}
@media (max-width: 767px){
  .tmx-product-page--modern .tmx-product-modern-section{
    padding-top:24px !important;
  }
  .tmx-product-page--modern .tmx-product-modern-section > .container{
    width:calc(100% - 36px) !important;
  }
  .tmx-product-page--modern .tmx-crumbs{
    margin-bottom:20px !important;
    font-size:13px !important;
  }
  .tmx-product-page--modern .tmx-product-modern{
    display:block !important;
  }
  .tmx-product-page--modern .tmx-product-modern__gallery{
    display:block !important;
  }
  .tmx-product-page--modern .tmx-gallery-main{
    height:360px !important;
    min-height:360px !important;
    padding:18px !important;
    margin-bottom:14px !important;
  }
  .tmx-product-page--modern .tmx-gallery-main img{
    max-height:320px !important;
  }
  .tmx-product-page--modern .tmx-gallery-thumbs{
    width:100% !important;
    flex-direction:row !important;
    gap:12px !important;
    overflow:auto !important;
    margin-bottom:26px !important;
  }
  .tmx-product-page--modern .tmx-gallery-thumb{
    width:84px !important;
    min-width:84px !important;
    height:84px !important;
    min-height:84px !important;
    padding:8px !important;
  }
  .tmx-product-page--modern .tmx-gallery-thumb img{
    height:64px !important;
  }
  .tmx-product-page--modern .tmx-product-modern__summary{
    max-width:none !important;
  }
  .tmx-product-page--modern .tmx-product-modern__summary h1{
    font-size:30px !important;
  }
  .tmx-product-page--modern .tmx-product-modern__price{
    font-size:27px !important;
  }
  .tmx-product-page--modern .tmx-product-modern__cart form.cart{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
  }
  .tmx-product-page--modern .tmx-product-modern__cart .quantity,
  .tmx-product-page--modern .tmx-product-modern__cart .single_add_to_cart_button,
  .tmx-product-page--modern .tmx-product-modern__cart .button.alt{
    width:100% !important;
    min-width:100% !important;
  }
  .tmx-product-page--modern .tmx-product-modern__benefits{
    gap:14px !important;
  }
  .tmx-product-page--modern .tmx-product-modern-tabs{
    margin-top:42px !important;
  }
  .tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs .tabs,
  .tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs ul.tabs{
    gap:8px !important;
  }
  .tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs .tabs li a,
  .tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs ul.tabs li a{
    min-height:46px !important;
    padding:0 16px !important;
    font-size:13px !important;
  }
}

/* v39-46 - Ajustes finales detalle de producto */
.tmx-product-page--modern{
  background:#f6f8fb !important;
}
.tmx-product-page--modern .tmx-product-modern-section{
  padding-top:26px !important;
  padding-bottom:44px !important;
}
.tmx-product-page--modern .tmx-product-modern-section > .container{
  max-width:1320px !important;
}
.tmx-product-page--modern .tmx-crumbs{
  color:#6a7890 !important;
  font-size:15px !important;
}
.tmx-product-page--modern .tmx-crumbs a{
  color:#6a7890 !important;
}
.tmx-product-page--modern .tmx-crumbs span:last-child{
  color:#ef3340 !important;
}
.tmx-product-page--modern .tmx-product-modern{
  grid-template-columns:minmax(0, 1.02fr) minmax(400px, .88fr) !important;
  gap:54px !important;
}
.tmx-product-page--modern .tmx-product-modern__gallery{
  grid-template-columns:minmax(0,1fr) 128px !important;
  gap:18px !important;
}
.tmx-product-page--modern .tmx-gallery-main{
  min-height:560px !important;
  height:560px !important;
  padding:0 !important;
  overflow:hidden !important;
  background:#fff !important;
  border:1px solid rgba(23,59,108,.12) !important;
  border-radius:10px !important;
}
.tmx-product-page--modern .tmx-gallery-main img{
  width:100% !important;
  height:100% !important;
  max-height:none !important;
  object-fit:contain !important;
  display:block !important;
}
.tmx-product-page--modern .tmx-gallery-thumbs{
  gap:14px !important;
}
.tmx-product-page--modern .tmx-gallery-thumb{
  height:112px !important;
  min-height:112px !important;
  padding:10px !important;
  border-radius:8px !important;
  border:1px solid rgba(23,59,108,.12) !important;
  background:#fff !important;
}
.tmx-product-page--modern .tmx-gallery-thumb.is-active{
  border-color:#2f6fda !important;
  box-shadow:0 0 0 1px rgba(47,111,218,.18) !important;
}
.tmx-product-page--modern .tmx-gallery-thumb img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
}
.tmx-product-page--modern .tmx-product-modern__summary h1{
  margin:0 0 18px !important;
  max-width:580px !important;
  font-size:clamp(36px, 3.1vw, 48px) !important;
  line-height:1.08 !important;
  letter-spacing:-.035em !important;
  font-weight:500 !important;
  color:#071d38 !important;
}
.tmx-product-page--modern .tmx-product-modern__rating{
  margin:0 0 12px !important;
}
.tmx-product-page--modern .tmx-product-modern__price{
  margin:0 0 18px !important;
  font-size:30px !important;
  font-weight:600 !important;
  color:#071d38 !important;
}
.tmx-product-page--modern .tmx-product-modern__price del{
  font-size:21px !important;
  color:#8693a8 !important;
}
.tmx-product-page--modern .tmx-product-modern__price small,
.tmx-product-page--modern .tmx-product-modern__price .woocommerce-Price-taxLabel,
.tmx-product-page--modern .tmx-product-modern__price .tax_label{
  font-size:17px !important;
  font-weight:500 !important;
  color:#071d38 !important;
}
.tmx-product-page--modern .tmx-product-modern__excerpt,
.tmx-product-page--modern .tmx-product-modern__excerpt p{
  font-size:16px !important;
  line-height:1.7 !important;
  font-weight:400 !important;
  color:#485a74 !important;
}
.tmx-product-page--modern .tmx-product-modern__meta{
  margin:0 0 24px !important;
  font-size:16px !important;
}
.tmx-product-page--modern .tmx-product-modern__meta div{
  margin:0 0 10px !important;
  color:#4d5f78 !important;
}
.tmx-product-page--modern .tmx-product-modern__meta strong{
  font-size:16px !important;
  font-weight:600 !important;
  color:#071d38 !important;
}
.tmx-product-page--modern .tmx-product-modern__cart form.cart{
  gap:14px !important;
}
.tmx-product-page--modern .tmx-product-modern__cart .quantity{
  width:146px !important;
  min-width:146px !important;
  border:1px solid rgba(23,59,108,.14) !important;
  border-radius:8px !important;
  background:#fff !important;
}
.tmx-product-page--modern .tmx-product-modern__cart .quantity .qty{
  width:100% !important;
  min-width:0 !important;
  border:0 !important;
  font-size:18px !important;
  font-weight:500 !important;
  color:#071d38 !important;
}
.tmx-product-page--modern .tmx-qty-btn{
  color:#173b6c !important;
}
.tmx-product-page--modern .tmx-product-modern__cart .single_add_to_cart_button,
.tmx-product-page--modern .tmx-product-modern__cart .button.alt{
  min-width:298px !important;
  height:54px !important;
  padding:0 26px !important;
  background:#173b6c !important;
  border:1px solid #173b6c !important;
  color:#fff !important;
  border-radius:8px !important;
  font-size:16px !important;
  font-weight:600 !important;
  letter-spacing:.03em !important;
  text-transform:uppercase !important;
}
.tmx-product-page--modern .tmx-product-modern__cart .single_add_to_cart_button:hover,
.tmx-product-page--modern .tmx-product-modern__cart .button.alt:hover{
  background:#ef3340 !important;
  border-color:#ef3340 !important;
  color:#fff !important;
}
.tmx-product-page--modern .tmx-product-modern__benefits{
  margin-top:22px !important;
  padding-top:18px !important;
  border-top:1px solid rgba(23,59,108,.12) !important;
  gap:14px 24px !important;
}
.tmx-product-page--modern .tmx-product-modern__benefits div{
  font-size:15px !important;
  font-weight:500 !important;
  color:#173b6c !important;
}
.tmx-product-page--modern .tmx-product-modern__benefits span{
  color:#173b6c !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs{
  margin-top:46px !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs .tabs,
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs ul.tabs{
  gap:0 !important;
  margin:0 0 22px !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs .tabs li,
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs ul.tabs li{
  margin:0 !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs .tabs li a,
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs ul.tabs li a{
  min-height:56px !important;
  padding:0 28px !important;
  background:#fff !important;
  border:1px solid #ef3340 !important;
  border-radius:8px !important;
  color:#ef3340 !important;
  font-size:16px !important;
  font-weight:600 !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs .tabs li.active a,
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs ul.tabs li.active a{
  background:#173b6c !important;
  border-color:#173b6c !important;
  color:#fff !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-Tabs-panel{
  padding:0 !important;
  color:#4d5f78 !important;
  font-size:16px !important;
  line-height:1.8 !important;
}
.tmx-product-page--modern .tmx-inline-additional-info{
  margin-top:22px !important;
}
.tmx-product-page--modern .tmx-inline-additional-info h2,
.tmx-product-page--modern .woocommerce-Tabs-panel > h2:first-child{
  display:none !important;
}
.tmx-product-page--modern .tmx-inline-additional-info .shop_attributes{
  border-collapse:separate !important;
  border-spacing:0 !important;
  width:100% !important;
  margin-top:8px !important;
  border:1px solid rgba(23,59,108,.12) !important;
  border-radius:10px !important;
  overflow:hidden !important;
}
.tmx-product-page--modern .tmx-inline-additional-info .shop_attributes th,
.tmx-product-page--modern .tmx-inline-additional-info .shop_attributes td{
  padding:14px 16px !important;
  border-bottom:1px solid rgba(23,59,108,.08) !important;
  font-size:15px !important;
}
.tmx-product-page--modern .tmx-inline-additional-info .shop_attributes th{
  width:230px !important;
  background:#f8fbff !important;
  color:#173b6c !important;
  font-weight:600 !important;
}
.tmx-product-page--modern .tmx-inline-additional-info .shop_attributes td{
  color:#4d5f78 !important;
  font-weight:400 !important;
}
.tmx-product-page--modern .tmx-inline-additional-info .shop_attributes tr:last-child th,
.tmx-product-page--modern .tmx-inline-additional-info .shop_attributes tr:last-child td{
  border-bottom:0 !important;
}

/* Card de producto en tienda: sin padding en imagen */
.tmx-store-product-card__image{
  padding:0 !important;
}
.tmx-store-product-card__image img{
  width:100% !important;
  height:100% !important;
  max-height:310px !important;
  object-fit:contain !important;
}

@media (max-width: 1180px){
  .tmx-product-page--modern .tmx-product-modern{
    grid-template-columns:1fr !important;
    gap:34px !important;
  }
  .tmx-product-page--modern .tmx-product-modern__summary h1{
    max-width:none !important;
  }
}
@media (max-width: 767px){
  .tmx-product-page--modern .tmx-gallery-main{
    min-height:380px !important;
    height:380px !important;
  }
  .tmx-product-page--modern .tmx-product-modern__summary h1{
    font-size:32px !important;
  }
  .tmx-product-page--modern .tmx-product-modern__cart .single_add_to_cart_button,
  .tmx-product-page--modern .tmx-product-modern__cart .button.alt,
  .tmx-product-page--modern .tmx-product-modern__cart .quantity{
    min-width:100% !important;
    width:100% !important;
  }
}

/* v39-48 - Producto detalle: imagen full, descripción solo modelo y paleta Tecnimax */
.tmx-product-page--modern .tmx-product-modern-section > .container{
  max-width:1320px !important;
}
.tmx-product-page--modern .tmx-product-modern{
  grid-template-columns:minmax(0, 720px) minmax(0, 520px) !important;
  justify-content:center !important;
  gap:56px !important;
}
.tmx-product-page--modern .tmx-product-modern__gallery{
  grid-template-columns:minmax(0, 572px) 128px !important;
  gap:20px !important;
  width:100% !important;
}
.tmx-product-page--modern .tmx-gallery-main{
  width:100% !important;
  height:560px !important;
  min-height:560px !important;
  padding:0 !important;
  overflow:hidden !important;
  display:block !important;
  background:#fff !important;
  border:1px solid rgba(23,59,108,.14) !important;
  border-radius:10px !important;
}
.tmx-product-page--modern .tmx-gallery-main img{
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  display:block !important;
  object-fit:cover !important;
  object-position:center center !important;
}
.tmx-product-page--modern .tmx-product-modern__summary h1{
  max-width:520px !important;
  font-size:clamp(30px, 2.35vw, 42px) !important;
  line-height:1.12 !important;
  font-weight:500 !important;
  letter-spacing:-.025em !important;
  color:#071d38 !important;
}
.tmx-product-page--modern .tmx-product-modern__price{
  font-size:28px !important;
  font-weight:600 !important;
  color:#071d38 !important;
}
.tmx-product-page--modern .tmx-product-modern__price small,
.tmx-product-page--modern .tmx-product-modern__price .woocommerce-Price-taxLabel,
.tmx-product-page--modern .tmx-product-modern__price .tax_label{
  font-size:15px !important;
  font-weight:500 !important;
  color:#173b6c !important;
}
.tmx-product-page--modern .tmx-product-modern__excerpt,
.tmx-product-page--modern .tmx-product-modern__excerpt p,
.tmx-product-page--modern .tmx-product-modern__meta,
.tmx-product-page--modern .tmx-product-modern__meta div{
  font-size:15px !important;
  line-height:1.65 !important;
  font-weight:400 !important;
}
.tmx-product-page--modern .tmx-product-modern__meta strong{
  font-size:15px !important;
  font-weight:600 !important;
}
.tmx-product-page--modern .tmx-product-modern__cart .single_add_to_cart_button,
.tmx-product-page--modern .tmx-product-modern__cart .button.alt{
  background:transparent !important;
  border:1px solid #ef3340 !important;
  color:#ef3340 !important;
  box-shadow:none !important;
}
.tmx-product-page--modern .tmx-product-modern__cart .single_add_to_cart_button:hover,
.tmx-product-page--modern .tmx-product-modern__cart .button.alt:hover{
  background:#ef3340 !important;
  border-color:#ef3340 !important;
  color:#fff !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs .tabs,
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs ul.tabs{
  display:flex !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs .tabs li:not(.description_tab),
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs ul.tabs li:not(.description_tab){
  display:none !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs .tabs li.description_tab a,
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs ul.tabs li.description_tab a{
  background:#173b6c !important;
  border-color:#173b6c !important;
  color:#fff !important;
  font-size:15px !important;
  font-weight:600 !important;
  border-radius:8px !important;
}
.tmx-product-page--modern .tmx-single-description-content > :not(.tmx-inline-additional-info){
  display:none !important;
}
.tmx-product-page--modern .tmx-inline-additional-info--only{
  margin-top:0 !important;
}
.tmx-product-page--modern .tmx-inline-additional-info--only h2,
.tmx-product-page--modern .tmx-inline-additional-info--only .shop_attributes + p{
  display:none !important;
}
.tmx-product-page--modern .tmx-inline-additional-info--only .shop_attributes{
  margin-top:0 !important;
  background:#fff !important;
}

@media (max-width: 1180px){
  .tmx-product-page--modern .tmx-product-modern{
    grid-template-columns:1fr !important;
  }
  .tmx-product-page--modern .tmx-product-modern__gallery{
    grid-template-columns:minmax(0, 1fr) 118px !important;
  }
}
@media (max-width: 767px){
  .tmx-product-page--modern .tmx-product-modern__gallery{
    grid-template-columns:1fr !important;
  }
  .tmx-product-page--modern .tmx-gallery-main{
    height:380px !important;
    min-height:380px !important;
  }
  .tmx-product-page--modern .tmx-gallery-main img{
    object-fit:cover !important;
  }
}

/* v39-49 - Producto detalle: imagen más ancha, miniaturas limpias y sin línea bajo descripción */
.tmx-product-page--modern .tmx-product-modern-section > .container{
  max-width:1420px !important;
}
.tmx-product-page--modern .tmx-product-modern{
  grid-template-columns:minmax(0, 820px) minmax(0, 500px) !important;
  gap:54px !important;
  justify-content:center !important;
}
.tmx-product-page--modern .tmx-product-modern__gallery{
  grid-template-columns:minmax(0, 680px) 120px !important;
  gap:20px !important;
}
.tmx-product-page--modern .tmx-gallery-main{
  width:100% !important;
  height:560px !important;
  min-height:560px !important;
  padding:0 !important;
  overflow:hidden !important;
  display:grid !important;
  place-items:center !important;
  background:#fff !important;
}
.tmx-product-page--modern .tmx-gallery-main img{
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:cover !important;
  object-position:center center !important;
}
.tmx-product-page--modern .tmx-gallery-thumb{
  box-sizing:border-box !important;
  width:120px !important;
  height:112px !important;
  min-height:112px !important;
  padding:0 !important;
  overflow:hidden !important;
  display:grid !important;
  place-items:center !important;
  background:#fff !important;
}
.tmx-product-page--modern .tmx-gallery-thumb img{
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
  display:block !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs,
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs .tabs,
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs ul.tabs{
  border:0 !important;
  border-bottom:0 !important;
  box-shadow:none !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs .tabs::before,
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs .tabs::after,
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs ul.tabs::before,
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs ul.tabs::after{
  display:none !important;
  border:0 !important;
  content:none !important;
}
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs .tabs,
.tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs ul.tabs{
  margin-bottom:18px !important;
  padding-bottom:0 !important;
}

@media (max-width:1180px){
  .tmx-product-page--modern .tmx-product-modern{
    grid-template-columns:1fr !important;
  }
  .tmx-product-page--modern .tmx-product-modern__gallery{
    grid-template-columns:minmax(0, 1fr) 112px !important;
  }
  .tmx-product-page--modern .tmx-gallery-thumb{
    width:112px !important;
  }
}
@media (max-width:767px){
  .tmx-product-page--modern .tmx-product-modern__gallery{
    grid-template-columns:1fr !important;
  }
  .tmx-product-page--modern .tmx-gallery-main{
    height:380px !important;
    min-height:380px !important;
  }
  .tmx-product-page--modern .tmx-gallery-thumbs{
    display:flex !important;
    flex-direction:row !important;
  }
  .tmx-product-page--modern .tmx-gallery-thumb{
    width:86px !important;
    min-width:86px !important;
    height:86px !important;
    min-height:86px !important;
  }
}

/* v39-50 - Producto: layout final fuerte */
body.single-product .tmx-product-page--modern{
  background:#fff !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern-section{
  padding-top:24px !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern-section > .container{
  max-width:1500px !important;
  width:calc(100% - 48px) !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern{
  display:grid !important;
  grid-template-columns:minmax(720px, 1fr) minmax(430px, 520px) !important;
  column-gap:54px !important;
  align-items:start !important;
  justify-content:center !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern__gallery{
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  justify-self:stretch !important;
  display:grid !important;
  grid-template-columns:minmax(0, 1fr) 118px !important;
  gap:18px !important;
  align-items:start !important;
}
body.single-product .tmx-product-page--modern .tmx-gallery-main{
  width:100% !important;
  height:560px !important;
  min-height:560px !important;
  padding:0 !important;
  overflow:hidden !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:#fff !important;
  border:1px solid rgba(23,59,108,.14) !important;
  border-radius:10px !important;
  box-shadow:none !important;
}
body.single-product .tmx-product-page--modern .tmx-gallery-main img{
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  display:block !important;
  object-fit:contain !important;
  object-position:center center !important;
  margin:0 !important;
  padding:0 !important;
}
body.single-product .tmx-product-page--modern .tmx-gallery-thumbs{
  width:118px !important;
  display:flex !important;
  flex-direction:column !important;
  gap:14px !important;
  align-items:stretch !important;
}
body.single-product .tmx-product-page--modern .tmx-gallery-thumb{
  width:118px !important;
  min-width:118px !important;
  height:108px !important;
  min-height:108px !important;
  max-height:108px !important;
  padding:0 !important;
  overflow:hidden !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:1px solid rgba(23,59,108,.14) !important;
  border-radius:8px !important;
  background:#fff !important;
  box-shadow:none !important;
}
body.single-product .tmx-product-page--modern .tmx-gallery-thumb.is-active{
  border-color:#2e86ff !important;
  box-shadow:0 0 0 1px rgba(46,134,255,.28) !important;
}
body.single-product .tmx-product-page--modern .tmx-gallery-thumb img{
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  display:block !important;
  object-fit:contain !important;
  object-position:center center !important;
  padding:0 !important;
  margin:0 !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern__summary{
  max-width:520px !important;
  padding-top:18px !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern__summary h1{
  max-width:520px !important;
  margin:0 0 18px !important;
  font-size:clamp(30px, 2.35vw, 40px) !important;
  line-height:1.12 !important;
  letter-spacing:-.025em !important;
  font-weight:500 !important;
  color:#071d38 !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern__price{
  font-size:28px !important;
  line-height:1.15 !important;
  font-weight:600 !important;
  color:#071d38 !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern__excerpt,
body.single-product .tmx-product-page--modern .tmx-product-modern__excerpt p,
body.single-product .tmx-product-page--modern .tmx-product-modern__meta,
body.single-product .tmx-product-page--modern .tmx-product-modern__meta div{
  font-size:15px !important;
  line-height:1.65 !important;
  font-weight:400 !important;
  color:#435671 !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern__meta strong{
  font-size:15px !important;
  font-weight:600 !important;
  color:#071d38 !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern__cart .single_add_to_cart_button,
body.single-product .tmx-product-page--modern .tmx-product-modern__cart .button.alt{
  background:transparent !important;
  border:1px solid #ef3340 !important;
  color:#ef3340 !important;
  font-weight:600 !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern__cart .single_add_to_cart_button:hover,
body.single-product .tmx-product-page--modern .tmx-product-modern__cart .button.alt:hover{
  background:#ef3340 !important;
  border-color:#ef3340 !important;
  color:#fff !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern__benefits div,
body.single-product .tmx-product-page--modern .tmx-product-modern__benefits span{
  color:#173b6c !important;
  font-weight:500 !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern-tabs{
  margin-top:58px !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs{
  border:0 !important;
  box-shadow:none !important;
  background:transparent !important;
  padding:0 !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs .tabs,
body.single-product .tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs ul.tabs{
  border:0 !important;
  border-bottom:0 !important;
  box-shadow:none !important;
  margin:0 0 20px !important;
  padding:0 !important;
  gap:0 !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs .tabs:before,
body.single-product .tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs .tabs:after,
body.single-product .tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs .tabs::before,
body.single-product .tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs .tabs::after,
body.single-product .tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs ul.tabs:before,
body.single-product .tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs ul.tabs:after,
body.single-product .tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs ul.tabs::before,
body.single-product .tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs ul.tabs::after{
  display:none !important;
  content:none !important;
  border:0 !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs .tabs li a,
body.single-product .tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs ul.tabs li a{
  min-height:54px !important;
  padding:0 30px !important;
  background:#173b6c !important;
  border:1px solid #173b6c !important;
  color:#fff !important;
  border-radius:8px !important;
  font-size:15px !important;
  font-weight:600 !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-Tabs-panel{
  border:0 !important;
  box-shadow:none !important;
  padding:0 !important;
}
body.single-product .tmx-product-page--modern .tmx-inline-additional-info .shop_attributes{
  max-width:780px !important;
  border:1px solid rgba(23,59,108,.12) !important;
  border-radius:8px !important;
  overflow:hidden !important;
  background:#fff !important;
}
body.single-product .tmx-product-page--modern .tmx-inline-additional-info .shop_attributes th{
  width:210px !important;
  background:#f8fbff !important;
  color:#173b6c !important;
  font-size:15px !important;
  font-weight:600 !important;
}
body.single-product .tmx-product-page--modern .tmx-inline-additional-info .shop_attributes td{
  color:#435671 !important;
  font-size:15px !important;
  font-weight:400 !important;
}
@media (max-width:1360px){
  body.single-product .tmx-product-page--modern .tmx-product-modern{
    grid-template-columns:minmax(620px, 1fr) minmax(390px, 500px) !important;
    column-gap:42px !important;
  }
}
@media (max-width:1180px){
  body.single-product .tmx-product-page--modern .tmx-product-modern{
    grid-template-columns:1fr !important;
  }
  body.single-product .tmx-product-page--modern .tmx-product-modern__summary{
    max-width:none !important;
  }
}
@media (max-width:767px){
  body.single-product .tmx-product-page--modern .tmx-product-modern-section > .container{
    width:calc(100% - 32px) !important;
  }
  body.single-product .tmx-product-page--modern .tmx-product-modern__gallery{
    grid-template-columns:1fr !important;
  }
  body.single-product .tmx-product-page--modern .tmx-gallery-main{
    height:390px !important;
    min-height:390px !important;
  }
  body.single-product .tmx-product-page--modern .tmx-gallery-thumbs{
    width:100% !important;
    flex-direction:row !important;
    overflow:auto !important;
  }
  body.single-product .tmx-product-page--modern .tmx-gallery-thumb{
    width:86px !important;
    min-width:86px !important;
    height:86px !important;
    min-height:86px !important;
  }
}


/* v39-51 - ajuste fino detalle producto */
.tmx-product-page--modern .tmx-product-modern-section > .container{
  max-width:1340px !important;
  width:min(1340px, calc(100% - 72px)) !important;
}
.tmx-product-page--modern .tmx-product-modern{
  grid-template-columns:minmax(660px, 720px) 116px minmax(380px, 500px) !important;
  column-gap:26px !important;
}
.tmx-product-page--modern .tmx-gallery-main{
  height:570px !important;
  min-height:570px !important;
  padding:0 !important;
}
.tmx-product-page--modern .tmx-gallery-main img{
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:contain !important;
}
.tmx-product-page--modern .tmx-gallery-thumbs{
  gap:16px !important;
  width:116px !important;
}
.tmx-product-page--modern .tmx-gallery-thumb{
  width:116px !important;
  min-width:116px !important;
  height:102px !important;
  min-height:102px !important;
  padding:0 !important;
  overflow:hidden !important;
}
.tmx-product-page--modern .tmx-gallery-thumb img{
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:contain !important;
}
.tmx-product-page--modern .tmx-product-modern__summary{
  max-width:500px !important;
  padding:20px 26px 0 0 !important;
}
.tmx-product-page--modern .tmx-product-modern__summary h1{
  max-width:500px !important;
}
@media (max-width: 1400px){
  .tmx-product-page--modern .tmx-product-modern-section > .container{
    width:min(1300px, calc(100% - 64px)) !important;
  }
  .tmx-product-page--modern .tmx-product-modern{
    grid-template-columns:minmax(600px, 1fr) 108px minmax(360px, 470px) !important;
  }
}
@media (max-width: 1180px){
  .tmx-product-page--modern .tmx-product-modern{
    grid-template-columns:1fr !important;
  }
  .tmx-product-page--modern .tmx-product-modern__summary{
    max-width:none !important;
    padding-right:0 !important;
  }
}


/* v39-52 - FORZADO FINAL producto: imagen realmente más ancha, sin padding visual */
body.single-product .tmx-product-page--modern .tmx-product-modern-section > .container{
  max-width:1520px !important;
  width:min(1520px, calc(100% - 90px)) !important;
  padding-left:0 !important;
  padding-right:0 !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern{
  display:grid !important;
  grid-template-columns:780px 124px 500px !important;
  column-gap:34px !important;
  justify-content:start !important;
  align-items:start !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern__gallery{
  display:contents !important;
}
body.single-product .tmx-product-page--modern .tmx-gallery-main{
  grid-column:1 !important;
  width:780px !important;
  max-width:780px !important;
  height:610px !important;
  min-height:610px !important;
  padding:0 !important;
  margin:0 !important;
  overflow:hidden !important;
  display:block !important;
  background:#fff !important;
  border:1px solid rgba(23,59,108,.14) !important;
  border-radius:10px !important;
  box-shadow:none !important;
}
body.single-product .tmx-product-page--modern .tmx-gallery-main img,
body.single-product .tmx-product-page--modern .tmx-gallery-main picture,
body.single-product .tmx-product-page--modern .tmx-gallery-main picture img{
  width:100% !important;
  height:100% !important;
  min-width:100% !important;
  min-height:100% !important;
  max-width:none !important;
  max-height:none !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  display:block !important;
  object-fit:cover !important;
  object-position:center center !important;
}
body.single-product .tmx-product-page--modern .tmx-gallery-thumbs{
  grid-column:2 !important;
  width:124px !important;
  min-width:124px !important;
  max-width:124px !important;
  display:flex !important;
  flex-direction:column !important;
  gap:14px !important;
  margin:0 !important;
  padding:0 !important;
}
body.single-product .tmx-product-page--modern .tmx-gallery-thumb{
  width:124px !important;
  min-width:124px !important;
  max-width:124px !important;
  height:112px !important;
  min-height:112px !important;
  max-height:112px !important;
  padding:0 !important;
  margin:0 !important;
  overflow:hidden !important;
  display:block !important;
  background:#fff !important;
  border:1px solid rgba(23,59,108,.14) !important;
  border-radius:8px !important;
  box-shadow:none !important;
}
body.single-product .tmx-product-page--modern .tmx-gallery-thumb.is-active{
  border-color:#2E86FF !important;
  box-shadow:0 0 0 1px rgba(46,134,255,.30) !important;
}
body.single-product .tmx-product-page--modern .tmx-gallery-thumb img,
body.single-product .tmx-product-page--modern .tmx-gallery-thumb picture,
body.single-product .tmx-product-page--modern .tmx-gallery-thumb picture img{
  width:100% !important;
  height:100% !important;
  min-width:100% !important;
  min-height:100% !important;
  max-width:none !important;
  max-height:none !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  display:block !important;
  object-fit:cover !important;
  object-position:center center !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern__summary{
  grid-column:3 !important;
  width:500px !important;
  max-width:500px !important;
  min-width:0 !important;
  padding:16px 42px 0 0 !important;
  margin:0 !important;
  justify-self:start !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern__summary h1{
  max-width:500px !important;
  font-size:clamp(30px, 2.15vw, 38px) !important;
  line-height:1.14 !important;
  font-weight:500 !important;
  letter-spacing:-.025em !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern__price{
  font-size:27px !important;
  font-weight:600 !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern__cart form.cart{
  display:flex !important;
  flex-wrap:nowrap !important;
  gap:14px !important;
  max-width:100% !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern__cart .single_add_to_cart_button,
body.single-product .tmx-product-page--modern .tmx-product-modern__cart .button.alt{
  min-width:280px !important;
  width:280px !important;
}

@media (max-width: 1560px){
  body.single-product .tmx-product-page--modern .tmx-product-modern-section > .container{
    width:calc(100% - 56px) !important;
  }
  body.single-product .tmx-product-page--modern .tmx-product-modern{
    grid-template-columns:minmax(680px, 1fr) 112px minmax(400px, 480px) !important;
    column-gap:28px !important;
  }
  body.single-product .tmx-product-page--modern .tmx-gallery-main{
    width:100% !important;
    max-width:none !important;
    height:590px !important;
    min-height:590px !important;
  }
  body.single-product .tmx-product-page--modern .tmx-gallery-thumbs,
  body.single-product .tmx-product-page--modern .tmx-gallery-thumb{
    width:112px !important;
    min-width:112px !important;
    max-width:112px !important;
  }
  body.single-product .tmx-product-page--modern .tmx-gallery-thumb{
    height:104px !important;
    min-height:104px !important;
  }
  body.single-product .tmx-product-page--modern .tmx-product-modern__summary{
    width:auto !important;
    max-width:480px !important;
    padding-right:36px !important;
  }
}
@media (max-width: 1280px){
  body.single-product .tmx-product-page--modern .tmx-product-modern{
    grid-template-columns:minmax(560px, 1fr) 100px minmax(340px, 420px) !important;
    column-gap:24px !important;
  }
  body.single-product .tmx-product-page--modern .tmx-gallery-main{
    height:520px !important;
    min-height:520px !important;
  }
  body.single-product .tmx-product-page--modern .tmx-gallery-thumbs,
  body.single-product .tmx-product-page--modern .tmx-gallery-thumb{
    width:100px !important;
    min-width:100px !important;
    max-width:100px !important;
  }
  body.single-product .tmx-product-page--modern .tmx-product-modern__summary{
    max-width:420px !important;
    padding-right:24px !important;
  }
}
@media (max-width: 1180px){
  body.single-product .tmx-product-page--modern .tmx-product-modern{
    grid-template-columns:1fr !important;
  }
  body.single-product .tmx-product-page--modern .tmx-product-modern__gallery{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) 106px !important;
    gap:16px !important;
  }
  body.single-product .tmx-product-page--modern .tmx-gallery-main,
  body.single-product .tmx-product-page--modern .tmx-gallery-thumbs,
  body.single-product .tmx-product-page--modern .tmx-product-modern__summary{
    grid-column:auto !important;
  }
  body.single-product .tmx-product-page--modern .tmx-product-modern__summary{
    width:auto !important;
    max-width:none !important;
    padding-right:0 !important;
  }
}


/* v39-53 - Imagen producto adaptada sin corte */
body.single-product .tmx-product-page--modern .tmx-product-modern-section > .container{
  max-width:1460px !important;
  width:min(1460px, calc(100% - 76px)) !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern{
  grid-template-columns:minmax(680px, 760px) 118px minmax(390px, 500px) !important;
  column-gap:30px !important;
  justify-content:center !important;
}
body.single-product .tmx-product-page--modern .tmx-gallery-main{
  width:100% !important;
  max-width:none !important;
  height:auto !important;
  min-height:0 !important;
  aspect-ratio:1 / 1 !important;
  padding:0 !important;
  overflow:hidden !important;
  display:grid !important;
  place-items:center !important;
  background:#fff !important;
}
body.single-product .tmx-product-page--modern .tmx-gallery-main > img,
body.single-product .tmx-product-page--modern .tmx-gallery-main img,
body.single-product .tmx-product-page--modern .tmx-gallery-main picture,
body.single-product .tmx-product-page--modern .tmx-gallery-main picture > img{
  width:100% !important;
  height:100% !important;
  min-width:0 !important;
  min-height:0 !important;
  max-width:100% !important;
  max-height:100% !important;
  padding:0 !important;
  margin:0 !important;
  display:block !important;
  object-fit:contain !important;
  object-position:center center !important;
}
body.single-product .tmx-product-page--modern .tmx-gallery-thumbs{
  width:118px !important;
  min-width:118px !important;
  max-width:118px !important;
}
body.single-product .tmx-product-page--modern .tmx-gallery-thumb{
  width:118px !important;
  min-width:118px !important;
  max-width:118px !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  aspect-ratio:1 / 1 !important;
  padding:0 !important;
  overflow:hidden !important;
  display:grid !important;
  place-items:center !important;
}
body.single-product .tmx-product-page--modern .tmx-gallery-thumb > img,
body.single-product .tmx-product-page--modern .tmx-gallery-thumb img,
body.single-product .tmx-product-page--modern .tmx-gallery-thumb picture,
body.single-product .tmx-product-page--modern .tmx-gallery-thumb picture > img{
  width:100% !important;
  height:100% !important;
  min-width:0 !important;
  min-height:0 !important;
  max-width:100% !important;
  max-height:100% !important;
  padding:0 !important;
  margin:0 !important;
  display:block !important;
  object-fit:contain !important;
  object-position:center center !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern__summary{
  padding:20px 28px 0 0 !important;
  max-width:500px !important;
}
@media (max-width: 1560px){
  body.single-product .tmx-product-page--modern .tmx-product-modern{
    grid-template-columns:minmax(620px, 700px) 112px minmax(370px, 470px) !important;
    column-gap:26px !important;
  }
  body.single-product .tmx-product-page--modern .tmx-gallery-thumbs,
  body.single-product .tmx-product-page--modern .tmx-gallery-thumb{
    width:112px !important;
    min-width:112px !important;
    max-width:112px !important;
  }
}
@media (max-width: 1280px){
  body.single-product .tmx-product-page--modern .tmx-product-modern{
    grid-template-columns:minmax(520px, 1fr) 98px minmax(340px, 410px) !important;
  }
  body.single-product .tmx-product-page--modern .tmx-gallery-thumbs,
  body.single-product .tmx-product-page--modern .tmx-gallery-thumb{
    width:98px !important;
    min-width:98px !important;
    max-width:98px !important;
  }
}
@media (max-width: 1180px){
  body.single-product .tmx-product-page--modern .tmx-product-modern{
    grid-template-columns:1fr !important;
    justify-content:stretch !important;
  }
  body.single-product .tmx-product-page--modern .tmx-product-modern__gallery{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) 98px !important;
    gap:14px !important;
  }
}
@media (max-width: 767px){
  body.single-product .tmx-product-page--modern .tmx-product-modern-section > .container{
    width:calc(100% - 32px) !important;
  }
  body.single-product .tmx-product-page--modern .tmx-product-modern__gallery{
    grid-template-columns:1fr !important;
  }
  body.single-product .tmx-product-page--modern .tmx-gallery-thumbs{
    width:100% !important;
    max-width:100% !important;
    flex-direction:row !important;
    overflow:auto !important;
  }
  body.single-product .tmx-product-page--modern .tmx-gallery-thumb{
    width:88px !important;
    min-width:88px !important;
    max-width:88px !important;
  }
}


/* v39-54 - beneficios del producto en una sola fila */
body.single-product .tmx-product-page--modern .tmx-product-modern__benefits{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:14px !important;
  align-items:stretch !important;
  border-top:1px solid rgba(23,59,108,.12) !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern__benefits > div{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  min-height:56px !important;
  padding:12px 14px !important;
  background:#f8fbff !important;
  border:1px solid rgba(23,59,108,.10) !important;
  border-radius:10px !important;
  white-space:nowrap !important;
  box-shadow:0 8px 20px rgba(8,29,58,.04) !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern__benefits > div svg,
body.single-product .tmx-product-page--modern .tmx-product-modern__benefits > div i{
  flex:0 0 auto !important;
  width:18px !important;
  height:18px !important;
  color:#173b6c !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern__benefits > div span,
body.single-product .tmx-product-page--modern .tmx-product-modern__benefits > div{
  font-size:15px !important;
  line-height:1.25 !important;
  font-weight:600 !important;
  color:#173b6c !important;
}
@media (max-width: 900px){
  body.single-product .tmx-product-page--modern .tmx-product-modern__benefits{
    grid-template-columns:1fr !important;
  }
  body.single-product .tmx-product-page--modern .tmx-product-modern__benefits > div{
    white-space:normal !important;
  }
}


/* v39-55 - Header carrito sin sombra + beneficios sin corte */
.header-cta .btn,
.header-cta .btn-primary,
.header-cta .tmx-cart-link{
  box-shadow:none !important;
}

.header-cta .tmx-cart-link{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
}

.header-cta .tmx-cart-link .tmx-cart-badge{
  position:static !important;
  top:auto !important;
  right:auto !important;
  transform:none !important;
  margin:0 !important;
  min-width:20px !important;
  height:20px !important;
  padding:0 6px !important;
  box-shadow:none !important;
  border:2px solid #fff !important;
  font-size:11px !important;
  line-height:1 !important;
}

.tmx-cart-badge{
  box-shadow:none !important;
}

/* Beneficios del producto: una sola fila, sin cards rotas */
body.single-product .tmx-product-page--modern .tmx-product-modern__benefits{
  display:flex !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:20px !important;
  width:100% !important;
  margin-top:22px !important;
  padding-top:18px !important;
  border-top:1px solid rgba(23,59,108,.12) !important;
}

body.single-product .tmx-product-page--modern .tmx-product-modern__benefits > div{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:7px !important;
  width:auto !important;
  min-width:0 !important;
  min-height:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  white-space:nowrap !important;
  overflow:visible !important;
  text-overflow:clip !important;
  color:#173b6c !important;
  font-size:14px !important;
  line-height:1.2 !important;
  font-weight:500 !important;
}

body.single-product .tmx-product-page--modern .tmx-product-modern__benefits > div span{
  flex:0 0 auto !important;
  width:18px !important;
  height:18px !important;
  display:inline-grid !important;
  place-items:center !important;
  margin:0 !important;
  padding:0 !important;
  color:#173b6c !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

body.single-product .tmx-product-page--modern .tmx-product-modern__benefits > div svg{
  width:18px !important;
  height:18px !important;
  display:block !important;
  color:#173b6c !important;
}

@media (max-width: 1180px){
  body.single-product .tmx-product-page--modern .tmx-product-modern__benefits{
    flex-wrap:wrap !important;
    gap:12px 18px !important;
  }
}
@media (max-width: 767px){
  body.single-product .tmx-product-page--modern .tmx-product-modern__benefits{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
  }
  body.single-product .tmx-product-page--modern .tmx-product-modern__benefits > div{
    white-space:normal !important;
  }
}


/* v39-56 - beneficios 2 arriba + 1 abajo y foto un poco menor */
body.single-product .tmx-product-page--modern .tmx-product-modern__benefits{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  gap:12px 14px !important;
  align-items:stretch !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern__benefits > div{
  min-width:0 !important;
  white-space:normal !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:8px !important;
  line-height:1.25 !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern__benefits > div:nth-child(3){
  grid-column:1 / -1 !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern__benefits > div span{
  white-space:normal !important;
}
body.single-product .tmx-product-page--modern .tmx-gallery-main{
  height:530px !important;
  min-height:530px !important;
}
body.single-product .tmx-product-page--modern .tmx-gallery-main > img,
body.single-product .tmx-product-page--modern .tmx-gallery-main img,
body.single-product .tmx-product-page--modern .tmx-gallery-main picture,
body.single-product .tmx-product-page--modern .tmx-gallery-main picture > img{
  width:90% !important;
  height:90% !important;
  max-width:90% !important;
  max-height:90% !important;
  object-fit:contain !important;
  margin:auto !important;
}
@media (max-width: 900px){
  body.single-product .tmx-product-page--modern .tmx-product-modern__benefits{
    grid-template-columns:1fr !important;
  }
  body.single-product .tmx-product-page--modern .tmx-product-modern__benefits > div:nth-child(3){
    grid-column:auto !important;
  }
}


/* v39-57 - correcciones producto: imagen completa, carrito sin sombra, IGV */
html body .site-header .header-cta.btn,
html body .site-header .header-cta.btn-primary,
html body .site-header a.header-cta.btn.btn-primary,
html body .header-cta.btn,
html body .header-cta.btn-primary{
  box-shadow:none !important;
  filter:none !important;
}
html body .site-header .header-cta.btn:hover,
html body .site-header .header-cta.btn-primary:hover,
html body .site-header a.header-cta.btn.btn-primary:hover,
html body .header-cta.btn:hover,
html body .header-cta.btn-primary:hover{
  box-shadow:none !important;
  filter:none !important;
}
html body .site-header .header-cta.btn::before,
html body .site-header .header-cta.btn-primary::before,
html body .header-cta.btn::before,
html body .header-cta.btn-primary::before{
  box-shadow:none !important;
}
html body .site-header .header-cta .tmx-cart-badge,
html body .site-header .header-cta.btn .tmx-cart-badge,
html body .site-header .tmx-cart-badge{
  position:static !important;
  transform:none !important;
  margin-left:8px !important;
  box-shadow:none !important;
  vertical-align:middle !important;
}

body.single-product .tmx-product-page--modern .tmx-gallery-main{
  height:510px !important;
  min-height:510px !important;
  padding:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
}
body.single-product .tmx-product-page--modern .tmx-gallery-main > img,
body.single-product .tmx-product-page--modern .tmx-gallery-main img,
body.single-product .tmx-product-page--modern .tmx-gallery-main picture,
body.single-product .tmx-product-page--modern .tmx-gallery-main picture > img{
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  margin:0 !important;
  padding:0 !important;
  object-fit:contain !important;
  object-position:center !important;
  display:block !important;
}
body.single-product .tmx-product-page--modern .tmx-gallery-thumb,
body.single-product .tmx-product-page--modern .tmx-gallery-thumb.is-active{
  padding:0 !important;
  overflow:hidden !important;
}
body.single-product .tmx-product-page--modern .tmx-gallery-thumb > img,
body.single-product .tmx-product-page--modern .tmx-gallery-thumb img,
body.single-product .tmx-product-page--modern .tmx-gallery-thumb picture,
body.single-product .tmx-product-page--modern .tmx-gallery-thumb picture > img{
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  margin:0 !important;
  padding:0 !important;
  object-fit:contain !important;
  object-position:center !important;
  display:block !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern__price,
body.single-product .tmx-product-page--modern .tmx-product-modern__price *{
  text-transform:none !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern__price{
  font-weight:600 !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern__price::after{
  content:none !important;
}

@media (max-width: 767px){
  body.single-product .tmx-product-page--modern .tmx-gallery-main{
    height:360px !important;
    min-height:360px !important;
  }
}


/* v39-58 - carrito, alerta, IGV e imagen producto */
.site-header .header-cta,
.site-header .header-cta.btn,
.site-header .header-cta.btn-primary,
body .site-header .header-cta.tmx-cart-link{
  box-shadow:none !important;
  filter:none !important;
}
.site-header .header-cta .tmx-cart-badge,
.site-header .header-cta.tmx-cart-link .tmx-cart-badge{
  display:none !important;
}

body.single-product .tmx-woo-notices{
  max-width:1180px !important;
  margin:18px auto 0 !important;
  padding:0 24px !important;
}
body.single-product .tmx-woo-notices .button,
body.single-product .woocommerce-message .button,
body.single-product .woocommerce-message a.button,
body.single-product .woocommerce-message a.wc-forward{
  display:none !important;
}
body.single-product .woocommerce .woocommerce-message,
body.single-product .woocommerce-message{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  min-height:56px !important;
  margin:0 !important;
  padding:14px 18px 14px 50px !important;
  border:1px solid rgba(23,59,108,.12) !important;
  border-left:4px solid #173b6c !important;
  border-radius:10px !important;
  background:#ffffff !important;
  box-shadow:none !important;
  color:#173b6c !important;
  font-family:'Poppins',sans-serif !important;
  font-size:14px !important;
  font-weight:500 !important;
  line-height:1.4 !important;
}
body.single-product .woocommerce-message::before,
body.single-product .woocommerce .woocommerce-message::before{
  top:50% !important;
  left:18px !important;
  transform:translateY(-50%) !important;
  color:#173b6c !important;
}

body.single-product .tmx-product-page--modern .tmx-gallery-main{
  padding:0 !important;
  background:#f4f4f5 !important;
  overflow:hidden !important;
}
body.single-product .tmx-product-page--modern .tmx-gallery-main > img,
body.single-product .tmx-product-page--modern .tmx-gallery-main img,
body.single-product .tmx-product-page--modern .tmx-gallery-main picture,
body.single-product .tmx-product-page--modern .tmx-gallery-main picture > img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  margin:0 !important;
  padding:0 !important;
  object-fit:contain !important;
  object-position:center center !important;
  background:#f4f4f5 !important;
}
body.single-product .tmx-product-page--modern .tmx-gallery-thumb{
  padding:0 !important;
  background:#f4f4f5 !important;
  overflow:hidden !important;
}
body.single-product .tmx-product-page--modern .tmx-gallery-thumb img{
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  margin:0 !important;
  padding:0 !important;
  object-fit:contain !important;
  object-position:center center !important;
  background:#f4f4f5 !important;
}

body.single-product .tmx-product-page--modern .tmx-product-modern__price,
body.single-product .tmx-product-page--modern .tmx-product-modern__price *{
  text-transform:none !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern__price::after{
  content:"" !important;
}

/* Evita que los beneficios se rompan y mantiene 2 + 1 */
body.single-product .tmx-product-page--modern .tmx-product-modern__benefits{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  gap:10px 20px !important;
  align-items:center !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern__benefits > div{
  min-width:0 !important;
  white-space:normal !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  padding:0 !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern__benefits > div:nth-child(3){
  grid-column:1 / -1 !important;
}


/* v39-59 - producto 50/50 y sin alerta */
body.single-product .tmx-woo-notices,
body.single-product .woocommerce-notices-wrapper,
body.single-product .woocommerce-message,
body.single-product .woocommerce-info,
body.single-product .woocommerce-error{
  display:none !important;
  visibility:hidden !important;
  height:0 !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  overflow:hidden !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern-section > .container{
  max-width:1360px !important;
  width:min(1360px, calc(100% - 72px)) !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern{
  display:grid !important;
  grid-template-columns:minmax(0, 1fr) minmax(0, 1fr) !important;
  gap:44px !important;
  align-items:start !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern__gallery{
  display:grid !important;
  grid-template-columns:minmax(0, 1fr) 116px !important;
  gap:16px !important;
  grid-column:auto !important;
  width:100% !important;
  min-width:0 !important;
}
body.single-product .tmx-product-page--modern .tmx-gallery-main{
  grid-column:auto !important;
  width:100% !important;
  min-width:0 !important;
  height:560px !important;
  min-height:560px !important;
  padding:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:#fff !important;
  overflow:hidden !important;
}
body.single-product .tmx-product-page--modern .tmx-gallery-main > img,
body.single-product .tmx-product-page--modern .tmx-gallery-main img,
body.single-product .tmx-product-page--modern .tmx-gallery-main picture,
body.single-product .tmx-product-page--modern .tmx-gallery-main picture > img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
  object-position:center !important;
  margin:0 auto !important;
  padding:0 !important;
}
body.single-product .tmx-product-page--modern .tmx-gallery-thumbs{
  grid-column:auto !important;
  display:flex !important;
  flex-direction:column !important;
  gap:14px !important;
  width:116px !important;
  min-width:116px !important;
}
body.single-product .tmx-product-page--modern .tmx-gallery-thumb{
  width:116px !important;
  min-width:116px !important;
  height:104px !important;
  min-height:104px !important;
  padding:0 !important;
  overflow:hidden !important;
}
body.single-product .tmx-product-page--modern .tmx-gallery-thumb img,
body.single-product .tmx-product-page--modern .tmx-gallery-thumb picture,
body.single-product .tmx-product-page--modern .tmx-gallery-thumb picture img{
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
  object-position:center !important;
  padding:0 !important;
  margin:0 !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern__summary{
  grid-column:auto !important;
  width:100% !important;
  max-width:560px !important;
  justify-self:start !important;
  padding:20px 0 0 0 !important;
}
body.single-product .tmx-product-page--modern .tmx-product-modern__summary h1{
  max-width:540px !important;
  font-size:clamp(32px, 2.5vw, 42px) !important;
  font-weight:500 !important;
}
@media (max-width: 1180px){
  body.single-product .tmx-product-page--modern .tmx-product-modern{
    grid-template-columns:1fr !important;
  }
  body.single-product .tmx-product-page--modern .tmx-product-modern__summary{
    max-width:none !important;
  }
}
@media (max-width: 767px){
  body.single-product .tmx-product-page--modern .tmx-product-modern-section > .container{
    width:min(100% - 32px, 100%) !important;
  }
  body.single-product .tmx-product-page--modern .tmx-product-modern__gallery{
    grid-template-columns:1fr !important;
  }
  body.single-product .tmx-product-page--modern .tmx-gallery-thumbs{
    width:100% !important;
    min-width:0 !important;
    flex-direction:row !important;
    overflow:auto !important;
  }
}

/* v39-60 - descripción / modelos a todo el ancho */
body.single-product .tmx-product-page--modern .tmx-product-modern-tabs,
body.single-product .tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-tabs,
body.single-product .tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-Tabs-panel,
body.single-product .tmx-product-page--modern .tmx-single-description-content,
body.single-product .tmx-product-page--modern .tmx-inline-additional-info,
body.single-product .tmx-product-page--modern .tmx-inline-additional-info--only{
  width:100% !important;
  max-width:none !important;
}

body.single-product .tmx-product-page--modern .tmx-product-modern-tabs .woocommerce-Tabs-panel{
  display:block !important;
}

body.single-product .tmx-product-page--modern .tmx-inline-additional-info .shop_attributes{
  width:100% !important;
  max-width:none !important;
  table-layout:fixed !important;
}

body.single-product .tmx-product-page--modern .tmx-inline-additional-info .shop_attributes th{
  width:210px !important;
}

body.single-product .tmx-product-page--modern .tmx-inline-additional-info .shop_attributes td{
  width:auto !important;
}

/* v39-61 - beneficios elegantes + productos recomendados con imagen completa */
body.single-product .tmx-product-page--modern .tmx-product-modern__benefits{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  gap:12px !important;
  width:100% !important;
  margin-top:24px !important;
  padding:14px !important;
  border:1px solid rgba(23,59,108,.12) !important;
  border-radius:18px !important;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%) !important;
  box-shadow:0 14px 34px rgba(12,34,64,.06) !important;
}

body.single-product .tmx-product-page--modern .tmx-product-modern__benefits > .tmx-product-modern__benefit{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:12px !important;
  min-width:0 !important;
  min-height:78px !important;
  padding:13px 14px !important;
  border:1px solid rgba(23,59,108,.10) !important;
  border-radius:14px !important;
  background:#fff !important;
  box-shadow:0 8px 22px rgba(12,34,64,.045) !important;
  color:#173b6c !important;
  white-space:normal !important;
  overflow:visible !important;
}

body.single-product .tmx-product-page--modern .tmx-product-modern__benefits > .tmx-product-modern__benefit:nth-child(3){
  grid-column:1 / -1 !important;
}

body.single-product .tmx-product-page--modern .tmx-product-modern__benefit-icon{
  flex:0 0 42px !important;
  width:42px !important;
  height:42px !important;
  display:grid !important;
  place-items:center !important;
  margin:0 !important;
  padding:0 !important;
  border:1px solid rgba(23,59,108,.10) !important;
  border-radius:13px !important;
  background:#f2f7ff !important;
  color:#173b6c !important;
  box-shadow:none !important;
}

body.single-product .tmx-product-page--modern .tmx-product-modern__benefit-icon svg{
  width:24px !important;
  height:24px !important;
  display:block !important;
  color:#173b6c !important;
  stroke:currentColor !important;
}

body.single-product .tmx-product-page--modern .tmx-product-modern__benefit-copy{
  display:block !important;
  min-width:0 !important;
  width:auto !important;
  height:auto !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  color:#173b6c !important;
}

body.single-product .tmx-product-page--modern .tmx-product-modern__benefit-copy strong{
  display:block !important;
  margin:0 !important;
  color:#071d38 !important;
  font-family:'Gilroy','Poppins',sans-serif !important;
  font-size:14.5px !important;
  line-height:1.18 !important;
  font-weight:600 !important;
  letter-spacing:-.01em !important;
}

body.single-product .tmx-product-page--modern .tmx-product-modern__benefit-copy small{
  display:block !important;
  margin-top:4px !important;
  color:#5e6f86 !important;
  font-family:'Poppins',sans-serif !important;
  font-size:12.5px !important;
  line-height:1.35 !important;
  font-weight:400 !important;
}

@media (max-width: 900px){
  body.single-product .tmx-product-page--modern .tmx-product-modern__benefits{
    grid-template-columns:1fr !important;
  }
  body.single-product .tmx-product-page--modern .tmx-product-modern__benefits > .tmx-product-modern__benefit:nth-child(3){
    grid-column:auto !important;
  }
}

body.single-product .tmx-product-modern-related .tmx-product-card__image,
.woocommerce .related.products .tmx-product-card__image,
.woocommerce-page .related.products .tmx-product-card__image{
  height:255px !important;
  min-height:255px !important;
  max-height:255px !important;
  aspect-ratio:auto !important;
  padding:18px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
  background:#f7f8fb !important;
}

body.single-product .tmx-product-modern-related .tmx-product-card__image img,
.woocommerce .related.products .tmx-product-card__image img,
.woocommerce-page .related.products .tmx-product-card__image img,
body.single-product .tmx-product-modern-related .tmx-product-image,
.woocommerce .related.products .tmx-product-image,
.woocommerce-page .related.products .tmx-product-image{
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  display:block !important;
  transform:none !important;
}

.tmx-store-product-card__image,
.home-shop-product-card--recommendation .home-shop-product-card__image,
.home-shop-products-grid--discovery .home-shop-product-card__image{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
  background:#f7f8fb !important;
}

.tmx-store-product-card__image{
  height:310px !important;
  min-height:310px !important;
  padding:22px !important;
}

.home-shop-product-card--recommendation .home-shop-product-card__image,
.home-shop-products-grid--discovery .home-shop-product-card__image{
  height:230px !important;
  min-height:230px !important;
  max-height:230px !important;
  padding:14px !important;
}

.tmx-store-product-card__image img,
.tmx-store-product-card__image .tmx-product-image,
.home-shop-product-card--recommendation .home-shop-product-card__image img,
.home-shop-product-card--recommendation .home-shop-product-card__image .tmx-product-image,
.home-shop-products-grid--discovery .home-shop-product-card__image img,
.home-shop-products-grid--discovery .home-shop-product-card__image .tmx-product-image{
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  display:block !important;
  transform:none !important;
}

.tmx-store-product-card:hover .tmx-store-product-card__image img,
.home-shop-product-card--recommendation:hover .home-shop-product-card__image img,
.home-shop-products-grid--discovery .home-shop-product-card:hover .home-shop-product-card__image img,
body.single-product .tmx-product-modern-related .tmx-product-card:hover .tmx-product-card__image img{
  transform:none !important;
}


/* =========================================================
   v39-62 - (consolidado) El menú móvil se define UNA sola vez
   en el bloque de pantalla completa más abajo (v39-66).
   ========================================================= */

/* =========================================================
   v39-63 - Imágenes sin padding + beneficios sin desborde
   ========================================================= */

/* Productos: el contenedor de imagen ya no agrega padding,
   así no se ve doble fondo/borde cuando la foto ya trae fondo propio. */
.tmx-product-card__image,
body.single-product .tmx-product-modern-related .tmx-product-card__image,
.woocommerce .related.products .tmx-product-card__image,
.woocommerce-page .related.products .tmx-product-card__image,
.tmx-store-product-card__image,
.home-shop-product-card__image,
.home-shop-product-card--recommendation .home-shop-product-card__image,
.home-shop-products-grid--discovery .home-shop-product-card__image,
.home-shop-showcase--discovery .home-shop-product-card__image{
  padding:0 !important;
  overflow:hidden !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:#f7f8fb !important;
}

.tmx-product-card__image img,
.tmx-product-card__image .tmx-product-image,
body.single-product .tmx-product-modern-related .tmx-product-card__image img,
.woocommerce .related.products .tmx-product-card__image img,
.woocommerce-page .related.products .tmx-product-card__image img,
.tmx-store-product-card__image img,
.tmx-store-product-card__image .tmx-product-image,
.home-shop-product-card__image img,
.home-shop-product-card__image .tmx-product-image,
.home-shop-product-card--recommendation .home-shop-product-card__image img,
.home-shop-product-card--recommendation .home-shop-product-card__image .tmx-product-image,
.home-shop-products-grid--discovery .home-shop-product-card__image img,
.home-shop-products-grid--discovery .home-shop-product-card__image .tmx-product-image,
.home-shop-showcase--discovery .home-shop-product-card__image img,
.home-shop-showcase--discovery .home-shop-product-card__image .tmx-product-image{
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  transform:none !important;
}

/* Alturas estables por tipo de card, sin padding interno en el área visual. */
body.single-product .tmx-product-modern-related .tmx-product-card__image,
.woocommerce .related.products .tmx-product-card__image,
.woocommerce-page .related.products .tmx-product-card__image{
  height:255px !important;
  min-height:255px !important;
  max-height:255px !important;
  aspect-ratio:auto !important;
}

.tmx-store-product-card__image{
  height:310px !important;
  min-height:310px !important;
}

.home-shop-product-card--recommendation .home-shop-product-card__image,
.home-shop-products-grid--discovery .home-shop-product-card__image{
  height:230px !important;
  min-height:230px !important;
  max-height:230px !important;
}

/* Beneficios del producto: ahora se acomodan por ancho real del bloque,
   no por ancho de pantalla. Así no se desbordan en la columna derecha. */
body.single-product .tmx-product-page--modern .tmx-product-modern__benefits{
  display:grid !important;
  grid-template-columns:repeat(auto-fit, minmax(min(100%, 280px), 1fr)) !important;
  gap:10px !important;
  width:100% !important;
  max-width:100% !important;
  margin-top:24px !important;
  padding:12px !important;
  border:1px solid rgba(23,59,108,.12) !important;
  border-radius:18px !important;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%) !important;
  box-shadow:0 14px 34px rgba(12,34,64,.06) !important;
  overflow:visible !important;
}

body.single-product .tmx-product-page--modern .tmx-product-modern__benefits > .tmx-product-modern__benefit,
body.single-product .tmx-product-page--modern .tmx-product-modern__benefits > div.tmx-product-modern__benefit{
  grid-column:auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:11px !important;
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  min-height:0 !important;
  height:auto !important;
  padding:12px 13px !important;
  border:1px solid rgba(23,59,108,.10) !important;
  border-radius:14px !important;
  background:#fff !important;
  box-shadow:0 8px 22px rgba(12,34,64,.045) !important;
  color:#173b6c !important;
  white-space:normal !important;
  overflow:visible !important;
}

body.single-product .tmx-product-page--modern .tmx-product-modern__benefits > .tmx-product-modern__benefit:nth-child(3),
body.single-product .tmx-product-page--modern .tmx-product-modern__benefits > div.tmx-product-modern__benefit:nth-child(3){
  grid-column:auto !important;
}

body.single-product .tmx-product-page--modern .tmx-product-modern__benefit-icon{
  flex:0 0 38px !important;
  width:38px !important;
  height:38px !important;
  min-width:38px !important;
  min-height:38px !important;
  display:grid !important;
  place-items:center !important;
  margin:0 !important;
  padding:0 !important;
  border:1px solid rgba(23,59,108,.10) !important;
  border-radius:12px !important;
  background:#f2f7ff !important;
  color:#173b6c !important;
  box-shadow:none !important;
}

body.single-product .tmx-product-page--modern .tmx-product-modern__benefit-icon svg{
  width:22px !important;
  height:22px !important;
  display:block !important;
  color:#173b6c !important;
  stroke:currentColor !important;
}

body.single-product .tmx-product-page--modern .tmx-product-modern__benefit-copy,
body.single-product .tmx-product-page--modern .tmx-product-modern__benefits span.tmx-product-modern__benefit-copy{
  display:block !important;
  flex:1 1 auto !important;
  min-width:0 !important;
  width:auto !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  color:#173b6c !important;
  overflow:visible !important;
  white-space:normal !important;
}

body.single-product .tmx-product-page--modern .tmx-product-modern__benefit-copy strong{
  display:block !important;
  margin:0 !important;
  color:#071d38 !important;
  font-family:'Gilroy','Poppins',sans-serif !important;
  font-size:14px !important;
  line-height:1.18 !important;
  font-weight:600 !important;
  letter-spacing:-.01em !important;
  white-space:normal !important;
  overflow-wrap:break-word !important;
}

body.single-product .tmx-product-page--modern .tmx-product-modern__benefit-copy small{
  display:block !important;
  margin-top:4px !important;
  color:#5e6f86 !important;
  font-family:'Poppins',sans-serif !important;
  font-size:12.2px !important;
  line-height:1.32 !important;
  font-weight:400 !important;
  white-space:normal !important;
  overflow-wrap:break-word !important;
}

@media (max-width:767px){
  body.single-product .tmx-product-page--modern .tmx-product-modern__benefits{
    grid-template-columns:1fr !important;
    padding:10px !important;
  }

  body.single-product .tmx-product-page--modern .tmx-product-modern__benefits > .tmx-product-modern__benefit{
    padding:12px !important;
  }
}


/* =========================================================
   v39-64 - Imagen completa sin falso padding + CTAs limpios
   ========================================================= */

/* Las fotos de producto ahora usan un área cuadrada para que las imágenes
   cuadradas subidas a WooCommerce llenen el ancho de la card sin parecer
   que tienen padding lateral dentro del contenedor. */
.tmx-product-card__image,
body.single-product .tmx-product-modern-related .tmx-product-card__image,
.woocommerce .related.products .tmx-product-card__image,
.woocommerce-page .related.products .tmx-product-card__image,
.tmx-store-product-card__image,
.home-shop-product-card__image,
.home-shop-product-card--recommendation .home-shop-product-card__image,
.home-shop-products-grid--discovery .home-shop-product-card__image,
.home-shop-showcase--discovery .home-shop-product-card__image{
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  aspect-ratio:1 / 1 !important;
  padding:0 !important;
  overflow:hidden !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:#f7f8fb !important;
}

.tmx-product-card__image img,
.tmx-product-card__image .tmx-product-image,
body.single-product .tmx-product-modern-related .tmx-product-card__image img,
.woocommerce .related.products .tmx-product-card__image img,
.woocommerce-page .related.products .tmx-product-card__image img,
.tmx-store-product-card__image img,
.tmx-store-product-card__image .tmx-product-image,
.home-shop-product-card__image img,
.home-shop-product-card__image .tmx-product-image,
.home-shop-product-card--recommendation .home-shop-product-card__image img,
.home-shop-product-card--recommendation .home-shop-product-card__image .tmx-product-image,
.home-shop-products-grid--discovery .home-shop-product-card__image img,
.home-shop-products-grid--discovery .home-shop-product-card__image .tmx-product-image,
.home-shop-showcase--discovery .home-shop-product-card__image img,
.home-shop-showcase--discovery .home-shop-product-card__image .tmx-product-image{
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  display:block !important;
  margin:0 !important;
  padding:0 !important;
}

/* Solo queda el botón de agregar al carrito y ocupa todo el ancho. */
.tmx-product-card__actions,
.tmx-store-product-card__actions{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:0 !important;
  width:100% !important;
}

.tmx-detail-btn,
.tmx-store-detail-btn{
  display:none !important;
}

.tmx-product-card__actions .tmx-add-cart,
.tmx-store-product-card__actions .tmx-store-add-cart,
.tmx-product-card__actions .button,
.tmx-store-product-card__actions .button{
  width:100% !important;
  min-width:100% !important;
  justify-content:center !important;
  text-align:center !important;
}

/* Oculta la descripción corta del resumen superior del producto.
   La información larga queda abajo en las pestañas/detalle. */
body.single-product .tmx-product-page--modern .tmx-product-modern__excerpt{
  display:none !important;
}

/* =========================================================
   v39-65 - Tienda igual a recomendados + imagen full bleed
   ========================================================= */

/* Diseño unificado para cards de tienda y recomendados */
.tmx-store-product-grid,
.woocommerce ul.products,
body.single-product .tmx-product-modern-related ul.products,
.woocommerce .related.products ul.products{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:20px !important;
}

.woocommerce ul.products::before,
.woocommerce ul.products::after,
body.single-product .tmx-product-modern-related ul.products::before,
body.single-product .tmx-product-modern-related ul.products::after{
  content:none !important;
  display:none !important;
}

.woocommerce ul.products li.product,
.tmx-store-product-card,
.tmx-product-card{
  width:100% !important;
  float:none !important;
  margin:0 !important;
  display:flex !important;
  flex-direction:column !important;
  min-height:100% !important;
  background:#fff !important;
  border:1px solid rgba(23,59,108,.14) !important;
  border-radius:5px !important;
  overflow:hidden !important;
  box-shadow:none !important;
  transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease !important;
}

.woocommerce ul.products li.product:hover,
.tmx-store-product-card:hover,
.tmx-product-card:hover{
  transform:translateY(-3px) !important;
  border-color:rgba(23,59,108,.24) !important;
  box-shadow:0 18px 38px rgba(12,34,64,.08) !important;
}

/* Sin padding real en el contenedor. La imagen cubre el área visual para eliminar
   el falso margen lateral que traen varias miniaturas con fondo propio. */
.tmx-store-product-card__image,
.tmx-product-card__image,
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link,
body.single-product .tmx-product-modern-related .tmx-product-card__image,
.woocommerce .related.products .tmx-product-card__image,
.woocommerce-page .related.products .tmx-product-card__image,
.home-shop-product-card__image,
.home-shop-product-card--recommendation .home-shop-product-card__image,
.home-shop-products-grid--discovery .home-shop-product-card__image,
.home-shop-showcase--discovery .home-shop-product-card__image{
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  aspect-ratio:1 / 1 !important;
  padding:0 !important;
  margin:0 !important;
  overflow:hidden !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:#f4f4f6 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}

.tmx-store-product-card__image img,
.tmx-store-product-card__image .tmx-product-image,
.tmx-product-card__image img,
.tmx-product-card__image .tmx-product-image,
.woocommerce ul.products li.product img,
body.single-product .tmx-product-modern-related .tmx-product-card__image img,
.woocommerce .related.products .tmx-product-card__image img,
.woocommerce-page .related.products .tmx-product-card__image img,
.home-shop-product-card__image img,
.home-shop-product-card__image .tmx-product-image,
.home-shop-product-card--recommendation .home-shop-product-card__image img,
.home-shop-product-card--recommendation .home-shop-product-card__image .tmx-product-image,
.home-shop-products-grid--discovery .home-shop-product-card__image img,
.home-shop-products-grid--discovery .home-shop-product-card__image .tmx-product-image,
.home-shop-showcase--discovery .home-shop-product-card__image img,
.home-shop-showcase--discovery .home-shop-product-card__image .tmx-product-image{
  width:100% !important;
  height:100% !important;
  min-width:100% !important;
  min-height:100% !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:cover !important;
  object-position:center center !important;
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  transform:none !important;
  transition:none !important;
}

.tmx-store-product-card:hover .tmx-store-product-card__image img,
.tmx-product-card:hover .tmx-product-card__image img,
.home-shop-product-card:hover .home-shop-product-card__image img{
  transform:none !important;
}

/* Cuerpo de las cards con el mismo ritmo visual en tienda y recomendados */
.tmx-store-product-card__body,
.tmx-product-card__body{
  display:flex !important;
  flex-direction:column !important;
  flex:1 !important;
  padding:18px 28px 28px !important;
  background:#fff !important;
}

.tmx-store-product-card__topline,
.tmx-product-card__meta{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
  margin:0 0 12px !important;
}

.tmx-store-product-card__cat,
.tmx-product-card__cat{
  display:inline-flex !important;
  width:auto !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  color:#61748f !important;
  font-family:'Poppins',sans-serif !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:700 !important;
  text-transform:uppercase !important;
  letter-spacing:.055em !important;
}

.tmx-store-product-card__stock,
.tmx-product-card__meta span{
  color:#173B6C !important;
  background:transparent !important;
  border:0 !important;
  padding:0 !important;
  border-radius:0 !important;
  font-family:'Poppins',sans-serif !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:500 !important;
  text-transform:none !important;
  letter-spacing:0 !important;
}

.tmx-product-card__meta span:first-child:not(:last-child){
  display:none !important;
}

.tmx-store-product-card__title,
.tmx-product-card__title{
  margin:0 0 16px !important;
  color:#06192f !important;
  font-family:'Poppins',sans-serif !important;
  font-size:18px !important;
  line-height:1.35 !important;
  font-weight:600 !important;
  letter-spacing:-.02em !important;
}

.tmx-store-product-card__title a,
.tmx-product-card__title a{
  color:inherit !important;
  text-decoration:none !important;
}

.tmx-store-product-card__price,
.tmx-product-card__price{
  margin-top:auto !important;
  color:#06192f !important;
  font-family:'Poppins',sans-serif !important;
  font-size:19px !important;
  line-height:1.35 !important;
  font-weight:600 !important;
}

.tmx-store-product-card__price del,
.tmx-product-card__price del{
  color:#6f7f91 !important;
  font-size:15px !important;
  font-weight:400 !important;
  margin-right:8px !important;
}

.tmx-store-product-card__price ins,
.tmx-product-card__price ins{
  color:#ef3340 !important;
  text-decoration:none !important;
  font-weight:600 !important;
}

.tmx-store-product-card__actions,
.tmx-product-card__actions{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:0 !important;
  width:100% !important;
  margin-top:22px !important;
}

.tmx-detail-btn,
.tmx-store-detail-btn{
  display:none !important;
}

.woocommerce .tmx-store-product-card__actions .button,
.woocommerce .tmx-store-product-card__actions .tmx-store-add-cart,
.woocommerce .tmx-product-card__actions .button,
.woocommerce .tmx-product-card__actions .tmx-add-cart,
.tmx-store-product-card__actions .button,
.tmx-store-product-card__actions .tmx-store-add-cart,
.tmx-product-card__actions .button,
.tmx-product-card__actions .tmx-add-cart{
  width:100% !important;
  min-width:100% !important;
  min-height:42px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:10px 14px !important;
  border-radius:5px !important;
  border:1px solid #ef3340 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#ef3340 !important;
  font-family:'Poppins',sans-serif !important;
  font-size:12px !important;
  line-height:1.1 !important;
  font-weight:700 !important;
  text-align:center !important;
  transform:none !important;
  transition:background-color .25s ease,color .25s ease,transform .2s ease !important;
}

.woocommerce .tmx-store-product-card__actions .button::before,
.woocommerce .tmx-store-product-card__actions .tmx-store-add-cart::before,
.woocommerce .tmx-product-card__actions .button::before,
.woocommerce .tmx-product-card__actions .tmx-add-cart::before,
.tmx-store-product-card__actions .button::before,
.tmx-store-product-card__actions .tmx-store-add-cart::before,
.tmx-product-card__actions .button::before,
.tmx-product-card__actions .tmx-add-cart::before{
  content:none !important;
  display:none !important;
}

.woocommerce .tmx-store-product-card__actions .button:hover,
.woocommerce .tmx-store-product-card__actions .tmx-store-add-cart:hover,
.woocommerce .tmx-product-card__actions .button:hover,
.woocommerce .tmx-product-card__actions .tmx-add-cart:hover,
.tmx-store-product-card__actions .button:hover,
.tmx-store-product-card__actions .tmx-store-add-cart:hover,
.tmx-product-card__actions .button:hover,
.tmx-product-card__actions .tmx-add-cart:hover{
  background:#ef3340 !important;
  color:#fff !important;
  border-color:#ef3340 !important;
  transform:translateY(-1px) !important;
}

@media (max-width:1180px){
  .tmx-store-product-grid,
  .woocommerce ul.products,
  body.single-product .tmx-product-modern-related ul.products,
  .woocommerce .related.products ul.products{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}

@media (max-width:860px){
  .tmx-store-product-grid,
  .woocommerce ul.products,
  body.single-product .tmx-product-modern-related ul.products,
  .woocommerce .related.products ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:16px !important;
  }

  .tmx-store-product-card__body,
  .tmx-product-card__body{
    padding:16px 18px 22px !important;
  }
}

@media (max-width:560px){
  .tmx-store-product-grid,
  .woocommerce ul.products,
  body.single-product .tmx-product-modern-related ul.products,
  .woocommerce .related.products ul.products{
    grid-template-columns:1fr !important;
  }
}


/* =========================================================
   NAVBAR v40 — REESCRITA DESDE CERO (fuente única)
   Reemplaza todas las reglas de navbar anteriores del tema.
   Al ir al final del archivo, gobierna el resultado final.
   ========================================================= */

/* ---------- 1. Cabecera principal (escritorio) ---------- */
.site-header{
  position:sticky;
  top:0;
  z-index:900;
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(23,59,108,.08);
}
.site-header__inner{
  min-height:var(--header-h);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}
.brand{display:inline-flex;align-items:center}
.brand__logo{height:38px;width:auto;display:block}

.site-header .nav{
  display:flex;
  align-items:center;
  gap:28px;
  color:#4f6480;
  font-family:var(--font-body);
  font-size:14px;
  font-weight:500;
}
.site-header .nav .tecnimax-nav__link,
.site-header .nav > a{
  position:relative;
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:8px 0;
  color:#4f6480;
  transition:color .2s ease;
}
.site-header .nav .tecnimax-nav__link::after,
.site-header .nav > a::after{
  content:"";
  position:absolute;
  left:0;bottom:0;
  width:0;height:2px;
  border-radius:999px;
  background:var(--yellow);
  transition:width .25s ease;
}
.site-header .nav .tecnimax-nav__link:hover,
.site-header .nav > a:hover{color:var(--blue-800)}
.site-header .nav .tecnimax-nav__link:hover::after,
.site-header .nav > a:hover::after{width:100%}

/* Estado activo */
.site-header .nav .is-active,
.site-header .nav .tecnimax-nav__link.is-active{color:var(--blue-800);font-weight:700}
.site-header .nav .is-active::after,
.site-header .nav .tecnimax-nav__link.is-active::after{width:100%}

/* ---------- 2. Dropdown (Alquiler) ---------- */
.nav-dropdown{position:relative;display:inline-flex}
.nav-dropdown__chevron{
  font-size:15px;line-height:1;
  transition:transform .25s ease;
}
.nav-dropdown:hover .nav-dropdown__chevron,
.nav-dropdown:focus-within .nav-dropdown__chevron{transform:rotate(180deg)}
.nav-dropdown__menu{
  position:absolute;
  top:calc(100% + 12px);
  left:50%;
  transform:translateX(-50%) translateY(-8px);
  min-width:200px;
  display:grid;
  gap:4px;
  padding:10px;
  border-radius:16px;
  background:#fff;
  border:1px solid rgba(23,59,108,.10);
  box-shadow:var(--shadow-soft);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .2s ease, transform .2s ease, visibility .2s ease;
  z-index:20;
}
.nav-dropdown:hover .nav-dropdown__menu,
.nav-dropdown:focus-within .nav-dropdown__menu{
  opacity:1;visibility:visible;pointer-events:auto;
  transform:translateX(-50%) translateY(0);
}
.nav-dropdown__menu a{
  padding:10px 12px;
  border-radius:10px;
  color:#4f6480;
  font-size:14px;
  font-weight:600;
  transition:background .2s ease,color .2s ease;
}
.nav-dropdown__menu a:hover{background:rgba(46,134,255,.08);color:var(--blue-800)}

/* ---------- 3. Botón CTA ---------- */
.site-header .header-cta{white-space:nowrap}

/* ---------- 4. Hamburguesa ---------- */
.menu-toggle{
  display:none;
  width:44px;height:44px;
  border-radius:12px;
  border:1px solid rgba(23,59,108,.14);
  background:#fff;
  align-items:center;justify-content:center;flex-direction:column;gap:5px;
  cursor:pointer;
  position:relative;z-index:960;
}
.menu-toggle span{
  width:20px;height:2px;border-radius:999px;background:var(--blue-800);
  transition:transform .25s ease, opacity .2s ease;
}
.menu-toggle.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-toggle.is-open span:nth-child(2){opacity:0}
.menu-toggle.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ---------- 5. Variante compacta para TIENDA ---------- */
.site-header--shop{--header-h:60px}
.site-header--shop .brand__logo{height:30px}
.site-header--shop .site-header__inner{min-height:60px}
.site-header--shop .nav{gap:22px;font-size:13px}

/* ---------- 6. Navbar de TIENDA (buscador + carrito) ---------- */
.shop-navbar{
  border-top:1px solid rgba(23,59,108,.06);
  background:linear-gradient(180deg,#ffffff 0%,#f6f9fd 100%);
}
.shop-navbar__inner{
  width:min(1126px,calc(100% - 48px));
  margin:0 auto;
  min-height:64px;
  display:flex;
  align-items:center;
  gap:18px;
  padding:12px 0;
}
.shop-search{
  flex:1 1 auto;
  display:flex;
  align-items:center;
  gap:0;
  background:#fff;
  border:1px solid rgba(23,59,108,.14);
  border-radius:999px;
  padding:4px 4px 4px 16px;
  box-shadow:0 8px 22px rgba(12,34,64,.05);
  transition:border-color .2s ease, box-shadow .2s ease;
}
.shop-search:focus-within{
  border-color:rgba(46,134,255,.45);
  box-shadow:0 10px 26px rgba(46,134,255,.14);
}
.shop-search__icon{display:inline-flex;color:#8496ad;flex:0 0 auto}
.shop-search__input{
  flex:1 1 auto;
  min-width:0;
  border:0;
  outline:0;
  background:transparent;
  padding:12px 12px;
  color:var(--blue-950);
  font-family:var(--font-body);
  font-size:15px;
}
.shop-search__input::placeholder{color:#93a2b6}
.shop-search__submit{
  flex:0 0 auto;
  border:0;
  cursor:pointer;
  border-radius:999px;
  padding:11px 24px;
  background:var(--blue-500);
  color:#fff;
  font-family:var(--font-body);
  font-size:14px;
  font-weight:700;
  transition:transform .2s ease, background .2s ease;
}
.shop-search__submit:hover{background:#1f6fe0;transform:translateY(-1px)}

.shop-navbar__actions{display:flex;align-items:center;gap:12px;flex:0 0 auto}
.shop-cart{
  position:relative;
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:10px 18px;
  border-radius:999px;
  background:#fff;
  border:1px solid rgba(23,59,108,.14);
  color:var(--blue-800);
  font-family:var(--font-body);
  font-size:14px;
  font-weight:700;
  box-shadow:0 8px 22px rgba(12,34,64,.05);
  transition:transform .2s ease, border-color .2s ease, color .2s ease;
}
.shop-cart:hover{transform:translateY(-1px);border-color:rgba(46,134,255,.35);color:var(--blue-950)}
.shop-cart__icon{display:inline-flex}
.shop-cart .shop-cart__badge{
  display:inline-flex;
  align-items:center;justify-content:center;
  min-width:22px;height:22px;
  padding:0 6px;
  border-radius:999px;
  background:#EF1A2A;
  color:#fff;
  font-size:12px;
  font-weight:800;
  line-height:1;
}
.shop-cart .shop-cart__badge.is-empty{background:#c3ccda}



/* ---------- 7. Menú MÓVIL — tarjeta desplegable (position:absolute) ----------
   Se posiciona relativo al header sticky (top:100% => queda DEBAJO del header).
   NO usa position:fixed: el header tiene backdrop-filter y atraparía al fixed
   dentro de sus ~60px, colapsándolo en una cajita con scroll. absolute evita eso.
------------------------------------------------------------------------------- */
@media (max-width:820px){
  :root{--header-h:66px}
  .site-header--shop{--header-h:60px}

  .site-header .header-cta{display:none !important}
  .menu-toggle{display:inline-flex !important}

  .site-header .nav{
    position:absolute !important;
    top:calc(100% + 10px) !important;
    left:12px !important;
    right:12px !important;
    width:auto !important;
    z-index:200 !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    align-content:start !important;
    gap:10px !important;
    margin:0 !important;
    padding:16px !important;
    max-height:calc(100vh - 120px) !important;
    overflow-y:auto !important;
    -webkit-overflow-scrolling:touch !important;
    border-radius:20px !important;
    background:linear-gradient(180deg,#ffffff 0%,#f6f9fd 100%) !important;
    border:1px solid rgba(23,59,108,.10) !important;
    box-shadow:0 24px 60px rgba(12,34,64,.18) !important;
    opacity:0 !important;
    visibility:hidden !important;
    transform:translateY(-10px) !important;
    pointer-events:none !important;
    transition:opacity .22s ease, transform .22s ease, visibility .22s ease !important;
  }
  .site-header .nav.is-open{
    opacity:1 !important;
    visibility:visible !important;
    transform:translateY(0) !important;
    pointer-events:auto !important;
  }
  .site-header .nav::before{
    content:"Menú";
    display:block;
    margin:2px 2px 2px;
    color:#6b7b91;
    font-size:12px;font-weight:800;
    letter-spacing:.12em;text-transform:uppercase;
  }

  /* Enlaces como tarjetas */
  .site-header .nav .tecnimax-nav__link,
  .site-header .nav > a,
  .site-header .nav .nav-dropdown__trigger{
    width:100% !important;
    min-height:52px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:12px !important;
    padding:0 16px !important;
    border-radius:14px !important;
    background:#ffffff !important;
    border:1px solid rgba(23,59,108,.10) !important;
    box-shadow:0 6px 16px rgba(12,34,64,.05) !important;
    color:#173B6C !important;
    font-size:15px !important;font-weight:650 !important;
  }
  .site-header .nav .tecnimax-nav__link::after,
  .site-header .nav > a::after{display:none !important}
  .site-header .nav .tecnimax-nav__link:hover,
  .site-header .nav > a:hover{background:#f1f6ff !important;border-color:rgba(46,134,255,.20) !important}
  .site-header .nav .is-active,
  .site-header .nav .tecnimax-nav__link.is-active{
    background:#eef5ff !important;border-color:rgba(46,134,255,.24) !important;
  }

  /* Dropdown desplegado en línea */
  .site-header .nav .nav-dropdown{
    position:static !important;width:100% !important;
    display:grid !important;gap:8px !important;
  }
  .site-header .nav .nav-dropdown__chevron{transform:rotate(180deg) !important}
  .site-header .nav .nav-dropdown__menu{
    position:static !important;transform:none !important;
    opacity:1 !important;visibility:visible !important;pointer-events:auto !important;
    display:grid !important;gap:6px !important;min-width:0 !important;
    margin:0 !important;padding:8px !important;border-radius:14px !important;
    background:#edf4ff !important;box-shadow:none !important;
  }
  .site-header .nav .nav-dropdown__menu a{
    min-height:46px !important;display:flex !important;align-items:center !important;
    background:#fff !important;border:1px solid rgba(23,59,108,.06) !important;
    border-radius:10px !important;box-shadow:none !important;
    color:#4f6480 !important;font-size:14px !important;font-weight:600 !important;
  }

  /* Navbar de tienda en móvil */
  .shop-navbar__inner{min-height:auto;gap:10px;padding:10px 0 12px;flex-wrap:nowrap}
  .shop-search{flex:1 1 auto;padding-left:12px}
  .shop-search__input{font-size:14px;padding:10px 8px}
  .shop-search__submit{padding:10px 16px}
  .shop-cart{padding:10px;gap:0}
  .shop-cart .shop-cart__label{display:none}
}

@media (max-width:520px){
  .shop-search__submit{padding:10px 0;width:44px;font-size:0}
  .shop-search__submit::after{content:"→";font-size:18px}
}

/* ---------- 8. Override específico del badge del carrito (mayor especificidad) ---------- */
html body .site-header .shop-cart .shop-cart__badge{
  position:static !important;
  transform:none !important;
  margin-left:0 !important;
  box-shadow:none !important;
  background:#EF1A2A !important;
  color:#fff !important;
}
html body .site-header .shop-cart .shop-cart__badge.is-empty{background:#c3ccda !important}

@media (max-width:820px){
  html body .site-header .shop-cart .shop-cart__badge{
    position:absolute !important;
    top:-4px !important;
    right:-4px !important;
    margin-left:0 !important;
    box-shadow:0 2px 6px rgba(239,26,42,.4) !important;
  }
}

/* =========================================================
   NAVBAR v43.1 - Menú móvil con overlay gris y radio 5px
   Punto de partida: v43-navbar-fix-final
   ========================================================= */
@media (max-width:820px){
  html body.tmx-mobile-menu-open{
    overflow:hidden !important;
    touch-action:none !important;
  }
  html body.tmx-mobile-menu-open::before{
    content:"";
    position:fixed;
    top:var(--header-h);
    left:0;
    right:0;
    bottom:0;
    z-index:880;
    background:rgba(8,20,36,.58);
    backdrop-filter:blur(3px);
    -webkit-backdrop-filter:blur(3px);
    pointer-events:none;
  }
  html body .site-header{
    z-index:1000 !important;
  }
  html body .site-header .site-header__inner{
    position:relative !important;
  }
  html body .site-header .menu-toggle{
    display:inline-flex !important;
    border-radius:5px !important;
    z-index:1010 !important;
  }
  html body .site-header .header-cta{
    display:none !important;
  }
  html body .site-header .nav{
    position:absolute !important;
    top:calc(100% + 8px) !important;
    left:8px !important;
    right:8px !important;
    width:auto !important;
    height:calc(100dvh - var(--header-h) - 24px) !important;
    max-height:none !important;
    z-index:1005 !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    align-content:start !important;
    gap:0 !important;
    margin:0 !important;
    padding:16px !important;
    overflow-y:auto !important;
    -webkit-overflow-scrolling:touch !important;
    border-radius:5px !important;
    background:#ffffff !important;
    border:1px solid rgba(23,59,108,.10) !important;
    box-shadow:0 24px 70px rgba(4,16,34,.28) !important;
    opacity:0 !important;
    visibility:hidden !important;
    transform:translateY(-8px) !important;
    pointer-events:none !important;
    transition:opacity .22s ease, transform .22s ease, visibility .22s ease !important;
  }
  html body .site-header .nav.is-open{
    opacity:1 !important;
    visibility:visible !important;
    transform:translateY(0) !important;
    pointer-events:auto !important;
  }
  html body .site-header .nav::before{
    content:"Men\00fa";
    display:block;
    padding:0 4px 12px !important;
    margin:0 !important;
    color:#72839a !important;
    font-size:12px !important;
    font-weight:800 !important;
    line-height:1 !important;
    letter-spacing:.12em !important;
    text-transform:uppercase !important;
  }
  html body .site-header .nav .tecnimax-nav__link,
  html body .site-header .nav > a,
  html body .site-header .nav .nav-dropdown__trigger{
    width:100% !important;
    min-height:50px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:12px !important;
    padding:0 12px !important;
    border-radius:5px !important;
    background:transparent !important;
    border:0 !important;
    border-bottom:1px solid rgba(23,59,108,.08) !important;
    box-shadow:none !important;
    color:#173B6C !important;
    font-size:15px !important;
    font-weight:650 !important;
  }
  html body .site-header .nav .tecnimax-nav__link::after,
  html body .site-header .nav > a::after{
    display:none !important;
  }
  html body .site-header .nav .tecnimax-nav__link:hover,
  html body .site-header .nav > a:hover,
  html body .site-header .nav .nav-dropdown__trigger:hover{
    background:#f1f6ff !important;
    color:#0A3976 !important;
  }
  html body .site-header .nav .is-active,
  html body .site-header .nav .tecnimax-nav__link.is-active{
    background:#edf4ff !important;
    color:#0A3976 !important;
    border-color:rgba(46,134,255,.22) !important;
  }
  html body .site-header .nav .nav-dropdown{
    position:static !important;
    width:100% !important;
    display:grid !important;
    gap:8px !important;
  }
  html body .site-header .nav .nav-dropdown__chevron{
    transform:rotate(180deg) !important;
  }
  html body .site-header .nav .nav-dropdown__menu{
    position:static !important;
    transform:none !important;
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    display:grid !important;
    gap:6px !important;
    min-width:0 !important;
    margin:0 0 8px !important;
    padding:8px !important;
    border-radius:5px !important;
    background:#f3f6fb !important;
    border:1px solid rgba(23,59,108,.08) !important;
    box-shadow:none !important;
  }
  html body .site-header .nav .nav-dropdown__menu a{
    min-height:44px !important;
    display:flex !important;
    align-items:center !important;
    padding:0 12px !important;
    background:#fff !important;
    border:1px solid rgba(23,59,108,.06) !important;
    border-radius:5px !important;
    box-shadow:none !important;
    color:#4f6480 !important;
    font-size:14px !important;
    font-weight:600 !important;
  }
}
@supports not (height:100dvh){
  @media (max-width:820px){
    html body .site-header .nav{
      height:calc(100vh - var(--header-h) - 24px) !important;
    }
  }
}


/* =========================================================
   NAVBAR v43.2 - Móvil compacto, dropdown cerrado y flecha limpia
   ========================================================= */
@media (max-width:820px){
  html body .site-header .nav{
    height:auto !important;
    min-height:0 !important;
    max-height:calc(100dvh - var(--header-h) - 24px) !important;
    border-radius:5px !important;
  }
  html body .site-header .nav .nav-dropdown{gap:0 !important;}
  html body .site-header .nav .nav-dropdown__chevron{
    width:28px !important;
    height:28px !important;
    flex:0 0 28px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    border-radius:5px !important;
    background:#f3f7ff !important;
    border:1px solid rgba(23,59,108,.12) !important;
    color:#173B6C !important;
    line-height:0 !important;
    transform:none !important;
    transition:transform .2s ease, background .2s ease !important;
  }
  html body .site-header .nav .nav-dropdown__chevron svg{
    width:13px !important;
    height:13px !important;
    display:block !important;
    stroke:currentColor !important;
  }
  html body .site-header .nav .nav-dropdown.is-mobile-open .nav-dropdown__chevron{
    transform:rotate(180deg) !important;
    background:#eaf2ff !important;
  }
  html body .site-header .nav .nav-dropdown__menu,
  html body .site-header .nav .nav-dropdown:hover .nav-dropdown__menu,
  html body .site-header .nav .nav-dropdown:focus-within .nav-dropdown__menu{
    display:none !important;
    margin:8px 0 10px !important;
    border-radius:5px !important;
  }
  html body .site-header .nav .nav-dropdown.is-mobile-open .nav-dropdown__menu,
  html body .site-header .nav .nav-dropdown.is-mobile-open:hover .nav-dropdown__menu,
  html body .site-header .nav .nav-dropdown.is-mobile-open:focus-within .nav-dropdown__menu{
    display:grid !important;
  }
  html body .site-header .nav .nav-dropdown__menu::before{display:none !important;}
}
@supports not (height:100dvh){
  @media (max-width:820px){
    html body .site-header .nav{max-height:calc(100vh - var(--header-h) - 24px) !important;}
  }
}

/* =========================================================
   NAVBAR v43.3 - Flecha desktop limpia
   Evita doble flecha: antes el span dibujaba una flecha con borde
   y además contenía un SVG. Se deja solo el SVG.
   ========================================================= */
@media (min-width:821px){
  html body .site-header .nav .nav-dropdown__trigger{
    gap:6px !important;
  }
  html body .site-header .nav .nav-dropdown__chevron{
    width:14px !important;
    height:14px !important;
    flex:0 0 14px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    border:0 !important;
    border-right:0 !important;
    border-bottom:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    color:currentColor !important;
    font-size:0 !important;
    line-height:0 !important;
    opacity:.78 !important;
    transform:none !important;
    transition:transform .2s ease, opacity .2s ease !important;
  }
  html body .site-header .nav .nav-dropdown__chevron::before,
  html body .site-header .nav .nav-dropdown__chevron::after{
    content:none !important;
    display:none !important;
  }
  html body .site-header .nav .nav-dropdown__chevron svg{
    width:14px !important;
    height:14px !important;
    display:block !important;
    stroke:currentColor !important;
  }
  html body .site-header .nav .nav-dropdown:hover .nav-dropdown__chevron,
  html body .site-header .nav .nav-dropdown:focus-within .nav-dropdown__chevron{
    transform:rotate(180deg) !important;
    opacity:1 !important;
  }
}


/* =========================================================
   v43.4 - Buscador tienda radius 5 + carrito solo icono
   ========================================================= */
html body .site-header .shop-search{
  border-radius:5px !important;
  padding:4px 4px 4px 16px !important;
}
html body .site-header .shop-search__submit{
  border-radius:5px !important;
}
html body .site-header .shop-search__input{
  border-radius:5px !important;
}
html body .site-header .shop-cart,
html body .site-header a.shop-cart,
html body .site-header .shop-cart.tmx-cart-link{
  width:auto !important;
  min-width:0 !important;
  height:auto !important;
  min-height:0 !important;
  padding:6px !important;
  gap:0 !important;
  border:0 !important;
  border-radius:5px !important;
  background:transparent !important;
  box-shadow:none !important;
  color:var(--blue-800) !important;
  transform:none !important;
}
html body .site-header .shop-cart:hover,
html body .site-header a.shop-cart:hover,
html body .site-header .shop-cart.tmx-cart-link:hover{
  background:rgba(46,134,255,.08) !important;
  border:0 !important;
  box-shadow:none !important;
  color:var(--blue-950) !important;
  transform:none !important;
}
html body .site-header .shop-cart__icon{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  line-height:0 !important;
}
html body .site-header .shop-cart__icon svg{
  width:24px !important;
  height:24px !important;
}
html body .site-header .shop-cart__label,
html body .site-header .shop-cart .shop-cart__badge,
html body .site-header .shop-cart .tmx-cart-badge{
  display:none !important;
}
@media (max-width:820px){
  html body .site-header .shop-search{
    border-radius:5px !important;
  }
  html body .site-header .shop-search__submit{
    border-radius:5px !important;
  }
  html body .site-header .shop-cart,
  html body .site-header a.shop-cart{
    padding:6px !important;
    border-radius:5px !important;
  }
}
@media (max-width:520px){
  html body .site-header .shop-search__submit{
    width:44px !important;
    border-radius:5px !important;
  }
}

/* =========================================================
   v43.5 - Carrito moderno + buscador visible en carrito
   ========================================================= */
body.woocommerce-cart{
  background:linear-gradient(180deg,#ffffff 0%,#f5f8fc 42%,#ffffff 100%) !important;
}
body.woocommerce-cart .shop-navbar{
  border-top:1px solid rgba(23,59,108,.06) !important;
  border-bottom:1px solid rgba(23,59,108,.08) !important;
  background:#fff !important;
}
body.woocommerce-cart .shop-navbar__inner,
body.tmx-shop-body .shop-navbar__inner{
  width:min(1280px,calc(100% - 72px)) !important;
  min-height:72px !important;
}
body.woocommerce-cart .shop-search,
body.tmx-shop-body .shop-search{
  border-radius:5px !important;
  padding:4px 4px 4px 18px !important;
  box-shadow:0 10px 26px rgba(12,34,64,.055) !important;
}
body.woocommerce-cart .shop-search__submit,
body.woocommerce-cart .shop-search__input,
body.tmx-shop-body .shop-search__submit,
body.tmx-shop-body .shop-search__input{
  border-radius:5px !important;
}
body.woocommerce-cart .shop-search__submit,
body.tmx-shop-body .shop-search__submit{
  min-width:128px !important;
  min-height:44px !important;
}
body.woocommerce-cart .shop-cart,
body.tmx-shop-body .shop-cart{
  border-radius:5px !important;
}

.tmx-cart-page-shell{
  background:linear-gradient(180deg,#ffffff 0%,#f5f8fc 48%,#ffffff 100%);
}
.tmx-cart-page{
  padding:58px 0 76px !important;
}
.tmx-cart-page__container{
  width:min(1280px,calc(100% - 72px)) !important;
  margin-inline:auto;
}
.tmx-cart-hero{
  margin:0 0 30px;
}
.tmx-cart-hero h1{
  margin:0;
  color:var(--blue-950);
  font-family:var(--font-primary);
  font-size:clamp(38px,4vw,58px);
  line-height:1.02;
  letter-spacing:-.045em;
  font-weight:700;
}
.tmx-cart-breadcrumb{
  display:flex;
  align-items:center;
  gap:12px;
  margin-top:14px;
  color:#62748d;
  font-size:15px;
  font-weight:500;
}
.tmx-cart-breadcrumb a{
  color:#0b63f6;
  font-weight:700;
}
.tmx-cart-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) 380px;
  gap:28px;
  align-items:start;
}
.tmx-cart-main{
  display:grid;
  gap:26px;
}
.tmx-cart-card,
.tmx-cart-summary .cart_totals,
.tmx-cart-benefits,
.tmx-cart-summary__trust,
.tmx-cart-empty-state{
  background:#fff !important;
  border:1px solid rgba(23,59,108,.12) !important;
  border-radius:18px !important;
  box-shadow:0 20px 55px rgba(12,34,64,.075) !important;
}
.tmx-cart-card{
  padding:20px 22px 24px !important;
  margin:0 !important;
}
.tmx-cart-table{
  width:100%;
}
.tmx-cart-table__head{
  display:grid;
  grid-template-columns:minmax(330px,1fr) 130px 160px 130px;
  gap:24px;
  align-items:center;
  min-height:54px;
  padding:0 18px;
  border-bottom:1px solid rgba(23,59,108,.12);
  color:#526781;
  font-size:12px;
  font-weight:750;
  text-transform:uppercase;
  letter-spacing:.045em;
}
.tmx-cart-table__body{
  display:grid;
}
.tmx-cart-item{
  display:grid;
  grid-template-columns:minmax(330px,1fr) 130px 160px 130px;
  gap:24px;
  align-items:center;
  padding:26px 18px;
  border-bottom:1px solid rgba(23,59,108,.09);
}
.tmx-cart-item:last-child{
  border-bottom:0;
}
.tmx-cart-item__product{
  display:grid;
  grid-template-columns:36px 96px minmax(0,1fr);
  gap:18px;
  align-items:center;
  min-width:0;
}
.tmx-cart-item__remove{
  display:flex;
  align-items:center;
  justify-content:center;
}
.woocommerce .tmx-cart-item__remove a.remove,
.tmx-cart-item__remove a.remove{
  width:30px !important;
  height:30px !important;
  border-radius:999px !important;
  display:grid !important;
  place-items:center !important;
  background:#fff1f2 !important;
  color:#ff3045 !important;
  font-size:22px !important;
  font-weight:500 !important;
  line-height:1 !important;
  text-decoration:none !important;
  transition:background .2s ease,color .2s ease,transform .2s ease !important;
}
.woocommerce .tmx-cart-item__remove a.remove:hover,
.tmx-cart-item__remove a.remove:hover{
  background:#ff3045 !important;
  color:#fff !important;
  transform:scale(1.03);
}
.tmx-cart-item__thumb{
  width:96px;
  height:86px;
  display:grid;
  place-items:center;
  border-radius:10px;
  overflow:hidden;
  background:#f4f7fb;
  border:1px solid rgba(23,59,108,.06);
}
.tmx-cart-item__thumb a,
.tmx-cart-item__thumb img{
  width:100%;
  height:100%;
}
.woocommerce .tmx-cart-item__thumb img,
.tmx-cart-item__thumb img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  padding:0 !important;
  border-radius:0 !important;
  background:transparent !important;
}
.tmx-cart-item__info{
  min-width:0;
}
.tmx-cart-item__name{
  margin:0;
  color:var(--blue-950);
  font-size:16px;
  line-height:1.25;
  font-weight:750;
  letter-spacing:-.012em;
}
.tmx-cart-item__name a{
  color:inherit;
}
.tmx-cart-item__sku{
  display:block;
  margin-top:7px;
  color:#60718a;
  font-size:13px;
  font-weight:500;
}
.tmx-cart-item__price,
.tmx-cart-item__subtotal{
  color:#0056d8;
  font-size:16px;
  font-weight:800;
  white-space:nowrap;
}
.tmx-cart-item__price .amount,
.tmx-cart-item__subtotal .amount{
  color:inherit !important;
  font-weight:inherit !important;
}
.tmx-qty-control{
  display:inline-grid;
  grid-template-columns:44px 54px 44px;
  min-height:44px;
  border:1px solid rgba(23,59,108,.14);
  border-radius:8px;
  overflow:hidden;
  background:#fff;
}
.tmx-qty-control__btn{
  border:0;
  background:#fff;
  color:#173B6C;
  font-size:20px;
  font-weight:500;
  cursor:pointer;
  transition:background .2s ease,color .2s ease;
}
.tmx-qty-control__btn:hover{
  background:#eff5ff;
  color:#0b63f6;
}
.tmx-qty-control .quantity{
  margin:0 !important;
  display:block !important;
}
.tmx-qty-control input.qty{
  width:54px !important;
  height:44px !important;
  min-height:44px !important;
  border:0 !important;
  border-left:1px solid rgba(23,59,108,.10) !important;
  border-right:1px solid rgba(23,59,108,.10) !important;
  border-radius:0 !important;
  padding:0 !important;
  background:#fff !important;
  color:var(--blue-950) !important;
  text-align:center !important;
  font-size:15px !important;
  font-weight:600 !important;
  box-shadow:none !important;
  appearance:textfield;
}
.tmx-qty-control input.qty::-webkit-outer-spin-button,
.tmx-qty-control input.qty::-webkit-inner-spin-button{
  margin:0;
  appearance:none;
}
.tmx-cart-actions{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:22px 0 0;
  border-top:1px solid rgba(23,59,108,.09);
}
.tmx-cart-empty,
.woocommerce .tmx-cart-update,
.tmx-cart-update{
  min-height:46px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:10px !important;
  padding:0 22px !important;
  border-radius:5px !important;
  font-size:14px !important;
  font-weight:750 !important;
  line-height:1 !important;
  cursor:pointer !important;
  box-shadow:none !important;
}
.tmx-cart-empty{
  background:#fff !important;
  border:1px solid #ff3045 !important;
  color:#ff3045 !important;
}
.tmx-cart-empty:hover{
  background:#fff1f2 !important;
}
.woocommerce .tmx-cart-update,
.tmx-cart-update{
  background:#fff !important;
  border:1px solid #0b63f6 !important;
  color:#0056d8 !important;
}
.woocommerce .tmx-cart-update:hover,
.tmx-cart-update:hover{
  background:#f0f6ff !important;
  transform:none !important;
}
.tmx-cart-summary{
  position:sticky;
  top:calc(var(--header-h) + 28px);
  display:grid;
  gap:18px;
}
.tmx-cart-summary .cart_totals{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:24px !important;
}
.tmx-cart-summary .cart_totals h2{
  margin:0 0 18px !important;
  color:var(--blue-950) !important;
  font-size:24px !important;
  line-height:1.15 !important;
  letter-spacing:-.025em !important;
  font-weight:800 !important;
}
.tmx-cart-totals-box{
  border:1px solid rgba(23,59,108,.12);
  border-radius:8px;
  overflow:hidden;
  background:#fff;
}
.tmx-cart-total-row{
  min-height:54px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:0 16px;
  border-bottom:1px solid rgba(23,59,108,.08);
  color:var(--blue-950);
  font-size:14px;
}
.tmx-cart-total-row:last-child{
  border-bottom:0;
}
.tmx-cart-total-row span{
  font-weight:650;
}
.tmx-cart-total-row strong,
.tmx-cart-total-row .amount{
  color:var(--blue-950) !important;
  font-weight:750 !important;
}
.tmx-cart-total-row--grand{
  min-height:64px;
  background:linear-gradient(180deg,#f9fbfe,#f2f6fb);
}
.tmx-cart-total-row--grand span{
  font-size:16px;
  font-weight:800;
}
.tmx-cart-total-row--grand strong,
.tmx-cart-total-row--grand .amount{
  color:#0056d8 !important;
  font-size:24px !important;
  font-weight:850 !important;
}
.tmx-cart-checkout{
  margin-top:20px !important;
  padding:0 !important;
}
.woocommerce .tmx-cart-checkout a.checkout-button,
.tmx-cart-checkout a.checkout-button{
  width:100% !important;
  min-height:58px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:5px !important;
  background:linear-gradient(135deg,#0056d8,#0b63f6) !important;
  color:#fff !important;
  font-size:16px !important;
  font-weight:800 !important;
  box-shadow:0 14px 30px rgba(11,99,246,.18) !important;
}
.woocommerce .tmx-cart-checkout a.checkout-button::after,
.tmx-cart-checkout a.checkout-button::after{
  content:'→';
  margin-left:14px;
  font-size:20px;
  line-height:1;
}
.tmx-cart-benefits{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:0;
  padding:28px 24px !important;
}
.tmx-cart-benefits article{
  min-width:0;
  display:grid;
  justify-items:center;
  text-align:center;
  gap:8px;
  padding:8px 20px;
  border-right:1px solid rgba(23,59,108,.10);
}
.tmx-cart-benefits article:last-child{
  border-right:0;
}
.tmx-cart-benefits span,
.tmx-cart-summary__trust span{
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  border-radius:50%;
  background:#eff5ff;
  color:#0056d8;
}
.tmx-cart-benefits svg,
.tmx-cart-summary__trust svg{
  width:25px;
  height:25px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.tmx-cart-benefits strong{
  color:var(--blue-950);
  font-size:15px;
  line-height:1.25;
  font-weight:800;
}
.tmx-cart-benefits small{
  color:#60718a;
  font-size:13px;
  line-height:1.35;
  font-weight:500;
}
.tmx-cart-summary__trust{
  padding:6px 24px 22px !important;
  box-shadow:none !important;
  border-top:0 !important;
}
.tmx-cart-summary__trust div{
  display:grid;
  grid-template-columns:46px 1fr;
  gap:14px;
  align-items:center;
  padding:16px 0;
  border-top:1px solid rgba(23,59,108,.10);
}
.tmx-cart-summary__trust p{
  margin:0;
  display:grid;
  gap:2px;
}
.tmx-cart-summary__trust strong{
  color:var(--blue-950);
  font-size:14px;
  line-height:1.25;
  font-weight:800;
}
.tmx-cart-summary__trust small{
  color:#60718a;
  font-size:12px;
  line-height:1.3;
  font-weight:500;
}
.woocommerce-cart .woocommerce-notices-wrapper{
  width:min(1280px,calc(100% - 72px));
  margin:18px auto 0;
}
.woocommerce-cart .woocommerce-message,
.woocommerce-cart .woocommerce-info,
.woocommerce-cart .woocommerce-error{
  border:1px solid rgba(23,59,108,.12) !important;
  border-radius:10px !important;
  background:#fff !important;
  color:var(--blue-950) !important;
  box-shadow:0 12px 30px rgba(12,34,64,.06) !important;
}
.tmx-cart-empty-state{
  max-width:620px;
  margin:0 auto;
  padding:56px 36px !important;
  text-align:center;
}
.tmx-cart-empty-state__icon{
  width:64px;
  height:64px;
  display:grid;
  place-items:center;
  margin:0 auto 18px;
  border-radius:50%;
  background:#eff5ff;
  font-size:28px;
}
.tmx-cart-empty-state h1{
  margin:0;
  color:var(--blue-950);
  font-family:var(--font-primary);
  font-size:clamp(30px,4vw,44px);
  letter-spacing:-.035em;
  line-height:1.1;
}
.tmx-cart-empty-state p{
  margin:12px auto 24px;
  color:#60718a;
  max-width:420px;
}
.woocommerce .tmx-cart-empty-state__button{
  min-height:50px !important;
  border-radius:5px !important;
  padding:0 24px !important;
  background:#0b63f6 !important;
  color:#fff !important;
  font-weight:800 !important;
}

@media (max-width:1120px){
  .tmx-cart-layout{
    grid-template-columns:1fr;
  }
  .tmx-cart-summary{
    position:static;
  }
  .tmx-cart-summary__trust{
    display:none;
  }
}
@media (max-width:880px){
  body.woocommerce-cart .shop-navbar__inner,
  body.tmx-shop-body .shop-navbar__inner,
  .tmx-cart-page__container,
  .woocommerce-cart .woocommerce-notices-wrapper{
    width:min(100% - 32px,1280px) !important;
  }
  .tmx-cart-page{
    padding:40px 0 60px !important;
  }
  .tmx-cart-table__head{
    display:none;
  }
  .tmx-cart-card{
    padding:14px !important;
    border-radius:14px !important;
  }
  .tmx-cart-item{
    grid-template-columns:1fr;
    gap:18px;
    padding:20px 4px;
  }
  .tmx-cart-item__product{
    grid-template-columns:30px 82px minmax(0,1fr);
    gap:12px;
  }
  .tmx-cart-item__thumb{
    width:82px;
    height:76px;
  }
  .tmx-cart-item__price,
  .tmx-cart-item__subtotal,
  .tmx-cart-item__quantity{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    padding-left:42px;
  }
  .tmx-cart-item__price::before{
    content:'Precio';
    color:#60718a;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.04em;
  }
  .tmx-cart-item__quantity::before{
    content:'Cantidad';
    color:#60718a;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.04em;
  }
  .tmx-cart-item__subtotal::before{
    content:'Subtotal';
    color:#60718a;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.04em;
  }
  .tmx-cart-actions{
    display:grid;
    grid-template-columns:1fr;
  }
  .tmx-cart-empty,
  .woocommerce .tmx-cart-update,
  .tmx-cart-update{
    width:100% !important;
  }
  .tmx-cart-benefits{
    grid-template-columns:repeat(2,minmax(0,1fr));
    padding:18px !important;
  }
  .tmx-cart-benefits article:nth-child(2n){
    border-right:0;
  }
  .tmx-cart-benefits article:nth-child(n+3){
    border-top:1px solid rgba(23,59,108,.10);
  }
}
@media (max-width:620px){
  body.woocommerce-cart .shop-navbar__inner,
  body.tmx-shop-body .shop-navbar__inner{
    display:grid !important;
    grid-template-columns:1fr auto !important;
    gap:10px !important;
    padding:10px 0 !important;
  }
  body.woocommerce-cart .shop-search__submit,
  body.tmx-shop-body .shop-search__submit{
    min-width:44px !important;
    width:44px !important;
    padding:0 !important;
    font-size:0 !important;
    position:relative;
  }
  body.woocommerce-cart .shop-search__submit::before,
  body.tmx-shop-body .shop-search__submit::before{
    content:'⌕';
    font-size:18px;
  }
  .tmx-cart-benefits{
    grid-template-columns:1fr;
  }
  .tmx-cart-benefits article,
  .tmx-cart-benefits article:nth-child(2n){
    border-right:0;
    border-top:1px solid rgba(23,59,108,.10);
  }
  .tmx-cart-benefits article:first-child{
    border-top:0;
  }
  .tmx-cart-hero h1{
    font-size:34px;
  }
}

/* =========================================================
   v43.6 - Carrito igual al mockup + cotización por WhatsApp
   ========================================================= */
body.admin-bar .site-header{
  top:32px !important;
}
@media (max-width:782px){
  body.admin-bar .site-header{top:46px !important;}
}

body.woocommerce-cart,
body.page-template-default.woocommerce-cart{
  background:linear-gradient(180deg,#ffffff 0%,#f5f9ff 44%,#ffffff 100%) !important;
}

body.woocommerce-cart .site-header{
  background:#fff !important;
  border-bottom:1px solid rgba(23,59,108,.08) !important;
  box-shadow:none !important;
}
body.woocommerce-cart .site-header__inner{
  width:min(1280px,calc(100% - 72px)) !important;
  min-height:78px !important;
}
body.woocommerce-cart .brand__logo{
  height:40px !important;
}

body.woocommerce-cart .shop-navbar{
  display:block !important;
  width:100% !important;
  border-top:0 !important;
  border-bottom:1px solid rgba(23,59,108,.10) !important;
  background:#ffffff !important;
  position:relative !important;
  z-index:20 !important;
}
body.woocommerce-cart .shop-navbar__inner{
  width:min(1280px,calc(100% - 72px)) !important;
  min-height:86px !important;
  padding:16px 0 18px !important;
}
body.woocommerce-cart .shop-search{
  border-radius:5px !important;
  min-height:58px !important;
  padding:4px 4px 4px 20px !important;
  border:1px solid rgba(23,59,108,.14) !important;
  background:#fff !important;
  box-shadow:0 12px 28px rgba(12,34,64,.055) !important;
}
body.woocommerce-cart .shop-search__input{
  min-height:48px !important;
  padding:0 14px !important;
  border-radius:5px !important;
  font-size:15px !important;
}
body.woocommerce-cart .shop-search__submit{
  min-width:132px !important;
  min-height:50px !important;
  border-radius:5px !important;
  background:#0b63f6 !important;
  font-size:15px !important;
  font-weight:800 !important;
  box-shadow:0 12px 28px rgba(11,99,246,.18) !important;
}

body.woocommerce-cart .tmx-cart-page-shell,
body.woocommerce-cart .tmx-cart-page{
  background:linear-gradient(180deg,#ffffff 0%,#f5f9ff 48%,#ffffff 100%) !important;
}
body.woocommerce-cart .tmx-cart-page{
  padding:54px 0 78px !important;
}
body.woocommerce-cart .tmx-cart-page__container{
  width:min(1280px,calc(100% - 72px)) !important;
  margin:0 auto !important;
}
body.woocommerce-cart .tmx-cart-hero{
  margin:0 0 30px !important;
}
body.woocommerce-cart .tmx-cart-hero h1{
  max-width:820px !important;
  margin:0 !important;
  color:#081d38 !important;
  font-size:clamp(42px,4.4vw,60px) !important;
  line-height:1.02 !important;
  letter-spacing:-.055em !important;
  font-weight:800 !important;
}
body.woocommerce-cart .tmx-cart-breadcrumb{
  margin-top:16px !important;
  gap:12px !important;
  font-size:15px !important;
  color:#5e718d !important;
}
body.woocommerce-cart .tmx-cart-breadcrumb a{
  color:#0b63f6 !important;
}

body.woocommerce-cart .tmx-cart-layout{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 390px !important;
  gap:28px !important;
  align-items:start !important;
}
body.woocommerce-cart .tmx-cart-main{
  display:grid !important;
  gap:26px !important;
}
body.woocommerce-cart .tmx-cart-card,
body.woocommerce-cart .tmx-cart-summary .cart_totals,
body.woocommerce-cart .tmx-cart-benefits,
body.woocommerce-cart .tmx-cart-summary__trust,
body.woocommerce-cart .tmx-cart-empty-state{
  border:1px solid rgba(23,59,108,.12) !important;
  border-radius:18px !important;
  background:#fff !important;
  box-shadow:0 22px 60px rgba(12,34,64,.08) !important;
}
body.woocommerce-cart .tmx-cart-card{
  padding:22px 22px 24px !important;
}
body.woocommerce-cart .tmx-cart-table__head,
body.woocommerce-cart .tmx-cart-item{
  grid-template-columns:minmax(300px,1fr) 130px 160px 130px !important;
  gap:24px !important;
}
body.woocommerce-cart .tmx-cart-table__head{
  min-height:58px !important;
  padding:0 18px !important;
  border-bottom:1px solid rgba(23,59,108,.12) !important;
  color:#4e6380 !important;
  font-size:12px !important;
  font-weight:800 !important;
}
body.woocommerce-cart .tmx-cart-item{
  padding:26px 18px !important;
  border-bottom:1px solid rgba(23,59,108,.10) !important;
}
body.woocommerce-cart .tmx-cart-item:last-child{
  border-bottom:0 !important;
}
body.woocommerce-cart .tmx-cart-item__product{
  grid-template-columns:34px 96px minmax(0,1fr) !important;
  gap:18px !important;
}
body.woocommerce-cart .tmx-cart-item__thumb{
  width:96px !important;
  height:86px !important;
  border-radius:10px !important;
  background:#f3f6fb !important;
  border:1px solid rgba(23,59,108,.06) !important;
}
body.woocommerce-cart .tmx-cart-item__name{
  color:#081d38 !important;
  font-size:16px !important;
  line-height:1.25 !important;
  font-weight:800 !important;
}
body.woocommerce-cart .tmx-cart-item__sku{
  color:#5e718d !important;
  font-size:13px !important;
}
body.woocommerce-cart .tmx-cart-item__price,
body.woocommerce-cart .tmx-cart-item__subtotal,
body.woocommerce-cart .tmx-cart-item__price .amount,
body.woocommerce-cart .tmx-cart-item__subtotal .amount{
  color:#0058e6 !important;
  font-size:16px !important;
  font-weight:850 !important;
}
body.woocommerce-cart .tmx-qty-control{
  grid-template-columns:44px 54px 44px !important;
  min-height:44px !important;
  border-radius:8px !important;
  border:1px solid rgba(23,59,108,.16) !important;
  background:#fff !important;
}
body.woocommerce-cart .tmx-qty-control__btn{
  color:#173B6C !important;
  font-weight:700 !important;
}
body.woocommerce-cart .tmx-cart-actions{
  padding-top:22px !important;
  border-top:1px solid rgba(23,59,108,.10) !important;
}
body.woocommerce-cart .tmx-cart-empty,
body.woocommerce-cart .woocommerce .tmx-cart-update,
body.woocommerce-cart .tmx-cart-update{
  min-height:48px !important;
  min-width:172px !important;
  border-radius:5px !important;
  font-weight:800 !important;
}
body.woocommerce-cart .tmx-cart-empty{
  border-color:#ff3045 !important;
  color:#ff3045 !important;
}
body.woocommerce-cart .tmx-cart-update{
  border-color:#0b63f6 !important;
  color:#0058e6 !important;
}

body.woocommerce-cart .tmx-cart-summary{
  position:sticky !important;
  top:calc(var(--header-h) + 122px) !important;
  display:grid !important;
  gap:18px !important;
}
body.admin-bar.woocommerce-cart .tmx-cart-summary{
  top:calc(var(--header-h) + 154px) !important;
}
body.woocommerce-cart .tmx-cart-summary .cart_totals{
  padding:26px 24px 24px !important;
}
body.woocommerce-cart .tmx-cart-summary .cart_totals h2{
  margin:0 0 18px !important;
  color:#081d38 !important;
  font-size:25px !important;
  line-height:1.12 !important;
  letter-spacing:-.035em !important;
  font-weight:850 !important;
}
body.woocommerce-cart .tmx-cart-totals-box{
  border:1px solid rgba(23,59,108,.12) !important;
  border-radius:8px !important;
  overflow:hidden !important;
  background:#fff !important;
}
body.woocommerce-cart .tmx-cart-total-row{
  min-height:56px !important;
  padding:0 16px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:18px !important;
  border-bottom:1px solid rgba(23,59,108,.08) !important;
  color:#081d38 !important;
  font-size:14px !important;
}
body.woocommerce-cart .tmx-cart-total-row span{
  font-weight:750 !important;
}
body.woocommerce-cart .tmx-cart-total-row strong,
body.woocommerce-cart .tmx-cart-total-row .amount{
  color:#081d38 !important;
  font-weight:800 !important;
}
body.woocommerce-cart .tmx-cart-total-row--grand{
  min-height:66px !important;
  background:linear-gradient(180deg,#f9fbfe,#f2f6fb) !important;
}
body.woocommerce-cart .tmx-cart-total-row--grand span{
  font-size:16px !important;
  font-weight:850 !important;
}
body.woocommerce-cart .tmx-cart-total-row--grand strong,
body.woocommerce-cart .tmx-cart-total-row--grand .amount{
  color:#0058e6 !important;
  font-size:25px !important;
  font-weight:900 !important;
}

body.woocommerce-cart .tmx-quote-form{
  margin-top:18px !important;
  display:grid !important;
  gap:12px !important;
}
body.woocommerce-cart .tmx-quote-form h3{
  margin:0 !important;
  color:#081d38 !important;
  font-size:18px !important;
  line-height:1.2 !important;
  letter-spacing:-.02em !important;
  font-weight:850 !important;
}
body.woocommerce-cart .tmx-quote-form p{
  margin:0 0 2px !important;
  color:#60718a !important;
  font-size:13px !important;
  line-height:1.35 !important;
}
body.woocommerce-cart .tmx-quote-form label{
  display:grid !important;
  gap:6px !important;
  margin:0 !important;
}
body.woocommerce-cart .tmx-quote-form label span{
  color:#173B6C !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:800 !important;
  text-transform:uppercase !important;
  letter-spacing:.04em !important;
}
body.woocommerce-cart .tmx-quote-form input{
  width:100% !important;
  min-height:46px !important;
  border:1px solid rgba(23,59,108,.14) !important;
  border-radius:5px !important;
  background:#fff !important;
  color:#081d38 !important;
  padding:0 13px !important;
  font-size:14px !important;
  font-family:var(--font-body) !important;
  box-shadow:none !important;
  outline:0 !important;
}
body.woocommerce-cart .tmx-quote-form input:focus{
  border-color:rgba(11,99,246,.55) !important;
  box-shadow:0 0 0 3px rgba(11,99,246,.10) !important;
}
body.woocommerce-cart .tmx-quote-form__error{
  min-height:18px !important;
  color:#ff3045 !important;
  font-size:12px !important;
  font-weight:700 !important;
}
body.woocommerce-cart .tmx-cart-checkout,
body.woocommerce-cart .tmx-cart-quote-actions{
  margin-top:16px !important;
  padding:0 !important;
}
body.woocommerce-cart .tmx-whatsapp-quote-button{
  width:100% !important;
  min-height:58px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:14px !important;
  border:0 !important;
  border-radius:5px !important;
  background:linear-gradient(135deg,#0056d8,#0b63f6) !important;
  color:#fff !important;
  font-family:var(--font-body) !important;
  font-size:16px !important;
  font-weight:850 !important;
  cursor:pointer !important;
  box-shadow:0 16px 34px rgba(11,99,246,.22) !important;
  transition:transform .2s ease, box-shadow .2s ease !important;
}
body.woocommerce-cart .tmx-whatsapp-quote-button:hover{
  transform:translateY(-1px) !important;
  box-shadow:0 18px 38px rgba(11,99,246,.27) !important;
}

body.woocommerce-cart .tmx-cart-benefits{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:0 !important;
  padding:28px 24px !important;
}
body.woocommerce-cart .tmx-cart-benefits article{
  padding:8px 22px !important;
  text-align:center !important;
  justify-items:center !important;
  border-right:1px solid rgba(23,59,108,.10) !important;
}
body.woocommerce-cart .tmx-cart-benefits article:last-child{
  border-right:0 !important;
}
body.woocommerce-cart .tmx-cart-benefits span,
body.woocommerce-cart .tmx-cart-summary__trust span{
  width:50px !important;
  height:50px !important;
  border-radius:50% !important;
  background:#eff5ff !important;
  color:#0058e6 !important;
}
body.woocommerce-cart .tmx-cart-benefits strong{
  color:#081d38 !important;
  font-size:15px !important;
  font-weight:850 !important;
}
body.woocommerce-cart .tmx-cart-benefits small,
body.woocommerce-cart .tmx-cart-summary__trust small{
  color:#60718a !important;
}
body.woocommerce-cart .tmx-cart-summary__trust{
  padding:6px 24px 22px !important;
  box-shadow:none !important;
}

@media (max-width:1120px){
  body.woocommerce-cart .tmx-cart-layout{
    grid-template-columns:1fr !important;
  }
  body.woocommerce-cart .tmx-cart-summary{
    position:static !important;
  }
  body.woocommerce-cart .tmx-cart-summary__trust{
    display:grid !important;
  }
}
@media (max-width:880px){
  body.woocommerce-cart .site-header__inner,
  body.woocommerce-cart .shop-navbar__inner,
  body.woocommerce-cart .tmx-cart-page__container,
  body.woocommerce-cart .woocommerce-notices-wrapper{
    width:min(100% - 32px,1280px) !important;
  }
  body.woocommerce-cart .tmx-cart-page{
    padding:42px 0 62px !important;
  }
  body.woocommerce-cart .tmx-cart-card{
    padding:16px !important;
  }
  body.woocommerce-cart .tmx-cart-table__head{
    display:none !important;
  }
  body.woocommerce-cart .tmx-cart-item{
    grid-template-columns:1fr !important;
    gap:18px !important;
    padding:20px 4px !important;
  }
  body.woocommerce-cart .tmx-cart-item__product{
    grid-template-columns:30px 82px minmax(0,1fr) !important;
    gap:12px !important;
  }
  body.woocommerce-cart .tmx-cart-item__thumb{
    width:82px !important;
    height:76px !important;
  }
  body.woocommerce-cart .tmx-cart-item__price,
  body.woocommerce-cart .tmx-cart-item__subtotal,
  body.woocommerce-cart .tmx-cart-item__quantity{
    display:flex !important;
    justify-content:space-between !important;
    align-items:center !important;
    padding-left:42px !important;
  }
  body.woocommerce-cart .tmx-cart-actions{
    display:grid !important;
    grid-template-columns:1fr !important;
  }
  body.woocommerce-cart .tmx-cart-empty,
  body.woocommerce-cart .tmx-cart-update{
    width:100% !important;
  }
  body.woocommerce-cart .tmx-cart-benefits{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    padding:18px !important;
  }
  body.woocommerce-cart .tmx-cart-benefits article:nth-child(2n){
    border-right:0 !important;
  }
  body.woocommerce-cart .tmx-cart-benefits article:nth-child(n+3){
    border-top:1px solid rgba(23,59,108,.10) !important;
  }
}
@media (max-width:620px){
  body.woocommerce-cart .shop-navbar__inner{
    display:grid !important;
    grid-template-columns:1fr auto !important;
    gap:10px !important;
    min-height:auto !important;
    padding:10px 0 12px !important;
  }
  body.woocommerce-cart .shop-search{
    min-height:50px !important;
    padding-left:12px !important;
  }
  body.woocommerce-cart .shop-search__submit{
    min-width:44px !important;
    width:44px !important;
    min-height:42px !important;
    padding:0 !important;
    font-size:0 !important;
    position:relative !important;
  }
  body.woocommerce-cart .shop-search__submit::before{
    content:'⌕' !important;
    font-size:18px !important;
  }
  body.woocommerce-cart .tmx-cart-benefits{
    grid-template-columns:1fr !important;
  }
  body.woocommerce-cart .tmx-cart-benefits article,
  body.woocommerce-cart .tmx-cart-benefits article:nth-child(2n){
    border-right:0 !important;
    border-top:1px solid rgba(23,59,108,.10) !important;
  }
  body.woocommerce-cart .tmx-cart-benefits article:first-child{
    border-top:0 !important;
  }
  body.woocommerce-cart .tmx-cart-hero h1{
    font-size:34px !important;
  }
}

/* =========================================================
   v43.7 - Carrito ajustado a Home + búsqueda fija + webhook
   ========================================================= */
body.woocommerce-cart,
body.woocommerce-cart .tmx-cart-page,
body.woocommerce-cart .tmx-cart-page *{
  font-family:var(--font-body) !important;
}

body.woocommerce-cart .site-header > .shop-navbar,
body.woocommerce-cart .site-header + .shop-navbar{
  display:none !important;
}

body.woocommerce-cart .tmx-cart-page{
  padding:26px 0 76px !important;
  background:linear-gradient(180deg,#ffffff 0%,#f5f8fc 48%,#ffffff 100%) !important;
}

body.woocommerce-cart .tmx-cart-page__container{
  width:min(1260px, calc(100% - 72px)) !important;
}

body.woocommerce-cart .tmx-cart-search-row{
  width:100% !important;
  margin:0 0 42px !important;
}

body.woocommerce-cart .tmx-cart-search{
  width:100% !important;
  min-height:56px !important;
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  padding:4px 4px 4px 22px !important;
  border:1px solid rgba(23,59,108,.14) !important;
  border-radius:5px !important;
  background:#fff !important;
  box-shadow:0 12px 30px rgba(12,34,64,.055) !important;
}

body.woocommerce-cart .tmx-cart-search .shop-search__icon{
  color:#6c7f99 !important;
  flex:0 0 auto !important;
}

body.woocommerce-cart .tmx-cart-search .shop-search__input{
  min-height:48px !important;
  flex:1 1 auto !important;
  border:0 !important;
  outline:0 !important;
  background:transparent !important;
  color:#173B6C !important;
  font-family:var(--font-body) !important;
  font-size:15px !important;
  font-weight:400 !important;
  box-shadow:none !important;
}

body.woocommerce-cart .tmx-cart-search .shop-search__submit{
  min-width:128px !important;
  min-height:48px !important;
  border-radius:5px !important;
  border:1px solid #2e86ff !important;
  background:#2e86ff !important;
  color:#fff !important;
  font-family:var(--font-body) !important;
  font-size:14px !important;
  font-weight:600 !important;
  letter-spacing:0 !important;
  box-shadow:none !important;
}

body.woocommerce-cart .tmx-cart-hero{
  margin:0 0 28px !important;
}

body.woocommerce-cart .tmx-cart-hero h1{
  margin:0 !important;
  color:var(--blue-950) !important;
  font-family:var(--font-primary) !important;
  font-size:clamp(32px, 3vw, 42px) !important;
  line-height:1.08 !important;
  letter-spacing:-.035em !important;
  font-weight:500 !important;
}

body.woocommerce-cart .tmx-cart-breadcrumb{
  margin-top:12px !important;
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  font-family:var(--font-body) !important;
  font-size:14px !important;
  line-height:1.4 !important;
  font-weight:400 !important;
  color:#5f7594 !important;
}

body.woocommerce-cart .tmx-cart-breadcrumb a{
  color:#2e86ff !important;
  font-weight:500 !important;
}

body.woocommerce-cart .tmx-cart-layout{
  grid-template-columns:minmax(0, 1fr) 390px !important;
  gap:26px !important;
}

body.woocommerce-cart .tmx-cart-card,
body.woocommerce-cart .tmx-cart-summary .cart_totals,
body.woocommerce-cart .tmx-cart-benefits,
body.woocommerce-cart .tmx-cart-summary__trust,
body.woocommerce-cart .tmx-cart-empty-state{
  border-radius:12px !important;
  border:1px solid rgba(23,59,108,.11) !important;
  background:#fff !important;
  box-shadow:0 18px 42px rgba(12,34,64,.075) !important;
}

body.woocommerce-cart .tmx-cart-card{
  padding:24px 24px 22px !important;
}

body.woocommerce-cart .tmx-cart-table__head,
body.woocommerce-cart .tmx-cart-item{
  grid-template-columns:minmax(320px,1fr) 128px 160px 128px !important;
  gap:22px !important;
}

body.woocommerce-cart .tmx-cart-table__head{
  min-height:52px !important;
  padding:0 14px !important;
  border-bottom:1px solid rgba(23,59,108,.10) !important;
  color:#4D6485 !important;
  font-size:12px !important;
  font-weight:600 !important;
  letter-spacing:.02em !important;
}

body.woocommerce-cart .tmx-cart-item{
  padding:26px 14px !important;
  border-bottom:1px solid rgba(23,59,108,.09) !important;
}

body.woocommerce-cart .tmx-cart-item__product{
  grid-template-columns:34px 96px minmax(0,1fr) !important;
  gap:18px !important;
}

body.woocommerce-cart .tmx-cart-item__thumb{
  width:96px !important;
  height:86px !important;
  border-radius:8px !important;
  background:#f4f7fb !important;
  border:1px solid rgba(23,59,108,.06) !important;
  overflow:hidden !important;
}

body.woocommerce-cart .tmx-cart-item__thumb img{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center !important;
}

body.woocommerce-cart .tmx-cart-item__name,
body.woocommerce-cart .tmx-cart-item__name a{
  color:var(--blue-950) !important;
  font-family:var(--font-body) !important;
  font-size:15px !important;
  line-height:1.28 !important;
  font-weight:500 !important;
  letter-spacing:0 !important;
}

body.woocommerce-cart .tmx-cart-item__sku{
  margin-top:6px !important;
  color:#5f7594 !important;
  font-size:13px !important;
  font-weight:400 !important;
}

body.woocommerce-cart .tmx-cart-item__price,
body.woocommerce-cart .tmx-cart-item__subtotal,
body.woocommerce-cart .tmx-cart-item__price .amount,
body.woocommerce-cart .tmx-cart-item__subtotal .amount{
  color:#0058e6 !important;
  font-size:15px !important;
  line-height:1.4 !important;
  font-weight:600 !important;
}

body.woocommerce-cart .tmx-qty-control{
  grid-template-columns:42px 54px 42px !important;
  min-height:42px !important;
  border-radius:5px !important;
  border:1px solid rgba(23,59,108,.14) !important;
  background:#fff !important;
}

body.woocommerce-cart .tmx-qty-control input.qty{
  font-size:14px !important;
  font-weight:500 !important;
  color:var(--blue-950) !important;
}

body.woocommerce-cart .tmx-qty-control__btn{
  color:#173B6C !important;
  font-size:16px !important;
  font-weight:500 !important;
}

body.woocommerce-cart .tmx-cart-actions{
  padding-top:20px !important;
  border-top:1px solid rgba(23,59,108,.09) !important;
}

body.woocommerce-cart .tmx-cart-empty,
body.woocommerce-cart .woocommerce .tmx-cart-update,
body.woocommerce-cart .tmx-cart-update{
  min-height:46px !important;
  min-width:170px !important;
  border-radius:5px !important;
  font-family:var(--font-body) !important;
  font-size:14px !important;
  font-weight:600 !important;
  letter-spacing:0 !important;
}

body.woocommerce-cart .tmx-cart-summary{
  top:124px !important;
  gap:16px !important;
}

body.admin-bar.woocommerce-cart .tmx-cart-summary{
  top:156px !important;
}

body.woocommerce-cart .tmx-cart-summary .cart_totals{
  padding:24px 22px 22px !important;
}

body.woocommerce-cart .tmx-cart-summary .cart_totals h2,
body.woocommerce-cart .tmx-quote-form h3{
  color:var(--blue-950) !important;
  font-family:var(--font-primary) !important;
  line-height:1.16 !important;
  letter-spacing:-.02em !important;
  font-weight:500 !important;
}

body.woocommerce-cart .tmx-cart-summary .cart_totals h2{
  margin:0 0 16px !important;
  font-size:24px !important;
}

body.woocommerce-cart .tmx-cart-totals-box{
  border-radius:5px !important;
  border:1px solid rgba(23,59,108,.12) !important;
}

body.woocommerce-cart .tmx-cart-total-row{
  min-height:52px !important;
  padding:0 16px !important;
  color:var(--blue-950) !important;
  font-family:var(--font-body) !important;
  font-size:14px !important;
  line-height:1.35 !important;
}

body.woocommerce-cart .tmx-cart-total-row span,
body.woocommerce-cart .tmx-cart-total-row strong,
body.woocommerce-cart .tmx-cart-total-row .amount,
body.woocommerce-cart .tmx-cart-total-row--grand span,
body.woocommerce-cart .tmx-cart-total-row--grand strong,
body.woocommerce-cart .tmx-cart-total-row--grand .amount{
  font-family:var(--font-body) !important;
  font-size:14px !important;
  line-height:1.35 !important;
  font-weight:500 !important;
}

body.woocommerce-cart .tmx-cart-total-row strong,
body.woocommerce-cart .tmx-cart-total-row .amount{
  color:var(--blue-950) !important;
}

body.woocommerce-cart .tmx-cart-total-row--grand{
  min-height:58px !important;
  background:#f4f7fb !important;
}

body.woocommerce-cart .tmx-cart-total-row--grand strong,
body.woocommerce-cart .tmx-cart-total-row--grand .amount{
  color:#0058e6 !important;
  font-weight:600 !important;
}

body.woocommerce-cart .tmx-quote-form{
  margin-top:18px !important;
  gap:11px !important;
}

body.woocommerce-cart .tmx-quote-form h3{
  margin:0 !important;
  font-size:18px !important;
}

body.woocommerce-cart .tmx-quote-form p{
  color:#5f7594 !important;
  font-size:13px !important;
  font-weight:400 !important;
  line-height:1.45 !important;
}

body.woocommerce-cart .tmx-quote-form label span{
  color:#173B6C !important;
  font-size:11px !important;
  font-weight:600 !important;
  letter-spacing:.04em !important;
}

body.woocommerce-cart .tmx-quote-form input{
  min-height:44px !important;
  font-family:var(--font-body) !important;
  font-size:13.5px !important;
  font-weight:400 !important;
  border-radius:5px !important;
}

body.woocommerce-cart .tmx-whatsapp-quote-button{
  min-height:54px !important;
  border-radius:5px !important;
  background:#0b63f6 !important;
  font-family:var(--font-body) !important;
  font-size:15px !important;
  font-weight:600 !important;
  letter-spacing:0 !important;
  box-shadow:0 14px 30px rgba(11,99,246,.18) !important;
}

body.woocommerce-cart .tmx-whatsapp-quote-button:disabled,
body.woocommerce-cart .tmx-whatsapp-quote-button.is-loading{
  cursor:wait !important;
  opacity:.78 !important;
  transform:none !important;
}

body.woocommerce-cart .tmx-cart-benefits{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  padding:26px 22px !important;
}

body.woocommerce-cart .tmx-cart-benefits article{
  padding:6px 20px !important;
}

body.woocommerce-cart .tmx-cart-benefits span,
body.woocommerce-cart .tmx-cart-summary__trust span{
  width:46px !important;
  height:46px !important;
  background:#eff5ff !important;
  color:#2e86ff !important;
}

body.woocommerce-cart .tmx-cart-benefits strong,
body.woocommerce-cart .tmx-cart-summary__trust strong{
  color:var(--blue-950) !important;
  font-family:var(--font-body) !important;
  font-size:14px !important;
  line-height:1.25 !important;
  font-weight:500 !important;
}

body.woocommerce-cart .tmx-cart-benefits small,
body.woocommerce-cart .tmx-cart-summary__trust small{
  color:#5f7594 !important;
  font-size:13px !important;
  line-height:1.35 !important;
  font-weight:400 !important;
}

@media (max-width:1120px){
  body.woocommerce-cart .tmx-cart-layout{
    grid-template-columns:1fr !important;
  }
}

@media (max-width:880px){
  body.woocommerce-cart .tmx-cart-page__container,
  body.woocommerce-cart .site-header__inner{
    width:min(100% - 32px,1260px) !important;
  }
  body.woocommerce-cart .tmx-cart-page{
    padding:18px 0 58px !important;
  }
  body.woocommerce-cart .tmx-cart-search-row{
    margin-bottom:28px !important;
  }
  body.woocommerce-cart .tmx-cart-card{
    padding:16px !important;
  }
  body.woocommerce-cart .tmx-cart-item__product{
    grid-template-columns:30px 82px minmax(0,1fr) !important;
  }
  body.woocommerce-cart .tmx-cart-hero h1{
    font-size:32px !important;
  }
  body.woocommerce-cart .tmx-cart-benefits{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media (max-width:620px){
  body.woocommerce-cart .tmx-cart-search{
    min-height:50px !important;
    padding:4px 4px 4px 14px !important;
  }
  body.woocommerce-cart .tmx-cart-search .shop-search__submit{
    min-width:82px !important;
    min-height:42px !important;
    font-size:13px !important;
  }
  body.woocommerce-cart .tmx-cart-benefits{
    grid-template-columns:1fr !important;
  }
}

/* v43.8 - más separación entre columna izquierda y derecha del carrito */
body.woocommerce-cart .tmx-cart-page__container{
  width:min(1320px, calc(100% - 72px)) !important;
}

body.woocommerce-cart .tmx-cart-layout{
  grid-template-columns:minmax(0, 1fr) 368px !important;
  gap:40px !important;
  align-items:start !important;
}

@media (max-width:1180px){
  body.woocommerce-cart .tmx-cart-layout{
    grid-template-columns:minmax(0, 1fr) 340px !important;
    gap:30px !important;
  }
}


/* v43.9 - carrito realmente responsive */
body.woocommerce-cart .tmx-cart-layout{
  align-items:start !important;
}

/* Tablet: el resumen pasa debajo para que no se comprima */
@media (max-width: 1080px){
  body.woocommerce-cart .tmx-cart-page{
    padding:22px 0 58px !important;
  }

  body.woocommerce-cart .tmx-cart-page__container{
    width:min(100% - 40px, 920px) !important;
  }

  body.woocommerce-cart .tmx-cart-layout{
    grid-template-columns:1fr !important;
    gap:22px !important;
  }

  body.woocommerce-cart .tmx-cart-summary{
    width:100% !important;
    max-width:100% !important;
  }

  body.woocommerce-cart .tmx-cart-summary .cart_totals{
    width:100% !important;
    max-width:100% !important;
  }

  body.woocommerce-cart .tmx-cart-benefits{
    margin-top:0 !important;
  }
}

/* Tablet pequeña / móvil grande: la tabla se convierte en cards */
@media (max-width: 760px){
  body.woocommerce-cart .tmx-cart-page{
    padding:16px 0 46px !important;
  }

  body.woocommerce-cart .tmx-cart-page__container{
    width:calc(100% - 24px) !important;
  }

  body.woocommerce-cart .tmx-cart-search-row{
    margin:0 0 24px !important;
  }

  body.woocommerce-cart .tmx-cart-search{
    min-height:auto !important;
    display:grid !important;
    grid-template-columns:28px 1fr !important;
    gap:8px !important;
    padding:10px !important;
  }

  body.woocommerce-cart .tmx-cart-search .shop-search__input{
    min-width:0 !important;
    width:100% !important;
    min-height:42px !important;
    font-size:14px !important;
  }

  body.woocommerce-cart .tmx-cart-search .shop-search__submit{
    grid-column:1 / -1 !important;
    width:100% !important;
    min-width:0 !important;
    min-height:44px !important;
  }

  body.woocommerce-cart .tmx-cart-hero{
    margin-bottom:20px !important;
  }

  body.woocommerce-cart .tmx-cart-hero h1{
    font-size:28px !important;
    line-height:1.12 !important;
    letter-spacing:-.02em !important;
  }

  body.woocommerce-cart .tmx-cart-breadcrumb{
    font-size:13px !important;
    flex-wrap:wrap !important;
  }

  body.woocommerce-cart .tmx-cart-card{
    padding:16px !important;
    border-radius:10px !important;
  }

  body.woocommerce-cart .tmx-cart-table__head{
    display:none !important;
  }

  body.woocommerce-cart .tmx-cart-item{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:14px !important;
    padding:0 0 18px !important;
    border-bottom:1px solid rgba(23,59,108,.10) !important;
  }

  body.woocommerce-cart .tmx-cart-item + .tmx-cart-item{
    padding-top:18px !important;
  }

  body.woocommerce-cart .tmx-cart-item__product{
    display:grid !important;
    grid-template-columns:34px 82px minmax(0,1fr) !important;
    gap:12px !important;
    align-items:center !important;
  }

  body.woocommerce-cart .tmx-cart-item__thumb{
    width:82px !important;
    height:76px !important;
  }

  body.woocommerce-cart .tmx-cart-item__name,
  body.woocommerce-cart .tmx-cart-item__name a{
    font-size:14px !important;
    line-height:1.28 !important;
  }

  body.woocommerce-cart .tmx-cart-item__sku{
    font-size:12px !important;
  }

  body.woocommerce-cart .tmx-cart-item__price,
  body.woocommerce-cart .tmx-cart-item__quantity,
  body.woocommerce-cart .tmx-cart-item__subtotal{
    width:100% !important;
    display:grid !important;
    grid-template-columns:96px minmax(0,1fr) !important;
    align-items:center !important;
    gap:12px !important;
  }

  body.woocommerce-cart .tmx-cart-item__price::before{
    content:"Precio" !important;
    color:#4D6485 !important;
    font-size:11px !important;
    font-weight:600 !important;
    text-transform:uppercase !important;
    letter-spacing:.02em !important;
  }

  body.woocommerce-cart .tmx-cart-item__quantity::before{
    content:"Cantidad" !important;
    color:#4D6485 !important;
    font-size:11px !important;
    font-weight:600 !important;
    text-transform:uppercase !important;
    letter-spacing:.02em !important;
  }

  body.woocommerce-cart .tmx-cart-item__subtotal::before{
    content:"Subtotal" !important;
    color:#4D6485 !important;
    font-size:11px !important;
    font-weight:600 !important;
    text-transform:uppercase !important;
    letter-spacing:.02em !important;
  }

  body.woocommerce-cart .tmx-qty-control{
    width:142px !important;
    max-width:100% !important;
    grid-template-columns:42px 58px 42px !important;
  }

  body.woocommerce-cart .tmx-cart-actions{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
    padding-top:16px !important;
  }

  body.woocommerce-cart .tmx-cart-empty,
  body.woocommerce-cart .tmx-cart-update,
  body.woocommerce-cart .woocommerce .tmx-cart-update{
    width:100% !important;
    min-width:0 !important;
    justify-content:center !important;
  }

  body.woocommerce-cart .tmx-cart-summary .cart_totals{
    padding:18px !important;
    border-radius:10px !important;
  }

  body.woocommerce-cart .tmx-cart-summary .cart_totals h2{
    font-size:22px !important;
    line-height:1.18 !important;
    margin-bottom:14px !important;
  }

  body.woocommerce-cart .cart_totals table th,
  body.woocommerce-cart .cart_totals table td{
    padding:14px !important;
    font-size:14px !important;
  }

  body.woocommerce-cart .cart_totals .order-total th,
  body.woocommerce-cart .cart_totals .order-total td,
  body.woocommerce-cart .cart_totals .order-total .amount{
    font-size:16px !important;
    line-height:1.3 !important;
  }

  body.woocommerce-cart .tmx-quote-form{
    margin-top:16px !important;
  }

  body.woocommerce-cart .tmx-quote-form h3{
    font-size:17px !important;
  }

  body.woocommerce-cart .tmx-quote-form input{
    min-height:46px !important;
    font-size:14px !important;
  }

  body.woocommerce-cart .tmx-whatsapp-quote-button{
    width:100% !important;
    min-height:48px !important;
  }

  body.woocommerce-cart .tmx-cart-benefits{
    grid-template-columns:1fr 1fr !important;
    gap:0 !important;
    padding:14px !important;
    border-radius:10px !important;
  }

  body.woocommerce-cart .tmx-cart-benefit{
    padding:16px 10px !important;
    min-height:auto !important;
  }

  body.woocommerce-cart .tmx-cart-benefit:nth-child(2n){
    border-right:0 !important;
  }

  body.woocommerce-cart .tmx-cart-benefit:nth-child(n+3){
    border-top:1px solid rgba(23,59,108,.10) !important;
  }

  body.woocommerce-cart .tmx-cart-benefit h3{
    font-size:13px !important;
    line-height:1.25 !important;
  }

  body.woocommerce-cart .tmx-cart-benefit p{
    font-size:12px !important;
    line-height:1.35 !important;
  }

  body.woocommerce-cart .tmx-cart-summary__trust{
    padding:16px !important;
    border-radius:10px !important;
  }
}

/* Móvil angosto */
@media (max-width: 480px){
  body.woocommerce-cart .tmx-cart-page__container{
    width:calc(100% - 18px) !important;
  }

  body.woocommerce-cart .tmx-cart-card{
    padding:14px !important;
  }

  body.woocommerce-cart .tmx-cart-item__product{
    grid-template-columns:30px 74px minmax(0,1fr) !important;
    gap:10px !important;
  }

  body.woocommerce-cart .tmx-cart-item__thumb{
    width:74px !important;
    height:70px !important;
  }

  body.woocommerce-cart .tmx-cart-item__price,
  body.woocommerce-cart .tmx-cart-item__quantity,
  body.woocommerce-cart .tmx-cart-item__subtotal{
    grid-template-columns:78px minmax(0,1fr) !important;
    gap:8px !important;
  }

  body.woocommerce-cart .tmx-qty-control{
    width:132px !important;
    grid-template-columns:38px 56px 38px !important;
    min-height:40px !important;
  }

  body.woocommerce-cart .tmx-cart-benefits{
    grid-template-columns:1fr !important;
  }

  body.woocommerce-cart .tmx-cart-benefit{
    border-right:0 !important;
    border-top:1px solid rgba(23,59,108,.10) !important;
  }

  body.woocommerce-cart .tmx-cart-benefit:first-child{
    border-top:0 !important;
  }
}

/* =========================================================
   v43.10 - Home responsive hard fix
   Evita desbordes horizontales en el hero y sus minicards.
   ========================================================= */
@media (max-width:820px){
  html,
  body{
    width:100% !important;
    max-width:100% !important;
    overflow-x:hidden !important;
  }

  body.home main,
  body.home .hero--home,
  .hero--home{
    width:100% !important;
    max-width:100vw !important;
    min-width:0 !important;
    overflow:hidden !important;
  }

  body.home .site-header .site-header__inner{
    width:calc(100% - 28px) !important;
    max-width:none !important;
    min-width:0 !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  .hero--home .container,
  .hero--home .hero__inner,
  .hero--home .hero__inner--home{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
    box-sizing:border-box !important;
  }

  .hero--home .hero__inner--home{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    gap:22px !important;
    padding:32px 14px 34px !important;
    min-height:auto !important;
    align-items:start !important;
  }

  .hero--home .hero__content{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    padding:0 !important;
  }

  .hero--home .eyebrow{
    max-width:100% !important;
    white-space:normal !important;
    font-size:10.5px !important;
    line-height:1.35 !important;
    padding:7px 10px !important;
  }

  .hero--home h1,
  .hero--home .hero__content h1{
    width:100% !important;
    max-width:100% !important;
    margin-top:16px !important;
    font-size:clamp(28px, 8.4vw, 34px) !important;
    line-height:1.1 !important;
    letter-spacing:-.025em !important;
    overflow-wrap:break-word !important;
  }

  .hero--home .hero__copy,
  .hero--home .hero__content p{
    width:100% !important;
    max-width:100% !important;
    margin-top:16px !important;
    font-size:14.5px !important;
    line-height:1.58 !important;
    overflow-wrap:break-word !important;
  }

  .hero--home .hero__actions{
    width:100% !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
    margin-top:22px !important;
  }

  .hero--home .hero__actions .btn,
  .hero--home .btn{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    min-height:42px !important;
    box-sizing:border-box !important;
    padding-left:12px !important;
    padding-right:12px !important;
    font-size:12.5px !important;
    line-height:1.2 !important;
    white-space:normal !important;
  }

  .hero--home .feature-grid{
    position:static !important;
    left:auto !important;
    right:auto !important;
    bottom:auto !important;
    transform:none !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    gap:10px !important;
    margin:22px 0 0 !important;
  }

  .hero--home .feature-pill{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    min-height:52px !important;
    padding:12px 14px !important;
    gap:12px !important;
    box-sizing:border-box !important;
    border-radius:5px !important;
    overflow:hidden !important;
  }

  .hero--home .feature-pill span.feature-pill__icon{
    width:24px !important;
    height:24px !important;
    min-width:24px !important;
    flex:0 0 24px !important;
  }

  .hero--home .feature-pill span.feature-pill__icon svg{
    width:20px !important;
    height:20px !important;
  }

  .hero--home .feature-pill span.feature-pill__text{
    min-width:0 !important;
    font-size:13px !important;
    line-height:1.32 !important;
    overflow-wrap:break-word !important;
  }

  .hero--home .hero__visual{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    min-height:auto !important;
    margin:0 !important;
    padding:0 !important;
    gap:0 !important;
    overflow:hidden !important;
  }

  .hero--home .hero__visual::before,
  .hero--home .hero__visual::after,
  .hero--home .hero__glow{
    display:none !important;
    content:none !important;
  }

  .hero--home .hero__printer{
    display:block !important;
    width:min(100%, 310px) !important;
    max-width:100% !important;
    height:auto !important;
    max-height:none !important;
    margin:8px auto 0 !important;
    transform:none !important;
  }

  .hero-visual-marquee{
    display:none !important;
  }

  #soluciones{
    padding-top:54px !important;
  }

  body.home .section > .container,
  body.home section:not(.hero--home) > .container{
    width:calc(100% - 28px) !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
  }

  body.home .grid,
  body.home .grid-2,
  body.home .grid-3,
  body.home .grid-4,
  body.home .solutions-grid,
  body.home .rent-benefits-grid,
  body.home .about-mini-grid,
  body.home .mini-status-grid{
    grid-template-columns:minmax(0,1fr) !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
  }

  body.home img,
  body.home svg,
  body.home video{
    max-width:100% !important;
  }
}

@media (max-width:390px){
  .hero--home .hero__inner--home{
    padding-left:10px !important;
    padding-right:10px !important;
  }

  .hero--home h1,
  .hero--home .hero__content h1{
    font-size:29px !important;
  }

  .hero--home .hero__copy,
  .hero--home .hero__content p{
    font-size:14px !important;
  }
}

/* v43.11 - fix responsive navbar de tienda */
@media (max-width: 820px){
  .site-header--shop .site-header__inner{
    width:calc(100% - 24px) !important;
    min-height:68px !important;
    padding:10px 0 !important;
  }

  .site-header--shop .brand{
    min-width:0 !important;
    flex:1 1 auto !important;
  }

  .site-header--shop .brand__logo{
    max-width:140px !important;
    width:auto !important;
    height:auto !important;
    max-height:34px !important;
  }

  .shop-navbar{
    overflow:hidden !important;
  }

  .shop-navbar__inner{
    width:calc(100% - 24px) !important;
    min-width:0 !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    align-items:center !important;
    gap:10px !important;
    padding:10px 0 12px !important;
  }

  .shop-search{
    min-width:0 !important;
    width:100% !important;
    display:grid !important;
    grid-template-columns:18px minmax(0,1fr) 46px !important;
    align-items:center !important;
    gap:8px !important;
    padding:4px 4px 4px 12px !important;
    border-radius:5px !important;
  }

  .shop-search__icon{
    justify-self:center !important;
  }

  .shop-search__input{
    min-width:0 !important;
    width:100% !important;
    padding:10px 2px !important;
    font-size:14px !important;
  }

  .shop-search__submit{
    width:46px !important;
    min-width:46px !important;
    height:42px !important;
    padding:0 !important;
    border-radius:5px !important;
    font-size:0 !important;
    display:grid !important;
    place-items:center !important;
    overflow:hidden !important;
  }

  .shop-search__submit::after{
    content:"→" !important;
    font-size:18px !important;
    line-height:1 !important;
  }

  .shop-navbar__actions{
    min-width:0 !important;
    flex:0 0 auto !important;
    gap:0 !important;
  }

  .shop-cart{
    width:42px !important;
    height:42px !important;
    min-width:42px !important;
    padding:0 !important;
    border-radius:5px !important;
    display:grid !important;
    place-items:center !important;
    box-shadow:none !important;
  }

  .shop-cart__icon svg{
    width:22px !important;
    height:22px !important;
  }

  .tmx-store-subnav{
    overflow:hidden !important;
  }

  .tmx-store-subnav__inner{
    width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
    padding:0 12px !important;
    min-height:52px !important;
    gap:10px !important;
  }

  .tmx-store-subnav__scroll{
    min-width:0 !important;
    width:100% !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    -webkit-overflow-scrolling:touch !important;
  }

  .tmx-store-subnav__menu,
  .tmx-store-subnav__link{
    min-height:52px !important;
  }

  .tmx-store-subnav__link{
    padding:0 12px !important;
    font-size:12px !important;
    gap:8px !important;
  }

  .tmx-store-subnav__link + .tmx-store-subnav__link::before{
    height:14px !important;
  }

  .tmx-store-breadcrumb,
  .tmx-store-container,
  .tmx-store-controlbar,
  .tmx-store-product-grid{
    min-width:0 !important;
  }
}

@media (max-width: 480px){
  .site-header--shop .site-header__inner,
  .shop-navbar__inner,
  .tmx-store-container{
    width:calc(100% - 18px) !important;
  }

  .tmx-store-subnav__inner{
    padding:0 8px !important;
  }

  .tmx-store-subnav__link{
    padding:0 10px !important;
    font-size:11px !important;
  }

  .tmx-store-subnav__icon,
  .tmx-store-subnav__icon svg{
    width:16px !important;
    height:16px !important;
  }
}


/* v43.12 - responsive: admin bar + header sin tapar hero */
@media (max-width: 820px){
  /*
   * La barra negra superior es la barra de administración de WordPress.
   * Solo aparece cuando estás logueado como admin. Ajustamos el header
   * para que no se monte encima del hero durante pruebas en responsive.
   */
  html body.admin-bar .site-header{
    top:46px !important;
  }

  html body:not(.admin-bar) .site-header{
    top:0 !important;
  }

  html body .site-header{
    position:sticky !important;
    z-index:900 !important;
  }

  html body .site-header__inner{
    min-height:66px !important;
  }

  html body .site-header .brand__logo{
    max-height:38px !important;
    width:auto !important;
  }

  /*
   * Evita que el hero quede por debajo del header en móvil.
   * Esto aplica a Home y páginas de alquiler que usan hero oscuro.
   */
  html body .hero,
  html body .hero-section,
  html body .alquiler-hero,
  html body .rental-hero,
  html body .page-hero,
  html body .tmx-hero,
  html body .tmx-rental-hero,
  html body .front-hero{
    padding-top:max(28px, env(safe-area-inset-top)) !important;
    margin-top:0 !important;
  }

  html body .hero .eyebrow,
  html body .hero-section .eyebrow,
  html body .alquiler-hero .eyebrow,
  html body .rental-hero .eyebrow,
  html body .page-hero .eyebrow,
  html body .tmx-hero .eyebrow,
  html body .tmx-rental-hero .eyebrow,
  html body .front-hero .eyebrow{
    margin-top:0 !important;
  }

  /*
   * En móvil, el menú desplegable debe abrir debajo del header real,
   * no sobre el hero ni detrás de la barra admin.
   */
  html body .site-header .nav{
    top:calc(100% + 8px) !important;
    max-height:calc(100vh - 130px) !important;
  }

  html body.admin-bar .site-header .nav{
    max-height:calc(100vh - 176px) !important;
  }

  /*
   * Reduce el alto visual del header móvil para que no robe tanto espacio.
   */
  html body .site-header,
  html body .site-header--shop{
    --header-h:66px !important;
  }
}

@media (max-width: 600px){
  /*
   * WordPress cambia la barra admin a 46px en móvil.
   * Lo dejamos explícito para evitar solapamientos en DevTools.
   */
  html body.admin-bar .site-header{
    top:46px !important;
  }

  html body.admin-bar{
    padding-top:0 !important;
  }
}

/* En modo visitante no habrá barra negra; el header queda limpio arriba */
@media (max-width: 820px){
  html body:not(.admin-bar) #wpadminbar{
    display:none !important;
  }
}

/* v43.13 - botón buscar móvil con solo lupa */
@media (max-width: 820px){
  html body .shop-search__submit,
  html body .tmx-cart-search .shop-search__submit{
    font-size:0 !important;
    line-height:0 !important;
    position:relative !important;
  }

  html body .shop-search__submit::after,
  html body .tmx-cart-search .shop-search__submit::after{
    content:none !important;
    display:none !important;
  }

  html body .shop-search__submit::before,
  html body .tmx-cart-search .shop-search__submit::before{
    content:"" !important;
    display:block !important;
    width:18px !important;
    height:18px !important;
    margin:0 auto !important;
    background-repeat:no-repeat !important;
    background-position:center !important;
    background-size:18px 18px !important;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E") !important;
  }
}


/* v43.14 - quitar espacio vacío superior en navbar responsive */
@media (max-width: 820px){
  html body .site-header,
  html body.admin-bar .site-header,
  html body .site-header--shop,
  html body.admin-bar .site-header--shop{
    top:0 !important;
    margin-top:0 !important;
    padding-top:0 !important;
  }

  html body .site-header__inner,
  html body .site-header--shop .site-header__inner{
    min-height:64px !important;
    padding-top:0 !important;
    padding-bottom:0 !important;
    align-items:center !important;
  }

  html body .site-header .brand,
  html body .site-header--shop .brand{
    display:flex !important;
    align-items:center !important;
    margin:0 !important;
    padding:0 !important;
  }

  html body .site-header .brand__logo,
  html body .site-header--shop .brand__logo{
    display:block !important;
    margin:0 !important;
  }

  html body .shop-navbar{
    margin-top:0 !important;
  }

  html body .shop-navbar__inner{
    padding-top:8px !important;
    padding-bottom:10px !important;
  }
}

/* Cuando estás logueado como admin en móvil, evitamos que WP deje un hueco blanco si la barra admin no está visible */
@media (max-width: 600px){
  html body.admin-bar{
    padding-top:0 !important;
  }

  html body.admin-bar #wpadminbar{
    position:absolute !important;
  }
}

/* v43.15 - centrar verticalmente la lupa del botón buscar */
@media (max-width: 820px){
  html body .shop-search__submit,
  html body .tmx-cart-search .shop-search__submit{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    line-height:1 !important;
    padding:0 !important;
  }

  html body .shop-search__submit::before,
  html body .tmx-cart-search .shop-search__submit::before{
    margin:0 !important;
    position:static !important;
    transform:none !important;
    flex:0 0 auto !important;
    align-self:center !important;
  }
}


/* v43.16 - Nosotros: foto más ancha y sin recorte */
.hero--about-page .hero__inner--about-page{
  grid-template-columns:minmax(0,.88fr) minmax(520px,680px) !important;
  gap:48px !important;
  align-items:center !important;
}

.hero--about-page .about-photo-card{
  width:100% !important;
  max-width:680px !important;
  justify-self:end !important;
  align-self:center !important;
  min-height:0 !important;
  aspect-ratio:1 / 1.06 !important;
  background:#fff !important;
}

.hero--about-page .about-photo-card img{
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  object-fit:contain !important;
  object-position:center center !important;
  background:#fff !important;
}

@media (max-width:1180px){
  .hero--about-page .hero__inner--about-page{
    grid-template-columns:minmax(0,1fr) minmax(460px,580px) !important;
    gap:36px !important;
  }

  .hero--about-page .about-photo-card{
    max-width:580px !important;
  }
}

@media (max-width:1060px){
  .hero--about-page .hero__inner--about-page{
    grid-template-columns:1fr !important;
  }

  .hero--about-page .about-photo-card{
    justify-self:center !important;
    width:min(100%,680px) !important;
    max-width:680px !important;
    aspect-ratio:1 / .92 !important;
  }
}

@media (max-width:620px){
  .hero--about-page .about-photo-card{
    width:100% !important;
    aspect-ratio:1 / 1.04 !important;
  }
}


/* v43.17 - Nosotros: hero 50/50 e imagen sin padding */
.hero--about-page .hero__inner--about-page{
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  gap:48px !important;
  align-items:center !important;
}

.hero--about-page .hero__content{
  max-width:none !important;
}

.hero--about-page .about-photo-card{
  width:100% !important;
  max-width:none !important;
  justify-self:stretch !important;
  align-self:center !important;
  margin:0 !important;
  padding:0 !important;
  aspect-ratio:auto !important;
  background:transparent !important;
  overflow:hidden !important;
  border-radius:5px !important;
}

.hero--about-page .about-photo-card img{
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  display:block !important;
  object-fit:contain !important;
  object-position:center center !important;
  padding:0 !important;
  margin:0 !important;
  border-radius:5px !important;
  background:transparent !important;
}

@media (max-width:1060px){
  .hero--about-page .hero__inner--about-page{
    grid-template-columns:1fr !important;
    gap:32px !important;
  }

  .hero--about-page .about-photo-card{
    width:100% !important;
    max-width:none !important;
  }

  .hero--about-page .about-photo-card img{
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
  }
}


/* v43.18 - Nosotros: imagen 50/50 estirada al alto del texto, sin padding */
.hero--about-page .hero__inner--about-page{
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  gap:48px !important;
  align-items:stretch !important;
}

.hero--about-page .hero__content{
  height:100% !important;
  min-height:100% !important;
  justify-content:center !important;
}

.hero--about-page .about-photo-card{
  width:100% !important;
  height:100% !important;
  min-height:100% !important;
  max-width:none !important;
  align-self:stretch !important;
  justify-self:stretch !important;
  display:flex !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  border-radius:5px !important;
  background:transparent !important;
}

.hero--about-page .about-photo-card img{
  width:100% !important;
  height:100% !important;
  min-height:100% !important;
  display:block !important;
  object-fit:cover !important;
  object-position:center center !important;
  margin:0 !important;
  padding:0 !important;
  border-radius:5px !important;
  background:transparent !important;
}

@media (max-width:1060px){
  .hero--about-page .hero__inner--about-page{
    grid-template-columns:1fr !important;
    align-items:start !important;
    gap:32px !important;
  }

  .hero--about-page .about-photo-card{
    height:auto !important;
    min-height:0 !important;
  }

  .hero--about-page .about-photo-card img{
    height:auto !important;
    min-height:0 !important;
    object-fit:contain !important;
  }
}


/* v43.19 - Nosotros: menos padding lateral, 50/50 real e imagen sin corte */
.hero--about-page > .container,
.hero--about-page .container,
.hero--about-page .hero__inner--about-page{
  width:min(1480px, calc(100% - 64px)) !important;
  max-width:1480px !important;
}

.hero--about-page .hero__inner--about-page{
  grid-template-columns:minmax(0, 1fr) minmax(0, 1fr) !important;
  gap:44px !important;
  align-items:center !important;
}

.hero--about-page .hero__content{
  max-width:none !important;
  width:100% !important;
}

.hero--about-page .about-photo-card{
  width:100% !important;
  max-width:none !important;
  height:auto !important;
  min-height:0 !important;
  align-self:center !important;
  justify-self:stretch !important;
  display:block !important;
  padding:0 !important;
  margin:0 !important;
  overflow:hidden !important;
  border-radius:5px !important;
  background:transparent !important;
}

.hero--about-page .about-photo-card img{
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  display:block !important;
  object-fit:contain !important;
  object-position:center center !important;
  padding:0 !important;
  margin:0 !important;
  border-radius:5px !important;
  background:transparent !important;
}

/* Pantallas grandes: todavía menos margen lateral para que la imagen respire más */
@media (min-width:1440px){
  .hero--about-page > .container,
  .hero--about-page .container,
  .hero--about-page .hero__inner--about-page{
    width:min(1520px, calc(100% - 48px)) !important;
    max-width:1520px !important;
  }
}

/* Laptop estándar */
@media (max-width:1280px){
  .hero--about-page > .container,
  .hero--about-page .container,
  .hero--about-page .hero__inner--about-page{
    width:min(1200px, calc(100% - 44px)) !important;
  }

  .hero--about-page .hero__inner--about-page{
    gap:36px !important;
  }
}

/* Tablet/móvil: una columna para evitar corte o compresión */
@media (max-width:1060px){
  .hero--about-page > .container,
  .hero--about-page .container,
  .hero--about-page .hero__inner--about-page{
    width:calc(100% - 28px) !important;
  }

  .hero--about-page .hero__inner--about-page{
    grid-template-columns:1fr !important;
    gap:30px !important;
  }

  .hero--about-page .about-photo-card img{
    width:100% !important;
    height:auto !important;
  }
}


/* v43.20 - ocultar botón automático "Ver carrito" después de añadir producto */
.woocommerce a.added_to_cart,
.woocommerce a.added_to_cart.wc-forward,
.woocommerce ul.products li.product a.added_to_cart,
.woocommerce ul.products li.product a.added_to_cart.wc-forward,
.tmx-store-product-card a.added_to_cart,
.tmx-store-product-card a.added_to_cart.wc-forward,
.tmx-store-product-card__actions a.added_to_cart,
.tmx-store-product-card__actions a.added_to_cart.wc-forward,
.tmx-product-card a.added_to_cart,
.tmx-product-card a.added_to_cart.wc-forward,
.related.products a.added_to_cart,
.related.products a.added_to_cart.wc-forward,
.recommended-products a.added_to_cart,
.recommended-products a.added_to_cart.wc-forward{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  width:0 !important;
  height:0 !important;
  min-width:0 !important;
  min-height:0 !important;
  padding:0 !important;
  margin:0 !important;
  overflow:hidden !important;
}


/* v43.26 — Home: tarjetas de producto, imagen a sangre (sin padding, sin fondo visible) */
.home-shop-products-grid--discovery .home-shop-product-card__image,
.home-shop-product-card--recommendation .home-shop-product-card__image{
  height:230px !important;
  min-height:230px !important;
  max-height:230px !important;
  padding:0 !important;
  background:#fff !important;
  overflow:hidden !important;
}
.home-shop-products-grid--discovery .home-shop-product-card__image img,
.home-shop-products-grid--discovery .home-shop-product-card__image .tmx-product-image,
.home-shop-product-card--recommendation .home-shop-product-card__image img,
.home-shop-product-card--recommendation .home-shop-product-card__image .tmx-product-image{
  width:100% !important;
  height:100% !important;
  max-height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
  display:block !important;
}
@media (max-width: 980px){
  .home-shop-products-grid--discovery .home-shop-product-card__image,
  .home-shop-product-card--recommendation .home-shop-product-card__image{
    height:200px !important;
    min-height:200px !important;
    max-height:200px !important;
  }
}
@media (max-width: 640px){
  .home-shop-products-grid--discovery .home-shop-product-card__image,
  .home-shop-product-card--recommendation .home-shop-product-card__image{
    height:180px !important;
    min-height:180px !important;
    max-height:180px !important;
  }
}

/* Hero home: subir un poco la columna de texto (izquierda).
   IMPORTANTE: se usa margin-bottom y NO transform. Un transform aquí crearía
   un "containing block" que reancla la .feature-grid (position:absolute) a esta
   columna en vez de al hero, descolocando las cards. margin no tiene ese efecto. */
.hero--home .hero__content{
  margin-bottom: 28px;
}
@media (max-width:820px){
  .hero--home .hero__content{
    margin-bottom: 0;
  }
}

/* ============================================================
   Cards de las landings de alquiler (impresoras / laptops)
   Igualadas al estilo del home: cards blancas separadas, con
   sombra, flotando sobre el borde inferior del hero.
   Scopeado a esas dos páginas para no afectar otras vistas.
   ============================================================ */
body[class*="alquiler-impresoras"] .pull-up-metrics,
body[class*="alquiler-laptops"] .pull-up-metrics{
  margin-top:-62px !important;
  padding-top:0 !important;
  position:relative !important;
  z-index:20 !important;
}
body[class*="alquiler-impresoras"] .pull-up-metrics .metric-cards,
body[class*="alquiler-laptops"] .pull-up-metrics .metric-cards{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  padding:0 !important;
  gap:16px !important;
}
body[class*="alquiler-impresoras"] .pull-up-metrics .metric-card,
body[class*="alquiler-laptops"] .pull-up-metrics .metric-card{
  background:#fff !important;
  border:1px solid rgba(23,59,108,.08) !important;
  border-radius:18px !important;
  box-shadow:0 20px 46px rgba(12,34,64,.13) !important;
  padding:24px 26px !important;
  min-height:104px !important;
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:16px !important;
}
body[class*="alquiler-impresoras"] .pull-up-metrics .metric-card__ic,
body[class*="alquiler-laptops"] .pull-up-metrics .metric-card__ic{
  flex:0 0 auto !important;
  width:26px !important;
  height:26px !important;
  color:#2E86FF !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin:0 !important;
  background:none !important;
}
body[class*="alquiler-impresoras"] .pull-up-metrics .metric-card__ic svg,
body[class*="alquiler-laptops"] .pull-up-metrics .metric-card__ic svg{
  width:26px !important;
  height:26px !important;
}
body[class*="alquiler-impresoras"] .pull-up-metrics .metric-card__text,
body[class*="alquiler-laptops"] .pull-up-metrics .metric-card__text{
  color:var(--blue-950) !important;
  font-size:15.5px !important;
  font-weight:500 !important;
  line-height:1.38 !important;
  letter-spacing:-.005em !important;
  margin:0 !important;
}
@media (max-width:820px){
  body[class*="alquiler-impresoras"] .pull-up-metrics,
  body[class*="alquiler-laptops"] .pull-up-metrics{
    margin-top:-32px !important;
  }
}
