:root {
  --bg:#080808; --surface:#111111; --text:#EDEDED;
  --dim:rgba(237,237,237,.50); --mid:rgba(237,237,237,.72);
  --orange:#F05A28; --og06:rgba(240,90,40,.06);
  --border:rgba(237,237,237,.08); --border2:rgba(237,237,237,.16);
  --display:'Bebas Neue',Impact,sans-serif;
  --body:'Exo','Segoe UI',Arial,sans-serif;
}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{background:var(--bg);color:var(--text);font-family:var(--body);font-weight:300;overflow-x:hidden;cursor:none;}

/* CURSOR */
#cur{position:fixed;width:16px;height:16px;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);transition:width .2s,height .2s;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 253.66 250.46'%3E%3Cpath fill='%23f05a28' d='M56.83,24.97l-20.18,20.18c-47.88,47.88-49,124.67-2.49,171.18,30.22,30.22,73.21,40.3,112.76,30.55,4.82-.51,9.55-2.64,13.29-6.38,8.5-8.5,8.7-22.08.44-30.34-5.55-5.55-13.52-7.27-20.72-5.21l-.05-.24c-26.11,7.21-54.88.9-74.93-19.15-30.02-30.02-29.3-79.59,1.61-110.49l20.18-20.18c8.5-8.5,8.7-22.08.44-30.34s-21.84-8.06-30.34.44Z'/%3E%3Cpath fill='%23ffffff' d='M178.05,72.44c20.22-3.07,41.34,2.97,56.6,18.23,25.88,25.88,25.26,68.6-1.38,95.24l-6.26,6.26c-8.5,8.5-22.08,8.7-30.34.44-8.26-8.26-8.06-21.84.44-30.34l6.26-6.26c9.68-9.68,9.91-25.15.5-34.56-9.4-9.4-24.87-9.18-34.56.5l-27.93,27.93c-11.58,11.58-30.14,11.84-41.38.6-11.24-11.24-10.97-29.81.6-41.38l27.93-27.93c9.68-9.68,9.91-25.15.5-34.56-2.2-2.2-4.75-3.84-7.46-4.99-2.77-1-5.37-2.59-7.58-4.8-8.26-8.26-8.06-21.84.44-30.34,6.15-6.15,14.96-7.93,22.49-5.33l.03-.07c8.37,3.16,16.18,8.06,22.87,14.74,15.26,15.26,21.3,36.38,18.23,56.6Z'/%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat;background-position:center;}
#cur-f{position:fixed;width:40px;height:40px;border:1.5px solid rgba(240,90,40,.6);border-radius:50%;pointer-events:none;z-index:9998;transform:translate(-50%,-50%);transition:width .3s cubic-bezier(.16,1,.3,1),height .3s cubic-bezier(.16,1,.3,1),border-color .2s;}
body.on-link #cur{width:20px;height:20px;}
body.on-link #cur-f{width:56px;height:56px;border-color:rgba(240,90,40,.95);}
@media(pointer:coarse){#cur,#cur-f{display:none;}body{cursor:auto;}}

/* LOADER */
#loader{position:fixed;inset:0;z-index:9500;background:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;transition:opacity .6s,visibility .6s;}
#loader.hidden{opacity:0;visibility:hidden;pointer-events:none;}
.ldr-symbol{width:52px;height:52px;animation:ldrPulse 1s ease-in-out infinite alternate;}
.ldr-bar{width:80px;height:1px;background:var(--border);position:relative;overflow:hidden;}
.ldr-bar::after{content:'';position:absolute;inset:0;background:var(--orange);transform:translateX(-100%);animation:ldrBar .8s .1s cubic-bezier(.16,1,.3,1) forwards;}

/* NAV */
nav#nav{position:fixed;top:0;left:0;right:0;z-index:800;display:flex;justify-content:space-between;align-items:center;padding:28px 40px;transition:background .4s,padding .3s;}
nav#nav.scrolled{background:rgba(8,8,8,.94);backdrop-filter:blur(16px);border-bottom:1px solid var(--border);padding:18px 40px;}
.nav-logo{display:flex;align-items:center;text-decoration:none;flex-shrink:0;}
.nav-logo svg{height:26px;width:auto;display:block;}
.nav-right{display:flex;align-items:center;gap:18px;}
.lang-btn{font-family:var(--body);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--dim);background:none;border:none;cursor:none;padding:0;transition:color .2s;}
.lang-btn:hover,.lang-active{color:var(--text);}
.lang-sep{color:var(--border2);font-size:11px;user-select:none;}
.hamburger-btn{background:none;border:none;color:var(--text);cursor:none;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:5px;padding:4px;width:32px;height:32px;}
.hb-line{width:22px;height:1.5px;background:currentColor;transition:transform .35s cubic-bezier(.76,0,.24,1),opacity .35s,width .35s;transform-origin:center;}
.hb-line:nth-child(2){width:14px;}
.hamburger-btn.open .hb-line:nth-child(1){transform:translateY(6.5px) rotate(45deg);width:22px;}
.hamburger-btn.open .hb-line:nth-child(2){opacity:0;width:0;}
.hamburger-btn.open .hb-line:nth-child(3){transform:translateY(-6.5px) rotate(-45deg);}

