/* Wekker Studios — black editorial system. */
:root{--bg:#080808;--ink:#f3f3ef;--muted:#aaa;--line:#303030;--space:clamp(22px,4.4vw,72px)}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--bg);color:var(--ink);font:400 14px/1.65 Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}img,video{display:block;max-width:100%}button{cursor:pointer}h1,h2,h3,p{margin:0}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[role=button]:focus-visible{outline:2px solid #fff;outline-offset:6px}::selection{background:#eee;color:#000}.skip-link{position:fixed;top:8px;left:8px;transform:translateY(-160%);z-index:1000;background:#fff;color:#000;padding:12px}.skip-link:focus{transform:none}
nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;justify-content:space-between;align-items:center;height:88px;padding:0 var(--space);background:var(--bg);border-bottom:1px solid transparent;transition:border-color .25s}nav.solid{border-color:var(--line)}.logo-img{width:190px;height:auto;max-height:32px;object-fit:contain;object-position:left}.brand{display:block}.nav-links{display:flex;gap:34px;list-style:none;margin:0;padding:0}.nav-links a{color:#aaa;font-size:11px;letter-spacing:.03em;transition:color .2s}.nav-links a:hover{color:#fff}.nav-links li:last-child a{color:#fff;border-bottom:1px solid #777;padding-bottom:5px}.menu-toggle{display:none;background:none;border:0;padding:10px 0;font-size:12px}
.hero{padding:128px var(--space) 0;display:grid;grid-template-columns:1.1fr 1fr;column-gap:6%;align-items:center;max-width:1920px;margin:auto}.hero-copy{padding:12px 0 22px}.hero-tag,.lbl{font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:var(--muted)}.hero-tag{margin-bottom:30px}.hero-title{font-weight:500;font-size:clamp(64px,7.9vw,142px);line-height:.88;letter-spacing:-.074em}.hero-title span{color:#999}.hero-bar{margin-top:38px}.hero-desc{max-width:350px;color:#aaa;font-size:13px;line-height:1.8}.text-link{display:inline-flex;align-items:center;gap:42px;font-size:12px;border-bottom:1px solid #666;padding:12px 0 8px;margin-top:22px}.text-link span{font-size:20px;transition:transform .2s}.text-link:hover span{transform:translate(3px,-3px)}.hero-visual{min-width:0}.hero-media{padding:0;border:0;background:#101010;display:block;width:100%;overflow:hidden;aspect-ratio:1080/1342}.hero-media video{width:100%;height:100%;object-fit:contain}.hero-media-meta{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 0 0;color:#aaa;font-size:9px;letter-spacing:.03em}.motion-toggle{background:none;border:0;border-bottom:1px solid #555;padding:4px 0;color:#ddd;font-size:10px;min-height:36px}.hero-foot{grid-column:1/-1;display:flex;justify-content:space-between;gap:16px;margin-top:35px;padding:21px 0;border-top:1px solid var(--line);font-size:10px;color:#aaa}.hero-foot a{color:#eee}
.ticker{border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;margin-top:20px}.ticker-track{display:flex;justify-content:space-between;gap:30px;padding:19px var(--space);flex-wrap:wrap}.t-item{white-space:nowrap;color:#a0a0a0;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.t-sep{display:none}
.section,.clients-section,.dark,.contact-section{padding:110px var(--space);max-width:1920px;margin:auto}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:65px}.section-heading .lbl{margin-bottom:25px}.section-heading h2,.clients-intro h2,.sec-h,.ch{font-size:clamp(40px,5.1vw,82px);font-weight:500;line-height:1;letter-spacing:-.06em}.section-heading h2 span{color:#999}.section-heading>p{color:#aaa;font-size:11px;line-height:2}.work-count{font-size:10px;color:#aaa}.masonry{column-count:3;column-gap:8px}.mi{display:block;width:100%;break-inside:avoid;min-width:0;padding:0;margin:0 0 8px;border:0;background:none;text-align:left;position:relative;overflow:hidden}.media-frame{overflow:hidden;background:#151515;aspect-ratio:var(--ratio, .8);position:relative}.media-frame img,.media-frame video{width:100%;height:100%;object-fit:contain;transition:transform .6s cubic-bezier(.2,.7,.3,1)}.mi:hover img,.mi:hover video{transform:scale(1.025)}.mi .ov{position:absolute;inset:0;display:flex;align-items:flex-end;padding:18px;background:transparent;opacity:0;pointer-events:none;transition:opacity .25s,background .25s}.mi:hover .ov,.mi:focus-visible .ov{opacity:1;background:#0005}.oi{display:flex;flex-direction:column;gap:3px}.oi span{font-size:9px;letter-spacing:.035em;color:#aaa}.oi p{font-size:13px;line-height:1.4;color:#eee;letter-spacing:-.01em}.mi .oi{flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:3px}.mi .oi span{color:#ddd}.mi .oi p{color:#fff}.vb{position:absolute;bottom:15px;right:15px;border:1px solid #ffffff80;padding:8px 12px;color:white;font-size:10px;line-height:1;background:#0008;pointer-events:none}.mi .vb{top:12px;right:12px;bottom:auto;width:28px;height:28px;padding:0;display:flex;align-items:center;justify-content:center;border:0;border-radius:50%;background:#efefeadb;color:#080808;font-size:9px}
.clients-section{border-top:1px solid var(--line)}.clients-section>.lbl,.dark>.lbl,.contact-section>.lbl{margin-bottom:35px}.clients-intro{margin-bottom:65px}.clients-intro em,.sec-h em,.ch em{font-style:normal;color:#999}.brand-block{margin-bottom:65px}.brand-block:last-child{margin-bottom:0}.brand-header{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:0 0 20px;border-bottom:1px solid var(--line);margin-bottom:24px}.brand-logo{max-width:160px;max-height:40px;width:auto;object-fit:contain}.brand-meta{font-size:10px;color:#aaa}.brand-videos{width:100%}.bvw{position:relative;cursor:pointer;background:#111;overflow:hidden}.bvw video{width:100%;height:auto;max-height:85vh;object-fit:contain}.bvw .ov{position:absolute;bottom:0;left:0;padding:22px;background:#080808}.bvw .vb{bottom:auto;top:18px}.dark{border-top:1px solid var(--line)}.svc-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;align-items:end;margin-bottom:65px}.sec-p{font-size:13px;line-height:1.9;color:#aaa;max-width:390px}.svc-grid{border-top:1px solid var(--line)}.sc{display:grid;grid-template-columns:50px 1.2fr 1fr;gap:25px;align-items:baseline;border-bottom:1px solid var(--line);padding:29px 0;transition:padding .25s}.sc:hover{padding-left:10px}.sn{font-size:10px;color:#aaa}.sc h3{font-size:clamp(18px,1.65vw,27px);font-weight:400;letter-spacing:-.03em;line-height:1.3}.sc>p:last-child{font-size:12px;line-height:1.8;color:#aaa;max-width:400px}.contact-section{border-top:1px solid var(--line);padding-bottom:110px}.cg{display:grid;grid-template-columns:1.15fr 1fr;gap:90px;align-items:start}.ch{margin-bottom:27px}.csub{font-size:13px;line-height:1.8;color:#aaa;max-width:315px}.form{display:flex;flex-direction:column}.fr{display:grid;grid-template-columns:1fr 1fr;gap:30px}.fg{display:flex;flex-direction:column;border-bottom:1px solid #555}.fg label{font-size:10px;color:#aaa;padding-top:16px;padding-bottom:8px}.fg input,.fg textarea,.fg select{width:100%;border:0;outline-offset:1px;background:transparent;border-radius:0;color:#eee;font-size:14px;padding:5px 0 16px;resize:vertical}.fg input::placeholder,.fg textarea::placeholder{color:#aaa;opacity:1}.fg textarea{min-height:100px}.fg select{appearance:auto;color-scheme:dark}.fg select option{background:#111;color:#eee}.fsub{margin-top:30px;background:#efefea;color:#080808;border:1px solid #efefea;padding:16px 25px;align-self:flex-start;font-size:12px;transition:background .2s,color .2s}.fsub:hover{background:transparent;color:#fff}.fsub:disabled{opacity:.5;cursor:wait}.success-msg,.error-msg{display:none;margin-top:25px}.success-msg h3{font-size:23px;font-weight:400;line-height:1.3}.success-msg h3 em{font-style:normal;color:#aaa}.success-msg p{margin-top:14px;color:#aaa;font-size:13px}.error-msg{font-size:13px;color:#f4b7a9}.error-msg a{text-decoration:underline}footer{margin:0 var(--space);padding:30px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:25px;font-size:10px;color:#aaa}.fl{width:150px;max-height:25px;object-fit:contain}.lb{position:fixed;inset:0;z-index:999;display:none;background:#080808f7;align-items:center;justify-content:center;padding:65px}.lb.open{display:flex}.lb-inner{max-width:100%;max-height:82vh}.lb-inner img,.lb-inner video{max-width:84vw;max-height:80vh;object-fit:contain}.lb-x,.lb-nav{position:absolute;background:#080808;border:1px solid #444;color:#eee;min-width:44px;min-height:44px}.lb-x{right:25px;top:20px;padding:10px 18px;font-size:11px}.lb-nav{top:50%;transform:translateY(-50%);font-size:26px}.lb-prev{left:16px}.lb-next{right:16px}.lb-cap{position:absolute;bottom:18px;left:60px;right:60px;text-align:center;color:#bbb;font-size:11px}.js .reveal{opacity:0;transform:translateY(20px);transition:opacity .65s ease,transform .65s ease}.js .reveal.in{opacity:1;transform:none}
@media(min-width:1700px){.hero{grid-template-columns:1.3fr 1fr}.hero-visual{max-width:640px}}@media(max-width:1000px){.hero{column-gap:4%;grid-template-columns:1.1fr 1fr}.hero-title{font-size:clamp(62px,8.8vw,100px)}.hero-tag{font-size:9px}.hero-desc{font-size:12px}.hero-media-meta{align-items:flex-start;flex-direction:column;gap:3px}.section,.clients-section,.dark,.contact-section{padding-top:85px;padding-bottom:85px}.cg{gap:45px}.svc-intro{gap:35px}.sc{grid-template-columns:35px 1fr 1fr;gap:18px}.mi .oi{flex-direction:column;gap:4px}}
@media(max-width:700px){nav{height:74px}.logo-img{width:155px}.menu-toggle{display:flex;align-items:center;gap:15px;min-height:44px}.menu-toggle span{font-size:20px}.nav-links{display:none;position:absolute;top:73px;left:0;right:0;background:#080808;border-bottom:1px solid var(--line);padding:20px var(--space) 30px;flex-direction:column;gap:0}.nav-links.open{display:flex}.nav-links a{display:block;padding:14px 0;font-size:17px}.nav-links li:last-child a{border:0}.hero{padding-top:112px;grid-template-columns:1fr;gap:30px}.hero-copy{padding:0}.hero-tag{margin-bottom:25px}.hero-title{font-size:clamp(65px,14.5vw,103px);line-height:.9}.hero-bar{margin-top:26px;display:flex;flex-direction:column;align-items:flex-start;gap:0}.hero-desc{font-size:13px;max-width:350px}.text-link{margin-top:10px}.hero-media-meta{flex-direction:row;align-items:center}.hero-foot{margin-top:0;font-size:9px}.hero-foot>span{max-width:230px}.ticker{margin-top:0}.ticker-track{justify-content:flex-start;gap:12px 22px}.t-item{font-size:8px}.section,.clients-section,.dark,.contact-section{padding-top:65px;padding-bottom:65px}.section-heading{margin-bottom:35px;align-items:flex-start;flex-direction:column;gap:18px}.section-heading .lbl{margin-bottom:22px}.section-heading h2,.clients-intro h2,.sec-h,.ch{font-size:clamp(40px,9.5vw,62px)}.section-heading>p{font-size:10px}.masonry{column-count:1;column-gap:8px}.mi{margin:0 0 8px}.mi .oi{flex-direction:column;gap:3px;align-items:flex-start}.mi .oi p{max-width:100%;font-size:12px}.mi .oi span{font-size:8px}.clients-intro{margin-bottom:35px}.brand-block{margin-bottom:35px}.brand-logo{max-width:135px;max-height:32px}.brand-meta{font-size:9px}.bvw .ov{padding:12px}.svc-intro,.cg{grid-template-columns:1fr;gap:30px}.svc-intro{margin-bottom:35px}.sc{grid-template-columns:26px 1fr;gap:9px 16px;padding:24px 0}.sc>p:last-child{grid-column:2}.sc h3{font-size:20px}.sc:hover{padding-left:0}.fr{gap:20px}.ch{margin-bottom:20px}footer{align-items:flex-start;flex-direction:column;gap:12px;padding:26px 0}.lb{padding:65px 12px}.lb-inner img,.lb-inner video{max-width:94vw;max-height:75vh}.lb-nav{top:auto;bottom:35px;transform:none}.lb-cap{bottom:90px;left:15px;right:15px}.lb-x{right:14px}.lb-prev{left:calc(50% - 55px)}.lb-next{right:calc(50% - 55px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}}

/* Compact portfolio, matching the original three-column masonry. */
@media(min-width:561px) and (max-width:900px){.masonry{column-count:2}}
@media(hover:none){.mi .ov{inset:auto 0 0;opacity:1;background:#080808b3;padding:9px 12px}.mi .oi span{font-size:8px}.mi .oi p{font-size:11px}}
