/* IMPOMIN: scale by role, shared by the five storefront templates. */
:root{--type-caption:12px;--type-small:14px;--type-body:16px;--type-card:16px;--type-section:30px;--type-page:40px}
body{font-size:var(--type-body);line-height:1.5}
/* Marketing headings stay prominent without overwhelming the product catalogue. */
.fiestas-patrias .hero-slide h1,.fiestas-patrias .hero-slide h2,
.fiestas-patrias .hero-slide .fp-hero-copy h1{font-size:clamp(36px,3.5vw,56px);line-height:1.08;letter-spacing:-.035em;font-weight:700}
.fiestas-patrias .fp-hero-subtitle{font-size:22px;line-height:1.3;letter-spacing:-.02em}
.fiestas-patrias .section-heading h2,.fiestas-patrias #seguridad-vial .section-heading h2,
.related-section__header h2,.product-information__intro h2{font-size:var(--type-section);line-height:1.2;letter-spacing:-.025em;font-weight:600}
.fiestas-patrias .wide-promo h2,.b2b h2,.footer-cta__copy h2,
.catalog-footer .footer-cta__copy h2,.truck-builder__header h2{font-size:30px;line-height:1.2;letter-spacing:-.025em}
.fiestas-patrias .mini-promo h2{font-size:20px;line-height:1.25;letter-spacing:-.02em;margin-block:8px 12px}
.fiestas-patrias .mini-promo strong,.hero-price strong{font-size:22px;line-height:1.25;letter-spacing:-.02em}
.fiestas-patrias .mini-promo h2 br{display:none}
.fiestas-patrias .mini-promo h2{white-space:normal}
/* Page headings: category, cart and configurator. */
.catalog-page .category-hero h1,.cart-page .cart-intro h1,.configurator-page .config-intro h1{font-size:var(--type-page);line-height:1.15;letter-spacing:-.03em;font-weight:600}
.product-page .product-buybox h1{font-size:32px;line-height:1.2;letter-spacing:-.025em;font-weight:600;overflow-wrap:break-word;margin-block:16px}
.cart-empty-page h2{font-size:32px;line-height:1.2;letter-spacing:-.025em}
.smart-complements h2,.cart-recommendations>header h2{font-size:26px;line-height:1.25;letter-spacing:-.02em}
.cart-panel-heading h2,.cart-order-card>header h2,.cart-drawer__header h2,
.config-cart-drawer>header h2,.cart-confirm__card h2,.cart-mode-dialog__card h2{font-size:22px;line-height:1.3;letter-spacing:-.02em}
/* Descriptions and controls. Inputs retain 16px to avoid mobile focus zoom. */
.product-summary,.product-information__intro>p,.product-accordion__panel,
.product-accordion__panel p,.product-accordion__panel li,.compatibility-card p,
.fp-hero-description,.fp-shelf-description,.wide-promo p,.section-heading>p,
.cart-intro>p,.category-hero__copy>p,.config-intro__copy>p{font-size:var(--type-body)!important;line-height:1.6!important;font-weight:400;letter-spacing:normal}
.product-accordion__panel h2,.product-accordion__panel h3{font-size:20px;line-height:1.3}
.product-accordion>button>span,.product-quote>span,.product-trust strong{font-size:15px;line-height:1.4}
.add-button,.catalog-card__add,.complement-card button,.complement-review,
.product-purchase>button,.product-purchase>button span,.cart-checkout-button span,
.cart-primary-button,.configuration-bar__add{font-size:14px;line-height:1.4;font-weight:600}
.fp-hero-cta{font-size:15px!important;line-height:1.4}
.product-filters button,.shelf-controls button,.filter-option,.catalog-sort{font-size:14px;line-height:1.4}
.product-card__name,.fiestas-patrias .product-card__name,.catalog-card__name,
.catalog-card h3,.complement-card__name,.cart-line-product__copy h3,.related-card__body h3{font-size:var(--type-card);line-height:1.4;letter-spacing:normal;font-weight:600}
.product-card__name,.fiestas-patrias .product-card__name{min-height:4.2em}
.complement-card__body p,.smart-complements header p{font-size:14px!important;line-height:1.55}
/* Prices have one consistent emphasis; the previous price remains secondary. */
.product-page .product-price strong{font-size:28px;line-height:1.2;letter-spacing:-.025em;font-weight:700}
.product-page .product-price del{font-size:14px;line-height:1.4;letter-spacing:normal}
.fiestas-patrias .product-card__price strong,.product-card__price strong,
.catalog-card__price strong,.catalog-card__price,.related-card__bottom strong{font-size:20px;line-height:1.25;letter-spacing:-.02em}
.product-card__price del,.catalog-card__price del{font-size:13px;line-height:1.4;letter-spacing:normal}
.cart-order-total>strong{font-size:26px;line-height:1.2}
.configuration-bar__total strong{font-size:22px;line-height:1.2}
.category-hero__stats strong{font-size:20px;line-height:1.25}
/* Small text is small only when its role is secondary, never for main copy. */
.eyebrow,.fp-eyebrow,.fp-edition,.hero-kicker,.cart-eyebrow,.config-kicker,
.category-hero__eyebrow,.complements-eyebrow,.product-buybox__meta,
.product-buybox__meta>span,.product-page .product-price>div>span,
.product-card__category,.catalog-card__topline,.complement-card__label,
.related-card__body small,.product-page .product-badge,.product-badge,
.catalog-card__badge,.product-page .product-price em,
.fiestas-patrias .mini-promo span{font-size:var(--type-caption)!important;line-height:1.4;letter-spacing:.035em;font-weight:600}
.product-page .product-price{flex-wrap:wrap;gap:12px;min-height:88px;padding-block:16px}
.product-badge,.catalog-card__badge{min-height:24px;padding:4px 8px!important}
.product-status,.product-breadcrumb,.product-trust small,.product-quote small,
.product-buybox .product-status a,.product-canvas__bottom>span,
.fp-hero-note,.fp-shelf-footer,.trust-strip small,.category-card small,
.category-hero__stats small,.cart-order-legal,.cart-line-product__copy>small,
.cart-checkout-button small,.cart-payment-strip span,.cart-payment-strip strong,
.configuration-bar__selection small,.configuration-bar__total small,
.complements-tax,.header-action small,.footer-button span small,
.footer-cta__copy small,.footer-location small,.footer-contact>small,.footer-trust small{font-size:12px;line-height:1.5;letter-spacing:normal}
.department-nav__inner>a,.product-nav__inner>a,.trust-strip strong,
.site-footer nav a,.site-footer p,.site-footer small,.footer-bottom{font-size:14px;line-height:1.5}
.footer-nav h3,.footer-contact h3{font-size:14px;line-height:1.4;letter-spacing:.035em}
.fp-ticker__inner,.fp-greeting{font-size:12px;line-height:1.4}
.cart-count{font-size:12px}
@media(max-width:800px){
 :root{--type-section:26px;--type-page:34px}
 .fiestas-patrias .hero-slide h1,.fiestas-patrias .hero-slide h2,.fiestas-patrias .hero-slide .fp-hero-copy h1{font-size:40px}
 .fiestas-patrias .wide-promo h2,.b2b h2,.footer-cta__copy h2,.catalog-footer .footer-cta__copy h2{font-size:26px}
 .product-page .product-buybox h1{font-size:28px}
}
@media(max-width:620px){
 :root{--type-body:15px;--type-card:14px;--type-section:24px;--type-page:30px}
 .fiestas-patrias .hero-slide h1,.fiestas-patrias .hero-slide h2,.fiestas-patrias .hero-slide .fp-hero-copy h1{font-size:36px;line-height:1.1}
 .fiestas-patrias .fp-hero-subtitle{font-size:19px;line-height:1.35}
 .fiestas-patrias .mini-promo h2{font-size:17px;line-height:1.3}
 .fiestas-patrias .mini-promo strong,.hero-price strong{font-size:20px}
 .fiestas-patrias .mini-promo em{font-size:13px}
 .product-page .product-buybox h1{font-size:26px;line-height:1.25}
 .product-page .product-price strong{font-size:26px}
 .product-page .product-price em{font-size:11px!important}
 .smart-complements h2,.cart-recommendations>header h2,.cart-empty-page h2{font-size:24px}
 .cart-panel-heading h2,.cart-order-card>header h2,.cart-confirm__card h2,.cart-mode-dialog__card h2{font-size:20px}
 .cart-order-total>strong{font-size:24px}
 .fiestas-patrias .product-card__price strong,.product-card__price strong,.catalog-card__price strong,.catalog-card__price,.related-card__bottom strong{font-size:18px}
 .product-card__category,.catalog-card__topline{font-size:11px!important;line-height:1.4}
 .product-purchase>button,.product-purchase>button span,.cart-checkout-button span,.cart-primary-button,.configuration-bar__add{font-size:15px}
 .mobile-navigation-dock button,.mobile-navigation-dock a,.mn-dock button{font-size:12px;line-height:1.35}
 .mobile-buybar small{font-size:11px;line-height:1.3}.mobile-buybar strong{font-size:18px;line-height:1.25}
 .mobile-buybar button{font-size:14px}
 .category-hero__stats small{font-size:12px}
}
@media(max-width:380px){
 .fiestas-patrias .hero-slide h1,.fiestas-patrias .hero-slide h2,.fiestas-patrias .hero-slide .fp-hero-copy h1{font-size:32px}
 .catalog-page .category-hero h1,.cart-page .cart-intro h1,.configurator-page .config-intro h1{font-size:28px}
 .product-page .product-buybox h1{font-size:24px}
}

