@font-face{font-family:Freesentation;src:url('assets/fonts/Freesentation-4Regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Freesentation;src:url('assets/fonts/Freesentation-5Medium.woff2') format('woff2');font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:Freesentation;src:url('assets/fonts/Freesentation-6SemiBold.woff2') format('woff2');font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:Freesentation;src:url('assets/fonts/Freesentation-7Bold.woff2') format('woff2');font-style:normal;font-weight:700;font-display:swap}
:root{--paper:#ececec;--ink:#131313;--line:#bbbbbb;--accent:#fa5337}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans','Noto Sans KR',Arial,sans-serif;-webkit-font-smoothing:antialiased}body.locked{overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;border:0}a{color:inherit;text-decoration:none}button{cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:6px}::selection{background:var(--accent);color:white}button:disabled{cursor:default}.skip{position:fixed;top:-100px;left:20px;z-index:1000;background:white;padding:15px}.skip:focus{top:15px}.header{position:absolute;top:0;left:0;width:100%;display:flex;align-items:center;padding:32px 3.2%;gap:40px;z-index:10;color:white}.wordmark{font-size:29px;font-weight:700;letter-spacing:-1.7px;white-space:nowrap}.logo-dot{font-size:12px;vertical-align:top;display:inline-block;margin:4px 0 0 4px;letter-spacing:0}.header-caption{font-size:10px;letter-spacing:.08em;margin-left:auto}nav{display:flex;gap:28px;font-size:14px;font-weight:600;margin-left:auto}nav a{position:relative}nav a:after{content:'';position:absolute;left:0;bottom:-7px;width:0;height:1px;background:currentColor;transition:width .2s}nav a:hover:after{width:100%}.menu-toggle{display:none}.hero{min-height:620px;height:100svh;max-height:1200px;background:#616161;position:relative;color:#fff;display:flex;align-items:center;justify-content:center}.hero-placeholder{display:flex;flex-direction:column;align-items:center;gap:20px;color:#dcdcdc;font-size:10px;letter-spacing:.16em}.crosshair{font-size:32px;font-weight:400;line-height:1}.hero-bottom{position:absolute;bottom:7%;left:3.2%;right:3.2%;display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:20px}.micro{font-size:10px;letter-spacing:.035em;font-weight:500;line-height:1.6}.hero-index{line-height:1.7}.reel-button{background:transparent;border:1.5px solid white;border-radius:100px;color:white;padding:24px 38px;font-size:15px;font-weight:700;display:flex;gap:32px;align-items:center;transition:background .2s,color .2s}.reel-button:hover{background:white;color:#222}.scroll-link{text-align:right}.section{padding:70px 3.2% 0}.eyebrow{display:flex;justify-content:space-between;font-size:10px;line-height:1.6;letter-spacing:.02em}.section-heading{margin:40px 0 70px}h1,.big-title{font-size:clamp(76px,14.3vw,245px);font-weight:500;line-height:.94;letter-spacing:-.075em;margin:0}.heading-dot{color:var(--accent)}.section-links{display:flex;gap:32px;justify-content:flex-end;margin-top:28px;font-size:16px}.section-links .active{text-decoration:underline;text-underline-offset:6px}.section-links sup{font-size:10px}.project{margin-bottom:80px}.project-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.project-heading h2{font-size:clamp(23px,3vw,44px);line-height:1.1;letter-spacing:-.045em;font-weight:500;margin:0}.project-heading>span{font-size:10px}.project-visual{width:100%;aspect-ratio:16/8.7;position:relative;display:block;overflow:hidden;text-align:left;background:#b2b2b2;color:#333333;transition:background .3s}.shade-two{background:#808080;color:#f1f1f1}.shade-three{background:#c8c8c8;color:#434343}.frame{position:absolute;inset:5%;border:1px solid currentColor;opacity:.2;transition:inset .4s}.project-visual:hover .frame{inset:4%}.visual-index{position:absolute;top:7%;left:7%;font-size:clamp(70px,14vw,210px);line-height:1;letter-spacing:-.08em;opacity:.2}.visual-center{position:absolute;inset:0;display:flex;justify-content:center;align-items:center;flex-direction:column;gap:12px;font-size:10px;letter-spacing:.15em}.visual-center>span{font-size:30px;font-weight:400}.visual-meta,.aspect{position:absolute;bottom:7%;font-size:9px;letter-spacing:.06em}.visual-meta{left:7%}.aspect{right:7%}.touch-cta{display:none}.project-caption{display:flex;justify-content:space-between;font-size:11px;margin-top:14px;gap:20px}.project-caption span:last-child{color:#616161}.studio{padding-top:70px;border-top:1px solid var(--line)}.big-title{margin:40px 0 65px;font-size:clamp(70px,14vw,220px)}.studio-images{display:grid;grid-template-columns:1.5fr 1fr;gap:20px;align-items:start}.studio-image{height:520px;background:#a6a6a6;position:relative;padding:22px;font-size:9px;letter-spacing:.08em}.studio-image.secondary{height:370px;background:#c5c5c5}.studio-image i{position:absolute;left:50%;top:50%;font-size:30px;font-style:normal;color:#757575;transform:translate(-50%,-50%)}.studio-copy,.services{display:grid;grid-template-columns:1fr 2fr;gap:40px;padding:75px 0;border-bottom:1px solid var(--line)}.studio-copy h3{font-size:clamp(27px,3.4vw,53px);line-height:1.45;letter-spacing:-.055em;font-weight:500;margin:0 0 25px}.studio-copy p{font-size:14px;line-height:1.9;color:#5e5e5e;margin:0}.services{border:0;padding-bottom:130px}.services>div>span{display:flex;justify-content:space-between;font-size:clamp(24px,3vw,43px);padding:14px 0;border-bottom:1px solid var(--line);letter-spacing:-.04em}.services b{font-weight:400;font-size:10px;letter-spacing:0;padding-top:12px}.demo-note{font-size:11px;color:#6a6a6a;margin-top:22px}.contact{background:#181818;color:#ececec;padding-top:44px}.talk{background:none;color:inherit;width:100%;display:flex;justify-content:space-between;align-items:center;font-size:clamp(76px,17vw,265px);letter-spacing:-.075em;line-height:1.1;padding:65px 0 85px;border-bottom:1px solid #4f4f4f;text-align:left;font-weight:500}.talk>span{font-weight:400;letter-spacing:-.02em;transition:transform .3s}.talk:hover>span{transform:translate(8px,-8px)}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px;padding:60px 0 90px}.footer-grid .micro{display:block;margin-bottom:24px;color:#acacac}.footer-grid p{font-size:18px;line-height:1.6;margin:0 0 10px;letter-spacing:-.02em}.footer-grid a{display:block;margin-bottom:9px;font-size:14px}.muted{font-size:12px;color:#aaa}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #4f4f4f;padding:22px 0;font-size:9px;letter-spacing:.04em}.footer-bottom button{background:none;color:#d0d0d0;font-size:10px;padding:6px 0}.cursor-label{position:fixed;top:0;left:0;z-index:200;display:flex;gap:25px;align-items:center;background:var(--paper);color:#151515;padding:14px 18px;font-size:11px;font-weight:600;letter-spacing:.025em;pointer-events:none;opacity:0;transition:opacity .14s;white-space:nowrap;box-shadow:0 2px 16px #0000000a;will-change:transform}.cursor-label.visible{opacity:1}body.custom-cursor [data-cursor]:hover{cursor:pointer}dialog{background:var(--paper);color:var(--ink);width:min(950px,92vw);max-height:90svh;border:0;padding:65px 35px 35px}dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}.close-dialog{position:absolute;right:24px;top:20px;background:none;font-size:12px;padding:10px}.dialog-eyebrow{font-size:10px;letter-spacing:.08em;margin:0 0 25px}dialog h2{font-size:clamp(35px,6vw,75px);font-weight:500;letter-spacing:-.06em;line-height:1;margin:0 0 30px}.dialog-visual{aspect-ratio:16/9;background:#a8a8a8;display:grid;place-items:center;font-size:11px;letter-spacing:.12em;color:#444}.dialog-copy{font-size:14px;line-height:1.9;color:#575757;margin:25px 0 0}.dialog-link{display:inline-block;background:#191919;color:white;padding:14px 20px;margin-top:24px;font-size:13px}.dialog-details{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:25px;font-size:12px}.dialog-details span{display:block;color:#666;margin-top:8px}@media(min-width:1600px){.section{padding-left:5%;padding-right:5%}}@media(max-width:900px){.header{gap:20px}.header-caption{display:none}.studio-image{height:360px}.studio-image.secondary{height:260px}.hero-bottom{grid-template-columns:1fr;justify-items:center;bottom:7%}.hero-index{display:none}.scroll-link{margin-top:15px}.section{padding-top:50px}.studio-copy,.services{grid-template-columns:1fr 2fr;gap:25px}.project{margin-bottom:60px}}@media(max-width:600px){html{scroll-padding-top:25px}.header{padding:24px 22px;align-items:flex-start;justify-content:space-between}.wordmark{font-size:26px}.menu-toggle{display:flex;flex-direction:column;gap:6px;background:none;width:36px;height:36px;justify-content:center;padding:3px;z-index:12}.menu-toggle span{width:30px;height:1px;background:currentColor;transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}nav{display:none;position:absolute;top:0;left:0;width:100%;height:100svh;background:#262626;flex-direction:column;justify-content:center;padding:70px 35px;gap:24px;font-size:45px;font-weight:500;letter-spacing:-.04em}nav.open{display:flex}.hero{min-height:560px;max-height:960px}.hero-placeholder{font-size:8px}.hero-bottom{bottom:10%}.reel-button{padding:22px 28px;font-size:14px;gap:20px}.scroll-link{font-size:8px}.section{padding-left:20px;padding-right:20px}.eyebrow{font-size:8px;gap:10px}.eyebrow>span:last-child{text-align:right}.section-heading{margin:30px 0 45px}h1{font-size:20vw}.section-links{font-size:13px;gap:20px;margin-top:25px;justify-content:flex-start}.project-heading{margin-bottom:12px}.project-heading>span{font-size:8px}.project-visual{aspect-ratio:4/3}.visual-index{font-size:24vw}.visual-center{font-size:8px}.visual-meta,.aspect{font-size:7px}.project-caption{font-size:9px}.project-caption span:last-child{font-size:8px}.project{margin-bottom:45px}.touch-cta{display:block;position:absolute;right:7%;top:8%;font-size:8px}.big-title{font-size:19vw;margin:35px 0 40px}.studio-images{gap:10px;grid-template-columns:1.3fr 1fr}.studio-image{height:240px;padding:12px;font-size:7px}.studio-image.secondary{height:175px}.studio-copy,.services{display:block;padding:40px 0}.studio-copy>.micro,.services>.micro{display:block;margin-bottom:28px}.studio-copy h3{font-size:27px}.studio-copy p{font-size:12px}.services{padding-bottom:65px}.services>div>span{font-size:25px}.demo-note{font-size:9px}.contact{padding-top:30px}.talk{font-size:20vw;padding:55px 0}.footer-grid{grid-template-columns:1fr 1fr;padding:40px 0;gap:30px}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid .micro{font-size:8px;margin-bottom:15px}.footer-grid p{font-size:16px}.footer-grid a{font-size:12px}.footer-bottom{flex-wrap:wrap;font-size:8px;gap:12px}.footer-bottom button{font-size:9px}.cursor-label{display:none}dialog{padding:60px 20px 25px}.dialog-copy{font-size:12px}.dialog-details{font-size:10px}}
@media(hover:none),(pointer:coarse){.cursor-label{display:none}.touch-cta{display:block;position:absolute;right:7%;top:8%;font-size:10px}body.custom-cursor [data-cursor]:hover{cursor:pointer}#cursor-toggle{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Centered reference navigation and text-only project pointer label. */
.header nav{position:absolute;left:50%;top:38px;transform:translateX(-50%);margin:0;justify-content:center;gap:26px;white-space:nowrap}
.nav-reel{background:none;padding:0;color:inherit;font:inherit;font-weight:inherit}
.nav-reel:hover{text-decoration:underline;text-underline-offset:7px}
.menu-toggle{display:none!important}
.cursor-label{background:transparent;box-shadow:none;padding:0;gap:0;color:#fff;font-size:12px;font-weight:500;mix-blend-mode:difference}
@media(max-width:900px){.header nav{display:flex;top:76px;width:260px;max-width:80vw;flex-wrap:wrap;gap:15px 25px;height:auto;background:none;padding:0;flex-direction:row;font-size:14px;font-weight:600;letter-spacing:0}.header{padding-top:25px}.wordmark{font-size:23px}}
@media(max-width:600px){.header nav{top:80px;left:50%;width:240px;gap:14px 24px}.header nav a,.nav-reel{line-height:1.5}.header{padding:24px 22px}.wordmark{font-size:22px}}
/* Full-bleed YouTube hero with a thumbnail fallback. */
.hero{overflow:hidden;container-type:size;background:#252525}
.hero-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-video{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .5s}
.hero.video-ready .hero-video{opacity:1}
.hero-video iframe{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:max(100cqw,177.78cqh);height:max(100cqh,56.25cqw);border:0}
.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.38),rgba(0,0,0,0) 35%,rgba(0,0,0,.05) 65%,rgba(0,0,0,.5));pointer-events:none}
.hero-bottom{z-index:2}
.hero-playback{position:absolute;z-index:3;bottom:18px;right:3.2%;background:transparent;color:white;padding:8px;font-size:10px;text-shadow:0 1px 5px #000}
.hero-playback[hidden]{display:none}
dialog.is-reel{width:min(1120px,96vw);background:#161616;color:white}
dialog.is-reel .reel-title{font-size:30px;letter-spacing:-.02em;margin-bottom:20px}
.reel-player{aspect-ratio:16/9;min-height:200px;background:#000}
.reel-player iframe{display:block;width:100%;height:100%;border:0}
.youtube-link{display:inline-block;font-size:12px;margin-top:20px;color:#ccc;text-decoration:underline;text-underline-offset:4px}
@media(max-width:600px){dialog.is-reel{padding:60px 12px 24px}.hero-playback{font-size:9px;bottom:12px}}

/* Original transparent company logo; crop only its empty canvas in layout. */
.header .wordmark{display:block;line-height:0;flex-shrink:0}
.brand-crop{display:block;position:relative;overflow:hidden;width:110px;aspect-ratio:5400/4890;filter:drop-shadow(0 0 2px rgba(255,255,255,.65))}
.brand-crop img{position:absolute;width:154.315%;height:170.409%;max-width:none;left:-27.407%;top:-33.742%}
@media(max-width:900px){.brand-crop{width:88px}}
@media(max-width:600px){.brand-crop{width:76px}.header nav{top:108px}}
/* Refined logo alignment and opacity. */
.header .wordmark{transform:translateY(16px)}
.brand-crop{width:92px;opacity:.85;filter:drop-shadow(0 0 1px rgba(255,255,255,.4))}
.header nav{top:80px}
@media(max-width:900px){.brand-crop{width:76px}.header .wordmark{transform:translateY(22px)}.header nav{top:76px}}
@media(max-width:600px){.brand-crop{width:64px}.header .wordmark{transform:translateY(18px)}.header nav{top:116px}}
/* Scroll-driven sheets: each new opaque card covers the previous card. */
.hero{position:sticky;top:0;z-index:0}
.work{position:relative;z-index:1;background:var(--paper);box-shadow:0 -12px 35px rgba(0,0,0,.08)}
.projects{position:relative;isolation:isolate}
.projects .project{position:sticky;top:0;display:flex;flex-direction:column;height:100svh;min-height:440px;margin:0 0 35svh;padding:24px 0 18px;background:var(--paper);box-shadow:0 -18px 35px -24px rgba(0,0,0,.35)}
.projects .project:nth-child(1){z-index:1}
.projects .project:nth-child(2){z-index:2}
.projects .project:nth-child(3){z-index:3;margin-bottom:0}
.projects .project-heading{flex:none;margin-bottom:18px}
.projects .project-visual{flex:1;min-height:0;aspect-ratio:auto}
.projects .project-caption{flex:none}
.studio,.contact{position:relative;z-index:2}
.studio{background:var(--paper)}
@media(max-width:600px){.projects .project{min-height:380px;padding-top:20px;margin-bottom:25svh}.projects .project-heading{margin-bottom:14px}.projects .project:nth-child(3){margin-bottom:0}}
@media(prefers-reduced-motion:reduce){.hero,.projects .project{position:relative;top:auto}.projects .project{height:auto;min-height:0;margin-bottom:60px}.projects .project-visual{flex:none;aspect-ratio:16/9}.projects .project:nth-child(3){margin-bottom:0}}
/* Korean content, native video and rotating postcard sheets. */
body{overflow-x:clip}
.hero-native{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.reel-player video{display:block;width:100%;height:100%;object-fit:contain}
.work-intro{font-size:18px;line-height:1.8;margin:32px 0 0;letter-spacing:-.025em}
.project-filters{justify-content:flex-start;gap:26px;flex-wrap:wrap}
.project-filters button{background:none;padding:8px 0;font-size:15px}
.project-filters button.active{text-decoration:underline;text-underline-offset:7px}
.projects .project{padding:0;background:transparent;box-shadow:none}
.projects .project[hidden]{display:none}
.project-sheet{height:100%;width:100%;padding:24px 0 18px;display:flex;flex-direction:column;background:var(--paper);transform-origin:50% 75%;transform:rotate(var(--entry-angle,0deg));box-shadow:0 -14px 35px -18px rgba(0,0,0,.3);will-change:transform}
.projects .project.last-visible{margin-bottom:0}
.project-heading h2{font-size:clamp(25px,3.5vw,48px)}
.project-social{display:flex;gap:12px;flex-wrap:wrap}
.studio-copy p+p{margin-top:20px}
.strengths{display:grid;grid-template-columns:1fr 2fr;gap:40px;padding:70px 0;border-bottom:1px solid var(--line)}
.strengths h3{font-size:32px;font-weight:500;letter-spacing:-.04em;margin:0 0 15px}.strengths h3 small{font-size:10px;vertical-align:middle;margin-right:22px}.strengths p{font-size:14px;line-height:1.8;color:#616161;margin:0 0 38px}.strengths p:last-child{margin:0}
.footer-grid{grid-template-columns:1fr 1.2fr 1fr}.footer-grid .address{font-size:15px;line-height:1.9}.social-groups p:not(:first-of-type){margin-top:24px}.footer-grid a{overflow-wrap:anywhere}
@media(max-width:600px){.work-intro{font-size:14px}.project-filters{gap:20px}.project-filters button{font-size:12px}.project-sheet{padding:20px 0 18px}.project-caption{line-height:1.7}.project-caption>span:first-child{max-width:72%}.strengths{display:block;padding:40px 0}.strengths>.micro{display:block;margin-bottom:28px}.strengths h3{font-size:26px}.strengths p{font-size:12px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.footer-grid .address{font-size:14px}}
@media(prefers-reduced-motion:reduce){.project-sheet{transform:none;will-change:auto}.projects .project{margin-bottom:60px}.projects .project.last-visible{margin-bottom:0}}
/* Soft translucent dialogs and rounded controls. */
.brand-crop{opacity:.65;filter:none}
dialog{border-radius:24px;background:rgba(236,236,236,.88);border:1px solid rgba(255,255,255,.45);box-shadow:0 24px 90px rgba(0,0,0,.2);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
dialog::backdrop{background:rgba(0,0,0,.32);backdrop-filter:blur(7px)}
dialog.is-reel{background:rgba(22,22,22,.86);border-color:rgba(255,255,255,.16)}
.close-dialog{border-radius:999px;background:rgba(0,0,0,.06);padding:10px 17px}
.is-reel .close-dialog{background:rgba(255,255,255,.1)}
.dialog-link{border-radius:999px;padding:14px 24px;background:rgba(19,19,19,.9)}
.dialog-visual,.reel-player{border-radius:14px;overflow:hidden}
.dialog-visual{background:rgba(149,149,149,.45)}
.project-filters{gap:10px}
.project-filters button{border-radius:999px;border:1px solid rgba(19,19,19,.2);padding:11px 20px;transition:background .2s}
.project-filters button:hover{background:rgba(19,19,19,.06)}
.project-filters button.active{background:#1a1a1a;color:#fff;text-decoration:none;border-color:#1a1a1a}
.project-visual{border-radius:10px}
.hero-playback,#cursor-toggle{border-radius:999px}
@media(max-width:600px){dialog{border-radius:20px}.project-filters button{padding:9px 14px}.dialog-visual,.reel-player{border-radius:10px}}
/* Keep headings comfortably inside the rotating paper, including its tilted entry. */
.project-sheet{padding:34px 38px 24px;transform-origin:50% 0}
.projects .project-heading{gap:24px;margin-bottom:26px;align-items:center;padding:0 2px}
.project-heading h2{line-height:1.2;min-width:0;overflow-wrap:anywhere}
.project-heading>span{flex-shrink:0;white-space:nowrap;line-height:1.5}
.projects .project-caption{padding:0 2px;gap:18px;line-height:1.7}
@media(max-width:900px){.project-sheet{padding:30px 28px 22px}.project-heading h2{font-size:32px}}
@media(max-width:600px){.project-sheet{padding:28px 22px 20px}.projects .project-heading{gap:14px;margin-bottom:22px;align-items:flex-start}.project-heading h2{font-size:clamp(24px,6.6vw,30px);letter-spacing:-.035em}.project-heading>span{font-size:8px;padding-top:7px}.projects .project-caption{font-size:9px;gap:12px}.project-caption>span:first-child{max-width:72%}}

/* Give Highlights its own screen; the tilted first card enters only afterward. */
.work{padding-top:0}
.highlights-screen{min-height:100svh;padding-top:clamp(64px,8vh,110px);display:flow-root}
.highlights-screen .section-heading{margin:0}
.projects{padding-top:calc(7vw + 40px)}
@media(max-width:600px){.projects{padding-top:calc(4vw + 28px)}}

/* Company profile: production history and selected credits. */
.highlights-screen{min-height:100svh;padding-bottom:80px}
.highlights-screen h1{font-size:clamp(64px,12.5vw,220px)}
.journey-timeline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:36px;margin-top:64px}
.year-block{border-top:1px solid var(--ink);padding-top:20px}.year-block h2{font-size:clamp(36px,4vw,64px);font-weight:500;letter-spacing:-.06em;margin:0 0 30px}.year-block:first-child h2{color:var(--accent)}
.year-block ul{list-style:none;padding:0;margin:0}.year-block li{margin:0 0 22px}.year-block strong{font-size:15px;line-height:1.6;font-weight:500;display:block}.year-block li span{display:block;font-size:11px;color:#646464;line-height:1.8;margin-top:5px}
.earlier-work{margin-top:28px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0}.earlier-work summary{cursor:pointer;font-size:14px;display:flex;justify-content:space-between}.earlier-work p{font-size:13px;line-height:2.3;max-width:1100px}
.work-heading{padding-top:80px;min-height:70svh}.work-heading .big-title{font-size:clamp(55px,10vw,170px)}
.projects .project:nth-child(3){margin-bottom:35svh}.projects .project.last-visible{margin-bottom:0}
.project-image{width:100%;height:100%;object-fit:cover;display:block}.dialog-project-image{display:block;width:100%;max-height:45vh;object-fit:contain;border-radius:14px;margin:24px 0}.dialog-credit{font-size:12px;line-height:1.8;color:#666}
.studio-spaces{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:50px 0}.studio-spaces img{width:100%;height:360px;object-fit:cover;border-radius:14px}
@media(max-width:1100px){.journey-timeline{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}.studio-spaces img{height:280px}}
@media(max-width:600px){.journey-timeline{grid-template-columns:1fr;margin-top:40px;gap:28px}.year-block{display:grid;grid-template-columns:80px 1fr;gap:18px}.year-block h2{font-size:32px}.year-block strong{font-size:13px}.year-block li span{font-size:10px}.year-block li:last-child{margin-bottom:0}.work-heading{min-height:65svh;padding-top:40px}.projects .project:nth-child(3){margin-bottom:25svh}.projects .project.last-visible{margin-bottom:0}.project-heading h2{font-size:clamp(22px,5.6vw,28px)}.studio-spaces{gap:12px;padding:24px 0}.studio-spaces img{height:200px}.highlights-screen{padding-bottom:40px}}
@media(prefers-reduced-motion:reduce){.projects .project:nth-child(3){margin-bottom:60px}.projects .project.last-visible{margin-bottom:0}}

.projects{overflow-x:clip}
@media(max-width:600px){.services>div>span{font-size:clamp(18px,5.5vw,28px);overflow-wrap:anywhere}}

/* Vertical history: dates, milestones and a continuous spine. */
.highlights-screen{display:grid;grid-template-columns:150px minmax(0,1fr);column-gap:54px;min-height:100svh;background:#171717;color:#ececec;margin:0 -3.2vw;padding:90px 5vw}
.highlights-screen .section-heading{align-self:start;position:sticky;top:70px}
.highlights-screen h1{writing-mode:vertical-rl;transform:rotate(180deg);font-size:110px;line-height:1;letter-spacing:-.06em}.highlights-screen .heading-dot{display:none}
.journey-timeline{display:block;margin:0}.year-block{position:relative;border:0;padding:0 0 76px;display:grid;grid-template-columns:130px minmax(0,1fr);gap:80px}
.year-block:before{content:'';position:absolute;left:169px;top:24px;bottom:-24px;width:5px;background:#137dbe}
.year-block:after{content:'';position:absolute;left:161px;top:17px;width:13px;height:13px;border:5px solid #137dbe;background:#ececec;border-radius:50%;box-shadow:0 0 0 4px #173549}
.year-block h2,.year-block:first-child h2{font-size:46px;font-weight:500;line-height:1.2;color:#218cc9;text-align:right;letter-spacing:-.04em;margin:0}
.year-block ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 32px;padding-top:8px}.year-block li{margin:0}.year-block strong{font-size:15px}.year-block li span{font-size:12px;color:#a8a8a8}
.year-block:last-child{padding-bottom:20px}.year-block:last-child h2{color:#ffbd39}.year-block:last-child:before{background:#ffbd39;bottom:0}.year-block:last-child:after{border-color:#ffbd39;box-shadow:0 0 0 4px #554522}
.earlier-work{grid-column:2;border-color:#444;margin-top:50px}.earlier-work p{color:#c0c0c0}
.project-heading h2{font-size:clamp(25px,3.2vw,44px);word-break:keep-all;overflow-wrap:break-word}.project-visual .visual-center{font-size:clamp(22px,4vw,58px);letter-spacing:-.04em;opacity:.32}.project-visual .frame{opacity:.12}
@media(max-width:1100px){.highlights-screen{grid-template-columns:100px minmax(0,1fr);gap:36px;padding:70px 4vw}.highlights-screen h1{font-size:80px}.year-block{grid-template-columns:100px minmax(0,1fr);gap:54px}.year-block:before{left:125px}.year-block:after{left:117px}.year-block h2,.year-block:first-child h2{font-size:36px}.year-block ul{grid-template-columns:1fr}}
@media(max-width:600px){.highlights-screen{display:block;padding:60px 24px;margin:0 -20px}.highlights-screen .section-heading{position:static;margin-bottom:54px}.highlights-screen h1{writing-mode:horizontal-tb;transform:none;font-size:74px}.year-block{grid-template-columns:70px minmax(0,1fr);gap:38px;padding-bottom:46px}.year-block:before{left:86px;top:16px;bottom:-16px;width:3px}.year-block:after{left:79px;top:9px;width:9px;height:9px;border-width:4px;box-shadow:0 0 0 3px #173549}.year-block h2,.year-block:first-child h2{font-size:27px}.year-block ul{padding-top:2px;gap:20px}.year-block strong{font-size:13px}.year-block li span{font-size:10px}.earlier-work{margin-top:30px}.projects .project-heading{flex-wrap:wrap;gap:8px}.project-heading h2{font-size:25px;flex-basis:100%}.project-heading>span{padding:0}.project-sheet{padding-top:22px}}

/* Four interlocking pieces rise independently and settle into one project. */
.project-sheet{transform:none;background:transparent;box-shadow:none;will-change:auto}
.projects .project{background:var(--paper)}
.projects{padding-top:40px}.work-heading{min-height:55svh}
.project-visual,.project-visual:hover{background:transparent;overflow:visible;border-radius:0}
.puzzle-art{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.puzzle-piece path{fill:#b6b6b6;stroke:var(--paper);stroke-width:3;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.puzzle-piece:nth-child(2) path{fill:#c3c3c3}.puzzle-piece:nth-child(3) path{fill:#a3a3a3}.puzzle-piece:nth-child(4) path{fill:#cdcdcd}
.project:nth-child(even) .puzzle-piece path{fill:#8e8e8e}.project:nth-child(even) .puzzle-piece:nth-child(2) path{fill:#a9a9a9}.project:nth-child(even) .puzzle-piece:nth-child(3) path{fill:#bcbcbc}.project:nth-child(even) .puzzle-piece:nth-child(4) path{fill:#9c9c9c}
.project-heading,.project-caption{position:relative;z-index:2}.project-heading{background:var(--paper)}
@media(prefers-reduced-motion:reduce){.puzzle-piece{transform:none!important}}

body,button,input,textarea,select{font-family:Freesentation,Arial,sans-serif}h1,.big-title{letter-spacing:-.045em}.project-heading h2{letter-spacing:-.025em}
#navigation{align-items:baseline}#navigation>a,#navigation>.nav-reel{font-family:inherit;font-size:inherit;font-weight:inherit;line-height:1.25;padding-top:0;padding-bottom:0;vertical-align:baseline}
#navigation .contact-nav{position:relative;padding-right:1em}#navigation .nav-arrow{position:absolute;right:0;top:0;line-height:1.25;font-size:.9em}
/* Center each complete slide in a 4:3 frame with viewport breathing room. */
.projects .project{align-items:center;justify-content:center;min-height:0;padding:5svh 0}
.project-sheet{width:min(100%,1040px,112svh);height:auto;aspect-ratio:4/3;flex:none;padding:28px 30px 22px;max-height:84svh}
.projects .project-heading{margin-bottom:22px}.projects .project-caption{margin-top:16px}
@media(max-width:600px){.projects .project{padding:7svh 0}.project-sheet{width:min(100%,112svh);padding:18px 16px 14px}.projects .project-heading{margin-bottom:12px}.project-heading h2{font-size:clamp(18px,5vw,24px)}.projects .project-caption{font-size:9px;margin-top:10px}.project-caption>span:first-child{max-width:75%}}
@media(prefers-reduced-motion:reduce){.projects .project{height:auto;padding:30px 0}.projects .project-visual{flex:1;aspect-ratio:auto}.project-sheet{max-height:none}}

/* Keep the hover target stable while its cropped logo deforms around the pointer. */
.header .wordmark .brand-crop{pointer-events:none;transform-origin:50% 50%}
@media(prefers-reduced-motion:reduce){.header .wordmark .brand-crop{transform:none!important}}

/* Compact, light history with a horizontal heading. */
.highlights-screen{display:block;background:#fff;color:#1b1b1b;margin:0 -3.2vw;padding:80px max(3.2vw,calc((100vw - 1180px)/2));min-height:0}
.highlights-screen .section-heading{position:static;margin:0 0 56px}
.highlights-screen h1{writing-mode:horizontal-tb;transform:none;font-size:clamp(64px,9vw,140px);line-height:1;letter-spacing:-.04em}
.journey-timeline{max-width:1100px;margin:0}.year-block{grid-template-columns:105px minmax(0,1fr);gap:52px;padding-bottom:42px}
.year-block:before{left:129px;background:#197fb4;width:3px}.year-block:after{left:122px;border-width:4px;width:9px;height:9px;background:white;box-shadow:0 0 0 3px #e9e9e9}
.year-block h2,.year-block:first-child h2{font-size:38px;color:#1976a2}.year-block ul{grid-template-columns:repeat(2,minmax(0,360px));gap:20px 36px;justify-content:start}
.year-block strong{color:#282828;font-size:16px}.year-block li span{color:#6a6a6a;font-size:12px}.year-block:last-child h2{color:#a46b00}.year-block:last-child:before{background:#d99b24}.year-block:last-child:after{border-color:#d99b24;box-shadow:0 0 0 3px #e7e7e7}
/* One complete 4:3 project is one puzzle piece. Shared edges fit while scrolling. */
.projects{isolation:isolate;overflow:clip}.projects .project{background:transparent}
.project-sheet{clip-path:url(#project-interlock);background:#d9d9d9;padding:9% 5% 8%;box-shadow:none;will-change:transform}
.project:nth-child(even) .project-sheet{background:#c1c1c1}
.project-heading{background:transparent}.project-visual,.project-visual:hover{background:transparent;overflow:hidden}
.project-surface{position:absolute;inset:0;border:1px solid rgba(35,35,35,.1);border-radius:12px;background:rgba(255,255,255,.12)}
.work-heading{min-height:0;padding:70px 0 35px}.projects{padding-top:0}
@media(max-width:900px){.year-block ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 24px}.year-block strong{font-size:14px}}
@media(max-width:600px){.highlights-screen{margin:0 -20px;padding:50px 24px}.highlights-screen .section-heading{margin-bottom:36px}.highlights-screen h1{font-size:64px}.year-block{grid-template-columns:66px minmax(0,1fr);gap:34px;padding-bottom:32px}.year-block h2,.year-block:first-child h2{font-size:26px}.year-block:before{left:81px}.year-block:after{left:75px}.year-block ul{grid-template-columns:1fr;gap:16px}.year-block strong{font-size:13px}.year-block li span{font-size:11px}.project-sheet{padding:9% 5% 8%}.work-heading{padding-top:45px}}
@media(prefers-reduced-motion:reduce){.project-sheet{transform:none!important;will-change:auto}.projects{overflow:visible}}

/* New transparent brand artwork; monochrome light tone over the hero film. */
.header .brand-crop{aspect-ratio:1874/1678;opacity:.94;filter:drop-shadow(0 1px 3px rgba(0,0,0,.3))}
.header .brand-crop img{width:160.0854%;height:178.7843%;left:-30.0427%;top:-37.7235%;filter:brightness(0) invert(.96)}
/* Unified charcoal theme, matching the original History background. */
:root{color-scheme:dark;--paper:#171717;--ink:#ececec;--line:#414141;--muted:#b7b7b7}
body,.work,.studio,.contact,.highlights-screen{background:var(--paper);color:var(--ink)}
.highlights-screen h1,.year-block strong{color:var(--ink)}
.year-block li span,.strengths p,.studio-copy p,.project-caption span:last-child,.dialog-credit,.dialog-details span,.footer-bottom{color:var(--muted)}
.year-block h2,.year-block:first-child h2{color:#55b5e4}.year-block:before{background:#218bbd}.year-block:after{background:#ececec;border-color:#218bbd;box-shadow:0 0 0 3px #234556}
.year-block:last-child h2{color:#ffbd39}.year-block:last-child:before{background:#ffbd39}.year-block:last-child:after{border-color:#ffbd39;box-shadow:0 0 0 3px #554522}
.project-sheet{background:#323232;color:var(--ink)}.project:nth-child(even) .project-sheet{background:#3f3f3f}
.project-heading{background:transparent}.project-visual{color:var(--ink)}.project-surface{background:rgba(255,255,255,.025);border-color:rgba(255,255,255,.12)}
.project-filters button{background:transparent;border-color:#696969;color:var(--ink)}.project-filters button:hover{background:#323232}.project-filters button.active{background:#e5e5e5;border-color:#e5e5e5;color:#1d1d1d}
dialog,dialog.is-reel{background:rgba(32,32,32,.92);color:var(--ink);border-color:rgba(255,255,255,.18)}
dialog::backdrop{background:rgba(0,0,0,.58)}.close-dialog,.is-reel .close-dialog{background:rgba(255,255,255,.09);color:var(--ink)}
.dialog-link{background:#e5e5e5;color:#1d1d1d}.dialog-visual{background:#373737}.dialog-eyebrow,.footer-grid .micro{color:var(--muted)}
.footer-grid,.footer-bottom,.services,.strengths,.studio-copy{border-color:var(--line)}
.footer-bottom button{color:var(--ink);border-color:#696969}.skip{background:#ececec;color:#171717}
/* Independent menu views: only the current page participates in layout. */
.page-view[hidden]{display:none!important}
body[data-page="home"]{overflow:hidden}
body[data-page="home"] .hero{position:relative;height:100svh;min-height:0;max-height:none}
.hero-bottom{display:flex;justify-content:center;align-items:center}
.header{position:fixed;top:0;min-height:150px;background:rgba(23,23,23,.94);backdrop-filter:blur(12px);z-index:20}
body[data-page="home"] .header{background:transparent;backdrop-filter:none}
main>.page-view:not(.hero){padding-top:190px;min-height:100svh;padding-bottom:70px}
.history-page .highlights-screen{padding-top:0}.work-heading{padding-top:0}.studio .big-title,.showreel-page .big-title{margin-top:0}
#navigation [aria-current="page"]{color:#ffbd39}
#page-showreel{display:block;width:min(100%,1200px);max-height:70svh;aspect-ratio:16/9;margin:0 auto;background:#111111;border-radius:18px}
.project-titles{min-width:0}.project-english{font-size:clamp(11px,1.2vw,15px);font-weight:400;letter-spacing:.015em;color:#bbbbbb;line-height:1.4;margin:8px 0 0}
.dialog-english{font-size:15px;line-height:1.5;letter-spacing:.02em;color:#cacaca;margin:-8px 0 30px}
dialog:not(.is-reel){background:rgba(37,37,37,.78);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
dialog::backdrop{background:rgba(0,0,0,.35);backdrop-filter:blur(4px)}
@media(max-width:900px){.header{min-height:170px}main>.page-view:not(.hero){padding-top:200px}}
@media(max-width:600px){.header{min-height:200px}main>.page-view:not(.hero){padding-top:230px;padding-bottom:40px}.project-titles{flex-basis:100%}.project-english{margin-top:5px;font-size:10px}.projects .project-heading{margin-bottom:10px}.dialog-english{font-size:12px;margin-top:0}.hero-bottom{display:flex}.showreel-page .big-title{font-size:18vw}#page-showreel{border-radius:12px}}
@media(prefers-reduced-motion:no-preference){.page-view:not(.hero):not([hidden]){animation:page-appear .28s ease-out}@keyframes page-appear{from{opacity:0}to{opacity:1}}}
/* Keep the showreel above whichever menu section is expanded. */
html{scroll-behavior:auto}
body[data-page="home"]{overflow:auto}
body .hero,body[data-page="home"] .hero{position:relative;height:100svh;min-height:0;max-height:none}
body .header{background:rgba(23,23,23,.94);backdrop-filter:blur(12px);transition:background .3s ease}
body.over-hero .header{background:transparent;backdrop-filter:none}
main>.page-view:not(.hero){padding-top:55px}
.page-view:not(.hero):not([hidden]){animation:none}
@media(max-width:600px){main>.page-view:not(.hero){padding-top:36px}}

body[data-page] .header{background:rgba(23,23,23,.94);backdrop-filter:blur(12px)}body[data-page].over-hero .header{background:transparent;backdrop-filter:none}

/* Compact bold headings and three featured projects followed by a portrait feed. */
h1,h2,h3,.big-title,.talk{font-weight:700}
.highlights-screen h1,.big-title,.work-heading .big-title{font-size:clamp(44px,6.5vw,96px);font-weight:700;letter-spacing:-.035em;line-height:1.08}
.talk{font-size:clamp(56px,9vw,140px);font-weight:700}.studio-copy h3{font-size:clamp(28px,3vw,44px)}.project-heading h2{font-size:clamp(22px,2.5vw,36px);font-weight:700}.year-block h2,.year-block:first-child h2{font-weight:700}
.project-sheet{padding:9% 8% 8%;transform-origin:50% 50%}.featured-year{position:absolute;inset:0;display:grid;place-items:center;font-size:clamp(40px,8vw,110px);font-weight:700;opacity:.12;pointer-events:none}
.archive{position:relative;z-index:10;padding:70px 0 40px;background:var(--paper)}.archive .big-title{margin:0 0 28px}.archive .project-filters{margin-bottom:32px}
.project-feed{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 12px;max-width:1200px;margin:0 auto}
.feed-item{padding:0;background:transparent;text-align:left;min-width:0}.feed-item[hidden]{display:none}.feed-picture{display:block;aspect-ratio:3/4;overflow:hidden;background:#333333;border-radius:5px}.feed-picture img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s}.feed-item:hover img{transform:scale(1.04)}.feed-placeholder{display:grid;place-items:center;height:100%;padding:18px;color:#c3c3c3;font-size:clamp(13px,1.6vw,24px);font-weight:700;line-height:1.5;text-align:center}.feed-item:nth-child(3n+2) .feed-picture{background:#3e3e3e}.feed-name,.feed-english{display:block}.feed-name{font-size:15px;font-weight:700;line-height:1.5;margin-top:10px}.feed-english{font-size:11px;color:var(--muted);line-height:1.5;margin-top:3px}
@media(max-width:600px){.highlights-screen h1,.big-title,.work-heading .big-title{font-size:44px}.project-heading h2{font-size:21px}.project-feed{gap:18px 6px}.feed-name{font-size:11px}.feed-english{font-size:9px}.feed-placeholder{padding:8px;font-size:12px}.archive{padding-top:40px}.project-sheet{padding:9% 8% 8%}}

/* Dissolve the showreel into the charcoal content without a hard seam. */
.hero::after{content:"";position:absolute;inset:auto 0 -1px;height:clamp(150px,28svh,340px);background:linear-gradient(to bottom,rgba(23,23,23,0) 0%,rgba(23,23,23,.14) 22%,rgba(23,23,23,.48) 48%,rgba(23,23,23,.82) 72%,#171717 100%);pointer-events:none;z-index:1}

.project-specs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:28px 0}.project-specs dt{font-size:11px;color:#adadad}.project-specs dd{margin:7px 0 0;font-size:15px;line-height:1.5}

#intro-cover{display:grid;place-items:center}.loading-content{text-align:center;padding:24px;color:#676767}.loading-mark{width:116px;margin:0 auto 40px;transform-origin:50% 100%;animation:bunny-loading 3.2s linear infinite}.loading-mark .brand-crop{display:block;width:116px;opacity:1;filter:none}.loading-mark img{filter:brightness(0);opacity:.76}.loading-content p{font-size:14px;line-height:1.6}@keyframes bunny-loading{0%,10%,37%,43%,70%,100%{transform:translateY(0) scale(1)}14%,47%{transform:translateY(0) scale(1.035,.965)}24%{transform:translateY(-30px) scale(.99,1.018)}57%{transform:translateY(-23px) scale(.99,1.018)}33%,66%{transform:translateY(0) scale(1.04,.965)}}@media(prefers-reduced-motion:reduce){.loading-mark{animation:none}}

dialog.is-reel .reel-player{min-height:0;width:100%;max-height:70svh}dialog.is-reel .reel-title{padding-right:65px}@media(max-width:600px){dialog.is-reel .reel-title{font-size:23px}}

/* Current year: a steady marker with a soft outward circular ripple. */
.year-block.current-year{min-height:72px;padding-bottom:26px}.year-block.current-year::before{bottom:18px}.year-block.current-year::after{animation:history-ripple 2.4s ease-out infinite;z-index:1}@keyframes history-ripple{0%{box-shadow:0 0 0 3px #554522,0 0 0 4px rgba(255,189,57,.5),0 0 0 4px rgba(255,189,57,.22)}75%,100%{box-shadow:0 0 0 3px #554522,0 0 0 19px rgba(255,189,57,0),0 0 0 30px rgba(255,189,57,0)}}@media(prefers-reduced-motion:reduce){.year-block.current-year::after{animation:none;box-shadow:0 0 0 3px #554522,0 0 0 9px rgba(255,189,57,.16)}}

.projects .project[hidden]{display:none!important}.selected-filters{margin-top:24px;display:flex;flex-wrap:wrap;gap:10px}.selected-filters button{border-radius:999px}.selected-filters button:focus-visible{outline:2px solid #ffbd39;outline-offset:4px}

/* Video-only showreel, with an accessible name retained for screen readers. */
dialog.is-reel{padding:54px 14px 14px}dialog.is-reel .reel-title.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}dialog.is-reel .close-dialog{top:12px;right:14px}dialog.is-reel .reel-player{max-height:none}@media(max-width:600px){dialog.is-reel{padding:50px 8px 8px}}

/* Visible puzzle cards share one connected vertical track, regardless of filter order. */
.projects .project,.projects .project:nth-child(3),.projects .project.last-visible{padding:0;margin-bottom:0;min-height:0}.projects .project-sheet{flex-shrink:0}.projects{padding-top:32px;padding-bottom:32px}

.projects .project{height:auto!important;display:block}.projects .project-sheet{margin-left:auto;margin-right:auto}

/* Compact, labelled social icons beside each original IP. */
.social-groups .channel-row{display:flex;align-items:center;justify-content:space-between;gap:18px;max-width:290px;margin-top:16px}.channel-name{font-size:15px;line-height:1.4}.channel-icons{display:flex;align-items:center;gap:5px;flex-shrink:0}.footer-grid .channel-icons .social-icon{display:inline-flex;width:38px;height:38px;align-items:center;justify-content:center;margin:0;padding:8px;border-radius:50%;color:#e8e8e8;transition:background .2s,color .2s,transform .2s;text-decoration:none}.social-icon svg{width:22px;height:22px;display:block}.footer-grid .channel-icons .social-icon:hover{background:#363636;color:#ffbd39;transform:translateY(-2px)}.social-icon:focus-visible{outline:2px solid #ffbd39;outline-offset:3px}

/* Service overview: visual cues and concise, high-contrast Korean descriptions. */
.services.service-overview{display:block;padding:60px 0 70px}.service-overview>h3{font-size:clamp(28px,3vw,40px);font-weight:700;line-height:1.2;margin:0 0 30px}.service-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.service-item{display:flex;gap:20px;align-items:flex-start;border:1px solid #494949;background:#222222;border-radius:18px;padding:28px}.service-symbol{display:grid;place-items:center;flex:0 0 52px;width:52px;height:52px;border-radius:14px;background:#363636;color:#e0e0e0}.service-symbol svg{width:29px;height:29px}.service-text{min-width:0}.service-text h4{font-size:clamp(19px,2vw,25px);font-weight:700;line-height:1.3;color:#f1f1f1;margin:1px 0 10px;letter-spacing:-.02em}.service-text p{color:#cccccc;font-size:16px;line-height:1.75;margin:0;word-break:keep-all}.service-item:last-child{grid-column:1/-1}@media(max-width:700px){.service-grid{grid-template-columns:1fr;gap:12px}.service-item{padding:22px 18px;gap:16px}.service-symbol{flex-basis:44px;width:44px;height:44px;border-radius:12px}.service-symbol svg{width:26px;height:26px}.service-text p{font-size:15px}.services.service-overview{padding-top:40px}}

.studio-copy>div{grid-column:2}.studio>.big-title{overflow-wrap:normal;word-break:normal}@media(max-width:600px){.studio-copy>div{grid-column:auto}.studio>.big-title{font-size:clamp(34px,8.5vw,44px)}}

.service-item{align-items:center}.service-text h4{margin:0}

/* Direct project gallery and compact, consistently ordered social rows. */
.work>.archive{padding-top:0}.social-groups .channel-row+.channel-row{margin-top:2px}
.feed-item{position:relative;border-radius:8px;overflow:hidden}.feed-picture{border-radius:8px}.feed-name,.feed-english{position:absolute;left:18px;right:18px;z-index:2;margin:0;color:#fff;opacity:0;transform:translateY(5px);transition:opacity .2s,transform .2s}.feed-name{bottom:42px;font-size:18px;font-weight:800}.feed-english{bottom:19px;font-size:11px}.feed-item:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 35%,rgba(0,0,0,.85));opacity:0;transition:opacity .2s;pointer-events:none}.feed-item:hover:after,.feed-item:focus-visible:after,.feed-item:hover .feed-name,.feed-item:hover .feed-english,.feed-item:focus-visible .feed-name,.feed-item:focus-visible .feed-english{opacity:1;transform:none}
@media(hover:none),(max-width:600px){.feed-name,.feed-english,.feed-item:after{opacity:1;transform:none}.feed-name{font-size:13px;bottom:38px;left:10px;right:10px}.feed-english{font-size:9px;bottom:12px;left:10px;right:10px}}

/* Project modal:  image-led layout and swift lateral transitions. */
dialog.is-project{width:min(1180px,94vw);max-width:none;max-height:92svh;padding:60px 30px 18px;background:rgba(29,29,29,.96);border:1px solid #535353;border-radius:24px;overflow-x:hidden}dialog.is-project .project-stage{overflow:hidden}.project-modal-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:38px;align-items:start}.project-photo{aspect-ratio:3/4;max-height:62svh;background:#141414;border-radius:14px;overflow:hidden;touch-action:pan-y}.project-photo img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.project-info{padding:8px 0}.is-project #dialog-title{font-size:clamp(30px,3.4vw,48px);font-weight:700;line-height:1.15;margin:16px 0 10px;letter-spacing:-.025em}.is-project .dialog-english{font-size:15px;color:#c8c8c8;margin:0 0 26px}.is-project .dialog-copy{font-size:17px;line-height:1.9;color:#f0f0f0;margin:0 0 28px;word-break:keep-all}.is-project .dialog-eyebrow{color:#bcbcbc;font-size:12px;font-weight:600}.is-project .dialog-details{grid-template-columns:1fr 1fr;margin:24px 0;color:#cacaca}.is-project .dialog-details span,.is-project .project-specs dd{color:#f1f1f1;font-size:15px}.is-project .dialog-credit{color:#cccccc;font-size:13px}.is-project .project-specs{gap:20px 16px}.is-project .project-specs dt{color:#bebebe}.project-pager{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #474747;margin-top:22px;padding-top:16px;gap:16px}.project-pager button{border:1px solid #757575;border-radius:999px;background:#383838;color:#f2f2f2;padding:12px 22px;font-size:16px}.project-pager button:hover{background:#545454}.project-pager button:focus-visible{outline:2px solid #ffbd39;outline-offset:3px}.project-count{font-size:13px;color:#bdbdbd}.photo-placeholder{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;font-size:26px;padding:24px;text-align:center}.photo-placeholder small{font-size:13px;color:#b7b7b7}@media(max-width:700px){dialog.is-project{padding:54px 18px 16px}.project-modal-grid{grid-template-columns:1fr;gap:20px}.project-photo{max-height:36svh;aspect-ratio:4/3}.is-project .dialog-copy{font-size:16px}.is-project #dialog-title{font-size:32px}.project-pager{position:sticky;bottom:-16px;background:#1d1d1d;padding-bottom:12px}.project-pager button{padding:10px 16px}}

/* Rounded side lobes form part of the popup silhouette. */
dialog.is-project{width:min(1120px,calc(100vw - 84px));overflow:visible;padding:58px 28px 22px;background:rgba(29,29,29,.96)}
dialog.is-project .project-stage{max-height:calc(90svh - 115px);overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;padding-right:6px}
.project-pager{border:0;margin:0;padding:14px 0 0;display:block;text-align:center;background:none;position:static}
.project-pager button{position:absolute;top:50%;transform:translateY(-50%);width:52px;height:76px;padding:0;border:0;background:#1d1d1d;color:#f2f2f2;font-size:32px;line-height:1;display:grid;place-items:center;box-shadow:none;transition:background .2s,color .2s}
.project-pager button:first-child{left:-27px;border-radius:50% 0 0 50%;padding-right:7px}.project-pager button:last-child{right:-27px;border-radius:0 50% 50% 0;padding-left:7px}
.project-pager button:hover{background:#383838;color:#ffbd39}.project-pager button:focus-visible{outline:2px solid #ffbd39;outline-offset:3px}
.is-project #dialog-title{font-weight:800}.project-count{font-size:11px}
@media(max-width:700px){dialog.is-project{width:calc(100vw - 64px);padding:52px 15px 15px}.project-pager button{width:42px;height:64px;font-size:26px}.project-pager button:first-child{left:-22px}.project-pager button:last-child{right:-22px}.project-pager{padding:12px 0 0}.project-modal-grid{gap:15px}.is-project #dialog-title{font-size:28px}}

/* Compact translucent popups, with raised close tab and rounded triangle navigation. */
dialog,dialog.is-project,dialog.is-reel{background:rgba(29,29,29,.82);overflow:visible;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-color:rgba(255,255,255,.18)}
dialog{padding-top:25px}dialog.is-project{padding-top:24px}dialog.is-reel{padding:10px}
dialog .close-dialog,dialog.is-reel .close-dialog{top:-27px;right:22px;width:48px;height:38px;border-radius:24px 24px 0 0;padding:0 0 7px;display:grid;place-items:center;font-size:26px;font-weight:400;line-height:1;background:rgba(29,29,29,.82);color:#f2f2f2;z-index:5}
dialog .close-dialog:hover{background:#464646}dialog .close-dialog:focus-visible{outline:2px solid #ffbd39;outline-offset:3px}
.project-pager button{background:rgba(29,29,29,.82)}.project-pager button svg{width:22px;height:22px;display:block}
dialog.is-project .project-stage{max-height:calc(90svh - 82px)}
@media(max-width:700px){dialog.is-project{padding-top:18px}dialog.is-reel{padding:7px}dialog .close-dialog,dialog.is-reel .close-dialog{right:18px}.project-pager button svg{width:20px;height:20px}}
/* Tight edge tabs: no overlapping fill or full-button hover highlight. */
.project-pager button{width:24px;height:44px;background:rgba(29,29,29,.82);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);padding:0;transition:none}
.project-pager button:first-child{left:-24px;border-radius:22px 0 0 22px;padding:0 0 0 4px}.project-pager button:last-child{right:-24px;border-radius:0 22px 22px 0;padding:0 4px 0 0}
.project-pager button svg{width:12px;height:12px;transition:transform .2s,color .2s}.project-pager button:hover{background:rgba(29,29,29,.82);color:#f2f2f2}.project-pager button:hover svg{transform:scale(1.15);color:#ffbd39}.project-pager button:first-child:hover svg{transform:translateX(-2px) scale(1.1)}.project-pager button:last-child:hover svg{transform:translateX(2px) scale(1.1)}.project-pager button:focus:not(:focus-visible){outline:none}.project-pager button:active svg{transform:scale(.9)}
dialog .close-dialog,dialog.is-reel .close-dialog{width:36px;height:25px;top:-25px;right:20px;border-radius:20px 20px 0 0;padding:0;font-size:19px;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}dialog .close-dialog:hover{background:rgba(29,29,29,.82);color:#ffbd39}
@media(prefers-reduced-motion:reduce){.project-pager button svg{transition:none}.project-pager button:hover svg{transform:none!important}}
.feed-item.reveal-pending{opacity:0;transform:translateY(20px)}.feed-item.reveal-enter{animation:project-arrive .34s cubic-bezier(.18,.8,.25,1) var(--reveal-delay,0ms) both}@keyframes project-arrive{from{opacity:0;transform:translateY(20px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.feed-item.reveal-pending{opacity:1;transform:none}.feed-item.reveal-enter{animation:none}}

.news-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:35px}.news-card{display:flex;flex-direction:column;padding:28px;border:1px solid #424242;border-radius:18px;background:rgba(255,255,255,.025);text-decoration:none;color:inherit;transition:background .2s,transform .2s}.news-card:hover{background:rgba(255,255,255,.06);transform:translateY(-3px)}.news-card:focus-visible{outline:2px solid #ffbd39;outline-offset:4px}.news-meta{display:flex;justify-content:space-between;gap:12px;font-size:12px;color:#bbbbbb}.news-meta>span:first-child{color:#ffbd39}.news-card h3{font-size:clamp(21px,2.3vw,30px);font-weight:800;line-height:1.4;margin:32px 0 14px;word-break:keep-all}.news-card p{font-size:15px;line-height:1.8;color:#c8c8c8;margin:0 0 34px}.news-source{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:20px;border-top:1px solid #424242;font-size:13px}.news-source>span:last-child{font-size:24px}@media(max-width:650px){.news-grid{grid-template-columns:1fr}.news-card{padding:23px}}

.site-copyright{text-align:center;padding:28px 20px;background:#171717;color:#b0b0b0;font-size:12px;line-height:1.7;border-top:1px solid #313131}.contact-form-page{padding-bottom:45px}.contact-form-page>.big-title{color:#55c3e7;text-align:center;font-size:clamp(38px,5vw,64px);margin:20px 0 46px}.contact-form-page .heading-dot{display:none}#inquiry-form{max-width:760px;margin:auto;display:flex;flex-direction:column;gap:10px}#inquiry-form>label,#inquiry-form legend{font-size:14px;font-weight:600;margin-top:14px}#inquiry-form label>span,#inquiry-form legend>span{color:#68c6e2}#inquiry-form>input:not([type=hidden]):not([type=file]),#inquiry-form>textarea{width:100%;border:1px solid transparent;border-radius:6px;background:#70c3db;color:#202020;padding:12px 14px;font:inherit;min-height:46px}#inquiry-form>textarea{resize:vertical;min-height:145px}#inquiry-form input:focus-visible,#inquiry-form textarea:focus-visible{outline:2px solid #c6f4ff;outline-offset:3px}#inquiry-form fieldset{border:0;padding:0;margin:17px 0 6px}.inquiry-types{display:grid;grid-template-columns:1fr 1fr;gap:15px 25px;margin-top:16px}.inquiry-types label{display:flex;align-items:center;gap:9px;font-size:13px;line-height:1.5;cursor:pointer}.inquiry-types input{accent-color:#54c5e7;width:17px;height:17px;flex-shrink:0}#contact-file{font:inherit;font-size:13px;max-width:100%}#contact-file::file-selector-button{padding:12px 20px;border:0;border-radius:6px;color:#f0f0f0;background:#515151;margin-right:12px;cursor:pointer}#file-help,.form-note{font-size:12px;color:#bcbcbc;line-height:1.7}.form-note{margin:17px 0 0}.contact-submit{margin-top:8px;border-radius:7px;min-height:48px;background:#70c3db;color:#202020;font-size:17px;font-weight:700;display:flex;justify-content:center;gap:16px;align-items:center}.contact-submit:hover{background:#99dced}.contact-submit:focus-visible{outline:2px solid #c6f4ff;outline-offset:4px}.contact-cursor-toggle{display:block;margin:28px auto 0;background:none;color:#b0b0b0;font-size:11px}#form-status{margin:0;font-size:13px;line-height:1.6}#inquiry-form .form-honey{display:none!important}.news-card .visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}@media(max-width:600px){.inquiry-types{grid-template-columns:1fr}.site-copyright{font-size:10px;padding:22px 16px}}
/* Contact follows Iconpictures' charcoal, warm white and orange palette. */
.contact-form-page>.big-title{color:#ececec}.contact-form-page .heading-dot{display:inline;color:#fa5337}#inquiry-form>input:not([type=hidden]):not([type=file]),#inquiry-form>textarea{background:#262626;border:1px solid #474747;color:#ececec;border-radius:10px}#inquiry-form label>span,#inquiry-form legend>span{color:#fa5337}#inquiry-form input:focus-visible,#inquiry-form textarea:focus-visible{outline:2px solid #fa5337;outline-offset:3px}.inquiry-types input{accent-color:#fa5337}#contact-file::file-selector-button{background:#363636;color:#ececec;border:1px solid #535353;border-radius:8px}#file-help,.form-note{color:#b0b0b0}.contact-submit{background:#ececec;color:#171717;border-radius:999px;transition:background .2s,transform .2s}.contact-submit:hover{background:#fa5337;color:#fff;transform:translateY(-1px)}.contact-submit:focus-visible{outline-color:#fa5337}

/* 5:4 image postcards. */
.news-grid{gap:26px;max-width:1200px;margin-left:auto;margin-right:auto}.news-card{aspect-ratio:5/4;padding:10px;display:grid;grid-template-rows:minmax(0,1fr) auto;gap:0;border-radius:12px;background:#262626;overflow:hidden}.news-image{min-height:0;overflow:hidden;border-radius:6px;background:#e4e4e4}.news-image img{width:100%;height:100%;object-fit:contain;display:block;transition:transform .3s}.news-card:hover .news-image img{transform:scale(1.025)}.news-card-copy{padding:15px 10px 6px}.news-card h3{font-size:clamp(16px,1.8vw,23px);line-height:1.3;margin:8px 0 10px}.news-meta{font-size:10px}.news-source{padding:0;border:0;font-size:11px}.news-source>span:last-child{font-size:19px}.news-card:hover{background:#313131;transform:translateY(-3px)}@media(max-width:650px){.news-card-copy{padding:12px 6px 4px}.news-card h3{font-size:18px}.news-grid{gap:20px}}

.news-grid{display:block;max-width:920px;padding:12vh 30px 12vh}.news-stack-item{position:sticky;top:135px;margin:0 0 24vh;isolation:isolate}.news-stack-item:last-child{margin-bottom:0}.news-stack-item .news-card{width:min(100%,calc((100svh - 190px)*1.25));margin:auto;transform-origin:50% 85%;box-shadow:0 -12px 45px #0005;will-change:transform;background:#262626}.news-stack-item .news-card:hover{background:#313131}.news-stack-item .news-card h3{font-size:clamp(17px,2vw,25px)}@media(max-width:650px){.news-grid{padding:6vh 12px 8vh}.news-stack-item{top:110px;margin-bottom:18vh}.news-stack-item .news-card{width:100%}.news-stack-item .news-card h3{font-size:17px}}
@font-face{font-family:NewsExtraBold;src:url('assets/fonts/Freesentation-8ExtraBold.woff2') format('woff2');font-style:normal;font-weight:800;font-display:swap}.news-stack-item .news-card h3{font-family:NewsExtraBold,Freesentation,sans-serif;font-weight:800;letter-spacing:-.025em}

/* Newspaper sheets, followed by a complete browseable news index. */
.news-stack-item .news-card{aspect-ratio:auto;width:min(100%,760px);display:block;padding:24px 28px;background:#e7e7e7;color:#202020;border:1px solid #b4b4b4;border-radius:3px;box-shadow:0 -10px 45px #0007}.news-stack-item .news-card:hover{background:#efefef}.newspaper-masthead{display:flex;justify-content:space-between;align-items:center;gap:15px;border-bottom:3px solid #202020;padding-bottom:12px;margin-bottom:10px;font-size:13px;font-weight:800;letter-spacing:.08em}.newspaper-masthead span:first-child{font-size:20px}.news-stack-item .news-meta{color:#5e5e5e;font-size:10px;border-bottom:1px solid #a6a6a6;padding-bottom:10px}.news-stack-item .news-meta span:first-child{color:#4a4a4a}.news-stack-item .news-card h3{font-size:clamp(25px,3vw,40px);line-height:1.15;margin:19px 0 18px;font-weight:800}.news-stack-item .news-image{height:clamp(200px,34svh,440px);border-radius:0;background:#d5d5d5}.news-stack-item .news-image img{object-fit:contain}.news-stack-item .newspaper-brief{display:block;font-size:14px;line-height:1.8;color:#373737;margin:16px 0;border-bottom:1px solid #a6a6a6;padding-bottom:15px;word-break:keep-all}.news-stack-item .news-source{color:#353535}.news-archive{position:relative;z-index:10;background:#171717;padding:60px 0 35px}.news-feed{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.news-feed-card{display:block;color:inherit;text-decoration:none;min-width:0}.news-feed-card .news-image{aspect-ratio:3/4;border-radius:8px}.news-feed-card .news-card-copy{padding:14px 0}.news-feed-card h3{font-family:NewsExtraBold,Freesentation,sans-serif;font-size:19px;line-height:1.4;margin:9px 0;font-weight:800}.news-feed-card:hover img{transform:scale(1.04)}.news-feed-card:focus-visible{outline:2px solid #ffbd39;outline-offset:5px}.news-feed-card .visually-hidden,.news-stack-item .visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}@media(max-width:650px){.news-stack-item .news-card{padding:18px}.newspaper-masthead span:first-child{font-size:15px}.newspaper-masthead{font-size:10px}.news-feed{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}.news-feed-card h3{font-size:15px}.news-stack-item .news-card h3{font-size:25px}.news-stack-item .newspaper-brief{font-size:12px}.news-archive{padding-top:35px}}
.studio-copy>.studio-brand{grid-column:1;grid-row:1;align-self:center;display:flex;justify-content:center;padding:12px 30px 12px 0}.studio-brand .brand-crop{width:clamp(150px,19vw,240px);aspect-ratio:1874/1678;opacity:.78;filter:none}.studio-brand .brand-crop img{width:160.0854%;height:178.7843%;left:-30.0427%;top:-37.7235%;filter:brightness(0) invert(.96)}@media(max-width:600px){.studio-copy>.studio-brand{padding:0;justify-content:flex-start;margin-bottom:32px}.studio-brand .brand-crop{width:130px;opacity:.75}}
/* Keep each newspaper pinned while the next sheet rises over it. */
.news-grid{padding-top:5vh;padding-bottom:22vh;overflow:visible}.news-stack-item{position:sticky;top:115px;margin-bottom:8vh}.news-stack-item:nth-child(2){top:121px}.news-stack-item:nth-child(3){top:127px}.news-stack-item:nth-child(4){top:133px}.news-stack-item .news-card{transform-origin:50% 12%;transition:none}.news-stack-item .news-image{height:clamp(160px,29svh,350px)}.news-stack-item .news-card h3{margin:15px 0}.news-stack-item .newspaper-brief{margin:12px 0;padding-bottom:12px}.news-archive{margin-top:0}@media(max-width:650px){.news-grid{padding-top:3vh;padding-bottom:15vh}.news-stack-item{top:100px;margin-bottom:8vh}.news-stack-item:nth-child(2){top:105px}.news-stack-item:nth-child(3){top:110px}.news-stack-item:nth-child(4){top:115px}.news-stack-item .news-image{height:24svh}}
/* Full-width newspaper stack with a viewport-sized page. */
.news-grid{width:calc(100vw - 24px);max-width:none;margin-left:calc(50% - 50vw + 12px);margin-right:0;padding:3vh 0 16vh}.news-stack-item,.news-stack-item:nth-child(2),.news-stack-item:nth-child(3),.news-stack-item:nth-child(4){top:148px}.news-stack-item .news-card{width:100%;height:calc(100svh - 164px);min-height:480px;max-width:none;display:flex;flex-direction:column;padding:22px clamp(20px,3vw,56px);border-radius:3px}.news-stack-item .news-image{height:auto;flex:1;min-height:100px}.news-stack-item .news-card h3{font-size:clamp(28px,3.6vw,56px);margin:14px 0}.news-stack-item .newspaper-brief{flex:none;margin:12px 0}.news-stack-item .news-meta,.news-stack-item .newspaper-masthead,.news-stack-item .news-source{flex-shrink:0}@media(max-width:650px){.news-grid{width:calc(100vw - 12px);margin-left:calc(50% - 50vw + 6px)}.news-stack-item,.news-stack-item:nth-child(2),.news-stack-item:nth-child(3),.news-stack-item:nth-child(4){top:110px}.news-stack-item .news-card{height:calc(100svh - 122px);min-height:440px;padding:17px}.news-stack-item .news-card h3{font-size:clamp(24px,6vw,32px)}}

#intro-cover.ready{pointer-events:none}#loading-play{margin-top:16px;border:0;border-radius:999px;padding:13px 23px;background:#252525;color:#fff;font:inherit;font-size:14px;cursor:pointer}#loading-play[hidden]{display:none}#loading-play:hover{background:#fa5337}#loading-play:focus-visible{outline:3px solid #fa5337;outline-offset:4px}
