/* AeroTek customer storefront — final mobile layer */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;overflow-x:hidden}
body{min-width:0;overflow-x:hidden}
img,svg{max-width:100%}
button,a,input,select,textarea{touch-action:manipulation}
button,input,select,textarea{font:inherit}
:focus-visible{outline:3px solid rgba(230,53,48,.4);outline-offset:3px}
@media(max-width:860px){
  .site-header{z-index:80;grid-template-columns:minmax(0,1fr) auto!important;gap:10px;min-height:66px;padding:8px 14px!important}
  .site-header .brand{width:min(184px,52vw)!important;height:46px;margin:0}
  .header-actions{display:flex;align-items:center;gap:7px}
  .account-header-link,.back-to-store{min-height:42px;padding:0 8px;align-items:center}
  .menu-toggle{display:grid!important;width:44px;height:44px;place-items:center;border-radius:8px}
  #primaryNav{position:absolute;top:100%;right:0;left:0;display:none!important;max-height:calc(100dvh - 66px);padding:7px 15px calc(16px + env(safe-area-inset-bottom));overflow:auto;border-top:1px solid rgba(255,255,255,.07);border-bottom:1px solid #383d40;background:rgba(18,20,22,.985);box-shadow:0 20px 45px rgba(0,0,0,.35)}
  #primaryNav.open{display:flex!important}
  #primaryNav a{min-height:51px;padding:14px 3px;border-bottom:1px solid rgba(255,255,255,.1);font-size:.8rem}
  #primaryNav a:last-child{border-bottom:0}
  footer{row-gap:26px}
}
@media(max-width:620px){
  body{font-size:16px}
  .shipping-bar{min-height:30px;padding:7px 12px}
  .shipping-bar span{font-size:.61rem;line-height:1.35}
  .site-header{min-height:64px;padding-inline:12px!important}
  .site-header .brand{width:min(168px,49vw)!important;height:43px}
  .account-header-link{font-size:.62rem;letter-spacing:.06em}
  #primaryNav{max-height:calc(100dvh - 64px)}
  .button,button[type=submit],input,select,textarea{min-height:48px}
  input,select,textarea{font-size:16px!important}

  /* Homepage */
  .hero,.hero__copy{min-height:min(680px,calc(100svh - 94px))!important}
  .hero__copy{justify-content:flex-end!important;padding:74px 16px 68px!important}
  .hero h1{max-width:10ch;font-size:clamp(2.85rem,13.8vw,4.1rem)!important;line-height:.88!important;letter-spacing:-.04em!important}
  .hero__actions{gap:10px;margin-top:25px!important}
  .hero__actions .button{min-height:52px;border-radius:7px}
  .wheel-feature__image{min-height:310px!important}
  .wheel-feature__image img{object-position:center}
  .wheel-feature__copy{padding:44px 16px!important}
  .wheel-feature__copy h2{font-size:clamp(2.45rem,11.8vw,3.55rem)!important;line-height:.9}
  .wheel-feature__copy dl div{grid-template-columns:36px 1fr;gap:10px;padding:15px 0}
  .wheel-feature__copy .button{width:100%;margin-top:25px}
  .fitment{gap:17px;padding:27px 16px 30px!important}
  .fitment h2{font-size:1.45rem;line-height:1.15}
  .fitment__form{gap:10px!important}
  .fitment__form input,.fitment__form select,.fitment__form button{min-height:52px;border-radius:7px}
  .vehicle-makes{padding:58px 14px 64px!important}
  .vehicle-makes__heading h2,.section-heading h2{font-size:clamp(2.35rem,11.5vw,3.4rem)!important;line-height:.9!important}
  .vehicle-makes__grid{gap:10px!important;margin-top:28px!important}
  .vehicle-tile{min-height:190px!important;border-radius:9px;box-shadow:0 8px 22px rgba(0,0,0,.13)}
  .vehicle-tile__image{height:122px!important}
  .vehicle-tile__name{padding:13px 11px 2px!important;line-height:1.25}
  .vehicle-tile__action{padding:0 11px 12px!important}
  .catalogue{padding:60px 14px 72px!important}
  .section-heading{gap:13px;padding:0 0 24px 16px!important}
  .catalogue__tools{gap:10px;margin:19px 0 21px!important;padding:12px!important;border-radius:9px}
  .product-grid{gap:14px!important}
  .product-card{overflow:hidden;border-radius:10px!important;box-shadow:0 12px 30px rgba(15,18,20,.08)!important}
  .product-card__image{aspect-ratio:1.34!important}
  .product-card__body{padding:17px 15px 15px!important}
  .product-card__foot button{width:100%;min-height:48px;border-radius:7px}
  .standard{gap:32px;padding:62px 16px!important}
  .standard h2{font-size:clamp(2.65rem,12vw,3.8rem)!important}
  .standard__points article{gap:11px;padding:17px 0!important}
  .checkout-choice{width:calc(100% - 16px);max-height:calc(100dvh - 16px);overflow:auto;border-radius:12px}
  .checkout-choice form{padding:24px 15px 15px}
  .checkout-choice__head h2{font-size:2rem}
  .checkout-choice__options{gap:8px;margin-top:20px}
  .checkout-choice__option{min-height:86px;padding:15px}
  .cart-panel{width:100%;padding:18px 15px calc(16px + env(safe-area-inset-bottom))}

  /* Custom builder */
  .builder{display:block;width:100%;max-width:none}
  .builder__gallery{display:block;min-height:0!important;padding:36px 15px 18px!important}
  .builder__gallery-head{display:block!important}
  .builder__gallery-head h1{font-size:clamp(3rem,14vw,4rem)!important;line-height:.86}
  .builder__gallery-head>p{margin-top:14px;font-size:.94rem;line-height:1.55}
  .builder__hero-wheel{min-height:265px!important;margin-top:18px!important}
  .builder__hero-wheel img{width:100%!important;max-height:310px;object-fit:contain}
  .builder__config{padding:40px 12px 70px!important}
  .builder__title{padding-inline:3px}
  .builder__title h2{font-size:clamp(2.25rem,10.8vw,3.15rem)!important;line-height:.93}
  .builder__terms-copy{font-size:.93rem;line-height:1.62}
  .builder fieldset{margin:0 0 13px!important;padding:18px 12px!important;border-radius:10px}
  .builder legend{max-width:calc(100% - 10px);padding-inline:7px;font-size:.72rem;white-space:normal}
  .builder legend span{flex:0 0 auto}
  .form-grid,.form-grid--three,.form-grid--contact{grid-template-columns:1fr!important;gap:14px!important}
  .form-grid .wide{grid-column:1!important}
  .builder label{min-width:0}
  .builder input,.builder select,.builder textarea{width:100%;min-width:0;min-height:50px;border-radius:7px}
  .visual-option-grid{grid-template-columns:1fr!important;gap:10px!important}
  .visual-choice,.visual-choice:last-child{grid-column:auto!important;width:100%!important;max-width:none!important;border-radius:9px}
  .visual-choice__image{min-height:230px!important;padding:8px!important}
  .visual-choice strong{min-height:46px}
  .swatch-grid,.carbon-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .swatch,.carbon-choice{min-width:0}
  .swatch span,.carbon-choice span{min-height:126px}
  .stitch-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px}
  .stitch-choice span{min-height:48px;padding:10px}
  .feature-grid{grid-template-columns:1fr!important;gap:8px}
  .feature-choice span{min-height:76px;border-radius:8px}
  .configuration-block{padding:15px 0}
  .conditional-option{margin-top:12px;padding:13px}
  .live-build-preview{grid-template-columns:1fr!important;min-height:0;border-radius:9px}
  .live-build-preview__visual,.live-build-preview__visual>img{min-height:270px!important}
  .live-build-preview__details{padding:21px 15px!important;border-left:0!important;border-top:1px solid #303538}
  .live-build-preview__details h3{font-size:2rem!important;margin-bottom:18px}
  .reference-upload__drop{min-height:128px;border-radius:8px}
  .reference-upload__previews{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .builder__submit{position:relative;align-items:stretch;flex-direction:column;gap:14px;padding-top:24px}
  .builder__submit button{width:100%;min-height:54px;border-radius:8px}

  /* Account */
  .auth-shell{grid-template-columns:1fr!important;gap:10px;margin:18px auto 58px!important;padding:0 10px!important}
  .auth-card{padding:27px 18px!important;border-radius:10px}
  .auth-card h2{margin-bottom:23px;font-size:clamp(2.25rem,11vw,3.15rem)!important}
  .auth-card form{gap:15px}
  .auth-card input{height:52px!important;border-radius:7px}
  .account-dashboard{padding:36px 10px 68px!important}
  .account-dashboard__head{gap:17px;padding-bottom:26px}
  .account-dashboard__head h2{font-size:clamp(2.6rem,12vw,3.6rem)!important}
  .account-dashboard__head>button{width:100%;min-height:48px;border-radius:7px}
  .account-section{margin-top:14px;padding:20px 13px!important;border-radius:10px}
  .account-section__title{align-items:flex-start;gap:11px;margin-bottom:20px}
  .account-section h3{font-size:1.55rem}
  .promo-grid{grid-template-columns:1fr!important}
  .promo-card{min-height:150px;padding:21px;border-radius:8px}
  .order-card{grid-template-columns:1fr!important;gap:12px;padding:17px!important;border-radius:8px}
  .order-card__detail{grid-column:auto!important;grid-row:auto!important}
  .order-card__status{justify-self:start}

  /* Previous work and policies */
  .works-page,.policy-page{padding-top:0!important}
  .works-hero,.policy-hero{padding:48px 15px 37px!important}
  .works-hero h1,.policy-hero h1{font-size:clamp(2.8rem,13vw,4rem)!important;line-height:.87}
  .works-grid{gap:13px;padding:18px 10px 44px!important}
  .works-card,.works-card--feature{border-radius:9px}
  .works-card__image,.works-card--feature .works-card__image{aspect-ratio:1/1!important}
  .works-card figcaption{gap:7px;padding:15px!important}
  .works-cta{gap:22px;padding:43px 15px!important}
  .works-cta h2{font-size:2.5rem}
  .policy-layout{gap:16px;padding:15px 10px 48px!important}
  .policy-layout aside{margin:0 -10px;padding:0 10px 7px;scrollbar-width:none}
  .policy-content{border-radius:9px}
  .policy-content article{gap:13px;padding:22px 15px!important}
  .policy-content h2{font-size:1.35rem}
  .policy-content p{font-size:.96rem;line-height:1.7}

  /* Invoice */
  .invoice-shell{padding:10px 7px calc(34px + env(safe-area-inset-bottom))!important}
  .invoice-card{border-top-width:5px;border-radius:9px;box-shadow:0 12px 35px rgba(0,0,0,.12)}
  .invoice-card__head{align-items:center;padding:17px 13px!important}
  .invoice-card__head img{width:170px;max-width:62%!important}
  .invoice-card__status{font-size:.57rem}
  .invoice-card__body{padding:20px 13px!important}
  .invoice-card h1{font-size:clamp(2.1rem,10vw,2.8rem)!important}
  .invoice-meta{grid-template-columns:1fr!important;gap:8px}
  .invoice-meta div{padding:13px}
  .invoice-options{grid-template-columns:1fr!important}
  .invoice-total{align-items:stretch!important;flex-direction:column;gap:18px}
  .invoice-total strong{font-size:2.2rem}
  .invoice-total button{width:100%;min-height:54px;border-radius:8px}
  .invoice-concept__wheel,.invoice-concept__wheel>img{min-height:245px!important}

  footer{grid-template-columns:1fr!important;gap:24px!important;padding:42px 16px calc(20px + env(safe-area-inset-bottom))!important}
  footer .footer-brand{grid-column:auto!important}
  footer img{max-width:245px}
  footer a{min-height:40px;padding:8px 0}
}
@media(max-width:370px){
  .site-header .brand{width:145px!important}
  .account-header-link{display:none}
  .vehicle-makes__grid{grid-template-columns:1fr!important}
  .vehicle-tile{min-height:220px!important}
  .vehicle-tile__image{height:150px!important}
  .swatch-grid,.carbon-grid{grid-template-columns:1fr 1fr!important}
  .stitch-grid{grid-template-columns:1fr!important}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}

/* Custom request label clearance */
.swatch--request span,
.carbon-choice--request span{
  align-items:flex-end!important;
  justify-content:center!important;
  padding:0 6px 34px!important;
  text-align:center;
}