/* ══════════════════════════════════════
   MENU — display:none by default.
   JS adds .ready (makes display:flex)
   then adds .open (triggers animations).
   Closing: JS removes .open, waits for
   animation to finish, then removes .ready.
══════════════════════════════════════ */
#menu{
  display:none !important;
  position:fixed;inset:0;z-index:900;
}
#menu.ready{
  display:flex !important;
}
.mp{
  flex:1;
  display:flex;align-items:flex-end;
  padding:48px 28px 52px;
  border-right:1px solid rgba(8,8,8,.6);
  transform:translateY(-100%);
  transition:transform .72s cubic-bezier(.76,0,.24,1);
  position:relative;
  overflow:hidden;
}
.mp:last-child{border-right:none;}
/* Menu background — single image across all panels */
.mp:nth-child(1){background-color:#0C0C0C;background-image:url('../images/menu-bg.jpg');background-size:500% auto;background-position:0% center;background-repeat:no-repeat;}
.mp:nth-child(2){background-color:#0F0F0F;background-image:url('../images/menu-bg.jpg');background-size:500% auto;background-position:25% center;background-repeat:no-repeat;}
.mp:nth-child(3){background-color:#0A0A0A;background-image:url('../images/menu-bg.jpg');background-size:500% auto;background-position:50% center;background-repeat:no-repeat;}
.mp:nth-child(4){background-color:#111111;background-image:url('../images/menu-bg.jpg');background-size:500% auto;background-position:75% center;background-repeat:no-repeat;}
.mp:nth-child(5){background-color:#0E0E0E;background-image:url('../images/menu-bg.jpg');background-size:500% auto;background-position:100% center;background-repeat:no-repeat;}
/* Dark overlay on each panel so text stays readable */
.mp::before{content:'';position:absolute;inset:0;background:rgba(8,8,8,.78);pointer-events:none;z-index:0;}
.mp-inner{position:relative;z-index:1;}

/* Panels slide IN — staggered */
#menu.open .mp:nth-child(1){transform:translateY(0);transition-delay:0s;}
#menu.open .mp:nth-child(2){transform:translateY(0);transition-delay:.06s;}
#menu.open .mp:nth-child(3){transform:translateY(0);transition-delay:.12s;}
#menu.open .mp:nth-child(4){transform:translateY(0);transition-delay:.18s;}
#menu.open .mp:nth-child(5){transform:translateY(0);transition-delay:.24s;}

/* Panels slide OUT — reverse stagger */
#menu.ready:not(.open) .mp:nth-child(1){transform:translateY(-100%);transition-delay:.24s;}
#menu.ready:not(.open) .mp:nth-child(2){transform:translateY(-100%);transition-delay:.18s;}
#menu.ready:not(.open) .mp:nth-child(3){transform:translateY(-100%);transition-delay:.12s;}
#menu.ready:not(.open) .mp:nth-child(4){transform:translateY(-100%);transition-delay:.06s;}
#menu.ready:not(.open) .mp:nth-child(5){transform:translateY(-100%);transition-delay:0s;}

.mp-inner{display:flex;flex-direction:column;gap:8px;width:100%;}
.mp-num{font-size:10px;letter-spacing:.2em;color:var(--dim);font-family:var(--body);}
.mp-link{font-family:var(--display);font-size:clamp(28px,3.4vw,56px);color:var(--text);text-decoration:none;letter-spacing:.04em;line-height:1;display:block;transition:color .2s,letter-spacing .3s;}
.mp-link:hover{color:var(--orange);letter-spacing:.1em;}
.mp-sub{font-size:10px;letter-spacing:.14em;color:var(--dim);text-transform:uppercase;margin-top:4px;font-family:var(--body);}

/* HERO */
.hero{min-height:100vh;display:flex;flex-direction:column;justify-content:flex-end;padding:0 48px 80px;position:relative;overflow:hidden;}
.hero-bg{position:absolute;inset:0;z-index:0;background:url('../images/hero.jpg') center/cover no-repeat;}
.hero-bg::after{content:'';position:absolute;inset:0;background:linear-gradient(to right,rgba(8,8,8,.9) 0%,rgba(8,8,8,.55) 60%,rgba(8,8,8,.2) 100%),linear-gradient(to top,rgba(8,8,8,.97) 0%,transparent 55%);}
.hero-content{position:relative;z-index:1;}
.hero-h1{font-family:var(--display);font-size:clamp(64px,12.5vw,180px);line-height:.9;letter-spacing:-.01em;margin-bottom:48px;}
.hl{display:block;overflow:hidden;}
.hl span{display:block;transform:translateY(110%);animation:slideUp 1s cubic-bezier(.16,1,.3,1) forwards;}
.hl:nth-child(1) span{animation-delay:.08s;}
.hl:nth-child(2) span{animation-delay:.2s;}
.hl:nth-child(3) span{animation-delay:.32s;color:var(--orange);}
.hero-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;}
.hero-sub{max-width:380px;font-size:14px;line-height:1.85;color:var(--mid);font-weight:300;opacity:0;animation:fadeUp .7s 1.05s ease forwards;}
.hero-right{display:flex;flex-direction:column;align-items:flex-end;gap:18px;opacity:0;animation:fadeUp .7s 1.15s ease forwards;}
.hero-scroll{display:flex;align-items:center;gap:10px;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--dim);font-family:var(--body);}
.hero-scroll-line{width:36px;height:1px;background:var(--dim);animation:scrollPulse 2.2s infinite;}

/* BUTTONS */
.btn-primary{display:inline-flex;align-items:center;gap:10px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;background:var(--orange);color:#fff;padding:14px 36px;text-decoration:none;font-family:var(--body);font-weight:400;transition:gap .3s,opacity .2s;white-space:nowrap;}
.btn-primary:hover{gap:20px;opacity:.9;}
.btn-ghost{font-size:12px;letter-spacing:.15em;text-transform:uppercase;color:var(--mid);text-decoration:none;border-bottom:1px solid var(--border2);padding-bottom:2px;font-family:var(--body);white-space:nowrap;transition:color .2s,border-color .2s;}
.btn-ghost:hover{color:var(--text);border-color:var(--mid);}
.btn-text-arrow{display:inline-flex;align-items:center;gap:8px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--dim);text-decoration:none;font-family:var(--body);margin-bottom:60px;transition:color .2s,gap .3s;}
.btn-text-arrow:hover{color:var(--orange);gap:14px;}

/* MARQUEE */
.marquee-strip{border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:13px 0;overflow:hidden;white-space:nowrap;background:var(--surface);}
.marquee-track{display:inline-flex;animation:marquee 28s linear infinite;}
.m-item{font-family:var(--display);font-size:13px;letter-spacing:.22em;text-transform:uppercase;color:var(--dim);padding:0 48px;}
.m-item em{font-style:normal;color:var(--orange);}

/* COMMONS */
.s-eye{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--dim);margin-bottom:16px;display:block;font-family:var(--body);}
.s-title{font-family:var(--display);font-size:clamp(36px,5vw,80px);line-height:1;letter-spacing:.02em;}

/* TENSION */
.tension{padding:120px 48px;max-width:100%;}.tension p{max-width:820px;}
.tension p{font-size:clamp(16px,1.9vw,23px);line-height:1.8;color:var(--mid);font-weight:300;}
.tension p strong{color:var(--text);font-weight:400;}

/* PILLARS */
.pillars{padding:0 48px 140px;border-bottom:1px solid var(--border);}
.pillars-hdr{margin-bottom:64px;}
.pillars-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--border);}
.pillar{padding:44px 36px 50px;border-right:1px solid var(--border);position:relative;overflow:hidden;transition:background .3s;}
.pillar:last-child{border-right:none;}
.pillar:hover{background:var(--surface);}
.pillar::after{content:'';position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--orange);transition:width .5s ease;}
.pillar:hover::after{width:100%;}
.p-num{font-size:10px;letter-spacing:.2em;color:var(--orange);display:block;margin-bottom:20px;font-family:var(--body);}
.p-name{font-family:var(--display);font-size:22px;letter-spacing:.04em;margin-bottom:14px;}
.p-desc{font-size:13px;line-height:1.8;color:var(--mid);font-weight:300;}
.p-quote{font-size:12px;line-height:1.7;color:var(--text);border-left:2px solid var(--orange);padding-left:14px;margin-top:18px;font-style:italic;opacity:.75;}

