/* Generated by tools/build-dfc-home-css.py. Preserve source order. */

/* Source: dfc-fonts.css */
/* Poppins v24, unchanged Google Fonts WOFF2 files.
 * Copyright 2020 The Poppins Project Authors. SIL Open Font License 1.1.
 * License: ../fonts/poppins/OFL.txt. */

/* latin-ext */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/poppins/poppins-v24-latin-ext-400.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* latin */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/poppins/poppins-v24-latin-400.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* latin-ext */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/poppins/poppins-v24-latin-ext-600.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* latin */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/poppins/poppins-v24-latin-600.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


/* Source: dfc-home-icons.css */
/* Home-only additions after the original CCC @font-face rules. */
/* Original faces remain available for every Unicode codepoint outside these exact ranges. */
@font-face{font-family:'FontAwesome';font-style:normal;font-weight:400;font-display:block;src:url('/themes/AngarTheme/assets/css/fonts/dfc-home-fontawesome.woff2') format('woff2');unicode-range:U+F005,U+F006,U+F015,U+F095,U+F09A,U+F09E,U+F0D2,U+F0D5,U+F0E0,U+F0E1,U+F104,U+F105,U+F106,U+F123,U+F167,U+F16D,U+F194,U+F232}


/* Source: dfc-design-system.css */
/* DFC storefront: shared visual language, loaded after legacy theme settings. */
:root {
  --at-primary: #1674bd;
  --at-primary-dark: #1268ad;
  --at-accent: #e7192a;
  --at-text: #202b38;
  --at-muted: #637184;
  --at-border: #dfe6ed;
  --at-surface: #fff;
  --at-surface-soft: #f5f7fa;
  --at-radius: 12px;
  --at-radius-sm: 8px;
  --at-shadow-sm: 0 3px 14px rgba(26, 43, 63, .045);
  --at-shadow: 0 10px 28px rgba(26, 43, 63, .09);
}
/* A transform on body makes fixed menus, dialogs and purchase controls scroll away. */
body { color: var(--at-text); line-height: 1.55; animation: none; transform: none; }
body .btn { border-radius: 8px; font-weight: 600; text-transform: none; }
body .btn-primary { background: var(--at-accent); border-color: var(--at-accent); box-shadow: none; }
body .btn-primary:hover { background: #c91423; border-color: #c91423; box-shadow: none; }
body .btn-secondary { color: #314459; background: #f3f6f9; border: 1px solid #d8e1e9; box-shadow: none; }
body .btn-secondary:hover { color: #1268ad; background: #eaf2f8; }
body .btn.disabled, body .btn:disabled { cursor: not-allowed; }
body .form-control { border-radius: 8px; border-color: #cbd5e0; }
body .page-header h1, body .page-header .h1 { margin: 0; font-size: clamp(24px, 2.4vw, 32px); line-height: 1.25; font-weight: 600; text-transform: none; letter-spacing: -.025em; }
body .page-header { margin-bottom: 24px; }
body #wrapper { padding-top: 22px; }
body #content-wrapper { min-width: 0; }

/* Compact masthead and legible navigation. */
body #header nav.header-nav { min-height: 34px; background: #f7f9fb !important; border-bottom: 1px solid #e7ecf1; }
body #header nav.header-nav #contact-link,
body #header nav.header-nav #contact-link a,
body #header nav.header-nav #contact-link span.shop-phone strong a,
body #header nav.header-nav .user-info,
body #header nav.header-nav .user-info a { color: #46576a !important; font-size: 11px; }
body #header nav.header-nav #contact-link a:hover,
body #header nav.header-nav .user-info a:hover { color: #1268ad !important; }
body #header nav.header-nav #contact-link span.shop-phone,
body #header nav.header-nav #_desktop_user_info { min-height: 34px; border: 0; }
body #header .header-top, body #header .header-top:hover { padding: 14px 0; background: #fff !important; box-shadow: none; }
body #header .header-top #_desktop_logo .logo-frame { min-height: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; transform: none; }
body #header .header-top #_desktop_logo .logo,
body #header .header-top #_desktop_logo .logo:hover { width: 142px; height: auto; max-height: 74px; object-fit: contain; transform: none; filter: none; }
body #header .header-top #search_widget form input[type="text"] { height: 48px; padding: 11px 58px 11px 16px; border: 1px solid #ccd8e3; border-radius: 9px; background: #f8fafc; font-size: 14px; }
body #header .header-top #search_widget form input[type="text"]:focus { border-color: #1674bd; background: #fff; box-shadow: 0 0 0 3px rgba(22,116,189,.1); }
body #header .header-top #search_widget form button[type="submit"] { top: 4px; right: 4px; width: 40px; height: 40px; border-radius: 7px; background: #e7192a; }
body #header .header-top #_desktop_cart .blockcart .header { border: 1px solid #dce5ed; border-radius: 9px; background: #fff; box-shadow: none; }
body #header .header-top #_desktop_cart .blockcart .header a.cart_link,
body #header .header-top #_desktop_cart .cart_title,
body #header .header-top #_desktop_cart .cart_text { color: #314459; }
body #header .header-top #_desktop_cart .cart_total { color: #e7192a; }
body #header #_desktop_top_menu { border-top: 1px solid #edf1f5; border-bottom: 1px solid #dfe6ed; box-shadow: 0 3px 8px rgba(26,43,63,.025); }
body #header #_desktop_top_menu #top-menu { display: flex; flex-wrap: nowrap; max-width: 1200px; margin: 0 auto; padding: 0; }
body #header #_desktop_top_menu #top-menu > li { display: block; flex: 1 1 auto; float: none; width: auto; min-width: 0; margin: 0; padding: 0; border: 0; }
body #header #_desktop_top_menu #top-menu > li.home_icon { flex: 0 0 90px; }
body #header #_desktop_top_menu #top-menu > li > a { display: flex; align-items: center; justify-content: center; height: 49px; min-height: 49px; padding: 9px 14px; border: 0; color: #314459; background: #fff; font-size: 13px; font-weight: 600; line-height: 1.35; text-align: center; text-transform: none; white-space: normal; }
body #header #_desktop_top_menu #top-menu > li > a:hover,
body #header #_desktop_top_menu #top-menu > li.current > a { color: #1268ad; background: #f0f6fb; box-shadow: inset 0 -2px #1674bd; }
body #header #_desktop_top_menu #top-menu > li.home_icon > a { gap: 6px; }
body #header #_desktop_top_menu #top-menu::after { display: none; }
body #header .popover.sub-menu { border: 1px solid #e1e7ee; border-radius: 0 0 12px 12px; box-shadow: var(--at-shadow); }

/* Product/category pages keep identification available without displacing content. */
body #header .dfc-context-finder { max-width: 1170px; width: calc(100% - 30px); margin: 16px auto 0; border: 1px solid #dfe6ed; border-radius: 10px; background: #f7f9fb; }
body #header .dfc-context-finder > summary { display: flex; align-items: center; gap: 10px; min-height: 48px; padding: 12px 18px; color: #354c62; font-size: 13px; font-weight: 600; list-style: none; cursor: pointer; }
body #header .dfc-context-finder > summary::-webkit-details-marker { display: none; }
body #header .dfc-context-finder > summary::after { margin-left: auto; content: "+"; color: #1268ad; font-size: 22px; line-height: 1; }
body #header .dfc-context-finder[open] > summary::after { content: "−"; }
body #header .dfc-context-finder[open] > summary { border-bottom: 1px solid #e1e7ee; }
body #header .dfc-context-finder > div { box-sizing: border-box; float: none; width: 100%; max-width: 100%; margin: 0 !important; padding: 12px !important; }
body #header .dfc-context-finder .row.p-1 { display: flex; flex-wrap: wrap; margin: 0; }
body #header .dfc-context-finder .row.p-1 > .col-md-6.p-1 { margin: 0; padding: 15px !important; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
body #header .dfc-context-finder .facet-label { font-size: 13px; text-transform: none !important; }
body #header .dfc-context-finder .facet-label::before { display: none; }
body #header .dfc-context-finder .align-center.mb-1 { min-height: 0; font-size: 12px; }

/* Breadcrumbs and supporting navigation. */
body #wrapper .breadcrumb { padding: 0; margin-bottom: 22px; border: 0; background: transparent; box-shadow: none; font-size: 11px; line-height: 1.6; }
body #wrapper .breadcrumb ol { display: flex; flex-wrap: wrap; gap: 5px 0; margin: 0; padding: 0; border: 0; }
body #wrapper .breadcrumb li { position: static; float: none; padding: 0; border: 0; background: transparent; }
body #wrapper .breadcrumb li::before, body #wrapper .breadcrumb li::after,
body #wrapper .breadcrumb li a::before, body #wrapper .breadcrumb li a::after { display: none; }
body #wrapper .breadcrumb li:not(:last-child)::after { display: inline; content: "/"; position: static; margin: 0 10px; border: 0; color: #a6b1be; }
body #wrapper .breadcrumb a, body #wrapper .breadcrumb li:last-child { padding: 0; border: 0; color: #627287; font-weight: 400; background: none; }
body #wrapper .breadcrumb a:hover { color: #1268ad; }
body #left-column .block-categories,
body #left-column .block,
body #right-column .block { border-color: #e1e7ee; border-radius: 10px; box-shadow: none; }
body #left-column .block .h6,
body #left-column .block h4 { font-size: 13px; text-transform: none; }

/* Footer: readable link columns, quiet dividers and visible contact routes. */
body #footer .footer-container { padding-top: 34px; margin-top: 42px; border-top: 1px solid #dfe6ed; background: #f5f7fa !important; color: #546477; }
body #footer .footer-container > .container { max-width: 1200px; }
body #footer .footer-container > .container > .row:first-child { max-width: none; padding-bottom: 25px; border-bottom: 1px solid #dfe6ed; }
body #footer .footer-container > .container > .row:first-child > .links.wrapper { padding: 0; border: 0; background: transparent; box-shadow: none; }
body #footer .footer-container > .container > .row:first-child > .links.wrapper .h3 { min-height: 0; margin: 0 0 15px; padding: 0; border: 0; color: #24354a; font-size: 14px; font-weight: 600; line-height: 1.4; text-transform: none; }
body #footer .footer-container .h3::after { display: none; }
body #footer .footer-container > .container > .row:first-child > .links.wrapper ul > li { margin-bottom: 9px; font-size: 12px; line-height: 1.6; }
body #footer .footer-container .links a { color: #58697d; font-size: 12px; }
body #footer .footer-container .links a:hover { color: #1268ad; text-decoration: underline; }
body #footer .footer-quick-contact { max-width: none; min-height: 80px; margin: 24px 0 0; padding: 18px 22px; border: 1px solid #dfe6ed; border-radius: 12px; background: #fff; box-shadow: none; }
body #footer .footer-quick-contact strong { color: #23364b; font-size: 16px; }
body #footer .footer-quick-contact span { color: #637184; font-size: 12px; }
body #footer .footer-quick-contact__actions a { min-height: 42px; padding: 10px 12px; border: 1px solid #dce5ed; border-radius: 7px; color: #1268ad; background: #fff; font-size: 12px; }
body #footer .social_footer { margin: 24px 0 0; padding-top: 0; border: 0; }
body #footer .block_newsletter { padding: 0; border: 0; background: transparent; box-shadow: none; }
body #footer .block_newsletter > .row { margin: 0; }
body #footer .block_newsletter #block-newsletter-label { color: #314459; font-size: 14px; font-weight: 600; }
body #footer .footer-container .bottom-footer { margin-top: 28px; padding: 18px 15px; border-top: 1px solid #dfe6ed; color: #66768a; background: #f5f7fa !important; font-size: 11px; }

/* Content pages, store information, brand/supplier indexes. */
body#cms #content.page-content,
body#sitemap #content.page-content,
body#stores #content.page-content { padding: 28px; border: 1px solid #dfe6ed; border-radius: 12px; background: #fff; box-shadow: none; }
body#cms #content.page-content { max-width: 1000px; margin: 0 auto; color: #435368; font-size: 14px; line-height: 1.8; overflow-wrap: anywhere; }
body#cms #content.page-content h2,
body#cms #content.page-content h3 { margin-top: 26px; margin-bottom: 12px; color: #263b51; font-weight: 600; line-height: 1.35; text-transform: none; }
body#cms #content.page-content h2 { font-size: 23px; }
body#cms #content.page-content h3 { font-size: 18px; }
body#cms #content.page-content a { color: #1268ad; text-decoration: underline; }
body#cms #content.page-content img { max-width: 100%; height: auto; }
body#cms #content.page-content table { display: block; max-width: 100%; overflow-x: auto; }
body#sitemap .sitemap > div { margin-bottom: 22px; }
body#sitemap .sitemap h2 { color: #263b51; font-size: 18px; text-transform: none; }
body#sitemap .sitemap a { display: inline-block; padding: 5px 0; color: #526579; font-size: 13px; }
body#stores .store-item { padding: 22px; border: 1px solid #dfe6ed; border-radius: 12px; box-shadow: none; }
body#manufacturer #brands .brand,
body#supplier #suppliers .supplier { padding: 20px; margin-bottom: 16px; border: 1px solid #dfe6ed; border-radius: 12px; background: #fff; }
body#manufacturer #brands .brand img,
body#supplier #suppliers .supplier img { object-fit: contain; max-width: 100%; }

/* Contact form uses the original delivery and consent flow. */
body#contact .contact-form { padding: 26px; border: 1px solid #dfe6ed; border-radius: 12px; background: #fff; box-shadow: none; }
body#contact .contact-form .form-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
body#contact .contact-form .form-group.row { display: block; min-width: 0; width: 100%; margin: 0; }
body#contact .contact-form .dfc-contact-wide { grid-column: 1 / -1; }
body#contact .contact-form .form-group.row > [class*="col-"] { float: none; width: 100%; max-width: none; margin: 0; padding: 0; }
body#contact .contact-form .form-control-label { display: block; margin-bottom: 7px !important; padding: 0; color: #354b60; font-size: 12px; font-weight: 600; text-align: left; }
body#contact .contact-form h3 { margin: 0; color: #263b51; font-size: 21px; font-weight: 600; text-transform: none; }
body#contact .contact-form .form-control { min-height: 46px; padding: 10px 12px; font-size: 14px; }
body#contact .contact-form textarea.form-control { min-height: 160px; resize: vertical; }
body#contact .contact-form .form-control-comment { display: block; margin-top: 5px !important; font-size: 11px; }
body#contact .contact-form .form-footer { margin: 22px 0 0; padding: 18px 0 0; border-top: 1px solid #e5eaf0; }
body#contact .contact-form .form-footer .btn { min-width: 150px; min-height: 46px; }
body#contact .contact-rich { padding: 22px; border: 1px solid #dfe6ed; border-radius: 12px; background: #f7f9fb; box-shadow: none; }
body#contact .contact-rich h4 { margin: 0 0 20px; color: #263b51; font-size: 17px; text-transform: none; }
body#contact .contact-rich .block { color: #526579; font-size: 13px; overflow-wrap: anywhere; }
body#contact .contact-rich .block .icon { color: #1674bd; }
body#contact .contact-rich a { color: #1268ad; }

/* Shared overlays and feedback keep the same spacing and controls. */
body #blockcart-modal .modal-content { border: 1px solid #dfe6ed; border-radius: 14px; overflow: hidden; box-shadow: var(--at-shadow); }
body #blockcart-modal .modal-header { padding: 20px 24px; color: #23364b; background: #f5f8fb; border-bottom: 1px solid #dfe6ed; }
body #blockcart-modal .modal-title { color: #23364b; font-size: 18px; font-weight: 600; text-transform: none; }
body #blockcart-modal .modal-header .close { color: #23364b; opacity: .75; }
body #blockcart-modal .cart-content-btn .btn { min-height: 44px; }
body .alert { border-radius: 9px; line-height: 1.6; }
body #cookie-banner .cookie-container { padding: 16px; }
body #cookie-banner .cookie-buttons > * { min-height: 44px; border-radius: 7px; }

@media (min-width: 768px) {
  body #header .header-top > .container:first-child > .row { display: grid; grid-template-columns: 165px minmax(240px,1fr) 225px; gap: 28px; align-items: center; margin: 0; }
  body #header .header-top > .container:first-child > .row > .clearfix { display: none; }
  body #header .header-top #_desktop_logo { grid-area: 1 / 1; float: none; width: auto; min-height: 0; padding: 0; margin: 0; }
  body #header .header-top #_desktop_search_widget { grid-area: 1 / 2; float: none; width: auto; max-width: none; margin: 0; padding: 0; }
  body #header .header-top #_desktop_cart { grid-area: 1 / 3; float: none; width: auto; margin: 0; padding: 0; }
  body #footer .footer-container .links.wrapper ul.collapse { display: block !important; height: auto !important; }
}
@media (min-width: 768px) and (max-width: 991px) {
  body #header .header-top > .container:first-child > .row { grid-template-columns: 125px minmax(200px,1fr) 180px; gap: 16px; }
  body #header .header-top #_desktop_logo .logo { width: 120px; }
  body #header #_desktop_top_menu #top-menu > li > a { padding: 8px; font-size: 11px; }
  body #header #_desktop_top_menu #top-menu > li.home_icon { flex-basis: 64px; }
}
@media (max-width: 767px) {
  body #header nav.header-nav { min-height: 28px; }
  body #header nav.header-nav #contact-link span.shop-phone { min-height: 28px; }
  body #header .header-top, body #header .header-top:hover { padding: 7px 0 0 !important; }
  body #header .header-top #_desktop_logo { display: flex; justify-content: center; min-height: 0; padding: 0 0 7px; margin: 0; }
  body #header .header-top #_desktop_logo .logo,
  body #header .header-top #_desktop_logo .logo:hover { width: 112px; height: auto; max-height: 58px; }
  body #header div#rwd_menu { border-top: 1px solid #e9edf2; border-bottom: 1px solid #dfe6ed; background: #fff; }
  body #header div#rwd_menu .rwd_menu_item,
  body #header div#rwd_menu .rwd_menu_item:first-child { height: 48px; min-height: 48px; border: 0; border-right: 1px solid #edf1f5; background: #fff; box-shadow: none; }
  body #header div#rwd_menu .rwd_menu_item:last-child { border-right: 0; }
  body #header #mobile_top_menu_wrapper2 .top-menu li a { min-height: 44px; padding: 13px 16px; color: #314459; font-size: 14px; text-transform: none; }
  body #header .rwd_menu_open { margin-top: 0; border: 0; border-bottom: 1px solid #dfe6ed; border-radius: 0 0 10px 10px; background: #f8fafc; }
  body #header .dfc-context-finder { width: calc(100% - 24px); margin-top: 12px; }
  body #header .dfc-context-finder > summary { min-height: 46px; padding: 10px 13px; font-size: 12px; }
  body #header .dfc-context-finder .row.p-1 > .col-md-6.p-1 { flex-basis: 100%; width: 100%; padding: 10px 5px !important; }
  body #wrapper { padding-top: 18px; }
  body #wrapper .breadcrumb { margin-bottom: 18px; font-size: 10px; }
  body #wrapper .breadcrumb li:last-child { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
  body .page-header { margin-bottom: 20px; }
  body #footer .footer-container { margin-top: 30px; padding-top: 20px; }
  body #footer .footer-container > .container > .row:first-child { padding-bottom: 10px; }
  body #footer .footer-container > .container > .row:first-child > .links.wrapper { margin: 0; border-bottom: 1px solid #dfe6ed; }
  body #footer .footer-container > .container > .row:first-child > .links.wrapper .title { display: flex; align-items: center; min-height: 52px; margin: 0; padding: 14px 0; border: 0; background: transparent; }
  body #footer .footer-container > .container > .row:first-child > .links.wrapper .title .h3 { margin: 0; font-size: 14px; }
  body #footer .footer-container > .container > .row:first-child > .links.wrapper .title .pull-xs-right { margin-left: auto; }
  body #footer .footer-container .links ul.collapse { padding-bottom: 10px; }
  body #footer .footer-container .links a { display: inline-block; padding: 5px 0; font-size: 13px; }
  body #footer .footer-quick-contact { display: block; margin-top: 20px; padding: 17px; }
  body #footer .footer-quick-contact__actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
  body #footer .footer-quick-contact__actions a { flex: 1 1 auto; justify-content: center; font-size: 12px; }
  body #footer .footer-container .bottom-footer { margin-top: 20px; font-size: 10px; }
  body #footer .block_newsletter input[type="email"] { font-size: 16px; }
  body#cms #content.page-content, body#sitemap #content.page-content, body#stores #content.page-content { padding: 20px 16px; }
  body#cms #content.page-content { font-size: 14px; }
  body#contact .contact-form, body#contact .contact-rich { padding: 20px 16px; }
  body#contact .contact-form .form-fields { grid-template-columns: minmax(0,1fr); gap: 18px; }
  body#contact .contact-form .form-control { font-size: 16px; }
  body#contact .contact-form .form-footer .btn { width: 100%; }
  body #cookie-banner .cookie-container { padding: 13px; }
  body #cookie-banner .cookie-content { font-size: 11px; line-height: 1.55; }
}
@media (prefers-reduced-motion: reduce) {
  body .btn, body #header a, body #footer a { transition: none; transform: none; }
}

/* Visible names keep the mobile navigation understandable at a glance. */
.dfc-nav-label { display: none; }
@media (max-width: 767px) {
  body #header div#rwd_menu > .container { display: flex; padding: 0; }
  body #header div#rwd_menu .rwd_menu_item,
  body #header div#rwd_menu .rwd_menu_item:first-child {
    display: flex; flex: 1 1 20%; flex-direction: column; align-items: center;
    justify-content: center; gap: 4px; width: 20%; min-width: 0;
    height: 56px; min-height: 56px; padding: 4px 0; color: #314459; line-height: 1;
  }
  body #header div#rwd_menu .rwd_menu_item > i { height: 22px; font-size: 22px; line-height: 22px; }
  body #header div#rwd_menu .dfc-nav-label { display: block; font-size: 11px; font-weight: 600; line-height: 14px; }
  body #header div#rwd_menu .rwd_menu_item[aria-expanded="true"] { color: #1268ad; background: #eef5fb; box-shadow: inset 0 -3px #1268ad; }
  body #header div#rwd_menu button:focus-visible,
  body #header div#rwd_menu a:focus-visible { outline: 3px solid #1268ad; outline-offset: -3px; }
  body #header div#rwd_menu #_mobile_cart { position: relative; padding: 0; }
  body #header div#rwd_menu #_mobile_cart .cart_top,
  body #header div#rwd_menu #_mobile_cart .blockcart,
  body #header div#rwd_menu #_mobile_cart .header,
  body #header div#rwd_menu #_mobile_cart .cart_index_title { width: 100%; }
  body #header div#rwd_menu #_mobile_cart a.cart_link {
    display: flex; flex-direction: column; align-items: center; justify-content: center;
    gap: 4px; width: 100%; height: 56px; padding: 4px 0; line-height: 1;
  }
  body #header div#rwd_menu #_mobile_cart .blockcart .header a.cart_link > i { margin: 0; font-size: 22px; line-height: 22px; }
  body #header div#rwd_menu #_mobile_cart span.cart-products-count { position: absolute; top: 3px; right: auto; left: calc(50% + 7px); margin: 0; }
}


/* Source: refresh-listing.css */
/* Product grids, category navigation and faceted filters. */
.products.row {
  row-gap: 18px;
}

.products .product-miniature .thumbnail-container {
  height: 100%;
  border: 1px solid var(--at-border);
  border-radius: var(--at-radius);
  background: var(--at-surface);
  box-shadow: var(--at-shadow-sm);
  overflow: hidden;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.products .product-miniature .product-image-container {
  background: var(--at-surface);
}

.products .product-miniature .product-description {
  padding-right: 14px;
  padding-left: 14px;
}

.products .product-miniature .product-title,
.products .product-miniature .product-title a {
  color: var(--at-text);
  font-weight: 600;
  line-height: 1.42;
  text-transform: none;
}

.products .product-miniature .product-price-and-shipping {
  color: var(--at-primary-dark);
  font-variant-numeric: tabular-nums;
}

.products .product-miniature .button-container {
  display: block !important;
  position: static;
  min-height: 44px;
}

.products .product-miniature .button-container .add-to-cart {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 44px;
  visibility: visible;
  opacity: 1;
}

.products .product-miniature .regular-price {
  color: var(--at-muted);
}

.products .product-miniature .product-flags .product-flag,
.products .product-miniature .product-flag {
  border-radius: 4px;
  font-weight: 600;
}

.products-sort-order .select-title,
.pagination .page-list,
#search_filters,
#search_filters_brands,
#search_filters_suppliers {
  border-color: var(--at-border);
  border-radius: var(--at-radius-sm);
}

#search_filters .facet .facet-title {
  color: var(--at-text);
  font-weight: 600;
  text-transform: none;
}

#search_filters .facet .facet-label a {
  color: #394454;
  line-height: 1.4;
}