/* Open menus: content determines height; product names must never be cropped. */
.mega-menu{max-height:calc(100dvh - 160px);overflow-x:hidden;overflow-y:auto}
.mega-command__header{align-items:center;gap:24px}
.mega-command__identity{gap:14px}
.mega-command__identity>span{font-size:11px;letter-spacing:0;width:44px;height:44px}
.mega-command__identity small{font-size:12px;line-height:1.4;letter-spacing:.06em;font-weight:600}
.mega-command__identity h2{font-size:22px;line-height:1.3;letter-spacing:-.02em;font-weight:600;margin:4px 0}
.mega-command__identity p{font-size:13px;line-height:1.5;color:#62625c}
.mega-command__actions button,.mega-command__actions a{font-size:13px;line-height:1.4;font-weight:600;height:auto;min-height:40px;padding-block:9px}
.mega-command__tabs{height:auto;min-height:48px;gap:6px;padding-block:8px}
.mega-command__tabs button{font-size:13px;line-height:1.4;font-weight:600;min-height:32px;height:auto;padding:7px 12px}
.mega-command__body{grid-template-columns:minmax(0,1.05fr) minmax(0,1.35fr) minmax(0,.95fr);gap:20px;align-items:start}
.mega-command__body>*{min-width:0}
.mega-command__column-head{height:auto;min-height:32px;gap:8px;flex-wrap:wrap;align-items:baseline;padding-bottom:10px}
.mega-command__column-head>span{font-size:13px;line-height:1.4;font-weight:600}
.mega-command__column-head>small{font-size:12px;line-height:1.4;color:#62625c}
.mega-command__link-grid{gap:8px}
.mega-command__link{min-height:70px;padding:10px 8px;gap:8px;grid-template-columns:24px minmax(0,1fr) 10px;align-items:start}
.mega-command__link>i{font-size:11px;width:24px;height:24px;line-height:1}
.mega-command__link strong{font-size:13px;line-height:1.4;font-weight:600;overflow-wrap:break-word}
.mega-command__link small{font-size:12px;line-height:1.4;color:#62625c;white-space:normal;overflow:visible;text-overflow:clip;margin-top:4px}
.mega-command__link>b{font-size:14px;line-height:24px}
.mega-command__product-grid{gap:10px;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.mega-command__product{height:auto;min-height:240px;padding:8px;gap:0}
.mega-command__product-media{height:100px;flex:0 0 100px}
.mega-command__product-media i{font-size:10px;line-height:1.4;min-height:20px;padding:2px 5px;font-weight:600;max-width:calc(100% - 12px);white-space:normal;letter-spacing:.025em}
.mega-command__product>small{font-size:11px;line-height:1.4;letter-spacing:.025em;color:#62625c;min-height:1.4em;margin:10px 2px 5px;overflow-wrap:break-word}
.mega-command__product>strong{font-size:13px;line-height:1.4;font-weight:600;min-height:3.9em;height:auto;max-height:none;display:block;-webkit-line-clamp:unset;overflow:visible;flex-shrink:0;overflow-wrap:break-word;letter-spacing:normal}
.mega-command__product-price{margin:10px 2px 2px;padding-top:4px;gap:4px 8px;flex-wrap:wrap;line-height:1.4}
.mega-command__product-price b{font-size:16px;line-height:1.3;font-weight:700;white-space:nowrap}
.mega-command__product-price del{font-size:12px;line-height:1.4;color:#62625c;white-space:nowrap}
.mega-command__feature{height:auto;min-height:272px;padding:18px;gap:22px}
.mega-command__feature-tag{width:fit-content;max-width:100%;font-size:11px;line-height:1.4;letter-spacing:.035em;font-weight:600;padding:4px 7px}
.mega-command__feature>div{max-width:62%;min-width:0}
.mega-command__feature small{font-size:11px;line-height:1.5;letter-spacing:.025em}
.mega-command__feature strong{font-size:20px;line-height:1.25;letter-spacing:-.02em;font-weight:600;margin:6px 0 8px}
.mega-command__feature p{font-size:13px;line-height:1.5;margin-bottom:12px}
.mega-command__feature em{font-size:13px;line-height:1.4;font-weight:600}
.mega-command__feature>img{right:-9%;width:53%;height:75%;bottom:0}
/* Mobile categories/search use the same hierarchy without reducing hit areas. */
.mn-header small,.mn-section-label{font-size:12px;line-height:1.5;letter-spacing:.055em;font-weight:600}
.mn-header h2{font-size:22px;line-height:1.3;letter-spacing:-.02em;font-weight:600}
.mn-category strong,.mn-result strong{font-size:15px;line-height:1.4;font-weight:600;overflow-wrap:break-word}
.mn-category small,.mn-category b,.mn-result small,.mn-status,.mn-search-tip{font-size:12px;line-height:1.5}
.mn-category small,.mn-result small{color:#62625c}.mn-category--all small,.mn-category--all b{color:#c4c4bd}
.mn-category b{flex-shrink:0}.mn-category i,.mn-result i{flex-shrink:0;font-size:20px}
.mn-result b{font-size:16px;line-height:1.4}
.mn-builder,.mn-all-results,.mn-suggestions button{font-size:14px;line-height:1.4}
.mn-suggestions span{min-width:0;overflow-wrap:break-word}
.mn-dock button{font-size:12px;line-height:1.35}
@media(min-width:901px) and (max-width:1250px){
 .mega-command__body{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}
 .mega-command__feature{grid-column:1/-1;min-height:180px;display:grid;grid-template-columns:.6fr 1fr;align-items:center;padding-right:26%}
 .mega-command__feature>div{max-width:none}
 .mega-command__feature>img{width:24%;height:100%;right:0}
 .mega-command__feature-tag{align-self:start}
 .mega-command__identity p{display:block}
 .mega-command__product{min-height:248px}
}
@media(max-width:900px){
 .mega-command__body{grid-template-columns:1fr 1fr}
 .mega-command__feature{grid-column:1/-1;min-height:230px}
 .mega-command__identity h2{font-size:20px}
}
@media(max-width:620px){
 .mega-command__body{grid-template-columns:1fr}
 .mega-command__product-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:row;overflow-x:visible}
 .mega-command__identity h2{font-size:18px;max-width:none}
 .mega-command__identity>span{width:36px;height:36px;font-size:10px}
 .mega-command__actions a{font-size:12px}
 .mega-command__feature{grid-column:auto}
}

.mega-command__product-price{margin-top:auto;padding-top:12px}
@media(min-width:901px) and (max-width:1150px){
 .department-nav{height:auto}
 .department-nav__inner{height:auto;min-height:44px;flex-wrap:wrap;gap:0 18px;overflow:visible}
 .department-nav__inner>[data-mega-category],.department-nav__inner>a,.department-nav__inner>.all-categories{height:42px;min-height:42px;display:flex;align-items:center;font-size:13px}
 .department-nav__inner>.nav-enterprise{display:flex!important}
 .department-nav__inner>.all-categories{padding-inline:12px;flex-shrink:0}
 .mega-menu{max-height:calc(100dvh - 210px)}
}