/* SERVICES */
.services{padding:120px 48px;border-top:1px solid var(--border);position:relative;overflow:hidden;}
.services-bg{position:absolute;inset:0;z-index:0;background:url('../images/svcbg.png') center/cover no-repeat;opacity:.06;}
.services-inner{position:relative;z-index:1;}
.svc-hdr{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:64px;flex-wrap:wrap;gap:16px;}
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.svc-card{border:1px solid var(--border);padding:36px 32px 42px;position:relative;overflow:hidden;transition:border-color .3s,background .3s;}
.svc-card:hover{border-color:var(--orange);background:rgba(8,8,8,.9);}
.svc-tag{display:inline-block;font-size:9px;letter-spacing:.2em;text-transform:uppercase;border:1px solid var(--border2);color:var(--dim);padding:4px 10px;margin-bottom:24px;font-family:var(--body);transition:border-color .3s,color .3s;}
.svc-card:hover .svc-tag{border-color:var(--orange);color:var(--orange);}
.svc-name{font-family:var(--display);font-size:24px;letter-spacing:.04em;margin-bottom:12px;}
.svc-desc{font-size:13px;line-height:1.8;color:var(--mid);margin-bottom:24px;font-weight:300;}
.svc-link{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--dim);text-decoration:none;display:flex;align-items:center;gap:8px;font-family:var(--body);transition:color .2s,gap .3s;}
.svc-card:hover .svc-link{color:var(--orange);gap:16px;}

