/* Sikho Aur Sikhao: magic effects + small style helpers.
   Loaded by the "Sikho Aur Sikhao Magic" loader. Layout itself lives in Elementor; these
   classes only add effects. Class names are set in Elementor > Advanced > CSS Classes. */
:root {
  --sas-bg: #061416; --sas-abyss: #040C0E; --sas-card: #0B1F22; --sas-raised: #122C30;
  --sas-line: rgba(170,225,214,.14); --sas-line-strong: rgba(170,225,214,.28);
  --sas-ember: #FF6A3D; --sas-ember-glow: #FF9C77; --sas-jade: #6FE3C8; --sas-mist: #B8F3E4;
  --sas-ink: #F2ECE1; --sas-muted: #A9BAB6; --sas-dim: #7F9590; --sas-draft: #F2C46D; --sas-error: #FF8A80;
  --sas-ease: cubic-bezier(.22,1,.36,1); --sas-spring: cubic-bezier(.34,1.56,.64,1);
}
body { background: var(--sas-bg); -webkit-font-smoothing: antialiased; }
::selection { background: var(--sas-ember); color: var(--sas-abyss); }
:focus-visible { outline: 2px solid var(--sas-ember); outline-offset: 3px; }

/* Headings: one italic accent word in ember glow */
.elementor-heading-title em { font-style: italic; font-weight: 500; color: var(--sas-ember-glow); padding-bottom: .06em; }
.sas-eyebrow .elementor-heading-title { display: inline-flex; align-items: center; gap: 10px; }
.sas-eyebrow .elementor-heading-title::before { content: ""; width: 24px; height: 1px; background: currentColor; opacity: .7; }
.sas-draft-label .elementor-heading-title, .sas-draft { color: var(--sas-draft) !important; }

/* Hello header & footer polish */
#site-header, .site-header { border-bottom: 1px solid var(--sas-line); }
.site-header .site-navigation ul.menu li a { transition: color .2s; }
.site-header .site-navigation ul.menu li a:hover, .site-header .site-navigation ul.menu li.current-menu-item a { color: var(--sas-ink) !important; }
.site-header .site-navigation ul.menu li.current-menu-item a { box-shadow: inset 0 -1px 0 var(--sas-ember); }
.site-header .site-navigation-dropdown ul.menu { background: var(--sas-card) !important; }
.site-header .site-navigation-dropdown ul.menu li a { color: var(--sas-ink) !important; background: var(--sas-card) !important; border-bottom: 1px solid var(--sas-line); }
#site-footer, .site-footer { border-top: 1px solid var(--sas-line); }

/* Buttons (Elementor button widget) */
.elementor-button { position: relative; overflow: hidden; isolation: isolate; transform: translate(var(--mx, 0px), var(--my, 0px));
  transition: background-color .25s var(--sas-ease), color .25s, border-color .25s, box-shadow .25s var(--sas-ease), transform .25s var(--sas-ease) !important; }
.elementor-button:hover { box-shadow: 0 0 0 1px rgba(255,106,61,.35), 0 10px 40px -8px rgba(255,106,61,.55); }
.sas-ghost .elementor-button { background: rgba(255,255,255,.02) !important; color: var(--sas-ink) !important; border: 1px solid var(--sas-line-strong) !important; }
.sas-ghost .elementor-button:hover { border-color: var(--sas-jade) !important; background: rgba(111,227,200,.07) !important; box-shadow: none; }
.sas-link .elementor-button { background: transparent !important; color: var(--sas-jade) !important; padding: 8px 0 !important; border-radius: 0 !important; box-shadow: none !important; }
.sas-link .elementor-button .elementor-button-text { background: linear-gradient(currentColor, currentColor) 0 100% / 30% 1px no-repeat; transition: background-size .45s var(--sas-ease); padding-bottom: 2px; }
.sas-link .elementor-button:hover .elementor-button-text { background-size: 100% 1px; }

/* Cards */
.sas-card { transition: transform .45s var(--sas-ease), border-color .45s, box-shadow .45s var(--sas-ease); transform-style: preserve-3d; }
.sas-card::before { content: ""; position: absolute; inset: 0; border-radius: inherit; pointer-events: none; z-index: 0;
  background: radial-gradient(400px circle at var(--gx, 50%) var(--gy, 0%), rgba(111,227,200,.10), transparent 45%); opacity: 0; transition: opacity .45s; }
@media (hover: hover) {
  .sas-card:hover { border-color: rgba(111,227,200,.35) !important; box-shadow: 0 18px 50px -12px rgba(0,0,0,.65), 0 0 40px -6px rgba(111,227,200,.45); }
  .sas-card:hover::before { opacity: 1; }
  .sas-card:hover img { transform: scale(1.045); }
}
.sas-card img { transition: transform .8s var(--sas-ease); }
.sas-card .elementor-widget-image { overflow: hidden; }

/* Real photos: cover + face-safe focal points */
.sas-photo img { width: 100%; object-fit: cover; }
.sas-pos-stage img { object-position: 50% 20% !important; }
.sas-pos-study img { object-position: 48% 30% !important; }
.sas-pos-armchair img { object-position: 58% 36% !important; }
.sas-photo-glow img { box-shadow: 0 18px 50px -12px rgba(0,0,0,.65), 0 0 90px -30px rgba(255,106,61,.45); }

/* Hero portrait in an arched "portal" with rings and sparks */
.sas-portal { position: relative; isolation: isolate; }
.sas-portal { position: relative; }
.sas-portal img { aspect-ratio: 4 / 5; width: 100%; height: auto; object-fit: cover; object-position: 50% 24% !important;
  border-radius: 999px 999px 24px 24px; border: 1px solid rgba(255,156,119,.38);
  box-shadow: 0 0 0 10px rgba(111,227,200,.035), 0 40px 90px -30px rgba(0,0,0,.9), 0 0 130px -25px rgba(255,106,61,.4); }
.sas-portal::before { content: ""; position: absolute; inset: -6% -10% 2%; z-index: -1; border-radius: 50%;
  border: 1px dashed rgba(170,225,214,.18); animation: sas-spin 60s linear infinite; }
.sas-portal::after { content: ""; position: absolute; inset: 28% -14% 30%; z-index: -1; border-radius: 50%;
  border: 1px solid rgba(255,156,119,.3); transform: rotate(-8deg); }