.active_filters {
  border-radius: var(--at-radius-sm);
  background: var(--at-surface-soft);
}

.pagination a,
.pagination .current a {
  min-width: 40px;
  min-height: 40px;
  border-radius: var(--at-radius-sm);
}

#subcategories .subcategory-container {
  border-color: var(--at-border);
  border-radius: var(--at-radius-sm);
  overflow: hidden;
}

@media (hover: hover) and (min-width: 768px) {
  .products .product-miniature .thumbnail-container:hover {
    border-color: #c9d3de;
    box-shadow: var(--at-shadow);
    transform: translateY(-3px);
  }
}

@media (max-width: 767px) {
  .products.row {
    row-gap: 12px;
  }

  .products .product-miniature .product-description {
    padding-right: 10px;
    padding-left: 10px;
  }

  #search_filter_controls .btn,
  #search_filters_wrapper .btn {
    min-height: 44px;
  }
}

/* DFC cards: use catalog identification and keep purchase information together. */
#content-wrapper .products .product-miniature.dfc-product-card {
  min-width: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  text-align: left;
}

/* Angar's border mode also frames the article; only the inner card needs it. */
body.pl_border_type1 div#content-wrapper .products article.product-miniature.dfc-product-card,
body.pl_border_type1 div#content-wrapper .products article.product-miniature.dfc-product-card:hover {
  border: 0;
  background: transparent;
  box-shadow: none;
}