/* WORK */
.work{padding:120px 0 120px 48px;border-top:1px solid var(--border);}
.work-hdr{display:flex;justify-content:space-between;align-items:flex-end;padding-right:48px;margin-bottom:52px;flex-wrap:wrap;gap:16px;}
.work-track{display:flex;gap:18px;overflow-x:auto;padding-right:48px;padding-bottom:20px;scrollbar-width:none;cursor:grab;}
.work-track::-webkit-scrollbar{display:none;}
.work-track.dragging{cursor:grabbing;}
.wcard{flex:0 0 auto;width:clamp(260px,34vw,500px);border:1px solid var(--border);overflow:hidden;transition:border-color .3s;color:inherit;text-decoration:none;}
.wcard:hover{border-color:var(--border2);}
.wcard-img{width:100%;aspect-ratio:4/3;overflow:hidden;position:relative;}
.wcard-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s cubic-bezier(.16,1,.3,1);}
.wcard:hover .wcard-img img{transform:scale(1.05);}
.wcard-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(8,8,8,.85) 0%,transparent 60%);opacity:0;transition:opacity .4s;display:flex;align-items:flex-end;padding:22px;}
.wcard:hover .wcard-overlay{opacity:1;}
.wcard-cta{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--orange);font-family:var(--body);}
.wcard-info{padding:16px 20px;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;}
.wcard-title{font-family:var(--display);font-size:19px;letter-spacing:.04em;}
.wcard-tags{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--dim);margin-top:3px;font-family:var(--body);}
.wcard-arrow{font-size:15px;color:var(--dim);transition:transform .3s,color .3s;flex-shrink:0;}
.wcard:hover .wcard-arrow{transform:translate(4px,-4px);color:var(--orange);}
.drag-hint{display:flex;align-items:center;gap:8px;padding-right:48px;justify-content:flex-end;margin-top:24px;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--dim);font-family:var(--body);animation:breathe 2.5s infinite;}
.drag-line{width:28px;height:1px;background:var(--dim);}

/* STUDIO */
.studio{padding:120px 48px;border-top:1px solid var(--border);}
.studio-statement{font-size:clamp(16px,1.8vw,22px);line-height:1.75;font-weight:300;color:var(--mid);max-width:100%;margin-bottom:32px;}
.studio-statement strong{color:var(--text);font-weight:400;}
.studio-director{display:grid;grid-template-columns:320px 1fr;gap:60px;align-items:start;border-top:1px solid var(--border);padding-top:60px;margin-top:60px;padding-left:120px;padding-right:120px;}
.studio-img-wrap{position:relative;overflow:hidden;}
.studio-img{width:100%;aspect-ratio:3/4;object-fit:cover;object-position:top center;display:block;max-height:420px;transition:transform .6s cubic-bezier(.16,1,.3,1);}
.studio-img-wrap:hover .studio-img{transform:scale(1.03);}
.studio-img-caption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(8,8,8,.95) 0%,transparent 100%);padding:48px 20px 18px;text-align:center;}
.studio-caption-name{font-family:var(--display);font-size:20px;letter-spacing:.08em;color:var(--text);}
.studio-caption-role{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--orange);margin-top:4px;font-family:var(--body);}
.studio-body{font-size:15px;line-height:1.9;color:var(--mid);margin-bottom:24px;font-weight:300;}
.studio-body strong{color:var(--text);font-weight:400;}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;border-top:1px solid var(--border);padding-top:32px;margin-top:8px;}
.stat-n{font-family:var(--display);font-size:44px;letter-spacing:.02em;color:var(--text);line-height:1;}
.stat-n span{color:var(--orange);}
.stat-l{font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--dim);margin-top:4px;font-family:var(--body);}

