/* DDV V1029: 12 scoped CMS skins, ONE renderer, one Catalog, one Mobile/PWA product rail. */
.ddv-home-preset{
 --ddv-layout-space:clamp(18px,2.8vw,34px);
 width:min(100%,1440px);margin-inline:auto;padding:clamp(12px,2vw,26px);
 display:grid;gap:var(--ddv-layout-space);min-width:0;
}
.ddv-home-preset > .ddv-vb-node,.ddv-home-preset .ddv-cms-block{min-width:0;max-width:100%}
.ddv-home-preset .ddv-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:12px}
.ddv-home-preset .ddv-section-head h2{font-size:clamp(19px,2.2vw,29px);line-height:1.18;margin:0}
.ddv-home-preset .ddv-section-head a{color:var(--ddv-primary);font-weight:700;font-size:12px;text-decoration:none;white-space:nowrap}
.ddv-home-preset .ddv-store-hero{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:center;
 min-height:220px;overflow:hidden;border:1px solid var(--ddv-border);border-radius:23px;
 padding:clamp(22px,4vw,52px);background:linear-gradient(115deg,color-mix(in srgb,var(--ddv-primary) 12%,var(--ddv-surface)),var(--ddv-surface))}
.ddv-home-preset .ddv-store-hero h1{font-size:clamp(26px,4vw,52px);line-height:1.11;letter-spacing:-.03em;max-width:880px;margin:8px 0 12px}
.ddv-home-preset .ddv-store-hero p{color:var(--ddv-muted);max-width:750px;line-height:1.65;margin:0 0 19px}
.ddv-home-preset .ddv-store-hero .ddv-btn{align-self:flex-start}
.ddv-home-preset .ddv-store-cta{border:1px solid var(--ddv-border);border-radius:20px;
 padding:clamp(19px,3vw,38px);background:color-mix(in srgb,var(--ddv-primary) 8%,var(--ddv-surface))}
.ddv-home-preset .ddv-store-cta h2{font-size:clamp(20px,2.5vw,29px);margin:0 0 7px}
.ddv-home-preset .ddv-store-cta p{color:var(--ddv-muted);max-width:740px}
.ddv-home-preset .ddv-vb-promotion{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);align-items:center;gap:22px;
 overflow:hidden;border:1px solid var(--ddv-border);border-radius:20px;background:color-mix(in srgb,var(--ddv-primary) 9%,var(--ddv-surface));padding:clamp(18px,2.5vw,35px)}
