/* Normacol visual system: shared tokens and reusable page components. */
:root {
    --primary: #12364b;
    --primary-dark: #0b2939;
    --primary-light: #005a94;
    --accent-blue: #005a94;
    --accent-bg: #e9f1f4;
    --text-dark: #1d2c35;
    --text-muted: #536875;
    --bg-light: #eef2f4;
    --bg-white: #fff;
    --border-color: #d9e3e7;
    --success: #25d366;
    --success-hover: #138749;
    --shadow-sm: 0 2px 8px rgba(18, 54, 75, .05);
    --shadow-md: 0 8px 24px rgba(18, 54, 75, .11);
    --navbar-height: 76px;
    --section-padding: clamp(3rem, 6vw, 5rem);
    --radius-sm: 8px;
    --radius-md: 12px;
    --transition: 180ms ease;
    --transition-fast: 180ms ease;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: calc(var(--navbar-height) + 1rem); }
body {
    display: flex;
    min-height: 100vh;
    flex-direction: column;
    padding-top: var(--navbar-height);
    background: var(--bg-light);
    color: var(--text-dark);
    font-family: "Segoe UI", -apple-system, BlinkMacSystemFont, Roboto, sans-serif;
    font-size: 16px;
    line-height: 1.6;
}
[data-component="footer"] { margin-top: auto; }
.site-main { flex: 1 0 auto; width: 100%; }
.container { --bs-gutter-x: clamp(1.5rem, 3vw, 2rem); }
.content-narrow { max-width: 760px; }
.about-history-row { --bs-gutter-x: clamp(1.5rem, 3vw, 3rem); }
.noscript-navigation { display: grid; gap: .65rem; padding: .85rem 1rem; border-bottom: 1px solid var(--border-color); background: #fff; }
.noscript-navigation .input-group { max-width: 34rem; }
.noscript-navigation-links { display: flex; flex-wrap: wrap; gap: .35rem .75rem; }
.noscript-navigation-links a { display: inline-flex; min-height: 44px; align-items: center; color: var(--primary); text-decoration: underline; text-underline-offset: .15em; }
img { max-width: 100%; height: auto; }
p, li { text-wrap: pretty; }
h1, h2, h3, h4, h5, h6 { color: var(--primary); font-weight: 650; line-height: 1.25; letter-spacing: -.025em; }
h1 { font-size: clamp(2rem, 4vw, 3rem); }
h2 { font-size: clamp(1.55rem, 3vw, 2.15rem); }
h3 { font-size: clamp(1.2rem, 2vw, 1.5rem); }
a { color: var(--primary-light); text-decoration: none; }
a:hover { color: var(--primary); }
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible {
    outline: 3px solid #1974a9;
    outline-offset: 3px;
}
.skip-link {
    position: fixed; z-index: 2000; top: .75rem; left: .75rem;
    padding: .65rem 1rem; transform: translateY(-180%); border-radius: var(--radius-sm);
    background: #fff; color: var(--primary); box-shadow: var(--shadow-md); transition: transform var(--transition);
}
.skip-link:focus { transform: translateY(0); }

/* Shared navigation */
.navbar {
    position: fixed; z-index: 1030; inset: 0 0 auto; height: var(--navbar-height); min-height: var(--navbar-height);
    padding: 0; border-bottom: 1px solid var(--border-color); background: rgba(255,255,255,.98);
    box-shadow: var(--shadow-sm); backdrop-filter: blur(12px);
}
.navbar .container { position: relative; height: 100%; }
.navbar-brand { display: flex; flex: 0 0 auto; align-items: center; height: 100%; margin: 0; padding: 0; }
.navbar-brand img { width: auto; height: 56px; max-width: min(38vw, 230px); object-fit: contain; }
.navbar-collapse { min-width: 0; }
.navbar-search { position: relative; flex: 0 1 250px; width: clamp(190px, 20vw, 250px); margin-left: 1rem; }
.navbar-nav { height: 100%; align-items: center; gap: .2rem; }
.navbar .nav-link { min-height: 44px; padding: .62rem .7rem; border-radius: 7px; color: var(--primary); font-size: .91rem; font-weight: 550; white-space: nowrap; }
.navbar .nav-link:hover, .navbar .nav-link.active, .navbar .show > .nav-link { background: var(--accent-bg); color: var(--primary-light); }
.navbar .dropdown-menu { min-width: 15rem; margin-top: .35rem; padding: .45rem; border: 1px solid var(--border-color); border-radius: var(--radius-md); box-shadow: var(--shadow-md); }
.navbar .dropdown-item { padding: .58rem .72rem; border-radius: 6px; color: var(--text-dark); }
.navbar .dropdown-item:hover, .navbar .dropdown-item:focus { background: var(--accent-bg); color: var(--primary); }
.navbar .navbar-search-toggle, .navbar .navbar-toggler { display: inline-grid; width: 44px; height: 44px; place-items: center; padding: 0; border: 1px solid var(--border-color); border-radius: var(--radius-sm); background: #fff; color: var(--primary); }
.navbar .nav-quote { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding-inline: 1rem; }
.navbar-search-mobile { position: absolute; z-index: 1040; top: calc(100% + .4rem); right: .75rem; left: .75rem; padding: .75rem; border: 1px solid var(--border-color); border-radius: var(--radius-md); background: #fff; box-shadow: var(--shadow-md); }
.site-search-suggestions { position: absolute; z-index: 1100; top: calc(100% + .4rem); right: 0; left: 0; max-height: min(22rem,60vh); overflow-y: auto; padding: .35rem; border: 1px solid var(--border-color); border-radius: 10px; background: #fff; box-shadow: var(--shadow-md); }
.site-search-suggestions[hidden] { display: none; }
.site-search-result { display: flex; width: 100%; flex-direction: column; gap: .12rem; padding: .65rem .75rem; border: 0; border-radius: 6px; background: transparent; color: var(--primary); text-align: left; }
.site-search-result:hover, .site-search-result:focus-visible, .site-search-result[aria-selected="true"] { background: var(--accent-bg); }
.site-search-result-title { font-size: .9rem; font-weight: 650; }
.site-search-result-kind, .site-search-empty { color: var(--text-muted); font-size: .8rem; }
.site-search-empty { padding: .7rem .75rem; }

/* Type, buttons and surfaces */
section { padding: var(--section-padding) 0; }
section > .container > h2, .section-heading { margin-bottom: 2rem; color: var(--primary); font-size: clamp(1.65rem,2.7vw,2.125rem); text-align: center; }
.section-heading::after, section > .container > h2::after { display: block; width: 2.5rem; height: 2px; margin: 1rem auto 0; border-radius: 2px; background: var(--accent-blue); content: ""; }
.eyebrow { margin: 0 0 .6rem; color: var(--accent-blue); font-size: .76rem; font-weight: 700; letter-spacing: .12em; line-height: 1.35; text-transform: uppercase; }
.btn { min-height: 44px; padding: .62rem 1.15rem; border-radius: var(--radius-sm); font-weight: 600; transition: background-color var(--transition), border-color var(--transition), color var(--transition), transform var(--transition), box-shadow var(--transition); }
.btn-primary { border: 1px solid var(--primary); background: var(--primary); color: #fff; }
.btn-primary:hover, .btn-primary:focus { transform: translateY(-1px); border-color: var(--primary-dark); background: var(--primary-dark); color: #fff; }
.btn-outline-primary { border: 1px solid var(--primary-light); background: #fff; color: var(--primary-light); }
.btn-outline-primary:hover, .btn-outline-primary:focus { border-color: var(--primary); background: var(--accent-bg); color: var(--primary); }
.btn-success { border-color: var(--success); background: var(--success); color: #073b25; }
.btn-success:hover, .btn-success:focus { border-color: var(--success-hover); background: var(--success-hover); color: #fff; }
.btn-lg { padding: .8rem 1.35rem; font-size: 1rem; }
.form-control { min-height: 44px; border: 1px solid var(--border-color); border-radius: var(--radius-sm); background: #fff; color: var(--text-dark); }
.form-control:focus { border-color: var(--accent-blue); box-shadow: 0 0 0 .2rem rgba(0,90,148,.16); }
.bg-light { background-color: var(--bg-light) !important; }
.bg-white { background-color: #fff !important; }
.bg-primary { background-color: var(--primary) !important; }
.text-primary { color: var(--primary-light) !important; }
.text-muted { color: var(--text-muted) !important; }
.card { overflow: hidden; border: 1px solid var(--border-color); border-radius: var(--radius-md); background: #fff; box-shadow: 0 4px 18px rgba(18,54,75,.05); }
.card-body { padding: clamp(1.1rem,2vw,1.5rem); }
.card-title { margin-bottom: .55rem; color: var(--primary); font-size: 1.12rem; font-weight: 650; }
.product-card { display: flex; flex-direction: column; transition: box-shadow var(--transition), transform var(--transition); }
.product-card:hover { transform: translateY(-2px); box-shadow: var(--shadow-md); }
.product-card .card-img-top { display: block; width: 100%; height: 210px; padding: .8rem 1rem; background: #fff; object-fit: contain; }
.product-card .card-body { display: flex; flex: 1; flex-direction: column; align-items: flex-start; text-align: left !important; }
.product-card .card-text { flex: 1; color: var(--text-muted); font-size: .93rem; }
.card-link { display: inline-flex; align-items: center; gap: .55rem; margin-top: .7rem; color: var(--primary-light); font-weight: 650; }
.card-link { min-height: 44px; align-items: center; padding-block: .45rem; }
.card-link:hover { color: var(--primary); }
.card-link span { transition: transform var(--transition); }
.card-link:hover span { transform: translateX(3px); }

/* Distribution and product discovery */
.distributor-promo { padding-block: clamp(2rem, 4vw, 3.5rem); background: #fff; }
.distributor-promo-panel { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 2rem; padding: clamp(1.5rem, 4vw, 3rem); border: 1px solid #c9dfe9; border-radius: 18px; background: linear-gradient(125deg, #e9f3f7 0%, #f7fafb 68%, #fff 100%); }
.distributor-promo-panel h2 { margin-bottom: .75rem; }
.distributor-promo-panel p:not(.eyebrow) { max-width: 65ch; color: var(--text-muted); }
.distributor-promo-points { display: flex; flex-wrap: wrap; gap: .5rem; }
.distributor-promo-points span { padding: .35rem .7rem; border-radius: 99px; background: #fff; color: var(--primary); font-size: .85rem; font-weight: 600; }
.business-hero { background: #fff; }
.business-hero-grid { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(260px, .85fr); align-items: center; gap: clamp(2rem, 5vw, 4rem); }
.business-hero-grid h1 { max-width: 15ch; }
.business-hero-grid .lead { max-width: 65ch; color: var(--text-muted); font-size: 1.1rem; }
.business-wholesale-note { max-width: 65ch; margin: 1.25rem 0 0; padding: .8rem 1rem; border-left: 3px solid var(--accent-blue); border-radius: 0 var(--radius-sm) var(--radius-sm) 0; background: var(--accent-bg); color: var(--text-dark); }
.business-hero-grid > img { width: 100%; max-height: 400px; object-fit: contain; }
.business-intro { max-width: 68ch; margin: 0 auto 2rem; color: var(--text-muted); }
.business-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.business-cards-two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.business-card { padding: clamp(1.2rem, 2.5vw, 1.75rem); border: 1px solid var(--border-color); border-radius: var(--radius-md); background: #fff; box-shadow: var(--shadow-sm); }
.business-card-icon { display: inline-grid; width: 2.4rem; height: 2.4rem; margin-bottom: 1rem; place-items: center; border-radius: 50%; background: var(--accent-bg); color: var(--primary-light); font-weight: 700; }
.business-card h3 { margin-bottom: .65rem; font-size: 1.18rem; }
.business-card p { margin-bottom: 0; color: var(--text-muted); }
.business-links { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .7rem; }
.business-links a { display: flex; flex-direction: column; min-height: 108px; gap: .3rem; padding: 1.1rem; border: 1px solid var(--border-color); border-radius: var(--radius-sm); background: #fff; }
.business-links a:hover { border-color: var(--accent-blue); box-shadow: var(--shadow-sm); }
.business-links span { color: var(--text-muted); font-size: .88rem; }
.business-process { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(250px, .8fr); align-items: start; gap: clamp(2rem, 5vw, 4rem); }
.business-process p { color: var(--text-muted); }
.business-contact { display: flex; flex-direction: column; align-items: flex-start; gap: .75rem; padding: 1.5rem; border: 1px solid var(--border-color); border-radius: var(--radius-md); background: var(--accent-bg); }
.business-contact h3, .business-contact p { margin: 0; }
.business-email { font-weight: 600; }
.catalog-family-spotlight { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1.25rem 1.5rem; border: 1px solid #c9dfe9; border-radius: var(--radius-md); background: #e9f3f7; }
.catalog-family-spotlight h2 { margin-bottom: .25rem; font-size: 1.25rem; }
.catalog-family-spotlight p { margin-bottom: 0; color: var(--text-muted); }
.seeger-diagram { max-width: 520px; margin: 1.5rem auto; padding: 1rem; border: 1px solid var(--border-color); border-radius: var(--radius-md); background: #fff; text-align: center; }
.seeger-diagram img { display: block; width: 100%; height: auto; }
.seeger-diagram figcaption { margin-top: .7rem; color: var(--text-muted); font-size: .85rem; }
@media (max-width: 991px) { .business-cards, .business-links { grid-template-columns: repeat(2, minmax(0, 1fr)); } .distributor-promo-panel { grid-template-columns: 1fr; } }
@media (max-width: 767px) { .business-hero-grid, .business-process, .business-cards, .business-links, .business-cards-two { grid-template-columns: 1fr; } .business-hero-grid > img { max-height: 260px; } }
@media (max-width: 767px) { .catalog-family-spotlight { flex-direction: column; align-items: flex-start; } }

/* Homepage hero: three manually selected, stable layouts. */
.home-hero { padding: 1.5rem 0 1rem; background: #fff; }
.home-hero #mainCarousel { overflow: hidden; background: #fff; }
.home-hero .carousel-item { min-height: 430px; }
.home-hero .carousel-item { transition: transform var(--transition); }
.home-hero-slide { display: grid; min-height: 430px; grid-template-columns: minmax(0,1fr) minmax(280px,.9fr); align-items: center; gap: clamp(2rem,6vw,5.5rem); padding: clamp(2rem,5vw,4rem) clamp(1rem,4vw,3.25rem); }
.home-hero-copy { max-width: 620px; }
.home-hero-copy h2 { max-width: 600px; margin-bottom: 1rem; color: var(--primary); font-size: clamp(2.1rem,4vw,3rem); font-weight: 700; line-height: 1.08; }
.home-hero-copy h1 { max-width: 600px; margin-bottom: 1rem; color: var(--primary); font-size: clamp(2.1rem,4vw,3rem); font-weight: 700; line-height: 1.08; }
.home-hero-copy > p:not(.eyebrow) { max-width: 56ch; margin-bottom: 1.4rem; color: var(--text-muted); font-size: clamp(1rem,1.5vw,1.12rem); }
.home-hero-media { display: grid; min-height: 290px; place-items: center; overflow: hidden; background: transparent; }
.home-hero-media img { display: block; width: 100%; height: 310px; object-fit: contain; }
picture { display: block; }
.home-hero-controls { display: flex; justify-content: center; gap: .5rem; padding: 0 0 1rem; }
.home-hero-controls button { display: grid; width: 44px; height: 44px; padding: 0; place-items: center; border: 0; border-radius: 50%; background: transparent; }
.home-hero-controls button[data-bs-slide-to]::before { display: block; width: 26px; height: 8px; border-radius: 99px; background: #8ca5b0; content: ""; }
.home-hero-controls button[data-bs-slide-to].active::before { width: 36px; background: var(--accent-blue); }
.home-hero-controls button[data-bs-slide] { color: var(--primary); font-size: 1.35rem; font-weight: 700; }
.home-hero-controls button:focus-visible { outline: 3px solid var(--accent-blue); outline-offset: 2px; }
.carousel-slide-link:focus-visible, .brand-logo:focus-visible { outline: 3px solid var(--accent-blue); outline-offset: 3px; }
.brand-strip { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); align-items: center; justify-items: center; gap: 1.25rem; }
.brand-logo { display: grid; min-height: 64px; place-items: center; }
.brand-logo img { display: block; max-width: min(100%,170px); max-height: 46px; object-fit: contain; }

/* Catalog and product families */
.catalog-intro { padding-block: clamp(1.8rem,4vw,3rem) !important; }
.catalog-intro h1 { margin-bottom: .45rem; color: #fff !important; font-size: clamp(2rem,4vw,3rem); }
.catalog-intro .lead { color: rgba(255,255,255,.88); }
.catalog-search { max-width: 900px; margin-inline: auto; padding: 1rem 1.25rem; border: 1px solid var(--border-color); border-radius: var(--radius-md); background: #fff; }
.catalog-item[hidden] { display: none !important; }
.product-image { height: 220px; background: #fff; object-fit: contain !important; }
.category-badge { position: absolute; z-index: 1; top: 12px; right: 12px; max-width: calc(100% - 24px); padding: .3rem .65rem; border-radius: 99px; background: var(--accent-bg); color: var(--primary); font-size: .72rem; font-weight: 650; }
.catalog-quote-hint { display: flex; align-items: center; justify-content: space-between; gap: 1.25rem; padding: 1rem 1.25rem; border-left: 3px solid var(--accent-blue); border-radius: 0 var(--radius-sm) var(--radius-sm) 0; background: #fff; color: var(--text-muted); }
.catalog-quote-hint p { max-width: 72ch; }
.product-breadcrumbs { padding-top: .7rem; padding-bottom: .35rem; font-size: .875rem; }
.product-breadcrumbs .breadcrumb { --bs-breadcrumb-divider: '›'; }
.product-breadcrumbs .breadcrumb-item a { color: var(--text-muted); }
.product-breadcrumbs .breadcrumb-item a:hover { color: var(--primary-light); text-decoration: underline; }

/* Editorial institutional pages and error templates. */
.hero-about { padding: clamp(2.5rem,5vw,4rem) 0 !important; background: var(--primary); color: #fff; text-align: left; }
.hero-about h1, .hero-careers h1 { margin-bottom: .65rem; color: #fff; font-size: clamp(2rem,4vw,3rem); }
.hero-about .lead, .hero-careers .lead { max-width: 680px; margin: 0; color: rgba(255,255,255,.86); }
.hero-careers { padding: clamp(2.5rem,5vw,4rem) 0 !important; background: var(--primary); color: #fff; text-align: left; }
.about-history-copy { max-width: 62ch; line-height: 1.8; }
.mission-vision-item { height: 100%; padding: clamp(1rem,3vw,2.5rem); }
.mission-vision .col-md-6 + .col-md-6 .mission-vision-item { border-left: 1px solid var(--border-color); }
section:has(.value-icon) .card { border: 0; background: transparent; box-shadow: none; }
.about-photo { width: 100%; max-height: 390px; border-radius: var(--radius-md); object-fit: cover; }
.value-icon, .benefit-icon { display: grid; width: 42px; height: 42px; margin: 0 0 1rem; place-items: center; border-radius: 8px; background: var(--accent-bg); color: var(--accent-blue); font-size: 1.1rem; }
.benefit-card { height: 100%; padding: 1.4rem 1.1rem; border-top: 2px solid var(--accent-blue); background: #fff; }
.benefit-icon { margin-inline: 0; }
.job-card { height: 100%; border-left: 3px solid var(--accent-blue); }
.job-card:hover { box-shadow: var(--shadow-md); }
.process-step { height: 100%; padding: 1rem; border-top: 1px solid var(--border-color); }
.process-step-number { margin-bottom: .5rem; color: var(--accent-blue); font-size: 1.6rem; font-weight: 700; }
.error-page { display: flex; min-height: min(68vh,700px); align-items: center; justify-content: center; padding: 3rem 0; text-align: center; }
.error-code { color: var(--primary); font-size: clamp(5rem,14vw,8rem); font-weight: 700; line-height: 1; }

/* Shared footer and contact affordance */
.footer { padding: 2.7rem 0 1.15rem; background: var(--primary); color: rgba(255,255,255,.82); }
.footer .footer-heading { margin-bottom: .9rem; color: #fff; font-size: .8rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.footer-links { margin: 0; padding: 0; list-style: none; }
.footer-links li { margin-bottom: .45rem; }
.footer-links a, .footer-contact a { color: rgba(255,255,255,.8); font-size: .9rem; }
.footer-links a:hover, .footer-contact a:hover { color: #fff; text-decoration: underline; }
.footer-contact p { display: flex; align-items: flex-start; gap: .65rem; margin-bottom: .65rem; color: rgba(255,255,255,.8); font-size: .9rem; }
.footer-contact p i { width: 1rem; margin-top: .3rem; }
.footer-social { display: flex; gap: .65rem; }
.footer-social a { display: inline-grid; width: 40px; height: 40px; place-items: center; border: 1px solid rgba(255,255,255,.25); border-radius: 50%; color: #fff; }
.footer-social a:hover { background: #fff; color: var(--primary); }
.footer-bottom { margin-top: 1.7rem; padding-top: 1rem; border-top: 1px solid rgba(255,255,255,.18); }
.copyright-text, .company-tagline { margin: 0; color: rgba(255,255,255,.68); font-size: .82rem; }
.whatsapp-float-container { position: fixed; z-index: 999; right: max(1rem,env(safe-area-inset-right)); bottom: max(1rem,env(safe-area-inset-bottom)); display: flex; align-items: center; text-decoration: none; }
.whatsapp-float { display: grid; width: 52px; height: 52px; place-items: center; border-radius: 50%; background: var(--success); color: #073b25; box-shadow: var(--shadow-md); }
.whatsapp-float i { font-size: 28px; }
.whatsapp-text {
    position: absolute;
    right: calc(100% + .75rem);
    display: flex;
    width: max-content;
    max-width: min(220px, calc(100vw - 6rem));
    min-height: 48px;
    align-items: center;
    gap: .6rem;
    padding: .65rem .9rem;
    border: 1px solid rgba(18,54,75,.14);
    border-radius: 14px;
    background: #fff;
    color: var(--primary);
    font-family: ui-rounded, "Trebuchet MS", "Segoe UI", system-ui, sans-serif;
    font-size: .9rem;
    font-weight: 600;
    line-height: 1.3;
    letter-spacing: .005em;
    box-shadow: 0 6px 18px rgba(18,54,75,.13);
    transition: border-color var(--transition), box-shadow var(--transition), transform var(--transition);
}
.whatsapp-text::before {
    width: .5rem;
    height: .5rem;
    flex: 0 0 .5rem;
    border-radius: 50%;
    background: #16884f;
    box-shadow: 0 0 0 3px rgba(37,211,102,.16);
    content: "";
}
.whatsapp-float-container:hover .whatsapp-text,
.whatsapp-float-container:focus-visible .whatsapp-text {
    transform: translateX(-2px);
    border-color: rgba(22,136,79,.35);
    box-shadow: 0 8px 22px rgba(18,54,75,.17);
}

@media (max-width: 1199.98px) {
    :root { --navbar-height: 72px; }
    .navbar-collapse { position: absolute; top: calc(100% + .4rem); right: 1rem; left: 1rem; max-height: calc(100vh - var(--navbar-height) - 1.5rem); max-height: calc(100dvh - var(--navbar-height) - 1.5rem); overflow-y: auto; padding: .75rem; border: 1px solid var(--border-color); border-radius: var(--radius-md); background: #fff; box-shadow: var(--shadow-md); }
    .navbar-nav { height: auto; align-items: stretch; }
    .navbar-search { width: 100%; margin: 0 0 .65rem; }
    .navbar .nav-link { white-space: normal; }
    .navbar .dropdown-menu { margin: .1rem 0 .35rem; border: 0; background: #f5f8f9; box-shadow: none; }
}
@media (min-width: 1200px) {
    .noscript-navigation { display: none; }
}
@media (min-width: 1200px) {
    .container { max-width: 1240px; }
    #mainNavbar .navbar-toggler { display: none !important; }
}
@media (max-width: 767.98px) {
    :root { --navbar-height: 68px; --section-padding: 2.75rem; }
    .navbar-brand img { height: 50px; max-width: min(55vw,210px); }
    .home-hero { padding-top: .75rem; }
    .home-hero .carousel-item, .home-hero-slide { min-height: 0; }
    .home-hero-slide { grid-template-columns: 1fr; gap: 1.25rem; padding: 1.5rem 1rem 1rem; }
    .home-hero-copy h2 { font-size: clamp(1.9rem,8vw,2.6rem); }
    .home-hero-media { min-height: 180px; }
    .home-hero-media img { height: 210px; }
    .home-hero-controls { padding-bottom: .8rem; }
    .brand-strip { grid-template-columns: repeat(3,minmax(0,1fr)); gap: .8rem .5rem; }
    .brand-logo { min-height: 54px; }
    .brand-logo img { max-width: 110px; max-height: 34px; }
    .product-card .card-img-top, .product-image { height: 175px !important; }
    .footer-bottom .row > div { text-align: center; }
    .footer-bottom .row > div + div { margin-top: .45rem; }
    .error-page { min-height: 52vh; }
    .mission-vision .col-md-6 + .col-md-6 .mission-vision-item { border-top: 1px solid var(--border-color); border-left: 0; }
    .catalog-quote-hint { align-items: flex-start; flex-direction: column; }
}
@media (max-width: 380px) {
    .navbar-brand img { max-width: 48vw; }
    .whatsapp-float { width: 48px; height: 48px; }
    .whatsapp-text { min-height: 44px; padding: .58rem .75rem; font-size: .86rem; }
}
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
@media print {
    .navbar, .whatsapp-float-container, .footer-social { display: none !important; }
    body { padding-top: 0; }
}