body#index.pl_border_type1 div#content-wrapper .products article.product-miniature.dfc-product-card {
  margin: 0;
  padding: 0;
}

#content-wrapper .products .dfc-product-card .thumbnail-container {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 0;
}

#content-wrapper .products .dfc-product-card .thumbnail-container > .clearfix {
  display: none;
}

#content-wrapper .products .dfc-product-card .product-left {
  flex: 0 0 auto;
  width: 100%;
  border: 0;
  padding: 10px 10px 0;
}

#content-wrapper .products .dfc-product-card .product-image-container {
  margin-bottom: 0;
  border: 0;
  background: #fff;
}

#content-wrapper .products .dfc-product-card .product-right {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-width: 0;
  width: 100%;
  padding: 14px;
  text-align: left;
}

#content-wrapper .products .dfc-product-card .product-description {
  padding: 0;
}

#content-wrapper .products .product-miniature.dfc-product-card .product-title {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  height: auto;
  min-height: 4.35em;
  margin: 0 0 10px;
  overflow: hidden;
  font-size: 14px;
  line-height: 1.45;
}

#content-wrapper .products .product-miniature.dfc-product-card .product-title a {
  font-size: inherit;
  line-height: inherit;
  font-weight: 650;
  text-transform: none;
  overflow-wrap: anywhere;
}

#content-wrapper .products .dfc-product-card .dfc-card-meta {
  min-height: 39px;
  margin-bottom: 12px;
  color: var(--at-muted);
  font-size: 11px;
  line-height: 1.55;
}

#content-wrapper .products .dfc-product-card .dfc-card-meta p {
  display: block;
  margin: 0;
  font-size: inherit;
  line-height: inherit;
  text-transform: none;
  overflow-wrap: anywhere;
}

#content-wrapper .products .dfc-product-card .dfc-card-reference strong {
  color: #394454;
  font-weight: 500;
  font-variant-numeric: tabular-nums;
}

#content-wrapper .products .dfc-product-card .dfc-card-brand strong {
  color: #394454;
  font-weight: 600;
}

#content-wrapper .products .dfc-product-card .product-desc {
  display: none !important;
}

#content-wrapper .products .dfc-product-card .pl-reviews:empty {
  display: none;
}

#content-wrapper .products .dfc-product-card .product-bottom {
  margin-top: auto;
  padding-top: 12px;
  border-top: 1px solid var(--at-border);
}

#content-wrapper .products .dfc-product-card .product-price-and-shipping {
  padding: 0 0 5px;
  text-align: left;
}

#content-wrapper .products .dfc-product-card .product-price-and-shipping .price {
  color: var(--at-text);
  font-size: 22px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -.025em;
}

#content-wrapper .products .dfc-product-card .product-price-and-shipping .regular-price,
#content-wrapper .products .dfc-product-card .product-price-and-shipping .tax_label {
  font-size: 11px;
  color: var(--at-muted);
}

#content-wrapper .products .dfc-product-card .dfc-card-availability {
  min-height: 36px;
  margin-bottom: 9px;
  color: #405166;
}

#content-wrapper .products .dfc-product-card .dfc-card-availability .pl-availability {
  display: flex;
  align-items: flex-start;
  gap: 5px;
  margin: 0;
  font-size: 11px;
  font-weight: 500;
  line-height: 1.5;
}

#content-wrapper .products .dfc-product-card .dfc-card-availability .material-icons {
  flex: 0 0 16px;
  width: 16px;
  height: 17px;
  margin: 0;
  color: inherit;
  font-size: 16px;
  line-height: 17px;
}

#content-wrapper .products .dfc-product-card .dfc-card-availability--in_stock {
  color: #237045;
}

#content-wrapper .products .dfc-product-card .dfc-card-availability--available,
#content-wrapper .products .dfc-product-card .dfc-card-availability--last_remaining_items {
  color: #886018;
}

#content-wrapper .products .dfc-product-card .button-container,
#content-wrapper .products .dfc-product-card .button-container form.add-to-cart-or-refresh {
  width: 100%;
}

#content-wrapper .products .dfc-product-card .button-container .add-to-cart,
#content-wrapper .products .dfc-product-card .button-container .lnk_view {
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: 100%;
  min-height: 44px;
  padding: 10px 8px;
  margin: 0;
  font-size: 12px;
  line-height: 1.3;
}

#content-wrapper .products .dfc-product-card .button-container .add-to-cart i {
  position: static;
  width: auto;
  height: auto;
  font-size: 17px;
  line-height: 1;
}

#content-wrapper .products .dfc-product-card .button-container .add-to-cart:disabled {
  opacity: .5;
  cursor: not-allowed;
}

#content-wrapper .products .dfc-product-card a:focus-visible,
#content-wrapper .products .dfc-product-card button:focus-visible {
  outline: 2px solid var(--at-primary);
  outline-offset: 3px;
}

/* Option controls also appear inside quickview opened from the catalog. */
body .product-variants > fieldset.product-variants-item {
  min-width: 0;
  margin: 0 0 18px;
  padding: 0;
  border: 0;
}
body .product-variants > .product-variants-item > legend.control-label {
  float: none;
  width: 100%;
  margin: 0 0 8px;
  padding: 0;
  color: #354b60;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.5;
}
body .product-variants > .product-variants-item .form-control-select {
  width: 100%;
  max-width: 100%;
  min-height: 44px;
  border: 1px solid #cfd9e4;
  border-radius: 8px;
  background-color: #fff;
  color: #243347;
  font-size: 16px;
}
body .product-variants > .product-variants-item > ul {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  width: 100%;
  margin: 0;
}
body .product-variants > .product-variants-item > ul > li {
  float: none !important;
  max-width: 100%;
  margin: 0;
}
body .product-variants > .product-variants-item > ul > li > label {
  position: relative;
  display: block;
  max-width: 100%;
  margin: 0;
}
body .product-variants .input-container .radio-label {
  display: flex;
  align-items: center;
  min-height: 44px;
  padding: 8px 12px;
  border: 1px solid #cfd9e4;
  border-radius: 8px;
  box-shadow: none;
  color: #354b60;
  font-size: 13px;
  line-height: 1.45;
  white-space: normal;
  overflow-wrap: anywhere;
}
/* Match the full option path: the legacy ul/li selector otherwise restores
   30px swatches. A block swatch also removes the inline baseline gap in its label. */