.ddv-home-preset .ddv-vb-promotion:not(:has(img)){grid-template-columns:1fr}
.ddv-home-preset .ddv-vb-promotion img{max-width:100%;width:100%;max-height:265px;aspect-ratio:1.8;object-fit:cover;border-radius:15px}
.ddv-home-preset .ddv-vb-promotion h2{font-size:clamp(20px,2.7vw,34px);margin:0 0 10px}
.ddv-home-preset .ddv-vb-promotion p{color:var(--ddv-muted)}
.ddv-home-preset .ddv-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.ddv-home-preset .ddv-benefit{min-width:0;border:1px solid var(--ddv-border);background:var(--ddv-surface);padding:15px;border-radius:14px}
.ddv-home-preset .ddv-benefit strong{display:block;font-weight:800;margin-bottom:5px}
.ddv-home-preset .ddv-benefit span{font-size:13px;color:var(--ddv-muted);line-height:1.55}
.ddv-home-preset .ddv-richtext{padding:18px 22px;border-radius:14px;border:1px solid var(--ddv-border);background:var(--ddv-surface)}
.ddv-home-preset .ddv-richtext h2{font-size:clamp(20px,2.3vw,28px)}
.ddv-home-preset .ddv-faq details{padding:12px 15px;border:1px solid var(--ddv-border);background:var(--ddv-surface);border-radius:12px;margin-bottom:7px}
.ddv-home-preset .ddv-faq summary{cursor:pointer;font-weight:700}
/* A compact, complete, live catalog navigation. Existing 20 product rails are deliberately not restyled. */
.ddv-home-preset .ddv-category-grid{min-width:0;max-width:100%;margin:0;padding:1px 1px 7px;list-style:none}
.ddv-home-preset .ddv-category-grid.ddv-category-layout--scroll{
 display:grid!important;grid-auto-flow:column;grid-template-rows:repeat(var(--ddv-vb-cat-rows-d,2),auto);grid-auto-columns:clamp(118px,11vw,158px);gap:9px!important;overflow-x:auto!important;overflow-y:hidden;
 scroll-snap-type:x proximity;overscroll-behavior-x:contain;scrollbar-width:thin;-webkit-overflow-scrolling:touch;
}
.ddv-home-preset .ddv-category-grid.ddv-category-layout--grid{
 display:grid!important;grid-template-columns:repeat(var(--ddv-vb-cols-d,4),minmax(0,1fr))!important;gap:10px!important;overflow:visible;
}
.ddv-home-preset .ddv-category-tile{
 box-sizing:border-box;display:flex!important;flex-direction:column!important;align-items:center;justify-content:flex-start;
 text-align:center;gap:8px;min-height:110px;padding:12px 9px!important;border-radius:15px;
 border:1px solid var(--ddv-border);background:var(--ddv-surface);color:var(--ddv-text,inherit);text-decoration:none;
 white-space:normal;transition:border-color .15s ease,background-color .15s ease;scroll-snap-align:start;
}
.ddv-home-preset .ddv-category-layout--scroll .ddv-category-tile{flex:0 0 clamp(118px,11vw,158px)!important;max-width:158px}
.ddv-home-preset .ddv-category-tile:hover,.ddv-home-preset .ddv-category-tile:focus-visible{border-color:var(--ddv-primary);background:color-mix(in srgb,var(--ddv-primary) 5%,var(--ddv-surface));outline-offset:2px}
.ddv-home-preset .ddv-category-icon{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:12px;background:color-mix(in srgb,var(--ddv-primary) 10%,var(--ddv-surface-2));color:var(--ddv-primary);overflow:hidden}
.ddv-home-preset .ddv-category-icon img{display:block;width:100%;height:100%;object-fit:cover}
.ddv-home-preset .ddv-category-icon svg{width:25px;height:25px}
.ddv-home-preset .ddv-category-tile strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;font-size:12px!important;line-height:1.4;font-weight:750;max-width:100%}
/* Distinct layout treatments share the component primitives above. */
.ddv-home-preset--01 .ddv-store-hero{min-height:292px;background:radial-gradient(circle at 82% 10%,color-mix(in srgb,var(--ddv-primary) 22%,transparent),transparent 32%),linear-gradient(115deg,var(--ddv-surface),var(--ddv-surface-2))}
.ddv-home-preset--02{--ddv-layout-space:22px}.ddv-home-preset--02 > .ddv-vb-node:first-child{padding:17px;border:1px solid var(--ddv-border);border-radius:18px;background:var(--ddv-surface)}
.ddv-home-preset--02 .ddv-category-layout--grid{grid-template-columns:repeat(auto-fill,minmax(118px,1fr))!important}
.ddv-home-preset--03 .ddv-vb-promotion{background:linear-gradient(115deg,color-mix(in srgb,#efb66e 24%,var(--ddv-surface)),var(--ddv-surface))}
.ddv-home-preset--03 .ddv-store-hero{min-height:190px}
.ddv-home-preset--04 .ddv-store-hero{background:linear-gradient(115deg,color-mix(in srgb,#2a75ad 18%,var(--ddv-surface)),color-mix(in srgb,var(--ddv-primary) 12%,var(--ddv-surface)))}
.ddv-home-preset--04 .ddv-store-cta{border-left:4px solid var(--ddv-primary)}
/* Mobile-first layouts remain usable on desktop, while concentrating hierarchy on phones. */
.ddv-home-preset--05{width:min(100%,1200px);--ddv-layout-space:26px}
.ddv-home-preset--05 .ddv-store-hero{min-height:185px;border-radius:16px;background:var(--ddv-surface);text-align:center}
.ddv-home-preset--05 .ddv-store-hero h1,.ddv-home-preset--05 .ddv-store-hero p{margin-left:auto;margin-right:auto}
.ddv-home-preset--05 .ddv-store-hero .ddv-btn{align-self:center}
.ddv-home-preset--06{width:min(100%,1250px);--ddv-layout-space:24px}
.ddv-home-preset--06 .ddv-store-hero{min-height:195px;background:linear-gradient(125deg,color-mix(in srgb,#7789ba 13%,var(--ddv-surface)),var(--ddv-surface-2))}
.ddv-home-preset--06 .ddv-richtext{border-left:3px solid var(--ddv-primary)}
/* Company editorial group: a restrained business presentation, with a direct purchasing path. */
.ddv-home-preset--07 .ddv-store-hero{background:linear-gradient(125deg,var(--ddv-surface-2),var(--ddv-surface));border-radius:12px}
.ddv-home-preset--07 .ddv-store-hero h1{font-weight:850;max-width:740px}
.ddv-home-preset--07 .ddv-richtext{border-left:4px solid var(--ddv-primary)}
.ddv-home-preset--08 .ddv-store-hero{background:linear-gradient(140deg,color-mix(in srgb,#497ba4 18%,var(--ddv-surface)),var(--ddv-surface))}
.ddv-home-preset--08 .ddv-store-cta{border-radius:12px;border-left:4px solid var(--ddv-primary)}
.ddv-home-preset--09 .ddv-store-hero{background:radial-gradient(circle at 90% 12%,color-mix(in srgb,var(--ddv-primary) 20%,transparent),transparent 36%),var(--ddv-surface-2)}
.ddv-home-preset--10 > .ddv-vb-node:first-child{border-bottom:1px solid var(--ddv-border);padding-bottom:20px}
.ddv-home-preset--10 .ddv-store-hero{min-height:175px;border-radius:14px}
.ddv-home-preset--11 .ddv-store-hero{background:linear-gradient(125deg,color-mix(in srgb,#e6c3a4 16%,var(--ddv-surface)),var(--ddv-surface))}
.ddv-home-preset--11 .ddv-benefit{border-radius:18px}
.ddv-home-preset--12 .ddv-store-hero{background:linear-gradient(125deg,color-mix(in srgb,var(--ddv-primary) 13%,var(--ddv-surface)),var(--ddv-surface))}
.ddv-home-preset--12 .ddv-store-cta{border-radius:28px}
@media(max-width:900px){
 .ddv-home-preset .ddv-benefits{grid-template-columns:repeat(2,minmax(0,1fr))}
 .ddv-home-preset .ddv-vb-promotion{grid-template-columns:1fr}
}
@media(max-width:760px){
 .ddv-home-preset{padding:10px 9px 38px;gap:23px}
 .ddv-home-preset .ddv-store-hero{min-height:auto;border-radius:17px;padding:22px 17px}
 .ddv-home-preset .ddv-store-hero h1{font-size:clamp(26px,7vw,34px);line-height:1.14}
 .ddv-home-preset .ddv-store-hero p{font-size:13px}
 .ddv-home-preset .ddv-benefits{grid-template-columns:1fr;gap:7px}
 .ddv-home-preset .ddv-benefit{padding:11px 12px}
 .ddv-home-preset .ddv-vb-promotion{padding:17px;gap:10px}
 .ddv-home-preset .ddv-section-head h2{font-size:20px}
 .ddv-home-preset .ddv-category-layout--scroll .ddv-category-tile{flex-basis:112px!important}
 .ddv-home-preset .ddv-category-grid.ddv-category-layout--grid{grid-template-columns:repeat(var(--ddv-vb-cols-m,2),minmax(0,1fr))!important;gap:7px!important}
 .ddv-home-preset .ddv-category-tile{min-height:99px;padding:9px 6px!important;gap:6px}
 .ddv-home-preset .ddv-category-icon{width:41px;height:41px}
 .ddv-home-preset--05,.ddv-home-preset--06{gap:19px}
 .ddv-home-preset--05 .ddv-store-hero{text-align:left}
 .ddv-home-preset--05 .ddv-store-hero .ddv-btn{align-self:flex-start}
 /* The 20-product 6-8-6 Mobile/PWA rails are owned exclusively by storefront-home.css. */
}
@media(max-width:380px){.ddv-home-preset .ddv-category-grid.ddv-category-layout--grid{grid-template-columns:repeat(var(--ddv-vb-cols-m,2),minmax(0,1fr))!important}}
@media(prefers-reduced-motion:reduce){.ddv-home-preset .ddv-category-tile{transition:none}.ddv-home-preset .ddv-category-grid{scroll-behavior:auto}}

/* Category templates are variants of ONE live CMS category component. */
.ddv-home-preset .ddv-category-style--compact .ddv-category-tile{min-height:68px;padding:8px!important;flex-direction:row!important;text-align:left;gap:8px}
.ddv-home-preset .ddv-category-style--compact .ddv-category-icon{width:34px;height:34px;border-radius:8px}
.ddv-home-preset .ddv-category-style--circle .ddv-category-icon{border-radius:50%;width:62px;height:62px}
.ddv-home-preset .ddv-category-style--circle .ddv-category-tile{border:0;background:transparent}
.ddv-home-preset .ddv-category-style--icon .ddv-category-icon{width:60px;height:60px;box-shadow:0 8px 24px #0001}
.ddv-home-preset .ddv-category-style--banner .ddv-category-tile{flex-direction:row!important;min-height:92px;text-align:left;justify-content:flex-start;background:linear-gradient(120deg,color-mix(in srgb,var(--ddv-primary) 8%,var(--ddv-surface)),var(--ddv-surface))}
.ddv-home-preset .ddv-category-style--banner .ddv-category-icon{width:70px;height:60px}
.ddv-home-preset .ddv-category-style--list .ddv-category-tile{min-height:48px;padding:7px!important;flex-direction:row!important;text-align:left;justify-content:flex-start;border-radius:8px}
.ddv-home-preset .ddv-category-style--list .ddv-category-icon{width:30px;height:30px;border-radius:6px}
.ddv-home-preset .ddv-category-style--outline .ddv-category-tile{border:2px solid var(--ddv-primary);background:transparent}
.ddv-home-preset .ddv-category-style--minimal .ddv-category-tile{border:0;box-shadow:none;min-height:62px;background:transparent;padding:7px!important}
.ddv-home-preset .ddv-category-style--minimal .ddv-category-icon{width:32px;height:32px;background:transparent}
@media(min-width:768px) and (max-width:1023px){
 .ddv-home-preset .ddv-category-grid.ddv-category-layout--grid{grid-template-columns:repeat(var(--ddv-vb-cols-t,3),minmax(0,1fr))!important}
 .ddv-home-preset .ddv-category-grid.ddv-category-layout--scroll{grid-template-rows:repeat(var(--ddv-vb-cat-rows-t,2),auto)}
}
@media(max-width:767px){
 .ddv-home-preset .ddv-category-grid.ddv-category-layout--scroll{grid-template-rows:repeat(var(--ddv-vb-cat-rows-m,2),auto);grid-auto-columns:112px}
}
