/* Match the actual homepage scroll canvas and rose water-drop component. */
.is-tarot-native .tarot-flow-track,
.is-tarot-native .tarot-story { position: relative; }
.is-tarot-native .tarot-landing-hero,
.is-tarot-native.is-story-motion .tarot-story__stage {
  position: sticky;
  top: var(--tarot-header-height, 96px);
  height: max(220px, calc(100svh - var(--tarot-header-height, 96px)));
  min-height: 0;
}
.is-tarot-native .tarot-landing-hero__inner { height: 100%; min-height: 0; }
.is-tarot-native .tarot-landing-hero__title-wrap { padding-top: clamp(24px, 6vh, 70px); }
.is-tarot-native .tarot-landing-hero__lede { margin-top: clamp(55px, 9vh, 110px); }
.is-tarot-flow .tarot-landing-worldview__axis-point,
.is-tarot-flow .tarot-story__period {
  background: var(--rose);
  border-radius: var(--radius-drop);
  box-shadow: 0 0 0 5px rgba(197,139,142,.14), 0 0 25px rgba(197,139,142,.42);
}
.is-tarot-native .tarot-story__media {
  width: min(100%, 350px);
  height: min(62svh, 470px);
  margin: 0 auto;
}
.is-tarot-native .tarot-story-wash,
.is-tarot-flow .tarot-entry-path__image-link img {
  filter: none;
}
.is-tarot-native .tarot-story__media {
  -webkit-mask: url('../img/photo-wash-edge-b.svg') center / 100% 100% no-repeat;
  mask: url('../img/photo-wash-edge-b.svg') center / 100% 100% no-repeat;
}
.is-tarot-flow .tarot-entry-path__image-link {
  width: min(100%, 340px);
  -webkit-mask: url('../img/photo-wash-edge-b.svg') center / 100% 100% no-repeat;
  mask: url('../img/photo-wash-edge-b.svg') center / 100% 100% no-repeat;
}
.is-tarot-flow .tarot-entry-path__image-link img { width: 100%; height: auto; aspect-ratio: 3 / 4; object-fit: contain; }
.is-tarot-native .tarot-entry-path__feature-inner { gap: clamp(32px, 6vw, 80px); }
.is-tarot-native .tarot-story__scene,
.is-tarot-native .tarot-story__final { pointer-events: none; }
@media (max-width: 760px) {
  .is-tarot-native .tarot-landing-hero__inner { padding-block: 24px 32px; }
  .is-tarot-native .tarot-landing-hero__title-wrap { padding-top: 30px; }
  .is-tarot-native .tarot-landing-hero__lede { margin-top: 40px; }
  .is-tarot-native .tarot-story__scene { gap: 22px; padding-block: 18px; }
  .is-tarot-native .tarot-story__media { width: min(72%, 280px); height: min(49svh, 360px); }
  .is-tarot-native .tarot-story__line { font-size: clamp(27px, 7.5vw, 36px); }
  .is-tarot-native .tarot-story__final { padding-inline: 24px; }
  .is-tarot-flow .tarot-entry-path__image-link { width: min(80%, 280px); }
}
@media (max-height: 560px) and (min-width: 761px) {
  .is-tarot-native .tarot-story__media { height: 72%; }
  .is-tarot-native .tarot-landing-hero__title { font-size: clamp(48px, 6vw, 76px); }
  .is-tarot-native .tarot-landing-hero__inner { padding-block: 16px; }
  .is-tarot-native .tarot-landing-hero__title-wrap { padding-top: 0; }
  .is-tarot-native .tarot-landing-hero__lede { margin-top: 24px; }
}
.is-tarot-flow:not(.is-tarot-native) .tarot-story__media {
  width: min(100%, 350px);
  height: auto;
  max-height: none;
  margin-inline: auto;
}
.is-tarot-flow:not(.is-tarot-native) .tarot-story__media > img { height: auto; object-fit: contain; }

