@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Space+Grotesk:wght@500;600;700&display=swap');

:root{
  --bg:#030507;
  --bg2:#071012;
  --ink:#fbfff7;
  --muted:rgba(246,252,246,.72);
  --soft:rgba(246,252,246,.54);
  --line:rgba(218,255,232,.14);
  --line2:rgba(137,255,112,.28);
  --lime:#9CFF4A;
  --cyan:#26D7FF;
  --blue:#3268FF;
  --violet:#8B62FF;
  --gold:#D7A84C;
  --panel:rgba(5,9,11,.68);
  --panel2:rgba(255,255,255,.055);
  --shadow:0 34px 120px rgba(0,0,0,.56);
  --radius:30px;
  --max:1420px;
  --header:86px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg)}
body{
  margin:0;
  color:var(--ink);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  background:
    radial-gradient(circle at 72% -10%,rgba(38,215,255,.16),transparent 32rem),
    radial-gradient(circle at 2% 16%,rgba(156,255,74,.13),transparent 30rem),
    radial-gradient(circle at 90% 62%,rgba(139,98,255,.11),transparent 34rem),
    #030507;
  line-height:1.5;
  overflow-x:hidden;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}
body::before{
  content:"";
  position:fixed;inset:0;z-index:-3;pointer-events:none;
  background-image:linear-gradient(rgba(156,255,74,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(38,215,255,.03) 1px,transparent 1px);
  background-size:78px 78px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.9),rgba(0,0,0,.12));
}
body::after{
  content:"";
  position:fixed;inset:0;z-index:-2;pointer-events:none;opacity:.16;
  background:url('../img/cinematic-v4/premium-texture.webp') center/cover no-repeat;
  mix-blend-mode:screen;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,textarea,select{font:inherit;color:inherit}
::selection{background:rgba(156,255,74,.32);color:#fff}
.kw-shell{position:relative;min-height:100svh;overflow:clip}
.noise{position:fixed;inset:0;z-index:900;pointer-events:none;opacity:.055;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 220 220' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.72' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='220' height='220' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E");mix-blend-mode:screen}
.scroll-progress{position:fixed;left:0;top:0;width:100%;height:4px;z-index:2200;background:rgba(255,255,255,.07)}
.scroll-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--lime),var(--cyan),var(--violet));box-shadow:0 0 34px rgba(38,215,255,.62)}
.cursor{position:fixed;left:0;top:0;width:18px;height:18px;border-radius:50%;border:1px solid rgba(156,255,74,.85);z-index:2300;pointer-events:none;opacity:0;transition:opacity .2s ease,width .2s ease,height .2s ease,background .2s ease,border-color .2s ease}.cursor.is-active{opacity:1}.cursor.is-hovering{width:56px;height:56px;background:rgba(38,215,255,.09);border-color:rgba(38,215,255,.75)}