body .product-variants > .product-variants-item > ul > li.input-container > label > .color,
body .product-variants > .product-variants-item > ul > li.input-container > label > .input-color {
  box-sizing: border-box;
  width: 44px !important;
  height: 44px !important;
  min-width: 44px;
  min-height: 44px;
  margin: 0;
}
body .product-variants > .product-variants-item > ul > li.input-container > label > .color {
  display: block;
  border-radius: 8px;
}
body .product-variants > .product-variants-item > ul > li.input-container > label > .input-color {
  top: 0;
  left: 0;
}
body .product-variants .input-radio:checked + .radio-label { border-color: #1674bd; color: #1268ad; background: #edf5fb; }
body .product-variants .input-color:focus-visible + .color,
body .product-variants .input-radio:focus-visible + .radio-label,
body .product-variants .form-control-select:focus-visible,
body .product-variants .dfc-volume-discounts:focus-visible { outline: 2px solid #1674bd; outline-offset: 3px; }
body .product-variants.allow_oosp_0 > .product-variants-item li.outofstock .color::before,
body .product-variants.allow_oosp_0 > .product-variants-item li.outofstock .color::after { left: 20px; height: 42px; }
body .product-variants.allow_oosp_0 > .product-variants-item li.outofstock .radio-label::before { top: 50%; }
body .product-variants .dfc-volume-discounts { max-width: 100%; overflow-x: auto; border: 1px solid #dfe6ed; border-radius: 8px; }
body .product-variants .table-product-discounts { width: 100%; margin: 0; border-collapse: collapse; color: #354b60; font-size: 12px; }
body .product-variants .table-product-discounts th,
body .product-variants .table-product-discounts td { padding: 10px; border: 0; border-bottom: 1px solid #e5ebf1; text-align: left; line-height: 1.5; }
body .product-variants .table-product-discounts th { background: #f5f8fb; font-weight: 600; }
body .product-variants .table-product-discounts tr:last-child td { border-bottom: 0; }

/* Quickview shares the native form. Override inherited product-page controls
   too, while keeping the modal's quantity and purchase button on one baseline. */
:is(body, #product) .quickview .modal-content {
  border-radius: 14px;
}
:is(body, #product) .quickview .modal-body h1.h1 {
  margin-bottom: 14px;
  font-size: clamp(20px, 2vw, 24px);
  line-height: 1.35;
  text-transform: none;
  overflow-wrap: anywhere;
}
:is(body, #product) .quickview .product-available-backorder,
:is(body, #product) .quickview .dfc-availability-message:has(.product-available-backorder) {
  color: #886018;
}
:is(body, #product) .quickview .product-add-to-cart .product-quantity {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 8px 12px;
  width: 100%;
  margin: 12px 0 0;
}
:is(body, #product) .quickview .product-quantity > .control-label {
  flex: 0 0 100%;
  width: 100%;
  margin: 0;
  padding: 0;
  font-size: 13px;
  line-height: 1.5;
}
:is(body, #product) .quickview .product-quantity .qty,
:is(body, #product) .quickview .product-quantity .bootstrap-touchspin {
  display: flex;
  float: none;
  flex: 0 0 112px;
  width: 112px;
  height: 46px;
  margin: 0;
}
:is(body, #product) .quickview .product-quantity #quantity_wanted {
  flex: 1 1 auto;
  width: 72px;
  min-width: 0;
  height: 46px;
  min-height: 46px;
  margin: 0;
  padding: 0 8px;
  border: 1px solid var(--at-border, #dfe6ed);
  border-radius: 8px 0 0 8px;
  font-size: 16px;
  text-align: center;
}
:is(body, #product) .quickview .product-quantity .input-group-btn-vertical {
  display: flex;
  flex: 0 0 40px;
  flex-direction: column;
  width: 40px;
  height: 46px;
  margin: 0;
  padding: 0;
}
:is(body, #product) .quickview .product-quantity .input-group-btn-vertical .btn-touchspin {
  display: flex;
  flex: 0 0 23px;
  align-items: center;
  justify-content: center;
  width: 40px;
  min-width: 0;
  height: 23px;
  min-height: 23px;
  margin: 0;
  padding: 0;
  border: 1px solid var(--at-border, #dfe6ed);
  border-left: 0;
  border-radius: 0;
  color: var(--at-text, #202b38);
  background: var(--at-surface-soft, #f8fafc);
  box-shadow: none;
}
:is(body, #product) .quickview .product-quantity .input-group-btn-vertical .btn-touchspin:first-child {
  border-radius: 0 8px 0 0;
}
:is(body, #product) .quickview .product-quantity .input-group-btn-vertical .btn-touchspin:last-child {
  border-top: 0;
  border-radius: 0 0 8px 0;
}
:is(body, #product) .quickview .product-quantity .input-group-btn-vertical .btn-touchspin i {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  font-size: 18px;
  line-height: 1;
}
:is(body, #product) .quickview .product-quantity .input-group-btn-vertical .touchspin-up::before,
:is(body, #product) .quickview .product-quantity .input-group-btn-vertical .touchspin-down::before {
  content: none;
}
:is(body, #product) .quickview .product-quantity .add {
  flex: 1 1 150px;
  width: auto;
  min-width: 0;
  margin: 0;
}
:is(body, #product) .quickview .product-add-to-cart button.btn.add-to-cart {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  height: auto;
  min-height: 46px;
  padding: 11px 14px;
  border-color: var(--at-accent, #e31d27) !important;
  border-radius: 8px;
  color: #fff !important;
  background: var(--at-accent, #e31d27) !important;
  box-shadow: none;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.35;
  white-space: normal;
}
:is(body, #product) .quickview .product-add-to-cart button.btn.add-to-cart:hover {
  border-color: #c11921 !important;
  background: #c11921 !important;
}
:is(body, #product) .quickview .product-add-to-cart button.btn.add-to-cart:disabled {
  border-color: #d7dde5 !important;
  color: #667085 !important;
  background: #e9edf2 !important;
  opacity: 1;
  transform: none;
}
:is(body, #product) .quickview .product-add-to-cart button.btn.add-to-cart i {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  font-size: 20px;
  line-height: 1;
}

/* Preserve the category list switcher with a wider reading column. */
@media (min-width: 768px) {
  div#content-wrapper .product_show_list .products .dfc-product-card .thumbnail-container {
    flex-direction: row;
    align-items: stretch;
  }

  div#content-wrapper .product_show_list .products .dfc-product-card .product-left {
    width: 23%;
    padding: 12px;
    border: 0;
  }

  div#content-wrapper .product_show_list .products .dfc-product-card .product-right {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(175px, 32%);
    gap: 18px;
    width: 77%;
    padding: 18px;
  }

  div#content-wrapper .product_show_list .products .dfc-product-card .product-description,
  div#content-wrapper .product_show_list .products .dfc-product-card .product-bottom {
    float: none;
    width: auto;
    padding: 0;
  }

  div#content-wrapper .product_show_list .products .dfc-product-card .product-title {
    display: block;
    min-height: 0;
    overflow: visible;
  }

  div#content-wrapper .product_show_list .products .dfc-product-card .product-desc {
    display: -webkit-box !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    height: auto;
    overflow: hidden;
    font-size: 12px;
    line-height: 1.5;
  }

  div#content-wrapper .product_show_list .products .dfc-product-card .product-bottom {
    margin: 0;
    padding-left: 18px;
    border-top: 0;
    border-left: 1px solid var(--at-border);
  }
}

@media (max-width: 767px) {
  #content-wrapper .products .dfc-product-card .product-right {
    padding: 12px;
  }

  #content-wrapper .products .dfc-product-card .product-price-and-shipping .price {
    font-size: 20px;
  }

  div#content-wrapper .product_show_list .products .dfc-product-card .product-left,
  div#content-wrapper .product_show_list .products .dfc-product-card .product-right,
  div#content-wrapper .product_show_list .products .dfc-product-card .product-description,
  div#content-wrapper .product_show_list .products .dfc-product-card .product-bottom {
    float: none;
    width: 100%;
  }

  div#content-wrapper .product_show_list .products .dfc-product-card .product-left {
    border: 0;
    padding: 10px 10px 0;
  }

  div#content-wrapper .product_show_list .products .dfc-product-card .product-description {
    padding: 0;
  }

  div#content-wrapper .product_show_list .products .dfc-product-card .product-bottom {
    border-left: 0;
    padding: 12px 0 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  #content-wrapper .products .dfc-product-card .thumbnail-container,
  #content-wrapper .products .dfc-product-card .thumbnail-container:hover {
    transform: none !important;
    transition: none !important;
  }
}

/* A compact category header keeps products and filtering close to the title. */
#content-wrapper #category_desc.dfc-category-header {
  display: flex;
  align-items: center;
  gap: 24px;
  margin: 0 0 20px;
  padding: 24px;
  border: 1px solid var(--at-border);
  border-radius: 12px;
  background: #fff;
  box-shadow: none;
}

#content-wrapper .dfc-category-header > .clearfix {
  display: none;
}

#content-wrapper .dfc-category-header .category-image {
  flex: 0 0 110px;
  float: none;
  width: 110px;
  padding: 0;
}

#content-wrapper .dfc-category-header .category-image img {
  display: block;
  width: 100%;
  height: 110px;
  object-fit: contain;
}

#content-wrapper .dfc-category-header .category-desc {
  flex: 1 1 auto;
  float: none;
  width: auto;
  min-width: 0;
  padding: 0;
}

#content-wrapper .dfc-catalog-eyebrow {
  margin: 0 0 8px;
  color: #6b7788;
  font-size: 10px;
  font-weight: 650;
  letter-spacing: .12em;
  line-height: 1.3;
  text-transform: uppercase;
}

#content-wrapper .dfc-category-header .cat_name {
  margin: 0;
  padding: 0;
  border: 0;
  color: var(--at-text);
  font-size: clamp(23px, 2.5vw, 32px);
  font-weight: 700;
  letter-spacing: -.025em;
  line-height: 1.2;
  text-transform: none;
}

#content-wrapper .dfc-category-details {
  margin-top: 12px;
  color: #526073;
  font-size: 13px;
  line-height: 1.6;
}

#content-wrapper .dfc-category-details > summary {
  width: fit-content;
  min-height: 32px;
  padding: 5px 0;
  color: var(--at-primary-dark);
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
}

#content-wrapper .dfc-category-details[open] > summary {
  margin-bottom: 10px;
}

#content-wrapper .dfc-category-details .cat_desc {
  display: block !important;
  max-width: 80ch;
  padding: 0;
  font-size: 13px;
  line-height: 1.65;
}

#content-wrapper #subcategories {
  margin: 0 0 22px;
}

#content-wrapper #subcategories .subcategory-heading {
  margin: 0 0 14px;
  color: var(--at-text);
  font-size: 18px;
  font-weight: 650;
  line-height: 1.3;
  text-transform: none;
}

#content-wrapper #subcategories .subcategory-container {
  box-shadow: 0 2px 4px rgba(16, 24, 40, .025);
}

#content-wrapper #subcategories .subcategory-image {
  background: #fff;
}

