@font-face{font-family:Gilroy;src:url('/assets/Gilroy-Bold.ttf')}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:#090d11;color:#f5f6f7;font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,summary,a{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible{outline:2px solid #4cd7f6;outline-offset:6px}p{font-size:17px;line-height:1.7;color:#aeb7c1}h1,h2,h3,.logo{font-family:Gilroy,Arial,sans-serif;margin:0;font-weight:700;letter-spacing:-.045em}h1{font-size:clamp(54px,6.5vw,100px);line-height:1.02}h2{font-size:clamp(36px,4vw,62px);line-height:1.08}h2 span{color:#8895a2}h3{font-size:28px}em{font-style:normal;color:#65c7ed}header{height:104px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;gap:40px;background:#090d11;position:relative;z-index:30;border-bottom:1px solid #ffffff13}.logo{font-size:38px;letter-spacing:-2px;line-height:.85;display:inline-flex;flex-direction:column}.logo span{font:8px Arial;letter-spacing:4px;margin-top:9px}nav{display:flex;align-items:center;gap:34px;font-size:14px}nav>a{color:#bec6ce}nav>a:hover{color:#65c7ed}.talk{border-bottom:1px solid #5e6871;padding:12px 0;font-size:14px}.talk span{margin-left:35px;color:#65c7ed}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.navdrop summary{padding:32px 0}.navdrop summary span{padding-left:10px;color:#6dc8ef}.navdrop>div{position:absolute;top:87px;left:30%;background:#121b23;padding:20px;width:370px;border:1px solid #36414c;box-shadow:0 20px 50px #0009}.navdrop a{display:flex;justify-content:space-between;padding:12px;font-size:15px}.navdrop a:hover{background:#223342}.mobile{display:none}.skip{position:absolute;top:-100px}.skip:focus{top:0;z-index:100;background:black;padding:15px}.hero{height:calc(100svh - 104px);min-height:650px;max-height:1000px;position:relative;padding:70px 7% 0;overflow:hidden}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;animation:zoom 20s ease-out both}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#03080de8 0%,#05101a7a 60%,#030a1230),linear-gradient(0deg,#090d11,transparent 40%)}.hero-content{position:relative;z-index:1;max-width:1250px;margin:auto}.eyebrow{font:11px Arial;letter-spacing:2px;text-transform:uppercase;display:flex;align-items:center;gap:12px;margin:0 0 28px;color:#cad4dc}.eyebrow i{width:6px;height:6px;display:inline-block;background:#71cdef;box-shadow:0 0 16px #65c7ed;border-radius:50%}.hero h1{font-size:clamp(80px,9.5vw,148px);line-height:.92;letter-spacing:-.055em}.hero h1 em{display:inline-block;background:linear-gradient(95deg,#70c8ef,#739bc7);color:transparent;background-clip:text}.hero-bottom{display:flex;gap:65px;align-items:center;margin-top:32px}.hero-bottom p{color:#d6dce2;font-size:15px}.button{display:inline-flex;align-items:center;gap:35px;background:#b5e6fa;color:#0c1b25;padding:19px 24px;font-size:13px;font-weight:600;transition:background .2s,transform .2s}.button:hover{background:white;transform:translateY(-3px)}.hero-meta{position:absolute;bottom:26px;left:7%;right:7%;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.5px;color:#b4c3cf}.ticker{padding:27px 5%;display:flex;justify-content:space-around;gap:25px;background:#172530;color:#8dcdeb;font-size:19px;letter-spacing:1px;white-space:nowrap;overflow:hidden}.ticker span{font-size:11px;letter-spacing:2px}section:not(.hero):not(.page-intro){padding:100px 7%}.intro-grid{display:grid;grid-template-columns:1fr 2.4fr 1fr;gap:45px;max-width:1600px;margin:auto}.intro-grid p{max-width:600px}.numbers{border-left:1px solid #303b45;padding-left:40px}.numbers strong{display:block;font-size:58px;letter-spacing:-3px;color:#9ed5ed}.numbers p{font-size:12px;margin:8px 0 28px}.text-link{display:inline-block;font-size:14px;border-bottom:1px solid #547b90;padding:10px 0;margin-top:16px}.text-link:hover{color:#9ed5ed}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:44px}.section-heading p{font-size:14px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{position:relative;overflow:hidden;min-height:330px;background:#111b24}.service-card img{width:100%;height:330px;object-fit:cover;filter:brightness(.6) saturate(.65);transition:transform .65s,filter .65s}.service-card:hover img{transform:scale(1.045);filter:brightness(.85) saturate(1)}.service-card:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent,#050c14d9)}.service-card>div{position:absolute;bottom:26px;left:24px;right:24px;z-index:1}.service-card span{font-size:10px;color:#a7c4d6}.service-card h3{margin-top:12px;font-size:26px;max-width:85%}.service-card b{position:absolute;right:0;bottom:0;font-size:24px;color:#99d5f1}.service-card:last-child{grid-column:span 3;min-height:250px}.service-card:last-child img{height:250px}.work-feature{display:grid;grid-template-columns:1.3fr 1fr;gap:70px;background:#101b24;align-items:center}.work-feature img{width:100%;height:540px;object-fit:cover}.work-feature p{max-width:410px}.team-teaser{background:radial-gradient(ellipse at 85% 110%,#163f5d,transparent 60%);border-bottom:1px solid #273643;position:relative}.team-teaser .button{margin-top:35px}.page-intro{padding:90px 7% 65px;max-width:1450px}.page-intro h1{max-width:1100px}.lead{max-width:700px;font-size:21px;margin-top:30px}.wide-image{padding:0 7%}.wide-image img{width:100%;height:520px;object-fit:cover}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.detail-grid p{max-width:520px}.accordion{border-top:1px solid #35404a}.accordion:last-child{border-bottom:1px solid #35404a}.accordion summary{display:flex;align-items:center;gap:24px;padding:25px 0;font-size:19px;line-height:1.4}.accordion summary span{color:#7da3bb;font-size:10px}.accordion summary b{margin-left:auto;color:#9cdcf6;font-size:23px;font-weight:400}.accordion[open] summary b{transform:rotate(45deg)}.accordion p{padding:0 30px 16px;font-size:15px}.split{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center;background:#101820}.split img{width:100%;height:440px;object-fit:cover}.split h2{font-size:44px}.copy{max-width:1000px}.related>div{display:flex;flex-wrap:wrap;gap:16px;margin-top:35px}.related a{padding:15px 20px;border:1px solid #344351;color:#bdd9e8;font-size:14px}.related a:hover{background:#1c3343}.people-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px 25px}.person img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;object-position:top;filter:saturate(.7);transition:filter .3s}.person:hover img{filter:saturate(1)}.person p{font-size:11px;letter-spacing:.5px;margin:18px 0 7px;color:#88b9d3}.person h2{font-size:29px;letter-spacing:-1px}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px 30px}.project-grid img{width:100%;height:360px;object-fit:cover}.project-grid p{font-size:10px;letter-spacing:2px;color:#85b8d2}.project-grid h2{font-size:32px}.news-links a{display:block;padding:35px 0;border-top:1px solid #35404a}.news-links h2{font-size:32px}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px}.contact-layout h2{font-size:38px}.contact-layout .small{font-size:12px}.contact-art{font-size:100px;font-weight:bold;letter-spacing:-7px;line-height:.95;color:#617f95;position:relative;padding:40px;background:linear-gradient(145deg,#111b25,#173c55)}.contact-art span{position:absolute;right:20px;bottom:20px;color:#abdff6}footer{padding:60px 7% 28px;border-top:1px solid #27333d;background:#080c10}.foot-top{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-bottom:50px}.foot-top p{font-size:13px}.circle{width:60px;height:60px;border:1px solid #52758c;border-radius:100%;display:grid;place-items:center;color:#97d4f1;font-size:25px}.foot-bottom{display:flex;gap:30px;justify-content:space-between;border-top:1px solid #27333d;padding-top:25px;font-size:10px;color:#7d8b98}.foot-bottom a:hover{color:white}@keyframes zoom{from{transform:scale(1.08)}to{transform:scale(1)}}@keyframes rise{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}.hero-content{animation:rise .9s ease both}.reveal{animation:rise .65s ease both}@media(min-width:1600px){section:not(.hero){padding-left:max(7%,calc((100vw - 1400px)/2));padding-right:max(7%,calc((100vw - 1400px)/2))}}@media(max-width:1000px){nav{gap:20px}.intro-grid{grid-template-columns:1fr 2fr}.intro-grid>.eyebrow{grid-column:span 2}.service-grid{grid-template-columns:1fr 1fr}.service-card:last-child{grid-column:span 2}.detail-grid{gap:40px}.work-feature{gap:35px}.work-feature img{height:440px}.hero{padding-top:80px}.hero h1{font-size:110px}}@media(max-width:700px){header{height:85px;padding:0 6%;gap:20px}.logo{font-size:32px}header nav,header>.talk{display:none}.mobile{display:block;font-size:13px}.mobile>div{position:absolute;top:85px;left:0;right:0;padding:22px;background:#101b25;border-bottom:1px solid #3c5262;max-height:80vh;overflow:auto}.mobile a{display:block;padding:12px}.mobile a span{float:right}.hero{height:calc(100svh - 85px);min-height:640px;padding:65px 6% 90px}.hero h1{font-size:clamp(76px,16vw,110px)}.hero .eyebrow{font-size:8px;letter-spacing:1.5px;margin-bottom:40px}.hero-bottom{display:block;margin-top:35px}.hero-bottom p{font-size:14px;margin-bottom:25px}.hero-meta{left:6%;right:6%;font-size:8px;line-height:1.7;gap:30px}.hero-meta>a{max-width:90px}.hero-shade{background:linear-gradient(90deg,#030a10ed,#030a1077),linear-gradient(0deg,#090d11,transparent)}section:not(.hero):not(.page-intro){padding:65px 6%}.intro-grid{display:block}.intro-grid>.eyebrow{margin-bottom:35px}.numbers{border-left:0;border-top:1px solid #303b45;padding:30px 0 0;margin-top:35px;display:grid;grid-template-columns:1fr 1fr;align-items:center}.numbers strong{font-size:44px}.numbers p{margin:0}.section-heading{display:block}.section-heading>p{margin-top:25px}.service-grid{grid-template-columns:1fr;gap:20px}.service-card:last-child{grid-column:auto}.service-card img,.service-card{height:300px;min-height:300px}.service-card:last-child img{height:300px}.work-feature,.detail-grid,.split,.contact-layout{grid-template-columns:1fr;gap:35px}.work-feature img,.split img{height:320px}.work-feature h2{font-size:50px}.page-intro{padding:65px 6% 40px}.page-intro h1{font-size:53px}.lead{font-size:18px}.wide-image{padding:0 6%}.wide-image img{height:300px}.people-grid{grid-template-columns:1fr 1fr;gap:35px 18px}.person h2{font-size:22px}.person p{font-size:10px;line-height:1.5}.project-grid{grid-template-columns:1fr;gap:40px}.project-grid img{height:280px}.project-grid h2{font-size:28px}.split h2{font-size:36px}.foot-top{align-items:start;flex-wrap:wrap}.foot-top p{width:60%;margin-top:0}.foot-bottom{flex-wrap:wrap;gap:20px}.foot-bottom span{width:100%}.contact-art{font-size:85px;min-height:280px}.accordion summary{font-size:17px;gap:18px}.ticker{justify-content:flex-start}.team-teaser h2{font-size:40px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

