/* Mobile storefront layout. Desktop styles stay in the existing theme. */
.vidy-menu-toggle{display:none}
@media(max-width:767px){
  .announcement{padding:7px 16px;font-size:12px;line-height:1.5}
  .vidy-site-header{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;padding:12px 16px;margin:0;max-width:none;align-items:center}
  .vidy-site-header>.logo{grid-column:1;grid-row:1;font-size:21px;white-space:nowrap;line-height:1.25;min-width:0}
  .vidy-site-header>.bag{grid-column:2;grid-row:1;justify-self:end;font-size:12px;min-height:44px;gap:4px!important;margin:0}
  .vidy-site-header>.bag span{width:21px;height:21px;margin-left:0;font-size:11px}
  .vidy-site-header>.bag svg{width:19px;height:19px}
  .vidy-mobile-ready .vidy-menu-toggle{display:inline-flex;grid-column:3;grid-row:1;align-items:center;justify-content:center;gap:5px;min-height:44px;padding:8px;border:1px solid var(--line);border-radius:6px;background:transparent;color:#111;font-size:12px;margin:0}
  .vidy-site-header>nav{grid-column:1/-1;grid-row:2;order:initial;display:grid;grid-template-columns:1fr 1fr;gap:2px 10px;justify-content:start;width:100%;padding:12px 0;border-top:1px solid var(--line);margin:4px 0 0;font-size:14px}
  .vidy-site-header>nav a{display:flex;align-items:center;min-height:44px;padding:8px 4px;line-height:1.4}
  .vidy-site-header>.vidy-currency{grid-column:1/-1;grid-row:3;width:100%;max-width:none;min-width:0;margin:0;padding:8px 0;gap:5px}
  .vidy-site-header>.vidy-currency label{margin:0;font-size:11px}
  .vidy-site-header>.vidy-currency select{min-height:44px;font-size:16px;width:100%}
  .vidy-site-header>.vidy-currency small{font-size:11px}
  .vidy-site-header>.vidy-language{grid-column:1/-1;grid-row:4;width:100%;min-width:0;justify-content:space-between;margin:0;padding:0 0 8px}
  .vidy-site-header>.vidy-language label{position:static;width:auto;height:auto;clip:auto;overflow:visible;font-size:12px}
  .vidy-site-header>.vidy-language select{font-size:16px;min-height:44px;width:60%;max-width:240px}
  .vidy-mobile-ready:not(.vidy-menu-open)>nav,
  .vidy-mobile-ready:not(.vidy-menu-open)>.vidy-currency,
  .vidy-mobile-ready:not(.vidy-menu-open)>.vidy-language{display:none}
  .vidy-category-row{display:flex;flex-direction:column;align-items:stretch;gap:10px;padding:10px 16px 12px}
  .vidy-category-row>.vidy-search-bar{order:0;flex:initial;width:100%;max-width:none}
  .vidy-product-search{height:44px;border-width:1px;box-shadow:none}
  .vidy-product-search input[type=search]{font-size:16px;padding:10px 12px}
  .vidy-product-search button{width:44px}
  .vidy-category-row>.category-nav{order:1;display:flex;flex:initial;flex-wrap:nowrap;justify-content:flex-start;gap:6px;width:100%;min-width:0;padding:0 0 3px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}
  .category-nav a{flex:0 0 auto;display:flex;align-items:center;min-height:40px;padding:8px 12px;border:1px solid var(--line);border-radius:6px;font-size:12px;background:#fff}
  .category-nav a[aria-current=page]{border-color:#b51c38}
  .shopify-hero{height:auto;overflow:hidden}
  .shopify-hero-image{position:relative;display:block;width:100%;height:auto;object-fit:contain;object-position:center}
  .hero-container{height:auto;padding:0}
  .hero-copy{width:100%;max-width:none;padding:24px 20px;text-align:left;background:var(--paper)}
  .hero-copy h1{font-size:28px;line-height:1.18;letter-spacing:-.5px;margin:0 0 12px}
  .hero-copy p{font-size:14px;line-height:1.65;margin:0 0 12px;color:var(--muted)}
  .hero-copy .button{display:block;min-height:46px;margin:12px 0 0;text-align:center;padding:13px 16px;border-radius:5px}
  .section{width:auto;max-width:100%;margin:0 auto;padding:26px 16px}
  .section h2{font-size:24px;line-height:1.25;margin:0 0 18px}
  .collection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 12px}
  .collection-card{min-width:0}
  .collection-image{border-radius:8px}
  .collection-card h3{font-size:14px;line-height:1.4;margin:10px 0 0;overflow-wrap:anywhere}
  .service-section{padding-top:12px;padding-bottom:30px}
  .service-grid{grid-template-columns:1fr;gap:0}
  .service-grid article{padding:20px 0;border-top:1px solid var(--line)}
  .service-grid h3{font-size:18px;margin:0 0 8px}
  .service-grid p{min-height:0;font-size:14px;margin:0 0 12px}
  .service-grid .text-link{display:inline-block;padding:8px 0;font-size:13px}
  .woocommerce-page #main,.woocommerce-page main.woo-main{margin:0 auto;padding:24px 16px;width:auto;max-width:100%}
  .woocommerce .woocommerce-breadcrumb{font-size:12px;line-height:1.5;overflow-wrap:anywhere;margin-bottom:16px}
  .woocommerce-page .page-title{font-size:26px;line-height:1.25;letter-spacing:0;margin:0 0 18px}
  .woocommerce .woocommerce-result-count{font-size:12px;float:none;margin:0 0 10px}
  .woocommerce .woocommerce-ordering{float:none;width:100%;margin:0 0 20px}
  .woocommerce .woocommerce-ordering select{width:100%;max-width:100%;font-size:16px;min-height:44px;padding:10px}
  .woocommerce ul.products[class*="columns-"]{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 12px}
  .woocommerce ul.products li.product .woocommerce-loop-product__link{padding-top:24px}
  .woocommerce ul.products li.product a img{padding:4px;margin-bottom:10px;border-radius:8px}
  .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:13px;line-height:1.45;min-height:37.7px;max-height:37.7px;margin-bottom:7px}
  .woocommerce ul.products li.product .price{font-size:13px;line-height:1.5;margin-bottom:12px}
  .woocommerce ul.products li.product a.button{min-height:44px;font-size:12px;padding:12px 8px;line-height:20px;border-radius:5px}
  .woocommerce div.product div.images,.woocommerce div.product div.summary{float:none!important;width:100%!important;min-width:0;margin-bottom:24px}
  .woocommerce div.product div.images img{max-width:100%;height:auto;object-fit:contain}
  .woocommerce div.product .product_title{font-size:23px;line-height:1.3;letter-spacing:0;margin:0 0 14px;overflow-wrap:anywhere}
  .woocommerce div.product p.price,.woocommerce div.product span.price{font-size:21px;line-height:1.5}
  .woocommerce-product-details__short-description{font-size:14px;line-height:1.7}
  .woocommerce div.product form.cart{margin:20px 0}
  .woocommerce div.product form.cart .variations{margin-bottom:16px}
  .woocommerce div.product form.cart .variations label{margin:0 0 6px;font-size:14px}
  .woocommerce div.product form.cart .vidy-option-buttons{gap:8px}
  .woocommerce div.product form.cart .vidy-option-buttons button{font-size:13px;line-height:1.4;padding:10px 14px;border-width:1px;border-radius:6px;min-height:44px;max-width:100%;overflow-wrap:anywhere}
  .woocommerce div.product form.cart .single_add_to_cart_button{float:none;width:100%;margin:12px 0 0;min-height:48px}
  .woocommerce div.product form.cart .quantity{float:none;margin:0 0 10px}
  .woocommerce div.product .woocommerce-tabs ul.tabs{display:flex;gap:4px;overflow-x:auto;padding:0;margin-bottom:20px}
  .woocommerce div.product .woocommerce-tabs ul.tabs li{flex:0 0 auto;margin:0;padding:0 12px}
  .woocommerce div.product .woocommerce-tabs ul.tabs li a{font-size:13px;min-height:44px;padding:12px 0}
  .woocommerce div.product .woocommerce-tabs .panel{font-size:14px;line-height:1.7;overflow-wrap:anywhere}
  .woocommerce div.product .woocommerce-tabs .panel img{max-width:100%;height:auto}
  .woocommerce .woocommerce-message,.woocommerce .woocommerce-info,.woocommerce .woocommerce-error{font-size:13px;line-height:1.6;padding-right:16px;overflow-wrap:anywhere}
  .woocommerce form .form-row{padding:0;margin-bottom:14px}
  .woocommerce form .form-row-first,.woocommerce form .form-row-last{float:none;width:100%}
  .woocommerce form input.input-text,.woocommerce form textarea,.woocommerce form select{max-width:100%;font-size:16px;min-height:44px}
  .woocommerce .col2-set .col-1,.woocommerce .col2-set .col-2{float:none;width:100%}
  .woocommerce-cart .wc-proceed-to-checkout a.checkout-button{font-size:16px;padding:15px}
  .vidy-artwork{padding:14px;max-width:100%;min-width:0}
  .vidy-artwork fieldset{min-width:0;max-width:100%}
  .vidy-artwork input[type=file]{font-size:13px;width:100%}
  .prose{margin:0 auto;padding:28px 16px;overflow-wrap:anywhere}
  .prose h1{font-size:28px;line-height:1.25;letter-spacing:0;margin:0 0 20px}
  footer{padding:28px 16px 36px}
  footer>.logo{font-size:22px}
  footer p{font-size:13px;margin:12px 0}
  footer nav{display:grid;grid-template-columns:1fr 1fr;gap:0 20px;margin:18px 0}
  footer nav a{display:flex;align-items:center;min-height:44px;font-size:13px}
  footer small{font-size:11px}
}
@media(max-width:359px){
  .vidy-site-header{padding-right:12px;padding-left:12px;gap:5px}
  .vidy-site-header>.logo{font-size:19px}
  .vidy-site-header>.bag{font-size:11px}
  .vidy-menu-toggle{padding:7px}
}
