/* Store home only: a manual showcase with a complete no-script reading order. */
.studio-store.home-page .studio-main { background: transparent; }
.studio-store.home-page .store-showcase {
  padding-block: clamp(80px, 8vw, 100px);
  background: transparent;
  color: var(--studio-ivory, #f2eee3);
}
.studio-store.home-page .store-showcase :is(.showcase-heading, .showcase-header, .studio-section-heading) {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, .65fr);
  align-items: end;
  gap: clamp(28px, 5vw, 72px);
  margin-bottom: 32px;
}
.studio-store.home-page .store-showcase :is(.showcase-heading, .showcase-header, .studio-section-heading) h2 {
  margin: 0;
  font-size: clamp(38px, 4.5vw, 64px);
  line-height: 1.1;
  letter-spacing: -.052em;
}
.studio-store.home-page .store-showcase :is(.showcase-heading, .showcase-header, .studio-section-heading) > p {
  margin: 0;
  max-width: 46ch;
  color: var(--studio-muted, #a3a29e);
  font-size: 15px;
  line-height: 1.8;
}
.studio-store.home-page .store-showcase .showcase-tabs {
  display: none;
  flex-wrap: wrap;
  gap: 8px;
  padding: 0;
  margin: 30px 0 22px;
  border: 0;
}
.studio-store.home-page .store-showcase.showcase-ready .showcase-tabs { display: flex; }
.studio-store.home-page .store-showcase [data-showcase-tab] {
  flex: 0 0 auto;
  min-height: 44px;
  padding: 11px 17px;
  border: 1px solid #ffffff29;
  border-radius: 999px;
  background: transparent;
  color: #b8b7b2;
  font: 500 12px/1.5 var(--sans);
  letter-spacing: -.01em;
  cursor: pointer;
  transition: background .18s, color .18s, border-color .18s;
}
.studio-store.home-page .store-showcase [data-showcase-tab]:hover {
  color: var(--studio-ivory, #f2eee3);
  border-color: #ffffff6b;
}
.studio-store.home-page .store-showcase [data-showcase-tab][aria-selected="true"] {
  background: var(--studio-ivory, #f2eee3);
  color: var(--studio-ink, #141414);
  border-color: var(--studio-ivory, #f2eee3);
}
.studio-store.home-page .store-showcase .showcase-slide {
  display: grid;
  grid-template-columns: minmax(0, .7fr) minmax(0, 1.3fr);
  align-items: center;
  gap: clamp(28px, 3.3vw, 48px);
  min-height: 520px;
  padding: clamp(28px, 4vw, 56px);
  border: 0;
  border-radius: 20px;
  background: var(--studio-ivory, #f2eee3);
  color: var(--studio-ink, #141414);
  scroll-margin-top: 108px;
}
.studio-store.home-page .store-showcase .showcase-slide + .showcase-slide { margin-top: 24px; }
.studio-store.home-page .store-showcase.showcase-ready .showcase-slide { margin-top: 0; }
.studio-store.home-page .store-showcase .showcase-slide--film {
  grid-template-columns: minmax(0, .56fr) minmax(0, 1.44fr);
}
.studio-store.home-page .store-showcase .showcase-copy { min-width: 0; padding: 0; }
.studio-store.home-page .store-showcase .showcase-copy .studio-kicker {
  color: #706e68;
  font-size: 10px;
  margin-bottom: 20px;
}
.studio-store.home-page .store-showcase .showcase-copy h3 {
  margin: 0 0 22px;
  color: var(--studio-ink, #141414);
  font-size: clamp(34px, 3.6vw, 54px);
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: -.05em;
}
.studio-store.home-page .store-showcase .showcase-copy > p:not(.studio-kicker) {
  max-width: 36ch;
  margin: 0;
  color: #62615a;
  font-size: 15px;
  line-height: 1.85;
}
.studio-store.home-page .store-showcase .showcase-copy > p + p { margin-top: 16px; }
.studio-store.home-page .store-showcase .showcase-copy .studio-link { margin-top: 24px; color: #141414; }
.studio-store.home-page .store-showcase .showcase-points {
  margin: 24px 0 0;
  padding-left: 18px;
  color: #62615a;
  font-size: 13px;
  line-height: 1.8;
}
.studio-store.home-page .store-showcase .showcase-points li + li { margin-top: 8px; }
.studio-store.home-page .store-showcase .showcase-points li::marker { color: #272725; }
.studio-store.home-page .store-showcase .showcase-visual { min-width: 0; margin: 0; }
.studio-store.home-page .store-showcase .showcase-visual :is(img, video) {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  border-radius: 12px;
  background: #141414;
}
.studio-store.home-page .store-showcase .showcase-visual figcaption {
  margin-top: 15px;
  color: #76736b;
  font: 400 11px/1.7 var(--sans);
  letter-spacing: 0;
}
.studio-store.home-page .store-showcase .showcase-video-wrap {
  position: relative;
  overflow: hidden;
  border-radius: 12px;
  background: #141414;
}
.studio-store.home-page .store-showcase :is(.showcase-play, [data-showcase-play]) {
  display: none;
  position: absolute;
  z-index: 1;
  left: 50%;
  top: 50%;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 48px;
  max-width: calc(100% - 40px);
  padding: 13px 22px;
  border: 1px solid #ffffff55;
  border-radius: 999px;
  background: #141414e8;
  color: #f2eee3;
  font: 500 13px/1.5 var(--sans);
  white-space: nowrap;
  transform: translate(-50%, -50%);
  cursor: pointer;
}
.studio-store.home-page .store-showcase.showcase-ready :is(.showcase-play, [data-showcase-play]) { display: inline-flex; }
.studio-store.home-page .store-showcase :is(.showcase-play, [data-showcase-play]):hover {
  background: #2b2b2bf5;
  border-color: #ffffffa0;
}
.studio-store.home-page .store-showcase .showcase-controls {
  display: none;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-top: 24px;
}
.studio-store.home-page .store-showcase.showcase-ready .showcase-controls { display: flex; }
.studio-store.home-page .store-showcase .showcase-controls > div { display: flex; align-items: center; gap: 10px; }
.studio-store.home-page .store-showcase :is([data-showcase-previous], [data-showcase-next]) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 1px solid #ffffff29;
  border-radius: 50%;
  background: #1d1d1d;
  color: #f2eee3;
  font: 400 22px/1 var(--sans);
  cursor: pointer;
  transition: background .18s, border-color .18s;
}
.studio-store.home-page .store-showcase :is([data-showcase-previous], [data-showcase-next]):hover {
  background: #30302e;
  border-color: #ffffff6b;
}
.studio-store.home-page .store-showcase .showcase-count {
  min-width: 62px;
  color: #b5b3ab;
  font: 400 12px/1.5 var(--sans);
  text-align: center;
  font-variant-numeric: tabular-nums;
}

.studio-store.home-page .store-studio,
.studio-store.home-page .store-access {
  padding-block: clamp(80px, 8vw, 100px);
  background: var(--studio-ivory, #f2eee3);
  color: var(--studio-ink, #141414);
}
.studio-store.home-page .store-studio .studio-heading,
.studio-store.home-page .store-access .studio-heading {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, .8fr);
  align-items: start;
  gap: clamp(32px, 7vw, 100px);
  margin-bottom: 44px;
}
.studio-store.home-page :is(.store-studio, .store-access) .studio-heading h2 {
  margin: 0;
  font-size: clamp(40px, 4.5vw, 64px);
  line-height: 1.1;
  letter-spacing: -.052em;
}
.studio-store.home-page :is(.store-studio, .store-access) .studio-heading > p,
.studio-store.home-page :is(.store-studio, .store-access) .studio-heading > div > p:not(.studio-kicker) {
  margin: 0;
  max-width: 48ch;
  color: #63615a;
  font-size: 16px;
  line-height: 1.85;
}
.studio-store.home-page :is(.store-studio, .store-access) .studio-kicker { color: #76736b; }
.studio-store.home-page :is(.store-studio, .store-access) .studio-link { color: inherit; }
.studio-store.home-page .studio-trust-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(28px, 4vw, 56px);
  padding-top: 32px;
  border-top: 1px solid #1414142b;
}
.studio-store.home-page .studio-trust-grid > article { min-width: 0; }
.studio-store.home-page .studio-trust-grid h3 {
  margin: 0 0 14px;
  color: #141414;
  font-size: 23px;
  line-height: 1.3;
  letter-spacing: -.035em;
}
.studio-store.home-page .studio-trust-grid p {
  margin: 0;
  color: #65625b;
  font-size: 14px;
  line-height: 1.85;
}
.studio-store.home-page .studio-access-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  margin-top: 36px;
}
.studio-store.home-page .studio-access-grid.studio-access-grid--single { grid-template-columns: minmax(0,1fr); max-width: 640px; }
.studio-store.home-page .studio-access-grid > :is(article, .studio-access-card) {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-width: 0;
  padding: 32px;
  border: 1px solid #14141433;
  border-radius: 16px;
  background: #f8f6f0;
  color: #141414;
}
.studio-store.home-page .studio-access-grid h3 { margin: 0; font-size: 23px; line-height: 1.3; letter-spacing: -.035em; }
.studio-store.home-page .studio-access-grid p { color: #63615a; font-size: 14px; line-height: 1.8; }
.studio-store.home-page .studio-access-grid .studio-kicker { margin: 0; color: #76736b; font-size: 10px; }
.studio-store.home-page .studio-access-grid :is(.studio-access-price, .access-price) {
  margin: 22px 0 12px;
  color: #141414;
  font-size: clamp(42px, 4vw, 58px);
  line-height: 1.1;
  font-weight: 400;
  letter-spacing: -.055em;
}
.studio-store.home-page .studio-access-grid :is(.studio-access-price, .access-price) :is(small, span) {
  font-size: 14px;
  letter-spacing: 0;
}
.studio-store.home-page :is(.studio-plan-note, .studio-access-note) {
  max-width: 78ch;
  margin: 22px 0 0;
  color: #77736a;
  font-size: 12px;
  line-height: 1.8;
}

@media (max-width: 800px) {
  .studio-store.home-page .store-showcase :is(.showcase-heading, .showcase-header, .studio-section-heading),
  .studio-store.home-page :is(.store-studio, .store-access) .studio-heading { grid-template-columns: 1fr; gap: 24px; }
  .studio-store.home-page .store-showcase :is(.showcase-slide, .showcase-slide--film) {
    grid-template-columns: 1fr;
    min-height: 0;
    padding: 28px;
    gap: 28px;
  }
  .studio-store.home-page .store-showcase .showcase-slide--film .showcase-visual { order: -1; }
  .studio-store.home-page .store-showcase .showcase-copy > p:not(.studio-kicker) { max-width: 60ch; }
  .studio-store.home-page .studio-trust-grid { grid-template-columns: 1fr; gap: 28px; }
  .studio-store.home-page .studio-trust-grid > article + article { padding-top: 28px; border-top: 1px solid #14141424; }
  .studio-store.home-page .studio-access-grid { gap: 18px; }
  .studio-store.home-page .studio-access-grid > :is(article, .studio-access-card) { padding: 26px; }
}
@media (max-width: 600px) {
  .studio-store.home-page :is(.store-showcase, .store-studio, .store-access) { padding-block: 72px; }
  .studio-store.home-page .store-showcase .showcase-tabs {
    flex-wrap: nowrap;
    overflow-x: auto;
    gap: 8px;
    padding: 6px 2px 10px;
    margin-inline: -2px;
    scrollbar-width: thin;
    scrollbar-color: #62615a transparent;
    overscroll-behavior-inline: contain;
  }
  .studio-store.home-page .store-showcase [data-showcase-tab] { padding-inline: 15px; }
  .studio-store.home-page .store-showcase .showcase-slide { padding: 24px; border-radius: 16px; }
  .studio-store.home-page .store-showcase .showcase-copy h3 { font-size: 35px; }
  .studio-store.home-page .store-showcase .showcase-copy > p:not(.studio-kicker) { font-size: 14px; }
  .studio-store.home-page .store-showcase .showcase-controls { justify-content: space-between; }
  .studio-store.home-page .store-showcase :is(.showcase-play, [data-showcase-play]) { min-height: 44px; font-size: 12px; padding: 11px 18px; }
  .studio-store.home-page .studio-access-grid { grid-template-columns: 1fr; }
}