#content-wrapper #subcategories .subcategory-image > a {
  height: 112px;
}

#content-wrapper #subcategories .subcategory-desc {
  min-height: 62px;
  padding: 12px;
  background: #f8fafc;
}

#content-wrapper #subcategories ul li h5 .subcategory-name {
  font-size: 12px;
  font-weight: 600;
}

/* Existing faceted-search controls retain their module events and visibility. */
#search_filters_wrapper #search_filters {
  padding: 18px;
  border: 1px solid var(--at-border);
  border-radius: 12px;
  background: #fff;
  box-shadow: none;
}

#search_filters_wrapper #search_filters > .h6,
#search_filters_wrapper #search_filters .facet .facet-title {
  color: var(--at-text);
  font-size: 13px;
  font-weight: 650;
  line-height: 1.4;
}

#search_filters_wrapper #search_filters .facet {
  padding-top: 14px;
  margin-top: 14px;
  border-top: 1px solid var(--at-border);
}

#search_filters_wrapper #search_filters .facet .facet-label a {
  display: inline-block;
  padding-top: 5px;
  padding-bottom: 5px;
  font-size: 12px;
}

#content-wrapper #js-product-list-top.products-selection {
  min-height: 68px;
  margin: 0 0 18px;
  padding: 12px 112px 12px 16px;
  border: 1px solid var(--at-border);
  border-radius: 10px;
  background: #fff;
  box-shadow: none;
}

#content-wrapper #js-product-list-top .total-products {
  min-height: 42px;
  padding-left: 0;
  font-size: 12px;
  font-weight: 500;
}

#content-wrapper #js-product-list-top .total-products p {
  margin: 0;
}

#content-wrapper #js-product-list-top .sort-by-row {
  display: flex;
  align-items: center;
}

#content-wrapper #js-product-list-top .sort-by {
  padding-right: 10px;
  font-size: 12px;
}

#content-wrapper #js-product-list-top .products-sort-order .select-title {
  min-height: 42px;
  margin: 0;
  padding: 11px 32px 11px 12px;
  border-radius: 7px;
  font-size: 12px;
  line-height: 1.5;
}

#content-wrapper #js-product-list-top .products-sort-order .dropdown-menu {
  min-width: 100%;
  border: 1px solid var(--at-border);
  border-radius: 8px;
  box-shadow: var(--at-shadow);
}

#content-wrapper #js-product-list-top .products-sort-order .select-list {
  padding: 11px 14px;
  font-size: 12px;
  line-height: 1.4;
}

#content-wrapper #products .grid_switcher {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-top: -73px;
  margin-right: 13px;
}

#content-wrapper #products .grid_switcher i {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 40px;
  border: 1px solid var(--at-border);
  border-radius: 6px;
  font-size: 21px;
}

#content-wrapper #products .grid_switcher i.show_grid,
#content-wrapper #products.product_show_list .grid_switcher i.show_list {
  color: var(--at-primary-dark);
  background: #eef4fa;
}

#content-wrapper #products.product_show_list .grid_switcher i.show_grid {
  color: #7d8796;
  background: #fff;
}

@media (max-width: 767px) {
  #content-wrapper #category_desc.dfc-category-header {
    gap: 14px;
    margin-bottom: 18px;
    padding: 18px;
  }

  #content-wrapper .dfc-category-header .category-image {
    flex-basis: 70px;
    width: 70px;
  }

  #content-wrapper .dfc-category-header .category-image img {
    height: 70px;
  }

  #content-wrapper .dfc-category-details > summary {
    min-height: 44px;
    padding-top: 11px;
    padding-bottom: 11px;
  }

  #content-wrapper #js-product-list-top.products-selection {
    padding: 12px;
  }

  #content-wrapper #js-product-list-top .sort-by-row {
    margin: 0;
    gap: 10px;
  }

  #content-wrapper #js-product-list-top .products-sort-order {
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
    padding: 0;
  }

  #content-wrapper #js-product-list-top .filter-button {
    flex: 0 0 auto;
    width: auto;
    padding: 0;
  }

  #content-wrapper #js-product-list-top .products-sort-order .select-title,
  #content-wrapper #search_filter_toggler {
    min-height: 44px;
  }

  #content-wrapper #js-product-list-top .showing {
    padding: 10px 0 0;
    color: var(--at-muted);
    font-size: 11px;
  }

  #content-wrapper #products .grid_switcher {
    float: none;
    justify-content: flex-end;
    margin: -6px 0 12px;
  }

  #content-wrapper #products .grid_switcher i {
    width: 44px;
    height: 44px;
  }
}

@media (max-width: 480px) {
  #content-wrapper #products .grid_switcher {
    display: none;
  }
}

/* Native catalog facets: the same disclosure stays usable on mobile and desktop. */
#content-wrapper .dfc-catalog-filters { margin: 0 0 14px; border: 1px solid #dbe2ea; border-radius: 10px; background: #fff; }
#content-wrapper .dfc-catalog-filters > summary { min-height: 48px; padding: 14px 16px; color: #253344; font-size: 14px; font-weight: 650; cursor: pointer; }
#content-wrapper .dfc-catalog-filters > summary:focus-visible { outline: 3px solid #1674bd; outline-offset: 2px; }
#content-wrapper .dfc-filter-count { color: #526073; font-size: 12px; }
#content-wrapper .dfc-filters-content { padding: 0 16px 16px; }
#content-wrapper .dfc-filters-content #search_filters { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; margin: 0; padding: 0; border: 0; background: none; box-shadow: none; }
#content-wrapper .dfc-filters-help, #content-wrapper .dfc-filters-content .clear-all-wrapper { grid-column: 1 / -1; margin: 0; color: #526073; font-size: 12px; }
#content-wrapper .dfc-filters-content #search_filters .facet { min-width: 0; padding: 0; border: 0; }
#content-wrapper .dfc-filters-content #search_filters .facet-title { margin: 0 0 10px; padding: 0; font-size: 14px; white-space: normal; }
#content-wrapper .dfc-filters-content #search_filters .dfc-facet-options { display: block; max-height: 248px; padding: 0 4px; margin: 0; overflow-y: auto; }
#content-wrapper .dfc-filters-content #search_filters .faceted-slider { padding: 4px 14px 18px; overflow: visible; }
#content-wrapper .dfc-filters-content #search_filters .facet-label { display: flex; align-items: center; min-height: 36px; margin: 0; gap: 6px; }
#content-wrapper .dfc-filters-content #search_filters .facet-label > :is(.custom-checkbox,.custom-radio) { position: relative; flex: 0 0 20px; top: auto; margin: 0; }
#content-wrapper .dfc-filters-content #search_filters .facet-label a { width: auto; min-width: 0; overflow: visible; white-space: normal; font-size: 13px; line-height: 1.4; }
#content-wrapper .dfc-filters-content .js-search-filters-clear-all { min-height: 44px; font-size: 13px; }
#content-wrapper .active_filters_container .active_filters { margin-bottom: 14px; }
#content-wrapper .active_filters_container .filter-block { min-height: 36px; line-height: 24px; }
#content-wrapper .dfc-filters-content .ui-slider-horizontal .ui-slider-handle { width: 24px; height: 24px; top: -10px; margin-left: -12px; border-radius: 50%; }
@media (max-width: 767px) {
  #content-wrapper .dfc-filters-content #search_filters { grid-template-columns: minmax(0,1fr); gap: 18px; }
  #content-wrapper .dfc-filters-content #search_filters .facet-label { min-height: 44px; }
  #content-wrapper #category_desc.dfc-category-header { display: flex !important; flex-direction: row !important; align-items: center; gap: 12px; padding: 14px; margin-bottom: 14px; }
  #content-wrapper #category_desc.dfc-category-header .category-image { flex: 0 0 56px; width: 56px; margin: 0; }
  #content-wrapper #category_desc.dfc-category-header .category-image img { width: 56px; height: 56px; }
  #content-wrapper #category_desc.dfc-category-header .category-desc { flex: 1 1 0; width: auto; min-width: 0; text-align: left; }
  #content-wrapper #category_desc.dfc-category-header .cat_name { font-size: 23px; text-align: left; }
  #content-wrapper .dfc-catalog-eyebrow { margin-bottom: 5px; font-size: 9px; }
  #content-wrapper .dfc-category-details { margin-top: 4px; }
  #content-wrapper .dfc-category-details > summary { font-size: 12px; }
}
@media (min-width: 768px) and (max-width: 991px) {
  :is(#category,#search,#manufacturer,#supplier,#best-sales,#new-products,#prices-drop) #content-wrapper #products:not(.product_show_list) #js-product-list > .products > .product-miniature { width: 50% !important; max-width: 50%; flex: 0 0 50%; }
}

@media (max-width: 767px) {
  #content-wrapper #category_desc.dfc-category-header .category-image { flex-basis: 40px; width: 40px; }
  #content-wrapper #category_desc.dfc-category-header .category-image img { width: 40px; height: 40px; }
  #content-wrapper #category_desc.dfc-category-header .cat_name { font-size: 20px; line-height: 1.25; }
  #content-wrapper #category_desc.dfc-category-header .dfc-catalog-eyebrow { display: none; }
  #content-wrapper .dfc-category-details > summary { min-height: 36px; padding-top: 7px; padding-bottom: 7px; }
}
#content-wrapper .active_filters_container .filter-block > a { display: inline-flex; align-items: center; justify-content: center; min-width: 28px; min-height: 28px; }


/* Source: home-performance.css */
/* Progressive rendering and visual rhythm for the home page.
   content-visibility only pays off for the heavy tabbed product grid below;
   the smaller hook_box blocks (manufacturer strip, banners, the stray
   clearfix) are cheap to render and their real height is nowhere near this
   placeholder, so applying it there just produced a large, visible collapse
   once each block entered the viewport. */
#index #content > .tabs {
  content-visibility: auto;
  contain-intrinsic-size: auto 720px;
}

#index #content > .tabs,
#index .hook_box > * {
  margin-bottom: clamp(18px, 3vw, 34px);
}

#index #home-page-tabs {
  display: flex;
  gap: 6px;
  overflow-x: auto;
  padding-bottom: 4px;
  scrollbar-width: thin;
}

#index #home-page-tabs > li {
  flex: 0 0 auto;
}

#index #home-page-tabs > li > a {
  border-radius: var(--at-radius-sm) var(--at-radius-sm) 0 0;
}

#index #homepage-slider {
  border-radius: var(--at-radius);
  overflow: hidden;
  background: var(--at-surface-soft);
}

#index .home_man,
#index #home_cat_product .bx_box {
  border-radius: var(--at-radius-sm);
}

@media (max-width: 767px) {
  #index #content > .tabs {
    contain-intrinsic-size: auto 520px;
  }
}

@supports not (content-visibility: auto) {
  #index #content > .tabs {
    contain: none;
  }
}

/* Homepage catalog sections follow the same spacing as the finder. */
body#index #slider_row.dfc-home-overview {
  gap: 26px;
  max-width: none;
  margin: 8px 0 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

