/* Demo 2 — polished minimal storefront. Scoped: theme classic remains unchanged. */
body.storefront.theme-demo2{--d2-ink:#253a33;--d2-muted:#7b8581;--d2-line:#edece7;--d2-accent:#294239;--d2-cream:#f7f6f2;--d2-panel:#fff;--d2-radius:18px;background:#fafaf8;color:var(--d2-ink);overflow-x:clip;font-size:14px}
.theme-demo2 :where(h1,h2,h3,strong,b){color:var(--d2-ink)}
.theme-demo2 :where(a,button,input,select){-webkit-tap-highlight-color:transparent}
.theme-demo2 :where(.demo2-home,.demo2-shop-page,.demo2-product-shell){min-width:0}
.theme-demo2 .container{width:min(calc(100% - 32px),1230px);max-width:1230px}
.theme-demo2 .store-promo-bar{display:block;background:#24473e;color:#fff;padding:5px 0}
.theme-demo2 .store-promo-bar b{font-size:11px;color:#fff}
.theme-demo2 .store-promo-bar .promo-dot{background:#d8eadb}
.theme-demo2 .store-promo-bar a{color:#fff}
/* Top bar — independent from classic shop header */
.theme-demo2 .demo2-store-header{padding:0;border:0;background:#fff;box-shadow:none}
.theme-demo2 .demo2-header-top,.theme-demo2 .demo2-header-nav-wrap{border:0;border-radius:0;box-shadow:none;background:#fff}
.theme-demo2 .demo2-header-top{grid-template-columns:minmax(220px,1fr) minmax(240px,1.18fr) minmax(170px,.8fr);width:min(calc(100% - 32px),1230px);gap:22px;padding:12px 0;min-height:74px}
.theme-demo2 .demo2-logo{justify-content:flex-start;flex-direction:row-reverse;gap:7px}
.theme-demo2 .demo2-logo .logo-mark{background:var(--d2-accent);color:#fff;border-radius:10px;font-size:17px;width:36px;height:36px}
.theme-demo2 .demo2-logo img{width:43px;height:43px;padding:0;background:transparent;border-radius:8px}
.theme-demo2 .demo2-logo .demo2-brand-copy b{font-size:17px;font-weight:850;color:var(--d2-ink)}
.theme-demo2 .demo2-logo .demo2-brand-copy small{display:none}
.theme-demo2 .demo2-header-actions{gap:7px}
.theme-demo2 .demo2-mini-link{border:0;background:transparent;border-radius:8px;min-width:42px;padding:8px;color:#2b3f37;font-size:12px}
.theme-demo2 .demo2-mini-link svg{width:20px;height:20px}
.theme-demo2 .demo2-search{border:0;border-radius:12px;background:#f6f6f4;min-height:45px;padding:4px 8px}
.theme-demo2 .demo2-search button{background:transparent;color:var(--d2-accent);order:-1;width:31px;height:31px}
.theme-demo2 .demo2-search input{font-size:12px;text-align:right}
.theme-demo2 .demo2-header-nav-wrap{margin-top:0;padding:0;border-top:1px solid #f2f0ec;border-bottom:1px solid #ecece7}
.theme-demo2 .demo2-header-nav{gap:20px;min-height:46px;align-items:center}
.theme-demo2 .demo2-header-nav>a,.theme-demo2 .demo2-header-nav>ul>li>a{font-size:12px;font-weight:650;color:#3e514a;text-decoration:none}
.theme-demo2 .demo2-nav-root,.theme-demo2 .demo2-nav-chip{background:transparent;border-radius:0;padding:8px 0}
.theme-demo2 .demo2-header-nav .desktop-custom-menu{display:flex;gap:18px;list-style:none;padding:0;margin:0;align-items:center}
.theme-demo2 .demo2-header-nav .desktop-custom-menu>li{position:relative}
.theme-demo2 .demo2-header-nav .desktop-custom-menu>li>.submenu{display:none;position:absolute;top:100%;right:0;min-width:170px;z-index:20;background:#fff;padding:12px;border:1px solid var(--d2-line);border-radius:12px;box-shadow:0 15px 25px #22372b16}
.theme-demo2 .demo2-header-nav .desktop-custom-menu>li:hover>.submenu,.theme-demo2 .demo2-header-nav .desktop-custom-menu>li:focus-within>.submenu{display:block}
.theme-demo2 .d2-mobile-header{display:none}
/* Homepage: every section is a real builder widget */
.theme-demo2 .demo2-home.home-sections-flow{display:flex;flex-direction:column;gap:0;max-width:none;padding:0;margin:0}
.theme-demo2 .demo2-home [data-home-section]{min-width:0;flex:none;margin-top:22px;border-radius:var(--widget-radius,18px);padding:var(--widget-padding,18px);background:var(--widget-surface,#fff);color:var(--widget-ink,var(--d2-ink));border:1px solid var(--d2-line);box-shadow:none}
.theme-demo2 .demo2-home [data-home-section][data-hide-on-desktop="1"]{display:none!important}
.theme-demo2 .d2-hero-widget{display:grid;grid-template-columns:1.12fr .88fr;min-height:330px;gap:28px;padding:0!important;position:relative;overflow:hidden}
.theme-demo2 .d2-hero-media{grid-column:1;grid-row:1;background:#f1eee7;min-width:0;display:flex;align-items:center;justify-content:center;overflow:hidden}
.theme-demo2 .d2-hero-media img{width:100%;height:100%;max-height:420px;object-fit:cover}
.theme-demo2 .d2-hero-media>span{font-size:96px;color:#c2cab9}
.theme-demo2 .d2-hero-copy{grid-column:2;grid-row:1;min-width:0;display:flex;flex-direction:column;justify-content:center;padding:30px 24px}
.theme-demo2 .d2-hero-copy small{font-size:12px;color:#87978d;margin-bottom:6px}
.theme-demo2 .d2-hero-copy h1{font-size:clamp(23px,2.7vw,34px);line-height:1.55;font-weight:900;letter-spacing:-.02em;margin:0;color:var(--d2-ink)}
.theme-demo2 .d2-hero-copy p{font-size:13px;line-height:2;max-width:450px;margin:11px 0 18px;color:#697a71}
.theme-demo2 .d2-primary-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;align-self:flex-start;min-height:41px;border-radius:999px;background:var(--d2-accent);color:#fff!important;font-weight:750;font-size:12px;padding:9px 23px;text-decoration:none;border:0}
.theme-demo2 .d2-widget{display:block}
.theme-demo2 .d2-section-title{display:flex;align-items:end;justify-content:space-between;gap:14px;margin-bottom:16px}
.theme-demo2 .d2-section-title h2{font-size:var(--widget-title-desktop,20px);font-weight:850;margin:0;line-height:1.6;color:var(--widget-ink,var(--d2-ink))}
.theme-demo2 .d2-section-title small{color:var(--d2-muted);font-size:11px}
.theme-demo2 .d2-section-title a{text-decoration:none;color:#3a5345;font-size:12px;white-space:nowrap}
.theme-demo2 .d2-category-list{display:flex;gap:14px;overflow-x:auto;scrollbar-width:thin;padding-bottom:5px}
.theme-demo2 .d2-category-tile{flex:0 0 108px;min-width:0;display:flex;align-items:center;flex-direction:column;gap:8px;text-align:center;text-decoration:none;color:var(--d2-ink)}
.theme-demo2 .d2-category-media{width:78px;height:78px;background:#f7f6f3;border-radius:20px;display:flex;justify-content:center;align-items:center;overflow:hidden;color:#8ba396;font-size:32px}
.theme-demo2 .d2-category-media img{width:100%;height:100%;object-fit:contain;padding:8px}
.theme-demo2 .d2-category-tile strong{font-size:12px;font-weight:650;line-height:1.65}
.theme-demo2 .demo2-home .d2-widget-products{display:grid;grid-template-columns:repeat(var(--widget-desktop-cards,4),minmax(0,1fr));gap:13px}
.theme-demo2 .d2-product-slider{display:flex!important;overflow-x:auto;scrollbar-width:thin;scroll-snap-type:x proximity}
.theme-demo2 .d2-product-slider .demo2-shop-card{flex:0 0 clamp(168px,20%,260px);scroll-snap-align:start}
.theme-demo2 .d2-article-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.theme-demo2 .d2-article-card{min-width:0;border:1px solid var(--d2-line);border-radius:13px;overflow:hidden;padding:0}
.theme-demo2 .d2-article-photo{display:block;aspect-ratio:1.6;background:#f4f3ef}
.theme-demo2 .d2-article-photo img{width:100%;height:100%;object-fit:cover}
.theme-demo2 .d2-article-card h3{font-size:13px;line-height:1.75;margin:12px 12px 7px}
.theme-demo2 .d2-article-card h3 a,.theme-demo2 .d2-article-more{color:var(--d2-ink);text-decoration:none}
.theme-demo2 .d2-article-more{display:inline-block;font-size:11px;padding:0 12px 12px;color:#617368}
.theme-demo2 .d2-feature-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}
.theme-demo2 .d2-feature-item{display:flex;gap:12px;align-items:center;padding:7px 15px;border-left:1px solid #f0eee9}
.theme-demo2 .d2-feature-item:last-child{border-left:0}
.theme-demo2 .d2-feature-item>span{display:grid;place-items:center;flex:0 0 38px;height:38px;background:#f4f6f2;border-radius:12px;color:var(--d2-accent);font-size:21px}
.theme-demo2 .d2-feature-item strong{font-size:12px;display:block}
.theme-demo2 .d2-feature-item small{display:block;font-size:10px;color:var(--d2-muted);margin-top:5px}
.theme-demo2 .d2-banner-list{display:grid;grid-template-columns:1fr;gap:12px}
.theme-demo2 .d2-banner-list.has-multiple{grid-template-columns:repeat(2,minmax(0,1fr))}
.theme-demo2 .d2-banner-item{overflow:hidden;border-radius:15px;background:#f7f6f2;min-height:0}
.theme-demo2 .d2-banner-item :is(picture,a){display:block;width:100%}
.theme-demo2 .d2-banner-item img{display:block;width:100%;height:auto;max-height:350px;object-fit:cover}
.theme-demo2 .d2-editorial-widget{display:flex!important;align-items:center;justify-content:space-between;gap:24px}
.theme-demo2 .d2-editorial-widget h2{font-size:var(--widget-title-desktop,23px);margin:0 0 12px}
.theme-demo2 .d2-editorial-widget p{line-height:2;color:#697a71;white-space:pre-line}
.theme-demo2 .d2-editorial-widget img{width:min(35%,340px);height:auto;max-height:220px;object-fit:contain}
.theme-demo2 .d2-faq-widget details{border-bottom:1px solid var(--d2-line);padding:13px 0;font-size:13px}
.theme-demo2 .d2-faq-widget summary{cursor:pointer;font-weight:700}
.theme-demo2 .d2-faq-widget p{line-height:2;color:#6a796e}
.theme-demo2 .d2-video-widget :is(video,iframe){display:block;width:min(100%,850px);aspect-ratio:16/9;border:0;border-radius:15px;background:#f4f3f0}
.theme-demo2 .d2-spacer-widget{border:0!important;background:transparent!important;padding:0!important;margin:0!important}
/* Universal product cards — store, archive and home widgets */
.theme-demo2 .demo2-shop-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;min-width:0}
.theme-demo2 .demo2-shop-card{min-width:0;display:flex;flex-direction:column;border:1px solid #efeee8;border-radius:14px;padding:0;background:#fff;box-shadow:0 5px 17px rgba(42,58,45,.03);overflow:hidden}
.theme-demo2 .demo2-shop-card-media{width:100%;height:auto;aspect-ratio:1/1;border:0;border-radius:0;background:#f7f6f2;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}
.theme-demo2 .demo2-shop-card-media img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;padding:14px;transition:transform .2s}
.theme-demo2 .demo2-shop-card:hover img{transform:scale(1.03)}
.theme-demo2 .demo2-discount-chip{top:9px;inset-inline-start:9px;bottom:auto;right:auto;position:absolute;background:#e75e5c;color:#fff;border-radius:999px;padding:4px 8px;font-size:10px;line-height:1.2}
.theme-demo2 .demo2-shop-card-body{flex:1;display:flex;flex-direction:column;padding:12px;min-width:0}
.theme-demo2 .demo2-shop-card-body h3{font-size:13px;line-height:1.8;font-weight:690;min-height:3.6em;max-height:3.6em;overflow:hidden;margin:0 0 10px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere}
.theme-demo2 .demo2-shop-card-body h3 a{text-decoration:none;color:var(--d2-ink)}
.theme-demo2 .demo2-shop-card-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:6px;margin-top:auto;min-width:0}
.theme-demo2 .demo2-shop-card-price{display:flex;flex-direction:column;gap:5px;min-width:0}
.theme-demo2 .demo2-shop-card-price strong{font-size:14px;white-space:normal;line-height:1.5;font-weight:850;color:var(--d2-ink)}
.theme-demo2 .demo2-shop-card-price strong small{font-size:10px;font-weight:550;color:#7a8a7e}
.theme-demo2 .demo2-shop-card-price del{font-size:10px;color:#a5aaa5}
.theme-demo2 .demo2-card-action{flex:0 0 auto;display:flex;align-items:center;justify-content:flex-end;min-width:0}
.theme-demo2 .demo2-card-action .card-cart-add{width:34px;height:34px;min-width:34px;min-height:34px;padding:0!important;background:var(--d2-accent);color:#fff;border:0;border-radius:10px;font-size:0;display:flex;align-items:center;justify-content:center;cursor:pointer}
.theme-demo2 .demo2-card-action .card-cart-add>span:first-child{font-size:22px;line-height:1}
.theme-demo2 .demo2-card-action .card-cart-label{display:none}
.theme-demo2 .demo2-card-action .card-choose-variant{color:#fff;background:var(--d2-accent);border:0;padding:8px;border-radius:9px;text-decoration:none;font-size:10px;white-space:nowrap}
.theme-demo2 .demo2-card-action .card-out-of-stock{font-size:10px;color:#91635c;white-space:nowrap}
/* Shop/filters */
.theme-demo2 .demo2-shop-page{padding-top:26px;margin-bottom:38px}
.theme-demo2 .demo2-page-head{display:flex;flex-direction:row;align-items:end;justify-content:space-between;gap:14px;margin-bottom:18px}
.theme-demo2 .demo2-page-head small{font-size:11px;color:#86928a}
.theme-demo2 .demo2-page-head h1{font-size:25px;line-height:1.55;font-weight:850;margin:2px 0 0}
.theme-demo2 .demo2-page-head p{font-size:12px;color:#819086;margin:0}
.theme-demo2 .demo2-shop-layout{display:grid;grid-template-columns:minmax(0,1fr) 244px;gap:20px;background:transparent;border:0;border-radius:0;padding:0;box-shadow:none;align-items:start}
.theme-demo2 .demo2-shop-main{order:1;min-width:0}
.theme-demo2 .demo2-filter-panel{order:2;width:100%;min-width:0;top:100px;position:sticky;background:#fff;border:1px solid var(--d2-line);border-radius:15px;padding:16px;box-shadow:none}
.theme-demo2 .market-filter-title strong{font-size:15px}
.theme-demo2 .market-filter-title a{color:#607f70}
.theme-demo2 .demo2-filter-panel .market-filter-form{gap:12px}
.theme-demo2 .demo2-filter-panel .market-filter-submit{background:var(--d2-accent);font-size:12px;border-radius:10px}
.theme-demo2 .demo2-shop-toolbar{display:flex;flex-direction:row;justify-content:space-between;gap:8px;align-items:center;margin-bottom:18px}
.theme-demo2 .demo2-toolbar-sorts{display:flex;flex-wrap:wrap;gap:8px;min-width:0}
.theme-demo2 .demo2-toolbar-sorts a,.theme-demo2 .demo2-filter-mobile-toggle{background:#fff;border:1px solid var(--d2-line);border-radius:10px;color:#5d6a61;padding:10px 12px;font-size:12px;font-weight:650;text-decoration:none}
.theme-demo2 .demo2-toolbar-sorts a.active{background:var(--d2-accent);border-color:var(--d2-accent);color:#fff}
.theme-demo2 .demo2-filter-mobile-toggle{display:none}
.theme-demo2 .demo2-pagination{display:flex;justify-content:center;gap:8px;margin-top:22px}
.theme-demo2 .demo2-pagination a{display:inline-flex;min-width:36px;min-height:36px;justify-content:center;align-items:center;border:1px solid var(--d2-line);border-radius:10px;background:#fff;color:var(--d2-ink);text-decoration:none}
.theme-demo2 .demo2-pagination a.current{color:#fff;background:var(--d2-accent)}
.theme-demo2 .d2-archive-children{display:flex;gap:9px;flex-wrap:wrap;margin:15px 0 20px}
.theme-demo2 .d2-archive-children a{padding:9px 13px;border-radius:999px;background:#fff;border:1px solid var(--d2-line);color:var(--d2-ink);text-decoration:none;font-size:12px}
/* Full product: preserved stock/variant/review/cart logic from classic with a new skin */
.theme-demo2 .demo2-product-shell .product-breadcrumb{font-size:11px;padding:18px 0 10px;color:#829087}
.theme-demo2 .demo2-product-shell .product-hero{grid-template-columns:minmax(0,1.03fr) minmax(0,1.1fr) minmax(235px,.8fr);gap:22px;align-items:start;padding:20px;border-radius:20px;background:#fff;border:1px solid var(--d2-line)}
.theme-demo2 .demo2-product-shell .product-gallery-panel{grid-column:1;grid-row:1;min-width:0}
.theme-demo2 .demo2-product-shell .product-info-panel{grid-column:2;grid-row:1;min-width:0;padding:4px 0}
.theme-demo2 .demo2-product-shell .buy-card{grid-column:3;grid-row:1;min-width:0;position:sticky;top:105px;align-self:start;margin:0;box-shadow:none;background:#f9f9f6;border:1px solid #eeeee8;border-radius:15px;padding:17px}
.theme-demo2 .demo2-product-shell .product-main-image{display:flex;min-width:0;aspect-ratio:1/1;background:#f8f7f4;border:0;border-radius:15px;box-sizing:border-box}
.theme-demo2 .demo2-product-shell .product-main-image img{width:100%;height:100%;max-height:none;object-fit:contain;mix-blend-mode:normal;padding:16px}
.theme-demo2 .demo2-product-shell .product-thumb{border-color:var(--d2-line);border-radius:10px}
.theme-demo2 .demo2-product-shell .product-thumb.active{border-color:#54705a;box-shadow:0 0 0 1px #54705a}
.theme-demo2 .demo2-product-shell .product-info-panel h1{font-size:22px!important;line-height:1.65!important;margin:6px 0 12px;overflow-wrap:anywhere}
.theme-demo2 .demo2-product-shell .product-kicker span{background:#f6f5f1;color:#546a5a;border-radius:999px;font-size:11px}
.theme-demo2 .demo2-product-shell .product-summary{border:0;padding:16px 0}
.theme-demo2 .demo2-product-shell .product-summary p{font-size:12px;line-height:2}
.theme-demo2 .demo2-product-shell .quick-specs>div{grid-template-columns:repeat(2,minmax(0,1fr))}
.theme-demo2 .demo2-product-shell .quick-specs span{background:#f7f8f4;border:1px solid #eceee9;border-radius:9px}
.theme-demo2 .demo2-product-shell .product-trust span{background:#f8f9f5;border-color:#e8ece6;font-size:10px}
.theme-demo2 .demo2-product-shell .seller-icon{background:var(--d2-accent)}
.theme-demo2 .demo2-product-shell .buy-button{background:var(--d2-accent);border:0;color:#fff;border-radius:11px;box-shadow:none;min-height:46px;cursor:pointer;font-size:13px}
.theme-demo2 .demo2-product-shell .buy-button:disabled{background:#ccd2cc}
.theme-demo2 .demo2-product-shell .buy-price strong{font-size:22px;color:var(--d2-ink)}
.theme-demo2 .demo2-product-shell .discount-chip{background:#cc655a;color:#fff}
.theme-demo2 .demo2-product-shell .variant-option.selected,.theme-demo2 .demo2-product-shell .selector-option.selected{border-color:var(--d2-accent);background:#f5f8f5;box-shadow:0 0 0 2px #29423914}
.theme-demo2 .demo2-product-shell .product-content{margin-top:22px;background:#fff;border:1px solid var(--d2-line);border-radius:18px;padding:15px 18px}
.theme-demo2 .demo2-product-shell .product-tabs{position:sticky;top:100px;display:flex;flex-wrap:nowrap;overflow-x:auto;max-width:100%;border:0;border-bottom:1px solid var(--d2-line);border-radius:0;padding:13px 5px;background:#fff;gap:18px}
.theme-demo2 .demo2-product-shell .product-tabs a{font-size:12px;white-space:nowrap}
.theme-demo2 .demo2-product-shell .product-tabs a.active{color:var(--d2-accent)}
.theme-demo2 .demo2-product-shell .product-tabs a.active:after{background:var(--d2-accent)}
.theme-demo2 .demo2-product-shell .product-detail-card{border:0;border-bottom:1px solid var(--d2-line);padding:22px 6px;background:#fff}
.theme-demo2 .demo2-product-shell .detail-title>span{background:var(--d2-accent)}
.theme-demo2 .demo2-product-shell .detail-title h2{font-size:18px}
.theme-demo2 .demo2-product-shell .spec-groups section{grid-template-columns:170px minmax(0,1fr)}
.theme-demo2 .demo2-product-shell .spec-table>div{grid-template-columns:minmax(90px,160px) minmax(0,1fr)}
.theme-demo2 .demo2-product-shell .related-section{margin-top:25px}
.theme-demo2 .demo2-product-shell .related-card{border-radius:13px;background:#fff;border:1px solid var(--d2-line)}
/* Footer */
.theme-demo2 .demo2-footer{margin:35px 0 10px;background:#fff;border-top:1px solid var(--d2-line)}
.theme-demo2 .demo2-footer-grid{grid-template-columns:minmax(250px,2fr) repeat(3,minmax(130px,1fr));gap:24px;background:#fff;border:0;border-radius:0;box-shadow:none;padding:30px 0}
.theme-demo2 .demo2-footer-grid h3{font-size:13px;color:var(--d2-ink)}
.theme-demo2 .demo2-footer-grid p,.theme-demo2 .demo2-footer-grid a,.theme-demo2 .demo2-footer-grid small{font-size:11px;line-height:1.85}
.theme-demo2 .demo2-footer-badge-list article{background:#fafaf8;border:1px solid #f0eee9;border-radius:10px;padding:10px}
.theme-demo2 .demo2-footer-badge-list article b{display:block;font-size:11px}
.theme-demo2 .demo2-footer-badge-list article small{color:#819087}
.theme-demo2 .demo2-footer-logo img{width:39px;height:39px}
.theme-demo2 .demo2-footer-logo b{font-size:16px}
.theme-demo2 .demo2-footer-bottom{border-top:1px solid var(--d2-line);margin-top:0;padding:10px 0 18px;color:#89938d}
/* Dedicated category archive route from v1.19.3 */
.theme-demo2 .cms-category-page{margin-top:26px;margin-bottom:35px}
.theme-demo2 .cms-category-hero,.theme-demo2 .cms-category-products,.theme-demo2 .cms-category-children{background:#fff;border-radius:18px;border:1px solid var(--d2-line);box-shadow:none}
.theme-demo2 .cms-category-product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.theme-demo2 .cms-category-product-card{border:1px solid var(--d2-line);border-radius:14px;overflow:hidden}
/* Laptops / tablets */
@media(max-width:1050px){
 .theme-demo2 .demo2-header-top{grid-template-columns:1fr 1.2fr .8fr}
 .theme-demo2 .demo2-header-actions .demo2-mini-link span{display:none}
 .theme-demo2 .demo2-shop-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .theme-demo2 .demo2-home .d2-widget-products{grid-template-columns:repeat(var(--widget-tablet-cards,3),minmax(0,1fr))}
 .theme-demo2 .demo2-product-shell .product-hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);}
 .theme-demo2 .demo2-product-shell .buy-card{grid-column:2;grid-row:2;position:static}
 .theme-demo2 .demo2-product-shell .product-gallery-panel{grid-column:1}
 .theme-demo2 .demo2-product-shell .product-info-panel{grid-column:2}
 .theme-demo2 .demo2-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .theme-demo2 .d2-feature-list{grid-template-columns:repeat(2,minmax(0,1fr))}
 .theme-demo2 .d2-article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
/* Mobile: compact two-column cards, independent header, no horizontal overflow */
@media(max-width:740px){
 body.storefront.theme-demo2{font-size:13px;background:#fafaf8}
 .theme-demo2 .container{width:calc(100% - 24px)!important;max-width:none!important;margin-left:auto!important;margin-right:auto!important;min-width:0}
 .theme-demo2 .demo2-store-header,.theme-demo2 .mobile-search-row.mobile-standalone-search,.theme-demo2 .store-promo-bar{display:none!important}
 .theme-demo2 .d2-mobile-header{display:block!important;position:sticky;top:0;z-index:60;padding:8px 0 11px;background:#fff;border-bottom:1px solid var(--d2-line)}
 .theme-demo2 .d2-mobile-top{display:grid;grid-template-columns:40px minmax(0,1fr) 40px;align-items:center;min-height:45px;gap:10px}
 .theme-demo2 .d2-mobile-menu,.theme-demo2 .d2-mobile-cart{width:38px;height:38px;min-width:38px;background:transparent;border:0;color:var(--d2-ink);position:relative;display:grid;place-items:center;padding:0}
 .theme-demo2 .d2-mobile-menu svg,.theme-demo2 .d2-mobile-cart svg{width:22px;height:22px}
 .theme-demo2 .d2-mobile-cart em{position:absolute;top:1px;left:0;background:#cf675f;color:#fff;border-radius:50%;min-width:15px;height:15px;display:grid;place-items:center;font-style:normal;font-size:9px}
 .theme-demo2 .d2-mobile-brand{display:flex;gap:8px;align-items:center;justify-content:center;min-width:0;color:var(--d2-ink);text-decoration:none}
 .theme-demo2 .d2-mobile-brand strong{font-size:16px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
 .theme-demo2 .d2-mobile-brand img{width:27px;height:27px;object-fit:contain}
 .theme-demo2 .d2-mobile-mark{font-size:20px;color:var(--d2-accent)}
 .theme-demo2 .d2-mobile-search{margin-top:4px;position:relative}
 .theme-demo2 .d2-mobile-search form{display:flex;align-items:center;min-height:39px;background:#f6f6f3;border-radius:9px;padding:3px 10px;gap:9px;color:#61736a}
 .theme-demo2 .d2-mobile-search input{flex:1;min-width:0;border:0;background:transparent;font:inherit;font-size:12px;outline:0;color:var(--d2-ink)}
 .theme-demo2 .d2-mobile-search button{border:0;background:transparent;color:var(--d2-accent);font-size:11px;padding:7px}
 .theme-demo2 .d2-mobile-search svg{width:19px;height:19px}
 .theme-demo2 .demo2-home [data-home-section]{margin-top:14px;padding:14px;border-radius:14px;border-color:#efeee9}
 .theme-demo2 .demo2-home [data-home-section][data-hide-on-desktop="1"]{display:revert!important}
 .theme-demo2 .demo2-home [data-home-section][data-hide-on-mobile="1"]{display:none!important}
 .theme-demo2 .d2-hero-widget{display:flex!important;flex-direction:column;gap:0;min-height:0;padding:0!important;overflow:hidden}
 .theme-demo2 .d2-hero-copy{order:1;grid-column:auto;grid-row:auto;padding:20px 16px}
 .theme-demo2 .d2-hero-media{order:2;grid-column:auto;grid-row:auto;min-height:0;height:auto;aspect-ratio:16/10;width:100%}
 .theme-demo2 .d2-hero-media img{width:100%;height:100%;max-height:none;object-fit:cover}
 .theme-demo2 .d2-hero-copy h1{font-size:24px!important;line-height:1.55!important;margin:3px 0 7px}
 .theme-demo2 .d2-hero-copy p{font-size:12px;line-height:1.85;margin:5px 0 12px}
 .theme-demo2 .d2-primary-link{font-size:11px;min-height:36px;padding:8px 16px}
 .theme-demo2 .d2-section-title{margin-bottom:11px;gap:9px}
 .theme-demo2 .d2-section-title h2{font-size:var(--widget-title-mobile,16px)!important;line-height:1.6!important}
 .theme-demo2 .d2-section-title small,.theme-demo2 .d2-section-title a{font-size:10px}
 .theme-demo2 .d2-category-list{gap:11px}
 .theme-demo2 .d2-category-tile{flex-basis:82px}
 .theme-demo2 .d2-category-media{width:59px;height:59px;border-radius:14px}
 .theme-demo2 .d2-category-tile strong{font-size:10px}
 .theme-demo2 .demo2-home .d2-widget-products{grid-template-columns:repeat(var(--widget-mobile-cards,2),minmax(0,1fr));gap:9px}
 .theme-demo2 .d2-product-slider .demo2-shop-card{flex:0 0 48%;min-width:0}
 .theme-demo2 .d2-article-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .theme-demo2 .d2-article-card h3{font-size:11px;line-height:1.6;margin:8px}
 .theme-demo2 .d2-article-more{font-size:10px;padding:0 8px 8px}
 .theme-demo2 .d2-feature-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .theme-demo2 .d2-feature-item{padding:9px;gap:7px;border:1px solid var(--d2-line);border-radius:11px}
 .theme-demo2 .d2-feature-item>span{flex-basis:29px;height:29px;border-radius:7px;font-size:16px}
 .theme-demo2 .d2-feature-item strong{font-size:10px}
 .theme-demo2 .d2-feature-item small{font-size:9px}
 .theme-demo2 .d2-banner-list.has-multiple{grid-template-columns:1fr}
 .theme-demo2 .d2-editorial-widget{flex-direction:column}
 .theme-demo2 .d2-editorial-widget h2{font-size:var(--widget-title-mobile,17px)!important}
 .theme-demo2 .d2-editorial-widget img{width:100%;max-height:180px;object-fit:contain}
 .theme-demo2 .demo2-shop-page{padding-top:19px;margin-bottom:30px}
 .theme-demo2 .demo2-page-head{align-items:flex-start;flex-direction:row;justify-content:space-between;gap:9px;margin-bottom:12px}
 .theme-demo2 .demo2-page-head h1{font-size:20px!important;line-height:1.45!important}
 .theme-demo2 .demo2-page-head p{font-size:10px;margin:0;align-self:center}
 .theme-demo2 .demo2-shop-layout{display:flex;flex-direction:column;gap:10px;padding:0;box-shadow:none}
 .theme-demo2 .demo2-shop-main{order:2;width:100%;min-width:0}
 .theme-demo2 .demo2-filter-panel{order:1;position:static!important;display:none;width:100%;border-radius:12px;padding:14px;margin:0}
 .theme-demo2 .demo2-filter-panel.is-open{display:block}
 .theme-demo2 .demo2-shop-toolbar{display:flex;flex-wrap:wrap;flex-direction:row;align-items:center;gap:8px;margin-bottom:12px}
 .theme-demo2 .demo2-toolbar-sorts{flex:1;min-width:0;display:flex;gap:6px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;max-width:100%}
 .theme-demo2 .demo2-toolbar-sorts a{font-size:10px;white-space:nowrap;padding:8px 10px;flex:0 0 auto}
 .theme-demo2 .demo2-filter-mobile-toggle{display:inline-flex;align-items:center;flex:0 0 auto;font-size:10px;padding:8px 10px}
 .theme-demo2 .demo2-shop-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px}
 .theme-demo2 .demo2-shop-card{padding:0;border-radius:12px;min-width:0;box-shadow:none}
 .theme-demo2 .demo2-shop-card-media{width:100%;height:auto;aspect-ratio:1/1;border-radius:0}
 .theme-demo2 .demo2-shop-card-media img{width:100%;height:100%;max-width:none;max-height:none;padding:10px;object-fit:contain}
 .theme-demo2 .demo2-discount-chip{font-size:9px;padding:3px 6px;top:6px;inset-inline-start:6px}
 .theme-demo2 .demo2-shop-card-body{padding:9px;min-width:0}
 .theme-demo2 .demo2-shop-card-body h3{font-size:11px!important;line-height:1.6!important;min-height:3.2em;max-height:3.2em;margin:0 0 8px}
 .theme-demo2 .demo2-shop-card-price strong{font-size:11px!important;line-height:1.55!important;overflow-wrap:anywhere}
 .theme-demo2 .demo2-shop-card-price strong small{font-size:9px!important}
 .theme-demo2 .demo2-card-action .card-cart-add{width:30px;height:30px;min-height:30px;min-width:30px;border-radius:8px}
 .theme-demo2 .demo2-card-action .card-choose-variant{max-width:66px;white-space:normal;font-size:9px;text-align:center;padding:6px}
 .theme-demo2 .demo2-shop-card-price del{font-size:9px}
 .theme-demo2 .demo2-product-shell .product-breadcrumb{padding:13px 0 8px;font-size:10px;max-width:100%;overflow-x:auto}
 .theme-demo2 .demo2-product-shell .product-hero{display:flex;flex-direction:column;gap:16px;border-radius:15px;padding:12px;min-width:0}
 .theme-demo2 .demo2-product-shell .product-gallery-panel{order:1;min-width:0;width:100%;max-width:100%}
 .theme-demo2 .demo2-product-shell .product-info-panel{order:2;min-width:0;width:100%;padding:0 5px}
 .theme-demo2 .demo2-product-shell .buy-card{order:3;min-width:0;width:100%;position:static!important;top:auto;margin:0;padding:14px}
 .theme-demo2 .demo2-product-shell .product-main-image{width:100%;max-width:100%;aspect-ratio:1.17;border-radius:12px}
 .theme-demo2 .demo2-product-shell .product-main-image img{max-width:100%;max-height:340px;width:100%;height:100%;padding:8px;object-fit:contain}
 .theme-demo2 .demo2-product-shell .product-thumbs{display:flex;gap:7px;overflow-x:auto;max-width:100%;padding:7px 0;min-width:0}
 .theme-demo2 .demo2-product-shell .product-thumb{flex:0 0 54px;width:54px;height:54px;min-width:54px}
 .theme-demo2 .demo2-product-shell .product-info-panel h1{font-size:19px!important;line-height:1.6!important;margin:8px 0 12px;max-width:100%;overflow-wrap:anywhere;word-break:normal}
 .theme-demo2 .demo2-product-shell .product-summary p{font-size:11px}
 .theme-demo2 .demo2-product-shell .quick-specs>div{grid-template-columns:repeat(2,minmax(0,1fr))}
 .theme-demo2 .demo2-product-shell .quick-specs b{font-size:10px}
 .theme-demo2 .demo2-product-shell .buy-price strong{font-size:21px!important}
 .theme-demo2 .demo2-product-shell .product-content{width:calc(100% - 24px)!important;padding:12px;border-radius:14px;min-width:0}
 .theme-demo2 .demo2-product-shell .product-tabs{top:105px;overflow-x:auto;max-width:100%;gap:12px;padding:8px 0}
 .theme-demo2 .demo2-product-shell .product-tabs a{font-size:11px}
 .theme-demo2 .demo2-product-shell .product-detail-card{padding:16px 2px}
 .theme-demo2 .demo2-product-shell .detail-title h2{font-size:16px}
 .theme-demo2 .demo2-product-shell .spec-groups section{grid-template-columns:1fr;gap:7px}
 .theme-demo2 .demo2-product-shell .spec-table>div{grid-template-columns:minmax(88px,36%) minmax(0,1fr);font-size:11px}
 .theme-demo2 .demo2-product-shell .related-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;overflow:visible}
 .theme-demo2 .demo2-product-shell .related-card{min-width:0}
 .theme-demo2 .demo2-footer{margin-top:30px;margin-bottom:90px}
 .theme-demo2 .demo2-footer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:24px 0}
 .theme-demo2 .demo2-footer-brand{grid-column:1/-1}
 .theme-demo2 .demo2-footer-badges{grid-column:1/-1}
 .theme-demo2 .demo2-footer-badge-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
 .theme-demo2 .demo2-footer-badge-list article{padding:9px}
 .theme-demo2 .demo2-footer-badge-list article b{font-size:10px}
 .theme-demo2 .demo2-footer-badge-list article small{font-size:9px;line-height:1.5;display:block;color:#6b8071}
 .theme-demo2 .demo2-footer-bottom{display:flex;flex-direction:column;align-items:flex-start;gap:5px;padding-bottom:12px}
 .theme-demo2 .cms-mobile-nav.mobile-bottom-nav{background:rgba(255,255,255,.97);border:1px solid #eeede9;box-shadow:0 -3px 16px #22362510;border-radius:16px 16px 0 0}
 .theme-demo2 .cms-mobile-nav :is(a,button){color:#8a958d}
 .theme-demo2 .cms-mobile-nav .is-active{color:var(--d2-accent)!important}
 .theme-demo2 .cms-mobile-nav :is(svg){height:21px;width:21px}
 .theme-demo2 .cms-mobile-nav :is(b){font-size:10px}
 .theme-demo2 .cms-category-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
 .theme-demo2 .cms-category-product-card{min-width:0}
 .theme-demo2 .cms-category-product-card h3{font-size:12px}
}
@media(max-width:740px){
 /* User-defined mobile card count remains effective in page-builder sections. */
 .theme-demo2 .demo2-home .d2-widget-products:not(.d2-product-slider){display:grid!important;grid-template-columns:repeat(var(--widget-mobile-cards,2),minmax(0,1fr))!important}
 .theme-demo2 .demo2-home .d2-product-slider{display:flex!important;grid-template-columns:none!important;overflow-x:auto}
 .theme-demo2 .demo2-home .d2-product-slider>.demo2-shop-card{flex:0 0 48%}
}
.theme-demo2 .demo2-footer-badge-list article b,.theme-demo2 .demo2-footer-badge-list article strong{color:var(--d2-ink)!important}
.theme-demo2 .demo2-footer-badge-list article small{color:#718177!important}