.site-header{
  position:fixed;left:50%;top:16px;transform:translateX(-50%);
  width:min(calc(100% - 32px),var(--max));height:70px;z-index:1800;
  display:flex;align-items:center;justify-content:space-between;gap:18px;
  padding:10px 12px 10px 18px;border:1px solid rgba(156,255,74,.17);
  border-radius:999px;background:rgba(3,5,7,.46);backdrop-filter:blur(20px);
  box-shadow:0 18px 60px rgba(0,0,0,.25), inset 0 0 0 1px rgba(38,215,255,.04);
  transition:background .25s ease,border-color .25s ease,top .25s ease,box-shadow .25s ease;
}
.site-header.is-scrolled{top:10px;background:rgba(3,5,7,.84);border-color:rgba(38,215,255,.24);box-shadow:0 18px 70px rgba(0,0,0,.42)}
.brand{display:flex;align-items:center;gap:12px;min-width:0}
.brand img{width:clamp(166px,16vw,226px);height:auto}
.nav{display:flex;align-items:center;gap:6px;padding:5px;border:1px solid rgba(255,255,255,.07);border-radius:999px;background:rgba(255,255,255,.043)}
.nav a{padding:10px 15px;border-radius:999px;color:rgba(255,255,255,.74);font-size:14px;font-weight:760;letter-spacing:.01em;transition:.2s ease}
.nav a:hover,.nav a.is-active{background:linear-gradient(135deg,rgba(156,255,74,.14),rgba(38,215,255,.12));color:#fff}
.header-actions{display:flex;align-items:center;gap:10px}

.menu-btn{display:none;width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);cursor:pointer;position:relative}
.menu-btn span{position:absolute;left:13px;right:13px;height:2px;border-radius:99px;background:#fff;transition:.25s ease}.menu-btn span:first-child{top:17px}.menu-btn span:last-child{top:27px}
.nav-open .menu-btn span:first-child,.menu-btn.is-close span:first-child{top:22px;transform:rotate(45deg)}.nav-open .menu-btn span:last-child,.menu-btn.is-close span:last-child{top:22px;transform:rotate(-45deg)}

.btn{--shine:rgba(255,255,255,.2);position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:14px 22px;border-radius:999px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.07);color:#fff;font-weight:860;font-size:14px;letter-spacing:.01em;overflow:hidden;box-shadow:0 16px 48px rgba(0,0,0,.28);transition:transform .18s ease,border-color .25s ease,background .25s ease,color .25s ease}
.btn::after{content:"";position:absolute;inset:1px;border-radius:inherit;background:linear-gradient(110deg,transparent,var(--shine),transparent);transform:translateX(-120%);transition:transform .55s ease}.btn:hover::after{transform:translateX(120%)}.btn:hover{border-color:rgba(38,215,255,.45)}
.btn--primary{background:linear-gradient(135deg,var(--lime),var(--cyan) 54%,var(--blue));border-color:rgba(156,255,74,.7);color:#020608;box-shadow:0 20px 80px rgba(38,215,255,.22),0 18px 70px rgba(156,255,74,.12)}
.btn--ghost{background:rgba(255,255,255,.055)}.btn--dark{background:rgba(3,4,5,.72)}

.mobile-panel{position:fixed;inset:0;z-index:1700;display:none;padding:14px;background:rgba(0,0,0,.62);backdrop-filter:blur(18px);opacity:0;pointer-events:none;transition:opacity .25s ease}
.nav-open .mobile-panel{opacity:1;pointer-events:auto}.mobile-panel__inner{min-height:calc(100svh - 28px);padding:18px;border:1px solid rgba(255,255,255,.14);border-radius:28px;background:linear-gradient(180deg,rgba(8,12,14,.96),rgba(3,5,7,.98));box-shadow:var(--shadow);transform:translateY(14px) scale(.985);transition:transform .25s ease}.nav-open .mobile-panel__inner{transform:none}
.mobile-panel__top{display:flex;align-items:center;justify-content:space-between;gap:12px}.mobile-panel__top img{width:190px}.mobile-nav{display:grid;gap:12px;margin-top:28px}.mobile-nav a{display:grid;grid-template-columns:1fr auto;gap:4px;padding:18px;border:1px solid rgba(255,255,255,.12);border-radius:22px;background:rgba(255,255,255,.055)}.mobile-nav span{font-size:20px;font-weight:850}.mobile-nav small{color:var(--muted)}.mobile-nav i{grid-row:1/3;align-self:center;color:var(--lime);font-style:normal}

main{position:relative}
.eyebrow{display:inline-flex;align-items:center;gap:10px;color:rgba(220,255,235,.86);text-transform:uppercase;letter-spacing:.18em;font-size:12px;font-weight:900}
.eyebrow::before{content:"";width:38px;height:1px;background:linear-gradient(90deg,var(--lime),var(--cyan))}
h1,h2,h3,p{margin:0}
p{color:var(--muted)}
.reveal{opacity:0;transform:translateY(26px);transition:opacity .72s ease,transform .72s ease;transition-delay:var(--delay,0ms)}
.reveal.is-visible{opacity:1;transform:none}

/* CINEMATIC HERO */
.hero-cinematic{position:relative;height:285svh;min-height:1750px;background:#030507}
.hero-canvas{position:sticky;top:0;height:100svh;min-height:760px;overflow:hidden;isolation:isolate;background:#030507}
.hero-bg,.hero-glow-layer,.hero-vignette{position:absolute;inset:0;pointer-events:none}
.hero-bg img,.hero-glow-layer img{width:100%;height:100%;object-fit:cover;object-position:var(--pos,center)}
.hero-bg--opening{opacity:var(--open,1);transform:scale(calc(1.02 + var(--p,0) * .08)) translateY(calc(var(--p,0) * -18px));filter:contrast(1.05) saturate(1.06)}
.hero-bg--depth{opacity:var(--depth,0);transform:scale(calc(1.09 + var(--p,0) * .09)) translateY(calc(var(--p,0) * 18px));mix-blend-mode:screen;filter:brightness(.78) contrast(1.1)}
.hero-bg--transition{opacity:var(--transition,0);transform:scale(calc(1.06 + var(--p,0) * .06));filter:brightness(.78) contrast(1.08)}
.hero-bg--stage{opacity:var(--stage,0);transform:scale(calc(1.03 + var(--p,0) * .04));filter:brightness(.62) contrast(1.05)}
.hero-glow-layer{opacity:calc(var(--glow,0) * .45);mix-blend-mode:screen;transform:scale(1.12) translateX(calc(var(--p,0) * -22px));filter:blur(1px)}
.hero-vignette{z-index:4;background:
  radial-gradient(circle at 74% 50%,rgba(38,215,255,.16),transparent 28rem),
  radial-gradient(circle at 28% 78%,rgba(156,255,74,.12),transparent 24rem),
  linear-gradient(90deg,rgba(3,5,7,.92) 0%,rgba(3,5,7,.64) 34%,rgba(3,5,7,.18) 58%,rgba(3,5,7,.72) 100%),
  linear-gradient(180deg,rgba(3,5,7,.6),transparent 22%,transparent 68%,rgba(3,5,7,.88));
}
.hero-content{
  position:relative;z-index:8;width:min(calc(100% - 48px),var(--max));height:100%;margin:0 auto;
  display:grid;grid-template-columns:minmax(0,.94fr) minmax(460px,.9fr);gap:clamp(32px,5vw,80px);
  align-items:center;padding:118px 0 68px;
}
.hero-intro-copy{max-width:780px;transform:translateY(calc(var(--copy-exit,0) * -34px)) scale(calc(1 - var(--copy-exit,0) * .035));opacity:calc(1 - var(--copy-exit,0) * .32)}
.hero-intro-copy h1{
  margin-top:16px;font-size:clamp(3rem,6.8vw,6.95rem);line-height:.91;letter-spacing:-.075em;
  max-width:890px;text-wrap:balance;
}
.hero-intro-copy p{margin-top:24px;max-width:720px;font-size:clamp(1.05rem,1.45vw,1.42rem);line-height:1.68;color:rgba(250,255,250,.82)}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}
.meta-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.meta-row span{padding:10px 14px;border:1px solid rgba(255,255,255,.13);border-radius:999px;background:rgba(255,255,255,.06);color:rgba(255,255,255,.85);font-size:13px;font-weight:850;box-shadow:inset 0 0 18px rgba(156,255,74,.035)}
.hero-project-cloud{position:relative;min-height:560px;opacity:var(--screens,0);transform:translateY(calc((1 - var(--screens,0)) * 62px)) scale(calc(.93 + var(--screens,0) * .07));transition:opacity .12s linear;perspective:1200px}
.float-card{position:absolute;border:1px solid rgba(255,255,255,.16);border-radius:24px;background:rgba(4,7,9,.62);box-shadow:0 34px 100px rgba(0,0,0,.52);overflow:hidden;backdrop-filter:blur(12px)}
.float-card img{width:100%;height:100%;object-fit:cover}
.float-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.12),transparent 30%,rgba(0,0,0,.32));pointer-events:none}
.float-card--large{right:4%;top:8%;width:min(510px,43vw);height:300px;transform:rotateY(-9deg) rotateZ(-2deg) translate3d(calc((1 - var(--screens,0))*92px),calc((1 - var(--screens,0))*-18px),0)}
.float-card--mid{left:1%;bottom:9%;width:360px;height:210px;transform:rotateY(8deg) rotateZ(2.2deg) translate3d(calc((1 - var(--screens,0))*-88px),calc((1 - var(--screens,0))*42px),0)}
.float-card--phone{right:0;bottom:4%;width:142px;height:304px;border-radius:28px;transform:rotateY(-14deg) rotateZ(5deg) translate3d(calc((1 - var(--screens,0))*60px),calc((1 - var(--screens,0))*80px),0)}
.float-card--social{left:18%;top:0;width:178px;height:304px;border-radius:28px;transform:rotateY(12deg) rotateZ(-4deg) translate3d(calc((1 - var(--screens,0))*-40px),calc((1 - var(--screens,0))*-54px),0)}
.hero-director{position:absolute;right:0;bottom:0;width:min(450px,38vw);padding:22px;border:1px solid rgba(156,255,74,.18);border-radius:28px;background:rgba(4,7,9,.7);backdrop-filter:blur(16px);box-shadow:var(--shadow);opacity:var(--director,0);transform:translateY(calc((1 - var(--director,0))*34px))}
.hero-director-top{display:flex;justify-content:space-between;gap:16px;font-size:12px;color:var(--muted);font-weight:800}.hero-director strong{color:#fff}
.director-meter{height:6px;border-radius:999px;background:rgba(255,255,255,.1);overflow:hidden;margin:20px 0}.director-meter span{display:block;height:100%;width:calc(var(--p,0) * 100%);background:linear-gradient(90deg,var(--lime),var(--cyan),var(--violet))}
.hero-director ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}.hero-director li{display:grid;grid-template-columns:34px 1fr;align-items:center;gap:10px;color:rgba(255,255,255,.82);font-size:13px}.hero-director b{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,var(--lime),var(--cyan));color:#020608;font-size:12px}
.hero-bottom{position:absolute;z-index:9;left:50%;bottom:22px;transform:translateX(-50%);width:min(calc(100% - 48px),var(--max));display:flex;justify-content:space-between;align-items:flex-end;pointer-events:none}
.pin-note{display:inline-flex;align-items:center;gap:10px;color:rgba(255,255,255,.62);font-size:12px;letter-spacing:.12em;text-transform:uppercase}.pin-note b{color:var(--lime)}
.scroll-cue{pointer-events:auto;display:inline-flex;align-items:center;gap:12px;letter-spacing:.17em;text-transform:uppercase;font-size:11px;font-weight:900;color:#fff}.scroll-cue span{width:34px;height:56px;border:1px solid rgba(255,255,255,.25);border-radius:999px;position:relative}.scroll-cue span::after{content:"";position:absolute;left:50%;top:10px;width:4px;height:8px;border-radius:99px;background:var(--lime);transform:translateX(-50%);animation:wheel 1.65s infinite}
@keyframes wheel{0%{opacity:0;transform:translate(-50%,0)}35%{opacity:1}100%{opacity:0;transform:translate(-50%,24px)}}

/* Generic sections */
.section,.project-proof,.cinema-story,.case-theatre,.service-reel,.cta-cinema,.contact-section{position:relative;width:min(calc(100% - 48px),var(--max));margin:0 auto;padding:clamp(82px,10vw,150px) 0}
.section--tight{padding-top:60px}.section--texture{width:100%;padding-inline:max(24px,calc((100% - var(--max))/2));background:linear-gradient(180deg,rgba(3,5,7,.1),rgba(6,11,13,.62),rgba(3,5,7,.12))}
.section-head,.proof-head{display:flex;align-items:end;justify-content:space-between;gap:34px;margin-bottom:42px}.section-head h2,.proof-head h2,.stack-copy h2,.case-copy h2,.horizontal-head h2,.cta-cinema h2{margin-top:12px;font-size:clamp(2.4rem,5.5vw,5.8rem);line-height:.95;letter-spacing:-.06em;text-wrap:balance}.section-head p,.proof-head p{max-width:610px;font-size:1.05rem;line-height:1.75}

/* Project showcase */
.project-proof{padding-top:110px}
.proof-grid{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(340px,.68fr);gap:22px;align-items:center}
.proof-card{position:relative;min-height:320px;border:1px solid rgba(255,255,255,.13);border-radius:30px;overflow:hidden;background:#080b0d;box-shadow:0 28px 90px rgba(0,0,0,.36);isolation:isolate}
.proof-card img{width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform .9s cubic-bezier(.18,.72,.18,1),filter .9s ease;filter:saturate(.95) contrast(1.02)}
.proof-card:hover img{transform:scale(1.035);filter:saturate(1.06) contrast(1.08)}
.proof-card--tall{min-height:640px}.proof-card--small{min-height:309px}
.proof-column{display:grid;gap:22px;align-self:center;justify-items:center}
.proof-card__label{position:absolute;left:18px;right:18px;bottom:18px;z-index:2;display:flex;align-items:flex-end;justify-content:space-between;gap:14px;padding:18px;border:1px solid rgba(255,255,255,.13);border-radius:22px;background:rgba(3,5,7,.76);backdrop-filter:blur(14px);box-shadow:0 22px 70px rgba(0,0,0,.38)}
.proof-card::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 44%,rgba(0,0,0,.78));z-index:1;pointer-events:none}
.proof-card small{color:var(--lime);text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:900}.proof-card h3{font-size:clamp(1.2rem,2vw,1.8rem);line-height:1.05;letter-spacing:-.035em;margin-top:6px}.proof-card__label span{white-space:nowrap;color:rgba(255,255,255,.72);font-size:12px;font-weight:900;border:1px solid rgba(255,255,255,.13);border-radius:999px;padding:8px 10px}
.case-marquee{margin-top:24px;overflow:hidden;border:1px solid rgba(255,255,255,.1);border-radius:28px;background:rgba(255,255,255,.04);padding:14px}.case-marquee__inner{display:flex;gap:14px;animation:marquee 17s linear infinite}.case-thumb{width:240px;height:135px;flex:0 0 auto;border-radius:20px;overflow:hidden;border:1px solid rgba(255,255,255,.12);background:#080b0d}.case-thumb img{width:100%;height:100%;object-fit:cover;object-position:top center}
@keyframes marquee{to{transform:translateX(calc(-50% - 7px))}}

/* Story / pinned */
.cinema-story{width:100%;height:calc(var(--scenes,4) * 100svh);padding:0;margin:0}
.story-sticky{position:sticky;top:0;height:100svh;min-height:760px;overflow:hidden;background:#030507}
.story-media{position:absolute;inset:0}.story-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.08);transition:opacity .35s linear,transform .65s ease;filter:brightness(.55) contrast(1.08)}.story-media img.is-active{opacity:.72;transform:scale(1.02)}
.story-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,5,7,.92),rgba(3,5,7,.62) 42%,rgba(3,5,7,.32)),linear-gradient(180deg,rgba(3,5,7,.55),transparent,rgba(3,5,7,.8))}
.story-layout{position:relative;z-index:2;width:min(calc(100% - 48px),var(--max));height:100%;margin:0 auto;display:grid;grid-template-columns:.82fr 1fr;gap:clamp(34px,5vw,86px);align-items:center;padding:104px 0 80px}
.story-left h2{margin-top:14px;font-size:clamp(2.6rem,5.5vw,5.8rem);line-height:.92;letter-spacing:-.06em}.story-left p{margin-top:20px;max-width:570px;font-size:1.05rem;line-height:1.75}
.story-progress{height:7px;border-radius:999px;background:rgba(255,255,255,.11);overflow:hidden;margin-top:26px}.story-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--lime),var(--cyan),var(--violet))}
.story-stage{position:relative;min-height:430px}.chapter{position:absolute;inset:auto 0 0 0;opacity:0;transform:translateY(30px) scale(.98);transition:.35s ease;padding:28px;border:1px solid rgba(255,255,255,.14);border-radius:30px;background:rgba(5,9,11,.66);backdrop-filter:blur(16px);box-shadow:var(--shadow)}.chapter.is-active{opacity:1;transform:none}.chapter span{color:var(--lime);text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:900}.chapter h3{font-size:clamp(1.8rem,3vw,3.25rem);line-height:1.02;letter-spacing:-.045em;margin-top:12px}.chapter p{margin-top:16px;font-size:1.05rem;line-height:1.72}