.hero>img{object-position:70% center}.hero-shade{background:linear-gradient(90deg,#03080df5 0%,#05101aa8 45%,#03111c30),linear-gradient(0deg,#090d11,transparent 50%)}

/* Original PREM wordmark, framed around its transparent source canvas. */
.logo{position:relative;display:block;flex:0 0 150px;width:150px;height:44px;overflow:hidden}
.logo img{position:absolute;width:160px;height:90px;max-width:none;left:-5px;top:-26px}
header>.talk{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:8px 8px 8px 22px;border:1px solid #689db8;border-radius:999px;color:#d4effc;background:#122632;font-size:13px;font-weight:600;white-space:nowrap;transition:background .2s,border-color .2s,box-shadow .2s}
header>.talk span{display:grid;place-items:center;width:32px;height:32px;margin:0;border-radius:50%;background:#a8ddf4;color:#10232e;font-size:19px;transition:transform .2s}
header>.talk:hover{background:#1c3a4d;border-color:#a8ddf4;box-shadow:0 0 20px #72c4ed15}
header>.talk:hover span{transform:rotate(45deg)}
@media(max-width:700px){header>.talk{display:none}.logo{flex-basis:132px;width:132px;height:39px}.logo img{width:141px;height:79.3px;left:-4.4px;top:-22.9px}}
@media(prefers-reduced-motion:reduce){header>.talk,header>.talk span{transition:none}header>.talk:hover span{transform:none}}

/* Refined editorial identity and navigation */
header{gap:24px}
header nav{gap:8px}
header nav>a,.navdrop>summary{font-family:Gilroy,Arial,sans-serif;font-size:15px;font-weight:600;letter-spacing:.015em;color:#cbd5dd;padding:12px 14px;position:relative;border-radius:4px;transition:color .2s,background .2s}
header nav>a:hover,.navdrop>summary:hover,.navdrop[open]>summary{background:#17232d;color:#b9e7fa}
header nav>a[aria-current=page]:after{content:'';position:absolute;bottom:3px;left:14px;right:14px;height:2px;background:#79bddb}
.navdrop>summary{display:flex;gap:10px;align-items:center}
.navdrop .nav-chevron{display:block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);padding:0;margin-top:-4px;transition:transform .2s}
.navdrop[open] .nav-chevron{transform:rotate(225deg);margin-top:4px}
.navdrop{position:relative}.navdrop>div{left:0;top:54px;width:330px;background:#101a23;border:1px solid #354a5a;border-radius:8px;padding:12px;box-shadow:0 24px 60px #000a}
.navdrop>div a{border-radius:4px;font-size:14px;padding:14px}
header>.talk{padding:0 0 0 20px;gap:20px;border:1px solid #9dcce2;border-radius:3px;background:#a9d9ee;color:#102532;box-shadow:none;min-height:45px;font-size:13px;letter-spacing:.025em}
header>.talk span{height:43px;width:43px;border-radius:0;background:#153447;color:#d5f1ff;font-size:21px;transform:none}
header>.talk:hover{background:#d0effd;color:#102532;border-color:#d0effd;box-shadow:none}
header>.talk:hover span{transform:none;background:#254d65}
/* Three readable statements replace the scrolling slogan strip. */
.brand-statements{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:38px 7%;background:linear-gradient(110deg,#132631,#0e1a24);border-top:1px solid #3c6177;border-bottom:1px solid #2a3d4a;gap:35px}
.brand-statements>div{padding-left:25px;border-left:1px solid #3f6378}
.brand-statements span{display:block;color:#8bb5cc;font-size:10px;letter-spacing:1.7px;text-transform:uppercase;margin-bottom:12px}
.brand-statements p{font-family:Gilroy,Arial,sans-serif;color:#e7f0f6;font-size:25px;line-height:1.22;letter-spacing:-.025em;margin:0;max-width:270px}
.brand-statements em{color:#a7cbdc;font-style:normal}
/* Compact facts with room for national coverage. */
.numbers{display:flex;flex-direction:column;gap:25px;padding-left:30px}
.numbers .fact{padding-bottom:23px;border-bottom:1px solid #293b48}
.numbers .fact:last-child{padding-bottom:0;border:0}
.numbers strong{font-family:Gilroy,Arial,sans-serif;font-size:46px;line-height:1;letter-spacing:-2px;color:#abd4e7;white-space:nowrap}
.numbers p{font-size:12px;line-height:1.5;margin:10px 0 0;max-width:180px}
.service-card h3{margin-top:0}
/* Shared CTA design with a separate directional panel. */
.button{padding:0 0 0 22px;min-height:52px;gap:28px;border:1px solid #7ca9bf;border-radius:3px;background:transparent;color:#d9edf7;font-size:13px;font-weight:500;letter-spacing:.02em;line-height:1.3}
.button-arrow{display:grid;place-items:center;align-self:stretch;min-height:50px;width:50px;flex:0 0 50px;border-left:1px solid #7ca9bf;background:#1b3d52;color:#c5ebfc;font-size:22px;transition:background .2s}
.button:hover{background:#183348;color:white;transform:none;border-color:#abd9ee}.button:hover .button-arrow{background:#a9d9ee;color:#102532}
.hero .button{background:#b5e6fa;color:#102532}.hero .button-arrow{border-color:#9bd3eb}.hero .button:hover{background:#d8f2fd}
/* A cinematic project feature with its own inset editorial panel. */
section.work-feature{position:relative;display:flex;align-items:center;justify-content:flex-end;min-height:640px;padding:70px 7%;isolation:isolate;overflow:hidden;background:#0c141c}
.work-feature>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}
.work-feature:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#06101915,#07101b85 50%,#07101bdf);z-index:-1}
.work-feature>div{width:470px;max-width:100%;padding:45px;background:#0b1721e8;border:1px solid #52778a70;border-top:2px solid #a0cce1;box-shadow:0 20px 65px #0004}
.work-feature h2{font-size:60px;letter-spacing:-.045em;line-height:1.03}
.work-feature>div>p:not(.eyebrow){font-size:15px;color:#b7c8d4;margin:24px 0 30px}
.team-teaser .button{margin-top:35px;background:#101e2a}.team-teaser .button:hover{background:#22465d}
@media(max-width:1100px){header nav{gap:0}header nav>a,.navdrop>summary{padding:12px 10px;font-size:13px}header>.talk{padding-left:14px;gap:12px}.brand-statements{gap:22px;padding:32px 7%}.brand-statements>div{padding-left:18px}.brand-statements p{font-size:22px}.intro-grid{grid-template-columns:1fr 1fr;gap:35px}.numbers{padding-left:30px}}
@media(min-width:1001px){.intro-grid{grid-template-columns:.8fr 2fr 1.1fr}}
@media(max-width:700px){header>.talk{display:none}.brand-statements{grid-template-columns:1fr;padding:30px 6%;gap:22px}.brand-statements>div{padding-left:18px}.brand-statements span{font-size:9px;margin-bottom:7px}.brand-statements p{font-size:24px;max-width:none}.numbers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:28px 0 0;gap:18px}.numbers .fact{border:0;padding:0}.numbers strong{font-size:29px;letter-spacing:-1px}.numbers p{font-size:10px;line-height:1.5;margin-top:10px}.button{gap:22px;padding-left:18px}.button-arrow{width:46px;flex-basis:46px}section.work-feature{min-height:650px;padding:220px 6% 40px;align-items:flex-end}.work-feature>div{width:100%;padding:30px}.work-feature h2{font-size:47px}.work-feature:before{background:linear-gradient(0deg,#07101b,transparent)}.work-feature>img{object-position:38% center}.team-teaser .button{margin-top:28px}}
@media(prefers-reduced-motion:reduce){.button-arrow,.nav-chevron,header nav>a,.navdrop>summary{transition:none}}

/* Softer primary actions, with typography rather than segmented panels. */
a.button,.hero a.button,.team-teaser a.button{display:inline-flex;align-items:center;justify-content:center;gap:26px;min-height:52px;padding:15px 25px;border:0;border-radius:30px;background:#d6eaf3;color:#112634;font-family:Gilroy,Arial,sans-serif;font-size:15px;font-weight:600;letter-spacing:.01em;line-height:1.2;transition:background .2s,color .2s,box-shadow .2s}
a.button .button-arrow{display:inline-block;align-self:auto;min-height:0;flex:0 0 auto;width:auto;border:0;background:none;color:inherit;font-family:Arial,sans-serif;font-size:23px;line-height:1;transition:transform .2s}
a.button:hover,.hero a.button:hover,.team-teaser a.button:hover{background:#fff;color:#112634;box-shadow:0 5px 25px #0002;transform:none}
a.button:hover .button-arrow{background:none;color:inherit;transform:translate(2px,-2px)}
a.text-link{display:inline-flex;align-items:center;gap:25px;font-family:Gilroy,Arial,sans-serif;font-size:17px;letter-spacing:.01em;font-weight:600;line-height:1.3;padding:13px 0;border-bottom:1px solid #4c6e82;color:#c9e8f6;transition:color .2s,border-color .2s}
a.text-link .link-arrow{font:22px Arial,sans-serif;transition:transform .2s}
a.text-link:hover{color:white;border-color:#d4effc}a.text-link:hover .link-arrow{transform:translate(2px,-2px)}
.numbers .coverage-fact{padding-top:2px}.coverage-fact .fact-label{display:block;font:10px Arial,sans-serif;letter-spacing:1.6px;text-transform:uppercase;color:#7799ae;margin-bottom:13px}.numbers .coverage-fact strong{font-size:29px;line-height:1.15;letter-spacing:-.7px;white-space:normal;color:#d6e7f0}.numbers .coverage-fact p{font-size:12px;line-height:1.65;max-width:none;color:#9eb2c1}
.footer-contact{display:inline-flex;align-items:center;gap:30px;font-family:Gilroy,Arial,sans-serif;font-size:26px;letter-spacing:-.4px;padding:14px 0;border-bottom:1px solid #65879b;white-space:nowrap;color:#cee8f5}.footer-contact span{font:30px Arial,sans-serif;transition:transform .2s}.footer-contact:hover{color:#fff;border-color:#cee8f5}.footer-contact:hover span{transform:translate(3px,-3px)}
/* Connected service directory: open lines instead of boxed tags. */
.related>div{display:grid;grid-template-columns:1fr 1fr;gap:0 55px;margin-top:35px}.related>div>a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:21px 0;border:0;border-bottom:1px solid #2b404e;font-family:Gilroy,Arial,sans-serif;font-size:21px;letter-spacing:-.02em;line-height:1.25;color:#b9cedb;background:none;transition:color .2s,border-color .2s}.related>div>a>span:last-child{font:24px Arial,sans-serif;color:#7ca8c0;transition:transform .2s}.related>div>a:hover{color:#fff;background:none;border-color:#8ebdd4}.related>div>a:hover>span:last-child{transform:translate(2px,-2px)}
/* PR's wider services form a full-width editorial bridge to the directory. */
section.connected-pr{max-width:none;display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:start;background:linear-gradient(125deg,#132a39,#101b25);border-top:1px solid #314c5e;border-bottom:1px solid #314c5e;padding-top:75px;padding-bottom:75px}.connected-pr h2{font-size:clamp(35px,3.5vw,54px);line-height:1.08}.connected-pr h2 em{color:#a2c9de}.connected-pr .eyebrow{font-size:9px;letter-spacing:1.7px;margin-bottom:26px}.connected-pr .pr-body p{font-size:17px;line-height:1.8;margin:0 0 20px;color:#b6cbd8}.connected-pr .pr-body p:last-child{margin-bottom:0}.accordion summary{gap:0}
@media(max-width:700px){.numbers .coverage-fact strong{font-size:22px;line-height:1.1}.coverage-fact .fact-label{font-size:8px;letter-spacing:.8px;margin-bottom:9px}.numbers .coverage-fact p{font-size:10px;line-height:1.5}.footer-contact{font-size:22px;gap:22px}.foot-top{align-items:center}.related>div{grid-template-columns:1fr;gap:0}.related>div>a{font-size:22px;padding:20px 0}section.connected-pr{grid-template-columns:1fr;gap:28px;padding-top:55px;padding-bottom:55px}.connected-pr h2{font-size:38px}.connected-pr .pr-body p{font-size:16px}a.button,.hero a.button,.team-teaser a.button{padding:15px 23px;gap:24px;font-size:15px}a.text-link{font-size:17px}}
@media(prefers-reduced-motion:reduce){a.button,a.button .button-arrow,a.text-link,a.text-link .link-arrow,.footer-contact span,.related>div>a,.related>div>a>span:last-child{transition:none}a.button:hover .button-arrow,a.text-link:hover .link-arrow,.footer-contact:hover span,.related>div>a:hover>span:last-child{transform:none}}

/* Homepage opening: cinematic photography, quiet navigation, editorial headline. */
.home-page header{background:#090f16;border-bottom-color:#ffffff10}
.home-contact{display:inline-flex;gap:20px;align-items:center;font-family:Gilroy,Arial,sans-serif;font-size:14px;color:#c2d8e4;padding:12px 0;border-bottom:1px solid #52778c;white-space:nowrap}.home-contact span{font:20px Arial,sans-serif}.home-contact:hover{color:white;border-color:white}
section.cinematic-hero{height:calc(100svh - 104px);min-height:650px;max-height:1000px;padding:0 7%;display:flex;align-items:center;background:#07121b}
.hero-slides{position:absolute;inset:0;overflow:hidden}.hero-slides .slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:65% center;opacity:0;transition:opacity 1.3s ease;transform:none;animation:none}.hero-slides .slide.is-active{opacity:1}
.cinematic-hero .hero-shade{background:linear-gradient(90deg,#050d16e8,#07132175 65%,#07132130),linear-gradient(0deg,#07121be0,transparent 45%)}
.cinematic-hero .hero-content{width:100%;max-width:none;padding:45px 0 105px;animation:rise .8s ease both}.cinematic-hero .eyebrow{font-size:10px;letter-spacing:2.4px;color:#bbd3e0;margin-bottom:35px}.cinematic-hero h1{font-size:clamp(65px,7.7vw,120px);line-height:1.02;letter-spacing:-.045em;max-width:1180px}.cinematic-hero h1 em{color:#a8d9ee;background:none;font-style:normal}.cinematic-hero .hero-bottom{display:block;margin-top:35px}.cinematic-hero .hero-bottom p{font-size:16px;line-height:1.7;color:#c9d6df;margin:0 0 28px}
.hero-action{display:inline-flex;align-items:center;gap:35px;font-family:Gilroy,Arial,sans-serif;font-size:16px;color:#fff;border-bottom:1px solid #96bdd1;padding:13px 0}.hero-action span{font:25px Arial,sans-serif;transition:transform .2s}.hero-action:hover span{transform:translate(3px,-3px)}
.hero-floor{position:absolute;left:7%;right:7%;bottom:30px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #a9c6d536;padding-top:20px;gap:20px}.hero-scroll{font-size:11px;letter-spacing:1px;color:#b5cbd8;display:flex;gap:25px;align-items:center}.slideshow-controls{display:flex;align-items:center;gap:18px}.slideshow-controls button{background:transparent;border:0;color:#d6e8f2;min-width:36px;min-height:40px;font:23px Arial,sans-serif;cursor:pointer;padding:5px}.slideshow-controls button:hover{color:#fff;background:#d4edf514}.slideshow-controls button:focus-visible{outline:2px solid #a3d8f2;outline-offset:3px}.slide-status{font-size:10px;letter-spacing:2px;color:#b6cad6}.slideshow-controls .slide-pause{font-size:10px;letter-spacing:.7px;border-left:1px solid #7a9bab55;padding-left:18px;min-width:62px}
@media(max-width:700px){.home-contact{display:none}section.cinematic-hero{height:calc(100svh - 85px);min-height:650px;padding:0 6%}.cinematic-hero .hero-content{padding:30px 0 110px}.cinematic-hero h1{font-size:clamp(52px,10.5vw,73px);line-height:1.05}.cinematic-hero .eyebrow{font-size:8px;letter-spacing:1.6px;line-height:1.7;margin-bottom:28px}.cinematic-hero .hero-bottom p{font-size:14px}.hero-floor{left:6%;right:6%;bottom:23px;gap:12px}.slideshow-controls{gap:8px}.hero-scroll{font-size:9px;gap:10px}.slideshow-controls .slide-pause{min-width:50px;padding-left:9px}.hero-slides .slide{object-position:60% center}.hero-action{font-size:15px}.cinematic-hero .hero-shade{background:linear-gradient(90deg,#050d16ed,#07132170),linear-gradient(0deg,#07121be0,transparent)}}
@media(prefers-reduced-motion:reduce){.hero-slides .slide,.hero-action span{transition:none}.hero-action:hover span{transform:none}.cinematic-hero .hero-content{animation:none}}

/* Quiet, arrow-free actions across the site. */
header>.talk{padding:13px 24px;min-height:45px;gap:0}
a.button,.hero a.button,.team-teaser a.button{gap:0;padding:16px 27px}
a.text-link,.hero-action,.home-contact,.footer-contact{gap:0}
.service-card>div{right:24px}.service-card h3{max-width:100%;transition:color .2s}.service-card:hover h3{color:#b9e4f7}
.related>div>a{justify-content:flex-start;gap:0}
.related>div>a:hover{color:#fff;border-color:#8ebdd4}
.hero-action:hover,.home-contact:hover,.footer-contact:hover{color:#fff;border-color:#d6edfa}
@media(max-width:700px){header>.talk{display:none}a.button,.hero a.button,.team-teaser a.button{padding:15px 25px}}
/* Search-friendly supporting content follows the site's existing visual language. */
@font-face{font-family:Gilroy;src:url('/assets/Gilroy-Bold.ttf') format('truetype');font-display:swap;font-weight:700}
.breadcrumbs{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font:10px Arial,sans-serif;letter-spacing:.2px;color:#7794a8;margin:0 0 35px}.breadcrumbs a{color:#a5bfce}.breadcrumbs a:hover{color:white}.breadcrumbs>span:last-child{color:#829bac}
.service-faq{display:grid;grid-template-columns:1fr 1fr;gap:80px;border-top:1px solid #263744}.service-faq h2{font-size:clamp(32px,3vw,46px)}.service-faq .accordion summary{gap:15px;font-size:17px}.service-faq .accordion p{font-size:15px;padding-left:0;line-height:1.75}.service-faq .accordion summary b{flex-shrink:0}
.project-reference{padding:5px 7% 25px;background:#101820}.project-reference p{font-size:14px;margin:0}.project-reference a,.split p a{color:#b8dcec;text-decoration:underline;text-underline-offset:4px}
.project-story{display:grid;grid-template-columns:1fr 1.3fr;gap:70px;background:#101c27}.project-story h2{font-size:42px}.project-story p{margin-top:0;line-height:1.8}
.verified-projects{border-top:1px solid #283f50}.verified-projects>div{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:35px}.verified-projects>div>a{border-top:1px solid #547387;padding:25px 0}.verified-projects h3{font-size:28px}.verified-projects p{font-size:15px}.verified-projects>div>a:hover h3{color:#add9ef}
.footer-email{font-size:13px;color:#a9c6d7;text-decoration:underline;text-underline-offset:4px}.foot-top{flex-wrap:wrap}.footer-email:hover{color:white}
.accordion summary{min-height:50px}.foot-bottom a{padding:8px 0}.service-card:focus-visible{outline-offset:4px}.home-contact,.text-link{min-height:44px}
@media(max-width:700px){.service-faq,.project-story{grid-template-columns:1fr;gap:30px}.verified-projects>div{grid-template-columns:1fr;gap:15px}.service-faq h2{font-size:36px}.project-story h2{font-size:34px}.breadcrumbs{font-size:9px;line-height:1.6;margin-bottom:25px}.footer-email{width:100%}.project-reference{padding-left:6%;padding-right:6%}}

/* Reference-inspired homepage opening. Styles intentionally scoped to home. */
.home-page header{position:absolute;top:0;left:0;width:100%;height:92px;padding:0 4%;background:transparent;border:0;gap:24px}
.home-page header:after{content:'';position:absolute;left:4%;right:4%;bottom:0;height:1px;background:#b4d5e915}
.home-page header .logo{flex-basis:120px;width:120px;height:35px}.home-page header .logo img{width:128px;height:72px;left:-4px;top:-20.8px;filter:brightness(0) invert(1)}
.home-page header nav{margin-left:auto;gap:12px}.home-page header nav>a,.home-page .navdrop>summary,.home-page .home-contact{font-family:Arial,Helvetica,sans-serif;text-transform:uppercase;font-size:10px;line-height:1.4;letter-spacing:1.4px;font-weight:700;color:#e2edf4;padding:12px 9px;border:0;border-radius:0;min-height:0}
.home-page header nav>a:hover,.home-page .navdrop>summary:hover,.home-page .home-contact:hover{background:none;color:#70c4e2}.home-page .home-contact{margin-left:0}.home-page .navdrop .nav-chevron{width:5px;height:5px}.home-page .navdrop>div{top:40px}.home-page .navdrop>div a{text-transform:none;letter-spacing:0}
section.reference-hero{height:100svh;min-height:660px;max-height:1100px;padding:130px 4% 55px;align-items:center;background:#001c2b;position:relative}
.reference-hero .hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0}
.reference-hero .hero-shade{z-index:1;background:linear-gradient(90deg,#001725db,#001b2b9e 65%,#00172591),linear-gradient(0deg,#00172599,transparent 80%)}
.reference-hero .hero-content{position:relative;z-index:2;padding:0;margin:0;width:100%;max-width:none;animation:none}
.reference-hero h1{font-family:Arial,Helvetica,sans-serif;font-weight:700;font-size:clamp(80px,10.6vw,164px);line-height:1.03;letter-spacing:-.065em;text-transform:uppercase;max-width:none;color:white;margin:0}
.reference-hero h1>span{display:block;width:max-content;max-width:100%;margin:0 0 9px}.reference-hero h1 .reality-line{display:flex;align-items:baseline;margin-bottom:0}.reference-hero h1 em{display:inline-block;background:#50afcf;color:white;background-clip:border-box;padding:0 .075em .025em .045em;font-style:normal;letter-spacing:-.065em}.reference-hero h1 b{font:inherit;color:#fff;line-height:1;margin-left:.01em}
@media(max-width:1000px){.home-page header{gap:12px}.home-page header nav{gap:3px}.home-page header nav>a,.home-page .navdrop>summary,.home-page .home-contact{font-size:9px;padding:12px 8px;letter-spacing:1.1px}.reference-hero h1{font-size:11.8vw}section.reference-hero{min-height:620px}}
@media(max-width:700px){.home-page header{height:80px;padding:0 5%;justify-content:space-between}.home-page header nav{display:none}.home-page .home-contact{display:none}.home-page header .logo{width:110px;flex-basis:110px;height:32px}.home-page header .logo img{width:117.4px;height:66px;left:-3.7px;top:-19.1px}.home-page .mobile>summary{text-transform:uppercase;letter-spacing:1.2px;font-size:10px;color:white}.home-page .mobile>div{top:80px}.home-page header:after{left:5%;right:5%}section.reference-hero{height:92svh;min-height:560px;padding:120px 5% 65px;max-height:950px}.reference-hero h1{font-size:clamp(52px,12vw,84px);line-height:1.08;letter-spacing:-.065em}.reference-hero h1>span{margin-bottom:9px}.reference-hero .hero-video{object-position:60% center}.reference-hero .hero-shade{background:linear-gradient(90deg,#001725dc,#001b2baa),linear-gradient(0deg,#001725b0,transparent)}}

/* Full-width introduction with balanced copy and a shared facts row. */
section.intro-expanded{display:grid;grid-template-columns:1fr 1.08fr;gap:58px 8%;width:100%;max-width:none;margin:0;padding:105px 7% 80px;background:radial-gradient(ellipse at 0 20%,#14304766,transparent 60%),#0b131b;border-bottom:1px solid #243743}
.intro-expanded .intro-heading{padding-top:5px}.intro-expanded h2{font-size:clamp(44px,5.1vw,76px);line-height:1.08;letter-spacing:-.05em}.intro-expanded h2 span{color:#a5bfd0}
.intro-expanded .intro-copy>p{max-width:none;font-size:16px;line-height:1.8;margin:0 0 20px;color:#aebfcc}.intro-expanded .intro-copy .intro-lead{font-family:Gilroy,Arial,sans-serif;font-size:28px;line-height:1.25;letter-spacing:-.025em;color:#e3edf5;margin-bottom:25px}.intro-expanded .text-link{margin-top:0}
.intro-expanded .numbers{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border:0;border-top:1px solid #365064;margin:0;padding:42px 0 0}
.intro-expanded .numbers .fact{border:0;border-right:1px solid #2a4050;padding:0 25px 0 45px}.intro-expanded .numbers .fact:first-child{padding-left:0}.intro-expanded .numbers .fact:last-child{border:0}
.intro-expanded .numbers strong{font-family:Gilroy,Arial,sans-serif;font-size:clamp(36px,4.8vw,64px);line-height:1;letter-spacing:-.04em;color:#abd4e7}.intro-expanded .numbers p{font-size:13px;line-height:1.6;margin:13px 0 0;max-width:none}
@media(max-width:900px){section.intro-expanded{gap:45px 6%;padding-top:80px}.intro-expanded .numbers .fact{padding-left:25px;padding-right:15px}.intro-expanded .intro-copy .intro-lead{font-size:25px}}
@media(max-width:700px){section.intro-expanded{grid-template-columns:1fr;gap:30px;padding:65px 6% 55px}.intro-expanded h2{font-size:clamp(42px,9.5vw,64px)}.intro-expanded .intro-copy .intro-lead{font-size:25px}.intro-expanded .intro-copy>p{font-size:15px}.intro-expanded .numbers{padding-top:28px;margin-top:8px}.intro-expanded .numbers .fact{padding:0 12px}.intro-expanded .numbers .fact:first-child{padding-left:0}.intro-expanded .numbers .fact:last-child{padding-right:0}.intro-expanded .numbers strong{font-size:clamp(26px,7vw,42px)}.intro-expanded .numbers p{font-size:10px;line-height:1.5;margin-top:11px}}

/* Balanced introduction: continuous story beside facts and production imagery. */
section.intro-balanced{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:38px 5%;padding:70px 7%;align-items:stretch}
.intro-balanced .intro-story{min-width:0}.intro-balanced h2{font-size:clamp(43px,4.7vw,68px);line-height:1.06;margin:0 0 27px;letter-spacing:-.05em}
.intro-balanced .intro-copy .intro-lead{font-size:24px;line-height:1.3;margin:0 0 18px}.intro-balanced .intro-copy>p{font-size:15px;line-height:1.75;margin-bottom:17px}.intro-balanced .intro-copy .text-link{margin-top:0;padding-bottom:10px}
.intro-balanced .intro-visual{display:flex;flex-direction:column;gap:25px;min-width:0}
.intro-balanced .numbers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-column:auto;gap:0;padding:0 0 23px;margin:0;border-top:0;border-bottom:1px solid #365064;flex:0 0 auto}
.intro-balanced .numbers .fact{padding:0 15px;border:0;border-right:1px solid #2a4050;min-width:0}.intro-balanced .numbers .fact:first-child{padding-left:0}.intro-balanced .numbers .fact:last-child{padding-right:0;border:0}
.intro-balanced .numbers strong{display:block;font-size:clamp(26px,3vw,43px);letter-spacing:-.045em;line-height:1.1;white-space:nowrap}.intro-balanced .numbers p{font-size:11px;line-height:1.5;margin:9px 0 0;max-width:none}
.intro-photo{position:relative;flex:1 1 auto;min-height:320px;overflow:hidden;background:#15232d}.intro-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:58% center;filter:saturate(.8)}
@media(max-width:900px){section.intro-balanced{grid-template-columns:1fr;gap:30px;padding:55px 6%}.intro-balanced h2{font-size:clamp(42px,6.5vw,62px);margin-bottom:22px}.intro-balanced .intro-copy>p{max-width:none}.intro-balanced .intro-visual{gap:20px}.intro-balanced .numbers{padding-bottom:20px}.intro-balanced .numbers strong{font-size:clamp(29px,5.5vw,42px)}.intro-balanced .numbers p{font-size:12px}.intro-photo{flex:none;min-height:0;aspect-ratio:3/2}.intro-balanced .numbers .fact{padding-left:23px;padding-right:18px}}
@media(max-width:450px){section.intro-balanced{padding:45px 6%;gap:25px}.intro-balanced .numbers .fact{padding:0 10px}.intro-balanced .numbers .fact:first-child{padding-left:0}.intro-balanced .numbers .fact:last-child{padding-right:0}.intro-balanced .numbers strong{font-size:26px}.intro-balanced .numbers p{font-size:10px}.intro-balanced .intro-copy .intro-lead{font-size:22px}.intro-photo{aspect-ratio:4/3}}
section.intro-manifesto{display:block;padding:65px 7% 55px;background:#0b1219;border-bottom:1px solid #273846;text-align:center}.manifesto-copy{max-width:830px;margin:0 auto}.intro-manifesto h2{font-size:clamp(43px,5.4vw,75px);line-height:1.04;letter-spacing:-.045em;margin:0 0 25px}.intro-manifesto h2 span{color:#a9ccde}.manifesto-copy>p{font-size:17px;line-height:1.7;max-width:760px;margin:0 auto 16px;color:#acbecb}.manifesto-copy>p:first-of-type{font-family:Gilroy,Arial,sans-serif;font-size:23px;line-height:1.4;color:#edf3f7;letter-spacing:-.015em;margin-bottom:15px}.manifesto-copy>p.manifesto-location{font-size:13px;margin:18px auto 10px;color:#839cac}.manifesto-copy .text-link{margin-top:0;font-size:15px;padding:9px 0;min-height:38px}.intro-manifesto .numbers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;max-width:1000px;margin:32px auto 0;padding:28px 0 0;border:0;border-top:1px solid #304554}.intro-manifesto .numbers .fact{padding:0 24px;border:0;border-right:1px solid #304554}.intro-manifesto .numbers .fact:last-child{border:0}.intro-manifesto .numbers strong{display:block;font-family:Gilroy,Arial,sans-serif;font-size:clamp(34px,4.2vw,56px);line-height:1.05;letter-spacing:-.035em;color:#badbeb;white-space:nowrap}.intro-manifesto .numbers p{max-width:none;margin:10px 0 0;font-size:12px;line-height:1.5;color:#9fb3c1}
@media(max-width:700px){section.intro-manifesto{padding:45px 6% 40px}.intro-manifesto h2{font-size:clamp(39px,9vw,58px);margin-bottom:22px}.manifesto-copy>p{font-size:15px;line-height:1.7}.manifesto-copy>p:first-of-type{font-size:20px}.intro-manifesto .numbers{margin-top:25px;padding-top:23px}.intro-manifesto .numbers .fact{padding:0 10px}.intro-manifesto .numbers .fact:first-child{padding-left:0}.intro-manifesto .numbers .fact:last-child{padding-right:0}.intro-manifesto .numbers strong{font-size:clamp(25px,6.8vw,38px)}.intro-manifesto .numbers p{font-size:10px;line-height:1.5;margin-top:8px}}

/* Tight homepage overview with no oversized heading or empty columns. */
section.intro-manifesto{padding:32px 7% 30px;text-align:center}
.intro-manifesto .manifesto-copy{max-width:1000px;margin:0 auto}
.intro-manifesto h2{font-size:clamp(29px,3.2vw,44px);line-height:1.15;margin:0 0 12px;letter-spacing:-.035em}
.intro-manifesto .manifesto-copy>p:first-of-type{font-family:Arial,Helvetica,sans-serif;font-size:15px;font-weight:400;line-height:1.65;letter-spacing:0;max-width:850px;margin:0 auto 7px;color:#acbecb}
.intro-manifesto .manifesto-copy .text-link{padding:6px 0;min-height:30px;font-size:13px;margin:0}
.intro-manifesto .numbers{max-width:850px;margin:18px auto 0;padding:18px 0 0;gap:0}
.intro-manifesto .numbers .fact{padding:0 16px}
.intro-manifesto .numbers strong{font-size:clamp(29px,3vw,40px);line-height:1}
.intro-manifesto .numbers p{margin:6px 0 0;font-size:11px;line-height:1.4}
.home-page #services{padding-top:42px}
@media(max-width:700px){section.intro-manifesto{padding:27px 6% 25px}.intro-manifesto h2{font-size:30px;line-height:1.14;margin-bottom:11px}.intro-manifesto .manifesto-copy>p:first-of-type{font-size:14px;line-height:1.6}.intro-manifesto .numbers{margin-top:16px;padding-top:17px}.intro-manifesto .numbers .fact{padding:0 8px}.intro-manifesto .numbers strong{font-size:27px}.intro-manifesto .numbers p{font-size:9px;line-height:1.4}.home-page #services{padding-top:32px}}

/* Descriptive service heading stays within the compact homepage introduction. */
.intro-manifesto h2{font-size:clamp(27px,3vw,40px);line-height:1.17;max-width:1050px;margin-left:auto;margin-right:auto}.work-feature p>a{color:#cbe7f5;text-decoration:underline;text-decoration-color:#6996b0;text-underline-offset:3px}.work-feature p>a:hover{color:#fff;text-decoration-color:#fff}.hero-video{opacity:0;transition:opacity .6s ease}
@media(prefers-reduced-motion:reduce){.hero-video{transition:none}}
@media(max-width:700px){.intro-manifesto h2{font-size:28px}}

/* Supporting text now lives with its subject, rather than as floating labels. */
.page-intro.clean-intro{padding-bottom:45px}.project-grid h2{margin-top:20px}.foot-top>p{font-size:13px;line-height:1.7;margin:0;color:#9db2c1}.contact-layout>div>p{max-width:470px}.split p>a{color:#c2deec;text-decoration:underline;text-underline-offset:3px}
@media(max-width:700px){.page-intro.clean-intro{padding-bottom:30px}.project-grid h2{margin-top:16px}.foot-top>p{font-size:12px}}
/* Stronger homepage service heading, preserving compact surrounding spacing. */
#prem-intro .manifesto-copy{max-width:1180px}
#prem-intro h2{max-width:1180px;font-size:clamp(38px,4.8vw,68px);line-height:1.06;letter-spacing:-.04em;margin:0 auto 18px}
#prem-intro h2>span{display:block;margin-top:3px}
@media(max-width:700px){#prem-intro h2{font-size:clamp(31px,6.7vw,44px);line-height:1.1;margin-bottom:15px}}
/* Roomier service gallery with captions separated from photography. */
.home-page #services{padding:58px 7% 70px}
#services .section-heading{margin-bottom:34px;display:block}
#services .section-heading h2{font-size:clamp(40px,4.7vw,66px);line-height:1.07}
#services .service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 30px}
#services .service-card{display:flex;flex-direction:column;position:relative;height:auto;min-height:0;background:transparent;overflow:hidden;border-bottom:1px solid #304352}
#services .service-card:after{display:none}
#services .service-card>img{display:block;position:static;flex:none;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;filter:brightness(.88) saturate(.85);transition:filter .3s,transform .5s}
#services .service-card>div{position:relative;inset:auto;z-index:1;padding:20px 4px 22px;width:100%;background:#090d11}
#services .service-card h3{font-size:clamp(23px,2.2vw,30px);line-height:1.25;max-width:none;margin:0;letter-spacing:-.025em}
#services .service-card:hover>img{filter:brightness(1) saturate(1);transform:scale(1.025)}
#services .service-card:hover{border-color:#8fbed5}
#services .service-card:last-child{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:stretch;min-height:0;border:0;background:#101b25}
#services .service-card:last-child>img{height:100%;min-height:230px;max-height:300px;aspect-ratio:auto;object-fit:cover}
#services .service-card:last-child>div{display:flex;align-items:center;padding:30px;background:#101b25}
#services .service-card:last-child h3{font-size:clamp(28px,3vw,42px)}
@media(max-width:1000px){#services .service-grid{gap:26px 24px}}
@media(max-width:700px){.home-page #services{padding:40px 6% 48px}#services .section-heading{margin-bottom:25px}#services .section-heading h2{font-size:41px}#services .service-grid{grid-template-columns:1fr;gap:24px}#services .service-card>img{aspect-ratio:16/10}#services .service-card>div{padding:17px 2px 19px}#services .service-card h3{font-size:25px}#services .service-card:last-child{display:flex;grid-column:auto;background:transparent}#services .service-card:last-child>img{height:auto;min-height:0;max-height:none;aspect-ratio:16/10}#services .service-card:last-child>div{display:block;padding:17px 2px 19px;background:#090d11}#services .service-card:last-child h3{font-size:25px}}
@media(prefers-reduced-motion:reduce){#services .service-card>img{transition:none}#services .service-card:hover>img{transform:none}}
/* The seventh service keeps the same portrait and caption rhythm as its peers. */
#services .service-card:last-child{display:flex;flex-direction:column;grid-column:1/-1;justify-self:center;width:calc((100% - 30px)/2);background:transparent;border-bottom:1px solid #304352}
#services .service-card:last-child>img{width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:16/9;object-fit:cover}
#services .service-card:last-child>div{display:block;position:relative;inset:auto;padding:20px 4px 22px;background:#090d11}
#services .service-card:last-child h3{font-size:clamp(23px,2.2vw,30px);line-height:1.25;margin:0;letter-spacing:-.025em}
#services .service-card:last-child:hover{border-color:#8fbed5}
@media(max-width:1000px){#services .service-card:last-child{width:calc((100% - 24px)/2)}}
@media(max-width:700px){#services .service-card:last-child{width:100%;grid-column:auto;justify-self:stretch}#services .service-card:last-child>img{aspect-ratio:16/10}#services .service-card:last-child>div{padding:17px 2px 19px}#services .service-card:last-child h3{font-size:25px}}
/* Selected work: unboxed photography and editorial copy. */
section.work-feature.moment-refined{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:6%;align-items:center;min-height:0;padding:60px 7%;background:#0c141c;isolation:auto;overflow:visible;border-top:1px solid #283d4a;border-bottom:1px solid #283d4a}
.work-feature.moment-refined:before{display:none}
.moment-refined .moment-image{position:relative;min-width:0;width:100%;height:auto;max-width:none;padding:0;background:none;border:0;box-shadow:none;overflow:hidden}
.moment-refined .moment-image>img{display:block;position:static;width:100%;height:auto;aspect-ratio:5/4;object-fit:cover;object-position:56% center;filter:saturate(.8)}
.moment-refined .moment-copy{width:100%;max-width:none;padding:0;background:none;border:0;box-shadow:none}
.moment-refined h2{font-size:clamp(40px,4.5vw,65px);line-height:1.06;letter-spacing:-.045em;margin:0 0 20px}.moment-refined h2>span{color:#a9ccde}
.work-feature.moment-refined .moment-copy>p{max-width:440px;font-size:16px;line-height:1.75;color:#aebfcc;margin:0 0 23px}
.moment-projects{display:flex;flex-direction:column;margin:0 0 16px;max-width:440px}
.moment-projects>a{display:block;padding:14px 0;border-top:1px solid #304756;font-family:Gilroy,Arial,sans-serif;font-size:17px;line-height:1.35;letter-spacing:-.01em;color:#cadfeb}.moment-projects>a:last-child{border-bottom:1px solid #304756}.moment-projects>a:hover{color:#fff;border-color:#8cb9d1}
.moment-refined .moment-copy>.text-link{margin-top:0;font-size:14px}
@media(max-width:850px){section.work-feature.moment-refined{grid-template-columns:1fr;gap:28px;padding:42px 6%}.moment-refined .moment-image>img{aspect-ratio:16/9}.moment-refined h2{font-size:44px}.work-feature.moment-refined .moment-copy>p,.moment-projects{max-width:none}.moment-refined .moment-copy{padding:0}.moment-projects>a{font-size:17px}}
/* Selected work as a calm, typographic project showcase. */
section.selected-work-edit{padding:58px 7% 62px;background:linear-gradient(115deg,#132532,#0c151e 75%);border-top:1px solid #2d4454;border-bottom:1px solid #2d4454}
.selected-work-heading{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:35px}
.selected-work-heading h2{font-size:clamp(36px,4.2vw,58px);line-height:1.1;letter-spacing:-.04em}.selected-work-heading h2 span{color:#a9ccde}.selected-work-heading>.text-link{margin:0;white-space:nowrap;font-size:13px}
.selected-projects{display:grid;grid-template-columns:1fr 1fr;gap:45px}
.selected-project{display:flex;flex-direction:column;align-items:flex-start;padding:28px 0 24px;border-top:1px solid #638297;border-bottom:1px solid #304957;min-width:0}
.selected-project h3{font-size:clamp(31px,3.6vw,48px);line-height:1.1;margin:0 0 15px;letter-spacing:-.035em;color:#f0f5f8;transition:color .2s}
.selected-project p{max-width:450px;font-size:16px;line-height:1.7;margin:0 0 22px;color:#aebfcc}
.selected-project .project-read{margin-top:auto;font-family:Gilroy,Arial,sans-serif;font-size:13px;color:#b9d9eb;border-bottom:1px solid #547589;padding-bottom:5px;transition:color .2s,border-color .2s}
.selected-project:hover h3{color:#a6d8ef}.selected-project:hover .project-read{color:#fff;border-color:#d2eaf6}
@media(max-width:700px){section.selected-work-edit{padding:40px 6% 43px}.selected-work-heading{display:block;margin-bottom:26px}.selected-work-heading h2{font-size:37px}.selected-work-heading>.text-link{margin-top:14px}.selected-projects{grid-template-columns:1fr;gap:22px}.selected-project{padding:22px 0}.selected-project h3{font-size:34px}.selected-project p{font-size:15px;margin-bottom:18px;max-width:none}}
/* A single photographic showcase with an uninterrupted, cinematic composition. */
section.work-cinematic{position:relative;display:flex;align-items:flex-end;isolation:isolate;overflow:hidden;min-height:480px;height:43vw;max-height:610px;padding:48px 7%;background:#07131d}
.work-cinematic>img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:62% 42%;filter:saturate(.75)}
.work-cinematic:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#030e19e8 0%,#0613218f 48%,#07152126 100%),linear-gradient(0deg,#05111bba,transparent 70%)}
.work-cinematic-content{max-width:620px}
.work-cinematic h2{font-size:clamp(45px,5.4vw,77px);line-height:1.02;letter-spacing:-.045em;margin:0 0 20px;color:#fff}.work-cinematic h2 span{color:#c2e3f3}
.work-cinematic p{font-size:16px;line-height:1.6;color:#d2dfe8;margin:0 0 25px}
.work-cinematic .button{background:#e2f0f7;color:#102533;padding:15px 27px;border-radius:30px;font-size:14px}.work-cinematic .button:hover{background:#fff}
.work-context{padding:19px 7%;background:#0c1721;border-bottom:1px solid #2b3f4e}.work-context p{font-size:13px;line-height:1.6;margin:0;color:#a6bdcd}.work-context a{color:#d0e7f4;text-decoration:underline;text-underline-offset:4px;text-decoration-color:#63899e}.work-context a:hover{color:white}
@media(max-width:700px){section.work-cinematic{height:auto;min-height:420px;max-height:none;padding:35px 6%}.work-cinematic>img{object-position:60% center}.work-cinematic:before{background:linear-gradient(90deg,#030e19e8,#06132190),linear-gradient(0deg,#05111bb0,transparent)}.work-cinematic h2{font-size:48px;margin-bottom:16px}.work-cinematic p{font-size:14px;max-width:260px;margin-bottom:22px}.work-context{padding:16px 6%}.work-context p{font-size:12px}}
/* A people-led close to the homepage, featuring genuine team portraits. */
section.team-introduction{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.15fr);align-items:center;gap:6%;padding:58px 7%;background:#0b131b}
.team-introduction h2{font-size:clamp(38px,4.3vw,60px);line-height:1.08;letter-spacing:-.04em;margin:0 0 19px}.team-introduction h2 span{color:#a9ccde}
.team-introduction-copy>p{font-size:16px;line-height:1.7;color:#aebfcc;max-width:420px;margin:0 0 15px}.team-introduction-copy>.text-link{font-size:15px;margin-top:0}
.team-portrait-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-items:stretch;overflow:hidden}
.team-portrait-strip>img{display:block;width:100%;height:auto;aspect-ratio:1/2;object-fit:cover;object-position:center top;filter:saturate(.5);transition:filter .3s}
.team-portrait-strip:hover>img{filter:saturate(1)}
@media(max-width:800px){section.team-introduction{grid-template-columns:1fr;gap:27px;padding:42px 6%}.team-introduction h2{font-size:42px}.team-introduction-copy>p{max-width:none;font-size:15px}.team-portrait-strip{gap:8px}.team-portrait-strip>img{aspect-ratio:3/5}}
@media(prefers-reduced-motion:reduce){.team-portrait-strip>img{transition:none}}
section.team-introduction.team-text-only{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6%;padding:45px 7%;align-items:center;border-bottom:1px solid #273b49}
.team-text-only h2{margin:0;font-size:clamp(36px,4vw,55px)}
.team-text-only .team-introduction-copy>p{max-width:480px;margin:0 0 12px}
@media(max-width:700px){section.team-introduction.team-text-only{grid-template-columns:1fr;gap:20px;padding:35px 6%}.team-text-only h2{font-size:39px}.team-text-only .team-introduction-copy>p{max-width:none}}
/* Shared inner-page system, aligned with the homepage's editorial styling. */
.inner-page{background:#090d11}.inner-page header{height:92px;padding:0 5%;background:#090f16;border-bottom:1px solid #293b491f;gap:20px}.inner-page header .logo{flex-basis:120px;width:120px;height:35px}.inner-page header .logo img{width:128px;height:72px;left:-4px;top:-20.8px;filter:brightness(0) invert(1)}
.inner-page header nav{margin-left:auto;gap:9px}.inner-page header nav>a,.inner-page .navdrop>summary,.inner-page .inner-contact{font-family:Arial,Helvetica,sans-serif;font-size:10px;text-transform:uppercase;letter-spacing:1.1px;font-weight:700;line-height:1.4;padding:12px 9px;min-height:0;color:#d0dfe9;border:0;border-radius:0}.inner-page header nav>a:hover,.inner-page .navdrop>summary:hover,.inner-page .inner-contact:hover{background:none;color:#8acbe7}.inner-page .navdrop>div{top:42px}.inner-page .navdrop>div a{font-size:14px;letter-spacing:0;text-transform:none}.inner-contact{white-space:nowrap}
.inner-page section.page-opening{padding:65px 7% 38px}.page-opening h1{font-size:clamp(46px,5.5vw,82px);line-height:1.04;letter-spacing:-.045em;max-width:1150px}.page-opening h1 em{color:#a9ccde;font-style:normal}.page-opening>p{font-size:19px;line-height:1.6;color:#aebfcc;max-width:760px;margin:24px 0 0}
.page-feature-image{margin:0 7%;overflow:hidden;background:#11212d}.page-feature-image>img{display:block;width:100%;height:390px;object-fit:cover;filter:saturate(.8);object-position:center}
.inner-page section.page-overview,.inner-page section.page-bridge{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:7%;align-items:start;padding:65px 7%}
.page-overview h2,.page-bridge h2{font-size:clamp(32px,3.3vw,48px);line-height:1.12;letter-spacing:-.035em;margin:0}.page-overview h2 span,.page-bridge h2 span{color:#a9ccde}.page-overview p,.page-bridge p{font-size:16px;line-height:1.8;color:#afbfcc;margin:0 0 19px;max-width:720px}.page-overview p:last-child,.page-bridge p:last-child{margin-bottom:0}.page-overview a:not(.button):not(.text-link),.page-bridge p a,.collection-intro p a{color:#c4e0ef;text-decoration:underline;text-underline-offset:4px;text-decoration-color:#63859b}.page-overview a:hover,.page-bridge p a:hover,.collection-intro p a:hover{color:white}.page-bridge .text-link{margin-top:0;font-size:15px}.inner-page section.page-bridge{background:#101e29;border-top:1px solid #2b404f;border-bottom:1px solid #2b404f}
.inner-page section.service-directory{padding:10px 7% 65px}.service-directory>h2{font-size:clamp(33px,3.5vw,48px);line-height:1.1;margin:0 0 30px}.service-directory>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 45px}.service-directory article{padding:26px 0 25px;border-top:1px solid #3c5669}.service-directory article h3{font-size:25px;line-height:1.25;letter-spacing:-.025em;margin:0 0 12px;color:#d8e7f0}.service-directory article p{font-size:15px;line-height:1.8;margin:0;color:#aebfcc;max-width:650px}
.inner-page section.service-faq{padding:60px 7%;gap:7%;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}.inner-page section.related{padding:50px 7% 60px;border-top:1px solid #263b4b}.inner-page .related h2{font-size:40px}.inner-page .related>div>a{font-size:22px;padding:19px 0}
.inner-page section.collection-intro{padding:0 7% 35px;max-width:1200px}.collection-intro p{font-size:17px;line-height:1.8;margin:0 0 18px;color:#afbfcc}
.inner-page section.verified-projects{padding:45px 7% 55px}.inner-page .verified-projects h2{font-size:clamp(35px,4vw,52px)}.inner-page .verified-projects>div{gap:40px}.inner-page .verified-projects>div>a{padding-top:25px}.inner-page .verified-projects h3{font-size:30px;line-height:1.2}.inner-page .verified-projects p{font-size:16px;line-height:1.75}
.inner-page section.project-grid{padding:15px 7% 60px;gap:35px 30px}.inner-page .project-grid img{height:auto;aspect-ratio:16/9}.inner-page .project-grid h2{font-size:28px;padding-bottom:20px;border-bottom:1px solid #304857}.inner-page section.project-story{padding:55px 7%;gap:7%;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}.inner-page .project-story h2{font-size:40px;line-height:1.15}.inner-page .project-story p{font-size:16px;line-height:1.8}
.inner-page section.people-grid{padding:5px 7% 55px;gap:40px 25px}.inner-page .person{border-bottom:1px solid #304857;padding-bottom:20px}.inner-page .person img{aspect-ratio:3/4;object-position:top}.inner-page .person p{font-size:12px;line-height:1.5;letter-spacing:0;margin:17px 0 7px}.inner-page .person h2{font-size:27px;line-height:1.2}
.inner-page section.news-links{padding:5px 7% 65px;display:grid;grid-template-columns:1fr 1fr;gap:0 40px}.inner-page .news-links a{padding:25px 0}.inner-page .news-links h2{font-size:29px;line-height:1.2}.inner-page .news-links p{font-size:15px;line-height:1.7;margin:12px 0 0}.contact-email{font-size:14px!important;overflow-wrap:anywhere;margin-top:20px!important}
@media(max-width:1050px){.inner-page header{gap:10px}.inner-page header nav{gap:1px}.inner-page header nav>a,.inner-page .navdrop>summary,.inner-page .inner-contact{font-size:9px;padding:12px 8px}.inner-page section.page-overview,.inner-page section.page-bridge{gap:5%}.service-directory>div{gap:0 30px}}
@media(max-width:750px){.inner-page header{height:80px;padding:0 6%}.inner-page header nav{display:none}.inner-page .inner-contact{display:none}.inner-page .mobile>div{top:80px}.inner-page .mobile>summary{font-size:11px;text-transform:uppercase;letter-spacing:1px}.inner-page section.page-opening{padding:42px 6% 27px}.page-opening h1{font-size:clamp(40px,8.4vw,58px);line-height:1.07}.page-opening>p{font-size:16px;margin-top:18px}.page-feature-image{margin:0 6%}.page-feature-image>img{height:260px}.inner-page section.page-overview,.inner-page section.page-bridge,.inner-page section.project-story{grid-template-columns:1fr;gap:23px;padding:40px 6%}.page-overview h2,.page-bridge h2,.inner-page .project-story h2{font-size:35px}.page-overview p,.page-bridge p,.inner-page .project-story p{font-size:15px;line-height:1.8}.inner-page section.service-directory{padding:0 6% 40px}.service-directory>h2{font-size:35px;margin-bottom:24px}.service-directory>div{grid-template-columns:1fr;gap:0}.service-directory article{padding:23px 0}.service-directory article h3{font-size:24px}.inner-page section.service-faq{grid-template-columns:1fr;gap:25px;padding:40px 6%}.inner-page section.related{padding:38px 6% 43px}.inner-page .related h2{font-size:35px}.inner-page .related>div>a{font-size:21px}.inner-page section.collection-intro{padding:0 6% 20px}.collection-intro p{font-size:15px}.inner-page section.verified-projects{padding:33px 6%}.inner-page .verified-projects h2{font-size:35px}.inner-page .verified-projects>div{grid-template-columns:1fr;gap:20px}.inner-page .verified-projects h3{font-size:27px}.inner-page section.project-grid{padding:5px 6% 40px;grid-template-columns:1fr;gap:27px}.inner-page .project-grid h2{font-size:27px}.inner-page section.people-grid{padding:0 6% 35px;grid-template-columns:1fr 1fr;gap:25px 18px}.inner-page .person h2{font-size:22px}.inner-page .person p{font-size:10px}.inner-page section.news-links{grid-template-columns:1fr;padding:0 6% 40px}.inner-page .news-links h2{font-size:27px}}
/* Stronger editorial breaks across the inner pages. */
.inner-page section.page-overview{padding-top:55px;padding-bottom:55px;border-bottom:1px solid #304756}
.page-overview>div>p:first-child{font-size:18px;line-height:1.75;color:#d1e0e9}
.page-overview>div>p+p{padding-top:18px;border-top:1px solid #263c4c;margin-top:20px}
.inner-page section.service-directory{padding-top:45px;padding-bottom:45px;background:#101d28;border-top:1px solid #304756;border-bottom:1px solid #304756}
.service-directory>h2{margin-bottom:28px}.service-directory article{border-top-color:#58788c;padding-top:24px;padding-bottom:24px}.service-directory article h3{color:#d4e8f3;font-size:26px}
.inner-page section.page-bridge{background:#0a141e;border-top:0;border-bottom:1px solid #304756}
.page-bridge>h2{padding-top:18px;border-top:2px solid #739fb7}
.page-bridge>div>p+p{margin-top:23px}
.inner-page section.service-faq{background:#090d11;border-bottom:1px solid #304756}
.inner-page section.related{background:#101c27;border-top:0}
.inner-page section.company-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;padding:30px 7%;background:#183044;border-top:1px solid #52798f;border-bottom:1px solid #52798f}
.company-facts>div{padding:0 30px;border-right:1px solid #47677d}.company-facts>div:first-child{padding-left:0}.company-facts>div:last-child{border:0;padding-right:0}.company-facts strong{font-family:Gilroy,Arial,sans-serif;font-size:clamp(33px,4vw,52px);line-height:1.05;letter-spacing:-.035em;color:#c5e6f6}.company-facts p{font-size:12px;line-height:1.5;margin:10px 0 0;color:#acc6d7}
.about-page .service-directory>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.about-page .service-directory article h3{font-size:25px}.about-page .service-directory article p{font-size:15px}
@media(max-width:900px){.about-page .service-directory>div{grid-template-columns:1fr;gap:0}}
@media(max-width:750px){.inner-page section.page-overview{padding-top:35px;padding-bottom:35px}.page-overview>div>p:first-child{font-size:17px}.page-overview>div>p+p{padding-top:16px;margin-top:18px}.inner-page section.service-directory{padding-top:35px;padding-bottom:30px}.page-bridge>h2{padding-top:15px}.inner-page section.company-facts{padding:25px 6%}.company-facts>div{padding:0 12px}.company-facts strong{font-size:clamp(25px,6vw,38px)}.company-facts p{font-size:10px;line-height:1.5}.service-directory article h3{font-size:24px}}
/* Service openings share the homepage's large video-backed typography. */
.service-page header{position:absolute;inset:0 0 auto;width:100%;z-index:30;background:transparent;border:0}
.service-page header:after{content:'';position:absolute;left:5%;right:5%;bottom:0;height:1px;background:#c4deee22}
.inner-page section.service-hero{position:relative;display:flex;align-items:center;isolation:isolate;height:100svh;min-height:640px;max-height:1100px;padding:130px 5% 55px;background:#001c2b;overflow:hidden}
.service-hero>.hero-video{position:absolute;inset:0;z-index:0;width:100%;height:100%;object-fit:cover;object-position:center}
.service-hero-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#001725e6,#001b2ba3 65%,#00172580),linear-gradient(0deg,#00172599,transparent 80%)}
.service-hero-content{position:relative;z-index:2;width:100%;min-width:0}
.service-hero h1{font-family:Arial,Helvetica,sans-serif;font-size:clamp(61px,7.9vw,122px);line-height:1.04;letter-spacing:-.06em;font-weight:700;text-transform:uppercase;margin:0;color:#fff;max-width:none}
.service-hero h1>span{display:block;width:max-content;max-width:100%;margin-bottom:9px}
.service-hero h1>.service-title-highlight{display:flex;align-items:baseline;margin-bottom:0}
.service-hero h1 em{display:inline-block;background:#50afcf;color:#fff;padding:0 .075em .025em .045em;font-style:normal;letter-spacing:-.06em;line-height:1.04}
.service-hero h1 b{font:inherit;line-height:1;color:#fff;margin-left:.01em}
.service-hero-long h1{font-size:clamp(49px,7.3vw,108px)}
@media(max-width:1000px){.service-hero h1{font-size:8.3vw}.service-hero-long h1{font-size:7.1vw}.inner-page section.service-hero{min-height:600px}}
@media(max-width:750px){.inner-page section.service-hero{height:92svh;min-height:540px;max-height:950px;padding:115px 6% 55px}.service-hero h1{font-size:clamp(38px,8.1vw,64px);line-height:1.08}.service-hero-long h1{font-size:clamp(28px,6.7vw,49px)}.service-hero h1>span{margin-bottom:9px}.service-hero h1 em{line-height:1.08}.service-hero>.hero-video{object-position:60% center}.service-hero-shade{background:linear-gradient(90deg,#001725eb,#001b2bb5),linear-gradient(0deg,#001725b0,transparent)}.service-page header:after{left:6%;right:6%}}

/* A single editorial rhythm: headings belong to the copy they introduce. */
.inner-page{--page-gutter:max(6%,calc((100vw - 1160px)/2));--section-space:clamp(36px,4.5vw,64px)}
.inner-page section.page-opening{padding:54px var(--page-gutter) 34px}
.inner-page .page-opening h1{max-width:1000px}
.inner-page .page-opening>p{margin-top:20px;max-width:760px}
.inner-page .page-feature-image{margin:0 var(--page-gutter)}
.inner-page section.page-overview,
.inner-page section.page-bridge,
.inner-page section.project-story,
.inner-page section.service-faq{display:block;padding:var(--section-space) var(--page-gutter);min-height:0}
.inner-page :is(.page-overview,.page-bridge,.project-story,.service-faq) h2{max-width:900px;font-size:clamp(30px,3.2vw,46px);line-height:1.14;margin:0 0 24px;padding:0;border:0}
.inner-page :is(.page-overview,.page-bridge,.project-story,.service-faq) h2 br{display:none}
.inner-page :is(.page-overview,.page-bridge,.project-story,.service-faq) h2 br:after{content:' '}
.inner-page :is(.page-overview,.page-bridge,.project-story)>div{max-width:900px}
.inner-page :is(.page-overview,.page-bridge,.project-story) p{max-width:none;font-size:17px;line-height:1.75;margin:0 0 18px;padding:0;border:0;color:#b8c8d4}
.inner-page :is(.page-overview,.page-bridge,.project-story) p:first-child{font-size:18px;line-height:1.75;color:#d1dfe8}
.inner-page :is(.page-overview,.page-bridge,.project-story) p+p{margin-top:0;padding-top:0;border:0}
.inner-page :is(.page-overview,.page-bridge,.project-story) p:last-child{margin-bottom:0}
.inner-page .page-bridge{background:#101e29;border-top:1px solid #304756;border-bottom:1px solid #304756}
.inner-page .page-bridge .text-link,.inner-page .project-story .text-link{margin:8px 22px 0 0}
.inner-page section.service-faq>div:last-child{max-width:100%;margin-top:25px}
.inner-page .service-faq .accordion{padding:0;border-top:1px solid #304756}
.inner-page .service-faq .accordion summary{padding:21px 0;font-size:18px;line-height:1.5;gap:20px}
.inner-page .service-faq .accordion p{max-width:850px;margin:0;padding:0 35px 23px 0;line-height:1.75}
.inner-page section:is(.service-directory,.related,.verified-projects,.project-grid,.people-grid,.news-links){padding-left:var(--page-gutter);padding-right:var(--page-gutter)}
.inner-page section.service-directory{padding-top:var(--section-space);padding-bottom:calc(var(--section-space) - 16px)}
.inner-page .service-directory>h2,.inner-page .related>h2,.inner-page .verified-projects>h2{font-size:clamp(30px,3.2vw,46px);line-height:1.14;margin:0 0 28px}
.inner-page .service-directory>div{gap:0 40px}
.inner-page .service-directory article{padding:24px 0 28px}
.inner-page section.people-grid{padding-top:36px;padding-bottom:var(--section-space);gap:32px 24px;grid-template-columns:repeat(3,minmax(0,1fr))}
.inner-page .person{min-width:0;padding-bottom:22px}
.inner-page .person img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:top}
.inner-page .person h2{font-size:clamp(22px,2.1vw,28px)}
.inner-page .person p{min-height:36px;margin:17px 0 7px}
.inner-page section.collection-intro{max-width:none;padding:0 var(--page-gutter) 32px}
.inner-page .collection-intro p{max-width:900px}
.inner-page section.verified-projects{padding-top:var(--section-space);padding-bottom:var(--section-space);border-top:1px solid #304756}
.inner-page section.project-grid{padding-top:0;padding-bottom:var(--section-space)}
.inner-page section.news-links{padding-top:0;padding-bottom:var(--section-space)}
.inner-page section.company-facts{padding:30px var(--page-gutter)}
.inner-page section.related{padding-top:var(--section-space);padding-bottom:var(--section-space)}
.inner-page .related>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px}
.inner-page .related>div>a{margin:0;padding:20px 0;font-size:22px;border-bottom:1px solid #304756}
.inner-page .foot-top{align-items:center;gap:24px}
@media(max-width:750px){
 .inner-page{--page-gutter:6%;--section-space:36px}
 .inner-page section.page-opening{padding-top:36px;padding-bottom:28px}
 .inner-page :is(.page-overview,.page-bridge,.project-story,.service-faq) h2{font-size:32px;margin-bottom:20px}
 .inner-page :is(.page-overview,.page-bridge,.project-story) p,.inner-page :is(.page-overview,.page-bridge,.project-story) p:first-child{font-size:16px;line-height:1.75}
 .inner-page section.people-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 18px;padding-top:28px}
 .inner-page .person h2{font-size:22px}.inner-page .person p{min-height:32px;font-size:11px}
 .inner-page .service-directory>div{grid-template-columns:1fr;gap:0}
 .inner-page .related>div{grid-template-columns:1fr;gap:0}
 .inner-page .related>div>a{font-size:21px;padding:17px 0}
 .inner-page .service-faq .accordion summary{font-size:17px;padding:18px 0}
}
@media(max-width:380px){.inner-page .person h2{font-size:19px}.inner-page section.people-grid{gap:24px 14px}}
/* Adjacent text sections share their spacing instead of adding two large gaps. */
.inner-page .page-opening+.page-overview{padding-top:24px}
.inner-page .related>div{margin-top:0}
.inner-page .related>div>a>span:last-child{font-family:Gilroy,Arial,sans-serif;font-size:inherit;color:inherit}
.inner-page .related>div>a:hover>span:last-child{transform:none}
.inner-page .service-faq h2 span{color:#a9ccde}

/* Real PREM photography: contact sheets and full-width editorial interludes. */
.inner-page section.media-story{padding:42px var(--page-gutter) 48px;background:#0b151e;border-bottom:1px solid #304756}
.media-story>h2{font-size:clamp(29px,3.1vw,44px);line-height:1.13;margin:0 0 26px;max-width:900px}
.media-frames{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.media-frames figure{margin:0;min-width:0;display:flex;flex-direction:column}
.media-frames img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;filter:saturate(.9);background:#14232d}
.media-frames figcaption{padding:13px 0 12px;border-bottom:1px solid #395366;color:#b9cddb;font-size:13px;line-height:1.5;letter-spacing:.01em}
.media-trio .media-frames{grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:20px 24px}
.media-trio .media-frames figure:first-child{grid-row:span 2}
.media-trio .media-frames figure:first-child img{flex:1;min-height:0;aspect-ratio:auto;object-fit:cover}
.media-trio .media-frames figure:not(:first-child) img{aspect-ratio:16/9}
.media-portrait .media-frames{grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);align-items:stretch}
.media-portrait .media-frames img{height:clamp(320px,34vw,480px);aspect-ratio:auto}
.media-portrait .media-frames figure:first-child img{object-position:center 40%}
.media-collection .media-frames{gap:30px 26px}
.inner-page .verified-projects>div>a>img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;display:block;margin-bottom:23px}
.inner-page .news-links a:has(img){display:flex;flex-direction:column}
.inner-page .news-links a>img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;margin-bottom:22px}
.inner-page section.contact-production-image{padding:0;overflow:hidden;height:clamp(260px,34vw,460px);border-bottom:1px solid #304756}
.contact-production-image figure{margin:0;height:100%}.contact-production-image img{width:100%;height:100%;object-fit:cover;object-position:center 55%;display:block;filter:brightness(.85)}
.inner-page .page-feature-image>img{height:clamp(270px,35vw,460px)}
@media(max-width:750px){
 .inner-page section.media-story{padding:30px var(--page-gutter) 35px}
 .media-story>h2{font-size:30px;margin-bottom:22px}
 .media-frames,.media-trio .media-frames,.media-portrait .media-frames{grid-template-columns:1fr;gap:22px}
 .media-trio .media-frames figure:first-child{grid-row:auto}
 .media-trio .media-frames figure:first-child img{flex:none;aspect-ratio:4/3}
 .media-trio .media-frames figure:not(:first-child) img{aspect-ratio:3/2}
 .media-portrait .media-frames figure:first-child img{height:auto;aspect-ratio:4/5;max-height:520px;object-fit:cover}
 .media-portrait .media-frames figure:not(:first-child) img{height:auto;aspect-ratio:4/3}
 .media-frames figcaption{font-size:12px;padding:11px 0}
 .media-collection .media-frames{gap:24px}
 .inner-page .verified-projects>div>a>img{margin-bottom:18px}
}
/* Photography punctuates the service narrative instead of preceding long text runs. */
.inner-page section.story-interlude{padding-top:0;padding-bottom:0;background:#0b151e;border:0}
.story-interlude .media-frames{gap:24px}
.media-wide .media-frames{grid-template-columns:1fr}
.media-wide .media-frames img{aspect-ratio:2.25/1;max-height:520px;object-position:center 48%}
.media-wide .media-frames figcaption{padding-bottom:16px}
.inner-page section.service-chapter{background:#0b151e;border-top:0;border-bottom:0;padding-top:36px;padding-bottom:32px}
.inner-page .service-chapter>h2{margin-bottom:23px}
.inner-page .service-chapter article{padding-bottom:8px}
.inner-page section.service-chapter-follow{padding-top:20px;padding-bottom:40px}
.media-portrait-feature .media-frames{display:block;max-width:100%}
.media-portrait-feature figure{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:30px}
.media-portrait-feature .media-frames img{height:480px;aspect-ratio:4/5;object-position:center 35%}
.media-portrait-feature .media-frames figcaption{font-family:Gilroy,Arial,sans-serif;font-size:clamp(30px,3.8vw,54px);line-height:1.1;padding:0 0 25px;color:#a9ccde;max-width:350px;letter-spacing:-.035em}
.inner-page .page-bridge>.media-inline{max-width:none;margin:0 0 27px;padding:0;background:none;border:0}
.media-inline .media-frames{grid-template-columns:1fr}
.media-inline .media-frames img{width:100%;height:auto;aspect-ratio:2.4/1;object-fit:cover;object-position:center 40%}
.media-inline figcaption{padding-bottom:14px}
.inner-page section.page-bridge:has(.media-inline){padding-top:38px}
@media(max-width:750px){
 .media-wide .media-frames img{aspect-ratio:4/3;max-height:none}
 .inner-page section.service-chapter{padding-top:28px;padding-bottom:20px}
 .inner-page section.service-chapter-follow{padding-top:15px;padding-bottom:30px}
 .media-portrait-feature figure{display:block}
 .media-portrait-feature .media-frames img{height:auto;max-height:500px;aspect-ratio:4/5}
 .media-portrait-feature .media-frames figcaption{font-family:Arial,Helvetica,sans-serif;font-size:12px;line-height:1.5;letter-spacing:0;max-width:none;padding:12px 0;color:#b9cddb}
 .media-inline .media-frames img{aspect-ratio:4/3}
}
/* Recording stills keep the same confident photographic scale as the wider shoots. */
.media-portrait-feature figure{display:flex;gap:0}
.media-portrait-feature .media-frames img{width:100%;height:clamp(320px,39vw,520px);aspect-ratio:auto;object-position:center 50%}
.media-portrait-feature .media-frames figcaption{max-width:none;font-family:Arial,Helvetica,sans-serif;font-size:13px;line-height:1.5;letter-spacing:.01em;padding:13px 0 16px;color:#b9cddb}
@media(max-width:750px){.media-portrait-feature .media-frames img{height:auto;aspect-ratio:4/5;max-height:520px}.media-portrait-feature .media-frames figcaption{font-size:12px}}
/* Selected work: an understated action and a pair of connected project links. */
.work-cinematic .moment-work-link{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:15px 27px;border:1px solid #b9d6e5;border-radius:2px;background:#0817248c;color:#f0f6fa;font-family:Gilroy,Arial,sans-serif;font-size:16px;line-height:1.3;letter-spacing:.01em;transition:background .2s,color .2s,border-color .2s}
.work-cinematic .moment-work-link:hover{background:#dceef6;border-color:#dceef6;color:#102633}
.work-context.moment-project-links{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:0 7%;background:#101c26;border-bottom:1px solid #304756}
.moment-project-links>a{display:flex;flex-direction:column;justify-content:center;gap:9px;min-width:0;padding:28px 35px 28px 0;position:relative;text-decoration:none}
.moment-project-links>a+a{padding-left:35px;border-left:1px solid #304756}
.moment-project-links strong{font-family:Gilroy,Arial,sans-serif;font-size:clamp(25px,2.4vw,33px);line-height:1.15;letter-spacing:-.025em;color:#e3eef4;transition:color .2s}
.moment-project-links span{font-size:14px;line-height:1.6;color:#a8bfce}
.moment-project-links>a:after{content:'';position:absolute;left:0;right:35px;bottom:0;height:2px;background:#8ecbe4;transform:scaleX(0);transform-origin:left;transition:transform .25s}
.moment-project-links>a+a:after{left:35px;right:0}
.moment-project-links>a:hover strong{color:#9fd8ef}.moment-project-links>a:hover:after{transform:scaleX(1)}
@media(max-width:700px){.work-context.moment-project-links{grid-template-columns:1fr;padding:0 6%}.moment-project-links>a,.moment-project-links>a+a{padding:23px 0;gap:7px;border-left:0}.moment-project-links>a+a{border-top:1px solid #304756}.moment-project-links strong{font-size:27px}.moment-project-links span{font-size:13px}.moment-project-links>a:after,.moment-project-links>a+a:after{left:0;right:0}.work-cinematic .moment-work-link{font-size:15px;padding:14px 24px}}
/* Service pairs share a heading row, so their descriptions begin together. */
@media(min-width:751px){
 .inner-page .service-directory article h3{min-height:2.5em}
 @supports(grid-template-rows:subgrid){
  .inner-page .service-directory>div{row-gap:0}
  .inner-page .service-directory article{display:grid;grid-template-rows:subgrid;grid-row:span 2;row-gap:12px;align-content:start}
  .inner-page .service-directory article h3{min-height:0;margin:0;align-self:start}
  .inner-page .service-directory article p{margin:0;align-self:start}
 }
}
@media(max-width:900px){.about-page .service-directory article{display:block;grid-row:auto}.about-page .service-directory article h3{min-height:0;margin-bottom:12px}}
/* News is an empty editorial destination until published articles are connected. */
.news-page-main{min-height:58svh}
.news-page-main .page-opening h1 em{color:#a9ccde}
#news-articles:empty{display:none}
/* A focused, temporary event page in PREM's editorial style. */
.inner-page .heaney-opening{padding-bottom:32px}.heaney-opening h1{font-size:clamp(43px,5.8vw,82px);max-width:1100px}
.inner-page section.heaney-introduction{padding:0 var(--page-gutter) 36px}.heaney-introduction p{max-width:900px;font-size:17px;line-height:1.8;margin:0 0 20px}.heaney-introduction p:first-child{font-size:21px;color:#d4e4ed;line-height:1.65}.heaney-introduction p:last-child{margin:0}
.inner-page section.heaney-trailer{padding:28px var(--page-gutter) 50px;background:#0d1923;border-top:1px solid #304756;border-bottom:1px solid #304756}.heaney-trailer h2{font-size:30px;margin-bottom:24px}.heaney-trailer video{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:#000;border:1px solid #304756}
.inner-page section.heaney-booking{padding:48px var(--page-gutter) 55px}.heaney-booking h2{font-size:clamp(32px,3.4vw,48px);margin-bottom:27px}.booking-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px 30px}.heaney-booking fieldset{margin:0;padding:0;border:0;min-width:0}.booking-field{display:flex;flex-direction:column;gap:10px}.heaney-booking label,.heaney-booking legend{font-size:15px;line-height:1.6;color:#d4e4ed}.booking-field input,.booking-field select{width:100%;min-height:50px;border:1px solid #4b6577;background:#101e29;color:white;padding:12px 14px;border-radius:2px;font:16px Arial,sans-serif}.booking-field input:focus-visible,.booking-field select:focus-visible{outline:2px solid #8acbe4;outline-offset:3px}.booking-field input::placeholder{color:#849bab}.booking-sponsorship{grid-column:1/-1}.booking-sponsorship legend{margin-bottom:15px}.booking-choice{display:inline-flex;align-items:center;gap:10px;margin-right:25px}.booking-choice input{width:18px;height:18px;accent-color:#8acbe4}.heaney-booking button{display:inline-block;border:1px solid #c4e0ef;background:#d8edf7;color:#102735;padding:15px 28px;font:17px Gilroy,Arial,sans-serif;margin-top:30px;border-radius:2px;cursor:pointer}.heaney-booking button:disabled{opacity:.45;cursor:default}.booking-notes{margin-top:28px;padding-top:23px;border-top:1px solid #304756}.booking-notes p{font-size:13px;line-height:1.7;margin:0 0 10px;max-width:900px}.booking-honeypot{display:none}.booking-connection{padding:18px 20px;background:#142a3a;border-left:2px solid #8acbe4;font-size:15px;line-height:1.7;margin-bottom:28px}.booking-connection a{color:#d4effb;text-decoration:underline;text-underline-offset:4px}#booking-status{white-space:pre-line;font-size:18px;line-height:1.7}#booking-status:not(:empty){margin-top:25px;padding:20px;border:1px solid #54788c}.booking-error{color:#ffc8c8}.booking-success{color:#d9edf6}
@media(max-width:750px){.inner-page section.heaney-introduction{padding-bottom:30px}.heaney-introduction p{font-size:16px}.heaney-introduction p:first-child{font-size:18px}.inner-page section.heaney-trailer{padding-top:27px;padding-bottom:32px}.heaney-trailer h2{font-size:26px}.inner-page section.heaney-booking{padding-top:35px;padding-bottom:38px}.booking-grid{grid-template-columns:1fr;gap:22px}.booking-choice{display:flex;margin:0 0 14px}.heaney-opening h1{font-size:clamp(37px,7.6vw,55px)}}
/* Nathan's original film still becomes the page's cinematic opening. */
.inner-page section.heaney-image-hero{position:relative;isolation:isolate;display:flex;align-items:flex-end;min-height:520px;height:65svh;max-height:760px;overflow:hidden;padding:55px var(--page-gutter);background:#0a151e}
.heaney-image-hero>img{position:absolute;inset:0;z-index:-2;display:block;width:100%;height:100%;object-fit:cover;object-position:center 43%}
.heaney-image-hero:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#030e19b8,transparent 85%),linear-gradient(0deg,#050d17e8,transparent 80%)}
.heaney-image-hero h1{font-size:clamp(43px,5.4vw,78px);line-height:1.07;max-width:1100px;text-shadow:0 3px 25px #0005}
.heaney-image-hero h1 em{color:#c3e6f6}
.inner-page .heaney-image-hero+.heaney-introduction{padding-top:38px}
@media(max-width:750px){.inner-page section.heaney-image-hero{height:60svh;min-height:430px;max-height:620px;padding:32px var(--page-gutter)}.heaney-image-hero>img{object-position:52% center}.heaney-image-hero h1{font-size:clamp(36px,7.4vw,55px)}.inner-page .heaney-image-hero+.heaney-introduction{padding-top:29px}}
/* Compact client credits between the introduction and service gallery. */
.home-page section.intro-manifesto{padding-bottom:18px}
.home-page section.client-strip{padding:17px 7% 23px;background:#090d11}
.client-strip h2{font-family:Gilroy,Arial,sans-serif;font-size:17px;line-height:1.4;letter-spacing:0;color:#b7cad6;text-align:center;margin:0 0 22px}
.client-viewport{overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin;scrollbar-color:#486476 transparent}
.client-viewport:focus-visible{outline:1px solid #8acbe4;outline-offset:5px}
.client-logos{list-style:none;margin:0;padding:0 0 5px;display:grid;grid-template-columns:repeat(14,minmax(0,1fr));column-gap:12px;row-gap:20px;align-items:center}
.client-logos li{grid-column:span 2;display:flex;align-items:center;justify-content:center;height:45px;min-width:0}
.client-logos li:nth-child(8){grid-column:2/span 2}
.client-logos img{display:block;max-width:140px;width:auto;max-height:43px;height:auto;object-fit:contain;opacity:.88}
@media(max-width:1100px){.client-logos img{max-width:112px;max-height:40px}.client-logos{column-gap:10px}}
@media(max-width:900px){.client-logos{min-width:900px}.client-logos img{max-width:114px}.home-page section.client-strip{padding:15px 6% 20px}.client-strip h2{font-size:16px;margin-bottom:19px}}
.home-page .client-strip+#services{padding-top:32px}
@media(min-width:1101px){.client-logos img{max-width:min(100%,140px)}}
/* Client logos always wrap: no carousel or horizontal scrolling. */
.client-viewport{overflow:visible}
.client-logos{min-width:0;display:flex;flex-wrap:wrap;justify-content:center;gap:20px 0}
.client-logos li,.client-logos li:nth-child(8){flex:0 0 14.2857%;grid-column:auto;padding:0 10px}
.client-logos img{max-width:min(100%,140px);max-height:43px}
@media(max-width:1000px){.client-logos li,.client-logos li:nth-child(8){flex-basis:20%}.client-logos img{max-width:min(100%,120px);max-height:38px}.client-logos{gap:18px 0}}
@media(max-width:650px){.client-logos li,.client-logos li:nth-child(8){flex-basis:25%;height:38px;padding:0 8px}.client-logos img{max-width:100%;max-height:34px}.client-logos{gap:16px 0}}
@media(max-width:380px){.client-logos li,.client-logos li:nth-child(8){flex-basis:33.3333%}}
/* Direct-link UHNM request form */
.request-main{--request-line:#304956;max-width:1440px;margin:auto}.inner-page section.request-heading{padding:58px var(--page-gutter) 32px}.request-heading h1{font-size:clamp(40px,6vw,80px);line-height:1.04;letter-spacing:-.035em;margin:0 0 25px;max-width:1050px}.request-heading h1 span{color:#8acbe4}.request-heading>p{max-width:870px;font-size:17px;line-height:1.8;color:#c8d6df}.request-notice{margin:0 var(--page-gutter) 32px;padding:19px 24px;border-left:3px solid #8acbe4;background:#122430;color:#d1e2eb}.request-notice strong{font:19px Gilroy,Arial,sans-serif;color:#fff}.request-notice p{font-size:15px;line-height:1.7;margin:7px 0}.request-notice a{font-size:15px;color:#aadef3;text-decoration:underline;text-underline-offset:4px}.request-form{padding:0 var(--page-gutter) 55px}.inner-page section.request-chapter{padding:29px 0 34px;border-top:1px solid var(--request-line)}.request-chapter h2{font-size:clamp(25px,3vw,35px);margin:0 0 26px;line-height:1.2}.request-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px 30px}.request-field{min-width:0;display:flex;flex-direction:column;gap:10px}.request-field label,.request-field legend{font-size:15px;line-height:1.6;color:#d8e4eb}.request-field label>span[aria-hidden],.request-field legend>span{color:#8acbe4}.request-field input:not([type=checkbox]),.request-field select,.request-field textarea{box-sizing:border-box;width:100%;border:1px solid #4b6577;border-radius:2px;background:#101e29;color:#fff;padding:13px 14px;min-height:51px;font:16px Arial,sans-serif}.request-field textarea{resize:vertical;line-height:1.6;min-height:128px}.request-field input:focus-visible,.request-field select:focus-visible,.request-field textarea:focus-visible{outline:2px solid #8acbe4;outline-offset:3px}.request-full{grid-column:1/-1}.request-field.request-options{display:block;margin:0;padding:0;border:0}.request-options legend{margin-bottom:13px}.request-choices{display:grid;grid-template-columns:1fr 1fr;gap:13px 22px}.request-choice{display:flex;align-items:flex-start;gap:10px;cursor:pointer}.request-choice input{flex-shrink:0;width:19px;height:19px;margin:2px 0 0;accent-color:#8acbe4}.request-help{font-size:14px;line-height:1.7;color:#aebfca;margin:-12px 0 23px}.request-field input[type=file]{font-size:13px;padding:10px;cursor:pointer}.request-field input::file-selector-button{background:#d4e8f3;color:#102735;border:0;padding:8px 12px;margin-right:12px;font:14px Arial,sans-serif;cursor:pointer}.request-submit{border-top:1px solid var(--request-line);padding-top:25px}.request-submit>p:first-child{font-size:14px;color:#aebfca;margin:0 0 16px}.request-submit button{border:1px solid #d0e6f0;background:#d8edf7;color:#102735;padding:16px 30px;border-radius:2px;font:18px Gilroy,Arial,sans-serif;cursor:pointer}.request-submit button:hover{background:#b3ddef}.request-submit button:focus-visible{outline:2px solid #8acbe4;outline-offset:4px}#request-status:not(:empty){border:1px solid #486b80;background:#11232f;padding:19px;max-width:750px;margin-top:23px;line-height:1.7;font-size:16px}
@media(max-width:650px){.inner-page section.request-heading{padding-top:36px;padding-bottom:24px}.request-heading>p{font-size:16px}.request-grid{grid-template-columns:1fr;gap:23px}.request-choices{grid-template-columns:1fr}.request-notice{padding:17px 19px;margin-bottom:23px}.inner-page section.request-chapter{padding:25px 0 30px}.request-chapter h2{margin-bottom:23px}.request-form{padding-bottom:38px}}

/* Original Cyber Essentials accreditation, kept compact in every footer. */
.foot-bottom{align-items:center}.foot-bottom a.footer-certification{display:block;flex:0 0 64px;width:64px;padding:0;line-height:0}.footer-certification img{display:block;width:64px;height:auto;border-radius:3px}.footer-certification:focus-visible{outline-offset:5px}
@media(max-width:650px){.foot-bottom a.footer-certification{flex-basis:58px;width:58px;margin-left:auto}.footer-certification img{width:58px}}
/* Readable policy chapters and compact footer social buttons. */
.inner-page section.privacy-heading{padding:55px var(--page-gutter) 28px;max-width:1100px;margin:auto}.privacy-heading h1{font-size:clamp(45px,6vw,78px);margin-bottom:25px}.privacy-heading h1 span{color:#8acbe4}.privacy-heading p{max-width:820px;margin:12px 0;line-height:1.8}.privacy-heading p:first-of-type{font-size:14px;color:#8acbe4;margin-bottom:23px}.policy-body{max-width:1100px;margin:auto;padding:0 var(--page-gutter) 45px}.inner-page section.policy-section{padding:27px 0 28px;border-top:1px solid #304956}.policy-section h2{font-size:clamp(24px,2.6vw,32px);line-height:1.2;margin-bottom:18px}.policy-section p,.policy-section li{font-size:16px;line-height:1.85;color:#bfccd5;max-width:850px}.policy-section p{margin:12px 0}.policy-section ul,.policy-section ol{margin:13px 0;padding-left:23px}.policy-section li{padding-left:5px;margin:5px 0}.policy-section a{color:#9dd7ee;text-decoration:underline;text-underline-offset:4px}.foot-bottom{gap:20px;flex-wrap:wrap}.footer-socials{display:flex;gap:8px;align-items:center;margin-left:auto}.foot-bottom .footer-socials a{display:inline-flex;align-items:center;gap:7px;min-height:37px;padding:8px 11px;border:1px solid #334650;border-radius:3px;font-size:11px;color:#c3d2dc;transition:background .2s,border-color .2s}.footer-socials svg{width:16px;height:16px;flex-shrink:0}.foot-bottom .footer-socials a:hover{background:#192b37;border-color:#88c6df;color:#fff}.foot-bottom .footer-socials span{width:auto}.foot-bottom .footer-privacy{white-space:nowrap}
@media(max-width:650px){.inner-page section.privacy-heading{padding-top:36px;padding-bottom:23px}.policy-body{padding-bottom:30px}.inner-page section.policy-section{padding:23px 0}.footer-socials{margin-left:0;flex-wrap:wrap}.foot-bottom .footer-socials a{min-height:40px;padding:9px 10px}.foot-bottom>span{width:100%}.foot-bottom a.footer-certification{margin-left:auto}}

/* Small, round social icons with accessible link names retained. */
.foot-bottom .footer-socials a{width:34px;height:34px;min-height:34px;padding:8px;border-radius:50%;justify-content:center;gap:0}.footer-socials{gap:8px}.footer-socials svg{width:16px;height:16px}@media(max-width:650px){.foot-bottom .footer-socials a{width:34px;height:34px;min-height:34px;padding:8px}}
/* Centre social icons independently of the surrounding footer links. */
.foot-bottom{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);column-gap:24px}.foot-bottom>span{grid-column:1;grid-row:1;width:auto}.foot-bottom .footer-socials{grid-column:2;grid-row:1;justify-self:center;margin:0}.foot-bottom .footer-privacy{grid-column:3;grid-row:1;justify-self:end;margin-right:84px}.foot-bottom a.footer-certification{grid-column:3;grid-row:1;justify-self:end;margin:0}
@media(max-width:750px){.foot-bottom{grid-template-columns:1fr 1fr;gap:18px}.foot-bottom .footer-socials{grid-column:1/-1;grid-row:1;justify-content:center}.foot-bottom>span{grid-column:1/-1;grid-row:2;text-align:center}.foot-bottom .footer-privacy{grid-column:1;grid-row:3;justify-self:start;margin:0}.foot-bottom a.footer-certification{grid-column:2;grid-row:3}}

/* Match the footer wordmark to the header. */
footer .logo img{filter:brightness(0) invert(1)}

/* One coherent footer row across the website. */
footer.footer-unified{padding:32px 7%;border-top:1px solid #27333d;background:#080c10}.footer-row{display:grid;grid-template-columns:minmax(170px,1.4fr) minmax(180px,1.25fr) auto minmax(100px,.8fr) 58px;gap:28px;align-items:center;max-width:1440px;margin:auto}.footer-brand .logo{display:inline-block}.footer-brand .logo img{width:128px;height:72px;object-fit:contain;filter:brightness(0) invert(1)}.footer-brand p{font-size:10px;line-height:1.5;color:#8fa4b3;margin:8px 0 0}.footer-location{font-size:12px;line-height:1.8;margin:0;color:#a4b8c7}.footer-row .footer-socials{display:flex;flex-wrap:nowrap;gap:8px;justify-content:center;margin:0}.footer-row .footer-socials a{box-sizing:border-box;display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;padding:8px;border:1px solid #405565;border-radius:50%;color:#d2e0e9;transition:background .2s,border-color .2s}.footer-row .footer-socials a:hover{background:#172c3a;border-color:#00a4ef}.footer-row .footer-socials svg{width:16px;height:16px}.footer-conversation{display:flex;flex-direction:column;align-items:flex-start;justify-self:center;gap:10px}.footer-row .footer-contact{font-size:21px;line-height:1.2;letter-spacing:-.2px;padding:4px 0 7px;border-bottom:1px solid #628499}.footer-row .footer-privacy{font-size:11px;color:#a4b8c7;white-space:nowrap}.footer-row .footer-privacy:hover{color:#fff}.footer-row .footer-certification{display:block;width:58px;line-height:0;justify-self:end}.footer-row .footer-certification img{display:block;width:58px;height:auto;border-radius:3px}@media(max-width:1000px) and (min-width:701px){.footer-row{grid-template-columns:1.2fr 1.2fr auto;gap:24px}.footer-row .footer-socials{grid-column:3;grid-row:1}.footer-conversation{grid-column:1/3;grid-row:2;justify-self:start;flex-direction:row;align-items:center;gap:24px}.footer-row .footer-certification{grid-column:3;grid-row:2}}@media(max-width:700px){footer.footer-unified{padding:28px 6%}.footer-row{grid-template-columns:1fr auto;gap:25px 20px}.footer-brand{grid-column:1;grid-row:1}.footer-location{grid-column:1;grid-row:2;font-size:12px}.footer-row .footer-socials{grid-column:1;grid-row:3;justify-content:flex-start}.footer-conversation{grid-column:2;grid-row:1/3;align-self:center;justify-self:end;align-items:flex-end}.footer-row .footer-certification{grid-column:2;grid-row:3;width:48px}.footer-row .footer-certification img{width:48px}.footer-brand .logo img{width:112px;height:63px}}
/* Tighter, balanced footer; frame the complete transparent wordmark. */
footer.footer-unified{padding-top:40px;padding-bottom:40px}.footer-row{max-width:1040px;column-gap:32px;row-gap:24px}.footer-brand{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.footer-brand .logo{display:block;position:relative;flex:none;width:132px;height:39px;overflow:hidden;margin:0;line-height:1}.footer-brand .logo img{position:absolute;display:block;width:136.84px;height:76.98px;max-width:none;left:-2.2px;top:-20.59px;object-fit:fill;margin:0;transform:none}.footer-brand p{margin:0;font-size:10px;line-height:1.5}.footer-location{line-height:1.7}.footer-conversation{gap:9px}.footer-row .footer-certification,.footer-row .footer-certification img{width:52px}@media(min-width:851px){.footer-row{grid-template-columns:max-content max-content max-content max-content 52px;justify-content:center;column-gap:clamp(22px,3vw,42px)}.footer-brand,.footer-location,.footer-row .footer-socials,.footer-conversation,.footer-row .footer-certification{grid-column:auto;grid-row:auto;align-self:center;justify-self:start}.footer-conversation{flex-direction:column;align-items:flex-start}}@media(max-width:850px) and (min-width:701px){.footer-row{grid-template-columns:1fr 1fr auto;column-gap:24px}.footer-conversation{justify-self:start}}@media(max-width:700px){footer.footer-unified{padding-top:32px;padding-bottom:32px}.footer-row{row-gap:24px;column-gap:22px}.footer-brand .logo{width:132px;height:39px}.footer-brand .logo img{width:136.84px;height:76.98px;left:-2.2px;top:-20.59px}.footer-row .footer-certification,.footer-row .footer-certification img{width:48px}}
/* Four centred footer groups, with social icons centred below. */
.footer-row{grid-template-columns:repeat(4,max-content);justify-content:center;align-items:center;column-gap:clamp(24px,4vw,56px);row-gap:25px}.footer-row .footer-brand{grid-column:1;grid-row:1;justify-self:center;align-items:center;text-align:center}.footer-row .footer-location{grid-column:2;grid-row:1;justify-self:center;text-align:center}.footer-row .footer-conversation{grid-column:3;grid-row:1;justify-self:center;align-items:center;flex-direction:column;text-align:center}.footer-row .footer-certification{grid-column:4;grid-row:1;justify-self:center}.footer-row .footer-socials{grid-column:1/-1;grid-row:2;justify-self:center;justify-content:center;margin:0}@media(max-width:700px){.footer-row{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px;row-gap:25px;max-width:420px}.footer-row .footer-brand{grid-column:1;grid-row:1}.footer-row .footer-location{grid-column:2;grid-row:1}.footer-row .footer-conversation{grid-column:1;grid-row:2}.footer-row .footer-certification{grid-column:2;grid-row:2}.footer-row .footer-socials{grid-column:1/-1;grid-row:3}}
/* Balanced four-column footer with location at the far right. */
.footer-row{grid-template-columns:repeat(4,minmax(0,1fr));width:100%;max-width:900px;justify-content:stretch;column-gap:24px;row-gap:25px}.footer-row .footer-brand{grid-column:1;grid-row:1;justify-self:center}.footer-row .footer-conversation{grid-column:2;grid-row:1;justify-self:center}.footer-row .footer-certification{grid-column:3;grid-row:1;justify-self:center}.footer-row .footer-location{grid-column:4;grid-row:1;justify-self:center;text-align:center}.footer-row .footer-socials{grid-column:1/-1;grid-row:2;justify-self:center;justify-content:center;width:max-content}@media(max-width:700px){.footer-row{grid-template-columns:repeat(2,minmax(0,1fr));max-width:420px;column-gap:24px}.footer-row .footer-brand{grid-column:1;grid-row:1}.footer-row .footer-conversation{grid-column:2;grid-row:1}.footer-row .footer-certification{grid-column:1;grid-row:2}.footer-row .footer-location{grid-column:2;grid-row:2}.footer-row .footer-socials{grid-column:1/-1;grid-row:3}}

/* Consistent news previews: full articles open from each card. */
.news-grid{align-items:stretch!important}
.news-grid .news-card{display:flex;flex-direction:column;height:100%;min-width:0}
.news-grid .news-card-media{flex:none}
.news-grid .news-card-copy{box-sizing:border-box;flex:1;min-height:0;padding:24px;display:flex;flex-direction:column}
.news-grid .news-card .news-card-copy h2{font-size:24px;line-height:1.35;height:97.2px;min-height:97.2px;max-height:97.2px;margin:0 0 18px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;overflow-wrap:anywhere}
.news-grid .news-card .news-card-copy p{font-size:16px;line-height:1.65;height:79.2px;min-height:79.2px;max-height:79.2px;margin:0 0 24px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.news-grid .news-card-copy time{margin-top:auto;font-size:12px}
.news-grid .news-card-copy::after{content:"Read article";display:block;margin-top:18px;padding-top:16px;border-top:1px solid #293a46;color:#f0f5f8;font-size:14px;font-weight:600;letter-spacing:.01em}
.news-grid .news-card:focus-visible{outline:2px solid #00a4ef;outline-offset:5px}
@media(max-width:650px){.news-grid .news-card-copy{padding:21px}.news-grid .news-card .news-card-copy h2{font-size:22px;height:89.1px;min-height:89.1px;max-height:89.1px}}

/* Article return navigation */
.news-article .news-back{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 21px;margin:0 0 32px;border:1px solid #354955;border-radius:999px;background:#111d25;color:#f0f5f8;font-family:inherit;font-size:14px;font-weight:600;line-height:1.4;letter-spacing:.015em;text-decoration:none;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease}
.news-article .news-back:hover{background:#1b303e;border-color:#6b8b9f;box-shadow:0 4px 16px #0003}
.news-article .news-back:focus-visible{outline:2px solid #00a4ef;outline-offset:4px}
@media(prefers-reduced-motion:reduce){.news-article .news-back{transition:none}}

/* A defined, comfortable reading surface for every Sanity article. */
.news-article .news-body{box-sizing:border-box;max-width:800px;margin:32px auto 0;padding:clamp(24px,4vw,48px);background:#10191f;border:1px solid #25333c;border-radius:12px;color:#e3e9ed}
.news-article .news-body p,.news-article .news-body li{font-size:18px;line-height:1.75;color:#e3e9ed;letter-spacing:0}
.news-article .news-body p{margin:0 0 1.1em}
.news-article .news-body>p:first-child{font-size:20px;line-height:1.65;color:#f1f5f7}
.news-article .news-body h2{font-size:clamp(26px,3vw,34px);line-height:1.2;color:#f3f6f8;margin:1.5em 0 .65em;padding-top:24px;border-top:1px solid #2b3b46;letter-spacing:-.025em}
.news-article .news-body h3{font-size:25px;line-height:1.3;color:#f3f6f8;margin:1.3em 0 .6em}
.news-article .news-body strong{color:#f6f8fa}
.news-article .news-body ul,.news-article .news-body ol{padding-left:1.3em;margin:0 0 1.2em}
.news-article .news-body li+li{margin-top:.4em}
.news-article .news-body blockquote{margin:28px 0;padding:4px 0 4px 22px;border-left:3px solid #00a4ef;color:#f0f5f8}
.news-article .news-body a{color:#b9e0ef;text-underline-offset:4px;text-decoration-thickness:1px}
.news-article .news-body a:hover{color:#fff}
.news-article .news-body img{display:block;border-radius:6px;margin:28px 0}
.news-article .news-body>:first-child{margin-top:0}
.news-article .news-body>:last-child{margin-bottom:0}
@media(max-width:650px){.news-article .news-body{padding:24px 20px;border-radius:8px;margin-top:24px}.news-article .news-body p,.news-article .news-body li{font-size:17px;line-height:1.7}.news-article .news-body>p:first-child{font-size:18px}}

/* Give the client marks a little more room before the image section. */
.home-page section.client-strip{padding-bottom:43px}
@media(max-width:900px){.home-page section.client-strip{padding-bottom:36px}}

/* Compact editorial close: distinct sections with a consistent dark finish. */
.home-page section.work-cinematic{min-height:390px;height:36vw;max-height:510px}
.home-page section.work-cinematic:before{background:linear-gradient(90deg,#030e19e8 0%,#0613218f 48%,#07152126 100%),linear-gradient(0deg,#0b131bf2 0%,#05111b80 28%,transparent 65%)}
.home-page section.team-introduction.team-text-only{padding:38px 9.5% 44px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9%;align-items:center;background:#0b131b;border-top:1px solid #25374266;border-bottom:1px solid #25374288}
.home-page .team-text-only h2{font-size:clamp(34px,3.4vw,48px);line-height:1.08;margin:0;letter-spacing:-.035em}
.home-page .team-text-only .team-introduction-copy>p{font-size:16px;line-height:1.65;max-width:500px;margin:0 0 18px;color:#d0dce4}
.home-page .team-text-only .text-link{display:inline-flex;min-height:36px;align-items:center;padding:0 0 5px;border-bottom:1px solid #5f8fa5;color:#e2edf3;font-size:15px}
.home-page .team-text-only .text-link:hover{color:#fff;border-color:#b9dce9}
.home-page footer.footer-unified{background:#090f15;border-top:0}
@media(max-width:700px){.home-page section.work-cinematic{height:auto;min-height:380px;max-height:none}.home-page section.team-introduction.team-text-only{grid-template-columns:1fr;gap:20px;padding:30px 6% 34px}.home-page .team-text-only h2{font-size:36px}.home-page .team-text-only .team-introduction-copy>p{font-size:15px;margin-bottom:14px}}