#index .dfc-home-overview > .clearfix {
  display: none;
}

#index .dfc-home-overview .home-trust-bar {
  order: 1;
  margin: 0;
  background: var(--at-border);
  border-radius: 10px;
}

#index .dfc-home-overview .home-trust-item {
  min-height: 66px;
  padding: 12px 16px;
}

#index .dfc-home-overview .home-trust-marker {
  flex-basis: 32px;
  width: 32px;
  height: 32px;
  color: var(--at-primary-dark);
  background: #eef4fa;
  font-size: 19px;
  font-weight: 400;
}

#index .dfc-home-overview a.home-trust-item:hover {
  background: #f8fafc;
  text-decoration: none;
}

body#index #slider_row.dfc-home-overview #home_categories {
  order: 2;
  width: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  box-shadow: none;
}

#index .dfc-home-overview #home_categories .homecat_title {
  display: block;
  margin: 0 0 18px;
  padding: 0;
  border: 0;
  color: var(--at-text);
  font-size: 24px;
  font-weight: 700;
  letter-spacing: -.025em;
  line-height: 1.25;
  text-transform: none;
}

#index .dfc-home-overview #home_categories .homecat_title span {
  margin: 0;
  border: 0;
}

#index .dfc-home-overview #home_categories > ul.row {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  margin: 0;
}

#index .dfc-home-overview #home_categories > ul.row::before,
#index .dfc-home-overview #home_categories > ul.row::after {
  display: none;
}

#index .dfc-home-overview #home_categories ul li.cat_block {
  float: none;
  width: auto;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  transform: none;
}

#index .dfc-home-overview #home_categories .cat-container {
  gap: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid var(--at-border);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 2px 5px rgba(16, 24, 40, .035);
}

#index .dfc-home-overview #home_categories ul li .catimg_container {
  float: none;
  width: 100%;
  height: 150px;
  margin: 0;
  padding: 12px;
  border-radius: 0;
  border-bottom: 1px solid var(--at-border);
  background: #fff;
}

#index .dfc-home-overview #home_categories .catimg_container > a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

#index .dfc-home-overview #home_categories .catimg_container img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  border-radius: 0;
}

#index .dfc-home-overview #home_categories .catlinks_container {
  float: none;
  width: 100%;
  padding: 16px;
  text-align: left;
}

#index .dfc-home-overview #home_categories ul li .homecat_name {
  justify-content: flex-start;
  min-height: 4.05em;
  margin: 0 0 12px;
  text-align: left;
}

#index .dfc-home-overview #home_categories ul li .homecat_name a {
  font-size: 15px;
  font-weight: 650;
  line-height: 1.4;
  text-align: left;
  text-transform: none;
  overflow-wrap: anywhere;
}

#index .dfc-home-overview #home_categories ul li .homecat_name span {
  display: none;
}

#index .dfc-home-overview #home_categories ul li a.view_more {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  min-height: 38px;
  padding: 8px 0 0;
  border: 0;
  border-top: 1px solid var(--at-border);
  border-radius: 0;
  color: var(--at-primary-dark);
  background: transparent;
  box-shadow: none;
  font-size: 12px;
  font-weight: 600;
}

#index .dfc-home-overview #home_categories a.view_more::after {
  content: "\2192";
  font-size: 18px;
}

body#index #slider_row.dfc-home-overview #top_column {
  order: 3;
  margin: 0;
}

/* Keep all banner content visible; constrain media instead of cropping text. */
#index .dfc-home-overview #top_column #homepage-slider {
  margin: 0;
  border: 1px solid var(--at-border);
  border-radius: 12px;
  background: #f5f7fa;
  box-shadow: none;
}

#index .dfc-home-overview #top_column #homepage-slider img {
  display: block;
  width: 100%;
  max-height: 280px;
  object-fit: contain;
  object-position: center;
}

#index .dfc-home-overview #angarbanners_top {
  margin-top: 16px;
}

#index .dfc-home-overview .angarbanners .item-link {
  display: block;
  overflow: hidden;
  border: 1px solid var(--at-border);
  border-radius: 12px;
}

#index .dfc-home-overview .angarbanners .item-img {
  display: block;
  width: 100%;
  max-height: 240px;
  object-fit: contain;
}

#index #content.page-home .home-products-intro {
  margin: 34px 0 12px;
  padding: 0;
  text-align: left;
}

#index #content.page-home .home-products-intro h2 {
  font-size: 24px;
  font-weight: 700;
}

#index #content.page-home .home-products-intro p {
  font-size: 13px;
  line-height: 1.5;
}

#index #content.page-home > .tabs {
  margin-top: 0;
}

#index #content.page-home #home-page-tabs {
  justify-content: flex-start;
  gap: 8px;
  margin-bottom: 20px;
  border: 0;
}

#index #content.page-home #home-page-tabs > li {
  margin: 0;
}

#index #content.page-home #home-page-tabs > li > a {
  padding: 10px 16px;
  border: 1px solid var(--at-border);
  border-radius: 8px;
  color: #526073;
  background: #fff;
  font-size: 12px;
  line-height: 1.4;
  text-transform: none;
}

#index #content.page-home #home-page-tabs > li.active > a {
  border-color: #b9cee2;
  color: var(--at-primary-dark);
  background: #eef4fa;
}

#index #content.page-home #tab-content {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

@media (max-width: 767px) {
  body#index #slider_row.dfc-home-overview {
    gap: 22px;
    margin-top: 0;
  }

  #index .dfc-home-overview .home-trust-bar {
    grid-template-columns: 1fr;
  }

  #index .dfc-home-overview .home-trust-item {
    min-height: 58px;
    padding: 10px 12px;
  }

  #index .dfc-home-overview #home_categories .homecat_title,
  #index #content.page-home .home-products-intro h2 {
    font-size: 21px;
  }

  #index .dfc-home-overview #home_categories > ul.row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }

  #index .dfc-home-overview #home_categories ul li .catimg_container {
    height: 125px;
    padding: 10px;
  }

  #index .dfc-home-overview #home_categories .catlinks_container {
    padding: 12px;
  }

  #index .dfc-home-overview #home_categories ul li .homecat_name {
    min-height: 5.4em;
    margin-bottom: 8px;
  }

  #index .dfc-home-overview #home_categories ul li .homecat_name a {
    font-size: 13px;
  }

  #index .dfc-home-overview #home_categories ul li a.view_more {
    min-height: 44px;
  }

  #index #content.page-home .home-products-intro {
    margin-top: 26px;
  }

  #index #content.page-home #home-page-tabs > li > a {
    min-height: 44px;
    padding: 12px 14px;
  }
}

@media (prefers-reduced-motion: reduce) {
  #index .dfc-home-overview #home_categories .cat-container,
  #index .dfc-home-overview #home_categories .cat-container:hover {
    transform: none;
    transition: none;
  }
}

/* On phones, show the catalog choices before secondary reassurance. */
@media (max-width: 767px) {
  body#index #slider_row.dfc-home-overview #home_categories { order: 1; }
  #index .dfc-home-overview .home-trust-bar { order: 2; }
}


/* Source: dfc-finder.css */
/* The homepage finder reuses the catalog and vehicle module endpoints. */
#index #header .dfc-finder {
  box-sizing: border-box;
  width: calc(100% - 32px);
  max-width: 1204px;
  margin: 24px auto 28px;
  border: 1px solid #dfe6ed;
  border-radius: 14px;
  color: #202b38;
  background: #fff;
  box-shadow: 0 6px 22px rgba(25, 47, 68, .045);
  overflow: hidden;
}
#index .dfc-finder .dfc-finder-heading {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 16px;
  padding: 23px 28px 20px;
  background: #f6f8fb;
}
#index .dfc-finder .dfc-finder-eyebrow {
  display: block;
  margin-bottom: 7px;
  color: #566b7d;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .1em;
}
#index .dfc-finder #dfc-finder-title {
  margin: 0;
  color: #202b38;
  font-size: 25px;
  font-weight: 750;
  line-height: 1.2;
  text-transform: none;
}
#index .dfc-finder .dfc-finder-heading p {
  margin: 0 0 2px;
  color: #596775;
  font-size: 13px;
}
#index .dfc-finder .dfc-finder-tabs {
  display: flex;
  gap: 5px;
  padding: 0 28px;
  border-bottom: 1px solid #e2e8ee;
  background: #f6f8fb;
}
#index .dfc-finder [hidden] { display: none !important; }
#index .dfc-finder .dfc-finder-tabs button {
  flex: 0 1 190px;
  min-height: 49px;
  padding: 11px 18px;
  border: 1px solid transparent;
  border-bottom: 3px solid transparent;
  border-radius: 8px 8px 0 0;
  color: #4b5c6a;
  background: transparent;
  font-family: inherit;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.25;
  cursor: pointer;
}
#index .dfc-finder .dfc-finder-tabs button[aria-selected="true"] {
  border-color: #e2e8ee;
  border-bottom-color: #1674bd;
  color: #1268ad;
  background: #fff;
}
#index .dfc-finder .dfc-finder-tabs button:hover { color: #1268ad; background: #edf3f8; }
#index .dfc-finder button:focus-visible,
#index .dfc-finder a:focus-visible {
  outline: 3px solid #1674bd;
  outline-offset: 2px;
}
#index .dfc-finder .dfc-finder-panel {
  padding: 22px 28px 25px;
  border-top: 1px solid #e2e8ee;
}
#index .dfc-finder.is-enhanced .dfc-finder-panel { border-top: 0; }
#index .dfc-finder .dfc-finder-panel-title {
  margin: 0 0 12px;
  font-size: 17px;
  text-transform: none;
}
#index .dfc-finder.is-enhanced .dfc-finder-panel-title { display: none; }
#index .dfc-finder .align-center.mb-1,
#index .dfc-finder .dfc-finder-help {
  min-height: 0;
  margin: 0 0 17px !important;
  color: #596775;
  font-size: 13px;
  line-height: 1.5;
  text-align: left;
}
#index .dfc-finder .dfc-finder-panel a { color: #1268ad; text-decoration: underline; }
#index .dfc-finder .dfc-vehicle-selectors { margin: 0; }
#index .dfc-finder .dfc-vehicle-selectors > .col-md-12 {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  width: 100%;
  padding: 0;
}
#index .dfc-finder label {
  display: block;
  margin-bottom: 7px;
  color: #354658;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.4;
  text-align: left;
}
#index .dfc-finder .dfc-finder-field,
#index .dfc-finder .block_content { min-width: 0; }
#index .dfc-finder select.form-control,
#index .dfc-finder input[type="text"],
#index .dfc-finder input[type="search"] {
  box-sizing: border-box;
  width: 100% !important;
  height: 48px !important;
  min-height: 48px;
  margin: 0 !important;
  padding: 10px 12px !important;
  border: 1px solid #ccd6df;
  border-radius: 8px !important;
  color: #202b38;
  background-color: #fff;
  font-family: inherit;
  font-size: 14px !important;
  line-height: 1.5;
  box-shadow: none;
}
#index .dfc-finder select.form-control { padding-right: 30px !important; }
#index .dfc-finder input::placeholder { color: #697785; opacity: 1; }
#index .dfc-finder input:focus,
#index .dfc-finder select:focus {
  border-color: #1674bd;
  outline: 0;
  box-shadow: 0 0 0 3px rgba(22, 116, 189, .13);
}
#index .dfc-finder .dfc-code-controls,
#index .dfc-finder .input-group {
  display: flex;
  align-items: stretch;
  gap: 10px;
}
#index .dfc-finder .dfc-code-controls input,
#index .dfc-finder .input-group input { flex: 1 1 0; min-width: 0; }
#index .dfc-finder .dfc-vin-forms {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
#index .dfc-finder button[type="submit"] {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  gap: 7px;
  width: auto !important;
  min-width: 108px;
  min-height: 48px;
  height: auto !important;
  padding: 11px 19px;
  float: none !important;
  border: 1px solid #1268ad;
  border-radius: 8px !important;
  color: #fff !important;
  background: #1268ad !important;
  font-family: inherit;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.3;
  text-transform: none;
  cursor: pointer;
  box-shadow: none;
}
#index .dfc-finder button[type="submit"]:hover { background: #0d548e !important; }
#index .dfc-finder button[type="submit"] i { font-size: 20px; }
#index .dfc-finder .dfc-code-controls button { min-width: 165px; }
@media (max-width: 767px) {
  #index #header .dfc-finder { width: calc(100% - 24px); margin: 16px auto 22px; border-radius: 12px; }
  #index .dfc-finder .dfc-finder-heading { display: block; padding: 18px 16px 17px; }
  #index .dfc-finder #dfc-finder-title { font-size: 22px; }
  #index .dfc-finder .dfc-finder-heading p { margin-top: 8px; }
  #index .dfc-finder .dfc-finder-tabs { gap: 2px; padding: 0 8px; }
  #index .dfc-finder .dfc-finder-tabs button { flex: 1 1 0; min-width: 0; padding: 11px 5px; font-size: 12px; }
  #index .dfc-finder .dfc-finder-panel { padding: 18px 16px 20px; }
  #index .dfc-finder .dfc-vehicle-selectors > .col-md-12,
  #index .dfc-finder .dfc-vin-forms { grid-template-columns: minmax(0, 1fr); gap: 14px; }
  #index .dfc-finder select.form-control,
  #index .dfc-finder input[type="text"],
  #index .dfc-finder input[type="search"] { font-size: 16px !important; }
  #index .dfc-finder .dfc-code-controls { flex-direction: column; }
  #index .dfc-finder .dfc-code-controls input { flex-basis: auto; }
  #index .dfc-finder button[type="submit"] { min-width: 82px; padding: 11px 10px; font-size: 13px; }
  #index .dfc-finder .input-group button i { display: none; }
}