.sas-sparks { position: absolute; inset: 0; pointer-events: none; }
.sas-sparks i { position: absolute; width: 4px; height: 4px; border-radius: 50%; background: var(--sas-mist); box-shadow: 0 0 10px var(--sas-jade); animation: sas-flicker 3.2s ease-in-out infinite; }
@keyframes sas-spin { to { transform: rotate(360deg); } }
@keyframes sas-flicker { 0%, 100% { opacity: .2; transform: scale(.6); } 50% { opacity: 1; transform: scale(1.2); } }

/* Hero background stars */
.sas-stars { position: relative; isolation: isolate; overflow: hidden; }
.sas-stars::after { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; opacity: .5;
  background-image: radial-gradient(1px 1px at 20% 30%, #fff, transparent 60%), radial-gradient(1px 1px at 70% 15%, #B8F3E4, transparent 60%), radial-gradient(1.5px 1.5px at 85% 60%, #fff, transparent 60%), radial-gradient(1px 1px at 35% 75%, #B8F3E4, transparent 60%), radial-gradient(1.5px 1.5px at 10% 85%, #FF9C77, transparent 60%);
  background-size: 420px 420px; animation: sas-twinkle 6s ease-in-out infinite alternate; }
@keyframes sas-twinkle { to { opacity: .22; } }

/* Placeholder blocks (things still to be supplied) */
.sas-placeholder { border: 1px dashed rgba(242,196,109,.4) !important; background: rgba(242,196,109,.04) !important; }

/* Cursor glow, spark trail, ripple, burst */
.sas-cursor-glow { position: fixed; left: 0; top: 0; width: 420px; height: 420px; margin: -210px 0 0 -210px; border-radius: 50%; pointer-events: none; z-index: 1;
  opacity: 0; mix-blend-mode: screen; background: radial-gradient(circle, rgba(111,227,200,.09), rgba(255,106,61,.04) 35%, transparent 65%); transition: opacity .8s; will-change: transform; }
.sas-cursor-glow.is-on { opacity: 1; }
.sas-spark { position: fixed; left: 0; top: 0; width: 5px; height: 5px; margin: -2.5px 0 0 -2.5px; border-radius: 50%; pointer-events: none; z-index: 9990;
  background: var(--sas-mist); box-shadow: 0 0 8px var(--sas-jade); animation: sas-spark-fade .8s var(--sas-ease) forwards; }
.sas-spark--ember { background: var(--sas-ember-glow); box-shadow: 0 0 8px var(--sas-ember); }
@keyframes sas-spark-fade { to { opacity: 0; transform: translate(var(--tx, 0), var(--ty, 12px)) scale(.2); } }
.sas-ripple { position: absolute; border-radius: 50%; pointer-events: none; z-index: -1; transform: scale(0); background: radial-gradient(circle, rgba(255,255,255,.5), rgba(255,255,255,0) 70%); animation: sas-ripple .65s var(--sas-ease) forwards; }
@keyframes sas-ripple { to { transform: scale(1); opacity: 0; } }
.sas-burst-dot { position: fixed; left: 0; top: 0; width: 6px; height: 6px; margin: -3px 0 0 -3px; border-radius: 50%; pointer-events: none; z-index: 9995;
  background: var(--sas-ember-glow); box-shadow: 0 0 10px var(--sas-ember); animation: sas-burst-dot .7s var(--sas-ease) forwards; }
.sas-burst-dot:nth-child(even) { background: var(--sas-mist); box-shadow: 0 0 10px var(--sas-jade); }
@keyframes sas-burst-dot { to { transform: translate(var(--tx), var(--ty)) scale(.2); opacity: 0; } }

/* Fluent Forms, dark theme */
.fluentform .ff-el-group { margin-bottom: 18px; }
.fluentform .ff-el-input--label label, .fluentform .ff-el-input--label { color: var(--sas-ink) !important; font: 600 14px/1.4 Manrope, system-ui, sans-serif; }
.fluentform .ff-el-input--label.ff-el-is-required.asterisk-right label::after { color: var(--sas-ember-glow) !important; }
.fluentform .ff-el-form-control { background: var(--sas-bg) !important; color: var(--sas-ink) !important; border: 1px solid #2A4B4F !important; border-radius: 10px !important;
  min-height: 48px; padding: 12px 14px !important; font: 400 16px Manrope, system-ui, sans-serif !important; transition: border-color .2s, box-shadow .2s; }
.fluentform textarea.ff-el-form-control { min-height: 130px; }
.fluentform .ff-el-form-control:focus { border-color: var(--sas-jade) !important; box-shadow: 0 0 0 4px rgba(111,227,200,.15) !important; outline: none; }
.fluentform select.ff-el-form-control option { background: var(--sas-card); color: var(--sas-ink); }
.fluentform .ff-el-help-message { color: var(--sas-dim) !important; font-size: 13px; }
.fluentform .ff-el-is-error .ff-el-form-control { border-color: var(--sas-error) !important; }
.fluentform .error, .fluentform .text-danger { color: var(--sas-error) !important; font-size: 13px; }
.fluentform .ff_t_c, .fluentform .ff-el-form-check-label { color: var(--sas-muted) !important; }
.fluentform .ff-el-form-check-input { accent-color: var(--sas-jade); width: 18px; height: 18px; }
.fluentform .ff-btn-submit { background: var(--sas-ember) !important; color: var(--sas-abyss) !important; border: 0 !important; border-radius: 999px !important;
  padding: 16px 30px !important; font: 600 15px Manrope, system-ui, sans-serif !important; position: relative; overflow: hidden; transition: background .25s, box-shadow .25s; }
.fluentform .ff-btn-submit:hover { background: var(--sas-ember-glow) !important; box-shadow: 0 10px 40px -8px rgba(255,106,61,.55); }
.ff-message-success { background: rgba(111,227,200,.08) !important; border: 1px solid rgba(111,227,200,.35) !important; color: var(--sas-mist) !important; border-radius: 12px; padding: 18px !important; box-shadow: none !important; }
.ff-errors-in-stack { color: var(--sas-error); }
.flatpickr-calendar { background: var(--sas-card); box-shadow: 0 18px 50px -12px rgba(0,0,0,.65); }

/* The Mind Mirror (shortcode [sas_mind_mirror]) */
.sas-mirror { text-align: center; color: var(--sas-muted); font-family: Manrope, system-ui, sans-serif; }
.sas-mirror [hidden] { display: none !important; }
.sas-mirror__stage { background: linear-gradient(180deg, rgba(18,44,48,.75), rgba(11,31,34,.9)); border: 1px solid var(--sas-line); border-radius: 16px; padding: clamp(24px, 4vw, 48px); min-height: 340px; display: flex; flex-direction: column; justify-content: center; }
.sas-mirror__step { display: flex; flex-direction: column; align-items: center; gap: 16px; }
.sas-mirror__step.is-active { animation: sas-step-in .8s var(--sas-ease); }
@keyframes sas-step-in { from { opacity: 0; transform: translateY(12px); filter: blur(4px); } }
.sas-mirror__count { margin: 0; font-size: 12px; letter-spacing: .2em; text-transform: uppercase; color: var(--sas-jade); }
.sas-mirror h3 { margin: 0; font-family: "Cormorant Garamond", Georgia, serif; font-weight: 600; font-size: clamp(26px, 3vw, 32px); color: var(--sas-ink); line-height: 1.15; }
.sas-mirror p { margin: 0; max-width: 52ch; }
.sas-mirror ol { text-align: left; display: grid; gap: 6px; padding-left: 1.4em; margin: 0; }
.sas-mirror__btn { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 0 26px; border-radius: 999px; border: 0; cursor: pointer;
  background: var(--sas-ember); color: var(--sas-abyss); font: 600 15px Manrope, system-ui, sans-serif; position: relative; overflow: hidden; transition: background .25s, box-shadow .25s; }
.sas-mirror__btn:hover { background: var(--sas-ember-glow); box-shadow: 0 10px 40px -8px rgba(255,106,61,.55); }
.sas-mirror__btn--ghost { background: transparent; color: var(--sas-ink); border: 1px solid var(--sas-line-strong); }
.sas-mirror__btn--ghost:hover { background: rgba(111,227,200,.07); border-color: var(--sas-jade); box-shadow: none; }
.sas-mirror__grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 4px; width: 100%; max-height: 300px; overflow-y: auto; padding: 8px; border-radius: 10px; background: var(--sas-abyss); border: 1px solid var(--sas-line); text-align: left; }
.sas-mirror__cell { display: flex; align-items: center; justify-content: space-between; gap: 4px; padding: 6px 8px; border-radius: 6px; font-size: 13px; background: rgba(255,255,255,.02); font-variant-numeric: tabular-nums; }
.sas-mirror__cell b, .sas-mirror__symbol { font-weight: 400; color: var(--sas-mist); font-family: "Segoe UI Symbol", "Apple Symbols", "Noto Sans Symbols 2", system-ui, sans-serif; }
.sas-mirror__cell b { font-size: 17px; }
.sas-mirror__orb { position: relative; display: grid; place-items: center; width: 132px; height: 132px; border-radius: 50%; border: 0; padding: 0; cursor: pointer; overflow: hidden; margin-top: 12px; background: none; }
.sas-mirror__orb span:first-child { position: absolute; inset: 0; border-radius: 50%; background: radial-gradient(circle at 35% 30%, rgba(255,255,255,.5), transparent 20%), radial-gradient(circle at 60% 70%, rgba(255,106,61,.55), transparent 50%), radial-gradient(circle, rgba(111,227,200,.55), var(--sas-abyss) 75%); box-shadow: inset 0 0 30px rgba(111,227,200,.4); animation: sas-breathe 3.5s ease-in-out infinite; }
.sas-mirror__orb span:last-child { position: relative; font: 700 12px Manrope, sans-serif; letter-spacing: .12em; text-transform: uppercase; color: var(--sas-ink); text-shadow: 0 1px 6px rgba(0,0,0,.8); }
@keyframes sas-breathe { 50% { transform: scale(1.04); filter: brightness(1.12); } }
.sas-mirror__card { width: 170px; aspect-ratio: 5 / 7; perspective: 1000px; }
.sas-mirror__card-inner { position: relative; width: 100%; height: 100%; transform-style: preserve-3d; transition: transform 1.4s var(--sas-ease); }
.sas-mirror__card.is-flipped .sas-mirror__card-inner { transform: rotateY(180deg); }
.sas-mirror__face { position: absolute; inset: 0; display: grid; place-items: center; border-radius: 14px; backface-visibility: hidden; -webkit-backface-visibility: hidden; border: 1px solid var(--sas-line-strong); }
.sas-mirror__back { background: repeating-linear-gradient(45deg, rgba(111,227,200,.08) 0 6px, transparent 6px 12px), linear-gradient(160deg, var(--sas-raised), var(--sas-abyss)); color: var(--sas-ember-glow); font-size: 32px; }
.sas-mirror__front { transform: rotateY(180deg); background: radial-gradient(circle at 50% 40%, rgba(111,227,200,.25), transparent 70%), var(--sas-card); box-shadow: 0 0 40px -6px rgba(111,227,200,.45); }
.sas-mirror__symbol { font-size: 72px; line-height: 1; text-shadow: 0 0 24px rgba(111,227,200,.6); }
.sas-mirror__verdict { font-family: "Cormorant Garamond", Georgia, serif; font-size: 24px; color: var(--sas-ink); }
.sas-mirror__actions { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; }
.sas-mirror__note { font-size: 13px; color: var(--sas-dim); }
@media (min-width: 480px) { .sas-mirror__grid { grid-template-columns: repeat(6, minmax(0, 1fr)); } }
@media (min-width: 768px) { .sas-mirror__grid { grid-template-columns: repeat(10, minmax(0, 1fr)); max-height: none; } .sas-mirror__cell { flex-direction: column; gap: 2px; padding: 6px 2px; } }

