/*
Theme Name: MarkChilds Theatre Resume Theme
Theme URI: https://markchilds.co.uk
Author: Mighty Digital Studio
Author URI: https://mightygroup.net
Description: A modern, dramatic, fully editable online resume theme for a licensed chaperone and supporting artist. Built around a premium purple TV, theatre and stage-inspired visual style.
Version: 2.0.7
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: markchilds
Tags: custom-logo, custom-colors, custom-menu, featured-images, one-column, portfolio, entertainment, responsive-layout
*/


:root{--mc-purple:#7c3aed;--mc-deep:#120329;--mc-mid:#2d0a58;--mc-lilac:#c4b5fd;--mc-pink:#ec4899;--mc-gold:#f8d36b;--mc-ink:#160f25;--mc-muted:#756b87;--mc-soft:#faf7ff;--mc-card:#ffffff;--mc-radius:28px;--mc-shadow:0 26px 80px rgba(18,3,41,.18)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--mc-ink);background:#fff;line-height:1.65;overflow-x:hidden}a{color:var(--mc-purple);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;height:auto}.mc-container{width:min(1180px,calc(100% - 40px));margin:0 auto}.mc-skip{position:absolute;left:-999px;top:auto}.mc-skip:focus{left:20px;top:20px;z-index:9999;background:#fff;color:#000;padding:10px 14px;border-radius:10px}
.site-header{position:sticky;top:0;z-index:50;background:linear-gradient(90deg,#f4efff 0%,#ebe2ff 48%,#f7f1ff 100%);backdrop-filter:blur(22px);border-bottom:1px solid rgba(124,58,237,.18);box-shadow:0 12px 34px rgba(18,3,41,.10)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:14px 0}.site-branding{display:flex;align-items:center;flex:0 0 auto;min-width:0}.logo-wrap{display:flex;align-items:center;justify-content:flex-start;background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;box-shadow:none!important;width:560px;max-width:42vw;min-width:420px}.custom-logo,.site-logo-img{display:block;width:100%!important;height:auto!important;max-width:none!important;max-height:none!important;object-fit:contain;filter:none}.primary-menu{display:flex;align-items:center;gap:6px;list-style:none;margin:0;padding:0}.primary-menu a,.menu a{display:block;padding:10px 15px;border-radius:999px;color:#24133f;font-weight:900;font-size:.96rem;letter-spacing:.01em}.primary-menu a:hover,.menu a:hover{background:rgba(124,58,237,.12);text-decoration:none}.menu-toggle{display:none;background:var(--mc-deep);color:#fff;border:0;border-radius:999px;padding:10px 14px;font-weight:900}
.hero-premiere{position:relative;isolation:isolate;overflow:hidden;padding:92px 0 56px;color:#fff;background:radial-gradient(circle at 80% 18%,rgba(236,72,153,.34),transparent 30%),radial-gradient(circle at 18% 10%,rgba(124,58,237,.50),transparent 34%),linear-gradient(135deg,#090015 0%,#180532 44%,#350c69 100%)}.hero-premiere:before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(105deg,transparent 0 15%,rgba(255,255,255,.07) 16%,transparent 28%),linear-gradient(78deg,transparent 0 58%,rgba(255,255,255,.08) 60%,transparent 72%)}.hero-premiere:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:86px;background:linear-gradient(to bottom,transparent,#fff);z-index:-1}.stage-dots{position:absolute;inset:0;pointer-events:none;opacity:.58;background-image:radial-gradient(circle,rgba(248,211,107,.82) 0 2px,transparent 2.6px),radial-gradient(circle,rgba(196,181,253,.72) 0 1.4px,transparent 2px);background-size:92px 92px,58px 58px;background-position:10px 20px,44px 8px;mask-image:linear-gradient(to bottom,#000,transparent 82%)}.curtain-glow{position:absolute;inset:-20% -10% 0 auto;width:44%;background:radial-gradient(ellipse at top,rgba(236,72,153,.22),transparent 66%);pointer-events:none}.hero-premiere-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.02fr .98fr;gap:56px;align-items:center}.hero-copy{max-width:720px}.eyebrow{display:inline-flex;gap:8px;align-items:center;padding:9px 14px;border:1px solid rgba(248,211,107,.34);border-radius:999px;background:rgba(255,255,255,.08);font-weight:900;color:#fff;font-size:.84rem;text-transform:uppercase;letter-spacing:.12em;box-shadow:0 12px 36px rgba(0,0,0,.18)}.eyebrow:before{content:"✦";color:var(--mc-gold)}.hero h1{font-size:clamp(2.75rem,6.8vw,5.9rem);line-height:.92;letter-spacing:-.085em;margin:24px 0;color:#fff;text-wrap:balance}.hero h1 span{display:block;background:linear-gradient(100deg,#fff,var(--mc-lilac) 50%,var(--mc-gold));-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:none}.hero-lead{font-size:clamp(1.05rem,2vw,1.26rem);color:rgba(255,255,255,.84);max-width:660px}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:999px;padding:14px 22px;font-weight:950;border:1px solid transparent;box-shadow:0 14px 34px rgba(0,0,0,.22);transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.btn-primary{background:linear-gradient(135deg,var(--mc-gold),#fff0a8);color:var(--mc-deep)}.btn-secondary{background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.26)}.btn:hover{text-decoration:none;transform:translateY(-2px);box-shadow:0 18px 44px rgba(0,0,0,.28)}
.premiere-board{position:relative;border:1px solid rgba(255,255,255,.18);background:linear-gradient(180deg,rgba(255,255,255,.17),rgba(255,255,255,.09));border-radius:38px;padding:24px;box-shadow:0 34px 100px rgba(0,0,0,.32);backdrop-filter:blur(20px);overflow:hidden}.premiere-board:before{content:"";position:absolute;inset:14px;border:1px solid rgba(248,211,107,.22);border-radius:28px;pointer-events:none}.premiere-board:after{content:"";position:absolute;right:-70px;bottom:-80px;width:240px;height:240px;border-radius:999px;background:radial-gradient(circle,rgba(248,211,107,.24),transparent 62%);pointer-events:none}.board-logo{position:relative;z-index:1;background:rgba(255,255,255,.96);border-radius:24px;padding:16px 18px;border:1px solid rgba(255,255,255,.78);box-shadow:0 18px 44px rgba(0,0,0,.18);display:flex;justify-content:center;align-items:center}.board-logo img{display:block;max-height:92px;max-width:100%;object-fit:contain;filter:none}.board-title{position:relative;z-index:1;margin:18px 0;color:#fff}.board-title span{display:block;color:var(--mc-gold);text-transform:uppercase;letter-spacing:.14em;font-size:.75rem;font-weight:950;margin-bottom:8px}.board-title strong{display:block;font-size:1.28rem;line-height:1.15;letter-spacing:-.035em;max-width:440px}.quick-facts{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:13px}.fact{background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.18);border-radius:22px;padding:16px;min-height:98px}.fact strong{display:block;color:#fff;font-size:1.04rem;line-height:1.1}.fact span{display:block;margin-top:6px;font-size:.92rem;color:rgba(255,255,255,.76);line-height:1.42}.hero-ticket-strip{position:relative;z-index:2;margin-top:42px;border-radius:999px;background:#fff;border:1px solid rgba(124,58,237,.16);box-shadow:0 24px 70px rgba(18,3,41,.16);padding:13px 18px;display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.hero-ticket-strip span{display:inline-flex;align-items:center;gap:8px;color:var(--mc-deep);font-weight:900;font-size:.92rem}.hero-ticket-strip span:before{content:"★";color:var(--mc-purple)}
.section{padding:82px 0}.section-kicker{text-transform:uppercase;letter-spacing:.16em;color:var(--mc-purple);font-weight:950;font-size:.78rem}.section-heading{max-width:790px;margin:0 auto 38px;text-align:center}.section-left{text-align:left;margin:0}.section h2{font-size:clamp(2rem,4.2vw,3.35rem);line-height:1;letter-spacing:-.065em;margin:10px 0 14px;color:var(--mc-deep);text-wrap:balance}.section-intro{color:var(--mc-muted);font-size:1.08rem}.intro-stage-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:34px;align-items:start}.spotlight-panel{background:#fff;border:1px solid rgba(124,58,237,.16);border-radius:var(--mc-radius);padding:32px;box-shadow:var(--mc-shadow)}.spotlight-panel h3{margin-top:0;color:var(--mc-deep);font-size:1.55rem}.check-list{list-style:none;margin:0;padding:0;display:grid;gap:14px}.check-list li{position:relative;padding-left:36px;color:var(--mc-muted)}.check-list li:before{content:"✓";position:absolute;left:0;top:1px;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--mc-purple),var(--mc-pink));color:#fff;font-weight:950;font-size:.78rem}
.services-stage{background:linear-gradient(180deg,#fff,var(--mc-soft));position:relative}.service-runway{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:stretch}.mc-card{position:relative;overflow:hidden;background:#fff;border:1px solid rgba(124,58,237,.16);border-radius:var(--mc-radius);padding:28px;box-shadow:0 22px 70px rgba(31,13,79,.09)}.mc-card:before{content:"";position:absolute;inset:0 0 auto 0;height:5px;background:linear-gradient(90deg,var(--mc-purple),var(--mc-pink),var(--mc-gold))}.mc-card h3{margin:0 0 10px;color:var(--mc-deep);font-size:1.38rem;letter-spacing:-.035em}.mc-card p{margin:0;color:var(--mc-muted)}.icon-dot{width:50px;height:50px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,var(--mc-purple),var(--mc-pink));color:#fff;font-weight:950;margin-bottom:20px;box-shadow:0 14px 32px rgba(124,58,237,.24)}
.showreel-section{background:#fff}.showreel-feature{display:grid;grid-template-columns:.9fr 1.1fr;gap:34px;align-items:center}.showreel-copy{max-width:520px}.showreel-stack{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.showreel-card{min-height:188px;border-radius:28px;padding:22px;color:#fff;background:radial-gradient(circle at 80% 16%,rgba(248,211,107,.30),transparent 32%),linear-gradient(145deg,var(--mc-deep),var(--mc-purple));box-shadow:0 24px 70px rgba(18,3,41,.22);position:relative;overflow:hidden}.showreel-card:after{content:"";position:absolute;right:-36px;bottom:-36px;width:120px;height:120px;border-radius:50%;border:16px solid rgba(255,255,255,.08)}.showreel-card .label{font-size:.76rem;text-transform:uppercase;letter-spacing:.14em;color:rgba(255,255,255,.68);font-weight:900}.showreel-card h3{position:relative;margin:8px 0 6px;color:#fff;font-size:1.35rem;line-height:1.1}.showreel-card p{position:relative;margin:0;color:rgba(255,255,255,.78);font-size:.96rem}
.credits-section{background:linear-gradient(180deg,#fff,var(--mc-soft))}.credits-track{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.timeline-item{position:relative;padding:26px;border-top:5px solid var(--mc-purple);background:rgba(255,255,255,.92);border-radius:24px;border-left:1px solid rgba(124,58,237,.16);border-right:1px solid rgba(124,58,237,.16);border-bottom:1px solid rgba(124,58,237,.16);box-shadow:0 16px 50px rgba(31,13,79,.07)}.timeline-item:before{content:"";position:absolute;left:26px;top:-12px;width:18px;height:18px;border-radius:50%;background:var(--mc-gold);box-shadow:0 0 0 8px rgba(248,211,107,.2)}.timeline-item .date{font-weight:950;color:var(--mc-purple);font-size:.84rem;text-transform:uppercase;letter-spacing:.12em}.timeline-item h3{margin:8px 0;color:var(--mc-deep);letter-spacing:-.03em}.timeline-item p{margin:0;color:var(--mc-muted)}
.booking-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:24px;align-items:stretch}.cta-band{position:relative;overflow:hidden;background:radial-gradient(circle at 84% 18%,rgba(248,211,107,.35),transparent 28%),linear-gradient(135deg,var(--mc-deep),var(--mc-mid),var(--mc-purple));border-radius:38px;padding:46px;color:#fff;display:grid;grid-template-columns:1fr;gap:24px;align-items:center;box-shadow:var(--mc-shadow)}.cta-band:before{content:"";position:absolute;inset:14px;border:1px solid rgba(255,255,255,.15);border-radius:30px;pointer-events:none}.cta-band .section-kicker{color:var(--mc-gold)}.cta-band h2{color:#fff;margin:0 0 10px}.cta-band p{margin:0;color:rgba(255,255,255,.82)}.cta-band .btn{position:relative;background:#fff;color:var(--mc-deep);width:max-content}.contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.contact-card{background:#fff;border:1px solid rgba(124,58,237,.16);border-radius:var(--mc-radius);padding:26px;box-shadow:0 18px 55px rgba(31,13,79,.07)}.contact-card strong{display:block;color:var(--mc-deep);font-size:.84rem;text-transform:uppercase;letter-spacing:.12em}.contact-card a{font-weight:950;overflow-wrap:anywhere}.contact-card span{color:var(--mc-muted)}
.site-footer{padding:34px 0;border-top:1px solid rgba(124,58,237,.14);background:var(--mc-deep);color:rgba(255,255,255,.72)}.footer-inner{display:flex;justify-content:space-between;gap:20px;align-items:center;flex-wrap:wrap}.footer-links{display:flex;gap:12px;flex-wrap:wrap}.footer-links a{font-weight:800;color:#fff}.page-wrap{padding:72px 0;background:linear-gradient(180deg,var(--mc-soft),#fff)}.entry-content{background:#fff;border:1px solid rgba(124,58,237,.16);border-radius:var(--mc-radius);padding:min(7vw,56px);box-shadow:var(--mc-shadow)}.entry-content h1,.entry-content h2,.entry-content h3{color:var(--mc-deep);letter-spacing:-.04em}.wp-block-button__link{border-radius:999px;background:var(--mc-purple)}
.will-reveal{opacity:0;transform:translateY(34px) scale(.985);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.8,.2,1);transition-delay:var(--reveal-delay,0ms)}.will-reveal.is-visible{opacity:1;transform:translateY(0) scale(1)}.showreel-card.will-reveal,.runway-card.will-reveal{transform:translateY(42px) scale(.965)}.showreel-card.will-reveal.is-visible,.runway-card.will-reveal.is-visible{transform:translateY(0) scale(1)}
@media (prefers-reduced-motion: reduce){*{scroll-behavior:auto!important}.will-reveal{opacity:1!important;transform:none!important;transition:none!important}}
@media (max-width:1040px){.hero-premiere-grid,.intro-stage-grid,.showreel-feature,.booking-grid{grid-template-columns:1fr}.credits-track{grid-template-columns:1fr}}
@media (max-width:960px){.menu-toggle{display:none;background:var(--mc-deep);color:#fff;border:0;border-radius:999px;padding:10px 14px;font-weight:900}.main-navigation{position:absolute;left:20px;right:20px;top:84px;background:var(--mc-deep);border:1px solid rgba(255,255,255,.16);border-radius:22px;padding:12px;box-shadow:var(--mc-shadow);display:none}.main-navigation.is-open{display:block}.primary-menu,.menu{display:grid;gap:4px}.hero-premiere{padding-top:66px}.service-runway,.showreel-stack,.contact-grid{grid-template-columns:1fr}.quick-facts{grid-template-columns:1fr 1fr}.custom-logo,.site-logo-img{display:block;width:100%!important;height:auto!important;max-width:none!important;max-height:none!important;object-fit:contain;filter:none}.section{padding:60px 0}}
@media (max-width:560px){.mc-container{width:min(100% - 28px,1180px)}.hero-actions{display:grid}.btn{width:100%}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:14px 0}.logo-wrap{display:flex;align-items:center;justify-content:flex-start;background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;box-shadow:none!important;width:560px;max-width:42vw;min-width:420px}.custom-logo,.site-logo-img{display:block;width:100%!important;height:auto!important;max-width:none!important;max-height:none!important;object-fit:contain;filter:none}.premiere-board{padding:20px}.spotlight-panel,.mc-card,.contact-card{padding:22px}.quick-facts{grid-template-columns:1fr}.hero h1{font-size:3.05rem}.hero-ticket-strip{border-radius:24px}.hero-ticket-strip span{font-size:.86rem}}


/* v2.0.0 lighter header and proper full-width transparent logo */
.hero-premiere{
  padding-top:98px;
}
.hero-premiere:before{
  background:
    linear-gradient(105deg,transparent 0 15%,rgba(255,255,255,.07) 16%,transparent 28%),
    linear-gradient(78deg,transparent 0 58%,rgba(255,255,255,.08) 60%,transparent 72%),
    repeating-linear-gradient(90deg,rgba(255,255,255,.025) 0 1px,transparent 1px 84px);
}
.premiere-board{
  transform:rotate(-1deg);
}
.premiere-board > *{
  transform:rotate(1deg);
}
.service-runway .runway-card:nth-child(1){
  border-radius:34px 22px 34px 22px;
}
.service-runway .runway-card:nth-child(2){
  border-radius:22px 34px 22px 34px;
}
.service-runway .runway-card:nth-child(3){
  border-radius:34px 22px 34px 22px;
}
.showreel-stack{
  perspective:1000px;
}
.showreel-card:nth-child(1){
  transform-origin:center;
}
.showreel-card:nth-child(2){
  transform-origin:center;
}
.showreel-card:nth-child(3){
  transform-origin:center;
}
.will-reveal{
  opacity:0;
  transform:translateY(42px) scale(.975);
  transition:opacity .85s ease, transform .85s cubic-bezier(.2,.8,.2,1);
  transition-delay:var(--reveal-delay,0ms);
}
.will-reveal.is-visible{
  opacity:1;
  transform:translateY(0) scale(1);
}
@media (min-width: 1300px){
  .logo-wrap{
    width:620px;
    max-width:44vw;
  }
}
@media (max-width: 1120px){
  .logo-wrap{
    width:500px;
    max-width:45vw;
    min-width:360px;
  }
  .primary-menu a,.menu a{
    padding:9px 11px;
  }
}
@media (max-width: 960px){
  .site-header{
    background:linear-gradient(90deg,#f4efff,#ebe2ff);
  }
  .header-inner{
    padding:12px 0;
  }
  .logo-wrap{
    width:470px;
    max-width:calc(100vw - 160px);
    min-width:0;
  }
  .main-navigation{
    top:82px;
    background:#f4efff;
    border-color:rgba(124,58,237,.18);
  }
  .primary-menu a,.menu a{
    color:#24133f;
  }
}
@media (max-width:560px){
  .header-inner{
    padding:10px 0;
  }
  .logo-wrap{
    width:330px;
    max-width:calc(100vw - 98px);
  }
  .hero-premiere{
    padding-top:70px;
  }
}


/* v2.0.1 premiere board logo refresh */
.board-logo{
  background:linear-gradient(90deg,#f4efff 0%,#ebe2ff 48%,#f7f1ff 100%) !important;
  border:1px solid rgba(124,58,237,.16) !important;
  box-shadow:0 16px 34px rgba(18,3,41,.12) !important;
  padding:18px 24px !important;
}
.board-logo img{
  width:100% !important;
  max-width:760px !important;
  max-height:118px !important;
  height:auto !important;
  object-fit:contain !important;
  display:block !important;
  margin:0 auto !important;
}
.premiere-board{
  background:linear-gradient(180deg,rgba(255,255,255,.18),rgba(255,255,255,.10)) !important;
}
@media (max-width: 960px){
  .board-logo{
    padding:16px 18px !important;
  }
  .board-logo img{
    max-height:100px !important;
  }
}
@media (max-width: 560px){
  .board-logo img{
    max-height:82px !important;
  }
}


/* v2.0.2 enhanced scroll movement and pop */
.hero-premiere,
.premiere-board,
.hero-ticket-strip,
.mc-card,
.showreel-card,
.timeline-item,
.contact-card,
.spotlight-panel,
.cta-band{
  will-change:transform, opacity;
}

.stage-dots{
  transition:transform .18s linear;
}

.curtain-glow{
  transition:transform .18s linear, opacity .18s linear;
}

.will-reveal{
  opacity:0;
  transform:translateY(56px) scale(.94) rotate(.35deg);
  filter:blur(8px);
  transition:
    opacity .9s ease,
    transform .95s cubic-bezier(.18,.95,.25,1),
    filter .75s ease;
  transition-delay:var(--reveal-delay,0ms);
}

.will-reveal.is-visible{
  opacity:1;
  transform:translateY(0) scale(1) rotate(0deg);
  filter:blur(0);
}

.hero-copy.will-reveal{
  transform:translateX(-44px) translateY(28px) scale(.96);
}

.hero-copy.will-reveal.is-visible{
  transform:translateX(0) translateY(0) scale(1);
}

.premiere-board.will-reveal{
  transform:translateX(52px) translateY(34px) scale(.94) rotate(-2.5deg);
}

.premiere-board.will-reveal.is-visible{
  transform:translateX(0) translateY(0) scale(1) rotate(-1deg);
}

.premiere-board.is-visible{
  animation:mc-float-soft 7s ease-in-out 1.1s infinite;
}

.board-logo.is-visible,
.board-logo{
  transform-origin:center;
}

.hero-ticket-strip.will-reveal{
  transform:translateY(36px) scaleX(.92);
}

.hero-ticket-strip.will-reveal.is-visible{
  transform:translateY(0) scaleX(1);
}

.runway-card.will-reveal,
.mc-card.will-reveal{
  transform:translateY(64px) scale(.92) rotate(-1.2deg);
}

.runway-card:nth-child(even).will-reveal,
.mc-card:nth-child(even).will-reveal{
  transform:translateY(64px) scale(.92) rotate(1.2deg);
}

.runway-card.will-reveal.is-visible,
.mc-card.will-reveal.is-visible{
  transform:translateY(0) scale(1) rotate(0deg);
}

.runway-card.is-visible,
.mc-card.is-visible{
  animation:mc-card-settle .75s cubic-bezier(.2,.85,.22,1.25) both;
}

.showreel-card.will-reveal{
  transform:translateY(72px) scale(.9) rotateY(12deg);
}

.showreel-card:nth-child(2).will-reveal{
  transform:translateY(72px) scale(.9) rotateY(-12deg);
}

.showreel-card.will-reveal.is-visible,
.showreel-card:nth-child(2).will-reveal.is-visible{
  transform:translateY(0) scale(1) rotateY(0deg);
}

.showreel-card.is-visible{
  animation:mc-float-soft 8s ease-in-out 1.2s infinite;
}

.showreel-card:nth-child(2).is-visible{
  animation-delay:1.7s;
}

.showreel-card:nth-child(3).is-visible{
  animation-delay:2.2s;
}

.timeline-item.will-reveal{
  transform:translateX(-42px) translateY(26px) scale(.95);
}

.timeline-item:nth-child(even).will-reveal{
  transform:translateX(42px) translateY(26px) scale(.95);
}

.timeline-item.will-reveal.is-visible,
.timeline-item:nth-child(even).will-reveal.is-visible{
  transform:translateX(0) translateY(0) scale(1);
}

.contact-card.will-reveal{
  transform:translateY(46px) scale(.93);
}

.contact-card.will-reveal.is-visible{
  transform:translateY(0) scale(1);
}

.icon-dot{
  transition:transform .35s ease, box-shadow .35s ease;
}

.is-visible .icon-dot,
.mc-card.is-visible .icon-dot{
  animation:mc-star-pop .8s cubic-bezier(.2,.85,.2,1.3) both;
}

.mc-card:hover,
.showreel-card:hover,
.timeline-item:hover,
.contact-card:hover{
  transform:translateY(-7px) scale(1.015);
  box-shadow:0 30px 86px rgba(18,3,41,.20);
}

.premiere-board:hover{
  box-shadow:0 42px 115px rgba(0,0,0,.36);
}

@keyframes mc-card-settle{
  0%{transform:translateY(18px) scale(.98)}
  55%{transform:translateY(-7px) scale(1.018)}
  100%{transform:translateY(0) scale(1)}
}

@keyframes mc-star-pop{
  0%{transform:scale(.55) rotate(-18deg);opacity:.35}
  60%{transform:scale(1.16) rotate(8deg);opacity:1}
  100%{transform:scale(1) rotate(0deg);opacity:1}
}

@keyframes mc-float-soft{
  0%,100%{transform:translateY(0) rotate(var(--float-rotate, 0deg))}
  50%{transform:translateY(-8px) rotate(var(--float-rotate, 0deg))}
}

.reveal-on-scroll:nth-child(3n+1){
  --float-rotate:0deg;
}

.premiere-board{
  --float-rotate:-1deg;
}

@media (prefers-reduced-motion: reduce){
  .will-reveal,
  .will-reveal.is-visible,
  .hero-copy.will-reveal,
  .hero-copy.will-reveal.is-visible,
  .premiere-board.will-reveal,
  .premiere-board.will-reveal.is-visible,
  .timeline-item.will-reveal,
  .timeline-item.will-reveal.is-visible{
    opacity:1!important;
    transform:none!important;
    filter:none!important;
    transition:none!important;
    animation:none!important;
  }

  .premiere-board.is-visible,
  .showreel-card.is-visible,
  .runway-card.is-visible,
  .mc-card.is-visible,
  .is-visible .icon-dot,
  .mc-card.is-visible .icon-dot{
    animation:none!important;
  }
}


/* v2.0.3 smoother scroll impact */
.runway-card, .mc-card, .showreel-card, .timeline-item, .contact-card, .spotlight-panel, .cta-band {
  backface-visibility: hidden;
}

.will-reveal{
  opacity:0;
  transform:translateY(30px) scale(.985);
  filter:blur(4px);
  transition:
    opacity .8s ease,
    transform .95s cubic-bezier(.22,.61,.36,1),
    filter .7s ease;
}
.will-reveal.is-visible{
  opacity:1;
  transform:translateY(0) scale(1);
  filter:blur(0);
}
.hero-copy.will-reveal,
.premiere-board.will-reveal,
.hero-ticket-strip.will-reveal,
.runway-card.will-reveal,
.mc-card.will-reveal,
.showreel-card.will-reveal,
.showreel-card:nth-child(2).will-reveal,
.timeline-item.will-reveal,
.timeline-item:nth-child(even).will-reveal,
.contact-card.will-reveal{
  transform:translateY(34px) scale(.985);
}
.hero-copy.will-reveal.is-visible,
.premiere-board.will-reveal.is-visible,
.hero-ticket-strip.will-reveal.is-visible,
.runway-card.will-reveal.is-visible,
.mc-card.will-reveal.is-visible,
.showreel-card.will-reveal.is-visible,
.showreel-card:nth-child(2).will-reveal.is-visible,
.timeline-item.will-reveal.is-visible,
.timeline-item:nth-child(even).will-reveal.is-visible,
.contact-card.will-reveal.is-visible{
  transform:translateY(0) scale(1);
}

.runway-card.is-visible,
.mc-card.is-visible,
.timeline-item.is-visible,
.contact-card.is-visible,
.spotlight-panel.is-visible,
.cta-band.is-visible{
  animation:mc-soft-settle .7s cubic-bezier(.22,.61,.36,1) both;
}

.showreel-card.is-visible{
  animation:mc-float-soft 9s ease-in-out 1.8s infinite;
}

.is-visible .icon-dot,
.mc-card.is-visible .icon-dot{
  animation:mc-icon-soft .55s ease-out both;
}

.mc-card:hover,
.showreel-card:hover,
.timeline-item:hover,
.contact-card:hover{
  transform:translateY(-4px) scale(1.008);
  box-shadow:0 24px 66px rgba(18,3,41,.16);
}

@keyframes mc-soft-settle{
  0%{transform:translateY(10px) scale(.992);opacity:.92}
  100%{transform:translateY(0) scale(1);opacity:1}
}

@keyframes mc-icon-soft{
  0%{transform:scale(.88);opacity:.65}
  100%{transform:scale(1);opacity:1}
}

@media (prefers-reduced-motion: reduce){
  .runway-card.is-visible,
  .mc-card.is-visible,
  .timeline-item.is-visible,
  .contact-card.is-visible,
  .spotlight-panel.is-visible,
  .cta-band.is-visible,
  .showreel-card.is-visible,
  .is-visible .icon-dot,
  .mc-card.is-visible .icon-dot{
    animation:none!important;
  }
}


/* v2.0.4 dramatic theatrical fly-ins */
.will-reveal{
  opacity:0;
  transform:translate3d(0, 92px, 0) scale(.88) rotate(.8deg);
  filter:blur(10px);
  transition:
    opacity .82s ease,
    transform 1.05s cubic-bezier(.16,1,.3,1),
    filter .82s ease;
  transition-delay:var(--reveal-delay,0ms);
}

.will-reveal.is-visible{
  opacity:1;
  transform:translate3d(0,0,0) scale(1) rotate(0deg);
  filter:blur(0);
}

/* Hero enters from opposite sides */
.hero-copy.will-reveal{
  transform:translate3d(-120px, 50px, 0) scale(.9) rotate(-1.5deg);
}
.hero-copy.will-reveal.is-visible{
  transform:translate3d(0,0,0) scale(1) rotate(0deg);
}

.premiere-board.will-reveal{
  transform:translate3d(130px, 56px, 0) scale(.88) rotate(-5deg);
}
.premiere-board.will-reveal.is-visible{
  transform:translate3d(0,0,0) scale(1) rotate(-1deg);
}

/* Ticket strip sweeps in */
.hero-ticket-strip.will-reveal{
  transform:translate3d(0, 70px, 0) scaleX(.72) scaleY(.92);
  transform-origin:center;
}
.hero-ticket-strip.will-reveal.is-visible{
  transform:translate3d(0,0,0) scaleX(1) scaleY(1);
}

/* Service cards fly in more dramatically */
.service-runway .runway-card:nth-child(1).will-reveal,
.service-runway .mc-card:nth-child(1).will-reveal{
  transform:translate3d(-150px, 95px, 0) scale(.84) rotate(-4deg);
}
.service-runway .runway-card:nth-child(2).will-reveal,
.service-runway .mc-card:nth-child(2).will-reveal{
  transform:translate3d(0, 125px, 0) scale(.82) rotate(.5deg);
}
.service-runway .runway-card:nth-child(3).will-reveal,
.service-runway .mc-card:nth-child(3).will-reveal{
  transform:translate3d(150px, 95px, 0) scale(.84) rotate(4deg);
}

.service-runway .runway-card.will-reveal.is-visible,
.service-runway .mc-card.will-reveal.is-visible{
  transform:translate3d(0,0,0) scale(1) rotate(0deg);
}

/* The section you flagged: smoother but much more obvious impact */
.service-runway .runway-card.is-visible,
.service-runway .mc-card.is-visible{
  animation:mc-dramatic-card-land .95s cubic-bezier(.16,1,.3,1) both;
}

/* Profile/showreel cards come in like stage panels */
.showreel-stack .showreel-card:nth-child(1).will-reveal{
  transform:translate3d(-115px, 85px, 0) scale(.84) rotateY(22deg) rotate(-2deg);
}
.showreel-stack .showreel-card:nth-child(2).will-reveal{
  transform:translate3d(0, 125px, 0) scale(.82) rotateX(10deg);
}
.showreel-stack .showreel-card:nth-child(3).will-reveal{
  transform:translate3d(115px, 85px, 0) scale(.84) rotateY(-22deg) rotate(2deg);
}

.showreel-stack .showreel-card.will-reveal.is-visible{
  transform:translate3d(0,0,0) scale(1) rotateX(0) rotateY(0) rotate(0deg);
}

/* Timeline and contact alternate side fly-ins */
.credits-track .timeline-item:nth-child(odd).will-reveal,
.contact-grid .contact-card:nth-child(odd).will-reveal{
  transform:translate3d(-120px, 70px, 0) scale(.88) rotate(-2.5deg);
}
.credits-track .timeline-item:nth-child(even).will-reveal,
.contact-grid .contact-card:nth-child(even).will-reveal{
  transform:translate3d(120px, 70px, 0) scale(.88) rotate(2.5deg);
}
.credits-track .timeline-item.will-reveal.is-visible,
.contact-grid .contact-card.will-reveal.is-visible{
  transform:translate3d(0,0,0) scale(1) rotate(0deg);
}

/* Text panels sweep upward */
.section-heading.will-reveal,
.spotlight-panel.will-reveal,
.cta-band.will-reveal{
  transform:translate3d(0, 85px, 0) scale(.9);
}
.section-heading.will-reveal.is-visible,
.spotlight-panel.will-reveal.is-visible,
.cta-band.will-reveal.is-visible{
  transform:translate3d(0,0,0) scale(1);
}

/* Bigger but still classy icon entrance */
.is-visible .icon-dot,
.mc-card.is-visible .icon-dot{
  animation:mc-dramatic-icon .9s cubic-bezier(.16,1,.3,1) both;
}

/* Slight after-landing glow to add impact */
.service-runway .runway-card.is-visible::after,
.service-runway .mc-card.is-visible::after{
  content:"";
  position:absolute;
  inset:-30%;
  background:radial-gradient(circle at 50% 0%, rgba(124,58,237,.16), transparent 42%);
  opacity:0;
  pointer-events:none;
  animation:mc-card-glow .95s ease both;
}

/* Hover remains controlled */
.mc-card:hover,
.showreel-card:hover,
.timeline-item:hover,
.contact-card:hover{
  transform:translateY(-7px) scale(1.012);
  box-shadow:0 30px 86px rgba(18,3,41,.20);
}

@keyframes mc-dramatic-card-land{
  0%{
    opacity:.2;
    filter:blur(10px);
  }
  62%{
    filter:blur(0);
    transform:translate3d(0,-10px,0) scale(1.018) rotate(0deg);
  }
  100%{
    opacity:1;
    filter:blur(0);
    transform:translate3d(0,0,0) scale(1) rotate(0deg);
  }
}

@keyframes mc-dramatic-icon{
  0%{transform:scale(.35) rotate(-28deg);opacity:0}
  58%{transform:scale(1.22) rotate(10deg);opacity:1}
  100%{transform:scale(1) rotate(0deg);opacity:1}
}

@keyframes mc-card-glow{
  0%{opacity:0}
  45%{opacity:1}
  100%{opacity:0}
}

@media (prefers-reduced-motion: reduce){
  .will-reveal,
  .will-reveal.is-visible,
  .hero-copy.will-reveal,
  .hero-copy.will-reveal.is-visible,
  .premiere-board.will-reveal,
  .premiere-board.will-reveal.is-visible,
  .service-runway .runway-card.will-reveal,
  .service-runway .mc-card.will-reveal,
  .showreel-stack .showreel-card.will-reveal,
  .credits-track .timeline-item.will-reveal,
  .contact-grid .contact-card.will-reveal{
    opacity:1!important;
    transform:none!important;
    filter:none!important;
    transition:none!important;
    animation:none!important;
  }
}


/* v2.0.5 services animation refinement: fly in, no blur, no jiggle, static after landing */
.service-runway .runway-card.will-reveal,
.service-runway .mc-card.will-reveal{
  opacity:0;
  filter:none !important;
  transition:
    opacity .72s ease,
    transform .9s cubic-bezier(.16,1,.3,1) !important;
}

.service-runway .runway-card:nth-child(1).will-reveal,
.service-runway .mc-card:nth-child(1).will-reveal{
  transform:translate3d(-135px, 72px, 0) scale(.88) rotate(-2deg);
}

.service-runway .runway-card:nth-child(2).will-reveal,
.service-runway .mc-card:nth-child(2).will-reveal{
  transform:translate3d(0, 105px, 0) scale(.88) rotate(0deg);
}

.service-runway .runway-card:nth-child(3).will-reveal,
.service-runway .mc-card:nth-child(3).will-reveal{
  transform:translate3d(135px, 72px, 0) scale(.88) rotate(2deg);
}

.service-runway .runway-card.will-reveal.is-visible,
.service-runway .mc-card.will-reveal.is-visible{
  opacity:1;
  filter:none !important;
  transform:translate3d(0,0,0) scale(1) rotate(0deg) !important;
}

/* Kill the jiggle/settle/glow effects on services only */
.service-runway .runway-card.is-visible,
.service-runway .mc-card.is-visible{
  animation:none !important;
  transform:translate3d(0,0,0) scale(1) rotate(0deg) !important;
}

.service-runway .runway-card.is-visible::after,
.service-runway .mc-card.is-visible::after{
  display:none !important;
  animation:none !important;
  opacity:0 !important;
}

/* Service icons can appear cleanly but not bounce */
.service-runway .is-visible .icon-dot,
.service-runway .mc-card.is-visible .icon-dot{
  animation:none !important;
  transform:none !important;
}

/* Once landed, services stay static unless hovered */
.service-runway .runway-card.is-visible:not(:hover),
.service-runway .mc-card.is-visible:not(:hover){
  transform:translate3d(0,0,0) scale(1) rotate(0deg) !important;
}

@media (prefers-reduced-motion: reduce){
  .service-runway .runway-card.will-reveal,
  .service-runway .mc-card.will-reveal,
  .service-runway .runway-card.will-reveal.is-visible,
  .service-runway .mc-card.will-reveal.is-visible{
    opacity:1!important;
    transform:none!important;
    filter:none!important;
    transition:none!important;
  }
}


/* v2.0.6 no post-landing jiggle, stronger fly-ins */
.premiere-board.is-visible,
.showreel-card.is-visible,
.runway-card.is-visible,
.mc-card.is-visible,
.timeline-item.is-visible,
.contact-card.is-visible,
.spotlight-panel.is-visible,
.cta-band.is-visible,
.hero-ticket-strip.is-visible,
.section-heading.is-visible,
.hero-copy.is-visible{
  animation:none !important;
}

/* Nothing auto-moves after landing */
.premiere-board.is-visible:not(:hover),
.showreel-card.is-visible:not(:hover),
.runway-card.is-visible:not(:hover),
.mc-card.is-visible:not(:hover),
.timeline-item.is-visible:not(:hover),
.contact-card.is-visible:not(:hover),
.spotlight-panel.is-visible:not(:hover),
.cta-band.is-visible:not(:hover),
.hero-ticket-strip.is-visible:not(:hover),
.section-heading.is-visible:not(:hover),
.hero-copy.is-visible:not(:hover){
  transform:translate3d(0,0,0) scale(1) rotate(0deg) !important;
  filter:none !important;
}

/* Crank up general fly-ins a bit more */
.will-reveal{
  opacity:0;
  transform:translate3d(0, 112px, 0) scale(.84) rotate(.9deg);
  filter:blur(8px);
  transition:
    opacity .84s ease,
    transform 1.08s cubic-bezier(.16,1,.3,1),
    filter .78s ease;
  transition-delay:var(--reveal-delay,0ms);
}

.will-reveal.is-visible{
  opacity:1;
  transform:translate3d(0,0,0) scale(1) rotate(0deg);
  filter:blur(0);
}

/* Hero and major panels */
.hero-copy.will-reveal{
  transform:translate3d(-145px, 62px, 0) scale(.88) rotate(-1.4deg);
}
.hero-copy.will-reveal.is-visible{
  transform:translate3d(0,0,0) scale(1) rotate(0deg);
}

.premiere-board.will-reveal{
  transform:translate3d(150px, 70px, 0) scale(.84) rotate(-4deg);
}
.premiere-board.will-reveal.is-visible{
  transform:translate3d(0,0,0) scale(1) rotate(-1deg);
}

.hero-ticket-strip.will-reveal{
  transform:translate3d(0, 86px, 0) scaleX(.66) scaleY(.9);
}
.hero-ticket-strip.will-reveal.is-visible{
  transform:translate3d(0,0,0) scaleX(1) scaleY(1);
}

.section-heading.will-reveal,
.spotlight-panel.will-reveal,
.cta-band.will-reveal{
  transform:translate3d(0, 96px, 0) scale(.88);
}
.section-heading.will-reveal.is-visible,
.spotlight-panel.will-reveal.is-visible,
.cta-band.will-reveal.is-visible{
  transform:translate3d(0,0,0) scale(1);
}

/* Credits track more dramatic, but static after landing */
.credits-track .timeline-item:nth-child(odd).will-reveal{
  transform:translate3d(-145px, 82px, 0) scale(.84) rotate(-2.8deg);
}
.credits-track .timeline-item:nth-child(even).will-reveal{
  transform:translate3d(145px, 82px, 0) scale(.84) rotate(2.8deg);
}
.credits-track .timeline-item.will-reveal.is-visible{
  transform:translate3d(0,0,0) scale(1) rotate(0deg);
}

/* Contact cards */
.contact-grid .contact-card:nth-child(odd).will-reveal{
  transform:translate3d(-132px, 74px, 0) scale(.86) rotate(-2deg);
}
.contact-grid .contact-card:nth-child(even).will-reveal{
  transform:translate3d(132px, 74px, 0) scale(.86) rotate(2deg);
}
.contact-grid .contact-card.will-reveal.is-visible{
  transform:translate3d(0,0,0) scale(1) rotate(0deg);
}

/* Showreel stronger entrance, then static */
.showreel-stack .showreel-card:nth-child(1).will-reveal{
  transform:translate3d(-130px, 96px, 0) scale(.82) rotateY(20deg) rotate(-2deg);
}
.showreel-stack .showreel-card:nth-child(2).will-reveal{
  transform:translate3d(0, 136px, 0) scale(.8) rotateX(10deg);
}
.showreel-stack .showreel-card:nth-child(3).will-reveal{
  transform:translate3d(130px, 96px, 0) scale(.82) rotateY(-20deg) rotate(2deg);
}
.showreel-stack .showreel-card.will-reveal.is-visible{
  transform:translate3d(0,0,0) scale(1) rotateX(0) rotateY(0) rotate(0deg);
}

/* Keep services dramatic and static */
.service-runway .runway-card:nth-child(1).will-reveal,
.service-runway .mc-card:nth-child(1).will-reveal{
  transform:translate3d(-155px, 84px, 0) scale(.86) rotate(-2.2deg);
}
.service-runway .runway-card:nth-child(2).will-reveal,
.service-runway .mc-card:nth-child(2).will-reveal{
  transform:translate3d(0, 118px, 0) scale(.85) rotate(0deg);
}
.service-runway .runway-card:nth-child(3).will-reveal,
.service-runway .mc-card:nth-child(3).will-reveal{
  transform:translate3d(155px, 84px, 0) scale(.86) rotate(2.2deg);
}
.service-runway .runway-card.will-reveal.is-visible,
.service-runway .mc-card.will-reveal.is-visible{
  transform:translate3d(0,0,0) scale(1) rotate(0deg) !important;
}

/* Remove any lingering glow/pop/jiggle style effects */
.service-runway .runway-card.is-visible::after,
.service-runway .mc-card.is-visible::after{
  display:none !important;
}
.is-visible .icon-dot,
.mc-card.is-visible .icon-dot{
  animation:none !important;
  transform:none !important;
}

@media (prefers-reduced-motion: reduce){
  .premiere-board.is-visible,
  .showreel-card.is-visible,
  .runway-card.is-visible,
  .mc-card.is-visible,
  .timeline-item.is-visible,
  .contact-card.is-visible,
  .spotlight-panel.is-visible,
  .cta-band.is-visible,
  .hero-ticket-strip.is-visible,
  .section-heading.is-visible,
  .hero-copy.is-visible{
    animation:none !important;
  }
}


/* v2.0.7 profile board fix: straight, static after fly-in, all four boxes load */
.premiere-board,
.premiere-board.is-visible,
.premiere-board.is-visible:not(:hover){
  transform:translate3d(0,0,0) scale(1) rotate(0deg) !important;
  animation:none !important;
  filter:none !important;
}

.premiere-board > *,
.premiere-board.is-visible > *{
  transform:none !important;
  animation:none !important;
}

.premiere-board.will-reveal{
  opacity:0;
  transform:translate3d(150px,70px,0) scale(.86) rotate(0deg) !important;
  filter:none !important;
  transition:
    opacity .78s ease,
    transform .95s cubic-bezier(.16,1,.3,1) !important;
}

.premiere-board.will-reveal.is-visible{
  opacity:1;
  transform:translate3d(0,0,0) scale(1) rotate(0deg) !important;
  filter:none !important;
}

/* Make the four fact boxes in the profile board reliable and static */
.quick-facts .fact,
.quick-facts .fact.will-reveal,
.quick-facts .fact.will-reveal.is-visible,
.quick-facts .fact.is-visible{
  opacity:1 !important;
  visibility:visible !important;
  display:block !important;
  transform:none !important;
  filter:none !important;
  animation:none !important;
  transition:none !important;
}

/* Remove any inherited floating/jiggle from children in the hero profile card */
.premiere-board .board-logo,
.premiere-board .board-title,
.premiere-board .quick-facts,
.premiere-board .fact,
.premiere-board .fact *,
.premiere-board .board-logo img{
  transform:none !important;
  animation:none !important;
  filter:none !important;
}

/* Preserve dramatic fly-ins elsewhere, but guarantee no post-landing movement */
.is-visible:not(:hover){
  animation:none !important;
}

.showreel-card.is-visible:not(:hover),
.timeline-item.is-visible:not(:hover),
.contact-card.is-visible:not(:hover),
.mc-card.is-visible:not(:hover),
.runway-card.is-visible:not(:hover),
.spotlight-panel.is-visible:not(:hover),
.cta-band.is-visible:not(:hover),
.hero-ticket-strip.is-visible:not(:hover),
.section-heading.is-visible:not(:hover),
.hero-copy.is-visible:not(:hover){
  transform:translate3d(0,0,0) scale(1) rotate(0deg) !important;
  filter:none !important;
}

/* Keep pseudo glow/flash effects off once landed */
.is-visible::after{
  animation:none !important;
}
