/* Formal HERO geometry and typography stay in fortune-apple-hero-preview.css. */
.fortune-apple-hero[data-hero-teacher] { touch-action:pan-y; }
.fortune-hero-carousel__controls {position:absolute;z-index:2;top:24px;left:24px;right:24px;display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:start;gap:12px;}
.fortune-hero-carousel__controls button {display:grid;place-items:center;min-width:44px;min-height:44px;padding:0;border:1px solid rgba(216,183,104,.38);border-radius:50%;background:rgba(12,11,9,.68);color:#fff;cursor:pointer;font:500 20px/1 Inter,"Noto Sans TC",sans-serif;backdrop-filter:blur(8px);}
.fortune-hero-carousel__controls button:hover {background:rgba(12,11,9,.9);border-color:#d8b768;}
.fortune-hero-carousel__controls button:active {transform:scale(.96);}
.fortune-hero-carousel__controls button:focus-visible {outline:3px solid #d8b768;outline-offset:4px;}
.fortune-hero-carousel__dots {display:flex;flex-wrap:wrap;justify-content:center;gap:4px;}
.fortune-hero-carousel__dots .fortune-hero-carousel__dot {min-width:44px;min-height:44px;padding:0 8px;border:1px solid transparent;border-radius:8px;background:rgba(12,11,9,.7);font:600 11px/1.2 Inter,"Noto Sans TC",sans-serif;white-space:nowrap;}
.fortune-hero-carousel__dot[aria-current="true"] {border-color:#d8b768;color:#e5cc9b;background:rgba(12,11,9,.94);}
.fortune-hero-carousel__status {position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap;}
.fortune-hero-carousel__feature {position:relative;isolation:isolate;overflow:hidden;box-sizing:border-box;margin:24px 0 0;padding:26px 24px;min-height:210px;border:1px solid rgba(216,183,104,.24);border-radius:16px;background:#080e22;}
.fortune-hero-carousel__feature-art {position:absolute;z-index:-2;inset:0 0 0 auto;width:65%;height:100%;object-fit:cover;object-position:72% 38%;opacity:.9;}
.fortune-hero-carousel__feature::after {position:absolute;z-index:-1;inset:0;content:'';background:linear-gradient(90deg,#080e22 28%,rgba(8,14,34,.94) 45%,rgba(8,14,34,.16) 100%);}
.fortune-hero-carousel__feature-copy {position:relative;max-width:78%;}
.fortune-hero-carousel__feature-eyebrow {margin:0 0 12px;color:#d5bb86;font:500 11px/1.5 Inter,"Noto Sans TC",sans-serif;letter-spacing:.04em;}
.fortune-hero-carousel__feature h2 {margin:0;color:#f2e4c7;white-space:pre-line;font:500 32px/1.15 "Noto Serif TC",Georgia,serif;letter-spacing:.02em;}
.fortune-hero-carousel__feature-topics {margin:10px 0 12px;color:#fff3d8;font:600 18px/1.5 Inter,"Noto Sans TC",sans-serif;}
.fortune-hero-carousel__feature-body {margin:0;max-width:29em;color:rgba(255,255,255,.76);white-space:pre-line;font:400 13px/1.8 Inter,"Noto Sans TC",sans-serif;}
.fortune-hero-carousel__feature[hidden],.fortune-apple-hero [data-fortune-proof-gallery][hidden],.fortune-hero-carousel__controls[hidden] {display:none!important;}
.fortune-apple-hero[data-hero-teacher]:not([data-hero-teacher="mor-a"]) [data-fortune-paid-intent-panel-b] {display:none!important;}
.fortune-apple-hero[data-hero-teacher="ajarn-ann"] .fortune-apple-hero__media img {object-position:70% 40%;}
.fortune-apple-hero[data-hero-teacher]:not([data-hero-teacher="mor-a"]) .fortune-apple-hero__title {white-space:pre-line;}
@media(max-width:600px) {.fortune-hero-carousel__controls {top:16px;left:16px;right:16px;}}
@media(prefers-reduced-motion:reduce) {.fortune-hero-carousel__controls button {transform:none!important;}}

/* Keep the formal mobile template in its semantic source order. */
@media(max-width:760px) {
  .fortune-apple-hero[data-hero-teacher] .fortune-apple-hero__media {
    height:auto;
    aspect-ratio:3 / 2;
  }
  .fortune-apple-hero[data-hero-teacher] .fortune-apple-hero__copy {
    display:block;
  }
}


/* Both teacher labels stay readable; arrows stay at the photo edges. */
@media(max-width:600px) {
  .fortune-hero-carousel__controls {top:0;bottom:0;left:8px;right:8px;display:block;pointer-events:none;}
  .fortune-hero-carousel__controls button {pointer-events:auto;}
  .fortune-hero-carousel__dots {position:absolute;left:0;right:0;top:8px;flex-wrap:nowrap;justify-content:center;}
  .fortune-hero-carousel__dots .fortune-hero-carousel__dot {flex:0 0 auto;min-width:76px;height:44px;padding:0 12px;font-size:12px;}
  .fortune-hero-carousel__controls > [data-hero-teacher-prev],
  .fortune-hero-carousel__controls > [data-hero-teacher-next] {position:absolute;top:calc(50% - 22px);width:44px;height:44px;}
  .fortune-hero-carousel__controls > [data-hero-teacher-prev] {left:0;}
  .fortune-hero-carousel__controls > [data-hero-teacher-next] {right:0;}
}

@media(max-width:760px) {
  .fortune-apple-hero[data-fortune-apple-lang="zh"][data-hero-teacher="mor-a"] .fortune-apple-hero__title {max-width:100%;font-size:clamp(24px,7.6vw,32px);line-height:1.14;}
}
@media(max-width:340px) {
  .fortune-apple-hero[data-hero-teacher] .fortune-apple-hero__offer {display:grid;grid-template-columns:minmax(0,1fr);gap:6px;align-items:start;}
  .fortune-apple-hero[data-hero-teacher] .fortune-apple-hero__offer-label {display:flex;align-items:baseline;flex-wrap:wrap;gap:8px;}
  .fortune-apple-hero[data-hero-teacher] .fortune-apple-hero__price {font-size:28px;line-height:1.12;}
  .fortune-apple-hero[data-hero-teacher] .fortune-apple-hero__button {min-height:52px;height:auto;padding:12px 14px;line-height:1.4;white-space:normal;}
}

@media(max-width:600px) {.fortune-hero-carousel__feature {padding:22px 20px;min-height:226px;}.fortune-hero-carousel__feature-copy {max-width:90%;}.fortune-hero-carousel__feature h2 {font-size:29px;}.fortune-hero-carousel__feature-art {width:75%;opacity:.75;}.fortune-hero-carousel__feature::after {background:linear-gradient(90deg,#080e22 12%,rgba(8,14,34,.84) 48%,rgba(8,14,34,.12) 100%);}}

@media(max-width:340px) {.fortune-hero-carousel__feature-copy {max-width:100%;}.fortune-hero-carousel__feature h2 {font-size:26px;letter-spacing:0;}.fortune-hero-carousel__feature-topics {font-size:16px;}}

@media(max-width:760px) {.fortune-apple-hero[data-fortune-apple-lang="zh"][data-hero-teacher="ajarn-ann"] .fortune-apple-hero__title {font-size:clamp(26px,8vw,36px);line-height:1.2;}}

/* Ann's short service labels remain readable on a narrow phone. */
.fortune-apple-hero[data-hero-teacher="ajarn-ann"] .fortune-apple-hero__trust li {color:rgba(255,255,255,.9);}
@media(max-width:340px) {
  .fortune-apple-hero[data-hero-teacher="ajarn-ann"] .fortune-apple-hero__trust {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;padding:4px 6px;}
  .fortune-apple-hero[data-hero-teacher="ajarn-ann"] .fortune-apple-hero__trust li {min-height:28px;border:0;padding:2px 0;font-size:12px;line-height:1.6;white-space:nowrap;}
}

/* Use the distinct programme poster as a clear, uncropped inset. */
.fortune-hero-carousel__feature {background:#15110b;min-height:235px;}
.fortune-hero-carousel__feature-art {width:41%;object-fit:contain;object-position:right center;opacity:1;}
.fortune-hero-carousel__feature::after {display:none;}
.fortune-hero-carousel__feature-copy {max-width:55%;}
@media(max-width:600px) {
  .fortune-hero-carousel__feature-copy {max-width:60%;}
  .fortune-hero-carousel__feature h2 {font-size:24px;}
  .fortune-hero-carousel__feature-topics {font-size:15px;line-height:1.5;}
  .fortune-hero-carousel__feature-body {font-size:12px;line-height:1.75;}
}

@media(max-width:340px) {.fortune-hero-carousel__feature-topics {white-space:pre-line;}}

/* Ann keeps full questions and clear programme identity at every width. */
.fortune-apple-hero[data-hero-teacher="ajarn-ann"] [data-fortune-apple-copy="proof"] {white-space:pre-line;}
.fortune-hero-carousel__feature-topics {font-weight:700;color:#fff8e9;}
.fortune-hero-carousel__feature::after {display:block;inset:0 0 0 auto;width:41%;background:linear-gradient(90deg,#15110b 0%,transparent 18%,transparent 94%,rgba(21,17,11,.2));pointer-events:none;}
@media(max-width:340px) {
  .fortune-apple-hero[data-hero-teacher="ajarn-ann"] .fortune-apple-hero__offer {gap:3px;}
  .fortune-hero-carousel__feature {display:flex;flex-direction:column;gap:6px;padding:18px 18px 14px;}
  .fortune-hero-carousel__feature-copy {max-width:100%;order:0;}
  .fortune-hero-carousel__feature h2 {font-size:25px;white-space:nowrap;}
  .fortune-hero-carousel__feature-topics {white-space:normal;}
  .fortune-hero-carousel__feature-art {position:relative;inset:auto;order:1;width:100%;height:215px;object-position:center;}
  .fortune-hero-carousel__feature::after {display:none;}
}

@media(max-width:340px) {.fortune-apple-hero[data-hero-teacher="ajarn-ann"] .fortune-apple-hero__trust li:last-child {grid-column:1 / -1;}}

/* Make the existing no-quote fallback an explicit secondary route to plans. */
.fortune-apple-hero__price.is-plan-link { font-size: 18px; line-height: 1.5; }
.fortune-hero-carousel__plan-link { display: inline-flex; align-items: center; min-height: 44px; padding: 4px 12px; box-sizing: border-box; border: 1px solid rgba(216,183,104,.45); border-radius: 8px; color: #e5cc9b; font: 600 18px/1.5 Inter,"Noto Sans TC",sans-serif; text-decoration: none; white-space: nowrap; }
.fortune-hero-carousel__plan-link:hover { color: #fff3d8; border-color: #d8b768; background: rgba(216,183,104,.08); text-decoration: none; }
.fortune-hero-carousel__plan-link:active { background: rgba(216,183,104,.16); }
.fortune-hero-carousel__plan-link:focus-visible { outline: 3px solid #d8b768; outline-offset: 4px; }

.fortune-apple-hero[data-hero-teacher="ajarn-ann"] .fortune-apple-hero__button:disabled,
.fortune-apple-hero[data-hero-teacher="ajarn-ann"] .fortune-apple-hero__button:disabled:hover {
  background: #302b23;
  border: 1px solid rgba(216,183,104,.28);
  color: #d5c8b1;
  box-shadow: none;
  cursor: not-allowed;
}

/* Ann: keep the programme photo and the service panel balanced. */
@media(min-width:761px){
  .fortune-apple-hero[data-hero-teacher="ajarn-ann"]{grid-template-columns:minmax(0,.95fr) minmax(480px,1.05fr)}
  .fortune-apple-hero[data-hero-teacher="ajarn-ann"] .fortune-apple-hero__media{height:clamp(620px,calc(100svh - 96px),900px);align-self:start}
  .fortune-apple-hero[data-hero-teacher="ajarn-ann"] .fortune-apple-hero__inner{padding:36px 40px}
}
.fortune-apple-hero[data-hero-teacher="ajarn-ann"] .fortune-apple-hero__proof span{color:#d5d0c7;font-size:14px;line-height:1.75}
.fortune-apple-hero[data-hero-teacher="ajarn-ann"] .fortune-apple-hero__offer{margin-top:24px;padding-top:20px;border-top:1px solid rgba(229,204,155,.22)}
.fortune-apple-hero[data-hero-teacher="ajarn-ann"] .fortune-apple-hero__offer-duration{color:#d5d0c7;white-space:normal}
@media(max-width:760px){
  .fortune-apple-hero[data-hero-teacher="ajarn-ann"] .fortune-apple-hero__inner{padding:28px 24px 36px}
  .fortune-apple-hero[data-hero-teacher="ajarn-ann"] .fortune-apple-hero__proof{margin-top:20px;gap:10px}
  .fortune-apple-hero[data-hero-teacher="ajarn-ann"] .fortune-apple-hero__trust{margin-top:20px}
  .fortune-apple-hero[data-hero-teacher="ajarn-ann"] .fortune-apple-hero__actions{margin-top:18px}
  .fortune-apple-hero[data-hero-teacher="ajarn-ann"] .fortune-hero-carousel__feature{margin-top:28px}
}

/* Keep the programme credit and teacher name on intentional separate lines. */
.fortune-hero-carousel__feature-topics { white-space: pre-line; }

@media(min-width:761px){ .fortune-apple-hero[data-hero-teacher="ajarn-ann"] .fortune-apple-hero__media img { object-position:60% 40%; } }
.fortune-apple-hero[data-hero-teacher="ajarn-ann"] [data-fortune-apple-copy="proofDetail"] { text-wrap:pretty; }

/* Ann uses a complete portrait, without Mor A's layered subject offset. */
.fortunev2-meet-ann .fortunev2-meet-mor-a__photo-subject { transform:none; mask-image:none; -webkit-mask-image:none; object-position:60% 42%; }

/* Ann mobile first screen: identity, service, price and booking before long copy. */
.fortune-apple-proof__controls button:disabled { opacity:.35; cursor:default; }
@media(max-width:760px){
 .fortune-apple-hero[data-hero-teacher="ajarn-ann"] .fortune-apple-hero__media{aspect-ratio:16 / 9}
 .fortune-apple-hero[data-hero-teacher="ajarn-ann"] .fortune-apple-hero__inner{padding:20px 24px 28px}
 .fortune-apple-hero[data-hero-teacher="ajarn-ann"] .fortune-apple-hero__proof{margin-top:12px}
 .fortune-apple-hero[data-hero-teacher="ajarn-ann"] [data-fortune-apple-copy="proofDetail"]{display:none}
 .fortune-apple-hero[data-hero-teacher="ajarn-ann"] .fortune-apple-hero__trust{margin-top:14px}
 .fortune-apple-hero[data-hero-teacher="ajarn-ann"] .fortune-apple-hero__offer{margin-top:14px;padding-top:14px}
 .fortune-apple-hero[data-hero-teacher="ajarn-ann"] .fortune-apple-hero__actions{margin-top:14px}
 .fortune-apple-hero[data-hero-teacher="ajarn-ann"] .fortune-apple-proof{margin-top:20px}
}

/* Keep the shared review gallery clear of the mobile support mascot. */
.fortune-apple-hero .fortune-apple-hero__button--primary{color:#211509}
.fortune-apple-hero .fortune-apple-hero__actions small{color:#c7c1b8;font-size:12px;line-height:1.5}
@media(max-width:760px){
 .fortune-apple-hero .fortune-apple-proof{padding-right:64px}
 .fortune-apple-hero .fortune-apple-proof__head,
 .fortune-apple-hero .fortune-apple-proof__foot{flex-wrap:wrap;gap:10px}
}
@media(max-width:340px){
 .fortune-apple-hero[data-hero-teacher="ajarn-ann"] .fortune-apple-hero__trust{margin-top:6px}
 .fortune-apple-hero[data-hero-teacher="ajarn-ann"] .fortune-apple-hero__offer{margin-top:6px;padding-top:8px}
 .fortune-apple-hero[data-hero-teacher="ajarn-ann"] .fortune-apple-hero__actions{margin-top:6px;gap:4px}
}