/* Horizontal reel */
.service-reel{width:100%;height:340svh;padding:0;margin:0}.horizontal-sticky{position:sticky;top:0;height:100svh;min-height:760px;overflow:hidden;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(180deg,rgba(3,5,7,.95),rgba(5,11,13,.98))}
.horizontal-head{width:min(calc(100% - 48px),var(--max));margin:0 auto 32px;display:flex;align-items:end;justify-content:space-between;gap:24px}.horizontal-head h2{max-width:920px}.horizontal-count{color:var(--lime);text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:900}
.horizontal-viewport{width:100%;overflow:hidden}.horizontal-track{display:flex;gap:22px;width:max-content;padding-left:max(24px,calc((100vw - var(--max))/2));padding-right:24px;transform:translateX(var(--x,0));will-change:transform}.feature-frame{width:min(76vw,780px);height:min(62vh,560px);min-height:440px;position:relative;border:1px solid rgba(255,255,255,.13);border-radius:32px;overflow:hidden;background:#080b0d;box-shadow:0 32px 100px rgba(0,0,0,.42);isolation:isolate}.feature-frame img{width:100%;height:100%;object-fit:cover;object-position:top center;filter:brightness(.76) contrast(1.05)}.feature-frame::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.82));z-index:1}.feature-frame__copy{position:absolute;left:22px;right:22px;bottom:22px;z-index:2;padding:22px;border:1px solid rgba(255,255,255,.13);border-radius:24px;background:rgba(3,5,7,.7);backdrop-filter:blur(16px)}.feature-frame__copy span{color:var(--lime);font-weight:900;text-transform:uppercase;letter-spacing:.12em;font-size:12px}.feature-frame__copy h3{margin-top:8px;font-size:clamp(1.5rem,3vw,3.2rem);line-height:1.02;letter-spacing:-.045em}.feature-frame__copy p{margin-top:12px;max-width:620px}

/* Stack/process */
.stack-section{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(30px,6vw,90px);align-items:start}.stack-copy{position:sticky;top:120px}.stack-copy p{margin-top:18px;font-size:1.05rem;line-height:1.75}.stack-cards{display:grid;gap:18px}.process-card,.glass-card{border:1px solid rgba(255,255,255,.13);border-radius:28px;padding:26px;background:linear-gradient(135deg,rgba(255,255,255,.075),rgba(255,255,255,.035));box-shadow:0 20px 70px rgba(0,0,0,.24);backdrop-filter:blur(14px)}.process-card{min-height:230px}.process-card span,.glass-card span{color:var(--lime);font-size:12px;text-transform:uppercase;letter-spacing:.14em;font-weight:900}.process-card h3,.glass-card h3{margin-top:12px;font-size:clamp(1.45rem,2.6vw,2.7rem);line-height:1.05;letter-spacing:-.045em}.process-card p,.glass-card p{margin-top:14px;line-height:1.7}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}

/* CTA */
.cta-cinema{min-height:560px;border:1px solid rgba(255,255,255,.14);border-radius:38px;overflow:hidden;box-shadow:var(--shadow);isolation:isolate;padding:0;margin-bottom:90px;background:#030507}.cta-cinema>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.64) contrast(1.08);transform:scale(1.04)}.cta-cinema::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,5,7,.92),rgba(3,5,7,.62) 48%,rgba(3,5,7,.18)),linear-gradient(180deg,transparent,rgba(3,5,7,.72))}.cta-cinema__copy{position:relative;z-index:1;padding:clamp(34px,6vw,76px);max-width:760px}.cta-cinema h2{margin-top:14px}.cta-cinema p{margin-top:20px;font-size:1.08rem;line-height:1.76;max-width:640px}.cta-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}

/* Case theatre */
.case-theatre{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(30px,5vw,76px);align-items:center}.case-copy{position:sticky;top:120px}.case-copy p{margin-top:18px;line-height:1.75;font-size:1.05rem}.case-bento{display:grid;grid-template-columns:1fr 1fr;gap:18px}.case-tile{position:relative;min-height:300px;border:1px solid rgba(255,255,255,.13);border-radius:30px;overflow:hidden;background:#080b0d;box-shadow:0 25px 80px rgba(0,0,0,.28)}.case-tile--wide{grid-column:span 2;min-height:390px}.case-tile--phone{min-height:560px}.case-tile img{width:100%;height:100%;object-fit:cover;object-position:top center}.case-tile::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(0,0,0,.78))}.case-tile__meta{position:absolute;left:16px;right:16px;bottom:16px;z-index:1;padding:16px;border-radius:20px;background:rgba(3,5,7,.72);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.12)}.case-tile__meta small{color:var(--lime);font-weight:900;text-transform:uppercase;letter-spacing:.12em}.case-tile__meta h3{margin-top:6px;font-size:clamp(1.1rem,2vw,1.7rem);line-height:1.07;letter-spacing:-.035em}

/* Forms */
.contact-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:40px}.contact-panel,.form-panel{border:1px solid rgba(255,255,255,.13);border-radius:32px;background:rgba(255,255,255,.055);padding:28px;backdrop-filter:blur(14px);box-shadow:0 24px 80px rgba(0,0,0,.28)}
.contact-panel h2,.form-panel h2{font-size:clamp(2rem,4vw,4rem);line-height:.98;letter-spacing:-.06em}.contact-panel p{margin-top:18px;line-height:1.75}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:grid;gap:8px}.field--full{grid-column:1/-1}.field label,.checkbox-row{color:rgba(255,255,255,.78);font-weight:800;font-size:13px}.field input,.field select,.field textarea{width:100%;border:1px solid rgba(255,255,255,.14);border-radius:18px;background:rgba(3,5,7,.68);padding:15px 16px;outline:none}.field textarea{min-height:150px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:rgba(38,215,255,.45);box-shadow:0 0 0 4px rgba(38,215,255,.08)}.checkbox-row{display:flex;gap:10px;margin-top:18px}.checkbox-row input{accent-color:var(--lime)}

