/* Mobile storefront: readable content, reachable controls, native WooCommerce forms. */
@media (max-width: 1000px) {
  .td-header-nav { display:grid; grid-template-columns:minmax(0,1fr) 48px; gap:12px; }
  .td-header-nav>.td-contact-links { display:none; }
  .td-header-nav .td-departments { min-width:0; width:min(100%,330px); }
  .td-header-nav>.td-navigation { width:48px; justify-self:end; }
  .td-navigation .wp-block-navigation__responsive-container:not(.is-menu-open) { display:none; }
  .td-navigation .wp-block-navigation__responsive-container-open { display:flex; align-items:center; justify-content:center; width:48px; height:46px; border:1px solid #ffffff45; border-radius:12px; }
  .td-navigation .wp-block-navigation__responsive-container.is-menu-open { background:#000!important; color:#fff!important; }
  .td-navigation .wp-block-navigation__responsive-container.is-menu-open a { color:#fff!important; }
}
@media (max-width: 767px) {
  .td-shell { width:calc(100% - 32px); }
  .td-header .td-topline { display:none; }
  .td-header-main { display:grid; grid-template-columns:minmax(0,1fr) 48px; gap:8px 12px; padding:6px 0; }
  .td-header .td-logo,.td-header .td-logo img { width:144px; max-width:100%; }
  .td-header .td-logo { min-width:0; margin:0; }
  .td-header .td-logo img { display:block; height:auto; }
  .td-header .td-search { grid-column:1/-1; grid-row:2; width:100%; margin:0; }
  .td-search .wp-block-search__inside-wrapper { min-height:48px; }
  .td-search input { min-width:0; font-size:16px; line-height:1.4; padding:10px 14px; }
  .td-search button { min-width:48px; padding:10px; }
  .td-header .td-mini-cart { grid-column:2; grid-row:1; justify-self:end; }
  .td-mini-cart button { min-width:48px; min-height:48px; padding:10px; }
  .td-header-main .td-account-link { display:none; }
  .td-header-nav { display:grid; grid-template-columns:minmax(0,1fr) 48px; gap:12px; padding:6px 0 10px; }
  .td-header-nav>.td-contact-links { display:none; }
  .td-header-nav .td-departments { width:100%; min-width:0; }
  .td-departments>summary { box-sizing:border-box; min-height:46px; padding:11px 14px; font-size:13px; border-radius:12px; }
  .td-departments-panel { box-sizing:border-box; width:min(330px,calc(100vw - 32px)); max-height:65dvh; overflow-y:auto; overscroll-behavior:contain; border-radius:0 0 14px 14px; }
  .td-departments-panel .td-all-products,.td-category-links>li>a { min-height:44px; box-sizing:border-box; font-size:13px; }
  .td-category-links .td-category-links a { min-height:40px; font-size:12px; }
  .td-header-nav>.td-navigation { width:48px; min-width:0; justify-self:end; }
  .td-navigation .wp-block-navigation__responsive-container-open { width:48px; height:46px; display:flex; align-items:center; justify-content:center; border:1px solid #ffffff45; border-radius:12px; }
  .td-navigation .wp-block-navigation__responsive-container-open svg { width:25px; height:25px; }
  .td-navigation .wp-block-navigation__responsive-container.is-menu-open { box-sizing:border-box; padding:70px 24px 30px; overflow-y:auto; }
  .td-navigation .is-menu-open .wp-block-navigation__responsive-container-content { padding-top:10px; align-items:stretch; }
  .td-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { align-items:stretch; width:100%; gap:6px; }
  .td-navigation .is-menu-open .wp-block-navigation-item { width:100%; }
  .td-navigation .is-menu-open .wp-block-navigation-item>a { box-sizing:border-box; display:flex; align-items:center; min-height:48px; width:100%; padding:10px 0; font-size:20px; line-height:1.4; border-bottom:1px solid #ffffff20; }
  .td-navigation .wp-block-navigation__responsive-container-close { position:fixed; top:16px; right:16px; width:46px; height:46px; display:flex; align-items:center; justify-content:center; }

  .td-hero-layout { display:block; min-height:0; padding:0; }
  .td-hero-copy { box-sizing:border-box; width:100%; padding:24px 0 215px; }
  .td-hero .td-hero-brand-logo { margin-bottom:10px!important; }
  .td-hero .td-hero-brand-logo img { width:135px; height:auto; }
  .td-authorized { font-size:9px; line-height:1.6; letter-spacing:.08em; margin:0 0 16px!important; }
  .td-hero-title { font-size:clamp(36px,10vw,44px); line-height:1.06; letter-spacing:-.035em; margin:0 0 18px!important; }
  .td-hero-lead { font-size:14px; line-height:1.6; max-width:340px; margin:0 0 20px!important; }
  .td-hero-lead br { display:initial; }
  .td-hero .wp-block-button__link { box-sizing:border-box; min-height:48px; display:inline-flex; align-items:center; font-size:13px; padding:12px 20px; }
  .td-hero-signatures { gap:8px 14px; margin-top:18px!important; }
  .td-hero-signatures p { font-size:9px!important; line-height:1.7; }
  .td-hero-scene { inset:auto 0 0; height:250px; }
  .td-hero-scene img { object-position:60% 55%; }
  .td-hero:after { background:linear-gradient(180deg,#070807 0%,#070807 57%,rgba(7,8,7,.9) 66%,rgba(7,8,7,.15) 78%,transparent 100%); }

  .td-home-content { padding-top:16px; }
  .td-category { height:170px; }
  .td-category-copy>p { font-size:11px; line-height:1.5; }
  .td-category h3 { font-size:16px; line-height:1.3; }
  .td-category-accessories { height:150px; }
  .td-title-stack h2 { font-size:26px; }
  .td-title-stack .td-eyebrow,.td-eyebrow { font-size:10px; line-height:1.6; }
  .td-section-heading { flex-direction:column; align-items:flex-start; gap:8px; }
  .td-section-heading>.wp-block-buttons { max-width:none; }
  .td-section-heading .wp-block-button__link { min-height:40px; display:inline-flex; align-items:center; font-size:13px; }
  .td-brands-controls button { min-width:44px; min-height:44px; }
  .td-brands-intro h2 { font-size:22px; max-width:none; }
  .td-brands-intro h2 br { display:initial; }
  .td-brand-slide { padding:22px; min-height:184px; }
  .td-brand-slide div>span { font-size:12px; }
  .td-brand-slide strong { font-size:16px; }

  .woocommerce ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  .woocommerce ul.products li.product { box-sizing:border-box; display:flex; flex-direction:column; min-width:0; padding:11px!important; }
  .woocommerce ul.products li.product>a.woocommerce-LoopProduct-link { display:flex; flex-direction:column; flex:1; min-width:0; }
  .woocommerce ul.products li.product a img { height:148px; width:100%; object-fit:contain; margin-bottom:14px; }
  .woocommerce ul.products li.product .woocommerce-loop-product__title { font-size:13px!important; line-height:1.45; min-height:2.9em; overflow-wrap:break-word; }
  .woocommerce ul.products li.product .td-card-category { font-size:9px; line-height:1.6; }
  .woocommerce ul.products li.product .td-card-summary { font-size:11px!important; line-height:1.6; min-height:0; margin-bottom:10px!important; }
  .woocommerce ul.products li.product .price { font-size:20px; line-height:1.4; margin-top:auto!important; padding-top:10px; }
  .woocommerce ul.products li.product .price .woocommerce-price-suffix { display:block; margin:3px 0 0; font-size:10px!important; }
  .woocommerce ul.products li.product .button { box-sizing:border-box; display:flex; justify-content:center; align-items:center; width:100%; min-height:46px; padding:10px 6px!important; font-size:12px!important; line-height:1.4; text-align:center; white-space:normal; }
  .td-store-results { padding:16px 10px; }
  .td-filter-panel>summary { min-height:48px; box-sizing:border-box; font-size:14px; }
  .td-filter-content .woocommerce-product-search input { font-size:16px; min-height:48px; }
  .td-filter-content .woocommerce-product-search button { font-size:13px; min-height:48px; }
  .td-filter-content .td-brand-links a { font-size:14px; min-height:44px; box-sizing:border-box; }
  .td-store-results .woocommerce-result-count { font-size:13px; line-height:1.6; }
  .td-store-results .woocommerce-ordering { float:none; width:100%; }
  .td-store-results .woocommerce-ordering select { box-sizing:border-box; width:100%; max-width:100%; min-height:48px; font-size:16px; }
  .td-view-controls button { min-height:44px; padding:10px 12px; font-size:12px; }
  .td-store-results.td-list-view ul.products li.product>a.woocommerce-LoopProduct-link { display:grid!important; }
  .td-store-results.td-list-view ul.products li.product>.button { width:100%; margin:12px 0 0!important; }

  .td-page,.td-woo-main { padding-top:22px; }
  .single-product.woocommerce div.product { padding:12px; }
  .single-product.woocommerce div.product div.images { padding:4px; }
  .single-product.woocommerce div.product .product_title { font-size:28px; line-height:1.15; overflow-wrap:break-word; }
  .single-product .td-product-kicker { font-size:10px!important; line-height:1.6; }
  .single-product .td-product-spec strong { font-size:16px; }
  .single-product .td-product-spec span { font-size:9px; line-height:1.5; }
  .single-product .summary .price { font-size:30px; }
  .td-tax-breakdown { font-size:12px!important; gap:8px 12px; }
  .single-product .woocommerce-product-details__short-description { font-size:15px; line-height:1.75; }
  .single-product.woocommerce div.product form.cart { display:flex; flex-wrap:wrap; gap:12px; }
  .single-product.woocommerce div.product form.cart .quantity { margin:0; }
  .single-product.woocommerce div.product form.cart .single_add_to_cart_button { min-height:48px; flex:1; margin:0; padding:12px 18px; font-size:16px; }
  .single-product.woocommerce div.product form.variations_form { display:block; }
  .single-product .woocommerce-variation-add-to-cart { display:flex; gap:12px; }
  .single-product .variations select { min-height:48px; font-size:16px; }
  .single-product.woocommerce div.product .woocommerce-tabs ul.tabs { display:flex; flex-wrap:nowrap; overflow-x:auto; gap:0; }
  .single-product.woocommerce div.product .woocommerce-tabs ul.tabs li { flex-shrink:0; }
  .single-product.woocommerce div.product .woocommerce-tabs ul.tabs li a { display:inline-flex; align-items:center; min-height:46px; box-sizing:border-box; font-size:14px; }
  .td-detail-features>section { padding:20px; }
  .single-product .woocommerce-tabs .panel .td-detail-features p,.td-product-overview p,.td-product-notes p { font-size:14px; line-height:1.8; }
  .td-product-notes summary { min-height:44px; display:flex; align-items:center; font-size:14px; }
  .woocommerce .woocommerce-breadcrumb { font-size:11px; line-height:1.8; }

  .woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select { box-sizing:border-box; width:100%; min-height:48px; font-size:16px; padding:12px; }
  .woocommerce form .form-row label { font-size:14px; line-height:1.65; margin-bottom:6px; }
  .woocommerce form .form-row { padding:0; margin-bottom:18px; }
  .woocommerce form .form-row-first,.woocommerce form .form-row-last { float:none; width:100%; }
  .woocommerce-checkout .col2-set,.woocommerce-checkout .col2-set .col-1,.woocommerce-checkout .col2-set .col-2 { float:none; width:100%; }
  .woocommerce-checkout #order_review,.woocommerce-checkout #order_review_heading { float:none; width:100%; }
  .woocommerce-checkout .select2-container .select2-selection--single { min-height:48px; display:flex; align-items:center; }
  .woocommerce-checkout .select2-container .select2-selection__rendered { font-size:16px; line-height:1.5; padding-left:12px; }
  .woocommerce-checkout .select2-container .select2-selection__arrow { top:12px; }
  .woocommerce-checkout .select2-container { width:100%!important; }
  .woocommerce-checkout #payment div.payment_box,.woocommerce-checkout .woocommerce-privacy-policy-text,.woocommerce-checkout .woocommerce-terms-and-conditions-checkbox-text { font-size:14px; line-height:1.75; }
  .woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .form-row { padding:10px 0; }
  .woocommerce-checkout #terms { width:20px; height:20px; vertical-align:middle; margin-right:8px; }
  .woocommerce-checkout #place_order { float:none; width:100%; min-height:52px; font-size:16px; }
  .woocommerce-checkout table.shop_table { font-size:14px; }
  .woocommerce-checkout table.shop_table th,.woocommerce-checkout table.shop_table td { padding:12px 8px; overflow-wrap:break-word; }
  .woocommerce-cart table.shop_table { font-size:14px; }
  .woocommerce-cart table.cart td.actions .coupon { display:flex; flex-wrap:wrap; gap:10px; }
  .woocommerce-cart table.cart td.actions .coupon #coupon_code { min-width:0; width:100%; min-height:48px; font-size:16px; }
  .woocommerce-cart table.cart td.actions .coupon .button { width:100%; min-height:46px; font-size:14px; }
  .woocommerce-cart .cart_totals .checkout-button { min-height:52px; box-sizing:border-box; display:flex; align-items:center; justify-content:center; font-size:16px; }
  .woocommerce a.remove { min-width:40px; min-height:40px; display:inline-flex; align-items:center; justify-content:center; }
  .td-request-notice { font-size:14px!important; padding:16px!important; }

  .td-whatsapp-float { right:16px; bottom:calc(16px + env(safe-area-inset-bottom,0px)); }
  .td-whatsapp-float .td-wa-float-label { display:none; }
  .td-wa-float-icon { width:54px; height:54px; flex-basis:54px; }
  .td-footer { margin-top:28px; }
  .td-footer h3 { font-size:16px; }
  .td-footer-item strong,.td-footer-address,.td-footer p,.td-footer-menu a,.td-footer-contact a { font-size:14px; line-height:1.8; }
  .td-footer a { overflow-wrap:anywhere; }
  .td-policy-links { gap:10px 18px; }
  .td-policy-links a { display:inline-flex; align-items:center; min-height:40px; font-size:12px; }
  .td-warranty-page .td-policy-lead { font-size:17px; line-height:1.7; }
  .td-warranty-page p,.td-warranty-page li { font-size:15px; line-height:1.85; }
}
@media (max-width: 560px) {
  .td-filter-content { grid-template-columns:minmax(0,1fr); }
  .td-filter-content .woocommerce-product-search { flex-direction:column; }
  .td-filter-content .woocommerce-product-search button { width:100%; }
}
@media (max-width: 359px) {
  .td-shell { width:calc(100% - 24px); }
  .woocommerce ul.products { gap:8px; }
  .woocommerce ul.products li.product { padding:8px!important; }
  .woocommerce ul.products li.product a img { height:126px; }
  .woocommerce ul.products li.product .woocommerce-loop-product__title { font-size:12px!important; }
  .woocommerce ul.products li.product .button { font-size:11px!important; }
  .td-hero-title { font-size:36px; }
}