/* BRIDGE */
.bridge{padding:100px 48px;border-top:1px solid var(--border);background:var(--surface);display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center;}
.bridge-title{font-family:var(--display);font-size:clamp(32px,4.2vw,60px);line-height:1;letter-spacing:.02em;margin-bottom:20px;}
.bridge-desc{font-size:14px;line-height:1.85;color:var(--mid);max-width:380px;font-weight:300;margin-bottom:28px;}
.bridge-items{display:flex;flex-direction:column;gap:10px;}
.bridge-item{border:1px solid var(--border);padding:20px 24px;display:flex;justify-content:space-between;align-items:center;transition:border-color .25s,background .25s;}
.bridge-item:hover{border-color:var(--orange);background:var(--og06);}
.bi-name{font-family:var(--display);font-size:18px;letter-spacing:.04em;}
.bi-price{font-size:11px;letter-spacing:.1em;color:var(--dim);margin-top:2px;font-family:var(--body);}
.bi-arrow{color:var(--dim);font-size:14px;transition:color .2s,transform .25s;flex-shrink:0;}
.bridge-item:hover .bi-arrow{color:var(--orange);transform:translate(3px,-3px);}

/* CTA */
.cta-band{padding:120px 48px;border-top:1px solid var(--border);display:flex;flex-direction:column;align-items:center;text-align:center;}
.cta-pre{font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--dim);margin-bottom:20px;font-family:var(--body);}
.cta-title{font-family:var(--display);font-size:clamp(44px,8.5vw,120px);line-height:1;letter-spacing:.02em;margin-bottom:12px;}
.cta-title span{color:var(--orange);}
.cta-sub{font-size:14px;color:var(--mid);max-width:440px;line-height:1.8;font-weight:300;margin-bottom:36px;}
.cta-note{font-size:12px;letter-spacing:.06em;color:var(--dim);margin-top:16px;font-family:var(--body);}

/* FOOTER */
footer{border-top:1px solid var(--border);padding:52px 48px 36px;}
.footer-top{display:flex;flex-direction:column;gap:28px;margin-bottom:48px;}

/* ── CONTACT FORM ─────────────────────────────── */
.cta-form {
  width: 100%;
  max-width: 600px;
  margin-top: 48px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  margin-left: auto;
  margin-right: auto;
}
.cta-form input {
  background: transparent;
  border: 1px solid rgba(237,237,237,.2);
  border-right: none;
  color: var(--text);
  font-family: var(--body);
  font-size: 12px;
  font-weight: 300;
  letter-spacing: .1em;
  text-transform: uppercase;
  padding: 18px 22px;
  outline: none;
  transition: border-color .25s, background .25s;
  box-sizing: border-box;
  -webkit-appearance: none;
  border-radius: 0;
}
/* Name spans full width, company shares second row */
/* nth-child(1) = hidden input, so Name=2, Company=3 */
.cta-form input:nth-child(2) {
  grid-column: 1 / 2;
  border-right: none;
}
.cta-form input:nth-child(3) {
  grid-column: 2 / 3;
  border-right: 1px solid rgba(237,237,237,.2);
}
.cta-form textarea {
  grid-column: 1 / 3;
  background: transparent;
  border: 1px solid rgba(237,237,237,.2);
  border-top: none;
  color: var(--text);
  font-family: var(--body);
  font-size: 12px;
  font-weight: 300;
  letter-spacing: .06em;
  padding: 18px 22px;
  outline: none;
  resize: none;
  height: 120px;
  transition: border-color .25s, background .25s;
  box-sizing: border-box;
  -webkit-appearance: none;
  border-radius: 0;
}
.cta-form input::placeholder,
.cta-form textarea::placeholder {
  color: rgba(237,237,237,.45);
  letter-spacing: .12em;
  text-transform: uppercase;
  font-size: 10px;
}
.cta-form input:focus,
.cta-form textarea:focus {
  border-color: rgba(240,90,40,.6);
  background: rgba(240,90,40,.03);
}
/* Submit row */
.cta-form-submit-row {
  grid-column: 1 / 3;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  border: 1px solid rgba(237,237,237,.2);
  border-top: none;
  padding: 0;
  height: 56px;
}
.cta-form-label {
  display: block;
  font-size: 9px;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: rgba(237,237,237,.22);
  font-family: var(--body);
  margin-top: 10px;
  grid-column: 1 / 3;
  text-align: left;
  padding-left: 2px;
}
.cta-form button[type="submit"] {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 11px;
  letter-spacing: .18em;
  text-transform: uppercase;
  background: var(--orange);
  color: #fff;
  padding: 0 32px;
  border: none;
  font-family: var(--body);
  font-weight: 400;
  cursor: pointer;
  transition: gap .3s, opacity .2s;
  white-space: nowrap;
  height: 100%;
  width: 100%;
  justify-content: center;
}
.cta-form button[type="submit"]:hover { gap: 14px; opacity: .9; }
.cta-form-success {
  display: none;
  grid-column: 1 / 3;
  font-size: 11px;
  letter-spacing: .16em;
  color: var(--orange);
  text-transform: uppercase;
  padding: 20px 22px;
  font-family: var(--body);
  border: 1px solid rgba(240,90,40,.35);
  border-top: none;
  background: rgba(240,90,40,.04);
}
@media(max-width:768px) {
  .cta-form { grid-template-columns: 1fr; max-width: 100%; }
  .cta-form input:nth-child(2) { grid-column: 1; border-right: 1px solid rgba(237,237,237,.2); border-bottom: none; }
  .cta-form input:nth-child(3) { grid-column: 1; border-top: none; border-right: 1px solid rgba(237,237,237,.2); }
  .cta-form textarea { grid-column: 1; }
  .cta-form-submit-row { grid-column: 1; }
  .cta-form-success { grid-column: 1; }
  .cta-form button[type="submit"] { width: 100%; justify-content: center; }
}