@media (prefers-reduced-motion: reduce) {
  .sas-cursor-glow, .sas-spark, .sas-burst-dot, .sas-ripple { display: none !important; }
  .sas-portal::before, .sas-sparks i, .sas-stars::after, .sas-mirror__orb span:first-child { animation: none !important; }
  .sas-mirror__card-inner { transform: none !important; transition: none !important; }
  .sas-mirror__back { display: none; } .sas-mirror__front { transform: none; backface-visibility: visible; }
  .sas-card, .sas-card img, .elementor-button { transition: none !important; }
}

.sas-ink { color: var(--sas-ink); }

/* Numbered steps (Book a Show) */
.sas-steps { list-style: none; counter-reset: s; padding: 0; margin: 8px 0 0; display: grid; gap: 22px; }
.sas-steps li { counter-increment: s; position: relative; padding-left: 50px; }
.sas-steps li::before { content: counter(s); position: absolute; left: 0; top: -2px; width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; border: 1px solid var(--sas-line-strong); color: var(--sas-mist); font-weight: 700; font-size: 14px; }

.sas-portal img { max-width: 460px; margin-inline: auto; display: block; }

.sas-inline-error { color: var(--sas-error); font-size: 13px; margin-top: 6px; }

/* =========================================================
   v3 (2026-10-20): sticky header, scroll-to-form, phone code,
   Shop, YouTube players, WhatsApp button, menu CTA
   ========================================================= */