.footer{width:min(calc(100% - 48px),var(--max));margin:0 auto;padding:48px 0 34px;border-top:1px solid rgba(255,255,255,.12)}.footer__grid{display:flex;justify-content:space-between;gap:30px}.footer img{width:210px}.footer p{max-width:520px;margin-top:14px}.footer__links{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}.footer__links a{padding:10px 14px;border:1px solid rgba(255,255,255,.11);border-radius:999px;color:rgba(255,255,255,.78)}.footer__bottom{display:flex;justify-content:space-between;gap:20px;margin-top:34px;color:rgba(255,255,255,.46);font-size:13px}

.legal-content{width:min(calc(100% - 48px),960px);margin:0 auto;padding:150px 0 90px}.legal-content h1{font-size:clamp(2.5rem,6vw,5.8rem);line-height:.95;letter-spacing:-.06em}.legal-content h2{margin-top:34px;font-size:1.6rem}.legal-content p{margin-top:12px;line-height:1.75}

@media (max-width:1180px){
  .nav{display:none}.menu-btn{display:block}.mobile-panel{display:block}.site-header{height:68px}
  .hero-content{grid-template-columns:1fr;align-items:end;gap:20px;padding-top:112px;padding-bottom:76px}
  .hero-project-cloud{min-height:320px;max-width:720px;justify-self:end;width:100%;opacity:calc(var(--screens,0) * .9)}
  .float-card--large{width:420px;height:240px}.float-card--mid{width:320px;height:190px}.float-card--social{left:8%}.hero-director{display:none}.hero-intro-copy h1{font-size:clamp(3.1rem,9vw,6.2rem)}
  .section-head,.proof-head,.horizontal-head{align-items:start;flex-direction:column}.proof-grid,.stack-section,.case-theatre,.contact-section{grid-template-columns:1fr}.stack-copy,.case-copy{position:relative;top:auto}.grid-3{grid-template-columns:1fr}
}
@media (max-width:780px){
  body::before{background-size:46px 46px}
  .site-header{top:10px;width:calc(100% - 20px);height:64px;padding-left:12px}.brand img{width:172px}.header-actions .btn{display:none}
  .hero-cinematic{height:auto;min-height:100svh}.hero-canvas{position:relative;height:auto;min-height:100svh;overflow:hidden}.hero-bg--depth,.hero-bg--transition,.hero-bg--stage,.hero-glow-layer{display:none}.hero-vignette{background:linear-gradient(180deg,rgba(3,5,7,.68),rgba(3,5,7,.78) 30%,rgba(3,5,7,.94))}
  .hero-content{width:min(calc(100% - 28px),var(--max));display:block;padding:106px 0 74px;min-height:100svh}.hero-intro-copy h1{font-size:clamp(3.1rem,15vw,5.2rem);line-height:.88;letter-spacing:-.07em}.hero-intro-copy p{font-size:1rem;line-height:1.62}.hero-actions{flex-direction:column}.btn{width:100%}.meta-row span{font-size:12px;padding:9px 12px}
  .hero-project-cloud{display:grid;grid-template-columns:1fr 1fr;gap:12px;min-height:auto;opacity:1;transform:none;margin-top:28px}.float-card{position:relative!important;inset:auto!important;width:100%!important;height:170px!important;transform:none!important;border-radius:20px}.float-card--phone,.float-card--social{height:280px!important}.hero-bottom{display:none}
  .section,.project-proof,.case-theatre,.contact-section{width:min(calc(100% - 28px),var(--max));padding:70px 0}.section-head h2,.proof-head h2,.story-left h2,.stack-copy h2,.case-copy h2,.horizontal-head h2,.cta-cinema h2{font-size:clamp(2.3rem,12vw,4.2rem)}
  .proof-grid{grid-template-columns:1fr}.proof-card--tall,.proof-card--small{min-height:360px}.proof-column{gap:16px}
  .cinema-story{height:auto;width:100%;padding:70px 0}.story-sticky{position:relative;height:auto;min-height:0;padding:0}.story-media{position:absolute;inset:0}.story-media img{opacity:.42!important}.story-layout{width:min(calc(100% - 28px),var(--max));display:block;height:auto;min-height:0;padding:40px 0}.story-stage{min-height:auto;margin-top:24px;display:grid;gap:14px}.chapter{position:relative;opacity:1;transform:none}
  .service-reel{height:auto;padding:70px 0}.horizontal-sticky{position:relative;height:auto;min-height:0;display:block;padding:0;background:transparent}.horizontal-head{width:min(calc(100% - 28px),var(--max))}.horizontal-viewport{overflow:visible;width:min(calc(100% - 28px),var(--max));margin:0 auto}.horizontal-track{display:grid;transform:none!important;padding:0;width:100%;gap:16px}.feature-frame{width:100%;height:480px;min-height:0}.feature-frame__copy{left:14px;right:14px;bottom:14px;padding:16px}.feature-frame__copy h3{font-size:1.7rem}
  .case-bento{grid-template-columns:1fr}.case-tile--wide{grid-column:auto}.case-tile,.case-tile--wide{min-height:360px}.case-tile--phone{min-height:520px}
  .cta-cinema{width:min(calc(100% - 28px),var(--max));min-height:620px;border-radius:28px}.cta-cinema__copy{padding:28px}
  .form-grid{grid-template-columns:1fr}.footer{width:min(calc(100% - 28px),var(--max))}.footer__grid,.footer__bottom{flex-direction:column}.footer__links{justify-content:flex-start}
}
@media (max-height:760px) and (min-width:781px){
  .hero-canvas,.story-sticky,.horizontal-sticky{min-height:640px}.hero-intro-copy h1{font-size:clamp(3rem,5.7vw,5.4rem)}.hero-intro-copy p{font-size:1.03rem;line-height:1.55}.hero-content{padding-top:96px;padding-bottom:52px}.hero-project-cloud{min-height:460px}.float-card--large{height:245px}.hero-director{display:none}
}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .reveal{opacity:1;transform:none}
}

