
:root{
  --ink:#02050a;
  --night:#050a12;
  --night2:#071321;
  --navy:#0a1d33;
  --blue:#123c67;
  --electric:#5aa2ff;
  --orange:#f89a32;
  --gold:#e5b454;
  --cream:#f2ece2;
  --muted:#98abc0;
  --muted2:#6f859a;
  --line:rgba(255,255,255,.12);
  --line2:rgba(255,154,50,.24);
  --max:1420px;
  --pad:clamp(20px,4vw,66px);
  --display:"Arial Black","Arial Narrow","Aptos Display","Segoe UI",Arial,sans-serif;
  --body:"Aptos","Segoe UI",Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--ink)}
body{
  margin:0;background:var(--night);color:var(--cream);font-family:var(--body);
  overflow-x:hidden;min-height:100%;text-rendering:optimizeLegibility
}
body::before{
  content:"";position:fixed;inset:0;z-index:9999;pointer-events:none;opacity:.08;
  background:
    radial-gradient(circle at 20% 20%,rgba(255,255,255,.5) .55px,transparent .7px) 0 0/8px 8px,
    radial-gradient(circle at 70% 40%,rgba(255,255,255,.25) .45px,transparent .65px) 2px 3px/11px 11px;
  mix-blend-mode:soft-light
}
img,video{display:block;max-width:100%}
a{text-decoration:none;color:inherit}
button,input{font:inherit}
::selection{background:var(--orange);color:#06101d}
main{overflow:hidden}
.section{padding:clamp(90px,10vw,155px) var(--pad);position:relative}
.section.compact{padding-top:70px;padding-bottom:70px}
.kicker{
  color:var(--orange);font-size:10px;line-height:1.4;letter-spacing:.19em;text-transform:uppercase;
  font-weight:900;margin-bottom:20px
}
h1,h2,h3{font-family:var(--display);text-transform:uppercase;letter-spacing:-.065em;line-height:.86;margin:0}
h1 em,h2 span,h1 span{font-style:normal}
h2{font-size:clamp(56px,8vw,126px)}
p{line-height:1.58}
.section-head{max-width:var(--max);margin:0 auto 54px}
.section-head.split{display:grid;grid-template-columns:1fr .7fr;gap:clamp(35px,8vw,120px);align-items:end}
.section-head h2{margin:0}
.section-head h2 span{color:var(--orange)}
.section-head>p{margin:0;color:var(--muted);font-size:clamp(15px,1.3vw,18px);max-width:620px}
.btn{
  display:inline-flex;align-items:center;justify-content:center;padding:14px 18px;border-radius:999px;
  text-transform:uppercase;font-weight:900;letter-spacing:.08em;font-size:11px;border:1px solid transparent;
  transition:.2s ease;white-space:nowrap
}
.btn:hover{transform:translateY(-2px)}
.btn.hot{background:var(--orange);color:#07111e;box-shadow:0 14px 40px rgba(248,154,50,.12)}
.btn.glass{border-color:rgba(255,255,255,.22);background:rgba(255,255,255,.045);backdrop-filter:blur(7px)}
.text-link{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--orange);font-weight:900}
.case-label{font-size:10px;letter-spacing:.14em;color:var(--orange);font-weight:900;text-transform:uppercase}
.pill-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:20px}
.pill-row span{border:1px solid rgba(255,255,255,.15);border-radius:999px;padding:7px 10px;font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:#9fb3c6}

/* ---------------- NAV ---------------- */
.site-nav{
  position:absolute;z-index:500;left:0;right:0;top:0;display:flex;align-items:center;justify-content:space-between;
  padding:18px var(--pad)
}
.brand{
  width:165px;height:58px;background:#f4efe7;border-radius:16px 16px 16px 3px;padding:10px 13px;
  display:flex;align-items:center;justify-content:center;position:relative;box-shadow:0 18px 60px rgba(0,0,0,.28)
}
.brand img{width:100%;height:auto}
.brand-cloud{position:absolute;left:-7px;bottom:-7px;width:18px;height:18px;background:var(--orange);border-radius:50%;opacity:.75}
.nav-links{display:flex;align-items:center;gap:22px;font-size:10px;letter-spacing:.09em;font-weight:850;text-transform:uppercase}
.nav-links>a{color:#cfdae4;opacity:.76;transition:.2s}
.nav-links>a:hover,.nav-links>a.active{color:#fff;opacity:1}
.nav-links .brief-link{opacity:1;color:var(--orange);border:1px solid rgba(248,154,50,.48);border-radius:999px;padding:11px 14px}
.nav-toggle{display:none;border:0;background:none;width:44px;height:44px;position:relative;cursor:pointer}
.nav-toggle span{position:absolute;height:2px;background:#fff;left:7px;right:7px;top:17px}
.nav-toggle span+span{top:26px}
.cursor-glow{
  position:fixed;z-index:9998;pointer-events:none;width:340px;height:340px;border-radius:50%;opacity:0;
  background:radial-gradient(circle,rgba(90,162,255,.10),rgba(248,154,50,.055) 35%,transparent 70%);
  transform:translate(-50%,-50%);transition:opacity .2s;mix-blend-mode:screen
}
.spark{position:fixed;z-index:9997;width:4px;height:4px;border-radius:50%;background:var(--orange);pointer-events:none;animation:spark .7s ease-out forwards}
@keyframes spark{to{transform:translateY(-32px) scale(.1);opacity:0}}

/* ---------------- HOME HERO ---------------- */
.home-hero{
  min-height:100svh;position:relative;display:flex;align-items:center;padding:135px var(--pad) 155px;isolation:isolate;background:#02050a
}
.hero-video{position:absolute;z-index:-5;inset:0;width:100%;height:100%;object-fit:cover}
.hero-shade{
  position:absolute;z-index:-4;inset:0;background:
    linear-gradient(90deg,rgba(2,5,10,.96) 0%,rgba(2,5,10,.74) 42%,rgba(2,5,10,.4) 70%,rgba(2,5,10,.72) 100%),
    linear-gradient(180deg,rgba(2,5,10,.2),rgba(2,5,10,.14) 55%,#050a12 100%)
}
.hero-orbit{position:absolute;z-index:-2;border:1px solid rgba(248,154,50,.28);border-radius:50%;pointer-events:none}
.orbit-one{width:720px;height:720px;right:-160px;top:-110px}
.orbit-two{width:520px;height:520px;right:15%;top:14%;border-color:rgba(90,162,255,.18)}
.home-hero-copy{width:min(900px,75vw);position:relative;z-index:4}
.home-hero h1{font-size:clamp(64px,8.8vw,150px);margin:0;max-width:940px}
.home-hero h1 span,.home-hero h1 em{display:block}
.home-hero h1 span{color:#f6f1e9;text-shadow:0 6px 35px #000}
.home-hero h1 em{color:var(--orange);font-style:normal}
.home-hero-copy>p{max-width:720px;color:#b2c2d1;font-size:clamp(15px,1.4vw,20px);margin:28px 0 0}
.button-row{display:flex;flex-wrap:wrap;gap:9px;margin-top:28px}
.hero-proof{
  position:absolute;left:var(--pad);right:var(--pad);bottom:35px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);
  display:grid;grid-template-columns:repeat(4,1fr);background:rgba(2,5,10,.34);backdrop-filter:blur(7px)
}
.hero-proof>div{padding:14px 15px;border-right:1px solid var(--line)}
.hero-proof>div:last-child{border-right:0}
.hero-proof strong{display:block;color:#fff;font-size:15px;letter-spacing:-.02em}
.hero-proof span{display:block;color:#879bb0;font-size:10px;margin-top:3px}

/* ---------------- ROUTE CHOOSER ---------------- */
.chooser{background:linear-gradient(180deg,#050a12 0%,#08182b 100%)}
.route-grid{max-width:var(--max);margin:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:13px}
.route{
  min-height:420px;border:1px solid var(--line);position:relative;padding:28px;display:flex;flex-direction:column;justify-content:flex-end;
  overflow:hidden;isolation:isolate;transition:.25s;background:#07111e
}
.route::before{content:"";position:absolute;z-index:-2;inset:0;background-size:cover;background-position:center;filter:saturate(.65) brightness(.38);transition:.4s}
.route::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,rgba(3,8,14,.05),rgba(3,8,14,.93) 78%)}
.route-mall::before{background-image:url("img/uploaded/u01.webp")}
.route-venue::before{background-image:url("img/uploaded/u01.webp")}
.route-event::before{background-image:url("img/uploaded/u31.webp")}
.route-school::before{background-image:url("img/uploaded/u08.webp")}
.route:hover::before{filter:saturate(.95) brightness(.56);transform:scale(1.04)}
.route-no{position:absolute;top:20px;right:20px;color:rgba(255,255,255,.18);font-family:var(--display);font-size:52px}
.route b{font-family:var(--display);font-size:clamp(34px,3.2vw,54px);line-height:.87;letter-spacing:-.055em}
.route small{color:#95a9bb;line-height:1.45;margin-top:14px}
.route i{font-style:normal;color:var(--orange);font-size:11px;text-transform:uppercase;font-weight:900;letter-spacing:.1em;margin-top:22px}

/* ---------------- DEFINITION ---------------- */
.dark-cut{background:#03070d}
.definition{display:grid;grid-template-columns:1.1fr .9fr;min-height:820px;align-items:center;gap:5vw}
.definition-visual{position:relative;min-height:620px}
.definition-visual::before{
  content:"";position:absolute;width:78%;height:78%;left:8%;top:7%;background:radial-gradient(circle,rgba(26,80,135,.35),transparent 65%);
  border:1px solid rgba(255,255,255,.09);transform:rotate(-4deg)
}
.definition-visual img{position:absolute;object-fit:cover;box-shadow:0 30px 90px #000;border:1px solid rgba(255,255,255,.1)}
.dv-one{width:49%;height:78%;left:4%;bottom:4%;clip-path:polygon(0 7%,91% 0,100% 93%,7% 100%);transform:rotate(-5deg)}
.dv-two{width:50%;height:61%;right:4%;top:7%;clip-path:polygon(8% 0,100% 7%,92% 100%,0 92%);transform:rotate(4deg)}
.cloud-script{position:absolute;z-index:4;right:3%;bottom:7%;font-family:Georgia,serif;font-style:italic;font-size:clamp(42px,5vw,80px);color:var(--orange);transform:rotate(-7deg);text-shadow:0 8px 40px #000}
.definition-copy{max-width:670px}
.definition-copy h2{margin:0}
.definition-copy .statement{font-family:Georgia,serif;font-style:italic;color:var(--orange);font-size:clamp(28px,3vw,48px);margin:25px 0}
.definition-copy>p{color:var(--muted);font-size:17px;max-width:590px}
.mini-process{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:30px;border-top:1px solid var(--line);padding-top:19px}
.mini-process span{font-size:9px;letter-spacing:.14em;font-weight:900;color:#dbe4ec}
.mini-process i{font-style:normal;color:var(--orange)}

/* ---------------- WORLDS ---------------- */
.worlds{background:#02050a}
.world-rail{
  display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 max(var(--pad),calc((100vw - var(--max))/2)) 30px;
  scrollbar-width:none;overscroll-behavior-inline:contain
}
.world-rail::-webkit-scrollbar{display:none}
.world{flex:0 0 min(490px,72vw);height:610px;position:relative;scroll-snap-align:center;overflow:hidden;border:1px solid var(--line);background:#071321}
.world:nth-child(even){transform:translateY(24px)}
.world>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.8) contrast(1.05);transition:.45s}
.world::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.04) 28%,rgba(1,5,10,.94) 86%)}
.world>div{position:absolute;z-index:3;left:26px;right:30px;bottom:24px}
.world small{color:var(--orange);font-weight:900;letter-spacing:.13em;font-size:9px}
.world h3{font-size:clamp(34px,4vw,58px);margin:8px 0 8px}
.world p{font-size:13px;color:#a4b6c8;margin:0}
.world:hover>img{transform:scale(1.035);filter:saturate(1) contrast(1.08)}

/* ---------------- HOME PROOF ---------------- */
.home-proof{background:linear-gradient(180deg,#071321,#0a2038)}
.feature-case{max-width:var(--max);margin:auto;display:grid;grid-template-columns:.8fr 1.2fr;min-height:650px;background:#030911;border:1px solid var(--line);overflow:hidden}
.feature-copy{padding:clamp(34px,5vw,72px);align-self:end;position:relative;z-index:4}
.feature-copy h3{font-size:clamp(58px,7vw,108px);margin:12px 0 22px}
.feature-copy p{color:var(--muted);max-width:520px}
.feature-media{position:relative;min-height:650px;background:radial-gradient(circle at 58% 44%,rgba(90,162,255,.2),transparent 44%)}
.feature-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#030911 0%,transparent 25%)}
.feature-media img{position:absolute;object-fit:cover;box-shadow:0 30px 80px #000}
.fm-a{width:46%;height:72%;left:7%;top:10%;transform:rotate(-5deg);clip-path:polygon(0 5%,95% 0,100% 92%,8% 100%)}
.fm-b{width:56%;height:50%;right:2%;bottom:7%;transform:rotate(4deg);clip-path:polygon(7% 0,100% 8%,93% 100%,0 92%)}
.huge-six{position:absolute;z-index:3;right:5%;top:0;font-family:var(--display);font-size:clamp(180px,22vw,330px);line-height:1;color:transparent;-webkit-text-stroke:2px rgba(248,154,50,.34)}
.proof-mini-grid{max-width:var(--max);margin:16px auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.proof-mini{display:grid;grid-template-columns:150px 1fr;gap:0;border:1px solid var(--line);background:#06111e;min-height:150px;transition:.2s}
.proof-mini:hover{border-color:rgba(248,154,50,.4);transform:translateY(-2px)}
.proof-mini img{width:100%;height:100%;object-fit:cover}
.proof-mini span{padding:22px;align-self:center}
.proof-mini b{display:block;font-size:13px;letter-spacing:.03em}
.proof-mini small{display:block;color:var(--muted2);margin-top:6px;line-height:1.45}

/* ---------------- CAST PREVIEW ---------------- */
.cast-preview{background:#03070d}
.cast-collage{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1.05fr .8fr 1.2fr .8fr 1fr;gap:10px;align-items:end}
.cast-shot{position:relative;overflow:hidden;border:1px solid var(--line);background:#071321;transition:.25s}
.cast-shot img{width:100%;height:100%;object-fit:cover;filter:saturate(.86);transition:.35s}
.cast-shot::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.88))}
.cast-shot span{position:absolute;z-index:2;left:13px;bottom:12px;font-size:9px;letter-spacing:.12em;font-weight:900;color:#fff}
.cast-shot:hover img{transform:scale(1.04);filter:saturate(1)}
.c1{height:390px}.c2{height:310px}.c3{height:470px}.c4{height:330px}.c5{height:400px}
.center-button{text-align:center;margin-top:32px}

/* ---------------- ORIGIN ---------------- */
.origin-short{background:#08192d;display:grid;grid-template-columns:.9fr 1.1fr;gap:7vw;min-height:760px;align-items:center}
.origin-copy h2{font-size:clamp(58px,7vw,112px)}
.origin-copy blockquote{font-family:Georgia,serif;font-size:clamp(23px,2.4vw,38px);font-style:italic;color:#f2c178;border-left:2px solid var(--orange);margin:30px 0 20px;padding-left:20px}
.origin-copy p{color:var(--muted);max-width:620px}
.origin-images{position:relative;min-height:600px}
.origin-images img{position:absolute;object-fit:cover;border:1px solid var(--line);box-shadow:0 30px 80px rgba(0,0,0,.42)}
.origin-puppet{width:47%;height:58%;left:1%;top:7%;transform:rotate(-5deg);clip-path:polygon(0 7%,92% 0,100% 93%,7% 100%)}
.origin-school{width:62%;height:62%;right:0;bottom:3%;transform:rotate(4deg);clip-path:polygon(8% 0,100% 6%,93% 100%,0 92%)}
.origin-cloud-line{position:absolute;width:75%;height:220px;left:12%;top:17%;border-top:2px dashed rgba(248,154,50,.45);border-radius:50%;transform:rotate(-10deg)}

/* ---------------- CLIENT WALL ---------------- */
.client-wall{background:#02050a}
.client-wall>.kicker{max-width:var(--max);margin-left:auto;margin-right:auto}
.client-words{max-width:var(--max);margin:auto;display:flex;flex-wrap:wrap;gap:8px}
.client-words span{border:1px solid var(--line);padding:11px 14px;border-radius:999px;color:#9db0c2;font-size:10px;font-weight:850;letter-spacing:.07em}

/* ---------------- FINAL CTA ---------------- */
.final-cta{min-height:800px;background:#02050a;display:flex;align-items:center;isolation:isolate}
.final-art{position:absolute;z-index:-2;inset:0;overflow:hidden}
.final-art::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#02050a 5%,rgba(2,5,10,.92) 46%,rgba(2,5,10,.28) 100%)}
.final-art img{width:100%;height:100%;object-fit:cover;object-position:center 20%;opacity:.6;filter:saturate(.72) contrast(1.08);transform:scale(1.05)}
.final-copy{width:min(var(--max),100%);margin:auto}
.final-copy h2{max-width:1000px}
.final-copy h2 span{color:var(--orange)}
.final-copy p{max-width:630px;color:var(--muted);font-size:17px;margin:28px 0}
.mail-cta{display:flex;align-items:center;justify-content:space-between;width:min(720px,100%);border-bottom:1px solid rgba(255,255,255,.32);padding:20px 0;font-size:clamp(20px,2.8vw,40px);font-weight:850;letter-spacing:-.04em}
.mail-cta b{color:var(--orange)}

/* ---------------- SUBHERO ---------------- */
.subhero{
  min-height:100svh;position:relative;display:flex;align-items:center;padding:130px var(--pad) 90px;background:
    radial-gradient(circle at 70% 30%,rgba(27,83,140,.28),transparent 32%),#03070d;overflow:hidden;isolation:isolate
}
.subhero::before{content:"";position:absolute;z-index:-4;inset:0;background:linear-gradient(90deg,#02050a 0%,rgba(2,5,10,.82) 44%,rgba(2,5,10,.15) 100%)}
.subhero-copy{position:relative;z-index:8;width:min(780px,58vw)}
.subhero h1{font-size:clamp(66px,8.8vw,145px)}
.subhero h1 em{display:block;color:var(--orange)}
.subhero-copy>p{color:#b1c1d1;max-width:660px;font-size:clamp(15px,1.3vw,19px);margin:27px 0}
.subhero-media{position:absolute;z-index:-2;right:-2%;top:11%;bottom:4%;width:55%}
.subhero-media img{position:absolute;object-fit:cover;border:1px solid var(--line);box-shadow:0 30px 90px rgba(0,0,0,.55)}
.sh-a{width:43%;height:72%;left:0;top:10%;clip-path:polygon(0 6%,94% 0,100% 92%,8% 100%);transform:rotate(-5deg)}
.sh-b{width:60%;height:58%;right:2%;top:1%;clip-path:polygon(8% 0,100% 6%,94% 100%,0 91%);transform:rotate(4deg)}
.sh-c{width:50%;height:45%;right:7%;bottom:0;clip-path:polygon(3% 0,100% 8%,93% 100%,0 93%);transform:rotate(-2deg)}
.venue-media .sh-b{object-position:center top}
.school-media .sh-b{object-position:center 25%}

/* ---------------- OUTCOMES / FORMAT GRIDS ---------------- */
.outcomes{background:#071321}
.outcome-grid,.format-grid,.destination-grid{max-width:var(--max);margin:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.outcome-grid article,.format-grid article,.destination-grid article{
  border:1px solid var(--line);background:rgba(255,255,255,.025);padding:28px;min-height:230px
}
.outcome-grid span{color:var(--orange);font-size:10px;font-weight:900}
.outcome-grid b,.format-grid b,.destination-grid b{display:block;font-family:var(--display);font-size:clamp(24px,2.5vw,38px);letter-spacing:-.04em;margin-top:38px}
.outcome-grid p,.format-grid p,.destination-grid p{color:var(--muted);font-size:13px;margin-bottom:0}
.format-grid,.destination-grid{grid-template-columns:repeat(3,1fr)}
.format-grid article,.destination-grid article{min-height:260px}
.format-grid article:nth-child(odd),.destination-grid article:nth-child(even){background:#081a2d}

/* ---------------- CASE SECTIONS ---------------- */
.case-section{background:#03070d}
.case-wide{max-width:var(--max);margin:auto;display:grid;grid-template-columns:.8fr 1.2fr;min-height:620px;border:1px solid var(--line);background:#07111e;overflow:hidden}
.case-wide-copy{padding:clamp(35px,5vw,72px);align-self:end}
.case-wide-copy h3{font-size:clamp(52px,6.5vw,100px);margin:13px 0 20px}
.case-wide-copy p{color:var(--muted);max-width:550px}
.case-wide-media{position:relative;min-height:620px}
.case-wide-media img{position:absolute;object-fit:cover;box-shadow:0 30px 80px #000}
.case-wide-media img:first-child{width:51%;height:78%;left:5%;top:8%;transform:rotate(-5deg);clip-path:polygon(0 5%,93% 0,100% 94%,8% 100%)}
.case-wide-media img:last-child{width:58%;height:51%;right:2%;bottom:7%;transform:rotate(4deg);clip-path:polygon(8% 0,100% 7%,93% 100%,0 92%)}
.case-grid-3{max-width:var(--max);margin:18px auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.case-card{border:1px solid var(--line);background:#071321;overflow:hidden}
.case-card>img{width:100%;height:300px;object-fit:cover;object-position:center top}
.case-card>div{padding:28px}
.case-card h3{font-size:clamp(30px,3vw,48px);margin:12px 0}
.case-card p{color:var(--muted);font-size:13px;margin-bottom:0}
.mall-formats{background:#08192d}

/* ---------------- CONCEPT VS LIVE ---------------- */
.concept-vs-live{background:#02050a;display:grid;grid-template-columns:.72fr 1.28fr;gap:6vw;align-items:center}
.concept-copy{max-width:620px}
.concept-copy h2{font-size:clamp(55px,7vw,105px)}
.concept-copy p{color:var(--muted)}
.concept-image{height:720px;position:relative}
.concept-image img{width:76%;height:92%;object-fit:cover;object-position:top center;position:absolute;right:4%;top:2%;transform:rotate(3deg);box-shadow:0 35px 100px #000;border:1px solid var(--line)}

/* ---------------- VENUES ---------------- */
.destination{background:#071321}
.venue-proof{background:#03070d}
.venue-proof-grid{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:18px}
.venue-real{border:1px solid var(--line);display:grid;grid-template-columns:.9fr 1.1fr;background:#071321;min-height:420px;overflow:hidden}
.venue-real img{width:100%;height:100%;object-fit:cover}
.venue-real>div{padding:34px;align-self:end}
.venue-real h3{font-size:clamp(38px,4vw,64px);margin:11px 0}
.venue-real p{color:var(--muted);font-size:13px}
.proposal-showcase{background:#08192d}
.proposal-grid{max-width:var(--max);margin:auto;display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.proposal-grid article{border:1px solid var(--line);background:#050b14;overflow:hidden}
.proposal-grid img{width:100%;height:390px;object-fit:cover}
.proposal-grid span{display:block;padding:24px}
.proposal-grid b{display:block;font-size:13px}
.proposal-grid small{display:block;color:var(--muted2);margin-top:6px;line-height:1.5}
.three-routes{background:#02050a}
.route-steps{max-width:var(--max);margin:auto;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.route-steps article{padding:38px;border-right:1px solid var(--line)}
.route-steps article:last-child{border-right:0}
.route-steps span{font-size:10px;color:var(--orange);font-weight:900}
.route-steps h3{font-size:clamp(36px,4vw,62px);margin:45px 0 18px}
.route-steps p{color:var(--muted);font-size:13px}

/* ---------------- EVENTS ---------------- */
.event-proof{background:#071321}
.event-proof-card{max-width:var(--max);margin:auto;border:1px solid var(--line);display:grid;grid-template-columns:.8fr 1.2fr;min-height:550px;background:
  radial-gradient(circle at 17% 50%,rgba(248,154,50,.12),transparent 38%),#03070d}
.event-proof-big{
  font-family:var(--display);font-size:clamp(64px,8vw,128px);letter-spacing:-.07em;line-height:.78;padding:54px;
  color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.25);align-self:center
}
.event-proof-copy{padding:60px;align-self:center}
.event-proof-copy h2{font-size:clamp(52px,6vw,95px);margin:12px 0 20px}
.event-proof-copy p{color:var(--muted);max-width:650px}
.event-proof-copy .quiet{color:#758ba0;font-size:13px;border-top:1px solid var(--line);padding-top:18px}
.event-tools{background:#03070d}
.galleria{background:#08192d;display:grid;grid-template-columns:.85fr 1.15fr;gap:5vw;align-items:center;min-height:760px}
.galleria-copy h2{font-size:clamp(58px,7vw,110px);margin:14px 0 24px}
.galleria-copy>p{color:var(--muted);max-width:600px}
.galleria-art{position:relative;min-height:590px}
.galleria-art img{position:absolute;object-fit:cover;border:1px solid var(--line);box-shadow:0 30px 90px #000}
.ga1{width:52%;height:74%;left:5%;top:4%;transform:rotate(-4deg);clip-path:polygon(0 6%,94% 0,100% 93%,8% 100%)}
.ga2{width:55%;height:56%;right:4%;bottom:4%;transform:rotate(5deg);clip-path:polygon(8% 0,100% 7%,93% 100%,0 92%)}
.production-machine{background:#02050a}
.machine{max-width:var(--max);margin:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line)}
.machine>div{padding:34px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:310px}
.machine>div:last-child{border-right:0}
.machine span{font-size:10px;color:var(--orange);font-weight:900}
.machine b{display:block;font-family:var(--display);font-size:clamp(32px,3vw,52px);letter-spacing:-.05em;margin:60px 0 15px}
.machine p{font-size:13px;color:var(--muted)}

/* ---------------- SCHOOLS ---------------- */
.school-origin{background:#071321;display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center}
.school-origin-copy h2{font-size:clamp(58px,7vw,106px)}
.school-origin-copy p{color:var(--muted);max-width:620px}
.school-origin-image{min-height:600px;position:relative}
.school-origin-image::before{content:"";position:absolute;width:82%;height:78%;left:7%;top:8%;border:1px dashed rgba(248,154,50,.4);border-radius:50%;transform:rotate(-9deg)}
.school-origin-image img{position:absolute;width:65%;height:72%;object-fit:cover;right:7%;top:10%;transform:rotate(4deg);clip-path:polygon(7% 0,100% 6%,93% 100%,0 92%);box-shadow:0 30px 90px #000}
.shows{background:#03070d}
.show-grid{max-width:var(--max);margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.show-card{border:1px solid var(--line);background:#071321;overflow:hidden}
.show-card-art{height:420px;overflow:hidden}
.show-card-art img{width:100%;height:100%;object-fit:cover}
.brave .show-card-art img{object-position:23% center}
.chains .show-card-art img{object-position:78% center}
.bears .show-card-art img{object-position:center 15%}
.show-card-copy{padding:28px}
.show-card-copy h3{font-size:clamp(35px,3.5vw,58px);margin:12px 0 16px}
.show-card-copy p{color:var(--muted);font-size:13px}
.school-custom{background:#08192d;display:grid;grid-template-columns:1.1fr .9fr;gap:6vw;align-items:center}
.school-custom-copy h2{font-size:clamp(58px,7vw,108px)}
.school-custom-copy>p{color:var(--muted);max-width:650px}
.clean-list{list-style:none;padding:0;margin:28px 0 0;border-top:1px solid var(--line)}
.clean-list li{padding:12px 0;border-bottom:1px solid var(--line);color:#b2c2d1;font-size:13px}
.clean-list li::before{content:"✦";color:var(--orange);margin-right:10px}
.school-custom-panel{border:1px solid var(--line2);background:#03070d;padding:42px;transform:rotate(2deg);box-shadow:0 35px 100px rgba(0,0,0,.3)}
.school-custom-panel>span{font-size:9px;letter-spacing:.16em;color:var(--orange);font-weight:900}
.school-custom-panel h3{font-size:clamp(42px,5vw,78px);margin:20px 0}
.school-custom-panel p{color:var(--muted)}
.school-uses{background:#02050a}

/* ---------------- CHARACTERS ---------------- */
.character-hero{min-height:940px;background:#02050a;position:relative;display:flex;align-items:center;padding:140px var(--pad) 100px;overflow:hidden}
.character-hero::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 60% 38%,rgba(25,76,129,.32),transparent 35%),linear-gradient(90deg,#02050a 0%,rgba(2,5,10,.92) 36%,rgba(2,5,10,.28) 75%,#02050a 100%)}
.character-hero-copy{position:relative;z-index:6;width:min(760px,57vw)}
.character-hero h1{font-size:clamp(78px,10vw,165px)}
.character-hero h1 em{display:block;color:var(--orange)}
.character-hero p{color:#aec0d1;max-width:630px;font-size:17px}
.character-swarm{position:absolute;z-index:2;right:-2%;top:6%;bottom:2%;width:65%}
.character-swarm img{position:absolute;object-fit:cover;border:1px solid var(--line);box-shadow:0 30px 90px #000}
.sw1{width:32%;height:69%;left:0;top:13%;transform:rotate(-6deg);clip-path:polygon(0 6%,94% 0,100% 94%,7% 100%)}
.sw2{width:39%;height:69%;right:2%;top:4%;transform:rotate(5deg);clip-path:polygon(8% 0,100% 6%,94% 100%,0 92%)}
.sw3{width:27%;height:40%;right:28%;bottom:0;transform:rotate(-4deg)}
.sw4{width:27%;height:39%;left:26%;bottom:2%;transform:rotate(4deg)}
.sw5{width:25%;height:31%;left:45%;top:2%;transform:rotate(-1deg)}
.character-browser{background:#061221}
.browser-top{max-width:var(--max);margin:auto 0 45px;display:flex;align-items:end;justify-content:space-between;gap:35px}
.browser-top h2{font-size:clamp(58px,7vw,106px)}
.filters{display:flex;flex-wrap:wrap;gap:7px;justify-content:flex-end}
.filter{border:1px solid rgba(255,255,255,.15);background:transparent;color:#9db0c2;border-radius:999px;padding:10px 12px;font-size:9px;text-transform:uppercase;letter-spacing:.1em;font-weight:900;cursor:pointer}
.filter:hover,.filter.active{background:var(--orange);border-color:var(--orange);color:#07111e}
.character-grid{max-width:var(--max);margin:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.character-card{background:#030911;border:1px solid var(--line);overflow:hidden;transition:.22s}
.character-card.hidden{display:none}
.character-card>img{width:100%;height:320px;object-fit:cover;filter:saturate(.9);transition:.3s}
.character-card>div:last-child{padding:23px}
.character-card span{display:block;color:var(--orange);font-size:8px;letter-spacing:.12em;font-weight:900}
.character-card h3{font-size:clamp(26px,2.4vw,40px);margin:10px 0 11px}
.character-card p{font-size:12px;color:var(--muted);margin:0}
.character-card:hover{border-color:rgba(248,154,50,.35);transform:translateY(-3px)}
.character-card:hover>img{transform:scale(1.03);filter:saturate(1)}
.text-card{min-height:470px;display:flex;flex-direction:column;justify-content:flex-end;background:
  radial-gradient(circle at 50% 25%,rgba(90,162,255,.18),transparent 35%),#030911}
.text-icon{height:220px!important;padding:0!important;display:grid;place-items:center;font-family:var(--display);font-size:clamp(42px,5vw,80px);color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.26)}
.character-note{max-width:var(--max);margin:28px auto 0;color:#71879c;font-size:11px;border-top:1px solid var(--line);padding-top:18px}

/* ---------------- WORK ---------------- */
.work-hero{min-height:850px;background:#02050a;position:relative;display:flex;align-items:center;padding:140px var(--pad) 100px;overflow:hidden}
.work-hero-strip{position:absolute;right:-3%;top:6%;bottom:4%;width:61%;display:grid;grid-template-columns:1fr 1fr;gap:10px;transform:rotate(3deg);opacity:.73}
.work-hero-strip img{width:100%;height:100%;object-fit:cover;min-height:0;border:1px solid var(--line)}
.work-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#02050a 0%,rgba(2,5,10,.94) 43%,rgba(2,5,10,.32) 78%,#02050a 100%)}
.work-hero-copy{position:relative;z-index:5;width:min(760px,60vw)}
.work-hero h1{font-size:clamp(78px,10vw,160px)}
.work-hero h1 em{display:block;color:var(--orange)}
.work-hero p{color:#aabccc;max-width:620px}
.delivered{background:#071321}
.work-cases{max-width:var(--max);margin:auto;display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.work-case{border:1px solid var(--line);background:#030911;overflow:hidden}
.work-case.large{grid-column:1/-1;display:grid;grid-template-columns:1.18fr .82fr;min-height:650px}
.work-case-media{height:350px;overflow:hidden;position:relative}
.work-case-media>img{width:100%;height:100%;object-fit:cover}
.work-case-media.double{height:auto;min-height:650px;display:grid;grid-template-columns:1fr 1fr;gap:8px;background:#02050a;padding:10px}
.work-case-media.double img{height:100%;object-fit:cover}
.work-case-copy{padding:30px}
.work-case.large .work-case-copy{align-self:end;padding:50px}
.work-case-copy h3{font-size:clamp(38px,4.5vw,72px);margin:12px 0 17px}
.work-case-copy p{color:var(--muted);font-size:13px}
.press-stamp{position:absolute;right:16px;top:16px;background:var(--orange);color:#07111e;padding:8px 10px;font-size:9px;letter-spacing:.12em;font-weight:900}
.concept-work{background:#03070d}
.concept-grid{max-width:var(--max);margin:auto;display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.concept-grid article{border:1px solid var(--line);background:#071321;display:grid;grid-template-columns:1fr 1fr;min-height:430px;overflow:hidden}
.concept-grid img{width:100%;height:100%;object-fit:cover;object-position:top}
.concept-grid article>div{padding:30px;align-self:end}
.concept-grid span{font-size:9px;letter-spacing:.13em;color:var(--orange);font-weight:900}
.concept-grid h3{font-size:clamp(34px,3.4vw,54px);margin:12px 0}
.concept-grid p{color:var(--muted);font-size:12px}

/* ---------------- FOOTER ---------------- */
.site-footer{
  background:#010306;border-top:1px solid var(--line);min-height:130px;padding:28px var(--pad);
  display:grid;grid-template-columns:1fr 1fr 1fr;gap:25px;align-items:center;color:#73889c;font-size:9px;letter-spacing:.1em;text-transform:uppercase
}
.footer-brand{display:flex;align-items:center;gap:14px}
.footer-brand img{width:116px;background:#f4efe7;border-radius:11px 11px 11px 3px;padding:8px 10px}
.footer-actions{display:flex;gap:18px;justify-content:flex-end}
.footer-actions a:hover{color:var(--orange)}

/* ---------------- ANIMATION / REVEAL ---------------- */
.reveal{opacity:1;transform:none}
.js .reveal{opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .55s ease}
.js .reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
  *{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}
  .cursor-glow,.spark{display:none!important}
}

/* ---------------- TABLET ---------------- */
@media(max-width:1100px){
  .nav-links{gap:14px}
  .section-head.split{grid-template-columns:1fr}
  .home-hero-copy{width:min(850px,84vw)}
  .route-grid{grid-template-columns:1fr 1fr}
  .definition,.origin-short,.concept-vs-live,.galleria,.school-origin,.school-custom{grid-template-columns:1fr}
  .definition-visual,.origin-images,.galleria-art,.school-origin-image{min-height:560px}
  .feature-case,.case-wide,.work-case.large{grid-template-columns:1fr}
  .feature-media,.case-wide-media{min-height:540px}
  .proof-mini-grid{grid-template-columns:1fr}
  .cast-collage{grid-template-columns:repeat(3,1fr)}
  .c1,.c2,.c3,.c4,.c5{height:340px}
  .outcome-grid{grid-template-columns:1fr 1fr}
  .format-grid,.destination-grid{grid-template-columns:1fr 1fr}
  .case-grid-3{grid-template-columns:1fr 1fr}
  .venue-proof-grid{grid-template-columns:1fr}
  .proposal-grid{grid-template-columns:1fr}
  .character-grid{grid-template-columns:repeat(3,1fr)}
  .show-grid{grid-template-columns:1fr 1fr}
  .work-cases{grid-template-columns:1fr}
  .concept-grid{grid-template-columns:1fr}
  .event-proof-card{grid-template-columns:1fr}
  .event-proof-big{padding-bottom:0}
}

/* ---------------- MOBILE ---------------- */
@media(max-width:780px){
  :root{--pad:20px}
  .section{padding-top:85px;padding-bottom:85px}
  .site-nav{padding:15px 20px}
  .brand{width:135px;height:49px;padding:8px 10px}
  .nav-toggle{display:block;z-index:505}
  .nav-links{
    display:none;position:absolute;left:20px;right:20px;top:75px;background:rgba(2,6,11,.98);border:1px solid var(--line);
    padding:18px;border-radius:17px;flex-direction:column;align-items:stretch;gap:6px;box-shadow:0 35px 90px #000
  }
  .nav-links.open{display:flex}
  .nav-links>a{padding:9px 6px}
  .nav-links .brief-link{text-align:center;margin-top:5px}
  .home-hero{min-height:930px;padding:110px 20px 185px;align-items:flex-end}
  .hero-video{object-position:center}
  .hero-shade{background:linear-gradient(180deg,rgba(2,5,10,.3) 0%,rgba(2,5,10,.55) 34%,rgba(2,5,10,.96) 72%,#050a12 100%)}
  .home-hero-copy{width:100%}
  .home-hero h1{font-size:clamp(52px,15.5vw,82px)}
  .home-hero-copy>p{font-size:14px;max-width:520px}
  .hero-proof{grid-template-columns:1fr 1fr;bottom:35px;left:20px;right:20px}
  .hero-proof>div{padding:9px 10px;border-bottom:1px solid var(--line)}
  .hero-proof>div:nth-child(2){border-right:0}
  .hero-proof>div:nth-child(3),.hero-proof>div:nth-child(4){border-bottom:0}
  .hero-proof strong{font-size:11px}
  .hero-proof span{font-size:8px}
  h2{font-size:clamp(50px,14vw,78px)}
  .route-grid{grid-template-columns:1fr}
  .route{min-height:315px}
  .definition{min-height:auto}
  .definition-visual{min-height:500px;order:2}
  .definition-copy{order:1}
  .definition-copy>p{font-size:14px}
  .world{flex-basis:84vw;height:560px}
  .world:nth-child(even){transform:none}
  .feature-case{min-height:auto}
  .feature-media{min-height:460px}
  .feature-copy h3{font-size:clamp(52px,14vw,78px)}
  .proof-mini{grid-template-columns:115px 1fr}
  .proof-mini span{padding:17px}
  .cast-collage{grid-template-columns:1fr 1fr}
  .c1,.c2,.c3,.c4,.c5{height:300px}
  .c3{grid-column:1/-1;height:390px}
  .origin-images{min-height:470px}
  .origin-puppet{width:54%;height:54%}
  .origin-school{width:66%;height:58%}
  .final-cta{min-height:720px;align-items:flex-end}
  .final-art::after{background:linear-gradient(180deg,rgba(2,5,10,.25) 0%,rgba(2,5,10,.95) 70%,#02050a 100%)}
  .mail-cta{font-size:20px}
  .subhero{min-height:930px;padding:100px 20px 75px;align-items:flex-end}
  .subhero::before{background:linear-gradient(180deg,rgba(2,5,10,.2) 0%,rgba(2,5,10,.76) 48%,#02050a 82%)}
  .subhero-copy{width:100%}
  .subhero h1{font-size:clamp(52px,15vw,82px)}
  .subhero-copy>p{font-size:14px}
  .subhero-media{width:100%;height:55%;top:8%;right:0;bottom:auto}
  .sh-a{width:47%;height:72%;left:-4%;top:8%}
  .sh-b{width:56%;height:59%;right:-3%;top:0}
  .sh-c{width:50%;height:42%;right:18%;bottom:0}
  .outcome-grid,.format-grid,.destination-grid,.case-grid-3,.show-grid{grid-template-columns:1fr}
  .outcome-grid article,.format-grid article,.destination-grid article{min-height:190px}
  .case-wide-media{min-height:460px}
  .case-card>img{height:250px}
  .concept-image{height:600px}
  .concept-image img{width:90%;right:5%}
  .venue-real{grid-template-columns:1fr;min-height:auto}
  .venue-real img{height:330px}
  .proposal-grid img{height:270px}
  .route-steps{grid-template-columns:1fr}
  .route-steps article{border-right:0;border-bottom:1px solid var(--line)}
  .event-proof-big{font-size:clamp(58px,16vw,90px);padding:35px}
  .event-proof-copy{padding:35px}
  .machine{grid-template-columns:1fr}
  .machine>div{border-right:0;min-height:230px}
  .machine b{margin-top:35px}
  .school-origin-image{min-height:480px}
  .show-card-art{height:330px}
  .browser-top{align-items:flex-start;flex-direction:column}
  .filters{justify-content:flex-start}
  .character-hero{min-height:960px;padding:110px 20px 70px;align-items:flex-end}
  .character-hero::after{background:linear-gradient(180deg,rgba(2,5,10,.18),rgba(2,5,10,.55) 48%,#02050a 77%)}
  .character-hero-copy{width:100%}
  .character-hero h1{font-size:clamp(62px,18vw,98px)}
  .character-swarm{width:100%;height:58%;top:5%;right:0;bottom:auto}
  .sw1{width:39%;height:70%;left:-4%}
  .sw2{width:44%;height:70%;right:-5%}
  .sw3{width:34%;height:36%;right:20%}
  .sw4{width:30%;height:33%;left:28%}
  .sw5{width:28%;height:29%;left:42%}
  .character-grid{grid-template-columns:1fr 1fr}
  .character-card>img{height:260px}
  .text-card{min-height:400px}
  .text-icon{height:180px!important;font-size:42px}
  .work-hero{min-height:900px;padding:105px 20px 70px;align-items:flex-end}
  .work-hero-strip{width:100%;height:58%;top:3%;right:-4%;opacity:.55}
  .work-hero::after{background:linear-gradient(180deg,rgba(2,5,10,.2),rgba(2,5,10,.72) 48%,#02050a 80%)}
  .work-hero-copy{width:100%}
  .work-hero h1{font-size:clamp(62px,18vw,100px)}
  .work-case-media{height:290px}
  .work-case-media.double{min-height:470px}
  .concept-grid article{grid-template-columns:1fr}
  .concept-grid img{height:360px}
  .site-footer{grid-template-columns:1fr;gap:20px;text-align:left}
  .footer-actions{justify-content:flex-start;flex-wrap:wrap}
  .cursor-glow{display:none}
}
@media(max-width:520px){
  .character-grid{grid-template-columns:1fr}
  .cast-collage{grid-template-columns:1fr 1fr}
  .route b{font-size:40px}
}

.school-more{max-width:var(--max);margin:28px auto 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:18px 0}
.school-more span{font-size:9px;letter-spacing:.14em;color:var(--orange);font-weight:900;margin-right:8px}
.school-more b{font-size:9px;letter-spacing:.08em;border:1px solid var(--line);border-radius:999px;padding:8px 10px;color:#9eb1c3}

/* ========================================================
   V7.3 — USER UPLOADS ONLY
   ======================================================== */
.hero-real-media{position:absolute;inset:0;overflow:hidden;background:#050a12}
.hero-real-slide{position:absolute;inset:-2%;opacity:0;animation:v73Hero 25s infinite;transform:scale(1.06)}
.hero-real-slide img{width:100%;height:100%;object-fit:cover;object-position:center}
.hero-real-slide:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,8,15,.90),rgba(3,8,15,.52) 47%,rgba(3,8,15,.18)),linear-gradient(0deg,rgba(3,8,15,.6),transparent 58%)}
.hr1{animation-delay:0s}.hr2{animation-delay:5s}.hr3{animation-delay:10s}.hr4{animation-delay:15s}.hr5{animation-delay:20s}
@keyframes v73Hero{0%{opacity:0;transform:scale(1.08)}5%,18%{opacity:1}25%,100%{opacity:0;transform:scale(1)}}

/* REAL PHOTO STRIP */
.real-proof-strip{padding:75px 0;background:#071321;color:#fff;overflow:hidden}
.real-proof-head{padding:0 max(5vw,24px);display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:end;margin-bottom:32px}
.real-proof-head h2{font-size:clamp(3rem,6vw,6.5rem);line-height:.84;margin:0;color:#fff}
.real-proof-head p{max-width:520px;color:#b5c2d2}
.real-proof-rail{display:flex;gap:12px;overflow-x:auto;padding:0 max(5vw,24px) 20px;scroll-snap-type:x mandatory}
.real-proof-rail figure{position:relative;flex:0 0 min(31vw,420px);height:430px;margin:0;background:#111;overflow:hidden;scroll-snap-align:start}
.real-proof-rail img{width:100%;height:100%;object-fit:cover}
.real-proof-rail figcaption{position:absolute;left:12px;bottom:12px;background:#071321;color:#fff;padding:8px 10px;font-size:.68rem;font-weight:900;letter-spacing:.1em}

/* Balloon interaction */
.balloon-lab{position:relative;display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(38px,6vw,88px);align-items:center;padding:clamp(64px,8vw,110px) max(5vw,24px);background:#f39a32;color:#06111d;overflow:hidden}
.balloon-lab:after{content:"";position:absolute;width:550px;height:200px;border:2px solid rgba(6,17,29,.18);border-radius:50%;right:-140px;top:-80px;transform:rotate(-8deg)}
.balloon-copy,.balloon-stage{position:relative;z-index:2}.balloon-copy .kicker{color:#5b3710}.balloon-copy h2{margin:.3rem 0 1.1rem;font-size:clamp(3rem,6vw,6.8rem);line-height:.85;letter-spacing:-.07em;color:#06111d}.balloon-copy h2 em{font-family:Georgia,serif;font-weight:400;color:white}.balloon-copy p{max-width:620px;color:#482c0c;font-size:1.08rem}
.balloon-input-row{display:flex;margin-top:28px;border:2px solid #06111d;background:white;box-shadow:10px 10px 0 #06111d}.balloon-input-row input{flex:1;min-width:0;border:0;background:white;color:#06111d;padding:17px 18px;font-weight:750;outline:0}.balloon-input-row button{border:0;background:#06111d;color:#fff;padding:0 22px;font-weight:900;cursor:pointer}
.balloon-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:17px}.balloon-chips button{border:1px solid rgba(6,17,29,.38);background:transparent;color:#06111d;border-radius:999px;padding:8px 12px;font-size:.72rem;font-weight:900;cursor:pointer}.balloon-chips button:hover{background:#06111d;color:#fff}.balloon-comment{min-height:28px;margin-top:16px;font-family:Georgia,serif;font-style:italic;color:#5b3710}
.balloon-stage{min-height:clamp(360px,44vw,600px);display:grid;place-items:center;background:#071321;border-radius:8px;overflow:hidden;box-shadow:22px 25px 0 rgba(6,17,29,.18)}.balloon-stage:before{content:"BALLOON DEPARTMENT";position:absolute;top:20px;left:22px;color:#f39a32;font-size:.68rem;font-weight:900;letter-spacing:.14em}.balloon-svg{width:min(88%,730px);height:auto;position:relative;z-index:2}.balloon-svg text{fill:#99aec2;font:900 16px system-ui;letter-spacing:.14em}.balloon-svg.made{animation:v73Balloon .45s cubic-bezier(.2,.9,.3,1)}.balloon-piece{filter:drop-shadow(0 10px 8px rgba(0,0,0,.25));animation:v73Draw .62s ease both}
@keyframes v73Balloon{from{opacity:0;transform:scale(.7) rotate(-7deg)}to{opacity:1;transform:none}}@keyframes v73Draw{from{stroke-dasharray:900;stroke-dashoffset:900}to{stroke-dasharray:900;stroke-dashoffset:0}}

/* Never crop the user's poster artwork. */
.poster-whole{object-fit:contain!important;background:#f5f2eb!important}

/* Uploaded content imagery should fill photographic cards, but old proposal crops are gone. */
.world img,.proof-mini img,.cast-shot img,.work-case-media img,.case-card img{object-fit:cover}

/* Origin posters are archival pieces, not fake live photography */
.origin-images .poster-whole{object-fit:contain!important;background:#111}

@media(max-width:900px){.balloon-lab{grid-template-columns:1fr}.real-proof-head{grid-template-columns:1fr}.real-proof-rail figure{flex-basis:70vw}.balloon-stage{min-height:420px}}
@media(max-width:620px){.balloon-input-row{flex-direction:column}.balloon-input-row button{padding:15px}.real-proof-rail figure{height:330px}.hero-real-slide img{object-position:55% center}}
@media(prefers-reduced-motion:reduce){.hero-real-slide{animation:none}.hero-real-slide.hr1{opacity:1}.balloon-svg.made,.balloon-piece{animation:none}}