html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
[id] { scroll-margin-top: 96px; }
#enquiry { scroll-margin-top: 72px; }

/* Sticky header with a soft glass background */
#site-header.site-header { position: sticky; top: 0; z-index: 990; background: rgba(6, 20, 22, .9) !important; -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); }
.admin-bar #site-header.site-header { top: 32px; }
@media (max-width: 782px) { .admin-bar #site-header.site-header { top: 46px; } }
@media (max-width: 600px) { .admin-bar #site-header.site-header { top: 0; } }

/* "Book a Show" menu item as a button */
.site-header .site-navigation ul.menu li.sas-menu-cta > a { background: var(--sas-ember); color: #1A0A04 !important; border-radius: 999px; padding: 9px 18px !important; font-weight: 700; box-shadow: 0 6px 22px -8px rgba(255, 106, 61, .7); }
.site-header .site-navigation ul.menu li.sas-menu-cta > a:hover { background: var(--sas-ember-glow); color: #1A0A04 !important; }
.site-header .site-navigation ul.menu li.sas-menu-cta.current-menu-item > a { box-shadow: 0 6px 22px -8px rgba(255, 106, 61, .7); }
.site-header .site-navigation-dropdown ul.menu li.sas-menu-cta > a { color: var(--sas-ember-glow) !important; font-weight: 700; }

/* Phone: country code + number side by side */
.fluentform .ff-t-cell:has(.sas-cc) { display: grid; grid-template-columns: minmax(118px, 36%) 1fr; column-gap: 10px; align-items: start; }
.fluentform .ff-t-cell:has(.sas-cc) > .ff-el-group { margin-bottom: 0; }
.fluentform .ff-t-cell:has(.sas-cc) { margin-bottom: 20px; }
.fluentform .sas-cc select { padding-right: 26px; text-overflow: ellipsis; }
.fluentform .sas-phone .ff-el-help-message { grid-column: 1 / -1; }

/* Shop */
.sas-shop { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
@media (max-width: 1024px) { .sas-shop { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .sas-shop { grid-template-columns: 1fr; gap: 18px; } }
.sas-product { display: flex; flex-direction: column; overflow: hidden; border-radius: 20px; background: var(--sas-card); border: 1px solid var(--sas-line); }
.sas-product__media { position: relative; aspect-ratio: 4 / 3; background: var(--sas-raised); }
.sas-product__media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.sas-product__ph { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; color: var(--sas-dim); background: radial-gradient(circle at 50% 40%, #17383C, var(--sas-raised) 70%); }
.sas-product__ph span { font-size: 56px; line-height: 1; color: #E0B565; opacity: .8; }
.sas-product__ph small { font-size: 12px; letter-spacing: .14em; text-transform: uppercase; }
.sas-product__badge { position: absolute; top: 14px; left: 14px; padding: 5px 10px; border-radius: 999px; font: 700 11px/1 Manrope, sans-serif; letter-spacing: .08em; text-transform: uppercase; background: rgba(242, 196, 109, .16); color: var(--sas-draft); border: 1px dashed rgba(242, 196, 109, .6); }
.sas-product__badge.is-sold { left: auto; right: 14px; background: rgba(255, 138, 128, .16); color: var(--sas-error); border: 1px solid rgba(255, 138, 128, .5); }
.sas-product__body { display: flex; flex-direction: column; gap: 10px; padding: 22px 22px 24px; flex: 1; }
.sas-product__title { margin: 0; font-family: 'Cormorant Garamond', serif; font-size: 26px; line-height: 1.1; color: var(--sas-ink); }
.sas-product__text { margin: 0; color: var(--sas-muted); font-size: 15px; line-height: 1.55; }
.sas-product__price { margin: auto 0 0; padding-top: 6px; font-weight: 700; font-size: 18px; color: var(--sas-mist); }
.sas-product__btn { display: inline-flex; justify-content: center; align-items: center; min-height: 48px; padding: 12px 18px; border-radius: 999px; background: #1FAF63; color: #fff !important; font-weight: 700; text-decoration: none !important; transition: transform .2s, background .2s; }
.sas-product__btn:hover { background: #25C26F; transform: translateY(-1px); }
.sas-product__btn.is-disabled { background: var(--sas-raised); color: var(--sas-dim) !important; cursor: not-allowed; }
.sas-product.is-sold img { filter: grayscale(.7) brightness(.7); }
.sas-shop-empty { text-align: center; color: var(--sas-muted); }

/* YouTube: fast "tap to play" players */
.sas-yt { margin: 0; display: flex; flex-direction: column; gap: 12px; }
.sas-yt__btn { position: relative; display: block; width: 100%; aspect-ratio: 16 / 9; padding: 0; border: 1px solid var(--sas-line); border-radius: 18px; overflow: hidden; background: #000; cursor: pointer; }
.sas-yt__btn img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .5s, filter .3s; filter: brightness(.82); }
.sas-yt__btn:hover img, .sas-yt__btn:focus-visible img { transform: scale(1.04); filter: brightness(1); }
.sas-yt__play { position: absolute; left: 50%; top: 50%; width: 68px; height: 68px; margin: -34px 0 0 -34px; border-radius: 50%; background: rgba(255, 106, 61, .92); box-shadow: 0 0 0 8px rgba(255, 106, 61, .22), 0 10px 30px rgba(0, 0, 0, .5); transition: transform .25s; }
.sas-yt__play::after { content: ""; position: absolute; left: 27px; top: 22px; border-style: solid; border-width: 12px 0 12px 19px; border-color: transparent transparent transparent #fff; }
.sas-yt__btn:hover .sas-yt__play { transform: scale(1.08); }
.sas-yt iframe { width: 100%; height: 100%; border: 0; display: block; }
.sas-yt figcaption { display: flex; flex-direction: column; gap: 4px; }
.sas-yt__label { font: 700 11px/1.2 Manrope, sans-serif; letter-spacing: .16em; text-transform: uppercase; color: var(--sas-jade); }
.sas-yt__title { color: var(--sas-ink); font-size: 16px; line-height: 1.45; font-weight: 600; }
.sas-yt__latest { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: flex-end; gap: 4px; padding: 0 16px 28px; color: var(--sas-ink); background: radial-gradient(circle at 50% 40%, rgba(255, 106, 61, .25), transparent 55%), linear-gradient(160deg, #122C30, #040C0E); }
.sas-yt__latest strong { font-family: 'Cormorant Garamond', serif; font-size: 30px; font-weight: 600; }
.sas-yt__latest small { color: var(--sas-muted); font-size: 14px; }
.sas-yt__latest .sas-yt__play { top: 42%; }
.sas-yt-sub { display: inline-flex; align-items: center; gap: 12px; min-height: 50px; padding: 12px 22px; border-radius: 999px; background: #fff; color: #0F0F0F !important; font-weight: 700; text-decoration: none !important; box-shadow: 0 10px 30px -12px rgba(255, 0, 51, .6); transition: transform .2s; }
.sas-yt-sub:hover { transform: translateY(-2px); }

/* Floating WhatsApp button */
.sas-wa-float { position: fixed; right: 18px; bottom: 18px; z-index: 995; display: inline-flex; align-items: center; gap: 8px; padding: 12px 16px 12px 13px; border-radius: 999px; background: #1FAF63; color: #fff !important; font: 700 15px/1 Manrope, sans-serif; text-decoration: none !important; box-shadow: 0 12px 30px -10px rgba(0, 0, 0, .6), 0 0 0 0 rgba(31, 175, 99, .5); animation: sas-wa-pulse 2.6s ease-out 3; }
.sas-wa-float:hover { background: #25C26F; }
@media (max-width: 640px) { .sas-wa-float span { display: none; } .sas-wa-float { padding: 14px; right: 14px; bottom: 14px; } }
@keyframes sas-wa-pulse { 0% { box-shadow: 0 12px 30px -10px rgba(0,0,0,.6), 0 0 0 0 rgba(31,175,99,.55); } 70% { box-shadow: 0 12px 30px -10px rgba(0,0,0,.6), 0 0 0 16px rgba(31,175,99,0); } 100% { box-shadow: 0 12px 30px -10px rgba(0,0,0,.6), 0 0 0 0 rgba(31,175,99,0); } }
@media (prefers-reduced-motion: reduce) { .sas-wa-float { animation: none; } }

/* Royal particles: keep sparkles behind the content and let taps pass through */
.wpr-particle-wrapper { pointer-events: none; z-index: 0 !important; }
.wpr-particle-yes > .e-con-inner, .wpr-particle-yes > .e-con { position: relative; z-index: 1; }
/* Focal points for the 2026-10-20 photos */
.sas-pos-heroic img { object-position: 50% 24% !important; }
.sas-pos-audience img { object-position: 50% 42% !important; }
.sas-pos-facing img { object-position: 46% 16% !important; }

/* YouTube player buttons: undo the theme's global button look */
body .sas-yt .sas-yt__btn, body .sas-yt .sas-yt__btn:hover, body .sas-yt .sas-yt__btn:focus { background: #000 !important; border: 1px solid var(--sas-line) !important; border-radius: 18px !important; padding: 0 !important; margin: 0 !important; box-shadow: none !important; color: inherit !important; width: 100%; min-height: 0 !important; line-height: 0; transform: none; }
body .sas-yt .sas-yt__btn:focus-visible { outline: 2px solid var(--sas-jade) !important; outline-offset: 3px; }
.sas-yt figcaption, .sas-yt figcaption span { font-style: normal !important; }
.sas-typewriter .typed_title { font-family: Manrope, sans-serif; font-size: 19px; font-weight: 600; letter-spacing: .01em; margin: 0; color: var(--sas-muted); min-height: 1.6em; }
.sas-typewriter .typed_list { color: var(--sas-ember-glow); padding-right: 2px; }
@media (max-width: 767px) { .sas-typewriter .typed_title { font-size: 17px; } }
#enquiry .fluentform { scroll-margin-top: 110px; }

/* Policy pages */
.sas-legal { color: var(--sas-muted); font-size: 16px; line-height: 1.7; }
.sas-legal h2 { font-family: 'Cormorant Garamond', serif; font-size: 30px; line-height: 1.15; color: var(--sas-ink); margin: 40px 0 12px; }
.sas-legal h2:first-of-type { margin-top: 8px; }
.sas-legal ul { padding-left: 1.2em; margin: 0 0 16px; }
.sas-legal li { margin-bottom: 10px; }
.sas-legal strong { color: var(--sas-ink); }
.sas-legal a { color: var(--sas-mist); text-decoration: underline; text-underline-offset: 3px; }
.sas-legal__updated { font-size: 13px; letter-spacing: .08em; text-transform: uppercase; color: var(--sas-dim); }
@media (max-width: 767px) { .sas-legal h2 { font-size: 25px; margin-top: 32px; } }
/* =========================================================
   v4 (2026-10-20): custom footer, phone bottom bar, chooser
   ========================================================= */
.sas-footer { background: var(--sas-abyss); color: var(--sas-muted); border-top: 1px solid var(--sas-line); font-family: Manrope, sans-serif; }
.sas-footer a { color: inherit; text-decoration: none; }
.sas-footer__wrap { max-width: 1200px; margin: 0 auto; padding-left: 24px; padding-right: 24px; }
.sas-footer__cta { background: radial-gradient(120% 140% at 0% 0%, rgba(255,106,61,.16), transparent 55%), linear-gradient(135deg, #0B1F22, #061416); border-bottom: 1px solid var(--sas-line); }
.sas-footer__cta-inner { display: flex; align-items: center; justify-content: space-between; gap: 32px; padding-top: 56px; padding-bottom: 56px; }
.sas-footer__eyebrow, .sas-footer__head { margin: 0 0 10px; font: 700 12px/1.2 Manrope, sans-serif; letter-spacing: .18em; text-transform: uppercase; color: var(--sas-jade); }
.sas-footer__cta-title { margin: 0 0 8px; font-family: 'Cormorant Garamond', serif; font-size: 44px; line-height: 1.05; color: var(--sas-ink); }
.sas-footer__cta-title em { color: var(--sas-ember-glow); }
.sas-footer__cta-text { margin: 0; max-width: 560px; font-size: 16px; line-height: 1.6; }
.sas-footer__cta-btns { display: flex; flex-wrap: wrap; gap: 12px; flex-shrink: 0; }
.sas-fbtn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 52px; padding: 12px 24px; border-radius: 999px; font-weight: 700; font-size: 16px; transition: transform .2s, background .2s; }
.sas-fbtn:hover { transform: translateY(-2px); }
.sas-fbtn--ember { background: var(--sas-ember); color: #1A0A04 !important; box-shadow: 0 10px 30px -12px rgba(255,106,61,.8); }
.sas-fbtn--ember:hover { background: var(--sas-ember-glow); }
.sas-fbtn--wa { background: #1FAF63; color: #fff !important; }
.sas-fbtn--wa:hover { background: #25C26F; }
.sas-footer__grid { display: grid; grid-template-columns: 1.5fr 1fr 1.1fr 1.2fr; gap: 40px; padding-top: 56px; padding-bottom: 40px; }
.sas-footer__logo img { width: 240px; height: auto; display: block; }
.sas-footer__brand p { margin: 16px 0 18px; font-size: 15px; line-height: 1.6; max-width: 320px; }
.sas-footer__social { display: flex; gap: 10px; }
.sas-footer__social a { width: 42px; height: 42px; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; border: 1px solid var(--sas-line); color: var(--sas-ink); transition: border-color .2s, color .2s; }
.sas-footer__social a:hover { border-color: var(--sas-ember); color: var(--sas-ember-glow); }
.sas-footer__col ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 12px; }
.sas-footer__col a { font-size: 15px; transition: color .2s; }
.sas-footer__col a:hover { color: var(--sas-ink); }
.sas-footer__contact a { display: flex; align-items: center; gap: 12px; line-height: 1.3; }
.sas-footer__contact svg { color: var(--sas-jade); flex-shrink: 0; }
.sas-footer__contact small { color: var(--sas-dim); font-size: 13px; }
.sas-footer__more { color: var(--sas-ember-glow) !important; font-weight: 700; }
.sas-footer__bottom { display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; padding-top: 22px; padding-bottom: 26px; border-top: 1px solid var(--sas-line); font-size: 13px; color: var(--sas-dim); }
.sas-footer__bottom p { margin: 0; }
@media (max-width: 1024px) { .sas-footer__grid { grid-template-columns: 1fr 1fr; } .sas-footer__cta-inner { flex-direction: column; align-items: flex-start; } }
@media (max-width: 640px) {
  .sas-footer__wrap { padding-left: 16px; padding-right: 16px; }
  .sas-footer__cta-inner { padding-top: 40px; padding-bottom: 40px; gap: 22px; }
  .sas-footer__cta-title { font-size: 34px; }
  .sas-footer__cta-btns, .sas-fbtn { width: 100%; }
  .sas-footer__grid { grid-template-columns: 1fr 1fr; gap: 32px 20px; padding-top: 40px; }
  .sas-footer__brand, .sas-footer__grid > .sas-footer__col:last-child { grid-column: 1 / -1; }
  .sas-footer__bottom { flex-direction: column; }
}

/* Phone bottom bar */
.sas-mbar { display: none; }
@media (max-width: 767px) {
  .sas-mbar { display: grid; grid-auto-flow: column; grid-auto-columns: 1fr; gap: 8px; position: fixed; left: 0; right: 0; bottom: 0; z-index: 996; padding: 8px 10px calc(8px + env(safe-area-inset-bottom)); background: rgba(4, 12, 14, .94); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); border-top: 1px solid var(--sas-line); }
  .sas-mbar__btn { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; min-height: 54px; border-radius: 14px; font: 700 12px/1.1 Manrope, sans-serif; text-decoration: none !important; color: var(--sas-ink) !important; background: var(--sas-card); border: 1px solid var(--sas-line); }
  .sas-mbar__btn--book { background: var(--sas-ember); border-color: var(--sas-ember); color: #1A0A04 !important; }
  .sas-mbar__btn--wa { background: #1FAF63; border-color: #1FAF63; color: #fff !important; }
  .sas-mbar__btn:active { transform: scale(.97); }
  body { padding-bottom: calc(72px + env(safe-area-inset-bottom)); }
  .sas-wa-float { display: none !important; }
}

/* "What are you looking for?" chooser */
.sas-paths { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
@media (max-width: 1024px) { .sas-paths { grid-template-columns: 1fr; gap: 14px; } }
.sas-path { position: relative; display: flex; align-items: flex-end; min-height: 380px; border-radius: 22px; overflow: hidden; text-decoration: none !important; border: 1px solid var(--sas-line); background: var(--sas-card); isolation: isolate; }
.sas-path__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -2; transition: transform .7s var(--sas-ease, ease); }
.sas-path::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(4,12,14,0) 20%, rgba(4,12,14,.72) 58%, rgba(4,12,14,.96) 100%); }
.sas-path:hover .sas-path__img, .sas-path:focus-visible .sas-path__img { transform: scale(1.06); }
.sas-path:hover, .sas-path:focus-visible { border-color: var(--sas-ember); }
.sas-path__body { display: flex; flex-direction: column; gap: 6px; padding: 26px; }
.sas-path__kicker { font: 700 11px/1.2 Manrope, sans-serif; letter-spacing: .18em; text-transform: uppercase; color: var(--sas-jade); }
.sas-path__title { font-family: 'Cormorant Garamond', serif; font-size: 34px; line-height: 1.05; color: var(--sas-ink); }
.sas-path__text { color: #C9D6D2; font-size: 15px; line-height: 1.5; }
.sas-path__cta { margin-top: 8px; color: var(--sas-ember-glow); font-weight: 700; font-size: 15px; }
.sas-path.sas-pos-audience .sas-path__img { object-position: 50% 40%; }
.sas-path.sas-pos-study .sas-path__img { object-position: 60% 30%; }
.sas-path.sas-pos-armchair .sas-path__img { object-position: 55% 30%; }
@media (max-width: 1024px) { .sas-path { min-height: 220px; } .sas-path__title { font-size: 30px; } .sas-path__body { padding: 20px; } }
.sas-wa-box { margin-top: 8px; padding: 22px; border-radius: 18px; background: rgba(31,175,99,.08); border: 1px solid rgba(31,175,99,.35); }
.sas-wa-box p { margin: 0 0 14px; color: var(--sas-muted); }
.sas-wa-box .sas-wa-box__title { margin-bottom: 4px; font-family: 'Cormorant Garamond', serif; font-size: 26px; color: var(--sas-ink); }
.sas-wa-box .sas-fbtn { width: 100%; text-decoration: none !important; }
.fluentform .ff-el-section-break .ff-el-section-title { font-family: 'Cormorant Garamond', serif; font-size: 24px; color: var(--sas-ink); margin: 6px 0 2px; }
.fluentform .ff-el-section-break hr { border-color: var(--sas-line); }
.fluentform .ff-el-section-break .ff-section_break_desk { color: var(--sas-dim); font-size: 14px; }

@media (min-width: 768px) { .sas-footer__bottom { padding-bottom: 88px; } }

/* =========================================================
   v5 (2026-10-20): livelier WhatsApp, fewer duplicate CTAs,
   Learn courses block
   ========================================================= */
/* Phone bar: WhatsApp gets the most room */
@media (max-width: 767px) {
  .sas-mbar:has(.sas-mbar__btn--call) { grid-template-columns: 1fr 1.4fr .75fr; grid-auto-flow: row; }
  .sas-mbar__btn--wa { position: relative; background: linear-gradient(135deg, #2BDB72 0%, #1FAF63 55%, #128C4B 100%); border: 0; box-shadow: 0 8px 22px -8px rgba(37, 211, 102, .8); animation: sas-wa-breathe 2.6s ease-in-out infinite; }
  .sas-mbar__btn--wa::after { content: ""; position: absolute; inset: 0; border-radius: inherit; pointer-events: none; background: linear-gradient(110deg, transparent 35%, rgba(255,255,255,.38) 50%, transparent 65%); background-size: 260% 100%; background-position: 130% 0; animation: sas-wa-shine 3.6s ease-in-out infinite 1s; }
  .sas-mbar__ring { position: absolute; inset: -2px; border-radius: 16px; border: 2px solid rgba(43, 219, 114, .75); pointer-events: none; animation: sas-wa-ring 2.6s ease-out infinite; }
  .sas-mbar__btn--wa svg { animation: sas-wa-wiggle 3.6s ease-in-out infinite 1.2s; transform-origin: 50% 60%; }
  .site-header .site-navigation-dropdown ul.menu li.sas-menu-cta { display: none; }
}
@keyframes sas-wa-breathe { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-2px); } }
@keyframes sas-wa-ring { 0% { opacity: .9; transform: scale(1, 1); } 80%, 100% { opacity: 0; transform: scale(1.12, 1.4); } }
@keyframes sas-wa-shine { 0% { background-position: 130% 0; } 45%, 100% { background-position: -30% 0; } }
@keyframes sas-wa-wiggle { 0%, 62%, 100% { transform: rotate(0); } 66% { transform: rotate(-16deg) scale(1.12); } 70% { transform: rotate(14deg) scale(1.12); } 74% { transform: rotate(-10deg); } 78% { transform: rotate(6deg); } 82% { transform: rotate(0); } }
/* Desktop floating button: keeps a gentle pulse and a wiggle */
.sas-wa-float { animation: sas-wa-pulse 2.6s ease-out infinite; background: linear-gradient(135deg, #2BDB72, #128C4B); }
.sas-wa-float svg { animation: sas-wa-wiggle 4s ease-in-out infinite 1s; transform-origin: 50% 60%; }
@media (prefers-reduced-motion: reduce) { .sas-mbar__btn--wa, .sas-mbar__btn--wa::after, .sas-mbar__ring, .sas-mbar__btn--wa svg, .sas-wa-float, .sas-wa-float svg { animation: none !important; } }
.sas-fbtn--ghost { border: 1px solid var(--sas-line-strong, #2A4B4F); color: var(--sas-ink) !important; }
.sas-fbtn--ghost:hover { border-color: var(--sas-jade); }

/* Learn: courses */
.sas-course-cta { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 22px; margin-top: 6px; }
.sas-course-cta .sas-fbtn { text-decoration: none !important; }
.sas-course-cta__link { color: var(--sas-mist) !important; font-weight: 600; text-decoration: none !important; }
.sas-course-soon { position: relative; display: flex; flex-direction: column; align-items: center; text-align: center; gap: 10px; padding: 44px 28px; border-radius: 24px; border: 1px solid var(--sas-line); background: radial-gradient(circle at 50% 30%, rgba(255,106,61,.18), transparent 60%), var(--sas-card); }
.sas-course-soon p { margin: 0; color: var(--sas-muted); }
.sas-course-soon__badge { padding: 6px 12px; border-radius: 999px; font: 700 11px/1 Manrope, sans-serif; letter-spacing: .14em; text-transform: uppercase; color: var(--sas-ember-glow); border: 1px solid rgba(255,156,119,.5); }
.sas-course-soon__icon { font-size: 64px; line-height: 1; color: #E0B565; text-shadow: 0 0 30px rgba(224,181,101,.45); animation: sas-breathe 3.5s ease-in-out infinite; }
.sas-course-soon__title { font-family: 'Cormorant Garamond', serif; font-size: 30px; color: var(--sas-ink) !important; }
/* v6 fixes (2026-10-20) */
/* "Latest uploads" card: restore normal line spacing inside the player button */
body .sas-yt .sas-yt__btn .sas-yt__latest { line-height: 1.3; gap: 6px; padding-bottom: 32px; }
.sas-yt__latest strong, .sas-yt__latest small { display: block; text-align: center; }
.sas-yt__latest strong { line-height: 1.1; }
/* Form dropdowns: same height as text boxes, custom arrow, text aligned */
.fluentform select.ff-el-form-control, .fluentform .ff-el-form-control[type] + select { -webkit-appearance: none; -moz-appearance: none; appearance: none; }
.fluentform select.ff-el-form-control { height: 48px; min-height: 48px; padding: 0 36px 0 14px !important; line-height: 46px; text-overflow: ellipsis; white-space: nowrap; cursor: pointer;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%236FE3C8' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important; background-position: right 14px center !important; background-size: 12px 8px !important; }
.fluentform input.ff-el-form-control:not([type=checkbox]):not([type=radio]) { height: 48px; }
.fluentform select.ff-el-form-control option { background: #0B1F22; color: #F2ECE1; }
.fluentform .sas-cc select.ff-el-form-control { padding-right: 30px !important; background-position: right 11px center !important; }
.sas-pos-audience img { object-position: 46% 42% !important; }

/* =========================================================
   v7 (2026-10-20): full-bleed Shows hero + see-through header
   ========================================================= */
.sas-shows-hero { position: relative; overflow: hidden; isolation: isolate; }
.sas-shows-hero::before { content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none;
  background:
    radial-gradient(120% 90% at 70% 45%, transparent 35%, rgba(4,12,14,.55) 100%),
    linear-gradient(90deg, rgba(4,12,14,.96) 0%, rgba(4,12,14,.86) 26%, rgba(4,12,14,.38) 50%, rgba(4,12,14,0) 68%),
    linear-gradient(180deg, rgba(4,12,14,.75) 0%, rgba(4,12,14,0) 18%, rgba(4,12,14,0) 72%, #040C0E 100%); }
.sas-shows-hero > .e-con-inner, .sas-shows-hero > .e-con { position: relative; z-index: 2; }
.sas-shows-hero .wpr-particle-wrapper, .sas-shows-hero canvas { z-index: 1 !important; }
.sas-shows-hero__text h1 { text-shadow: 0 2px 30px rgba(0,0,0,.45); }
/* Desktop: enlarge the photo and slide Vikram to the right, leaving calm space for the text */
@media (min-width: 1025px) {
  .sas-shows-hero { background-size: 150% auto !important; background-position: 0% 40% !important; min-height: min(100vh, 62vw) !important; }
}
/* Tablet: whole photo, text over a darker lower half */
@media (min-width: 768px) and (max-width: 1024px) {
  .sas-shows-hero { background-size: cover !important; background-position: 46% 30% !important; min-height: 88vh !important; justify-content: flex-end !important; }
  .sas-shows-hero::before { background: linear-gradient(180deg, rgba(4,12,14,.7) 0%, rgba(4,12,14,0) 18%, rgba(4,12,14,.35) 45%, rgba(4,12,14,.92) 72%, #040C0E 100%); }
}
/* Phone: photo across the top (both hands in frame), text below on the page colour */
@media (max-width: 767px) {
  .sas-shows-hero { background-size: 165% auto !important; background-position: 40% 0 !important; min-height: 0 !important; padding-top: calc(93vw - 72px) !important; }
  .sas-shows-hero::before { background: linear-gradient(180deg, rgba(4,12,14,.75) 0, rgba(4,12,14,0) 90px, rgba(4,12,14,0) calc(93vw - 170px), #040C0E 93vw); }
}

/* See-through header on the Shows page, turning solid once you scroll */
body.page-id-36 #site-header.site-header { position: fixed !important; top: 0; left: 0; right: 0; background: transparent !important; -webkit-backdrop-filter: none; backdrop-filter: none; border-bottom-color: transparent; transition: background-color .35s ease, border-color .35s ease, backdrop-filter .35s ease; }
body.page-id-36 #site-header.site-header.is-solid { background: rgba(6, 20, 22, .92) !important; -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); border-bottom-color: var(--sas-line); }
body.page-id-36.admin-bar #site-header.site-header { top: 32px; }
@media (max-width: 782px) { body.page-id-36.admin-bar #site-header.site-header { top: 46px; } }
body.page-id-36 #site-header .site-navigation ul.menu li a { text-shadow: 0 1px 12px rgba(0,0,0,.6); }
body.page-id-36 #site-header .site-navigation ul.menu li.sas-menu-cta a { text-shadow: none; }
/* v7b: desktop Shows hero = whole photo, Vikram centred, text bottom-left on a dark fade */
@media (min-width: 1025px) {
  .sas-shows-hero { background-size: cover !important; background-position: 46% 32% !important; min-height: 100vh !important; justify-content: flex-end !important; padding-bottom: 64px !important; }
  .sas-shows-hero::before { background:
    radial-gradient(90% 70% at 50% 38%, transparent 40%, rgba(4,12,14,.5) 100%),
    linear-gradient(90deg, rgba(4,12,14,.72) 0%, rgba(4,12,14,.35) 34%, rgba(4,12,14,0) 55%),
    linear-gradient(180deg, rgba(4,12,14,.7) 0%, rgba(4,12,14,0) 16%, rgba(4,12,14,0) 50%, rgba(4,12,14,.82) 76%, #040C0E 100%); }
  .sas-shows-hero__text { width: min(640px, 52%) !important; }
  .sas-shows-hero__text h1 { font-size: clamp(48px, 4.4vw, 64px) !important; }
}
@media (min-width: 1025px) { .sas-shows-hero__text { width: min(540px, 40%) !important; } .sas-shows-hero__text h1 { font-size: clamp(46px, 4vw, 60px) !important; } }

.sas-shows-hero > .e-con-inner { flex-grow: 1; }
@media (min-width: 768px) { .sas-shows-hero { --justify-content: flex-end; } .sas-shows-hero > .e-con-inner { justify-content: flex-end !important; } }

/* Shows hero: keep the text low, below Vikram's hands */
@media (min-width: 768px) { .sas-shows-hero { padding: 0 !important; } .sas-shows-hero > .e-con-inner { padding-top: 120px !important; padding-bottom: 56px !important; } .sas-shows-hero__text { gap: 16px !important; } }