/* Legacy compact hero / legal support */
.hero.hero--compact{position:relative;min-height:640px;display:grid;place-items:center;overflow:hidden;padding:120px 0 70px}
.hero__media{position:absolute;inset:0;z-index:0}.hero__media img{width:100%;height:100%;object-fit:cover;filter:brightness(.46) contrast(1.08)}.hero__media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,5,7,.92),rgba(3,5,7,.65) 45%,rgba(3,5,7,.75))}
.hero__grid{position:relative;z-index:1;width:min(calc(100% - 48px),var(--max));display:grid;grid-template-columns:1fr .8fr;gap:40px;align-items:center}.hero__copy h1{margin-top:14px;font-size:clamp(2.8rem,5.8vw,6rem);line-height:.95;letter-spacing:-.06em}.hero__copy p{margin-top:20px;max-width:670px;font-size:1.08rem;line-height:1.7}.hero__actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}.hero__panel{padding:24px;border:1px solid rgba(255,255,255,.13);border-radius:28px;background:rgba(4,7,9,.68);backdrop-filter:blur(16px);box-shadow:var(--shadow)}.hero__panel-top{display:flex;justify-content:space-between;gap:16px;font-size:12px;color:var(--muted);font-weight:800}.hero__panel strong{color:#fff}.meter{height:6px;border-radius:999px;background:rgba(255,255,255,.1);overflow:hidden;margin:20px 0}.meter span{display:block;height:100%;width:78%;background:linear-gradient(90deg,var(--lime),var(--cyan))}.hero__panel ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}.hero__panel li{display:grid;grid-template-columns:34px 1fr;gap:10px;color:rgba(255,255,255,.82);font-size:13px}.hero__panel b{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,var(--lime),var(--cyan));color:#020608;font-size:12px}
.legal-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:22px}.legal-card{border:1px solid rgba(255,255,255,.13);border-radius:30px;background:rgba(255,255,255,.055);padding:28px;backdrop-filter:blur(14px);box-shadow:0 22px 80px rgba(0,0,0,.28)}.legal-card h2{margin-top:12px;font-size:clamp(1.8rem,3vw,3rem);line-height:1.05;letter-spacing:-.045em}.legal-card h3{margin-top:28px;font-size:1.15rem}.legal-card p{margin-top:12px;line-height:1.75}
@media(max-width:900px){.hero__grid,.legal-grid{grid-template-columns:1fr}.hero__panel{display:none}.hero.hero--compact{min-height:560px;padding-top:110px}.hero__grid{width:min(calc(100% - 28px),var(--max))}}

/* === v4 refinements / client revision === */
/* hide scroll helper buttons/cues in heroes */
.hero-bottom,.scroll-cue,.pin-note{display:none!important}

/* general image polish */
.float-card img,
.proof-card img,
.case-thumb img,
.feature-frame img,
.case-tile img,
.story-media img,
.cta-cinema>img{
  backface-visibility:hidden;
  transform:translateZ(0);
}
img.contain{object-fit:contain!important;object-position:center top!important;background:linear-gradient(180deg,rgba(7,10,12,.98),rgba(10,14,18,.94))}
.feature-frame img.contain,.case-tile img.contain,.float-card img.contain{padding:0}

/* hero cards clarity / scaling */
.float-card img{width:100%;height:100%;object-fit:cover;object-position:top center}
.float-card--large{right:5%;top:7%;width:min(530px,44vw);height:312px;transform:rotateY(-8deg) rotateZ(-1.8deg) translate3d(calc((1 - var(--screens,0))*80px),calc((1 - var(--screens,0))*-18px),0)}
.float-card--mid{left:2%;bottom:8%;width:372px;height:218px;transform:rotateY(7deg) rotateZ(1.8deg) translate3d(calc((1 - var(--screens,0))*-76px),calc((1 - var(--screens,0))*38px),0)}
.float-card--phone{right:1%;bottom:4%;width:158px;height:336px;border-radius:30px;transform:rotateY(-10deg) rotateZ(4deg) translate3d(calc((1 - var(--screens,0))*54px),calc((1 - var(--screens,0))*68px),0)}
.float-card--social{left:15%;top:0;width:196px;height:336px;border-radius:30px;transform:rotateY(10deg) rotateZ(-2.8deg) translate3d(calc((1 - var(--screens,0))*-34px),calc((1 - var(--screens,0))*-42px),0)}
.float-card--phone img.contain,.float-card--social img.contain{object-position:center top!important}

/* make story and CTA backgrounds more visible */
.story-media img{filter:brightness(.74) contrast(1.06) saturate(1.02);opacity:0;transform:scale(1.06);transition:opacity .35s linear,transform .65s ease}
.story-media img.is-active{opacity:.86;transform:scale(1.015)}
.story-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,5,7,.82),rgba(3,5,7,.52) 42%,rgba(3,5,7,.20)),linear-gradient(180deg,rgba(3,5,7,.34),transparent 42%,rgba(3,5,7,.62))}
.cta-cinema>img{filter:brightness(.86) contrast(1.06) saturate(1.03);transform:scale(1.02)}
.cta-cinema::after{background:linear-gradient(90deg,rgba(3,5,7,.88),rgba(3,5,7,.52) 48%,rgba(3,5,7,.16)),linear-gradient(180deg,transparent,rgba(3,5,7,.58))}
.feature-frame img{filter:brightness(.84) contrast(1.04) saturate(1.02)}
.case-tile img{object-position:top center}
.proof-card img{filter:saturate(1) contrast(1.03)}
.case-thumb img{object-position:top center}

/* smoother process-card entrance from right */
.stack-cards.is-animated .process-card.reveal,
.stack-cards.is-animated .process-card.reveal.is-visible,
.stack-cards.is-animated .process-card{opacity:1;transform:none}
.stack-cards .process-card.reveal,
.stack-cards .process-card.reveal.is-visible,
.stack-cards .process-card{opacity:0;transform:translate3d(56px,0,0);transition:opacity .72s cubic-bezier(.22,.7,.18,1),transform .72s cubic-bezier(.22,.7,.18,1)}
.stack-cards.is-animated .process-card:nth-child(1){transition-delay:.04s}
.stack-cards.is-animated .process-card:nth-child(2){transition-delay:.18s}
.stack-cards.is-animated .process-card:nth-child(3){transition-delay:.32s}

