@font-face{font-family:GothamNarrow;src:url('../GothamNarrow-Light.woff') format('woff');font-display:swap}
:root{--bg:#000;--fg:#fff;--muted:#8d8d8d;--pad:22px;--gap:0px;--font:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{background:#000;color:#fff;scroll-behavior:smooth}body{margin:0;background:#000;color:#fff;font-family:var(--font);font-size:15px;line-height:1.35}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}
.site-header{position:fixed;z-index:1000;top:0;left:0;right:0;height:96px;padding:14px 22px;display:block;pointer-events:none;background:rgba(8,8,8,.48);-webkit-backdrop-filter:blur(18px) saturate(145%);backdrop-filter:blur(18px) saturate(145%);border-bottom:1px solid rgba(255,255,255,.10);box-shadow:0 8px 30px rgba(0,0,0,.14)}.site-header>*{pointer-events:auto}.site-logo{display:block;width:92px;height:112px;position:absolute;left:8vw;top:-12px}.site-logo img{width:92px;height:126px;object-fit:contain;display:block}.nav-left{display:flex;gap:22px;align-items:center;position:absolute;left:calc(8vw + 145px);bottom:10px}.nav-link{font-size:24px;letter-spacing:.02em;color:#CD9575;opacity:.95;transition:color .2s ease,opacity .2s ease}.nav-link:hover,.nav-link.is-active{color:#fff;opacity:1}.lang{font-size:16px;letter-spacing:.02em;color:#fff;opacity:.95;transition:opacity .2s ease}.lang.active{opacity:1}.lang-switch{position:absolute;right:3vw;bottom:10px;display:flex;gap:10px;padding-top:0;align-items:baseline}.menu-toggle{display:none;background:none;color:#fff;border:0}
main{padding-top:90px}.intro{padding:36px 22px 54px 8vw;max-width:980px;font-size:clamp(18px,1.8vw,26px);line-height:1.1;letter-spacing:-.02em}.intro p{white-space:pre-line;margin:0}
.portfolio-grid{position:relative;display:block;width:100%;height:0;margin:0;padding:0;overflow:hidden}.project-card{position:absolute;overflow:hidden;background:#111;min-width:0;margin:0;padding:0}.project-card a{display:block;position:relative;width:100%;height:100%;overflow:hidden}.project-card img{width:100%;height:100%;object-fit:cover;display:block;transition:opacity .35s ease,filter .35s ease,transform .55s ease}.project-card:hover img{opacity:.42;filter:blur(4px);transform:scale(1.015)}.project-title{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:24px;text-align:center;font-size:clamp(15px,1.45vw,23px);letter-spacing:.06em;opacity:0;transition:opacity .3s ease}.project-card:hover .project-title{opacity:1}.layout-hero,.layout-wide,.layout-square,.layout-tall{aspect-ratio:auto}.project-card.no-cover{background:#171717}.no-cover .project-title{opacity:1;position:relative;inset:auto;min-height:220px}
.case-head{padding:120px 22px 40px;display:grid;grid-template-columns:2fr 1fr;gap:40px}.case-kicker{font-size:13px;text-transform:uppercase;letter-spacing:.12em;color:#999;margin-bottom:18px}.case-title{font-size:clamp(42px,7vw,106px);line-height:.9;letter-spacing:-.04em;margin:0 0 30px}.case-intro{font-size:clamp(20px,2.1vw,32px);line-height:1.1;white-space:pre-line;max-width:900px}.case-meta{display:grid;grid-template-columns:1fr 1fr;gap:24px 28px;align-content:start;padding-top:8px}.meta-label{font-size:12px;text-transform:uppercase;color:#888;letter-spacing:.09em;margin-bottom:5px}.meta-value{font-size:15px}.case-media{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;background:#000}.media-block{position:relative;background:#111;min-width:0}.media-block.full{grid-column:1/-1}.media-image{width:100%;height:auto;display:block;max-height:88vh;object-fit:contain;background:#050505}.media-video{display:block;width:100%;max-height:88vh;background:#050505}.media-text{padding:7vw 22px;font-size:clamp(28px,4.5vw,64px);line-height:1.02;letter-spacing:-.025em;max-width:1200px;white-space:pre-line}.embed-wrap{position:relative;width:100%;aspect-ratio:16/9;background:#050505}.embed-wrap.ratio-portrait{aspect-ratio:4/5}.embed-wrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.cover-large{width:100%;height:auto;display:block;max-height:85vh;object-fit:cover}

.project-cover{background:#050505}.project-slider{background:#050505;padding:0 0 16px}.slider-viewport{position:relative;overflow:hidden;background:#050505;touch-action:pan-y}.slider-track{display:flex;will-change:transform;transition:transform .5s cubic-bezier(.22,.61,.36,1)}.slider-slide{position:relative;min-width:100%;margin:0;background:#050505;display:flex;align-items:center;justify-content:center}.slider-image{display:block;width:100%;height:auto;max-height:none;object-fit:contain;background:#050505;user-select:none;-webkit-user-drag:none}.slider-caption{position:absolute;left:22px;right:22px;bottom:18px;padding:9px 12px;background:rgba(0,0,0,.45);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);font-size:13px;line-height:1.3;color:#fff}.slider-arrow{position:absolute;top:50%;transform:translateY(-50%);width:52px;height:52px;border:1px solid rgba(255,255,255,.22);border-radius:50%;background:rgba(0,0,0,.38);color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font-size:34px;line-height:1;cursor:pointer;display:grid;place-items:center;transition:background .2s ease,transform .2s ease}.slider-arrow:hover{background:rgba(255,255,255,.14)}.slider-prev{left:20px}.slider-next{right:20px}.slider-footer{display:flex;align-items:center;justify-content:space-between;padding:12px 22px 0;gap:20px}.slider-count{font-size:12px;color:#888;letter-spacing:.06em}.slider-dots{display:flex;align-items:center;justify-content:flex-end;gap:7px}.slider-dot{width:30px;height:3px;padding:0;border:0;background:rgba(255,255,255,.25);cursor:pointer}.slider-dot.is-active{background:#fff}.project-extra-media{margin-top:2px}.media-caption{padding:10px 12px}
.video-page{padding:120px 22px 70px}.video-title{font-size:clamp(50px,10vw,140px);line-height:.85;margin:0 0 50px;letter-spacing:-.05em}.video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px}.video-block{background:#111}.video-block iframe{display:block;width:100%;aspect-ratio:16/9;border:0}.video-block.portrait iframe{aspect-ratio:4/5}
.contact-page{padding:140px 22px 100px}.contact-page .big{font-size:clamp(45px,9vw,130px);line-height:.84;letter-spacing:-.05em;margin:0 0 80px}.contact-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.contact-label{text-transform:uppercase;letter-spacing:.08em;color:#888;font-size:12px;margin-bottom:8px}.contact-value{font-size:18px;white-space:pre-line}
.site-footer{padding:70px 22px 24px;display:flex;justify-content:space-between;gap:20px;color:#777;font-size:12px}.site-footer a:hover{color:#fff}
@media(max-width:900px){:root{--pad:16px}.site-header{height:70px;padding:10px 16px;background:rgba(8,8,8,.56);-webkit-backdrop-filter:blur(16px) saturate(140%);backdrop-filter:blur(16px) saturate(140%)}.site-logo,.site-logo img{width:60px;height:82px}.site-logo{position:absolute;left:16px;top:-2px;transform:none;z-index:2}.site-logo img{height:84px;object-fit:contain}.nav-left{display:flex;gap:9px;align-items:baseline;position:absolute;left:92px;right:58px;bottom:10px;flex-direction:row;white-space:nowrap}.nav-link{font-size:clamp(11px,2.7vw,17px)}.lang-switch{position:absolute;right:16px;bottom:10px;display:flex;gap:7px;align-items:baseline;padding:0}.lang{font-size:12px}.menu-toggle{display:none!important}.intro{padding:38px 16px 34px;font-size:19px}main{padding-top:68px}case-head{padding:110px 16px 35px;grid-template-columns:1fr;gap:38px}.case-title{font-size:60px}.case-intro{font-size:25px}.case-media{grid-template-columns:1fr}.media-text{padding:70px 16px;font-size:38px}.video-page{padding:100px 16px 60px}.video-title{font-size:80px}.video-grid{grid-template-columns:1fr}.contact-page{padding:110px 16px 80px}.contact-columns{grid-template-columns:1fr}.site-footer{padding:60px 16px 20px}}
@media(max-width:600px){.slider-image{height:auto;min-height:0;max-height:none}.slider-arrow{width:44px;height:44px;font-size:28px}.slider-prev{left:10px}.slider-next{right:10px}.slider-caption{left:10px;right:10px;bottom:10px}.slider-footer{padding-left:10px;padding-right:10px}.slider-dot{width:22px}.site-header{height:70px;overflow:visible;transition:none}.nav-left{gap:7px;left:84px;right:54px;bottom:10px;top:auto;flex-direction:row;align-items:baseline;padding:0;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;border:0;opacity:1;visibility:visible;transform:none;transition:none}.nav-link{font-size:clamp(10px,2.65vw,15px)}.site-header.menu-open{height:70px}.site-header.menu-open .nav-left{opacity:1;visibility:visible;transform:none}.lang-switch{right:12px;bottom:10px;top:auto;gap:5px;align-items:baseline}.lang{font-size:11px}.site-logo{left:16px;top:-2px;width:60px;height:82px;transform:none}.site-logo img{width:60px;height:84px;object-fit:contain}.portfolio-grid{gap:0 10px}.case-title{font-size:48px}.case-intro{font-size:21px}.case-meta{grid-template-columns:1fr 1fr}.video-title{font-size:58px}}
@media(max-width:360px){.nav-left{left:80px;right:48px;gap:5px}.nav-link{font-size:10px}.lang-switch{right:10px;gap:4px}.lang{font-size:10px}.site-logo,.site-logo img{width:56px}.site-logo img{height:78px}}
@media(max-width:600px){.portfolio-grid{gap:0 10px}.project-card picture{display:block;width:100%;height:100%}.project-card img{width:100%;height:100%;object-fit:cover;display:block}.mobile-help{margin-top:4px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

@media(max-width:600px){
  .portfolio-grid{gap:0 10px}
  .project-card picture{display:block;width:100%;height:100%}
  .project-card img{width:100%;height:100%;object-fit:cover;display:block}
  .mobile-help{margin-top:4px}
}

/* V8.16 — compact mobile navigation with wrapped labels */
@media(max-width:600px){
  .nav-left{
    left:96px;
    right:auto;
    width:236px;
    gap:11px;
    align-items:flex-end;
    flex-wrap:nowrap;
  }
  .nav-link{
    white-space:normal;
    line-height:.9;
    font-size:12.5px;
  }
  .nav-link:nth-child(1){width:94px}
  .nav-link:nth-child(2){width:72px}
  .nav-link:nth-child(3){width:56px}
}
@media(max-width:360px){
  .nav-left{
    left:90px;
    width:222px;
    gap:9px;
  }
  .nav-link{font-size:12px}
  .nav-link:nth-child(1){width:88px}
  .nav-link:nth-child(2){width:67px}
  .nav-link:nth-child(3){width:54px}
}


/* V8.18 — unified language selector
   Use the same current-language dropdown on desktop and mobile. */
.lang-mobile{position:relative}
.lang-mobile summary{list-style:none;cursor:pointer}
.lang-mobile summary::-webkit-details-marker{display:none}
.lang-current{font-size:16px;line-height:1;color:#fff;letter-spacing:.02em;padding:0;margin:0}
.lang-current::after{content:'⌄';display:inline-block;margin-left:4px;font-size:12px;transform:translateY(-1px)}
.lang-mobile[open] .lang-current::after{transform:rotate(180deg) translateY(1px)}
.lang-menu{position:absolute;right:0;top:calc(100% + 8px);display:flex;flex-direction:column;min-width:42px;padding:7px 8px;background:rgba(8,8,8,.7);-webkit-backdrop-filter:blur(16px) saturate(140%);backdrop-filter:blur(16px) saturate(140%);border:1px solid rgba(255,255,255,.12);box-shadow:0 8px 25px rgba(0,0,0,.25)}
.lang-option{font-size:14px;line-height:1.1;color:#fff;padding:4px 2px;text-align:center;opacity:.6}
.lang-option.active{opacity:1}
.lang-option:hover{opacity:1}

/* V8.17 — mobile language selector */
.lang-desktop{display:none}
.lang-mobile{display:block;position:relative}
@media(max-width:600px){
  .video-label{display:inline-flex;flex-direction:column;line-height:.9}
  .video-label span{display:block}
}
@media(max-width:360px){
  .lang-current,.lang-option{font-size:10px}
}
/* V8.18 — mobile sizing for the unified language selector */
@media(max-width:600px){
  .lang-current{font-size:11px}
  .lang-option{font-size:11px}
}

/* V8.20 — Video Content packed grid, matching Packaging-style composition */
.video-grid{position:relative;display:block;width:100%;height:0;margin:0;padding:0;overflow:hidden}
.video-card{position:absolute;overflow:visible;background:#111;min-width:0;margin:0;padding:0}
.video-card-media{display:block;position:relative;width:100%;height:auto;overflow:hidden;background:#050505}
.video-card-media iframe,.video-card-media video,.video-card-media img{display:block;width:100%;height:100%;border:0;object-fit:cover;background:#050505}
.video-card.video-vertical .video-card-media iframe,.video-card.video-vertical .video-card-media video,.video-card.video-vertical .video-card-media img{object-position:left}
.video-embed-wrap{position:relative;width:100%;height:100%;background:#050505}
.video-embed-wrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.video-card.video-horizontal .video-card-media{aspect-ratio:16/9}
.video-card.video-vertical .video-card-media{aspect-ratio:4/5}
.video-card-info{background:#050505;padding:14px 0 18px;display:flex;flex-direction:column;gap:8px}
.video-card-info h2{margin:0;font-size:clamp(18px,2vw,28px);line-height:.95;letter-spacing:-.02em;font-weight:400}
.video-card-info p{margin:0;font-size:15px;line-height:1.25;max-width:760px;color:#ddd}
/* Horizontal cards are wide, so client + year sit on one line, dot-separated. */
.video-card.video-horizontal .video-meta{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:11px;line-height:1;text-transform:uppercase;letter-spacing:.09em;color:#888}
.video-card.video-horizontal .video-meta span+span:before{content:'·';margin-right:18px}
/* Vertical cards are narrow — stack client and year on their own lines instead of
   cramming them into one row, so the meta block always adapts to the available width. */
.video-card.video-vertical .video-meta{display:flex;flex-direction:column;gap:4px;font-size:11px;line-height:1.3;text-transform:uppercase;letter-spacing:.09em;color:#888}
.video-card.video-vertical .video-meta span+span:before{content:none;margin-right:0}
@media(max-width:900px){
  .video-grid{height:auto;display:grid;grid-template-columns:1fr 1fr;gap:20px}
  .video-card{position:relative!important;left:auto!important;top:auto!important;width:auto!important;height:auto!important}
}
@media(max-width:600px){
  .video-grid{grid-template-columns:1fr;gap:24px}
  .video-card.video-horizontal .video-card-media{aspect-ratio:16/9}
  .video-card.video-vertical .video-card-media{aspect-ratio:4/5}
  .video-card-info{padding:10px 0 14px}
}