.footer-top-row1{display:flex;justify-content:space-between;align-items:center;gap:32px;flex-wrap:wrap;}
.footer-logo-wrap svg{height:22px;width:auto;display:block;}
.footer-tagline{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--mid);font-family:var(--body);font-weight:300;text-align:right;line-height:1.6;}
.footer-nav{display:flex;gap:32px;flex-wrap:wrap;justify-content:center;border-top:1px solid var(--border);padding-top:28px;}
.footer-nav a{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--dim);text-decoration:none;transition:color .2s;font-family:var(--body);}
.footer-nav a:hover{color:var(--orange);}
.footer-bottom{border-top:1px solid var(--border);padding-top:22px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;}
.footer-copy{font-size:11px;letter-spacing:.08em;color:var(--dim);font-family:var(--body);text-transform:uppercase;}
.footer-social{display:flex;gap:24px;}
.footer-social a{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--dim);text-decoration:none;transition:color .2s;font-family:var(--body);}
.footer-social a:hover{color:var(--orange);}
.footer-location{display:flex;align-items:center;gap:8px;font-size:11px;letter-spacing:.08em;color:var(--dim);font-family:var(--body);text-transform:uppercase;}
.footer-dot{width:6px;height:6px;background:var(--orange);border-radius:50%;animation:blink 2s infinite;flex-shrink:0;}

/* REVEAL */
.rv{opacity:0;transform:translateY(28px);transition:opacity .85s cubic-bezier(.16,1,.3,1),transform .85s cubic-bezier(.16,1,.3,1);}
.rv.in{opacity:1;transform:translateY(0);}
.rv.d1{transition-delay:.1s;}.rv.d2{transition-delay:.2s;}.rv.d3{transition-delay:.3s;}

/* KEYFRAMES */
@keyframes slideUp{to{transform:translateY(0);}}
@keyframes fadeUp{from{opacity:0;transform:translateY(20px);}to{opacity:1;transform:translateY(0);}}
@keyframes marquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}
@keyframes scrollPulse{0%,100%{transform:scaleX(1);opacity:1;}50%{transform:scaleX(.25);opacity:.3;}}
@keyframes blink{0%,100%{opacity:1;}50%{opacity:.15;}}
@keyframes breathe{0%,100%{opacity:.5;}50%{opacity:1;}}
@keyframes ldrPulse{from{opacity:.3;}to{opacity:1;}}
@keyframes ldrBar{to{transform:translateX(0);}}

