/* The desktop storefront follows the compact, two-column shop layout.
   Mobile keeps its existing header, carousel, navigation and product rail. */
@font-face { font-family: 'Store Roboto'; src: url('/assets/roboto.b1dc880b4429.woff2') format('woff2'); font-style: normal; font-weight: 100 900; font-display: swap; }
@font-face { font-family: 'Store Condensed'; src: url('/assets/roboto-condensed.b1dc880b4429.woff2') format('woff2'); font-style: normal; font-weight: 100 900; font-display: swap; }
@font-face { font-family: 'Store Display'; src: url('/assets/montserrat.b1dc880b4429.woff2') format('woff2'); font-style: normal; font-weight: 100 900; font-display: swap; }
.header-brand-block, .desktop-home-layout, .home-main { display: contents; }
.header-socials, .desktop-account, .desktop-store-sidebar, .desktop-vehicle-finder,
.desktop-category-heading, .featured-link-desktop, .desktop-cart-label, .footer-desktop-socials,
.footer-service-links, .desktop-category-grid, .reference-hero-copy, .desktop-product-reviews,
.footer-carriers, .footer-payment-brands, .footer-logo-art { display: none; }
.reference-art { position: relative; overflow: hidden; }
.reference-art > img { position: absolute; max-width: none; width: var(--art-width); height: auto; left: var(--art-left); top: var(--art-top); }
.d-icon { display: block; width: 22px; height: 22px; flex-shrink: 0; }
.section-heading .d-icon { width: 16px; height: 16px; }
.social-icons { display: flex; align-items: center; gap: 15px; }
.social-icons > a, .social-icons > span { display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; color: #fff; transition: transform 150ms; }
.social-icons a:hover { transform: translateY(-2px); }
.social-icons svg { width: 23px; height: 23px; }
.social-instagram { background: radial-gradient(circle at 25% 100%, #ffcf41 8%, #fd365c 45%, #a52ac6 75%, #505cdb); border-radius: 8px !important; }
.social-facebook { background: #0866ff; }
.social-facebook svg { width: 21px; height: 21px; }
.social-tiktok { background: #080b0f; }
.social-tiktok svg { width: 20px; height: 20px; }

@media (min-width: 1024px) {
  :root { --desktop-max: 1500px; --desktop-sidebar: clamp(190px, 17.915vw, 244px); }
  body:not(.admin-mode) { font-family: 'Store Roboto', Arial, sans-serif; }
  .desktop-category-links, .desktop-account nav, .desktop-category-card, .product-name { font-family: 'Store Condensed', Arial, sans-serif; }
  .site-header { border-bottom-color: #f0f2f5; box-shadow: 0 2px 8px #17243b03; }
  .header-main { max-width: var(--desktop-max); height: 120px; min-height: 120px; padding: 8px 29px 10px 44px; grid-template-columns: calc(var(--desktop-sidebar) - 25px) minmax(240px, 1fr) 176px; gap: 54px; }
  .header-brand-block { display: flex; flex-direction: column; align-items: center; gap: 4px; }
  .brand { width: 146px; align-self: flex-start; }
  .header-socials { align-self: flex-start; margin-left: 16px; }
  .header-socials { display: block; }
  .header-socials:empty { display: none; }
  .header-socials .social-icons { min-height: 28px; }
  .store-search { transform: translateY(3px); }
  .search { height: 49px; border-radius: 6px; border-color: #e6e8ec; box-shadow: 0 2px 8px #14213c08; }
  .search-leading { width: 22px; height: 22px; margin: 0 15px; }
  .search input { font-size: 14px; }
  .search-submit { flex-basis: 55px; }
  .search-submit .icon { width: 24px; height: 24px; stroke-width: 1.6; }
  .header-actions { justify-content: space-between; gap: 34px; padding-left: 29px; }
  .header-actions > .account-link, .desktop-nav { display: none; }
  .cart-link .icon { width: 36px; height: 34px; stroke-width: 1.7; }
  .cart-count { top: -5px; right: -2px; height: 24px; min-width: 24px; font-size: 13px; }
  .desktop-account { display: block; position: relative; }
  .desktop-account summary { display: flex; align-items: center; justify-content: center; gap: 12px; min-width: 64px; height: 48px; list-style: none; cursor: pointer; border-radius: 7px; color: #080b12; }
  .desktop-account summary::-webkit-details-marker { display: none; }
  .desktop-account summary > .icon { width: 31px; height: 32px; stroke-width: 1.65; }
  .desktop-account summary:hover { color: var(--blue); }
  .desktop-account summary:focus-visible { outline: 3px solid #80a4ff; outline-offset: 4px; }
  .account-chevron, .field-chevron { width: 7px; height: 7px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg); flex-shrink: 0; }
  .desktop-account[open] .account-chevron { transform: rotate(225deg); }
  .desktop-account nav { position: absolute; z-index: 60; top: calc(100% + 3px); right: -110px; width: 206px; padding: 12px 16px 5px; border: 1px solid #ebedf1; border-radius: 9px; background: #fff; box-shadow: 0 5px 24px #11203c18; }
  .desktop-account nav h2 { margin: 0 0 5px; font-size: 11px; line-height: 1.5; color: #11151d; }
  .desktop-account nav a { display: flex; align-items: center; gap: 12px; min-height: 41px; padding: 8px 0; border-bottom: 1px solid #f0f1f4; font-size: 13px; line-height: 1.4; color: #141922; }
  .desktop-account nav a:last-child { border: 0; }
  .desktop-account nav a:hover { color: var(--blue); }
  .desktop-account nav .icon, .desktop-account nav .d-icon { width: 21px; height: 21px; flex-shrink: 0; stroke-width: 1.6; }

  .desktop-home-layout { display: grid; grid-template-columns: var(--desktop-sidebar) minmax(0, 1fr); align-items: start; gap: 14px; max-width: var(--desktop-max); padding: 10px 13px 18px 18px; margin: 0 auto; }
  .home-main { display: block; min-width: 0; }
  .desktop-store-sidebar { display: grid; align-content: start; gap: 14px; }
  .desktop-category-nav { border-radius: 6px; overflow: hidden; background: linear-gradient(100deg, #f8f9fb, #f7f8fa); padding: 0 12px 8px; }
  .desktop-category-nav h2 { margin: 0; height: 37px; display: flex; align-items: center; padding: 0 5px 5px; font-size: 16px; letter-spacing: -.3px; }
  .desktop-category-links { overflow: visible; }
  .desktop-category-links a { display: flex; align-items: center; gap: 16px; height: 48px; padding: 10px 6px; border-top: 1px solid #e9ecf0; color: #15181e; }
  .desktop-category-links a > span { flex: 1; min-width: 0; font-size: 14px; line-height: 1.35; }
  .desktop-category-links a > .d-icon:first-child { width: 26px; height: 26px; stroke-width: 1.3; }
  .desktop-category-links a > .d-icon:last-child { width: 11px; height: 16px; color: #949aa2; }
  .desktop-category-links a:hover { color: var(--blue); background: #eef2fc; }
  .desktop-all-products { min-height: 42px; display: flex; align-items: center; justify-content: space-between; padding: 9px 6px; border-top: 1px solid #e9ecf0; font-size: 12px; color: var(--blue); }
  .desktop-all-products .d-icon { width: 17px; }
  .marketplace-card { display: flex; align-items: center; gap: 10px; min-height: 64px; padding: 10px; background: #ffe600; color: #073177; border-radius: 7px; box-shadow: 0 2px 7px #18315d08; }
  .marketplace-card > .d-icon:first-child { width: 45px; height: 37px; stroke-width: 1.3; }
  .marketplace-card > .d-icon:last-child { width: 19px; height: 19px; margin-left: auto; }
  .marketplace-card strong { font-size: 14px; line-height: 1.25; }
  .marketplace-card:hover { background: #ffdd00; }
  .desktop-promotion { display: block; overflow: hidden; border-radius: 7px; background: #061325; box-shadow: 0 3px 9px #101c3112; }
  .promotion-art { display: block; width: 100%; }
  .desktop-promotion:hover { filter: brightness(1.08); }
  .home-main .hero { width: 100%; max-width: none; border-radius: 8px; height: auto; aspect-ratio: 3 / 1; }
  .home-main .hero-custom img { object-fit: cover; }
  .reference-desktop-hero { position: relative; container-type: inline-size; }
  .reference-hero-copy { display: flex; flex-direction: column; align-items: flex-start; position: absolute; top: 23.2%; left: 3.7%; color: white; line-height: 1; }
  .reference-hero-eyebrow { font-size: 1.16cqw; font-weight: 500; letter-spacing: .35cqw; margin-bottom: 1.15cqw; }
  .reference-hero-copy > strong { font-family: 'Store Display', Arial, sans-serif; font-size: 6.35cqw; font-weight: 900; letter-spacing: -.21cqw; line-height: .9; }
  .reference-desktop-hero picture { overflow: hidden; }
  .reference-desktop-hero picture img { transform: scale(1.16); transform-origin: right center; }
  .reference-hero-copy em { font-style: normal; font-size: 1.1em; color: #0547ff; }
  .reference-hero-description { font-size: 1.85cqw; font-weight: 500; margin-top: .65cqw; letter-spacing: -.04cqw; }
  .reference-hero-button { display: flex; align-items: center; gap: 1.8cqw; min-height: 4.5cqw; padding: .8cqw 2.45cqw; border-radius: 99px; margin-top: 1.9cqw; background: #0647ff; font-size: 1.68cqw; font-weight: 600; }
  .reference-hero-button svg { width: 2.05cqw; height: 2.05cqw; }
  .home-main .hero-custom .hero-dots { bottom: 5px; padding: 1px 4px; background: transparent; gap: 0; }
  .home-main .hero-dots button { width: 19px; height: 22px; }
  .home-main .hero-dots .hero-pause { position: absolute; left: 100%; margin-left: 3px; border-radius: 50%; background: #05112199; font-size: 10px; opacity: 0; }
  .home-main .hero:hover .hero-pause, .home-main .hero:focus-within .hero-pause { opacity: 1; }
  .home-main .hero-content { padding: 30px 0; }
  .home-main .hero h1 { font-size: clamp(24px, 3.1vw, 46px); }
  .home-main .hero-assurance { display: none; }

  .desktop-vehicle-finder { display: flex; align-items: flex-start; gap: 22px; margin-top: 15px; min-height: 127px; padding: 16px 20px; border-radius: 9px; background: linear-gradient(105deg, #f0f5fc, #edf3fc); }
  .desktop-vehicle-finder > .d-icon { width: 57px; height: 52px; margin-top: 2px; color: var(--blue); stroke-width: 2; }
  .desktop-vehicle-finder > div { min-width: 0; flex: 1; }
  .desktop-vehicle-finder h2 { margin: 0 0 3px; color: #0a0d13; font-family: 'Store Display', Arial, sans-serif; font-size: 17px; letter-spacing: -.7px; line-height: 1.15; font-weight: 900; }
  .desktop-vehicle-finder p { margin: 0 0 12px; font-size: 13px; line-height: 1.4; color: #747d8a; }
  #vehicle-finder { display: grid; grid-template-columns: 1fr 1fr .73fr; gap: 15px; }
  #vehicle-finder label { display: flex; align-items: center; gap: 12px; min-width: 0; height: 41px; padding: 0 14px; border: 1px solid #d7dde6; border-radius: 6px; color: #131a28; background: white; }
  #vehicle-finder label:focus-within { border-color: var(--blue); box-shadow: 0 0 0 2px #0647f91a; }
  #vehicle-finder label .d-icon { width: 19px; height: 19px; }
  #vehicle-finder input { width: 100%; min-width: 0; border: 0; background: transparent; outline: none; font-size: 13px; color: #131a28; padding: 0; }
  #vehicle-finder input::placeholder { color: #131a28; opacity: 1; }
  #vehicle-finder .field-chevron { width: 8px; height: 8px; margin-top: -4px; pointer-events: none; }
  #vehicle-finder input::-webkit-calendar-picker-indicator { display: none !important; }
  #vehicle-finder button { display: flex; align-items: center; justify-content: center; gap: 18px; min-height: 41px; border: 0; border-radius: 6px; background: var(--blue); color: #fff; font-size: 14px; font-weight: 600; }
  #vehicle-finder button:hover { background: #0035c6; }
  #vehicle-finder button .d-icon { width: 21px; height: 21px; }

  .home-main .store-content { padding: 0; max-width: none; }
  .home-main .categories-section { margin-top: 17px; }
  .desktop-category-heading { display: flex; }
  .home-main .section-heading { margin: 0 0 9px; min-height: 23px; }
  .home-main .section-heading h2 { color: #090c13; font-family: 'Store Display', Arial, sans-serif; font-size: 20px; font-weight: 900; text-transform: uppercase; letter-spacing: -.9px; }
  .home-main .section-heading > a { font-family: 'Store Condensed', Arial, sans-serif; font-size: 14px; font-weight: 500; gap: 8px; }
  .home-main .category-grid { display: none; }
  .desktop-category-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; }
  .desktop-category-card { overflow: hidden; border: 1px solid #e9edf2; border-radius: 7px; background: #fff; box-shadow: 0 2px 5px #15203808; color: #090c13; }
  .category-art { display: block; width: 100%; background: #f3f4f6; }
  .desktop-category-card > span:last-child { display: flex; align-items: center; justify-content: space-between; gap: 5px; height: 40px; padding: 9px 12px; font-size: 14px; font-weight: 650; line-height: 1.2; }
  .desktop-category-card .d-icon { color: var(--blue); width: 15px; }
  .desktop-category-card:hover { border-color: #96b3ff; }
  .home-main .featured-section { margin-top: 23px; }
  .featured-link-mobile { display: none; }
  .featured-link-desktop, .desktop-cart-label { display: inline; }
  .home-main .product-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 13px; }
  .home-main .product-card { display: flex; flex-direction: column; border-radius: 7px; box-shadow: 0 3px 8px #1424440a; }
  .home-main .product-visual { height: clamp(116px, 10.6vw, 158px); padding: 10px 15px 2px; }
  .home-main .product-visual .store-photo { max-width: none; }
  .home-main .favorite-button { width: 26px; height: 26px; top: 6px; right: 5px; color: #111b2d; }
  .home-main .favorite-button.is-favorite { color: var(--blue); }
  .home-main .favorite-button .icon { width: 16px; height: 16px; stroke-width: 1.6; }
  .home-main .product-info { flex: 1; padding: 1px 13px 12px; }
  .home-main .product-brand { display: none; }
  .home-main .product-name { font-size: 14px; line-height: 1.15; min-height: 33px; font-weight: 650; }
  .home-main .product-price { min-height: 25px; margin: 4px 0 0; font-size: 20px; letter-spacing: -.5px; }
  .home-main .desktop-product-reviews { display: flex; align-items: center; gap: 6px; margin: 0 0 6px; min-height: 20px; }
  .desktop-product-reviews > span { color: #f5bb28; font-size: 19px; letter-spacing: -1px; line-height: 1; }
  .desktop-product-reviews small { font-size: 11px; color: #647084; }
  .home-main .add-button { margin-top: auto; min-height: 35px; padding: 7px 6px; gap: 8px; font-size: 12px; border-radius: 5px; }
  .home-main .add-button .icon { width: 19px; height: 19px; }
  .shop-page { max-width: var(--desktop-max); padding: 12px 18px 40px; }
  .shop-layout { grid-template-columns: var(--desktop-sidebar) minmax(0, 1fr); gap: 22px; }
  .shop-results .product-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
  .shop-results .product-card { display: flex; flex-direction: column; border-radius: 7px; }
  .shop-results .product-visual { height: clamp(148px, 13vw, 195px); padding: 19px 20px 6px; }
  .shop-results .product-info { flex: 1; padding: 8px 14px 14px; }
  .shop-results .product-brand { margin-bottom: 5px; }
  .shop-results .product-name { font-size: 13px; line-height: 1.35; min-height: 36px; font-weight: 600; }
  .shop-results .product-price { min-height: 29px; margin: 10px 0 12px; font-size: 22px; }
  .shop-results .add-button { margin-top: auto; min-height: 38px; border-radius: 5px; }

  .site-footer { margin-top: 28px; background: #081526; font-size: 12px; line-height: 1.35; }
  .store-home .site-footer { margin-top: 0; }
  .footer-inner { max-width: var(--desktop-max); padding: 0 44px; }
  .footer-help { display: none; }
  .footer-grid { grid-template-columns: 1.49fr .94fr 1.06fr 1.23fr; gap: 40px; padding: 12px 0 14px; }
  .footer-grid > .footer-column { padding-top: 4px; }
  .footer-logo { width: 164px; padding: 0; background: transparent; border-radius: 0; }
  .footer-logo > img { display: none; }
  .footer-logo-art { display: block; width: 100%; }
  .footer-about { margin: 7px 0 8px; max-width: 230px; }
  .footer-shipping { margin-top: 8px; gap: 9px; font-weight: 600; color: #edf2fc; }
  .footer-shipping .icon { width: 22px; height: 19px; }
  .footer-carriers { display: block; width: 313px; max-width: calc(100% + 35px); margin-top: 4px; }
  .footer-brand > .footer-socials { display: none; }
  .footer-column h3 { margin: 0 0 13px; font-size: 12px; }
  .footer-links { gap: 2px; }
  .footer-links a { min-height: 21px; }
  .footer-contact { gap: 9px; }
  .footer-label { margin-bottom: 2px; font-size: 10px; color: #b1bdd1; }
  .footer-detail, .footer-location { gap: 12px; }
  .footer-contact-link { margin-top: 5px; min-height: 22px; margin-left: 32px; }
  .footer-hours { margin-top: 15px; }
  .footer-detail > .icon, .footer-location > .icon { color: #9fbcff; }
  .footer-lower { display: grid; grid-template-columns: 148px minmax(0, 1fr) 46%; align-items: start; gap: 18px; padding: 12px 0; border-top: 1px solid #ffffff24; }
  .footer-desktop-socials { display: block; }
  .footer-desktop-socials h3, .footer-payment-brands h3 { margin: 0 0 20px; font-size: 11px; color: #f5f7fd; }
  .footer-policies { padding: 0; border: 0; }
  .footer-policies h3 { display: none; }
  .footer-policies > div { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 4px 14px; }
  .footer-policies a { font-size: 10px; line-height: 1.3; }
  .footer-payment-brands { display: block; min-height: 62px; padding-left: 29px; border-left: 1px solid #ffffff24; }
  .footer-payment-brands h3 { margin-bottom: 12px; }
  .payment-art { display: block; width: 100%; max-width: 439px; }
  .footer-service-links { display: block; min-height: 62px; padding-left: 20px; border-left: 1px solid #ffffff24; }
  .footer-service-links a { display: flex; align-items: center; gap: 10px; margin-bottom: 9px; font-size: 12px; }
  .footer-service-links .icon { width: 19px; height: 19px; color: #9fbcff; }
  .footer-bottom { min-height: 28px; padding: 5px 156px; font-size: 10px; }
  .footer-bottom > a { display: none; }
  .store-home .whatsapp-float { display: none; }
  .store-home .whatsapp-float::before, .store-home .whatsapp-float::after { display: none; }
  .store-home .whatsapp-float .icon { width: 27px; height: 27px; }
}