/* Match the enhanced finder before its deferred script runs: no initial panel jump. */
.dfc-finder-js #index .dfc-finder:not(.is-enhanced) .dfc-finder-tabs[hidden] { display: flex !important; }
.dfc-finder-js #index .dfc-finder:not(.is-enhanced) .dfc-finder-panel:not(:first-child) { display: none; }
.dfc-finder-js #index .dfc-finder .dfc-finder-panel-title { display: none; }
.dfc-finder-js #index .dfc-finder .dfc-finder-panel { border-top: 0; }
.dfc-finder-js #index .dfc-finder:not(.is-enhanced) .dfc-finder-tabs button:first-child { border-color: #e2e8ee; border-bottom-color: #1674bd; color: #1268ad; background: #fff; }
@media (max-width: 767px) {
  #index #header .dfc-finder { margin-top: 12px; margin-bottom: 16px; }
  #index .dfc-finder .dfc-finder-heading { padding: 14px 16px; }
  #index .dfc-finder .dfc-finder-heading p { margin-top: 5px; }
  #index .dfc-finder .dfc-finder-panel { padding-top: 14px; padding-bottom: 16px; }
  #index .dfc-finder .dfc-vehicle-selectors > .col-md-12 { gap: 10px; }
}

/* Shortcuts and numbered steps support both catalog browsing and vehicle lookup. */
#index .dfc-finder .dfc-browse-categories {
  display: inline-flex; align-items: center; gap: 9px; min-height: 44px;
  padding: 9px 13px; border: 1px solid #ccd8e3; border-radius: 8px;
  color: #1268ad; background: #fff; font-size: 13px; font-weight: 600; white-space: nowrap;
}
#index .dfc-finder .dfc-browse-categories:hover { background: #eaf3fa; text-decoration: none; }
#index .dfc-finder .dfc-vehicle-selectors label { display: flex; align-items: center; gap: 7px; }
#index .dfc-finder .dfc-step-number {
  display: inline-flex; align-items: center; justify-content: center;
  width: 22px; height: 22px; border-radius: 50%; background: #eaf3fa; color: #1268ad; font-size: 12px;
}
#index #home_categories { scroll-margin-top: 90px; }
@media (max-width: 767px) {
  #index .dfc-finder .dfc-finder-heading { position: relative; padding-bottom: 8px; }
  #index .dfc-finder .dfc-browse-categories { margin: 5px 0 0; padding: 6px 0; min-height: 36px; border: 0; background: transparent; }
  #index .dfc-finder .dfc-step-number { width: 20px; height: 20px; }
}


/* Source: dfc-gallery.css */
/* Scoped product and quick-view galleries; Bootstrap owns modal visibility. */
.dfc-product-gallery .product-cover {
  overflow: hidden;
  border-radius: 14px;
  touch-action: pan-y pinch-zoom;
}

.dfc-product-gallery .dfc-gallery-arrow,
#product-modal.dfc-gallery-modal .dfc-gallery-arrow,
.dfc-product-gallery .dfc-gallery-open,
#product-modal.dfc-gallery-modal .dfc-gallery-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 1px solid #dce3ea;
  border-radius: 50%;
  background: rgba(255, 255, 255, .96);
  color: #25384a;
  cursor: pointer;
  box-shadow: 0 2px 8px rgba(25, 42, 58, .08);
}

.dfc-product-gallery .dfc-gallery-arrow,
#product-modal.dfc-gallery-modal .dfc-gallery-arrow {
  position: absolute;
  z-index: 2;
  top: 50%;
  transform: translateY(-50%);
}

.dfc-product-gallery .dfc-gallery-previous,
#product-modal.dfc-gallery-modal .dfc-gallery-previous { left: 12px; }
.dfc-product-gallery .dfc-gallery-next,
#product-modal.dfc-gallery-modal .dfc-gallery-next { right: 12px; }

.dfc-product-gallery .dfc-gallery-open {
  position: absolute;
  z-index: 2;
  right: 12px;
  bottom: 12px;
}

.dfc-product-gallery .dfc-gallery-arrow:hover,
.dfc-product-gallery .dfc-gallery-open:hover,
#product-modal.dfc-gallery-modal button:hover {
  background: #edf4fa;
  border-color: #7694b2;
}

.dfc-product-gallery button:focus-visible,
.dfc-product-gallery .thumb:focus-visible,
#product-modal.dfc-gallery-modal button:focus-visible,
#product-modal.dfc-gallery-modal .thumb:focus-visible {
  outline: 3px solid #246caa;
  outline-offset: 3px;
}

body#product #main .dfc-product-gallery .dfc-gallery-thumbnails,
body .quickview .dfc-product-gallery .dfc-gallery-thumbnails,
#product-modal.dfc-gallery-modal .modal-content .dfc-gallery-thumbnails {
  position: relative;
  display: block;
  width: 100% !important;
  height: auto !important;
  max-height: none;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  max-width: 100% !important;
  overscroll-behavior-x: contain;
  margin: 0;
  padding: 5px 3px 10px;
  scrollbar-width: thin;
  scrollbar-color: #aebfce transparent;
}

body#product #main .dfc-product-gallery .dfc-gallery-thumbnails.hide_thumbnails,
body .quickview .dfc-product-gallery .dfc-gallery-thumbnails.hide_thumbnails { display: none; }

body#product #main .dfc-product-gallery ul.product-images,
body .quickview .dfc-product-gallery ul.product-images,
#product-modal.dfc-gallery-modal .modal-content ul.product-images {
  position: relative;
  display: flex;
  align-items: center;
  gap: 10px;
  width: max-content !important;
  min-width: 100%;
  margin: 0;
  padding: 0;
  top: 0 !important;
  left: 0 !important;
  transform: none !important;
  list-style: none;
}

body#product #main .dfc-product-gallery ul.product-images > li.thumb-container,
body .quickview .dfc-product-gallery ul.product-images > li.thumb-container,
#product-modal.dfc-gallery-modal .modal-content ul.product-images > li.thumb-container {
  display: block;
  flex: 0 0 76px;
  float: none;
  width: 76px;
  margin: 0;
  padding: 0;
}

body#product #main .dfc-product-gallery ul.product-images > li.thumb-container > picture > .thumb,
body .quickview .dfc-product-gallery ul.product-images > li.thumb-container > picture > .thumb,
#product-modal.dfc-gallery-modal .modal-content ul.product-images > li.thumb-container > picture > .thumb {
  display: block;
  width: 76px;
  height: 76px;
  max-width: 100%;
  object-fit: contain;
  margin: 0;
  padding: 3px;
  border: 2px solid #dce3ea;
  border-radius: 9px;
  background: #fff;
  cursor: pointer;
}

body#product #main .dfc-product-gallery ul.product-images > li.thumb-container > picture > .thumb.selected,
body .quickview .dfc-product-gallery ul.product-images > li.thumb-container > picture > .thumb.selected,
#product-modal.dfc-gallery-modal .modal-content ul.product-images > li.thumb-container > picture > .thumb.selected { border-color: #246caa; }

/* Native vertical strips are replaced with a directly scrollable thumbnail row. */
#product .product_left .scroll-box-arrows,
.quickview .quickview_left > .arrows,
.quickview .dfc-gallery-open { display: none; }

.quickview .dfc-product-gallery {
  display: block;
  min-width: 0;
  min-height: 0;
}

.quickview .dfc-product-gallery .product-cover,
.quickview .dfc-product-gallery .product-cover > picture {
  display: block;
  width: 100%;
}

.quickview .modal-header { height: 56px; }
.quickview .modal-header .close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  opacity: 1;
  color: #25384a;
}
.quickview .modal-header .close:focus-visible {
  outline: 3px solid #246caa;
  outline-offset: 2px;
}

#product-modal.dfc-gallery-modal {
  padding: 16px !important;
  overflow-x: hidden;
  overflow-y: auto;
}

#product-modal.dfc-gallery-modal .modal-dialog {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
}

#product-modal.dfc-gallery-modal .modal-content {
  display: flex;
  flex-direction: column;
  max-height: calc(100vh - 32px);
  max-height: calc(100dvh - 32px);
  overflow: hidden;
  border: 1px solid #dce3ea;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 20px 70px rgba(14, 31, 47, .24);
}