/* clearer reel / bento presentation */
.case-marquee{padding:16px}
.case-thumb{width:272px;height:150px}
.feature-frame{background:#070b0d}
.feature-frame__copy,.case-tile__meta,.proof-card__label,.chapter{background:rgba(3,5,7,.78)}
.case-tile--phone img.contain{background:#0b0f13}

/* contact / social / webdesign heroes need calm spacing */
.hero-content{padding-top:122px;padding-bottom:70px}
.hero-intro-copy p{max-width:700px}
.hero-project-cloud{min-height:575px}

@media (max-width:1180px){
  .hero-project-cloud{min-height:360px;max-width:760px}
  .float-card--large{width:430px;height:250px}
  .float-card--mid{width:320px;height:192px}
  .float-card--social{left:6%;width:176px;height:292px}
  .float-card--phone{width:148px;height:292px}
}

@media (max-width:780px){
  img.contain{object-position:center top!important}
  .float-card{border-radius:20px}
  .float-card img.contain,.case-tile img.contain,.feature-frame img.contain{padding:0}
  .story-media img{opacity:.54!important;filter:brightness(.82) contrast(1.04)}
  .story-media::after{background:linear-gradient(180deg,rgba(3,5,7,.74),rgba(3,5,7,.36) 26%,rgba(3,5,7,.78))}
  .cta-cinema>img{filter:brightness(.9) contrast(1.04)}
  .stack-cards .process-card,.stack-cards .process-card.reveal,.stack-cards .process-card.reveal.is-visible{opacity:1;transform:none}
}

/* === v6 mobile perfection === */
@media (max-width:780px){
  :root{--header:64px}
  body{background:
    radial-gradient(circle at 70% 8%,rgba(38,215,255,.12),transparent 18rem),
    radial-gradient(circle at 10% 18%,rgba(156,255,74,.11),transparent 17rem),
    #030507;}
  .noise{opacity:.038}
  .site-header{height:62px;border-radius:24px;top:8px;background:rgba(3,6,8,.76);backdrop-filter:blur(20px);border-color:rgba(156,255,74,.2)}
  .brand img{width:min(168px,50vw)}
  .menu-btn{width:42px;height:42px;flex:0 0 42px}.menu-btn span{left:12px;right:12px}.menu-btn span:first-child{top:15px}.menu-btn span:last-child{top:25px}

  .hero-cinematic{min-height:auto;background:#030507}
  .hero-canvas{min-height:100svh;padding-bottom:0;background:#030507}
  .hero-bg--opening{display:block;opacity:1!important;filter:brightness(.9) contrast(1.04) saturate(1.02)}
  .hero-vignette{background:
    radial-gradient(circle at 65% 36%,rgba(38,215,255,.12),transparent 13rem),
    radial-gradient(circle at 16% 68%,rgba(156,255,74,.10),transparent 14rem),
    linear-gradient(180deg,rgba(3,5,7,.70),rgba(3,5,7,.78) 33%,rgba(3,5,7,.98) 88%)}
  .hero-content{padding:94px 0 42px;min-height:auto;display:flex;flex-direction:column;gap:24px}
  .hero-intro-copy{max-width:none;opacity:1!important;transform:none!important}
  .hero-intro-copy .eyebrow{font-size:10px;letter-spacing:.14em;line-height:1.3}.eyebrow::before{width:28px}
  .hero-intro-copy h1{font-size:clamp(2.65rem,12.8vw,4.35rem);line-height:.92;letter-spacing:-.07em;margin-top:14px;max-width:100%}
  .hero-intro-copy p{font-size:1rem;line-height:1.62;margin-top:18px;max-width:100%;color:rgba(250,255,250,.79)}
  .hero-actions{gap:10px;margin-top:22px}.btn{min-height:51px;border-radius:18px;font-size:14px;padding:14px 18px}.btn--primary{border-radius:18px}
  .meta-row{gap:8px;margin-top:18px}.meta-row span{font-size:11px;line-height:1.1;padding:9px 10px;background:rgba(255,255,255,.055)}

  /* mobile hero project strip: cinematic but controlled */
  .hero-project-cloud{display:flex;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:12px;width:calc(100vw - 14px);margin:8px 0 0;max-width:none;min-height:0;opacity:1!important;transform:none!important;padding:4px 14px 14px 0;perspective:none;mask-image:linear-gradient(90deg,#000 88%,transparent)}
  .hero-project-cloud::-webkit-scrollbar{display:none}
  .float-card{position:relative!important;inset:auto!important;flex:0 0 74vw!important;width:74vw!important;height:47vw!important;max-height:280px!important;min-height:178px!important;border-radius:22px!important;transform:none!important;scroll-snap-align:start;background:rgba(5,9,11,.76);box-shadow:0 22px 64px rgba(0,0,0,.45)}
  .float-card--phone,.float-card--social{flex-basis:43vw!important;width:43vw!important;height:78vw!important;min-height:278px!important;max-height:390px!important;border-radius:26px!important}
  .float-card img{object-fit:cover;object-position:top center}.float-card img.contain{object-fit:contain!important;object-position:top center!important;background:#080c10}
  .float-card::after{background:linear-gradient(180deg,rgba(255,255,255,.1),transparent 35%,rgba(0,0,0,.18))}
  .hero-project-cloud::after{content:'Swipe';position:sticky;right:12px;align-self:flex-end;margin-left:-54px;margin-bottom:8px;padding:7px 9px;border-radius:999px;background:rgba(3,5,7,.72);border:1px solid rgba(156,255,74,.22);color:rgba(255,255,255,.8);font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;backdrop-filter:blur(10px)}

  .section,.project-proof,.case-theatre,.contact-section{width:min(calc(100% - 24px),var(--max));padding:64px 0}.section--texture{padding-inline:12px;padding-top:64px;padding-bottom:64px;background:linear-gradient(180deg,rgba(3,5,7,.18),rgba(7,13,15,.76),rgba(3,5,7,.18))}
  .section-head,.proof-head,.horizontal-head{gap:14px;margin-bottom:26px}.section-head h2,.proof-head h2,.story-left h2,.stack-copy h2,.case-copy h2,.horizontal-head h2,.cta-cinema h2{font-size:clamp(2.25rem,11vw,3.75rem);line-height:.96;letter-spacing:-.065em}.section-head p,.proof-head p,.stack-copy p,.case-copy p{font-size:1rem;line-height:1.65}
  .grid-3{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding:2px 0 10px;margin-inline:-1px}.grid-3::-webkit-scrollbar{display:none}.grid-3 .glass-card{flex:0 0 84%;scroll-snap-align:start;padding:22px;border-radius:24px}

  /* mobile story becomes layered cards with visible background */
  .cinema-story{padding:64px 0;height:auto;background:#030507}.story-sticky{border-radius:0;overflow:visible}.story-media{position:absolute;inset:0;border-radius:28px;overflow:hidden}.story-media img{opacity:.45!important;filter:brightness(.78) contrast(1.04);transform:none!important}.story-media img:not(.is-active){opacity:0!important}.story-layout{position:relative;width:min(calc(100% - 24px),var(--max));padding:28px 0 0}.story-left{padding:26px 20px;border:1px solid rgba(255,255,255,.12);border-radius:28px;background:rgba(3,6,8,.58);backdrop-filter:blur(14px)}.story-progress{height:6px;margin-top:20px}.story-stage{margin-top:14px;gap:12px}.chapter{border-radius:24px;padding:21px;background:rgba(4,8,10,.78);box-shadow:0 16px 50px rgba(0,0,0,.32);backdrop-filter:blur(14px);transform:translateY(18px);opacity:0}.chapter.is-visible,.chapter.is-active{opacity:1;transform:none}.chapter span{font-size:10px}.chapter h3{font-size:clamp(1.55rem,7vw,2.35rem);line-height:1.02}.chapter p{font-size:.96rem;line-height:1.62;margin-top:12px}

  /* proof cards + cases */
  .proof-grid{gap:14px}.proof-column{gap:14px}.proof-card{border-radius:24px;min-height:330px}.proof-card--tall{min-height:440px}.proof-card--small{min-height:310px}.proof-card__label{left:12px;right:12px;bottom:12px;border-radius:20px;padding:14px;display:block}.proof-card__label span{display:inline-flex;margin-top:10px}.proof-card h3{font-size:1.25rem;line-height:1.1}.proof-card small{font-size:10px}
  .case-marquee{border-radius:22px;padding:12px;margin-top:18px}.case-thumb{width:230px;height:130px;border-radius:16px}.case-marquee__inner{animation:marquee 22s linear infinite}
  .case-bento{gap:14px}.case-tile,.case-tile--wide{min-height:315px;border-radius:24px}.case-tile--phone{min-height:500px}.case-tile__meta{left:12px;right:12px;bottom:12px;border-radius:18px;padding:14px}.case-tile__meta h3{font-size:1.35rem}

  /* horizontal sections become real swipe reels */
  .service-reel{height:auto;padding:64px 0}.horizontal-sticky{display:block;background:linear-gradient(180deg,rgba(3,5,7,.72),rgba(3,5,7,.98));padding:0}.horizontal-head{width:min(calc(100% - 24px),var(--max));margin-bottom:20px}.horizontal-count{align-self:flex-start}.horizontal-viewport{width:100%;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding-left:12px;padding-right:12px}.horizontal-viewport::-webkit-scrollbar{display:none}.horizontal-track{display:flex!important;gap:14px;width:max-content!important;padding:0 12px 4px 0!important;transform:none!important}.feature-frame{flex:0 0 82vw!important;width:82vw!important;height:520px;min-height:520px;border-radius:26px;scroll-snap-align:start}.feature-frame img{height:100%;object-fit:cover;object-position:top center;filter:brightness(.86) contrast(1.04)}.feature-frame img.contain{object-fit:contain!important}.feature-frame__copy{left:12px;right:12px;bottom:12px;padding:16px;border-radius:20px}.feature-frame__copy span{font-size:10px}.feature-frame__copy h3{font-size:clamp(1.65rem,8vw,2.45rem);line-height:1.02}.feature-frame__copy p{font-size:.94rem;line-height:1.55}

  /* process cards: clean stagger mobile */
  .stack-section{gap:22px}.stack-copy{position:relative}.stack-cards{gap:13px}.process-card,.glass-card{border-radius:24px;padding:22px}.process-card{min-height:0;opacity:0;transform:translate3d(0,24px,0) scale(.985);transition:opacity .68s cubic-bezier(.2,.72,.2,1),transform .68s cubic-bezier(.2,.72,.2,1)}.stack-cards.is-animated .process-card{opacity:1;transform:none}.process-card h3,.glass-card h3{font-size:clamp(1.45rem,7vw,2.05rem)}.process-card p,.glass-card p{font-size:.96rem;line-height:1.62}

  /* CTA + forms */
  .cta-cinema{width:min(calc(100% - 24px),var(--max));min-height:560px;border-radius:28px;margin-bottom:64px}.cta-cinema::after{background:linear-gradient(180deg,rgba(3,5,7,.42),rgba(3,5,7,.72) 38%,rgba(3,5,7,.95))}.cta-cinema__copy{padding:28px 20px;position:absolute;left:0;right:0;bottom:0}.cta-cinema p{font-size:1rem;line-height:1.62}.cta-actions{gap:10px}.contact-section{gap:16px}.contact-panel,.form-panel{border-radius:26px;padding:22px}.contact-panel h2,.form-panel h2{font-size:clamp(2rem,10vw,3.2rem)}.field input,.field select,.field textarea{border-radius:16px;padding:14px}.checkbox-row{align-items:flex-start;font-size:12px;line-height:1.45}.form-panel .btn{margin-top:8px}
  .footer{padding:38px 0 28px}.footer img{width:180px}.footer p{font-size:.95rem}.footer__links a{font-size:13px;padding:9px 12px}.footer__bottom{font-size:12px}

  /* mobile reveal animation classes driven by JS */
  .mobile-rise{opacity:0;transform:translate3d(0,22px,0);transition:opacity .72s cubic-bezier(.2,.72,.2,1),transform .72s cubic-bezier(.2,.72,.2,1)}
  .mobile-rise.is-visible{opacity:1;transform:none}
  .mobile-pop{opacity:0;transform:translate3d(0,18px,0) scale(.975);transition:opacity .72s cubic-bezier(.18,.78,.16,1),transform .72s cubic-bezier(.18,.78,.16,1)}
  .mobile-pop.is-visible{opacity:1;transform:none}
}

@media (max-width:420px){
  .hero-intro-copy h1{font-size:clamp(2.45rem,13.2vw,3.7rem)}
  .hero-project-cloud{width:calc(100vw - 12px)}
  .float-card{flex-basis:78vw!important;width:78vw!important;height:50vw!important}.float-card--phone,.float-card--social{flex-basis:48vw!important;width:48vw!important;height:86vw!important}
  .feature-frame{flex-basis:86vw!important;width:86vw!important;height:500px;min-height:500px}.case-tile--phone{min-height:470px}
}


/* === v6.1 mobile hero simplification === */
@media (max-width:780px){
  .hero-cinematic{min-height:auto!important;}
  .hero-canvas{min-height:auto!important;padding-bottom:28px!important;}
  .hero-content{padding:98px 0 28px!important;min-height:auto!important;display:block!important;}
  .hero-project-cloud,.hero-director,.hero-bottom,.scroll-cue,.pin-note{display:none!important;}
  .hero-bg--opening{display:block!important;opacity:1!important;}
  .hero-bg--depth,.hero-bg--transition,.hero-bg--stage,.hero-glow-layer{display:none!important;}
  .hero-vignette{background:linear-gradient(180deg,rgba(3,5,7,.62),rgba(3,5,7,.76) 34%,rgba(3,5,7,.94) 72%,rgba(3,5,7,.99) 100%)!important;}
  .hero-intro-copy{max-width:none!important;}
  .hero-intro-copy h1{max-width:100%!important;}
  .hero-actions{flex-direction:column!important;}
}

/* === v6.2 external project links === */
.feature-frame{cursor:default}
.feature-frame[data-project-link]{cursor:pointer}
.project-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:max-content;
  max-width:100%;
  margin-top:16px;
  min-height:40px;
  padding:10px 14px;
  border-radius:999px;
  border:1px solid rgba(156,255,74,.36);
  background:linear-gradient(135deg,rgba(156,255,74,.16),rgba(38,215,255,.10));
  color:#f8fff5;
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  box-shadow:0 12px 34px rgba(0,0,0,.26);
  transition:transform .2s ease,border-color .2s ease,background .2s ease;
}
.project-link:hover{transform:translateY(-2px);border-color:rgba(38,215,255,.58);background:linear-gradient(135deg,rgba(156,255,74,.24),rgba(38,215,255,.18))}
@media(max-width:780px){
  .project-link{width:100%;margin-top:14px;min-height:44px;border-radius:16px;font-size:11px}
}

/* === v7 launch polish: footer/menu pills + final proof === */
.footer__links{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:10px!important;
  align-items:center!important;
  justify-content:flex-end!important;
}
.footer__links a{
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  min-height:38px!important;
  aspect-ratio:auto!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:10px 16px!important;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.13)!important;
  background:rgba(255,255,255,.045)!important;
  color:rgba(255,255,255,.82)!important;
  line-height:1!important;
  white-space:nowrap!important;
  box-shadow:none!important;
}
.footer__links a:hover{
  color:#fff!important;
  border-color:rgba(156,255,74,.34)!important;
  background:linear-gradient(135deg,rgba(156,255,74,.10),rgba(38,215,255,.08))!important;
}
.project-link{
  margin-top:14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:9px 13px;
  border-radius:999px;
  border:1px solid rgba(156,255,74,.28);
  background:rgba(156,255,74,.09);
  color:#fff;
  font-size:12px;
  font-weight:900;
  letter-spacing:.02em;
}
@media(max-width:780px){
  .footer__links{justify-content:flex-start!important;gap:8px!important}
  .footer__links a{min-height:36px!important;padding:9px 13px!important;font-size:13px!important}
  .project-link{width:100%;margin-top:12px;min-height:40px}
}


/* === v8.1 home proof merge refinement === */
.proof-card--merged{min-height:640px}
.proof-card__label--compact{max-width:calc(100% - 36px)}
.proof-card__label--compact h3{max-width:19ch}
@media (max-width:1040px){
  .proof-card--merged{min-height:520px}
}
@media (max-width:780px){
  .proof-card--merged{min-height:360px}
  .proof-card__label--compact h3{max-width:none;font-size:1.18rem}
}

/* === v8.2 Butz + stable mobile slides === */
.proof-card--merged img.contain,
.case-thumb img.contain,
.feature-frame img.contain{
  object-fit:contain!important;
  object-position:center top!important;
  background:linear-gradient(180deg,rgba(6,8,10,.98),rgba(3,5,7,.98));
}
.proof-card--merged .proof-card__label--compact h3{max-width:20ch}
.project-link--proof{margin-left:auto;white-space:nowrap;flex:0 0 auto}
.proof-card[data-project-link]{cursor:pointer}

@media (max-width:780px){
  /* normal, stable mobile slider: no shaking animations while swiping */
  .horizontal-viewport{
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-snap-type:x mandatory!important;
    scroll-behavior:auto!important;
    -webkit-overflow-scrolling:touch;
    touch-action:pan-x!important;
    overscroll-behavior-x:contain!important;
    contain:layout paint;
  }
  .horizontal-track{
    transform:none!important;
    will-change:auto!important;
    transition:none!important;
    align-items:stretch!important;
  }
  .feature-frame{
    scroll-snap-align:center!important;
    scroll-snap-stop:always!important;
    transform:none!important;
    transition:none!important;
    animation:none!important;
    contain:layout paint;
  }
  .feature-frame.mobile-pop,
  .feature-frame.mobile-pop.is-visible{
    opacity:1!important;
    transform:none!important;
    transition:none!important;
  }
  .feature-frame img,
  .feature-frame img.contain{
    transform:none!important;
    transition:none!important;
    will-change:auto!important;
  }
  .feature-frame[data-project-link]{cursor:default}
  .proof-card--merged img.contain{object-position:center top!important}
  .proof-card__label--compact h3{max-width:none!important}
  .project-link--proof{margin-left:0;margin-top:12px;width:100%}
}


/* === v8.3 proof + speed refinements === */
.proof-card--merged{min-height:560px;max-width:640px;width:100%;margin-inline:auto}
.proof-card--merged img.contain{object-fit:contain;object-position:center top;background:#05080a}
.proof-card__label--compact{max-width:calc(100% - 32px)}
.proof-card__label--compact h3{max-width:18ch}
@media (max-width:1040px){
  .proof-grid{grid-template-columns:1fr .78fr}
  .proof-card--merged{min-height:520px;max-width:100%}
}
@media (max-width:780px){
  .proof-card--merged{min-height:360px;max-width:100%}
}


/* === v8.4 live-project mobile fills + smoother marquee === */
.case-marquee__inner{width:max-content;align-items:stretch;will-change:transform;backface-visibility:hidden;animation:marquee 18s linear infinite}
.case-thumb img.contain{object-fit:cover!important;object-position:top center!important;background:none!important}
@keyframes marquee{from{transform:translate3d(0,0,0)}to{transform:translate3d(calc(-50% - 7px),0,0)}}

@media (max-width:780px){
  .hero-bg--opening{filter:brightness(1.02) contrast(1.03) saturate(1.03)!important}
  .hero-bg--depth{filter:brightness(.9) contrast(1.06)!important}
  .hero-bg--transition{filter:brightness(.9) contrast(1.05)!important}
  .hero-bg--stage{filter:brightness(.72) contrast(1.03)!important}
  .hero-vignette{background:
    radial-gradient(circle at 70% 18%,rgba(38,215,255,.12),transparent 16rem),
    radial-gradient(circle at 22% 82%,rgba(156,255,74,.08),transparent 16rem),
    linear-gradient(90deg,rgba(3,5,7,.72) 0%,rgba(3,5,7,.42) 42%,rgba(3,5,7,.18) 68%,rgba(3,5,7,.62) 100%),
    linear-gradient(180deg,rgba(3,5,7,.42),rgba(3,5,7,.1) 22%,rgba(3,5,7,.16) 66%,rgba(3,5,7,.66))!important;
  }
  .horizontal-viewport{padding-left:12px!important;padding-right:12px!important;scroll-padding-inline:12px!important}
  .horizontal-track{gap:12px!important;padding:0 0 4px 0!important}
  .feature-frame{
    flex:0 0 calc(100vw - 48px)!important;
    width:calc(100vw - 48px)!important;
    max-width:calc(100vw - 48px)!important;
    height:min(530px,128vw)!important;
    min-height:500px!important;
    scroll-snap-align:start!important;
  }
  .feature-frame img,.feature-frame img.contain{
    width:100%!important;height:100%!important;object-fit:cover!important;object-position:top center!important;
  }
  .feature-frame__copy{left:12px!important;right:12px!important;bottom:12px!important;max-width:none!important}
  .feature-frame__copy p{max-width:none!important}
}

@media (max-width:420px){
  .feature-frame{height:min(500px,132vw)!important;min-height:470px!important}
}


/* === v8.5 mobile single-proof + sharper live projects === */
.case-thumb img,.proof-card img,.feature-frame img,.case-tile img{
  -webkit-backface-visibility:hidden;
  backface-visibility:hidden;
  transform:translateZ(0);
  image-rendering:auto;
}

@media (max-width:780px){
  .project-proof .proof-grid{display:block!important}
  .project-proof .proof-grid > .proof-card.proof-card--tall{display:none!important}
  .project-proof .proof-column{display:block!important}
  .project-proof .proof-card--merged{min-height:400px!important;max-width:100%!important}
  .project-proof .proof-card--merged .proof-card__label{left:12px!important;right:12px!important;bottom:12px!important}

  .horizontal-viewport{padding-left:12px!important;padding-right:12px!important;scroll-padding-inline:12px!important}
  .horizontal-track{padding-right:0!important}
  .feature-frame{
    flex:0 0 calc(100vw - 24px)!important;
    width:calc(100vw - 24px)!important;
    max-width:calc(100vw - 24px)!important;
    height:min(540px,136vw)!important;
    min-height:500px!important;
  }
  .feature-frame img,.feature-frame img.contain{
    object-fit:cover!important;
    object-position:top center!important;
    filter:brightness(.93) contrast(1.08) saturate(1.03)!important;
  }
  .feature-frame img[alt*="Gabelstapler"],
  .feature-frame img[src*="gabelstapler-angebote-desktop"]{object-position:left top!important}
}

@media (max-width:420px){
  .feature-frame{height:min(520px,140vw)!important;min-height:480px!important}
}


/* === FINAL QA TYPOGRAPHY + MOBILE POLISH === */
:root{
  --font-body:"Manrope",Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  --font-display:"Space Grotesk","Manrope",Inter,ui-sans-serif,system-ui,sans-serif;
}
body{font-family:var(--font-body);font-weight:500;letter-spacing:-.01em}
h1,h2,h3,.nav a,.mobile-nav span,.btn,.eyebrow,.feature-frame__copy span,.case-tile__meta small,.proof-card small,.process-card span,.glass-card span,.project-link{font-family:var(--font-display)}
h1,h2,h3{text-wrap:balance;font-weight:700;letter-spacing:-.055em}p{text-wrap:pretty}.hero-intro-copy h1{letter-spacing:-.062em}.hero-intro-copy p,.section-head p,.proof-head p,.case-copy p,.stack-copy p,.contact-panel p,.form-panel p{font-weight:500}.nav a,.btn{font-weight:700}.eyebrow{font-weight:700;letter-spacing:.16em}.glass-card,.process-card,.chapter,.feature-frame__copy,.proof-card__label,.case-tile__meta{font-weight:500}
.hero-intro-copy h1{max-width:850px}.section-head h2,.proof-head h2,.story-left h2,.stack-copy h2,.case-copy h2,.horizontal-head h2,.cta-cinema h2{line-height:.98}.feature-frame__copy h3{letter-spacing:-.045em}.contact-panel h2,.form-panel h2{font-family:var(--font-display);font-weight:700;letter-spacing:-.055em}.legal-content h1,.legal-content h2{font-family:var(--font-display);font-weight:700}.mobile-nav small{font-weight:500}
.feature-frame:not([data-project-link]){cursor:default}.feature-frame:not([data-project-link]) .project-link{display:none}.feature-frame img.contain,.case-tile img.contain,.float-card img.contain{object-fit:contain!important;object-position:center top!important;background:#05080a}
@media (min-width:781px){
  .hero-intro-copy h1{font-size:clamp(3.05rem,6.2vw,6.45rem);line-height:.94}.hero-intro-copy p{max-width:680px}.feature-frame__copy p{max-width:690px}.case-copy{padding-top:8px}.site-header{height:68px}.nav a{font-size:13px}.brand img{width:clamp(170px,15vw,218px)}
}
@media (max-width:780px){
  body{font-size:16px;line-height:1.55}.site-header{height:62px;border-radius:22px}.brand img{width:min(164px,48vw)}
  .hero-content{padding-top:96px!important;padding-bottom:34px!important}.hero-intro-copy h1{font-size:clamp(2.45rem,11.6vw,4.05rem)!important;line-height:.98!important;letter-spacing:-.055em!important}.hero-intro-copy p{font-size:1rem;line-height:1.64;margin-top:16px}.meta-row span{font-weight:700}.btn{min-height:50px;border-radius:16px}.hero-actions{gap:9px}
  .section,.project-proof,.case-theatre,.contact-section{width:min(calc(100% - 24px),var(--max));padding:58px 0}.section-head h2,.proof-head h2,.story-left h2,.stack-copy h2,.case-copy h2,.horizontal-head h2,.cta-cinema h2{font-size:clamp(2rem,9.8vw,3.45rem)!important;line-height:1.02!important;letter-spacing:-.052em!important}.section-head p,.proof-head p,.stack-copy p,.case-copy p{font-size:.98rem;line-height:1.62}.grid-3 .glass-card{flex-basis:86%;padding:21px}.glass-card h3,.process-card h3,.chapter h3{font-size:clamp(1.35rem,6.7vw,2rem)!important;line-height:1.08!important}.glass-card p,.process-card p,.chapter p{font-size:.95rem;line-height:1.58}
  .story-layout{width:min(calc(100% - 24px),var(--max))}.story-left{padding:22px 18px}.chapter{padding:20px}.proof-card__label,.case-tile__meta,.feature-frame__copy{padding:15px}.proof-card h3,.case-tile__meta h3{font-size:1.22rem!important;line-height:1.1}.case-tile--phone{min-height:490px}.feature-frame{height:min(500px,132vw)!important;min-height:462px!important;border-radius:24px}.feature-frame__copy h3{font-size:clamp(1.45rem,7.3vw,2.15rem)!important;line-height:1.05!important}.feature-frame__copy p{font-size:.91rem!important;line-height:1.52!important}.horizontal-head{gap:10px}.horizontal-count{font-size:10px;letter-spacing:.14em}.project-link{min-height:40px!important}
  .contact-panel,.form-panel{padding:21px;border-radius:24px}.field input,.field select,.field textarea{font-size:16px}.footer__links a{font-family:var(--font-display)}
}
@media (max-width:420px){
  .hero-intro-copy h1{font-size:clamp(2.25rem,11.3vw,3.35rem)!important}.section-head h2,.proof-head h2,.story-left h2,.stack-copy h2,.case-copy h2,.horizontal-head h2,.cta-cinema h2{font-size:clamp(1.9rem,9.2vw,3rem)!important}.feature-frame{height:min(488px,134vw)!important;min-height:448px!important}.case-tile--phone{min-height:460px}.case-tile__meta h3{font-size:1.12rem!important}
}