/* RESPONSIVE */
@media(max-width:1024px){
  .pillars-grid{grid-template-columns:1fr;}
  .pillar{border-right:none;border-bottom:1px solid var(--border);}
  .pillar:last-child{border-bottom:none;}
  .svc-grid{grid-template-columns:1fr;}
  .bridge{grid-template-columns:1fr;gap:40px;}
  .studio-director{grid-template-columns:1fr;gap:36px;}
}
@media(max-width:768px){
  nav{padding:20px 24px;}nav.scrolled{padding:14px 24px;}
  .hero{padding:100px 24px 48px;justify-content:flex-start;min-height:auto;}
  .hero-video{height:100%;max-height:100%;}
  .hero-h1{font-size:clamp(52px,15vw,88px);margin-bottom:32px;}
  .hero-bottom{flex-direction:column;align-items:flex-start;gap:24px;}
  .hero-right{align-items:flex-start;}
  .tension{padding:72px 24px;}
  .pillars,.services,.bridge,.cta-band{padding-left:24px;padding-right:24px;}

  /* Studio — remove desktop padding-left offset, center on mobile */
  .studio{padding:72px 24px;}
  .studio-director{padding-left:0;padding-right:0;grid-template-columns:1fr;gap:36px;}
  .studio-img-wrap{max-width:360px;margin:0 auto;}

  /* Work — vertical stack on mobile */
  .work{padding-left:24px;padding-right:24px;}
  .work-hdr{padding-right:0;}
  .work-track{
    flex-direction:column;
    overflow-x:visible;
    padding-right:0;
    gap:16px;
    cursor:default;
  }
  .wcard{width:100%;flex:none;}
  .drag-hint{display:none;}

  /* Footer — center everything on mobile */
  footer{padding:40px 24px 28px;}
  .footer-top{flex-direction:column;align-items:center;text-align:center;}
  
/* ── CONTACT FORM ─────────────────────────────── */
.cta-form {
  width: 100%;
  max-width: 600px;
  margin-top: 48px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  margin-left: auto;
  margin-right: auto;
}
.cta-form input {
  background: transparent;
  border: 1px solid rgba(237,237,237,.2);
  border-right: none;
  color: var(--text);
  font-family: var(--body);
  font-size: 12px;
  font-weight: 300;
  letter-spacing: .1em;
  text-transform: uppercase;
  padding: 18px 22px;
  outline: none;
  transition: border-color .25s, background .25s;
  box-sizing: border-box;
  -webkit-appearance: none;
  border-radius: 0;
}
/* Name spans full width, company shares second row */
/* nth-child(1) = hidden input, so Name=2, Company=3 */
.cta-form input:nth-child(2) {
  grid-column: 1 / 2;
  border-right: none;
}
.cta-form input:nth-child(3) {
  grid-column: 2 / 3;
  border-right: 1px solid rgba(237,237,237,.2);
}
.cta-form textarea {
  grid-column: 1 / 3;
  background: transparent;
  border: 1px solid rgba(237,237,237,.2);
  border-top: none;
  color: var(--text);
  font-family: var(--body);
  font-size: 12px;
  font-weight: 300;
  letter-spacing: .06em;
  padding: 18px 22px;
  outline: none;
  resize: none;
  height: 120px;
  transition: border-color .25s, background .25s;
  box-sizing: border-box;
  -webkit-appearance: none;
  border-radius: 0;
}
.cta-form input::placeholder,
.cta-form textarea::placeholder {
  color: rgba(237,237,237,.45);
  letter-spacing: .12em;
  text-transform: uppercase;
  font-size: 10px;
}
.cta-form input:focus,
.cta-form textarea:focus {
  border-color: rgba(240,90,40,.6);
  background: rgba(240,90,40,.03);
}
/* Submit row */
.cta-form-submit-row {
  grid-column: 1 / 3;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  border: 1px solid rgba(237,237,237,.2);
  border-top: none;
  padding: 0;
  height: 56px;
}
.cta-form-label {
  display: block;
  font-size: 9px;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: rgba(237,237,237,.22);
  font-family: var(--body);
  margin-top: 10px;
  grid-column: 1 / 3;
  text-align: left;
  padding-left: 2px;
}
.cta-form button[type="submit"] {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 11px;
  letter-spacing: .18em;
  text-transform: uppercase;
  background: var(--orange);
  color: #fff;
  padding: 0 32px;
  border: none;
  font-family: var(--body);
  font-weight: 400;
  cursor: pointer;
  transition: gap .3s, opacity .2s;
  white-space: nowrap;
  height: 100%;
  width: 100%;
  justify-content: center;
}
.cta-form button[type="submit"]:hover { gap: 14px; opacity: .9; }
.cta-form-success {
  display: none;
  grid-column: 1 / 3;
  font-size: 11px;
  letter-spacing: .16em;
  color: var(--orange);
  text-transform: uppercase;
  padding: 20px 22px;
  font-family: var(--body);
  border: 1px solid rgba(240,90,40,.35);
  border-top: none;
  background: rgba(240,90,40,.04);
}
@media(max-width:768px) {
  .cta-form { grid-template-columns: 1fr; max-width: 100%; }
  .cta-form input:nth-child(2) { grid-column: 1; border-right: 1px solid rgba(237,237,237,.2); border-bottom: none; }
  .cta-form input:nth-child(3) { grid-column: 1; border-top: none; border-right: 1px solid rgba(237,237,237,.2); }
  .cta-form textarea { grid-column: 1; }
  .cta-form-submit-row { grid-column: 1; }
  .cta-form-success { grid-column: 1; }
  .cta-form button[type="submit"] { width: 100%; justify-content: center; }
}

.footer-top-row1{flex-direction:column;align-items:center;gap:20px;}
  .footer-tagline{text-align:center;}
  .footer-nav{justify-content:center;gap:20px;}
  .footer-bottom{flex-direction:column;align-items:center;text-align:center;gap:16px;}
  .footer-social{justify-content:center;}

  /* Menu */
  #menu{flex-direction:column;overflow-y:auto;}
  .mp{flex:0 0 auto;border-right:none;border-bottom:1px solid rgba(8,8,8,.6);padding:28px 24px;transform:translateX(-100%);transition:transform .55s cubic-bezier(.76,0,.24,1);}
  .mp:nth-child(1){transition-delay:0s;}.mp:nth-child(2){transition-delay:.04s;}
  .mp:nth-child(3){transition-delay:.08s;}.mp:nth-child(4){transition-delay:.12s;}
  .mp:nth-child(5){transition-delay:.16s;}
  #menu.open .mp{transform:translateX(0);}
  #menu.ready:not(.open) .mp{transform:translateX(-100%);transition-delay:0s;}
  .mp-link{font-size:clamp(32px,10vw,48px);}
}
.footer-nav {
  position: static !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  background: none !important;
  border: none !important;
  padding: 0 !important;
}