/* Editorial refinement: real serif glyphs, photographic centres, wet alpha. */
@font-face {
  font-family: "UNIQorn Tarot Serif";
  src: url('../fonts/tarot-serif-sc.woff') format('woff');
  font-style: normal;
  font-weight: 400 500;
  font-display: swap;
}
.is-tarot-flow { --font-serif: "UNIQorn Tarot Serif", var(--font-display); }
.is-tarot-flow .tarot-landing-section-head h2 { font-size: clamp(44px, 4.7vw, 64px); line-height: 1.35; }
.is-tarot-flow .tarot-landing-worldview__entry h3 { font-size: clamp(30px, 3vw, 42px); line-height: 1.5; }
.is-tarot-flow .tarot-landing-worldview__desc,
.is-tarot-flow .tarot-landing-worldview__entry > p:last-child,
.is-tarot-flow .tarot-entry-path__copy { font-size: var(--text-lg); line-height: 1.95; color: rgba(30,58,95,.78); }
.is-tarot-flow .tarot-entry-path h2 { font-size: clamp(32px, 3.35vw, 44px); line-height: 1.5; }
.is-tarot-flow .tarot-entry-path__link { font-size: 17px; }
.is-tarot-flow .tarot-story__line { font-size: clamp(42px, 3.2vw, 46px); line-height: 1.55; font-weight: 400; margin-left: clamp(24px, 4.8vw, 66px); }
.is-tarot-flow .tarot-story__final-line { font-size: clamp(46px, 3.5vw, 50px); line-height: 1.55; font-weight: 400; }
.is-tarot-native .tarot-story__media { width: min(100%, 370px); height: min(64svh, 510px); -webkit-mask: none; mask: none; }
.is-tarot-native .tarot-story-wash { filter: none; }
.is-tarot-native .tarot-story-photo {
  -webkit-mask: url('../img/photo-wash-edge-b.svg') center / 100% 100% no-repeat;
  mask: url('../img/photo-wash-edge-b.svg') center / 100% 100% no-repeat;
}
.is-tarot-native .tarot-story-photo image,
.is-tarot-flow .tarot-story__media > img,
.is-tarot-flow .tarot-entry-path__image-link img { filter: none; }
.is-tarot-flow .tarot-entry-path__image-link {
  width: min(100%, 360px);
  -webkit-mask-image: url('../img/photo-wash-edge-b.svg'), radial-gradient(ellipse at 44% 46%, #000 var(--wash-solid, 150%), transparent var(--wash-edge, 187%));
  mask-image: url('../img/photo-wash-edge-b.svg'), radial-gradient(ellipse at 44% 46%, #000 var(--wash-solid, 150%), transparent var(--wash-edge, 187%));
  -webkit-mask-composite: source-in;
  mask-composite: intersect;
}
@media (max-width: 760px) {
  .is-tarot-flow .tarot-landing-section-head h2 { font-size: clamp(34px, 10.6vw, 44px); line-height: 1.45; }
  .is-tarot-flow .tarot-landing-worldview__entry h3 { font-size: var(--text-2xl); }
  .is-tarot-flow .tarot-landing-worldview__desc,
  .is-tarot-flow .tarot-landing-worldview__entry > p:last-child,
  .is-tarot-flow .tarot-entry-path__copy { font-size: 17px; line-height: 1.95; }
  .is-tarot-flow .tarot-entry-path h2 { font-size: clamp(28px, 7.7vw, 34px); line-height: 1.55; }
  .is-tarot-flow .tarot-story__line { font-size: clamp(30px, 8vw, 32px); line-height: 1.5; margin-left: 22px; }
  .is-tarot-flow .tarot-story__final-line { font-size: 34px; line-height: 1.55; }
  .is-tarot-native .tarot-story__media { width: min(88%, 300px); height: min(49svh, calc((100svh - var(--tarot-header-height, 132px)) * .52), 370px); margin-inline: auto; }
  .is-tarot-flow .tarot-entry-path__image-link { width: min(88%, 300px); }
}
@media (max-height: 560px) and (min-width: 761px) {
  .is-tarot-native .tarot-story__media { height: 74%; }
  .is-tarot-flow .tarot-story__line { font-size: 36px; }
}
.is-tarot-flow .tarot-story__media > img {
  -webkit-mask: url('../img/photo-wash-edge-b.svg') center / 100% 100% no-repeat;
  mask: url('../img/photo-wash-edge-b.svg') center / 100% 100% no-repeat;
}
