*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:Arial,Helvetica,sans-serif;color:#666;background:#fff url('assets/black_valley_bg.jpg') top center no-repeat;font-size:13px;line-height:1.5}a{color:#ff002a;text-decoration:none}a:hover{color:#000}.top{height:84px;color:#fff}.wrap{width:967px;margin:0 auto}.brand{font-size:34px;line-height:44px;padding:12px 0 8px 31px;color:#fff;font-weight:300}.search{float:right;margin-top:-45px;margin-right:31px;width:285px;height:27px;border:1px solid #555;background:#111;color:#aaa;padding:5px 10px;font-style:italic}.nav{height:45px;background:#090909 url('assets/primary_bar_overlay_0.png') repeat;margin:0 auto}.nav ul{list-style:none;margin:0;padding:0 21px;display:flex}.nav a{display:block;color:#999;padding:13px 14px 12px;text-transform:uppercase;font-size:12px}.nav a:hover,.nav a.active{color:#fff}.hero{height:425px;position:relative;padding-bottom:25px;background:url('assets/shadow_12_wide.png') center bottom no-repeat}.hero-frame{height:400px;overflow:hidden;background:#111;position:relative}.hero-frame img{width:100%;height:100%;object-fit:cover;display:block}.hero-title{position:absolute;left:31px;bottom:27px;color:#fff;font-size:18px;font-weight:bold;text-shadow:0 1px 2px #000}.content-shell{background:#fff}.content{width:967px;margin:0 auto;padding:40px 31px 55px;background:#fff url('assets/content-top-shadow.png') center top no-repeat}.what{display:grid;grid-template-columns:1fr 330px;gap:45px;padding-bottom:22px;border-bottom:1px solid #ddd}.what h2,.clients h2,.recent h2{font-size:25px;font-weight:normal;color:#666;margin:0 0 15px}.what p{margin:0 0 17px}.camera{text-align:center}.camera img{max-width:300px;max-height:190px}.clients{padding:20px 0 24px;border-bottom:1px solid #ddd}.logos{display:grid;grid-template-columns:repeat(4,1fr);gap:31px}.logo-box{height:145px;border:1px solid #ddd;padding:6px;display:flex;align-items:center;justify-content:center;background:#fff}.logo-box img{max-width:100%;max-height:125px}.client-link{text-align:right;margin-top:8px}.recent{padding-top:20px;display:grid;grid-template-columns:220px 1fr;gap:32px}.recent-copy p{margin:0 0 18px}.checks{list-style:none;padding:0;margin:35px 0 15px}.checks li:before{content:'✓';color:#39b000;font-size:19px;font-weight:bold;margin-right:10px}.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px 30px}.work-card{border-bottom:1px solid #ddd;padding-bottom:22px}.thumb{border:1px solid #ddd;padding:6px;background:#fff;height:145px}.thumb img{width:100%;height:100%;object-fit:cover}.work-card h3{font-size:14px;line-height:1.2;margin:10px 0 0;color:#ff002a}.footer{background:#e5e5e5;border-top:1px solid #ccc;color:#aaa}.footer-inner{width:967px;margin:0 auto;padding:18px 31px;font-size:11px;display:flex;justify-content:space-between}.footer nav a{color:#595959;margin-left:18px}.simple-page{min-height:520px}.simple-page h1{font-weight:normal;color:#666}@media(max-width:980px){.wrap,.content,.footer-inner{width:94%}.what,.recent{grid-template-columns:1fr}.search{display:none}.logos{grid-template-columns:repeat(2,1fr)}.work-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.brand{font-size:28px}.nav{height:auto}.nav ul{flex-wrap:wrap}.hero{height:auto}.hero-frame{height:42vw;min-height:210px}.logos,.work-grid{grid-template-columns:1fr}.content{padding-left:20px;padding-right:20px}}
/* v3 — original featured-work carousel */
.hero-frame.carousel{position:relative;height:360px;overflow:hidden;background:#000}
.carousel .slide{position:absolute;inset:0;display:block;opacity:0;visibility:hidden;transition:opacity .55s ease;z-index:1;background:#000;text-decoration:none}
.carousel .slide.active{opacity:1;visibility:visible;z-index:2}
.carousel .slide img{width:100%;height:360px;display:block;object-fit:cover}
.carousel .hero-title{position:absolute;left:28px;bottom:18px;z-index:4;color:#fff;font-size:18px;font-weight:700;text-shadow:0 1px 3px #000}
.carousel .play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:4;width:58px;height:58px;border-radius:50%;background:rgba(255,255,255,.72);color:#666;display:flex;align-items:center;justify-content:center;font-size:27px;padding-left:4px;box-shadow:0 1px 4px rgba(0,0,0,.35)}
.carousel-arrow{position:absolute;z-index:6;top:50%;transform:translateY(-50%);width:34px;height:54px;border:0;background:rgba(0,0,0,.28);color:#fff;font-size:36px;line-height:46px;cursor:pointer;opacity:0;transition:opacity .2s}
.carousel:hover .carousel-arrow{opacity:1}.carousel-arrow.prev{left:0}.carousel-arrow.next{right:0}
@media(max-width:700px){.hero-frame.carousel,.carousel .slide img{height:auto;aspect-ratio:893/360}.carousel .hero-title{left:14px;bottom:10px;font-size:14px}.carousel .play{width:46px;height:46px;font-size:21px}}

/* v4 — client index and original-style client detail pages */
.logo-box{cursor:pointer}
.client-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px 30px;margin-top:28px}
.client-card{display:block;color:#ff002a;border-bottom:1px solid #ddd;padding-bottom:18px}
.client-card-image{height:155px;border:1px solid #ddd;padding:6px;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden}
.client-card-image img{max-width:100%;max-height:140px;object-fit:contain}
.client-card h3{font-size:14px;margin:9px 0 0;color:#ff002a}
.client-page{padding-top:30px}.client-page h1,.clients-index h1{font-size:36px;font-weight:normal;color:#666;margin:0 0 28px;padding-bottom:20px;border-bottom:1px solid #eee}
.client-layout{display:grid;grid-template-columns:300px 1fr;gap:32px}.client-sidebar{border-right:1px solid #ddd;padding-right:0}.client-sidebar h2{font-size:22px;font-weight:normal;margin:0 0 10px}.client-sidebar input{width:100%;height:26px;border:1px solid #ddd}.client-detail{padding-left:0}.client-hero{height:325px;border:1px solid #ddd;padding:10px;display:flex;align-items:center;justify-content:center;margin-bottom:28px;background:#fff}.client-hero img{max-width:100%;max-height:300px;object-fit:contain}.client-detail p{margin:0 0 18px}
@media(max-width:800px){.client-grid{grid-template-columns:repeat(2,1fr)}.client-layout{grid-template-columns:1fr}.client-sidebar{border-right:0}.client-hero{height:auto;min-height:220px}}
@media(max-width:520px){.client-grid{grid-template-columns:1fr}}

/* v6 interaction fixes */
a.logo-box, a.work-card { cursor:pointer; position:relative; z-index:2; transition:transform .16s ease, box-shadow .16s ease; transform-origin:center; }
a.logo-box:hover, a.logo-box:focus-visible, a.work-card:hover, a.work-card:focus-visible { transform:scale(1.035); z-index:10; }
a.logo-box:hover, a.logo-box:focus-visible { box-shadow:0 3px 12px rgba(0,0,0,.18); }
a.work-card:hover .thumb, a.work-card:focus-visible .thumb { box-shadow:0 3px 12px rgba(0,0,0,.18); }
a.work-card:link h3, a.work-card:visited h3, a.work-card:hover h3, a.work-card:active h3 { color:#ff002a; }
a.work-card, a.work-card:visited { text-decoration:none; }

/* v7: original About Us layout */
.about-page{min-height:520px;padding-top:0;position:relative}
.about-page h1{font-size:36px;font-weight:normal;color:#666;margin:0 -31px 40px;padding:30px 31px 28px;border-bottom:1px solid #eee;background:linear-gradient(to right,#fff 65%,#fafafa)}
.breadcrumb{text-align:right;font-size:11px;font-style:italic;color:#aaa;padding-top:12px;margin-bottom:-23px;position:relative;z-index:2}
.breadcrumb a{color:#888}
.about-body{font-size:13px;color:#555;line-height:1.5;min-height:390px}
.about-body p{margin:0 0 19px;max-width:570px}
.about-photo{float:right;width:360px;margin:5px 0 20px 35px;border:1px solid #444;display:block;transition:transform .16s ease,box-shadow .16s ease}
.about-photo img{width:100%;height:auto;display:block}
.about-photo:hover{transform:scale(1.02);box-shadow:0 3px 12px rgba(0,0,0,.18)}
@media(max-width:760px){.about-photo{float:none;width:100%;max-width:360px;margin:0 0 24px}.about-body p{max-width:none}.breadcrumb{display:none}}

/* v8: original Works archive, combined into one scrolling page */
.works-page{padding-top:0;min-height:520px}
.works-page h1{font-size:36px;font-weight:normal;color:#666;margin:0 -31px 40px;padding:30px 31px 28px;border-bottom:1px solid #eee;background:linear-gradient(to right,#fff 65%,#fafafa)}
.works-archive{display:grid;grid-template-columns:repeat(3,1fr);column-gap:32px;row-gap:18px}
.archive-work{display:block;color:#666;text-decoration:none;border-bottom:1px solid #ddd;padding-bottom:20px;transition:transform .16s ease;transform-origin:center;position:relative;z-index:1}
.archive-thumb{border:1px solid #d5d5d5;padding:6px;background:#fff;height:198px;overflow:hidden;transition:box-shadow .16s ease}
.archive-thumb img{width:100%;height:100%;display:block;object-fit:cover}
.archive-work em{display:block;margin-top:12px;color:#666;font-size:12px}
.archive-work:hover,.archive-work:focus-visible{transform:scale(1.025);z-index:5}
.archive-work:hover .archive-thumb,.archive-work:focus-visible .archive-thumb{box-shadow:0 3px 12px rgba(0,0,0,.18)}
.archive-work:hover em{color:#666}
@media(max-width:800px){.works-archive{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.works-archive{grid-template-columns:1fr}.archive-thumb{height:auto;aspect-ratio:425/239}}
/* v9 clients: restore original card content */
.client-card{display:block;color:inherit;border-bottom:1px solid #ddd;padding-bottom:22px;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease}
.client-card:hover{transform:scale(1.025)}
.client-card h3{font-size:14px;margin:9px 0;color:#ff002a}
.client-card p{font-size:12px;line-height:1.45;color:#555;margin:12px 0 14px}
.client-more{display:inline-block;background:#ff1744;color:#fff;text-transform:uppercase;font-size:10px;padding:5px 11px;box-shadow:0 1px 3px rgba(0,0,0,.35)}

/* v11: modernized high-resolution Onset Networks brand header */
.top{height:100px}
.brand.brand-logo{display:block;width:540px;height:88px;padding:9px 0 5px 22px;overflow:hidden}
.brand.brand-logo img{display:block;width:100%;height:100%;object-fit:contain;object-position:left center}
.search{margin-top:-61px}
@media(max-width:980px){.brand.brand-logo{width:500px;max-width:68vw;padding-left:8px}}
@media(max-width:600px){.top{height:82px}.brand.brand-logo{width:92%;max-width:430px;height:76px;padding:8px 0}.search{display:none}}

/* v12: modern navigation + cinematic homepage hero */
body{background:#0b0b0c;color:#5d5d60}
.top{height:112px;background:rgba(8,8,9,.96)}
.top .wrap{position:relative;height:100%}
.brand.brand-logo{width:520px;height:104px;padding:12px 0 8px 0}
.search{display:none}
.nav{height:58px;background:#111;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.08);position:relative;z-index:20}
.nav ul{height:100%;padding:0;align-items:center;gap:7px}
.nav a{padding:19px 18px 17px;color:#aaa;font-size:12px;font-weight:700;letter-spacing:.08em;transition:color .2s ease,background .2s ease}
.nav a:hover,.nav a.active{color:#fff;background:rgba(255,255,255,.045)}
.nav a.active{box-shadow:inset 0 -3px 0 #e10600}
.hero{width:100%;height:min(620px,62vw);padding:0;background:#050505;max-width:none;position:relative}
.hero-frame.carousel{height:100%;width:100%;max-width:1440px;margin:0 auto;background:#050505}
.carousel .slide,.carousel .slide img{height:100%}
.carousel .slide img{object-fit:cover;filter:brightness(.78) contrast(1.04)}
.carousel .slide:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.68) 0%,rgba(0,0,0,.14) 54%,rgba(0,0,0,.16) 100%),linear-gradient(0deg,rgba(0,0,0,.58),transparent 48%);z-index:3;pointer-events:none}
.carousel .hero-title{left:max(32px,calc((100% - 967px)/2 + 31px));bottom:64px;font-size:34px;letter-spacing:-.02em;z-index:5;max-width:620px;text-shadow:0 2px 8px rgba(0,0,0,.7)}
.carousel .play{width:74px;height:74px;background:rgba(255,255,255,.9);color:#d60000;font-size:31px;z-index:5;transition:transform .18s ease,background .18s ease}
.carousel a.slide:hover .play{transform:translate(-50%,-50%) scale(1.08);background:#fff}
.carousel-arrow{width:48px;height:74px;font-size:44px;background:rgba(0,0,0,.36)}
.content-shell{background:#fff}
.content{padding-top:58px}
.what h2,.clients h2,.recent h2{font-size:30px;color:#333;letter-spacing:-.02em}
.what p,.recent-copy p{font-size:14px;line-height:1.7}
.logo-box,.thumb{border-radius:4px}
.footer{background:#161618;border-top:0;color:#777}
.footer nav a{color:#aaa}.footer nav a:hover{color:#fff}
@media(max-width:980px){.top{height:100px}.brand.brand-logo{height:94px;width:500px;max-width:78vw}.nav ul{justify-content:center}.hero{height:56vw;min-height:340px}.carousel .hero-title{left:5%;bottom:42px;font-size:28px}.content{padding-top:44px}}
@media(max-width:600px){.top{height:82px}.brand.brand-logo{height:78px;width:94%;max-width:440px}.nav{height:auto}.nav ul{gap:0;justify-content:flex-start}.nav a{padding:14px 10px;font-size:10px}.hero{height:64vw;min-height:260px}.hero-frame.carousel,.carousel .slide img{height:100%;aspect-ratio:auto}.carousel .hero-title{left:20px;bottom:24px;font-size:21px;max-width:75%}.carousel .play{width:54px;height:54px;font-size:23px}.carousel-arrow{height:56px;width:36px}.content{padding-top:34px}.what h2,.clients h2,.recent h2{font-size:26px}}

/* v14: in-site video lightbox */
.video-modal{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;padding:28px;background:rgba(0,0,0,.9);backdrop-filter:blur(5px)}
.video-modal.open{display:flex}.video-modal-inner{position:relative;width:min(1120px,94vw);aspect-ratio:16/9;background:#000;box-shadow:0 24px 80px rgba(0,0,0,.55)}
.video-modal iframe{width:100%;height:100%;border:0;display:block}.video-modal-close{position:absolute;right:-10px;top:-48px;width:40px;height:40px;border:0;border-radius:50%;background:#fff;color:#111;font-size:28px;line-height:40px;cursor:pointer;box-shadow:0 4px 18px rgba(0,0,0,.3)}
.video-link{cursor:pointer}.video-link .thumb,.video-link .archive-thumb{position:relative}.video-link .thumb:after,.video-link .archive-thumb:after{content:'▶';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:rgba(0,0,0,.68);color:#fff;font-size:22px;opacity:.9;transition:.2s ease}.video-link:hover .thumb:after,.video-link:hover .archive-thumb:after{transform:translate(-50%,-50%) scale(1.1);background:#d20a0a}
@media(max-width:700px){.video-modal{padding:14px}.video-modal-close{right:0;top:-45px}}

/* v15 — modern client portfolio */
.clients-modern{padding-top:54px}.clients-kicker,.case-kicker{font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#d20a0a;margin-bottom:12px}.clients-modern h1{font-size:46px;line-height:1.05;color:#222;margin:0 0 16px;font-weight:700;border:0;padding:0}.clients-intro{max-width:700px;font-size:17px;line-height:1.65;color:#666;margin:0 0 42px}.client-grid-modern{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.client-tile{position:relative;min-height:235px;border:1px solid #e5e5e5;background:#fff;display:flex;flex-direction:column;justify-content:space-between;padding:30px;text-decoration:none;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.client-tile:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(0,0,0,.12);border-color:#ddd}.client-tile-logo{height:125px;display:flex;align-items:center;justify-content:center}.client-tile-logo img{max-width:88%;max-height:112px;object-fit:contain;transition:transform .25s ease}.client-tile:hover img{transform:scale(1.06)}.client-tile-bottom{display:flex;align-items:end;justify-content:space-between;gap:15px;margin-top:18px}.client-tile h2{font-size:16px;color:#222;margin:0;font-weight:700}.client-tile .view-work{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#d20a0a;white-space:nowrap}.client-tile:hover .view-work{color:#111}.client-tile.featured{background:#151515;border-color:#151515}.client-tile.featured h2{color:#fff}.client-tile.featured .client-tile-logo{background:#fff;margin:-30px -30px 0;padding:24px;height:160px}
.case-page{padding-top:0}.case-hero{margin:0 -31px;background:#121212;color:#fff;display:grid;grid-template-columns:1.05fr 1fr;min-height:440px}.case-hero-copy{padding:64px 52px;display:flex;flex-direction:column;justify-content:center}.case-hero h1{font-size:52px;line-height:1.02;color:#fff;margin:0 0 18px;border:0;padding:0;font-weight:700}.case-deck{font-size:20px;line-height:1.5;color:#cfcfcf;margin:0;max-width:560px}.case-visual{position:relative;min-height:440px;background:#222;overflow:hidden}.case-visual img{width:100%;height:100%;object-fit:cover;display:block}.case-visual.logo-visual{background:#fff;padding:55px}.case-visual.logo-visual img{object-fit:contain}.case-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:76px;height:76px;border-radius:50%;display:grid;place-items:center;background:#d20a0a;color:#fff;font-size:28px;box-shadow:0 8px 28px rgba(0,0,0,.35);transition:.2s ease}.case-visual:hover .case-play{transform:translate(-50%,-50%) scale(1.08)}.case-body{display:grid;grid-template-columns:1.25fr .75fr;gap:70px;padding:58px 0 20px}.case-body h2{font-size:27px;color:#222;margin:0 0 18px}.case-body p{font-size:15px;line-height:1.75;color:#555;margin:0 0 20px}.case-facts{border-left:1px solid #ddd;padding-left:34px}.case-facts h3{font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:#999;margin:0 0 10px}.case-facts p{font-size:14px}.case-facts a{font-weight:700}.case-labels{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.case-label{font-size:10px;letter-spacing:.1em;text-transform:uppercase;border:1px solid #ddd;padding:7px 10px;color:#666}.case-next{margin-top:45px;padding:28px 0 0;border-top:1px solid #ddd;display:flex;justify-content:space-between;align-items:center}.case-next a{font-size:14px;font-weight:700}.case-note{font-size:11px;color:#999;margin-top:20px}
@media(max-width:850px){.client-grid-modern{grid-template-columns:repeat(2,1fr)}.case-hero{grid-template-columns:1fr}.case-hero-copy{padding:45px 30px}.case-hero h1{font-size:42px}.case-visual{min-height:330px}.case-body{grid-template-columns:1fr;gap:35px}.case-facts{border-left:0;border-top:1px solid #ddd;padding:28px 0 0}}
@media(max-width:560px){.client-grid-modern{grid-template-columns:1fr}.clients-modern h1{font-size:38px}.case-hero{margin:0 -20px}.case-hero h1{font-size:36px}.case-deck{font-size:17px}}

/* v16: client case-study hero — 25% description / 75% featured visual */
.case-hero{grid-template-columns:1fr 3fr}
.case-hero-copy{padding:52px 30px}
.case-hero h1{font-size:44px}
.case-deck{font-size:18px;line-height:1.45}
@media(max-width:850px){.case-hero{grid-template-columns:1fr}.case-hero-copy{padding:45px 30px}.case-hero h1{font-size:42px}.case-deck{font-size:18px}}

/* v17 — modern About + Work portfolio */
.modern-cta{display:inline-block;margin-top:24px;padding:13px 18px;background:#d20a0a;color:#fff;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;transition:.2s ease}.modern-cta:hover{background:#111;color:#fff;transform:translateY(-2px)}
.about-modern{padding-top:0}.about-hero-modern{margin:0 -31px;display:grid;grid-template-columns:1fr 1.55fr;background:#121212;min-height:500px}.about-hero-copy{padding:68px 48px;display:flex;flex-direction:column;justify-content:center}.about-hero-copy h1{margin:0;color:#fff;font-size:54px;line-height:1.02;letter-spacing:-.035em}.about-hero-copy p{font-size:18px;line-height:1.65;color:#c7c7c7;margin:22px 0 0;max-width:470px}.about-hero-copy .modern-cta{align-self:flex-start}.about-hero-image{min-height:500px;overflow:hidden}.about-hero-image img{width:100%;height:100%;display:block;object-fit:cover}.about-statement{padding:72px 5% 65px;border-bottom:1px solid #e5e5e5}.about-statement p{font-size:32px;line-height:1.35;letter-spacing:-.025em;color:#252525;max-width:830px;margin:0}.about-details{display:grid;grid-template-columns:1.45fr .55fr;gap:80px;padding:70px 0}.about-details h2,.about-clients-strip h2,.about-contact-band h2{font-size:34px;line-height:1.15;color:#222;margin:0 0 22px;letter-spacing:-.025em}.about-details p{font-size:15px;line-height:1.8;color:#555;max-width:610px}.about-details aside{border-left:1px solid #ddd;padding-left:35px}.about-stat{padding:0 0 26px;margin:0 0 26px;border-bottom:1px solid #e6e6e6}.about-stat:last-child{border:0}.about-stat strong{display:block;color:#222;font-size:22px;letter-spacing:.02em}.about-stat span{display:block;color:#777;font-size:12px;line-height:1.55;margin-top:5px}.about-clients-strip{border-top:1px solid #ddd;padding:52px 0;display:grid;grid-template-columns:1fr 1.25fr auto;align-items:end;gap:30px}.about-clients-strip h2{font-size:27px;margin:0}.about-clients-strip p{margin:0;color:#555;font-size:14px;line-height:1.8}.about-clients-strip a{font-size:10px;font-weight:700;letter-spacing:.1em;color:#d20a0a;white-space:nowrap}.about-contact-band{margin:30px -31px -55px;padding:58px 62px;background:#d20a0a;color:#fff}.about-contact-band h2{color:#fff;font-size:38px;margin-bottom:8px}.about-contact-band p{color:#fff;margin:0;font-size:16px}.modern-cta.light{background:#fff;color:#111}.modern-cta.light:hover{background:#111;color:#fff}
.works-modern{padding-top:0}.works-intro-modern{padding:70px 0 54px;max-width:760px}.works-intro-modern h1{font-size:54px;line-height:1.03;letter-spacing:-.035em;color:#222;margin:0 0 20px}.works-intro-modern p{font-size:18px;line-height:1.65;color:#666;margin:0;max-width:670px}.works-grid-modern{display:grid;grid-template-columns:repeat(2,1fr);gap:46px 28px}.work-card-modern{display:block;color:inherit;text-decoration:none}.work-image-modern{position:relative;aspect-ratio:16/9;background:#111;overflow:hidden}.work-image-modern img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease,filter .4s ease}.work-card-modern:hover .work-image-modern img{transform:scale(1.035);filter:brightness(.72)}.work-play-modern{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:62px;height:62px;border-radius:50%;display:grid;place-items:center;background:#d20a0a;color:#fff;font-size:21px;padding-left:3px;box-shadow:0 7px 25px rgba(0,0,0,.28);transition:.22s ease}.work-card-modern:hover .work-play-modern{transform:translate(-50%,-50%) scale(1.1);background:#fff;color:#d20a0a}.work-meta-modern{padding:16px 2px 0}.work-meta-modern span{font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:#999}.work-meta-modern h2{font-size:23px;line-height:1.2;color:#222;margin:6px 0 9px}.work-meta-modern b{font-size:10px;letter-spacing:.1em;color:#d20a0a}.work-featured{grid-column:span 2}.work-featured .work-image-modern{aspect-ratio:2.15/1}.work-featured .work-meta-modern h2{font-size:30px}.works-end-modern{margin-top:72px;padding:58px 0 5px;border-top:1px solid #ddd}.works-end-modern h2{font-size:36px;color:#222;margin:0 0 8px}.works-end-modern p{font-size:16px;margin:0}
@media(max-width:800px){.about-hero-modern{grid-template-columns:1fr;margin:0 -20px}.about-hero-copy{padding:48px 30px}.about-hero-copy h1,.works-intro-modern h1{font-size:42px}.about-hero-image{min-height:340px}.about-statement{padding:50px 0}.about-statement p{font-size:27px}.about-details{grid-template-columns:1fr;gap:35px;padding:50px 0}.about-details aside{border-left:0;border-top:1px solid #ddd;padding:30px 0 0}.about-clients-strip{grid-template-columns:1fr;align-items:start}.about-contact-band{margin-left:-20px;margin-right:-20px;padding:45px 30px}.works-grid-modern{grid-template-columns:1fr}.work-featured{grid-column:auto}.work-featured .work-image-modern{aspect-ratio:16/9}.work-featured .work-meta-modern h2{font-size:23px}}

/* v18 — cohesive modern homepage */
.home-modern{padding-top:0}.home-intro-modern{padding:74px 0 68px;max-width:820px}.home-intro-modern h1{font-size:58px;line-height:1.02;letter-spacing:-.04em;color:#222;margin:0 0 22px}.home-intro-modern p{font-size:19px;line-height:1.65;color:#666;max-width:700px;margin:0}.home-statement-modern{margin:0 -31px;padding:68px 8%;background:#121212}.home-statement-modern p{max-width:900px;margin:0;color:#fff;font-size:34px;line-height:1.32;letter-spacing:-.025em}.home-work-modern{padding:72px 0}.home-section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:30px}.home-section-head h2,.home-capabilities-modern h2,.home-clients-modern h2{font-size:36px;line-height:1.12;letter-spacing:-.03em;color:#222;margin:0}.home-section-head>a,.home-cap-copy>a{font-size:10px;font-weight:700;letter-spacing:.11em;color:#d20a0a;white-space:nowrap}.home-work-grid-modern{display:grid;grid-template-columns:repeat(2,1fr);gap:42px 28px}.home-work-featured{grid-column:span 2}.home-work-featured .work-image-modern{aspect-ratio:2.15/1}.home-work-featured .work-meta-modern h2{font-size:30px}.home-capabilities-modern{border-top:1px solid #ddd;border-bottom:1px solid #ddd;padding:70px 0;display:grid;grid-template-columns:.9fr 1.1fr;gap:80px}.home-cap-copy>p{font-size:16px;line-height:1.8;color:#555;margin:0 0 28px}.home-services{display:grid;grid-template-columns:repeat(2,1fr);gap:0 30px;margin:0 0 30px;border-top:1px solid #e3e3e3}.home-services span{font-size:12px;color:#444;padding:13px 0;border-bottom:1px solid #e3e3e3}.home-clients-modern{padding:70px 0}.home-client-logos{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.home-client-logos a{height:150px;border:1px solid #e4e4e4;background:#fff;display:flex;align-items:center;justify-content:center;padding:22px;transition:transform .22s ease,box-shadow .22s ease}.home-client-logos a:hover{transform:translateY(-5px);box-shadow:0 16px 34px rgba(0,0,0,.1)}.home-client-logos img{max-width:90%;max-height:100px;object-fit:contain}.home-contact-band{margin:10px -31px -55px;padding:60px 62px;background:#d20a0a;color:#fff;display:flex;align-items:end;justify-content:space-between;gap:35px}.home-contact-band .clients-kicker{color:#fff;opacity:.75}.home-contact-band h2{font-size:40px;line-height:1.1;letter-spacing:-.03em;color:#fff;margin:0 0 8px}.home-contact-band p{font-size:16px;color:#fff;margin:0}.home-contact-band .modern-cta{margin:0;white-space:nowrap}
@media(max-width:800px){.home-intro-modern{padding:52px 0}.home-intro-modern h1{font-size:43px}.home-statement-modern{margin:0 -20px;padding:50px 30px}.home-statement-modern p{font-size:28px}.home-section-head{align-items:start}.home-work-grid-modern{grid-template-columns:1fr}.home-work-featured{grid-column:auto}.home-work-featured .work-image-modern{aspect-ratio:16/9}.home-capabilities-modern{grid-template-columns:1fr;gap:35px;padding:52px 0}.home-client-logos{grid-template-columns:repeat(2,1fr)}.home-contact-band{margin-left:-20px;margin-right:-20px;padding:46px 30px;align-items:start;flex-direction:column}.home-section-head h2,.home-capabilities-modern h2,.home-clients-modern h2{font-size:31px}}
@media(max-width:520px){.home-client-logos{grid-template-columns:1fr}.home-section-head{display:block}.home-section-head>a{display:inline-block;margin-top:18px}.home-services{grid-template-columns:1fr}.home-contact-band h2{font-size:34px}}


/* v19 — consolidated scrolling homepage; About content moved home */
.home-v19 .home-intro-modern{max-width:900px;padding-bottom:72px}.home-v19 .home-intro-modern h1{max-width:850px}.home-lead{max-width:790px!important}.home-original-story{margin:0 -31px;padding:72px 7%;background:#121212;color:#fff;display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.home-original-story h2{font-size:39px;line-height:1.12;letter-spacing:-.03em;color:#fff;margin:0}.home-original-copy p{font-size:17px;line-height:1.8;color:#c9c9c9;margin:0 0 22px}.home-original-copy p:last-child{margin-bottom:0}.home-proof-band{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid #ddd}.home-proof-band>div{padding:34px 28px;border-right:1px solid #ddd}.home-proof-band>div:first-child{padding-left:0}.home-proof-band>div:last-child{border-right:0}.home-proof-band strong{display:block;font-size:23px;color:#222;letter-spacing:.01em}.home-proof-band span{display:block;margin-top:5px;font-size:11px;line-height:1.5;text-transform:uppercase;letter-spacing:.08em;color:#888}.home-production-modern{padding:72px 0;border-top:1px solid #ddd;border-bottom:1px solid #ddd;display:grid;grid-template-columns:1.05fr .95fr;gap:80px}.home-production-modern h2{font-size:36px;line-height:1.12;letter-spacing:-.03em;color:#222;margin:0 0 24px}.home-production-modern p{font-size:16px;line-height:1.8;color:#555;margin:0;max-width:570px}.home-production-modern .home-services{margin:0}.home-production-modern .home-services span{font-size:12px}.nav ul{justify-content:flex-start}
@media(max-width:800px){.home-original-story{margin:0 -20px;padding:52px 30px;grid-template-columns:1fr;gap:28px}.home-original-story h2{font-size:32px}.home-proof-band{grid-template-columns:1fr}.home-proof-band>div,.home-proof-band>div:first-child{padding:22px 0;border-right:0;border-bottom:1px solid #ddd}.home-proof-band>div:last-child{border-bottom:0}.home-production-modern{grid-template-columns:1fr;gap:38px;padding:52px 0}}

/* v20: stronger masthead branding */
@media(min-width:981px){
  .top{height:132px}
  .brand.brand-logo{width:702px;height:124px;padding:8px 0 4px 0}
}

/* v21: editorial masthead — brand left, navigation weighted right */
@media(min-width:981px){
  .top{height:138px;display:flex;align-items:center}
  .top.wrap{width:967px}
  .brand.brand-logo{width:475px;height:126px;padding:8px 0;margin:0;display:flex;align-items:center}
  .brand.brand-logo img{width:100%;height:100%;object-fit:contain;object-position:left center}
  .nav{height:72px;background:#0b0b0b}
  .nav .wrap{width:967px}
  .nav ul{height:72px;justify-content:flex-end;gap:18px;padding:0}
  .nav a{padding:25px 12px 22px;font-size:13px;letter-spacing:.11em}
}

/* v22: single-line masthead — logo left, navigation right, vertically centered */
@media(min-width:981px){
  .top{height:138px;position:relative;z-index:30;display:flex;align-items:center}
  .top .wrap{height:138px;display:flex;align-items:center}
  .brand.brand-logo{width:475px;height:118px;padding:8px 0;margin:0;display:flex;align-items:center}
  .brand.brand-logo img{width:100%;height:100%;object-fit:contain;object-position:left center}
  .nav{position:absolute;top:0;left:0;right:0;height:138px;background:transparent;border:0;z-index:31;pointer-events:none}
  .nav .wrap{height:138px;display:flex;align-items:center;justify-content:flex-end}
  .nav ul{height:auto;display:flex;align-items:center;justify-content:flex-end;gap:24px;padding:0;margin:0;pointer-events:auto}
  .nav a{padding:18px 10px;color:#aaa;font-size:13px;font-weight:700;letter-spacing:.11em;background:transparent!important;box-shadow:none!important}
  .nav a:hover,.nav a.active{color:#fff;background:transparent!important}
  .nav a.active{box-shadow:inset 0 -3px 0 #e10600!important}
}

/* v23: lower desktop navigation to align menu text with visual center of logo */
@media(min-width:981px){
  .nav .wrap{transform:translateY(10px)}
}

/* v24: align top edge of desktop menu text with top edge of logo */
@media(min-width:981px){
  .nav .wrap{transform:none;align-items:flex-start;padding-top:18px;box-sizing:border-box}
  .nav ul{align-items:flex-start}
  .nav a{padding-top:0;padding-bottom:18px}
}

/* v25: align bottom of desktop menu words with bottom of Onset Networks logo */
@media(min-width:981px){
  .nav .wrap{transform:none;align-items:flex-start;padding-top:82px;box-sizing:border-box}
  .nav ul{align-items:flex-start}
  .nav a{padding-top:0;padding-bottom:0}
}

/* v26: true single-row desktop masthead — logo and menu share the same flex line */
@media(min-width:981px){
  .top{height:138px;display:block;position:relative;z-index:30}
  .top .wrap{width:967px;height:138px;display:flex;align-items:center;justify-content:flex-start}
  .brand.brand-logo{width:475px;height:118px;padding:8px 0;margin:0;display:flex;align-items:center;flex:0 0 475px}
  .nav{position:absolute;top:0;left:50%;right:auto;transform:translateX(-50%);width:967px;height:138px;background:transparent;border:0;z-index:31;pointer-events:none}
  .nav.wrap{display:flex;align-items:center;justify-content:flex-end;padding:0;box-sizing:border-box}
  .nav ul{height:auto;margin:0;padding:0;display:flex;align-items:center;justify-content:flex-end;gap:24px;pointer-events:auto}
  .nav a{display:block;padding:18px 10px;color:#aaa;font-size:13px;font-weight:700;letter-spacing:.11em;background:transparent!important;box-shadow:none!important}
  .nav a:hover,.nav a.active{color:#fff;background:transparent!important}
  .nav a.active{box-shadow:inset 0 -3px 0 #e10600!important}
}

/* v29: feature-film portfolio treatment */
.work-description-modern{font-size:13px;line-height:1.6;color:#777;margin:8px 0 14px;max-width:420px}
.film-site-link{display:block;margin-top:9px;font-style:normal;font-size:10px;font-weight:700;letter-spacing:.09em;color:#888;cursor:pointer}
.film-site-link:hover{color:#e10600}

/* v30 — unified typography system */
:root{
  --onset-font: Inter, "Helvetica Neue", Helvetica, Arial, sans-serif;
}
html,body,button,input,textarea,select{font-family:var(--onset-font)}
body{font-size:14px;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}

/* Navigation + utility typography */
.nav a{font-family:var(--onset-font);font-weight:600;letter-spacing:.105em}
.clients-kicker,.case-kicker,.work-meta-modern span,.work-meta-modern b,.view-work,.modern-cta,.home-section-head>a,.home-cap-copy>a,.about-clients-strip a,.film-site-link{font-family:var(--onset-font);font-weight:650}

/* Display typography */
.home-intro-modern h1,.works-intro-modern h1,.clients-modern h1,
.about-hero-copy h1,.case-copy h1,.simple-page h1,
.home-original-story h2,.home-section-head h2,.home-capabilities-modern h2,.home-clients-modern h2,
.home-contact-band h2,.works-end-modern h2,.about-details h2,.about-clients-strip h2,.about-contact-band h2,
.work-meta-modern h2,.client-tile h2{
  font-family:var(--onset-font);
  font-weight:700;
  text-rendering:optimizeLegibility;
}
.home-intro-modern h1,.works-intro-modern h1,.clients-modern h1,.about-hero-copy h1,.case-copy h1{letter-spacing:-.045em}
.home-original-story h2,.home-section-head h2,.home-capabilities-modern h2,.home-clients-modern h2,.home-contact-band h2,.works-end-modern h2{letter-spacing:-.03em}
.work-meta-modern h2,.client-tile h2{letter-spacing:-.015em}

/* Editorial/body copy */
.home-intro-modern p,.home-original-copy p,.home-production-modern p,.home-cap-copy>p,
.works-intro-modern p,.clients-intro,.about-statement p,.about-details p,.case-copy p,.client-detail p,
.work-description-modern,.home-contact-band p,.about-contact-band p{font-family:var(--onset-font);font-weight:400}

/* Keep small labels crisp and intentional */
.home-services span,.home-proof-band span,.about-stat span,.work-meta-modern span,.work-meta-modern b,.film-site-link{letter-spacing:.09em}