/* ── CONTACT FORM ─────────────────────────────── */
.cta-form {
  width: 100%;
  max-width: 600px;
  margin-top: 48px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  margin-left: auto;
  margin-right: auto;
}
.cta-form input {
  background: transparent;
  border: 1px solid rgba(237,237,237,.2);
  border-right: none;
  color: var(--text);
  font-family: var(--body);
  font-size: 12px;
  font-weight: 300;
  letter-spacing: .1em;
  text-transform: uppercase;
  padding: 18px 22px;
  outline: none;
  transition: border-color .25s, background .25s;
  box-sizing: border-box;
  -webkit-appearance: none;
  border-radius: 0;
}
/* Name spans full width, company shares second row */
/* nth-child(1) = hidden input, so Name=2, Company=3 */
.cta-form input:nth-child(2) {
  grid-column: 1 / 2;
  border-right: none;
}
.cta-form input:nth-child(3) {
  grid-column: 2 / 3;
  border-right: 1px solid rgba(237,237,237,.2);
}
.cta-form textarea {
  grid-column: 1 / 3;
  background: transparent;
  border: 1px solid rgba(237,237,237,.2);
  border-top: none;
  color: var(--text);
  font-family: var(--body);
  font-size: 12px;
  font-weight: 300;
  letter-spacing: .06em;
  padding: 18px 22px;
  outline: none;
  resize: none;
  height: 120px;
  transition: border-color .25s, background .25s;
  box-sizing: border-box;
  -webkit-appearance: none;
  border-radius: 0;
}
.cta-form input::placeholder,
.cta-form textarea::placeholder {
  color: rgba(237,237,237,.45);
  letter-spacing: .12em;
  text-transform: uppercase;
  font-size: 10px;
}
.cta-form input:focus,
.cta-form textarea:focus {
  border-color: rgba(240,90,40,.6);
  background: rgba(240,90,40,.03);
}
/* Submit row */
.cta-form-submit-row {
  grid-column: 1 / 3;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  border: 1px solid rgba(237,237,237,.2);
  border-top: none;
  padding: 0;
  height: 56px;
}
.cta-form-label {
  display: block;
  font-size: 9px;
  letter-spacing: .2em;
  text-transform: uppercase;
  color: rgba(237,237,237,.22);
  font-family: var(--body);
  margin-top: 10px;
  grid-column: 1 / 3;
  text-align: left;
  padding-left: 2px;
}
.cta-form button[type="submit"] {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 11px;
  letter-spacing: .18em;
  text-transform: uppercase;
  background: var(--orange);
  color: #fff;
  padding: 0 32px;
  border: none;
  font-family: var(--body);
  font-weight: 400;
  cursor: pointer;
  transition: gap .3s, opacity .2s;
  white-space: nowrap;
  height: 100%;
  width: 100%;
  justify-content: center;
}
.cta-form button[type="submit"]:hover { gap: 14px; opacity: .9; }
.cta-form-success {
  display: none;
  grid-column: 1 / 3;
  font-size: 11px;
  letter-spacing: .16em;
  color: var(--orange);
  text-transform: uppercase;
  padding: 20px 22px;
  font-family: var(--body);
  border: 1px solid rgba(240,90,40,.35);
  border-top: none;
  background: rgba(240,90,40,.04);
}
@media(max-width:768px) {
  .cta-form { grid-template-columns: 1fr; max-width: 100%; }
  .cta-form input:nth-child(2) { grid-column: 1; border-right: 1px solid rgba(237,237,237,.2); border-bottom: none; }
  .cta-form input:nth-child(3) { grid-column: 1; border-top: none; border-right: 1px solid rgba(237,237,237,.2); }
  .cta-form textarea { grid-column: 1; }
  .cta-form-submit-row { grid-column: 1; }
  .cta-form-success { grid-column: 1; }
  .cta-form button[type="submit"] { width: 100%; justify-content: center; }
}

.footer-top-row1{display:flex;justify-content:space-between;align-items:center;gap:32px;flex-wrap:wrap;}
.footer-top{display:flex;flex-direction:column;gap:28px;margin-bottom:48px;}