/* Align the homepage content blocks with the approved wider photo grid. */
#home-collections > .shell,
main > .home-band > .shell,
#home-tarot + .banner > .shell { width:min(1288px,calc(100% - 40px)); }
.tas-products .section-head { align-items:center; }
.tas-section-tools { display:flex; align-items:center; flex-wrap:wrap; justify-content:flex-end; gap:16px; }
.tas-slider-buttons { display:flex; gap:8px; }
.tas-slider-arrow { width:38px; height:38px; padding:0; display:grid; place-items:center; border:1px solid #b5c7c0; border-radius:50%; background:#fff; color:#163e35; font-size:22px; cursor:pointer; }
.tas-slider-arrow:hover { background:#deebe6; }
.tas-slider-arrow:disabled { opacity:.35; cursor:default; }
.tas-slider-arrow:focus-visible,.tas-product-link:focus-visible { outline:3px solid #226b58; outline-offset:3px; }
.tas-product-rail { display:grid; grid-auto-flow:column; grid-auto-columns:calc((100% - 90px)/6); gap:18px; overflow-x:auto; overscroll-behavior-x:contain; scroll-snap-type:x mandatory; scrollbar-width:thin; padding:4px 0 14px; }
.tas-product-rail > .tas-product-card { min-width:0; scroll-snap-align:start; }
.tas-product-card { display:flex; flex-direction:column; height:100%; }
.tas-product-card .product-media { aspect-ratio:1; background:#fff; }
.tas-product-card .product-media img { object-fit:contain; }
.tas-product-card .product-body { display:flex; flex-direction:column; flex:1; padding:14px; }
.tas-product-card .product-title { font-size:15px; line-height:1.45; margin:0 0 12px; overflow-wrap:anywhere; }
.tas-product-card .product-actions { display:flex; flex-direction:column; align-items:stretch; gap:10px; margin-top:auto; }
.tas-product-card .price { font-size:17px; }
.tas-product-card .btn { padding:9px 8px; font-size:12px; text-align:center; }
.tas-availability { font-size:12px; color:#5f6863; }
.tas-collection-name { color:#526960; margin:8px 0 0; font-size:14px; }
.tas-status { margin:12px 0 0; min-height:22px; color:#526960; font-size:14px; }
.tas-status .btn { margin-left:12px; }
.tas-skeleton { min-height:300px; background:linear-gradient(120deg,#e0e8e3,#f8faf8); }
.tas-collection-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:18px; }
.tas-load-more { display:flex; justify-content:center; margin-top:28px; }
.tas-page-heading { margin-bottom:30px; }
.tas-page-heading h1 { font-size:clamp(30px,4vw,46px); margin:8px 0; color:#173e33; }
.tas-breadcrumb { display:inline-block; margin-bottom:20px; color:#466657; font-size:14px; }
.tas-tarot-detail { background:#eef3ef; }
.tas-tarot-feature { display:grid; grid-template-columns:minmax(250px,360px) minmax(0,1fr); gap:64px; align-items:center; max-width:1040px; margin:0 auto; }
.tas-tarot-feature > img { width:100%; height:auto; border-radius:16px; box-shadow:0 12px 34px rgba(23,62,51,.13); }
.tas-tarot-copy h1 { font-size:clamp(32px,4vw,48px); line-height:1.2; margin:10px 0 18px; color:#173e33; }
.tas-tarot-copy p { line-height:1.85; font-size:17px; color:#40594c; }
.tas-tarot-themes { font-size:15px!important; font-weight:600; color:#28715a!important; }
.tas-tarot-reflection { margin-top:28px; padding:18px 22px; background:#fff; border-radius:12px; border-left:3px solid #31795f; }
.tas-tarot-reflection strong { display:block; margin-bottom:5px; color:#173e33; }
.tas-tarot-reflection p { margin:0; font-size:16px; }
.tas-tarot-browser { background:#f6f8f5; }
.tas-tarot-browser .tarot-card[aria-current="page"] { outline:3px solid #33795f; outline-offset:-3px; }
.tas-tarot-browser .slider { padding:5px 0 16px; overscroll-behavior-x:contain; }
@media(max-width:1100px) {
  .tas-product-rail { grid-auto-columns:calc((100% - 36px)/3); }
  .tas-collection-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .tas-tarot-feature { gap:36px; }
}
@media(max-width:680px) {
  #home-collections > .shell,
  main > .home-band > .shell,
  #home-tarot + .banner > .shell { width:calc(100% - 24px); }
  .tas-products .section-head,.tas-tarot-browser .section-head { align-items:flex-start; flex-wrap:wrap; }
  .tas-section-tools { justify-content:flex-start; }
  .tas-product-rail { grid-auto-columns:calc((100% - 12px)/2); gap:12px; }
  .tas-collection-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  .tas-product-card .product-body { padding:12px; }
  .tas-tarot-feature { grid-template-columns:1fr; gap:30px; }
  .tas-tarot-feature > img { max-width:280px; margin:auto; }
}
@media(max-width:350px) {
  .tas-product-rail { grid-auto-columns:100%; }
  .tas-collection-grid { grid-template-columns:1fr; }
}
@media(prefers-reduced-motion:reduce) { .tas-product-card,.tas-product-card img { transition:none!important; } }