#product-modal.dfc-gallery-modal .dfc-gallery-header {
  display: flex;
  align-items: center;
  gap: 12px;
  flex: 0 0 auto;
  padding: 12px 16px;
  border-bottom: 1px solid #e6edf3;
}

#product-modal.dfc-gallery-modal .dfc-gallery-header h2 {
  flex: 1 1 auto;
  min-width: 0;
  margin: 0;
  color: #25384a;
  font-size: 16px;
  line-height: 1.4;
  font-weight: 650;
  overflow-wrap: anywhere;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

#product-modal.dfc-gallery-modal .dfc-gallery-counter {
  flex: 0 0 auto;
  color: #64768a;
  font-size: 13px;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

#product-modal.dfc-gallery-modal .dfc-gallery-close { font-size: 30px; line-height: 1; }

#product-modal.dfc-gallery-modal .modal-content .modal-body {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 10px;
  min-height: 0;
  margin: 0;
  padding: 12px 16px 6px;
  overflow-y: auto;
}

#product-modal.dfc-gallery-modal .modal-content .modal-body figure {
  position: relative;
  display: flex;
  flex: 1 1 auto;
  align-items: center;
  justify-content: center;
  min-width: 0;
  min-height: 0;
  margin: 0;
  padding: 0;
  touch-action: pan-y pinch-zoom;
}

#product-modal.dfc-gallery-modal .modal-content .modal-body figure > picture {
  display: block;
  width: 100%;
  min-width: 0;
}

#product-modal.dfc-gallery-modal .modal-content .modal-body img.product-cover-modal {
  display: block;
  width: 100%;
  height: min(650px, calc(100vh - 240px));
  height: min(650px, calc(100dvh - 240px));
  min-height: 120px;
  max-width: 100%;
  object-fit: contain;
  margin: 0;
  border: 0;
  background: #fff;
}

#product-modal.dfc-gallery-modal .modal-content .dfc-gallery-thumbnails { flex: 0 0 auto; }

@media (max-width: 575px) {
  .dfc-product-gallery .dfc-gallery-previous,
  #product-modal.dfc-gallery-modal .dfc-gallery-previous { left: 6px; }
  .dfc-product-gallery .dfc-gallery-next,
  #product-modal.dfc-gallery-modal .dfc-gallery-next { right: 6px; }
  .dfc-product-gallery .dfc-gallery-open { right: 8px; bottom: 8px; }
  #product-modal.dfc-gallery-modal { padding: 8px !important; }
  #product-modal.dfc-gallery-modal .modal-content {
    max-height: calc(100vh - 16px);
    max-height: calc(100dvh - 16px);
    border-radius: 12px;
  }
  #product-modal.dfc-gallery-modal .dfc-gallery-header { gap: 8px; padding: 10px; }
  #product-modal.dfc-gallery-modal .dfc-gallery-header h2 { font-size: 14px; }
  #product-modal.dfc-gallery-modal .modal-content .modal-body { padding: 8px 10px 4px; }
}

@media (prefers-reduced-motion: reduce) {
  #product-modal.dfc-gallery-modal,
  #product-modal.dfc-gallery-modal .modal-dialog { transition: none; }
}


/* Product photographs share a neutral stage without cropping the actual part. */
body#product #main .dfc-product-gallery .product-cover > picture > img,
body .quickview .dfc-product-gallery .product-cover > picture > img {
  display: block;
  width: 100%;
  aspect-ratio: 1;
  height: auto;
  object-fit: contain;
  object-position: center;
  padding: 8px;
  background: #fff;
}
.dfc-product-gallery .dfc-gallery-image-note {
  margin: 0 0 10px;
  padding: 8px 10px;
  border: 1px solid #e3e8ee;
  border-radius: 8px;
  color: #475467;
  background: #f8fafc;
  font-size: .75rem;
  line-height: 1.5;
}
body .quickview .dfc-product-meta {
  display: grid;
  grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
  gap: 8px;
  clear: both;
  margin: 0 0 12px;
}
:is(body, #product) .quickview .dfc-product-meta .product-reference,
:is(body, #product) .quickview .dfc-product-meta #product_manufacturer {
  float: none;
  width: auto;
  min-width: 0;
  min-height: 0;
  margin: 0;
  padding: 8px;
  border: 1px solid #e3e8ee;
  border-radius: 8px;
  overflow-wrap: anywhere;
}
body .quickview .dfc-product-summary .dfc-product-summary__more {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  color: #17578d;
  font-weight: 600;
  text-decoration: underline;
}
@media (max-width: 767px) {
  body#product #main .dfc-product-gallery .product-cover > picture > img {
    height: clamp(200px, 66vw, 260px);
    aspect-ratio: auto;
    padding: 6px;
  }
  body#product #main .dfc-product-gallery ul.product-images > li.thumb-container,
  body#product #main .dfc-product-gallery ul.product-images > li.thumb-container > picture > .thumb {
    flex-basis: 58px;
    width: 58px;
    height: 58px;
  }
}


/* Source: dfc-audit-ui.css */
/* Shared controls: keep native commerce actions and their update handlers. */
body .bootstrap-touchspin,
body .bootstrap-touchspin input.form-control,
body .bootstrap-touchspin .input-group-btn-vertical {
  height: 48px !important;
  min-height: 48px !important;
}
body .bootstrap-touchspin .input-group-btn-vertical > .btn {
  height: 24px !important;
  min-height: 24px !important;
  min-width: 24px !important;
  margin-top: 0 !important;
}
body .bootstrap-touchspin .input-group-btn-vertical > .btn:focus-visible {
  z-index: 2;
  outline: 2px solid #1268ad;
  outline-offset: 1px;
}
body #header nav.header-nav .user-info a,
body #header nav.header-nav #contact-link a { color: #435469 !important; }
body#checkout #content-wrapper .form-control-comment,
body#checkout .one-page-checkout .form-control-comment { color: #596779 !important; }

/* Footer contact links remain available. Fixed shortcuts must not cover forms. */
body:is(#contact, #cart, #checkout, #order, #authentication, #registration,
  #password, #guest-tracking, #identity, #address, #addresses) #whatsapp-chat-footer,
body:is(#contact, #cart, #checkout, #order, #authentication, #registration,
  #password, #guest-tracking, #identity, #address, #addresses) #scroll_top,
body.modal-open #whatsapp-chat-footer,
body.modal-open #scroll_top { display: none !important; }
@media (max-width: 991px) {
  body #whatsapp-chat-footer, body #scroll_top { display: none !important; }
}
body #header nav.header-nav .user-info a.account { color: #435469 !important; }
body .quickview .product-additional-info a.whatsapp_button { color: #fff; background: #087a40; border-color: #087a40; }
body .quickview .product-additional-info a.whatsapp_button:hover,
body .quickview .product-additional-info a.whatsapp_button:focus-visible { color: #fff; background: #065f32; border-color: #065f32; }
:is(body,#product) .quickview .product-quantity .qty { height: 48px !important; min-height: 48px !important; }


/* Source: dfc-catalog-audit.css */
/* Search and initial responsive geometry shared by public pages. */
body ul.ui-autocomplete.ui-corner-all.dfc-search-suggestions {
  max-width: calc(100vw - 24px);
  padding: 4px;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  border: 1px solid #ccd6df;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(20, 35, 52, .18);
  z-index: 1100;
}
body ul.dfc-search-suggestions.ui-autocomplete li.ui-menu-item { margin: 0; border-color: #edf0f4; }
body ul.dfc-search-suggestions.ui-autocomplete li.ui-menu-item > a {
  display: flex;
  gap: 10px;
  min-height: 74px;
  margin: 0;
  padding: 10px;
  border: 1px solid transparent;
  border-radius: 6px;
  color: #253344;
  background: #fff;
}
body ul.dfc-search-suggestions.ui-autocomplete li.ui-menu-item > a:is(.ui-state-focus,.ui-state-active,:hover) {
  margin: 0;
  border-color: #b4cee5;
  color: #253344;
  background: #eef5fb;
}
body ul.dfc-search-suggestions .search_left { flex: 0 0 48px; float: none; width: 48px; }
body ul.dfc-search-suggestions .search_left img { width: 48px; height: 48px; border: 0; object-fit: contain; }
body ul.dfc-search-suggestions .search_right { flex: 1 1 auto; float: none; width: auto; min-width: 0; padding: 0; }
body ul.dfc-search-suggestions .search_right .search_name { white-space: normal; overflow-wrap: anywhere; font-size: 13px; line-height: 1.4; font-weight: 600; text-transform: none; }
body ul.dfc-search-suggestions .search_right .search_brand { color: #5b6979; font-size: 11px; }
body ul.dfc-search-suggestions .search_right .search_price { margin-top: 4px; color: #a51622; font-size: 13px; }
body ul.dfc-search-suggestions .clearfix { display: none; }
#search #main .dfc-search-title { overflow-wrap: anywhere; text-transform: none; }

/* These columns were previously hidden by a late script after first paint. */
@media (max-width: 1199px) {
  :is(#category,#search,#manufacturer,#supplier,#best-sales,#new-products,#prices-drop,#product) #left-column,
  :is(#category,#search,#manufacturer,#supplier,#best-sales,#new-products,#prices-drop,#product) #right-column { display: none !important; }
  :is(#category,#search,#manufacturer,#supplier,#best-sales,#new-products,#prices-drop,#product) #content-wrapper { width: 100%; max-width: 100%; flex-basis: 100%; }
}

/* A separate, labeled view-control row avoids overlapping the sort dropdown. */
#content-wrapper #products .grid_switcher {
  position: static;
  float: none;
  display: flex;
  justify-content: flex-end;
  gap: 6px;
  margin: -6px 0 16px;
  padding: 0;
}
#content-wrapper #products .grid_switcher .dfc-view-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-width: 44px;
  min-height: 44px;
  padding: 8px 12px;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  color: #475569;
  background: #fff;
  font: inherit;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.3;
  cursor: pointer;
}
#content-wrapper #products .grid_switcher .dfc-view-button i,
#content-wrapper #products .grid_switcher .dfc-view-button i:hover {
  color: inherit;
  font-size: 20px;
  width: 20px; height: 20px; min-width: 0; border: 0; border-radius: 0; background: transparent; padding: 0;
}
#content-wrapper #products .grid_switcher .dfc-view-button:hover {
  border-color: #1268ad;
  color: #1268ad;
  background: #f0f7fc;
}
#content-wrapper #products .grid_switcher .dfc-view-button[aria-pressed="true"] {
  border-color: #1268ad;
  color: #0e568f;
  background: #eaf4fc;
}
#content-wrapper #products .grid_switcher .dfc-view-button:focus-visible {
  outline: 3px solid #1268ad;
  outline-offset: 3px;
}
/* The native list layout starts above 481px; preserve its existing mobile rule. */
@media (max-width: 481px) {
  #content-wrapper #products .grid_switcher { display: none; }
}

.dfc-sort-caption { display: none; }
@media (max-width: 767px) {
  .dfc-sort-caption { display: inline; margin-right: 4px; font-weight: 600; }
}

