:root{--paper:#f6f7ef;--paper2:#edf0e4;--green:#123c31;--deep:#082920;--lime:#caff36;--white:#fff;--muted:rgba(18,60,49,.55);--line:rgba(18,60,49,.20);--pad:clamp(18px,1.6vw,30px);--ease:cubic-bezier(.2,.78,.16,1);--header:78px}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper)}body{margin:0;background:var(--paper);color:var(--green);font-family:Arial,"Helvetica Neue",sans-serif;overflow-x:hidden;-webkit-font-smoothing:antialiased}body.locked{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}img,video{display:block}.page-pad{padding-left:var(--pad);padding-right:var(--pad)}::selection{background:var(--lime);color:var(--deep)}
.page-wipe{position:fixed;inset:0;z-index:9999;background:var(--green);transform-origin:top;transform:scaleY(1);pointer-events:none;animation:wipeOut .85s .08s var(--ease) forwards}@keyframes wipeOut{to{transform:scaleY(0)}}
.site-header{position:fixed;inset:0 0 auto;z-index:500;min-height:var(--header);padding:17px var(--pad) 13px;display:flex;justify-content:space-between;align-items:flex-start;gap:28px;background:rgba(246,247,239,.87);backdrop-filter:blur(18px);border-bottom:1px solid rgba(18,60,49,.10);transition:transform .45s var(--ease),background .35s,color .35s}.brand,.project-brand{display:inline-flex;align-items:center;font-size:16px;line-height:1;letter-spacing:-.055em;font-weight:750}.brand-thin{font-weight:340}.brand b,.project-brand b{width:7px;height:7px;background:var(--lime);margin:0 0 7px 6px}.nav-stack{display:grid;justify-items:end;gap:10px}.main-nav,.filters{display:flex;align-items:center;justify-content:flex-end}.main-nav{gap:24px}.filters{gap:13px}.main-nav a,.filters button{position:relative;border:0;background:none;padding:0;font-size:9px;line-height:1;letter-spacing:.075em;text-transform:uppercase;opacity:.48;cursor:pointer;transition:opacity .2s,color .2s}.main-nav a:before,.filters button:before{content:"";position:absolute;width:4px;height:4px;background:var(--lime);left:-9px;top:50%;margin-top:-2px;opacity:0;transform:scale(.2);transition:.28s var(--ease)}.main-nav a:hover,.filters button:hover,.main-nav a.is-active,.filters button.is-active{opacity:1}.main-nav a.is-active:before,.filters button.is-active:before{opacity:1;transform:scale(1)}
.load-reveal{opacity:0;transform:translateY(28px);animation:loadReveal .85s .12s var(--ease) forwards}.hero-title.load-reveal{animation-delay:.20s}.discipline.load-reveal{animation-delay:.30s}.hero-foot.load-reveal{animation-delay:.38s}.showreel.load-reveal{animation-delay:.48s}@keyframes loadReveal{to{opacity:1;transform:none}}.reveal{opacity:1;transform:none}.reveal.motion-pending{opacity:0;transform:translateY(34px)}.reveal.motion-pending.is-visible{opacity:1;transform:none;transition:opacity .85s var(--ease),transform .95s var(--ease)}
.hero{padding-top:calc(var(--header) + clamp(34px,5vw,82px))}.eyebrow,.hero-foot,.section-label,.section-head>p,.show-meta,.project-kicker,.project-intro-foot dt,.project-overview>span,figcaption,.contact-top,.contact-foot,.reel-meta{font-size:9px;line-height:1.2;letter-spacing:.09em;text-transform:uppercase}.eyebrow{display:flex;justify-content:space-between;padding-bottom:clamp(28px,4vw,66px);color:var(--muted)}.hero-title-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:30px;align-items:end}.hero-title{margin:0;display:flex;flex-direction:column;font-size:clamp(74px,13.8vw,242px);line-height:.69;letter-spacing:-.097em;font-weight:620}.hero-title span:last-child{margin-left:13.5%}.discipline{display:flex;flex-direction:column;align-items:flex-end;padding-bottom:.45vw;font-size:clamp(22px,2.45vw,42px);line-height:.86;letter-spacing:-.06em;font-weight:650}.discipline span:nth-child(2){opacity:.55}.discipline span:last-child{color:var(--lime);-webkit-text-stroke:.6px var(--green)}.hero-foot{margin-top:clamp(32px,4vw,62px);padding:12px 0 14px;border-top:1px solid var(--green);display:flex;justify-content:space-between;color:var(--muted)}.hero-foot b{color:var(--green)}
.showreel{position:relative;width:100%;height:min(70vw,850px);min-height:62vh;border:0;padding:0;background:var(--deep);overflow:hidden;color:white;cursor:none}.showreel video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.15s var(--ease),filter .5s;filter:saturate(.88) contrast(1.03)}.showreel:hover video{transform:scale(1.025);filter:saturate(1.02)}.media-tint{position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,25,19,.18),rgba(5,25,19,.02) 42%,rgba(5,25,19,.62))}.show-meta{position:absolute;z-index:2;left:var(--pad);right:var(--pad);display:flex;justify-content:space-between}.show-meta.top{top:18px}.show-meta.bottom{bottom:19px;align-items:flex-end}.show-meta strong{font-size:clamp(18px,2.2vw,38px);letter-spacing:-.045em}.accent{color:var(--lime);font-weight:750}.play-disc{position:absolute;z-index:3;left:50%;top:50%;width:clamp(82px,8.6vw,132px);height:clamp(82px,8.6vw,132px);display:grid;place-items:center;background:var(--lime);color:var(--deep);border-radius:50%;font-size:9px;letter-spacing:.08em;opacity:0;transform:translate(-50%,-50%) scale(.72);transition:.45s var(--ease)}.showreel:hover .play-disc{opacity:1;transform:translate(-50%,-50%) scale(1)}
.section-shell{padding-top:clamp(95px,10vw,164px)}.section-head{min-height:270px;display:grid;grid-template-columns:minmax(120px,18%) minmax(0,1fr) auto;gap:25px;align-items:end;padding-bottom:clamp(28px,3vw,46px)}.section-label{align-self:start;padding-top:7px;display:flex;align-items:center;gap:9px}.section-label i{width:7px;height:7px;background:var(--lime)}.section-head h2{margin:0;font-size:clamp(60px,8.9vw,156px);line-height:.72;letter-spacing:-.08em;font-weight:620}.section-head>p{margin:0;text-align:right;color:var(--muted)}
.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:var(--deep);overflow:hidden}.project-card{position:relative;aspect-ratio:1.34/1;border:0;padding:0;overflow:hidden;background:#213c34;color:white;text-align:left;cursor:none;opacity:1;transform:translateZ(0);transition:opacity .25s,transform .45s var(--ease)}.project-card.is-filtering-out{opacity:0;transform:scale(.975)}.project-card.is-filtering-in{animation:cardIn .62s var(--ease) both}@keyframes cardIn{from{opacity:0;transform:translateY(20px) scale(.985)}to{opacity:1;transform:none}}.project-card img,.project-card video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease),opacity .32s,filter .45s}.project-card img{z-index:1;filter:saturate(.9) contrast(1.04)}.project-card video{z-index:2;opacity:0;transform:scale(1.008)}.project-card.is-playing video{opacity:1}.project-card:hover img,.project-card:hover video{transform:scale(1.028)}.project-card:after{content:"";position:absolute;z-index:3;inset:0;background:linear-gradient(180deg,transparent 42%,rgba(5,22,17,.69));pointer-events:none}.project-meta{position:absolute;z-index:4;left:0;right:0;bottom:0;padding:clamp(14px,1.3vw,22px);display:grid;grid-template-columns:1fr auto;gap:16px;align-items:end;transition:transform .4s var(--ease)}.project-card:hover .project-meta{transform:translateY(-3px)}.project-client{display:block;margin-bottom:7px;font-size:8px;letter-spacing:.08em;text-transform:uppercase;opacity:.68}.project-title-text{display:block;font-size:clamp(16px,1.58vw,28px);line-height:.92;letter-spacing:-.045em;font-weight:560}.project-cat{display:flex;align-items:center;gap:7px;margin-top:10px;font-size:8px;letter-spacing:.07em;text-transform:uppercase;opacity:0;transform:translateY(5px);transition:.3s var(--ease)}.project-cat:before{content:"";width:5px;height:5px;background:var(--lime)}.project-card:hover .project-cat{opacity:1;transform:none}.project-no{padding:6px 7px 5px;background:var(--lime);color:var(--deep);font-size:8px;letter-spacing:.05em;font-weight:800}
.view-cursor{position:fixed;z-index:1200;left:0;top:0;width:78px;height:78px;margin:-39px 0 0 -39px;border-radius:50%;display:flex;align-items:center;justify-content:center;gap:5px;background:var(--lime);color:var(--deep);pointer-events:none;opacity:0;transform:scale(.48);transition:opacity .18s,transform .28s var(--ease);font-size:9px;letter-spacing:.08em;font-weight:760}.view-cursor small{font-size:8px}.view-cursor.visible{opacity:1;transform:scale(1)}
.studio{border-top:1px solid var(--line)}.studio-head{min-height:430px}.studio-head h2{font-size:clamp(76px,11.5vw,200px)}.studio-head em{font-style:normal;color:var(--lime);-webkit-text-stroke:1px var(--green)}.studio-intro{padding-top:clamp(75px,8vw,130px);padding-bottom:clamp(80px,9vw,145px);display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(50px,8vw,150px);background:var(--green);color:white}.studio-lead{margin:0;font-size:clamp(36px,4.7vw,82px);line-height:.92;letter-spacing:-.055em;font-weight:540}.studio-copy{margin:4px 0 0;max-width:540px;font-size:clamp(15px,1.35vw,20px);line-height:1.55;color:rgba(255,255,255,.72)}.capabilities{padding-top:56px;padding-bottom:80px}.capabilities>div{display:grid;grid-template-columns:70px minmax(200px,.8fr) 1fr auto;gap:18px;align-items:center;padding:19px 0;border-top:1px solid var(--line);transition:padding-left .35s var(--ease),background .25s}.capabilities>div:last-child{border-bottom:1px solid var(--line)}.capabilities>div:hover{padding-left:12px}.capabilities span{font-size:9px;color:var(--muted)}.capabilities strong{font-size:clamp(19px,2vw,31px);letter-spacing:-.04em}.capabilities p{margin:0;font-size:11px;color:var(--muted)}.capabilities b{font-size:18px;color:var(--lime);-webkit-text-stroke:.5px var(--green)}.lime-band{margin-top:50px;min-height:56vw;padding:var(--pad);background:var(--lime);color:var(--deep);display:grid;grid-template-columns:1fr 2fr 1fr;gap:20px;align-items:end}.lime-band span{font-size:9px;letter-spacing:.08em}.lime-band span:last-child{text-align:right}.lime-band strong{font-size:clamp(56px,9.4vw,166px);line-height:.76;letter-spacing:-.08em;font-weight:620}
.contact{padding-top:0;background:var(--deep);color:white}.contact-top{padding-top:20px;display:flex;justify-content:space-between;color:rgba(255,255,255,.58)}.section-label.light i{background:var(--lime)}.contact-main{min-height:83vh;padding-top:clamp(100px,11vw,180px);padding-bottom:70px;display:grid;grid-template-columns:1fr auto;gap:50px;align-items:end}.contact-main h2{margin:0;font-size:clamp(66px,10vw,176px);line-height:.73;letter-spacing:-.08em;font-weight:620}.contact-main h2 em{font-style:normal;color:var(--lime)}.contact-info{min-width:min(440px,31vw);padding-bottom:1vw}.contact-info>span{font-size:9px;letter-spacing:.09em;color:rgba(255,255,255,.55)}.contact-info a{display:block;margin:18px 0 38px;padding-bottom:13px;border-bottom:1px solid rgba(255,255,255,.36);font-size:clamp(16px,1.35vw,22px);letter-spacing:-.03em}.contact-info a b{float:right;color:var(--lime)}.contact-info p{font-size:9px;letter-spacing:.09em;color:rgba(255,255,255,.55)}.contact-foot{padding-top:16px;padding-bottom:16px;border-top:1px solid rgba(255,255,255,.16);display:flex;justify-content:space-between;color:rgba(255,255,255,.5)}
.project-view,.reel-view{position:fixed;inset:0;z-index:900;background:var(--paper);overflow:auto;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .2s}.project-view.open,.reel-view.open,.project-view:target,.reel-view:target{visibility:visible;opacity:1;pointer-events:auto}.project-view-inner{min-height:100%}.project-header{position:sticky;top:0;z-index:10;height:72px;padding:17px var(--pad);display:flex;justify-content:space-between;background:rgba(246,247,239,.93);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.project-header.dark{background:rgba(8,41,32,.94);color:white;border-bottom-color:rgba(255,255,255,.12)}.project-close,.reel-close{border:0;background:none;cursor:pointer;font-size:9px;letter-spacing:.08em}.project-close span,.reel-close span{font-size:18px;margin-left:9px}.project-intro{padding-top:clamp(66px,7vw,110px);padding-bottom:clamp(52px,6vw,92px)}.project-kicker{display:grid;grid-template-columns:110px 1fr auto;color:var(--muted);border-bottom:1px solid var(--line);padding-bottom:11px}.project-kicker span:first-child{color:var(--green);font-weight:800}.project-intro h2{margin:clamp(32px,4vw,62px) 0;font-size:clamp(72px,10.6vw,190px);line-height:.75;letter-spacing:-.085em;font-weight:620;max-width:92%}.project-intro-foot{display:grid;grid-template-columns:1.1fr .9fr;gap:60px}.project-intro-foot>p{margin:0;max-width:700px;font-size:clamp(18px,1.8vw,28px);line-height:1.18;letter-spacing:-.035em}.project-intro-foot dl{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:26px}.project-intro-foot dl div{border-top:1px solid var(--line);padding-top:10px}.project-intro-foot dt{color:var(--muted)}.project-intro-foot dd{margin:9px 0 0;font-size:13px}.project-hero{position:relative;height:min(75vw,900px);background:var(--deep);overflow:hidden}.project-hero video,.project-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.project-hero video{z-index:2}.project-hero img{z-index:1}.project-hero>span{position:absolute;z-index:3;bottom:15px;left:var(--pad);font-size:8px;letter-spacing:.08em;color:white}.project-overview{padding-top:clamp(90px,10vw,160px);padding-bottom:clamp(90px,10vw,160px);display:grid;grid-template-columns:23% 1fr}.project-overview>span{color:var(--muted)}.project-overview p{margin:0;max-width:1100px;font-size:clamp(34px,4.4vw,76px);line-height:.98;letter-spacing:-.055em}.project-media{display:grid;grid-template-columns:1.35fr .65fr;gap:var(--pad);padding-bottom:var(--pad)}.project-media figure{position:relative;margin:0;min-height:42vw;overflow:hidden;background:var(--green);color:white}.project-media figure.wide{grid-column:1/-1;min-height:62vw}.project-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.project-media figcaption{position:absolute;z-index:3;left:14px;bottom:12px;color:white}.project-media .graphic{padding:28px;display:flex;flex-direction:column;justify-content:space-between}.graphic>span{font-size:9px;color:var(--lime)}.graphic>div{display:grid;gap:9px}.graphic>div i{height:1px;background:rgba(255,255,255,.35)}.graphic strong{font-size:clamp(44px,6vw,100px);line-height:.76;letter-spacing:-.06em}.project-media .lime{padding:28px;background:var(--lime);color:var(--deep);display:flex;flex-direction:column;justify-content:space-between}.project-media .lime>span{font-size:9px;letter-spacing:.08em}.project-media .lime strong{font-size:clamp(42px,5.3vw,92px);line-height:.82;letter-spacing:-.06em}.project-media .lime figcaption{color:var(--deep)}.next-project{width:100%;min-height:48vw;border:0;padding:var(--pad);background:var(--lime);color:var(--deep);display:grid;grid-template-columns:1fr 2fr auto;gap:20px;align-items:end;text-align:left;cursor:pointer}.next-project>span{font-size:9px;letter-spacing:.08em}.next-project strong{font-size:clamp(54px,8.5vw,150px);line-height:.76;letter-spacing:-.08em}.next-project i{font-style:normal;font-size:clamp(40px,6vw,100px)}
.transition-clone{position:fixed;z-index:1400;overflow:hidden;background:var(--deep);pointer-events:none;will-change:top,left,width,height,border-radius}.transition-clone img{width:100%;height:100%;object-fit:cover}
.project-view.open .project-kicker,.project-view.open .project-intro h2,.project-view.open .project-intro-foot{animation:detailIn .8s var(--ease) both}.project-view.open .project-intro h2{animation-delay:.08s}.project-view.open .project-intro-foot{animation-delay:.16s}@keyframes detailIn{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}
.reel-view{background:var(--deep);color:white}.reel-meta{padding-top:28px;padding-bottom:28px;display:flex;justify-content:space-between;color:rgba(255,255,255,.56)}.reel-media{height:70vh;min-height:520px}.reel-media video{width:100%;height:100%;object-fit:cover}.reel-title{padding-top:55px;padding-bottom:85px;display:flex;justify-content:space-between;align-items:end}.reel-title h2{margin:0;font-size:clamp(82px,12vw,210px);line-height:.72;letter-spacing:-.08em}.reel-title h2 em{font-style:normal;color:var(--lime)}.reel-title p{font-size:9px;color:rgba(255,255,255,.5)}
@media(max-width:900px){:root{--header:68px}.filters{display:none}.hero-title-row{grid-template-columns:1fr}.discipline{margin-top:28px;align-items:flex-start;flex-direction:row;gap:10px}.section-head{grid-template-columns:1fr;min-height:auto}.section-head h2{margin:85px 0 18px}.section-head>p{text-align:left}.project-grid{grid-template-columns:repeat(2,1fr)}.studio-intro{grid-template-columns:1fr}.capabilities>div{grid-template-columns:45px 1fr auto}.capabilities p{display:none}.lime-band{grid-template-columns:1fr;min-height:75vh}.lime-band span:last-child{text-align:left}.contact-main{grid-template-columns:1fr}.contact-info{min-width:0}.project-intro-foot,.project-overview{grid-template-columns:1fr}.project-media{grid-template-columns:1fr}.project-media figure.wide{grid-column:auto}.next-project{grid-template-columns:1fr;min-height:65vh}}
@media(max-width:620px){.site-header{padding-top:15px}.main-nav{gap:16px}.brand{font-size:14px}.hero{padding-top:calc(var(--header) + 28px)}.eyebrow span:last-child{display:none}.hero-title{font-size:clamp(67px,22vw,120px)}.hero-title span:last-child{margin-left:8%}.showreel{min-height:58vh}.project-grid{grid-template-columns:1fr}.section-shell{padding-top:82px}.section-head h2{font-size:19vw}.studio-head h2{font-size:25vw}.studio-intro{padding-top:65px;padding-bottom:70px}.studio-lead{font-size:12vw}.lime-band strong{font-size:19vw}.contact-main h2{font-size:20vw}.view-cursor{display:none}.project-kicker{grid-template-columns:60px 1fr}.project-kicker span:last-child{display:none}.project-intro h2{font-size:20vw}.project-overview p{font-size:10.5vw}.project-media figure{min-height:78vw}.project-media figure.wide{min-height:100vw}.next-project strong{font-size:16vw}.reel-media{min-height:58vh}.reel-title{display:block}.reel-title p{margin-top:28px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

.fallback-card{cursor:pointer}.fallback-card video{display:none}

/* ===== V05 BRAND / LIME TOP-BAND SYSTEM ===== */
:root{--header:82px}
.site-header{min-height:var(--header);padding:14px var(--pad) 12px;background:rgba(8,41,32,.96);color:#fff;border-bottom:1px solid rgba(202,255,54,.14);backdrop-filter:blur(20px)}
.brand-mark{display:flex;align-items:center;overflow:visible;min-width:0}
.brand-mark img{display:block;width:clamp(210px,15vw,285px);height:auto;object-fit:contain;object-position:left center}
.site-header .main-nav a,.site-header .filters button{color:#fff}
.site-header .main-nav a,.site-header .filters button{opacity:.58}.site-header .main-nav a:hover,.site-header .filters button:hover,.site-header .main-nav a.is-active,.site-header .filters button.is-active{opacity:1}
.hero{padding-top:calc(var(--header) + clamp(20px,2.2vw,34px))}
.hero-copy .eyebrow{margin-left:calc(var(--pad) * -1);margin-right:calc(var(--pad) * -1);margin-bottom:clamp(34px,4.4vw,72px);padding:15px var(--pad) 14px;background:var(--lime);color:var(--deep)}
.work.section-shell,.studio.section-shell,.contact.section-shell{padding-top:0}
.lime-page-head{min-height:clamp(390px,48vw,760px);padding-top:clamp(32px,3.2vw,52px);padding-bottom:var(--pad);background:var(--lime);color:var(--deep)}
.lime-page-head .section-label i{background:var(--deep)}
.lime-page-head .section-label,.lime-page-head>p{color:rgba(8,41,32,.66)}
.lime-page-head h2{font-size:clamp(72px,10.4vw,184px);line-height:.72}
.studio-head{min-height:clamp(430px,52vw,820px)}
.studio-head h2{font-size:clamp(84px,12vw,210px)}
.studio-head em{color:var(--deep);-webkit-text-stroke:0}
.studio-intro{margin-top:0}
/* The old lower lime band is intentionally removed in V05; lime now acts as a page-opening signature. */
.contact{background:var(--deep);color:#fff}
.contact-banner{min-height:clamp(430px,53vw,820px);padding-top:clamp(34px,3.5vw,58px);padding-bottom:var(--pad);background:var(--lime);color:var(--deep);display:grid;grid-template-columns:minmax(120px,18%) minmax(0,1fr) auto;gap:25px;align-items:end}
.contact-banner .section-label{align-self:start;color:rgba(8,41,32,.7)}
.contact-banner .section-label i{background:var(--deep)}
.contact-banner h2{margin:0;font-size:clamp(72px,10.4vw,184px);line-height:.72;letter-spacing:-.08em;font-weight:620}
.contact-banner h2 em{font-style:normal;color:var(--deep)}
.contact-banner>p{margin:0;text-align:right;font-size:9px;line-height:1.2;letter-spacing:.09em;color:rgba(8,41,32,.65);text-transform:uppercase}
.contact-main{min-height:54vh;padding-top:clamp(82px,8vw,130px);padding-bottom:clamp(70px,7vw,110px);display:grid;grid-template-columns:1fr auto;gap:70px;align-items:end;background:var(--deep)}
.contact-statement{margin:0;font-size:clamp(34px,4.7vw,82px);line-height:.91;letter-spacing:-.055em;font-weight:540;color:#fff}
.contact-info{min-width:min(460px,32vw);padding-bottom:.6vw}
.contact-info a{text-transform:none}
.project-header{height:76px;padding:12px var(--pad);background:rgba(8,41,32,.97);color:#fff;border-bottom:1px solid rgba(255,255,255,.12)}
.project-header.dark{background:rgba(8,41,32,.97)}
.project-header .brand-mark img{width:clamp(190px,13vw,250px)}
.project-close,.reel-close{color:#fff}
.project-lime-head{background:var(--lime);color:var(--deep)}
.project-lime-head .project-kicker{color:rgba(8,41,32,.62);border-bottom-color:rgba(8,41,32,.24)}
.project-lime-head .project-kicker span:first-child{color:var(--deep)}
.project-lime-head .project-intro-foot dl div{border-top-color:rgba(8,41,32,.24)}
.project-lime-head .project-intro-foot dt{color:rgba(8,41,32,.62)}
.reel-lime-head{padding:22px var(--pad);background:var(--lime);color:rgba(8,41,32,.72)}
.reel-view .reel-lime-head{color:rgba(8,41,32,.72)}
@media(max-width:900px){
  :root{--header:74px}
  .brand-mark img{width:220px}
  .lime-page-head,.contact-banner{grid-template-columns:1fr;min-height:68vh}
  .lime-page-head h2,.contact-banner h2{margin:70px 0 12px}
  .lime-page-head>p,.contact-banner>p{text-align:left}
  .contact-main{grid-template-columns:1fr}
  .contact-info{min-width:0}
}
@media(max-width:620px){
  .site-header{padding-top:11px;padding-bottom:10px;align-items:flex-start}
  .brand-mark img{width:178px}
  .hero{padding-top:calc(var(--header) + 18px)}
  .hero-copy .eyebrow{margin-bottom:30px;padding-top:12px;padding-bottom:12px}
  .lime-page-head,.contact-banner{min-height:62vh;padding-top:24px}
  .lime-page-head h2,.contact-banner h2{font-size:19vw}
  .studio-head h2{font-size:24vw}
  .contact-statement{font-size:11.5vw}
  .project-header .brand-mark img{width:166px}
}


/* ===== V06 TYPOGRAPHY / HERO / CONTACT ===== */
body{font-family:"Pretendard Variable","Pretendard",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-weight:500}
.site-header{font-weight:500}
.brand-mark img{width:clamp(235px,17vw,320px)}
.main-nav a,.filters button,.eyebrow,.hero-band,.show-meta,.section-label,.section-head>p,.project-kicker,.project-intro-foot dt,.project-overview>span,figcaption,.contact-foot,.reel-meta,.contact-eyebrow,.contact-location span,.project-form label>span{font-weight:500}
.section-head h2,.studio-head h2,.contact-banner h2,.project-intro h2,.project-overview p,.next-project strong,.reel-title h2,.graphic strong,.project-media .lime strong{font-weight:700}
.show-meta strong,.project-title-text,.studio-lead,.contact-email,.contact-location strong,.capabilities strong,.form-submit{font-weight:600}
.studio-copy,.project-intro-foot>p,.contact-direct>p,.project-form input,.project-form select,.project-form textarea{font-weight:500}

/* Header is the only persistent company-name treatment: supplied logo image only. */
.hero{padding-top:var(--header)}
.hero-band{margin:0;padding:14px var(--pad) 13px;background:var(--lime);color:var(--deep);display:flex;justify-content:space-between;align-items:center;font-size:9px;line-height:1.2;letter-spacing:.09em;text-transform:uppercase}
.hero .showreel{margin:0}
.showreel.load-reveal{animation-delay:.12s}

/* Contact: lime opening statement + clean project brief form. */
.contact{background:var(--paper);color:var(--green)}
.contact-banner{min-height:clamp(360px,43vw,690px)}
.contact-banner h2{font-size:clamp(76px,11vw,194px);font-weight:700}
.contact-body{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);gap:clamp(55px,8vw,150px);padding-top:clamp(75px,8vw,130px);padding-bottom:clamp(90px,10vw,160px);background:var(--paper)}
.contact-direct{position:sticky;top:calc(var(--header) + 34px);align-self:start}
.contact-eyebrow{display:block;margin-bottom:17px;font-size:9px;letter-spacing:.09em;color:var(--muted)}
.contact-email{display:block;padding:0 0 14px;border-bottom:1px solid var(--green);font-size:clamp(20px,2vw,34px);line-height:1;letter-spacing:-.04em;text-transform:none}
.contact-email b{float:right;color:var(--green)}
.contact-location{display:grid;gap:8px;margin-top:40px}.contact-location span{font-size:9px;letter-spacing:.09em;color:var(--muted)}.contact-location strong{font-size:15px;letter-spacing:-.02em}
.contact-direct>p{max-width:420px;margin:70px 0 0;font-size:13px;line-height:1.65;color:var(--muted)}
.project-form{display:grid;border-top:1px solid var(--green)}
.form-grid{display:grid}.form-grid.two{grid-template-columns:1fr 1fr}
.project-form label{position:relative;display:grid;gap:14px;padding:21px 0 22px;border-bottom:1px solid var(--line)}
.form-grid.two label:nth-child(odd){padding-right:24px;border-right:1px solid var(--line)}
.form-grid.two label:nth-child(even){padding-left:24px}
.project-form label>span{font-size:9px;line-height:1;letter-spacing:.09em;color:var(--muted)}
.project-form input,.project-form select,.project-form textarea{width:100%;border:0;outline:0;padding:0;background:transparent;color:var(--green);font-family:inherit;font-size:clamp(17px,1.5vw,23px);line-height:1.3;letter-spacing:-.025em;border-radius:0}
.project-form input::placeholder,.project-form textarea::placeholder{color:rgba(18,60,49,.3)}
.project-form select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--green) 50%),linear-gradient(135deg,var(--green) 50%,transparent 50%);background-position:calc(100% - 10px) 50%,calc(100% - 5px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:24px}
.project-form textarea{resize:vertical;min-height:160px}
.project-form .brief{padding-top:28px;padding-bottom:28px}
.form-submit{margin-top:32px;border:0;padding:20px 22px;background:var(--green);color:#fff;display:flex;justify-content:space-between;align-items:center;font-size:12px;letter-spacing:.06em;cursor:pointer;transition:background .25s,color .25s,transform .25s var(--ease)}
.form-submit b{color:var(--lime);font-size:18px}.form-submit:hover{background:var(--lime);color:var(--deep);transform:translateY(-2px)}.form-submit:hover b{color:var(--deep)}
.contact-foot{background:var(--deep);color:rgba(255,255,255,.55);border-top:0}

@media(max-width:900px){
 .brand-mark img{width:225px}
 .contact-body{grid-template-columns:1fr;gap:65px}
 .contact-direct{position:static}
 .contact-direct>p{margin-top:35px}
}
@media(max-width:620px){
 .brand-mark img{width:180px}
 .hero-band{padding-top:12px;padding-bottom:12px}
 .hero-band span:last-child{display:none}
 .form-grid.two{grid-template-columns:1fr}
 .form-grid.two label:nth-child(odd){padding-right:0;border-right:0}
 .form-grid.two label:nth-child(even){padding-left:0}
 .contact-banner h2{font-size:20vw}
 .contact-email{font-size:5.3vw}
}


/* ===== V07 / WIDE DISPLAY TYPE + CONTACT UPLOAD + PUBLIC FOOTER ===== */
/* Pretendard remains the only UI typeface. Display text is optically widened to echo the supplied grotesk reference. */
.section-head h2,
.studio-head h2,
.contact-banner h2,
.project-intro h2,
.next-project strong,
.reel-title h2,
.studio-lead {
  font-weight:800;
  line-height:.79;
  letter-spacing:-.072em;
  width:91.75%;
  transform:scaleX(1.09);
  transform-origin:left bottom;
  text-wrap:balance;
}
.studio-lead{max-width:1420px;font-size:clamp(42px,5.55vw,98px);line-height:.82}
.studio-intro{display:block;padding-top:clamp(72px,7.5vw,122px);padding-bottom:clamp(75px,8vw,132px)}
.capabilities strong{font-weight:700}

/* Contact attachments */
.attachment-field{padding:28px 0 24px;border-bottom:1px solid var(--line)}
.attachment-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin-bottom:18px}
.attachment-head>span{font-size:9px;line-height:1;letter-spacing:.09em;color:var(--muted);font-weight:500}
.attachment-head small{font-size:8px;line-height:1.35;letter-spacing:.07em;color:var(--muted);font-weight:500;text-align:right}
.attachment-add{display:flex!important;grid-template-columns:none!important;align-items:center;justify-content:space-between;gap:20px;padding:17px 18px!important;border:1px solid var(--green)!important;cursor:pointer;transition:background .25s,color .25s}
.attachment-add:hover{background:var(--green);color:#fff}
.attachment-add span{color:inherit!important;font-size:11px!important;font-weight:600!important;letter-spacing:.06em!important}
.attachment-add b{font-size:20px;line-height:1;font-weight:500}
.attachment-list{display:grid;margin-top:10px;border-top:1px solid transparent}
.file-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:16px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);font-size:11px}
.file-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}
.file-row small{font-size:9px;color:var(--muted);font-weight:500}
.file-remove{border:0;background:none;padding:4px 0 4px 12px;cursor:pointer;font-size:9px;letter-spacing:.06em;color:var(--green);font-weight:600}
.file-remove:hover{color:#000}
.form-submit[disabled]{opacity:.55;cursor:wait;transform:none}
.form-message{margin-top:16px;padding:24px 22px;display:grid;grid-template-columns:80px 1fr;gap:7px 20px;align-items:start}
.form-message[hidden]{display:none}
.form-message>span{grid-row:1/3;font-size:9px;letter-spacing:.09em;font-weight:700}
.form-message strong{font-size:clamp(20px,2vw,31px);line-height:1.05;letter-spacing:-.04em;font-weight:700}
.form-message p{margin:0;font-size:12px;line-height:1.5;font-weight:500}
.form-success{background:var(--lime);color:var(--deep)}
.form-error{background:#fff;border:1px solid var(--green);color:var(--green)}

/* Public-site information is re-composed as the terminal footer. Company identity is logo-only. */
.legacy-footer{background:var(--deep);color:#fff;padding-top:clamp(75px,8vw,135px);padding-bottom:22px}
.legacy-footer-top{display:grid;grid-template-columns:minmax(220px,.72fr) 1.28fr;gap:clamp(60px,10vw,190px);align-items:start;padding-bottom:clamp(90px,12vw,200px)}
.legacy-logo{display:block;width:clamp(230px,22vw,430px);height:auto}
.legacy-tagline{margin:0;color:var(--lime);font-size:clamp(56px,8.7vw,154px);font-weight:800;line-height:.78;letter-spacing:-.072em;width:91%;transform:scaleX(1.095);transform-origin:left top}
.legacy-footer-bottom{display:grid;grid-template-columns:1.35fr 1fr auto auto;gap:26px;align-items:end;padding-top:16px;border-top:1px solid rgba(255,255,255,.22);font-size:9px;line-height:1.25;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.62);font-weight:500}
.legacy-footer-bottom a:first-child{text-transform:none;font-size:12px;letter-spacing:-.01em;color:#fff}
.legacy-footer-bottom a:last-child{text-align:right;color:var(--lime)}

@media(max-width:900px){
  .section-head h2,.studio-head h2,.contact-banner h2,.project-intro h2,.next-project strong,.reel-title h2,.studio-lead{width:95.2%;transform:scaleX(1.05)}
  .legacy-footer-top{grid-template-columns:1fr;gap:60px}.legacy-tagline{width:95%;transform:scaleX(1.05)}
  .legacy-footer-bottom{grid-template-columns:1fr 1fr}.legacy-footer-bottom a:last-child{text-align:left}
}
@media(max-width:620px){
  .section-head h2,.studio-head h2,.contact-banner h2,.project-intro h2,.next-project strong,.reel-title h2,.studio-lead{width:97%;transform:scaleX(1.03);line-height:.82}
  .attachment-head{display:block}.attachment-head small{display:block;margin-top:10px;text-align:left}
  .file-row{grid-template-columns:minmax(0,1fr) auto}.file-row small{display:none}
  .form-message{grid-template-columns:1fr}.form-message>span{grid-row:auto}
  .legacy-footer-top{padding-bottom:90px}.legacy-logo{width:210px}.legacy-tagline{font-size:18.7vw;width:97%;transform:scaleX(1.03)}
  .legacy-footer-bottom{grid-template-columns:1fr;gap:14px}.legacy-footer-bottom a:last-child{text-align:left}
}

/* V08 anti-spam honeypot: visually and interactively removed for real visitors. */
.form-hp{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
