/* Native scrolling keeps each product link usable without JavaScript. */
body.sac-2027-public #page .sac-home-grid.sac-home-carousel{
 display:grid;grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:calc((100% - 64px)/5);gap:16px;
 overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding:0;padding:4px 1px 18px;
 overscroll-behavior-x:contain;scrollbar-width:none;touch-action:pan-x pan-y;min-width:0;
}
.sac-home-carousel::-webkit-scrollbar{display:none}
.sac-home-carousel>.sac-product-card{scroll-snap-align:start;min-width:0;height:100%}
.sac-home-carousel:focus-visible{outline:2px solid #7017d9;outline-offset:3px;border-radius:12px}
body.sac-2027-public #page .sac-home-section-header{margin-bottom:12px}
.sac-carousel-controls{display:none;align-items:center;gap:6px}
.sac-home-section.sac-carousel-ready .sac-carousel-controls{display:flex}
.sac-carousel-controls button{
 display:grid;place-items:center;width:32px;height:32px;padding:0;margin:0;border:1px solid #e5dfed;border-radius:8px;
 background:#fff;color:#68647c;cursor:pointer;box-shadow:0 1px 2px #26133c04;transition:background .15s,border-color .15s,color .15s;
}
.sac-carousel-controls button:hover{background:#f4eefc;color:#7017d9;border-color:#ccb7e5}
.sac-carousel-controls button:focus-visible{outline:2px solid #7017d9;outline-offset:2px}
.sac-carousel-controls button svg{width:16px;height:16px;display:block}
.sac-carousel-controls button:disabled{opacity:.35;cursor:default}
.sac-carousel-controls button [data-carousel-play]{display:none}
.sac-carousel-controls button[aria-pressed=true] [data-carousel-play]{display:block}
.sac-carousel-controls button[aria-pressed=true] [data-carousel-pause]{display:none}
@media(max-width:1079px){body.sac-2027-public #page .sac-home-grid.sac-home-carousel{grid-auto-columns:calc((100% - 32px)/3)}}
@media(max-width:760px){
 body.sac-2027-public #page .sac-home-grid.sac-home-carousel{grid-auto-columns:calc((100% - 13px)/2);gap:13px;padding-bottom:12px}
 .sac-home-section-controls{gap:12px}
 .sac-carousel-controls{gap:4px}
 .sac-carousel-controls button{width:30px;height:30px}
 .sac-home-section-header{flex-wrap:wrap}
}
@media(max-width:380px){.sac-carousel-controls button{width:27px;height:29px}.sac-home-section-controls{gap:8px}.sac-home-section-header h2{font-size:19px}}
@media(prefers-reduced-motion:reduce){.sac-carousel-controls button{transition:none}}
/* Six items on wide desktop displays; retain existing laptop/tablet/mobile sizes. */
@media(min-width:1440px){
 body.sac-2027-public #page .sac-home-grid:not(.sac-home-carousel){grid-template-columns:repeat(6,minmax(0,1fr))}
 body.sac-2027-public #page .sac-home-grid.sac-home-carousel{grid-auto-columns:calc((100% - 80px)/6)}
 body.sac-2027-public #page .sac-product-card .sac-product-bottom{flex-wrap:wrap}
}

/* Product artwork keeps its proportions and has a visible loading fallback. */
body.sac-2027-public #page .sac-product-image:has(img[data-sac-image]:not([data-sac-loaded])){background:#f6f3fb url('/images/logo-sellanycode.svg') center / 58% auto no-repeat}
body.sac-2027-public #page .sac-home-section{scroll-margin-top:88px}
body.sac-2027-public #page .sac-product-image img{object-position:center}
body.sac-2027-public #page .sac-carousel-controls:not(:has(button:not(:disabled))){display:none}
/* Compact two-tone headings: purple lead word and dark remaining text. */
body.sac-2027-public #page .sac-home-section-header{
 padding-bottom:10px;border-bottom:1px solid #ece4f5;gap:16px;
}
body.sac-2027-public #page .sac-home-section-header h2{
 margin:0;padding:0;color:#15192f;font-size:20px;font-weight:650;line-height:1.3;letter-spacing:-.3px;
}
@media(max-width:760px){
 body.sac-2027-public #page .sac-home-section-header h2{font-size:18px}
 body.sac-2027-public #page .sac-home-section-header{gap:10px;padding-bottom:8px}
}

/* Keep homepage product sections closer together. */
body.sac-2027-public #page.sac-home .sac-home-section{margin-bottom:12px!important}
body.sac-2027-public #page.sac-home .sac-home-section:last-child{margin-bottom:0!important}
body.sac-2027-public #page.sac-home .sac-home-grid.sac-home-carousel{padding-bottom:32px}
@media(max-width:760px){
  body.sac-2027-public #page.sac-home .sac-home-grid.sac-home-carousel{padding-bottom:28px}
}

/* Reserve paint space around the scroll viewport so raised shadows stay visible. */
body.sac-2027-public #page.sac-home .sac-home-grid.sac-home-carousel{
  padding:12px 20px 32px;margin:0 -20px;width:auto;
  scroll-padding-inline:20px;
}
@media(max-width:760px){
  body.sac-2027-public #page.sac-home .sac-home-grid.sac-home-carousel{
    padding:10px 12px 28px;margin:0 -12px;scroll-padding-inline:12px;
  }
}

body.sac-2027-public #page .sac-home-section-header h2>.sac-home-heading-accent{color:#6315b8}
