:root{--ink:#070a0f;--panel:#0d1119;--panel2:#121824;--white:#f6f7fb;--muted:#a5adba;--blue:#2457b8;--electric:#4d7ce3;--line:rgba(255,255,255,.12);--max:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--white);font-family:Inter,Arial,sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.section-pad{padding:110px max(24px,calc((100vw - var(--max))/2))}.site-header{height:84px;position:fixed;inset:0 0 auto;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - var(--max))/2));transition:.3s;border-bottom:1px solid transparent}.site-header.scrolled,.site-header.menu-open{height:70px;background:rgba(7,10,15,.94);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-color:var(--line);box-shadow:0 10px 35px rgba(0,0,0,.22)}.brand img{width:260px;filter:brightness(0) invert(1)}.nav-links{display:flex;align-items:center;gap:32px;font-size:14px;font-weight:600}.nav-links a:not(.nav-cta){color:#d9dee7}.nav-cta{padding:12px 18px;border:1px solid rgba(255,255,255,.4)}.menu-toggle{display:none;background:none;border:0;width:40px}.menu-toggle span{display:block;height:2px;background:white;margin:8px 0}.hero{min-height:790px;height:100vh;position:relative;display:flex;align-items:center;overflow:hidden;padding:120px max(24px,calc((100vw - var(--max))/2)) 70px}.hero-media{position:absolute;inset:0;background:#05070c}
.hero-slide{position:absolute;inset:-1%;opacity:0;background-size:cover;background-position:center;transition:opacity 1.5s ease;will-change:opacity}
.hero-slide.is-active{opacity:1}
.hero-slide-current{background-image:url('../images/hero.webp');background-position:center}
.hero-slide-live{background-image:url('../images/hero-live-production.webp');background-position:center 54%}
.hero-slide-lighting{background-image:url('../images/hero-lighting-production.webp');background-position:center 52%}
.hero-media-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,7,12,.98) 0%,rgba(5,7,12,.78) 44%,rgba(5,7,12,.25) 100%),linear-gradient(0deg,rgba(5,7,12,.85),transparent 50%);z-index:1}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:80px 80px;mask-image:linear-gradient(to right,black,transparent 75%)}.hero-content{position:relative;z-index:2;max-width:800px}.eyebrow,.section-kicker{text-transform:uppercase;letter-spacing:.18em;font-size:12px;font-weight:800;color:#7fa1ef}.hero h1,.section-heading h2,.statement h2,.broadcast h2,.why h2,.about h2,.contact h2{font-family:'Space Grotesk',sans-serif;letter-spacing:-.045em;line-height:.96;margin:.25em 0}.hero h1{font-size:clamp(58px,7.5vw,112px)}.hero h1 span{color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.6)}.hero-copy{font-size:20px;color:#d4d9e2;max-width:680px}.hero-actions{display:flex;gap:14px;margin-top:34px}.button{display:inline-flex;justify-content:center;align-items:center;min-height:52px;padding:0 24px;font-weight:800;font-size:14px;border:1px solid transparent;cursor:pointer}.primary{background:var(--electric)}.secondary{border-color:rgba(255,255,255,.35);background:rgba(7,10,15,.25)}.hero-status{position:absolute;right:max(24px,calc((100vw - var(--max))/2));bottom:38px;z-index:2;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#dfe5ee}.status-light{display:inline-block;width:8px;height:8px;border-radius:50%;background:#61e08b;margin-right:10px;box-shadow:0 0 14px #61e08b}.statement{display:grid;grid-template-columns:1.5fr 1fr;gap:90px;background:#f2f4f8;color:#0a0d13}.statement h2{font-size:clamp(40px,5vw,72px)}.statement-detail{padding-top:48px;font-size:18px;color:#4d5563}.services{background:var(--ink)}.section-heading{max-width:800px;margin-bottom:55px}.section-heading h2,.broadcast h2,.why h2,.about h2,.contact h2{font-size:clamp(42px,5.2vw,74px)}.section-heading>p:last-child{color:var(--muted);font-size:18px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-card{position:relative;padding:34px 28px 40px;min-height:430px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:.25s;background:linear-gradient(180deg,rgba(255,255,255,.02),transparent)}.service-card:hover{background:var(--panel2);transform:translateY(-5px)}.service-number{font-size:11px;color:#667080}.service-icon{font-size:32px;color:#6d93ed;margin:55px 0 24px}.service-card h3{font:700 25px 'Space Grotesk';margin:0 0 16px}.service-card p,.service-card li{color:var(--muted);font-size:14px}.service-card ul{padding:0;list-style:none;margin-top:30px}.service-card li{padding:7px 0;border-top:1px solid rgba(255,255,255,.08)}.broadcast{display:grid;grid-template-columns:1.08fr .92fr;gap:80px;align-items:center;background:#0b1019}.broadcast-visual{height:570px;position:relative;background:radial-gradient(circle at center,#182745 0,#0b1019 64%)}.monitor{position:absolute;background:#080b10;border:1px solid #33405a;box-shadow:0 30px 70px rgba(0,0,0,.45)}.monitor-main{left:5%;right:13%;top:12%;bottom:18%;padding:12px}.monitor-label{font-size:10px;color:#ec6a6a;letter-spacing:.16em;margin-bottom:8px}.monitor-image{height:calc(100% - 22px);background:linear-gradient(rgba(17,34,67,.25),rgba(3,5,8,.35)),url('../images/sports-broadcast.webp') center/cover}.scorebug{position:absolute;left:9%;bottom:11%;display:grid;grid-template-columns:auto 30px auto 30px auto;background:#eef2f7;color:#0b1019;font-size:8px;align-items:center;box-shadow:0 4px 10px #000}.scorebug>*{padding:5px 6px}.scorebug span{background:#173e8c;color:white;font-weight:bold}.scorebug i{background:#d4a92b;font-style:normal}.monitor-side{width:160px;height:96px;right:0;top:8%;display:flex;align-items:end;padding:8px;background:linear-gradient(135deg,#1b2a43,#080b10)}.monitor-side.second{top:30%;right:-3%}.monitor-side span{font-size:9px;color:#9fabc1}.signal-line{position:absolute;left:0;bottom:8%;width:90%;height:1px;background:linear-gradient(90deg,transparent,#4d7ce3,transparent);box-shadow:0 0 12px #4d7ce3}.broadcast-copy>p:not(.section-kicker),.about-copy>p,.contact-copy>p{color:var(--muted);font-size:17px}.feature-list{margin:34px 0}.feature-list>div{display:grid;grid-template-columns:42px 1fr;gap:15px;padding:15px 0;border-top:1px solid var(--line)}.feature-list span{color:#698fe9;font-size:11px}.feature-list p{margin:0;color:var(--muted);font-size:14px}.feature-list b{color:white}.text-link{font-weight:800;border-bottom:1px solid #587cd2;padding-bottom:6px}.text-link span{margin-left:8px}.work{background:#f2f4f8;color:#0a0d13}.work .section-kicker{color:#315fbf}.project-grid{display:grid;grid-template-columns:1.4fr .6fr;grid-template-rows:320px 320px;gap:18px}.project{position:relative;overflow:hidden;background:#111}.project-large{grid-row:1/3}.project-image{position:absolute;inset:0;transition:.5s}.project:hover .project-image{transform:scale(1.035)}.project-photo{background:url('../images/hero.webp') center/cover}.project-broadcast{background:linear-gradient(135deg,rgba(27,57,118,.2),rgba(0,0,0,.5)),url('../images/sports-broadcast.webp') center/cover}.project-community{background:linear-gradient(135deg,rgba(8,12,20,.12),rgba(5,8,13,.35)),url('../images/outdoor-ceremony.webp') 58% center/cover}.project-community:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.18))}.project-overlay{position:absolute;inset:auto 0 0;padding:50px 28px 26px;background:linear-gradient(transparent,rgba(0,0,0,.9));color:white}.project-overlay p{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#8eabef}.project-overlay h3{font:700 24px 'Space Grotesk';margin:4px 0}.project-overlay span{font-size:12px;color:#c3c8d2}.why{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.why-grid{display:grid;grid-template-columns:1fr 1fr}.why-item{padding:28px;border-top:1px solid var(--line)}.why-item:nth-child(odd){border-right:1px solid var(--line)}.why-item>span{font-size:11px;color:#688ee7}.why-item h3{font:700 22px 'Space Grotesk';margin:32px 0 10px}.why-item p{font-size:14px;color:var(--muted)}.about{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;background:#0d121b}.about-image{min-height:560px;background:linear-gradient(180deg,transparent,rgba(0,0,0,.75)),url('../images/about-us.webp') center/cover;position:relative}.about-badge{position:absolute;left:24px;bottom:24px;background:rgba(6,8,13,.88);padding:18px 22px;font-size:10px;letter-spacing:.12em}.about-badge b{font-size:13px}.contact{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px;background:#f2f4f8;color:#0a0d13}.contact-details{display:flex;flex-direction:column;margin-top:40px;gap:10px;font-weight:700}.quote-form{display:grid;gap:20px;background:white;padding:38px;border:1px solid #dce1e9}.quote-form label{display:grid;gap:7px}.quote-form label span{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:#525c6c}.quote-form input,.quote-form select,.quote-form textarea{font:inherit;width:100%;padding:13px 0;border:0;border-bottom:1px solid #bbc3cf;background:transparent;border-radius:0;outline:0}.quote-form input:focus,.quote-form textarea:focus,.quote-form select:focus{border-color:#315fbf}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:22px}.quote-form .button{border:0;color:white}.form-note{font-size:11px!important;margin:0}.contact .section-kicker{color:#315fbf}footer{padding:55px max(24px,calc((100vw - var(--max))/2));border-top:1px solid var(--line);display:grid;grid-template-columns:260px 1fr;gap:30px;color:var(--muted);font-size:12px}footer img{filter:brightness(0) invert(1);width:250px}footer p{margin:0}footer div{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:25px}.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:950px){.nav-links{display:none;position:absolute;top:70px;left:0;right:0;background:rgba(7,10,15,.98);padding:26px;flex-direction:column;align-items:flex-start}.nav-links.open{display:flex}.menu-toggle{display:block}.brand img{width:210px}.statement,.broadcast,.why,.about,.contact{grid-template-columns:1fr}.service-grid{grid-template-columns:1fr 1fr}.project-grid{grid-template-columns:1fr;grid-template-rows:430px 300px 300px}.project-large{grid-row:auto}.broadcast-visual{order:2}.why-grid{grid-template-columns:1fr 1fr}.contact{gap:50px}}
@media(max-width:620px){.section-pad{padding:78px 22px}.hero{padding-left:22px;padding-right:22px;min-height:720px}.hero h1{font-size:54px}.hero-copy{font-size:17px}.hero-actions{flex-direction:column;align-items:stretch}.hero-status{left:22px;right:auto}.statement{gap:25px}.statement-detail{padding-top:0}.service-grid{grid-template-columns:1fr}.service-card{min-height:auto}.broadcast-visual{height:390px}.monitor-main{left:0;right:5%}.monitor-side{display:none}.project-grid{grid-template-rows:360px 260px 260px}.why-grid{grid-template-columns:1fr}.why-item:nth-child(odd){border-right:0}.about-image{min-height:420px}.quote-form{padding:24px}.form-row{grid-template-columns:1fr}footer{grid-template-columns:1fr}footer div{flex-direction:column;gap:8px}.brand img{width:190px}}


/* Multi-page development build */
.page-hero{min-height:64vh;display:flex;align-items:flex-end;padding:170px max(6vw,28px) 80px;background:radial-gradient(circle at 75% 25%,rgba(30,80,150,.28),transparent 35%),linear-gradient(135deg,#080b11,#111b2b);border-bottom:1px solid rgba(255,255,255,.1)}
.page-hero.compact{min-height:48vh}.page-hero>div{max-width:900px}.page-hero h1{font-family:"Space Grotesk",sans-serif;font-size:clamp(3rem,7vw,6.5rem);line-height:.96;margin:.3em 0}.page-hero p:not(.eyebrow){max-width:720px;font-size:1.15rem;line-height:1.7;color:#b9c3d3}.page-hero .button{margin-top:24px}
.service-detail-grid,.feature-panels,.values-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:rgba(255,255,255,.12);padding-left:max(6vw,28px);padding-right:max(6vw,28px)}
.service-detail-grid article,.feature-panels article,.values-grid article{background:#0b0f16;padding:48px}.service-detail-grid article>span,.values-grid article>span{color:#6d98d6;font-weight:800}.service-detail-grid h2{font-size:2rem}.service-detail-grid ul{padding-left:18px;color:#aeb8c7;line-height:1.9}
.split-intro{display:grid;grid-template-columns:1fr 1fr;gap:80px}.split-intro h2{font-size:clamp(2.4rem,5vw,4.8rem);line-height:1.02}.split-intro>div:last-child{font-size:1.1rem;color:#aeb8c7;line-height:1.8}
.feature-panels{grid-template-columns:repeat(4,minmax(0,1fr))}.feature-panels article{min-height:280px}.feature-panels h3{font-size:1.45rem}.feature-panels p{color:#aeb8c7;line-height:1.7}
.process{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.process>.section-kicker{grid-column:1/-1}.process span{color:#6d98d6;font-weight:800}.process p{color:#aeb8c7;line-height:1.7}
.cta-band{padding:70px max(6vw,28px);display:flex;align-items:center;justify-content:space-between;gap:30px;background:#eef2f8;color:#08101d}.cta-band h2{font-size:clamp(2rem,4vw,4rem);max-width:850px;margin:.2em 0}.cta-band .section-kicker{color:#315d99}
.portfolio-list{display:grid;gap:80px}.portfolio-list article{display:grid;grid-template-columns:1.25fr 1fr;gap:60px;align-items:center}.portfolio-list article:nth-child(even){grid-template-columns:1fr 1.25fr}.portfolio-list article:nth-child(even) .project-image{order:2}.portfolio-list .project-image{height:460px}.portfolio-list h2{font-size:clamp(2rem,4vw,4rem)}.portfolio-list p{color:#aeb8c7;line-height:1.7}.portfolio-list span{color:#6d98d6;text-transform:uppercase;letter-spacing:.12em;font-size:.8rem}
.values-grid article{min-height:270px}.values-grid h3{font-size:1.5rem}.values-grid p{color:#aeb8c7;line-height:1.7}
.quote-page{display:grid;grid-template-columns:1.5fr .7fr;gap:70px;align-items:start}.quote-page aside{position:sticky;top:130px;display:flex;flex-direction:column;gap:14px;padding:36px;border:1px solid rgba(255,255,255,.14);background:#0d131d}.quote-page aside a{color:white}.quote-page aside span,.quote-page aside p{color:#aeb8c7;line-height:1.7}.quote-page hr{width:100%;border:0;border-top:1px solid rgba(255,255,255,.12);margin:18px 0}.contact-card h3{font-size:2rem;margin:.3em 0}.contact-card p{color:#aeb8c7;line-height:1.7}
@media(max-width:900px){.service-detail-grid,.feature-panels,.values-grid,.split-intro,.process,.quote-page{grid-template-columns:1fr}.feature-panels{grid-template-columns:1fr 1fr}.portfolio-list article,.portfolio-list article:nth-child(even){grid-template-columns:1fr}.portfolio-list article:nth-child(even) .project-image{order:0}.quote-page aside{position:static}.cta-band{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.page-hero{padding-top:130px}.legal-section{padding:78px 22px}.feature-panels{grid-template-columns:1fr}.service-detail-grid article,.feature-panels article,.values-grid article{padding:30px}.portfolio-list .project-image{height:300px}}


/* Production utilities */
.skip-link{position:fixed;left:16px;top:-60px;z-index:9999;background:#fff;color:#08101d;padding:12px 16px;font-weight:800}.skip-link:focus{top:16px}.nav-links a[aria-current="page"]:not(.nav-cta){color:#fff}.nav-links a[aria-current="page"]:not(.nav-cta)::after{content:"";display:block;height:1px;background:#6d98d6;margin-top:6px}.form-honeypot{position:absolute!important;left:-9999px!important}.legal-section{padding:110px max(24px,calc((100vw - var(--max))/2))}.legal-copy{width:100%;max-width:850px;margin:0 auto}.legal-copy h2{font-family:"Space Grotesk",sans-serif;font-size:2rem;margin-top:2.2em}.legal-copy p{color:var(--muted);line-height:1.8}.legal-updated{font-size:.85rem;margin-top:4rem}footer div a{color:var(--muted)}footer div a:hover{color:#fff}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}


/* v0.2.5 — Sports broadcast photography */
.broadcast-demo.sports-photo {
  position: relative;
  overflow: hidden;
  background-image: linear-gradient(180deg, rgba(5,9,15,.08), rgba(5,9,15,.38)), url('../images/sports-broadcast.webp');
  background-size: cover;
  background-position: center;
}
.broadcast-demo.sports-photo > * { position: relative; z-index: 1; }
.broadcast-photo-band { padding-top: 0; }
.broadcast-photo-frame { max-width: 1180px; margin: 0 auto; overflow: hidden; border-radius: 18px; border: 1px solid rgba(255,255,255,.12); background:#080b10; }
.broadcast-photo-frame img { display:block; width:100%; height:auto; aspect-ratio: 16 / 9; object-fit:cover; object-position:center; }

/* v0.2.6 — homepage hero slideshow */
@media(max-width:620px){
  .hero-slide-live{background-position:58% center}
  .hero-slide-lighting{background-position:53% center}
}
@media(prefers-reduced-motion:reduce){
  .hero-slide{transition:none}
  .hero-slide:not(.is-active){display:none}
}
