:root{--black:#050505;--panel:#0d0d0f;--cream:#f4eadb;--white:#fff;--gold:#ffbf00;--magenta:#ec0872;--purple:#9d24ff;--muted:#b9b4b0;--line:rgba(255,255,255,.15);--max:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--cream);font-family:Arial,Helvetica,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block;width:100%}button,input,select,textarea{font:inherit}.site-header{position:fixed;z-index:50;left:0;right:0;top:0;height:74px;padding:0 clamp(20px,5vw,70px);display:flex;align-items:center;justify-content:space-between;background:linear-gradient(180deg,rgba(0,0,0,.92),rgba(0,0,0,.56),transparent);backdrop-filter:blur(10px)}.brand{display:inline-flex;align-items:flex-start;font-weight:1000;letter-spacing:-2px;font-size:24px}.brand b{color:var(--magenta);font-size:27px;line-height:.8;margin-left:4px}.site-header nav{display:flex;align-items:center;gap:26px;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.site-header nav a{opacity:.8}.site-header nav a:hover{opacity:1}.site-header .nav-cta{padding:12px 17px;border:1px solid var(--magenta);background:rgba(236,8,114,.16);opacity:1}.hero{min-height:100svh;position:relative;display:grid;align-items:end;padding:140px clamp(20px,6vw,90px) 80px}.hero-bg{position:absolute;inset:0;background:url('/puppet-visuals/assets/hero.webp') center/cover no-repeat;filter:saturate(1.08)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,.75) 43%,rgba(0,0,0,.12) 74%),linear-gradient(0deg,rgba(0,0,0,.94),transparent 55%)}.hero-copy{position:relative;z-index:2;max-width:780px}.eyebrow{margin:0 0 16px;color:var(--gold);font-size:12px;font-weight:1000;letter-spacing:.22em;text-transform:uppercase}.hero h1,.section-heading h2,.split-copy h2,.range-panel h2,.cta-video-column h2,.final-cta h2{margin:0;font-size:clamp(42px,7vw,92px);line-height:.9;letter-spacing:-.055em;text-transform:uppercase;font-weight:1000}.hero h1 em,.section-heading h2 em,.split-copy h2 em,.range-panel h2 em,.cta-video-column h2 em{font-style:normal;color:var(--magenta)}.hero-lede{max-width:700px;font-size:clamp(17px,2vw,23px);line-height:1.5;color:#e7ded3}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin:32px 0 28px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 24px;border:1px solid transparent;font-size:12px;font-weight:1000;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}.button-primary{background:linear-gradient(90deg,var(--gold),#ff7a00);color:#050505;box-shadow:0 10px 45px rgba(255,165,0,.25)}.button-primary:hover{transform:translateY(-2px)}.button-ghost{border-color:rgba(255,255,255,.42);background:rgba(0,0,0,.35);backdrop-filter:blur(12px)}.hero-proof{display:flex;flex-wrap:wrap;gap:8px}.hero-proof span{border:1px solid rgba(255,255,255,.22);background:rgba(0,0,0,.45);padding:8px 12px;font-size:11px;text-transform:uppercase;font-weight:900;letter-spacing:.08em}.film-section,.process-video-section,.packages-section{padding:110px clamp(20px,5vw,70px)}.film-section,.packages-section{background:radial-gradient(circle at 50% 0,rgba(157,36,255,.16),transparent 36%),#08080a}.section-heading{max-width:760px;margin-bottom:40px}.section-heading.centered{text-align:center;margin:0 auto 45px}.section-heading h2,.split-copy h2,.range-panel h2,.cta-video-column h2{font-size:clamp(38px,5vw,68px)}.section-heading>p:last-child,.split-copy>p,.range-panel>p,.cta-video-column>p{font-size:18px;line-height:1.65;color:var(--muted)}.video-frame{position:relative;overflow:hidden;background:#000;border:1px solid rgba(255,255,255,.18);box-shadow:0 30px 90px rgba(0,0,0,.45)}.video-frame--wide{max-width:1120px;margin:0 auto;aspect-ratio:16/9}.video-frame--vertical{aspect-ratio:9/16;width:100%}.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.video-frame img{width:100%;height:100%;object-fit:cover}.video-frame:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,rgba(0,0,0,.4),transparent 50%)}.play-button{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%);border:0;background:rgba(0,0,0,.78);color:#fff;border:1px solid rgba(255,255,255,.35);padding:16px 22px;display:flex;align-items:center;gap:12px;cursor:pointer;backdrop-filter:blur(12px)}.play-button span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--magenta)}.play-button b{font-size:12px;letter-spacing:.1em}.split-section{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);min-height:780px;background:#0b0b0d}.split-art{min-height:660px;background:center/cover no-repeat}.process-art{background-image:linear-gradient(90deg,transparent 72%,#0b0b0d),url('/puppet-visuals/assets/process.webp')}.split-copy{padding:90px clamp(24px,5vw,80px);align-self:center}.process-list{list-style:none;margin:38px 0 0;padding:0;display:grid;gap:18px}.process-list li{display:grid;grid-template-columns:58px 1fr;gap:16px;align-items:start;border-top:1px solid var(--line);padding-top:18px}.process-list b{font-size:28px;color:var(--gold)}.process-list span{line-height:1.55;color:var(--muted)}.process-list strong{color:var(--cream)}.process-video-section{display:grid;grid-template-columns:.7fr 1.3fr;gap:60px;align-items:center;background:#08080a}.range-section{display:grid;grid-template-columns:1.25fr .75fr;min-height:720px}.range-image{background:url('/puppet-visuals/assets/range.webp') center/cover no-repeat}.range-panel{display:flex;flex-direction:column;justify-content:center;padding:70px clamp(24px,5vw,72px);background:linear-gradient(150deg,#15061a,#070708)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:34px}.stats div{border:1px solid var(--line);padding:18px 12px;background:rgba(255,255,255,.03)}.stats strong{display:block;font-size:28px;color:var(--gold)}.stats span{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.package-visual{height:440px;max-width:1180px;margin:0 auto 36px;background:url('/puppet-visuals/assets/packages.webp') center/cover no-repeat;border:1px solid var(--line)}.package-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;max-width:1240px;margin:0 auto}.package-grid article{position:relative;padding:28px 24px 30px;border:1px solid var(--line);background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.015));min-height:510px;display:flex;flex-direction:column}.package-grid article.featured{border-color:var(--magenta);box-shadow:0 0 0 1px var(--magenta),0 20px 60px rgba(236,8,114,.16)}.package-number{position:absolute;right:18px;top:18px;color:rgba(255,255,255,.14);font-size:62px;font-weight:1000}.package-label{color:var(--gold);font-size:10px;font-weight:1000;letter-spacing:.16em}.package-grid h3{font-size:26px;margin:16px 0 10px;text-transform:uppercase}.price{font-size:46px;font-weight:1000;margin:0 0 20px;color:var(--cream)}.price span{font-size:24px;color:var(--magenta)}.package-grid ul{padding-left:18px;margin:0 0 28px;color:var(--muted);line-height:1.75;flex:1}.package-grid a{display:block;text-align:center;padding:15px;border:1px solid rgba(255,255,255,.3);font-size:11px;font-weight:1000;letter-spacing:.1em}.package-grid a:hover{background:var(--gold);color:#000;border-color:var(--gold)}.deposit-note{text-align:center;color:var(--muted);font-size:13px;margin:24px auto 0}.booking-section{padding:110px clamp(20px,5vw,70px);display:grid;grid-template-columns:minmax(320px,.75fr) minmax(0,1.25fr);gap:70px;background:radial-gradient(circle at 0 20%,rgba(236,8,114,.16),transparent 35%),#08080a}.cta-video-column{max-width:520px}.phone-shell{width:min(330px,82vw);margin:34px auto 0;padding:10px;border:1px solid rgba(255,255,255,.28);border-radius:32px;background:#050505;box-shadow:0 30px 90px rgba(0,0,0,.55)}.phone-shell .video-frame{border-radius:23px}.booking-form{background:#111114;border:1px solid var(--line);padding:clamp(26px,4vw,50px);align-self:start}.form-kicker{color:var(--magenta);font-size:11px;font-weight:1000;letter-spacing:.18em}.booking-form h3{font-size:clamp(38px,5vw,64px);margin:8px 0 30px;text-transform:uppercase;letter-spacing:-.04em}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.form-grid label{display:grid;gap:8px}.form-grid label.wide{grid-column:1/-1}.form-grid label span{font-size:10px;font-weight:1000;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:1px solid rgba(255,255,255,.18);background:#08080a;color:var(--cream);padding:14px;outline:none}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:var(--gold)}.form-submit{width:100%;margin-top:22px;border:0}.form-note{font-size:12px;color:var(--muted);line-height:1.5}.form-status{font-size:13px;color:var(--gold);min-height:18px}.final-cta{padding:70px clamp(20px,5vw,70px);display:flex;align-items:center;justify-content:space-between;gap:30px;background:linear-gradient(110deg,var(--magenta),#6d0dc9);color:white}.final-cta h2{font-size:clamp(34px,5vw,64px);max-width:900px}.final-cta .button{flex:none;background:#fff;color:#000}footer{padding:36px clamp(20px,5vw,70px);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;border-top:1px solid var(--line);background:#050505;color:var(--muted)}footer p{text-align:center;font-size:12px}footer div{display:flex;gap:16px;font-size:12px;text-transform:uppercase;font-weight:900}footer a:hover{color:var(--gold)}@media(max-width:1000px){.site-header nav a:not(.nav-cta){display:none}.split-section,.process-video-section,.range-section,.booking-section{grid-template-columns:1fr}.split-art{min-height:520px}.process-art{background-image:linear-gradient(0deg,#0b0b0d,transparent 35%),url('/puppet-visuals/assets/process.webp')}.process-video-section{gap:24px}.range-image{min-height:560px}.package-grid{grid-template-columns:repeat(2,1fr)}.booking-section{gap:44px}.cta-video-column{max-width:none}.final-cta{align-items:flex-start;flex-direction:column}footer{grid-template-columns:1fr;text-align:center}footer p{text-align:center}footer div{justify-content:center}}@media(max-width:650px){.site-header{height:64px}.site-header .brand{font-size:20px}.site-header .nav-cta{font-size:9px;padding:10px}.hero{padding:120px 20px 46px;min-height:880px}.hero-bg{background-position:61% center}.hero-shade{background:linear-gradient(0deg,rgba(0,0,0,.98) 0%,rgba(0,0,0,.78) 55%,rgba(0,0,0,.2) 100%)}.hero h1{font-size:48px}.hero-lede{font-size:16px}.hero-actions .button{width:100%}.film-section,.process-video-section,.packages-section,.booking-section{padding:78px 18px}.split-art{min-height:430px}.split-copy{padding:58px 20px}.range-image{min-height:420px}.range-panel{padding:58px 20px}.stats{grid-template-columns:1fr}.package-visual{height:240px}.package-grid{grid-template-columns:1fr}.package-grid article{min-height:auto}.form-grid{grid-template-columns:1fr}.form-grid label.wide{grid-column:auto}.play-button b{display:none}.play-button{padding:10px}.final-cta{padding:55px 20px}footer div{flex-wrap:wrap}}
/* Hero sales film placement */
.hero{align-items:center}.hero-grid{position:relative;z-index:2;width:100%;max-width:1500px;margin:0 auto;display:grid;grid-template-columns:minmax(0,.92fr) minmax(520px,1.08fr);gap:clamp(34px,5vw,80px);align-items:center}.hero-copy{max-width:760px}.hero-video-wrap{align-self:center}.hero-video-label{margin:0 0 10px;display:flex;justify-content:space-between;gap:16px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#cfc7bf}.hero-video-label b{color:#ffbf00}.hero-video-wrap .video-frame{box-shadow:0 38px 110px rgba(0,0,0,.68),0 0 0 1px rgba(255,191,0,.22)}
@media(max-width:1120px){.hero{padding-top:120px}.hero-grid{grid-template-columns:1fr;max-width:980px}.hero-copy{max-width:820px}.hero-video-wrap{width:100%}}
@media(max-width:650px){.hero{min-height:auto;padding-top:102px}.hero-grid{gap:30px}.hero-video-label{align-items:flex-start;flex-direction:column;gap:4px}.hero-video-wrap{margin-bottom:8px}}

/* Refined cinematic video rhythm — widescreen films and vertical reels live in distinct spaces */
.process-video-section{display:block;text-align:center;padding-top:120px;padding-bottom:120px;background:radial-gradient(circle at 50% 20%,rgba(157,36,255,.14),transparent 34%),#08080a}
.process-video-section .section-heading{margin:0 auto 44px;max-width:820px}
.process-video-section .video-frame--wide{max-width:1180px;border-radius:18px;box-shadow:0 36px 120px rgba(0,0,0,.7),0 0 0 1px rgba(157,36,255,.18)}
.reel-invitation-section{position:relative;overflow:hidden;min-height:760px;padding:110px clamp(20px,7vw,110px);display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.72fr);align-items:center;gap:clamp(50px,8vw,130px);background:linear-gradient(115deg,#070709 0%,#130718 50%,#08080a 100%);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.reel-invitation-section:before{content:"";position:absolute;inset:-20%;background:radial-gradient(circle at 76% 48%,rgba(236,8,114,.22),transparent 25%),radial-gradient(circle at 22% 40%,rgba(157,36,255,.12),transparent 30%);pointer-events:none}
.reel-invitation-copy,.reel-stage{position:relative;z-index:1}
.reel-invitation-copy{max-width:720px}
.reel-invitation-copy h2,.booking-intro h2{margin:0;font-size:clamp(42px,6vw,82px);line-height:.92;letter-spacing:-.055em;text-transform:uppercase;font-weight:1000}
.reel-invitation-copy h2 em,.booking-intro h2 em{font-style:normal;color:var(--magenta)}
.reel-invitation-copy>p:last-of-type,.booking-intro>p:last-child{font-size:18px;line-height:1.65;color:var(--muted);max-width:680px}
.reel-invitation-copy .button{margin-top:18px}
.reel-stage{display:grid;place-items:center;min-height:600px}
.reel-glow{position:absolute;width:460px;height:460px;border-radius:50%;background:radial-gradient(circle,rgba(236,8,114,.25),rgba(157,36,255,.1) 45%,transparent 70%);filter:blur(14px);animation:reelPulse 4s ease-in-out infinite}
.phone-shell{position:relative;width:min(335px,82vw);margin:0;padding:10px;border:1px solid rgba(255,255,255,.35);border-radius:34px;background:#050505;box-shadow:0 38px 120px rgba(0,0,0,.72),0 0 55px rgba(236,8,114,.14);transform:rotate(1.2deg)}
.phone-shell:before{content:"";position:absolute;z-index:4;top:8px;left:50%;width:72px;height:5px;transform:translateX(-50%);border-radius:999px;background:rgba(255,255,255,.2)}
.phone-shell .video-frame{border-radius:25px}
@keyframes reelPulse{50%{transform:scale(1.07);opacity:.78}}
.booking-section{padding:110px clamp(20px,7vw,110px);display:grid;grid-template-columns:minmax(280px,.7fr) minmax(0,1.3fr);gap:clamp(45px,7vw,100px);align-items:start;background:radial-gradient(circle at 90% 10%,rgba(255,191,0,.08),transparent 28%),#08080a}
.booking-intro{position:sticky;top:110px;max-width:560px}
.booking-form{border-radius:18px;box-shadow:0 28px 100px rgba(0,0,0,.38)}
@media(max-width:1000px){.reel-invitation-section,.booking-section{grid-template-columns:1fr}.reel-invitation-copy{text-align:center;margin:0 auto}.reel-invitation-copy>p:last-of-type{margin-left:auto;margin-right:auto}.reel-stage{min-height:570px}.booking-intro{position:static;text-align:center;margin:0 auto;max-width:760px}.booking-intro>p:last-child{margin-left:auto;margin-right:auto}}
@media(max-width:650px){.process-video-section{padding:78px 18px}.process-video-section .video-frame--wide{border-radius:10px}.reel-invitation-section{padding:78px 20px;gap:34px;min-height:auto}.reel-invitation-copy h2,.booking-intro h2{font-size:44px}.reel-stage{min-height:520px}.phone-shell{transform:none;width:min(300px,88vw)}.booking-section{padding:78px 18px}}
