:root{--bg:#101517;--ink:#f6f4ef;--muted:#a0abad;--line:#ffffff23;--accent:#ffc17b}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:6px}a:hover{color:var(--accent)}.wrap{width:min(1280px,calc(100% - 100px));margin-inline:auto}.cinema{position:relative;background:#101719;isolation:isolate;overflow:hidden}.hero-video,.video-shade{position:absolute;inset:0;width:100%;height:100%;z-index:-2}.hero-video{object-fit:cover;object-position:60% center}.video-shade{z-index:-1;background:linear-gradient(90deg,#071013f0 0%,#091316bf 35%,#0b14154a 70%,#0b141526),linear-gradient(0deg,#101517 0%,transparent 32%,#06101366 100%)}.topbar{height:124px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);gap:25px}.brand{display:block;width:158px}.brand img{width:100%;height:auto;display:block;filter:drop-shadow(0 2px 8px #0009)}.header-actions{display:flex;gap:35px;align-items:center;font-size:12px}.languages{display:flex;gap:4px}.languages button{background:transparent;color:#c2c8c7;border:1px solid transparent;padding:9px;font-size:10px}.languages button[aria-pressed=true]{color:white;border-color:#ffffff60}.hero{min-height:650px;display:flex;flex-direction:column;justify-content:space-between;padding-top:88px;padding-bottom:30px}.hero-copy{max-width:650px}.eyebrow{display:flex;align-items:center;gap:12px;font-size:9px;letter-spacing:2px;margin:0 0 27px;color:#e0e4e1}.eyebrow>span:first-child:empty,.status-dot{width:5px;height:5px;background:var(--accent);border-radius:50%;display:inline-block;flex-shrink:0}h1{font-size:clamp(58px,7.6vw,105px);font-weight:400;line-height:1.03;letter-spacing:-5px;margin:0 0 27px}h1 em{font-style:normal;color:var(--accent)}.intro{font-size:15px;color:#c0c8c7;line-height:1.9;max-width:395px;margin:0}.button{display:inline-flex;gap:47px;align-items:center;background:#f5f2eb;color:#172226;padding:19px 24px;font-size:12px;margin-top:31px}.button:hover{color:#172226;background:var(--accent)}.button>span:last-child{font-size:19px}.hero-foot{margin-top:65px;display:flex;justify-content:space-between;align-items:center;gap:30px}.maintenance{font-size:11px;line-height:1.8;display:flex;gap:12px;align-items:center;color:#c2caca;margin:0}#video-toggle{color:#d7dfde;background:#0b141655;border:1px solid #ffffff35;padding:10px 15px;font-size:10px;white-space:nowrap}.international-bar{display:flex;justify-content:space-between;gap:20px;padding-block:24px;border-bottom:1px solid var(--line);font-size:9px;letter-spacing:2px;color:var(--muted)}.contact-section{padding-block:63px}.contact-heading{display:flex;justify-content:space-between;gap:35px;align-items:end;margin-bottom:35px}.contact-heading .eyebrow{color:var(--accent);font-size:9px}.contact-heading h2{font-size:34px;font-weight:400;letter-spacing:-1px;line-height:1.2;margin:0}.contact-heading>p{max-width:240px;font-size:12px;line-height:1.8;color:var(--muted);margin:0}.contact-widget{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.office{padding:32px 40px 32px 0;min-width:0}.office+.office{border-left:1px solid var(--line);padding-left:40px;padding-right:0}.office-title{display:flex;gap:15px;align-items:center}.country-code{display:grid;place-items:center;width:39px;height:39px;border:1px solid var(--line);font:11px monospace;color:var(--accent);flex-shrink:0}h3{font-size:18px;font-weight:400;margin:0 0 7px}.office-title p{color:var(--muted);font-size:11px;margin:0}dl{display:grid;gap:22px;margin:28px 0 0}dt{font-size:10px;color:var(--muted);margin-bottom:7px}dd{margin:0;font-size:16px;line-height:1.6;overflow-wrap:anywhere}dd a span{margin-left:8px;color:var(--accent)}.pending{color:var(--muted)}.pending small{display:block;font-size:10px}.address{display:block;margin-top:24px;font-size:10px;line-height:1.8;color:var(--muted)}footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-block:23px;color:var(--muted);font-size:9px;line-height:1.6}footer p{margin:0}@media(min-width:1600px){.hero{min-height:730px;padding-top:110px}}@media(max-width:900px){.wrap{width:calc(100% - 60px)}.hero{min-height:650px}.contact-heading h2{font-size:28px}.office{padding-right:25px}.office+.office{padding-left:25px}}@media(max-width:640px){.wrap{width:calc(100% - 40px)}.topbar{height:105px}.brand{width:125px}.header-actions>a{display:none}.hero{padding-top:65px;min-height:640px}.hero-video{object-position:58% center}.video-shade{background:linear-gradient(90deg,#081115de,#0811157a),linear-gradient(0deg,#101517,transparent 60%)}h1{font-size:clamp(48px,12vw,72px);letter-spacing:-2.5px}.eyebrow{font-size:8px;letter-spacing:1.2px}.intro{font-size:14px;max-width:330px}.hero-foot{flex-direction:column;align-items:start;gap:18px;margin-top:45px}.maintenance{font-size:10px}.international-bar{font-size:7px;letter-spacing:1px;padding-block:20px}.contact-section{padding-block:39px}.contact-heading{display:block}.contact-heading>p{margin-top:17px;max-width:none}.contact-heading h2{font-size:28px}.contact-widget{grid-template-columns:1fr}.office,.office+.office{padding:26px 0;border-left:0}.office+.office{border-top:1px solid var(--line)}dd{font-size:15px}footer{font-size:8px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media(min-width:701px){.video-shade{background:linear-gradient(90deg,#071013ed 0%,#091316a6 35%,#0b141522 70%,#0b141511),linear-gradient(0deg,#101517 0%,transparent 28%,#06101344 100%)}}
/* Brand system v1 — primary identity and campaign accents. */
:root{--brand-blue:#075780;--brand-cyan:#25b9e8;--brand-graphite:#101517;--brand-paper:#f6f4ef;--brand-steel:#a0abad;--campaign-amber:#ffc17b;--accent:var(--campaign-amber)}
.topbar{height:154px}.brand{width:222px;padding:12px 17px;background:#fff;border:1px solid #ffffff80;border-radius:3px;box-shadow:0 6px 24px #0003;flex-shrink:0}.brand img{filter:none;width:100%;height:auto}.hero{padding-top:72px}@media(max-width:640px){.topbar{height:128px}.brand{width:180px;padding:10px 14px}.hero{padding-top:48px}}
/* Logo directly integrated into the cinematic header. */
.brand{width:265px;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;position:relative;isolation:isolate}.brand:before{content:'';position:absolute;inset:-20px -35px;z-index:-1;background:radial-gradient(ellipse,#19354b99 0%,#10253655 40%,transparent 72%);pointer-events:none}.brand img{filter:drop-shadow(0 2px 7px #0008)}@media(max-width:640px){.brand{width:205px;padding:0}.brand:before{inset:-12px -20px}}
/* Compact header logo. */
.brand{width:185px}.topbar{height:124px}@media(max-width:640px){.brand{width:150px}.topbar{height:105px}}
/* Horizontal identity and USA red accents. */
:root{--brand-red:#a84d52;--accent:#e38c90;--campaign-amber:var(--accent)}.brand{width:340px}.brand:before{background:radial-gradient(ellipse,#19354b66,transparent 72%)}.button:hover{background:#e38c90;color:#101517}.hero .eyebrow>span:first-child:empty,.status-dot{background:#c86a70}@media(max-width:900px){.brand{width:285px}}@media(max-width:640px){.brand{width:min(245px,65vw)}.topbar{height:105px}}
/* Full-width white brand header requested by the client. */
.topbar{position:relative;isolation:isolate;height:130px;border-bottom:0;color:#182b38}.topbar:before{content:'';position:absolute;inset:0 calc((min(1280px,100vw - 100px) - 100vw)/2);background:#fff;z-index:-1;box-shadow:0 5px 24px #00000024;border-bottom:1px solid #e5e9eb;pointer-events:none}.brand{width:340px;background:transparent;padding:0;border:0;box-shadow:none}.brand:before{display:none}.brand img{filter:none}.topbar .header-actions>a{color:#293d49}.topbar .header-actions>a:hover{color:#a84d52}.topbar .languages button{color:#687780}.topbar .languages button[aria-pressed=true]{color:#182b38;border-color:#cbd4da;background:#f1f4f6}.topbar a:focus-visible,.topbar button:focus-visible{outline-color:#a84d52}@media(max-width:900px){.topbar:before{inset-inline:-30px}.brand{width:285px}.topbar{height:118px}}@media(max-width:640px){.topbar:before{inset-inline:-20px}.brand{width:min(245px,65vw)}.topbar{height:105px}}
/* White-to-transparent header blending into the footage. */
.topbar:before{bottom:-48px;background:linear-gradient(180deg,#ffffff 0%,#fffffff7 43%,#ffffffd9 66%,#ffffff80 82%,#ffffff00 100%);border:0;box-shadow:none}.brand{filter:drop-shadow(0 1px 1px #ffffff88)}@media(max-width:640px){.topbar:before{bottom:-35px;background:linear-gradient(180deg,#ffffff 0%,#fffffff5 47%,#ffffffbd 71%,#ffffff00 100%)}}
/* Taller white header with the existing fade. */
.topbar{height:155px}.topbar:before{bottom:-60px}@media(max-width:900px){.topbar{height:140px}}@media(max-width:640px){.topbar{height:125px}.topbar:before{bottom:-45px}}
/* Solid white header, preserving its current height. */
.topbar:before{bottom:0;background:#fff;border-bottom:1px solid #e5e9eb;box-shadow:0 5px 24px #00000024}@media(max-width:640px){.topbar:before{bottom:0;background:#fff}}
/* Header surface at 90% opacity; logo and controls stay fully opaque. */
.topbar:before{background:rgba(255,255,255,.9)}@media(max-width:640px){.topbar:before{background:rgba(255,255,255,.9)}}



/* Portrait bevel-cutting footage: retain full frame, without upscaling the source. */
.cinema{background:#101517}.hero-video{top:155px;left:auto;right:0;bottom:0;width:63%;height:calc(100% - 155px);object-fit:contain;object-position:right center}.video-shade{background:linear-gradient(90deg,#101517 0%,#101517f5 30%,#1015178c 48%,#10151715 75%),linear-gradient(0deg,#101517 0%,transparent 25%)}@media(max-width:900px){.hero-video{top:140px;height:calc(100% - 140px);width:70%}}@media(max-width:640px){.hero-video{top:125px;width:100%;height:calc(100% - 125px);object-fit:contain;object-position:center bottom}.video-shade{background:linear-gradient(180deg,#10151766,#101517b3 45%,#10151766 80%,#101517),linear-gradient(90deg,#10151780,transparent)}}
/* Centered full-width hero footage with a 90%-transparent black overlay. */
.hero-video{top:155px;left:0;right:0;bottom:0;width:100%;height:calc(100% - 155px);object-fit:cover;object-position:center center}.video-shade{top:155px;bottom:0;height:calc(100% - 155px);background:rgba(0,0,0,.1)}.hero-copy{text-shadow:0 2px 14px #0009}.hero-foot{position:relative;z-index:1}.maintenance{text-shadow:0 1px 5px #000}.button{text-shadow:none}#video-toggle{background:#10151799}@media(max-width:900px){.hero-video,.video-shade{top:140px;height:calc(100% - 140px)}}@media(max-width:640px){.hero-video,.video-shade{top:125px;height:calc(100% - 125px)}.hero-video{width:100%;object-fit:cover;object-position:center center}.video-shade{background:rgba(0,0,0,.1)}}
/* Video confined to the right-hand rectangle indicated in the reference. */
.cinema{background:#101517}.hero-video{top:173px;left:50%;right:5%;bottom:18px;width:45%;height:calc(100% - 191px);object-fit:cover;object-position:center center}.video-shade{top:173px;left:50%;right:5%;bottom:18px;width:45%;height:calc(100% - 191px);background:rgba(0,0,0,.1)}.hero-copy{max-width:48%;text-shadow:none}.hero-copy h1{font-size:clamp(52px,6.5vw,96px)}.hero-foot{padding-right:0}.maintenance{max-width:48%}@media(max-width:900px) and (min-width:641px){.hero-video,.video-shade{top:158px;height:calc(100% - 176px);left:52%;right:4%;width:44%}.hero-copy h1{font-size:clamp(43px,6.5vw,62px)}}@media(max-width:640px){.hero{padding-top:42px;padding-bottom:25px;min-height:0}.hero-copy{max-width:100%}.hero-copy h1{font-size:clamp(48px,12vw,72px)}.hero-video,.video-shade{top:auto;left:20px;right:20px;bottom:78px;width:calc(100% - 40px);height:360px}.hero-video{object-fit:cover;object-position:center center}.hero-foot{margin-top:405px;gap:15px;flex-direction:row;align-items:center}.maintenance{max-width:65%;font-size:9px}#video-toggle{padding:9px 10px;font-size:9px}}
/* Align video edges with the pause control, leaving a 10px inner inset. */
@media(min-width:901px){.hero-video,.video-shade{right:max(40px,calc((100vw - 1280px)/2 - 10px));bottom:20px;width:auto;height:calc(100% - 193px)}.hero-foot{align-items:flex-end}}
@media(min-width:641px) and (max-width:900px){.hero-video,.video-shade{right:20px;bottom:20px;width:auto;height:calc(100% - 178px)}.hero-foot{align-items:flex-end}}
/* Desktop overlap: footage extends beneath the copy and fades into the page. */
@media(min-width:641px){.hero-video,.video-shade{left:28%;width:auto}.video-shade{background:linear-gradient(90deg,#101517 0%,#101517d9 12%,#10151780 32%,#1015171a 62%),linear-gradient(0deg,#101517 0%,transparent 24%)}.hero-copy{max-width:650px;position:relative;z-index:1;text-shadow:0 2px 16px #10151766}.hero-copy h1{font-size:clamp(58px,7.6vw,105px)}.hero-copy .intro{max-width:395px}.hero-copy .button{text-shadow:none}}
/* Explicit width prevents the portrait video's intrinsic size leaving a blank right column. */
@media(min-width:901px){.hero-video,.video-shade{left:28%;right:max(40px,calc((100vw - 1280px)/2 - 10px));width:calc(72% - max(40px,calc((100vw - 1280px)/2 - 10px)));object-fit:cover;object-position:center 65%}}
@media(min-width:641px) and (max-width:900px){.hero-video,.video-shade{left:28%;right:20px;width:calc(72% - 20px);object-fit:cover;object-position:center 65%}}
@media(min-width:641px){.video-shade{background:linear-gradient(90deg,#101517 0%,#101517d9 10%,#10151780 28%,#1015171a 55%,#1015170d 88%,#10151788 100%),linear-gradient(0deg,#101517 0%,transparent 25%)}.hero-copy h1{font-size:clamp(58px,7vw,96px)}}
/* Native-resolution footage: full cutting head visible without oversized cropping. */
@media(min-width:901px){.hero-video,.video-shade{top:auto;bottom:20px;left:auto;right:max(40px,calc((100vw - 1280px)/2 - 10px));width:min(464px,43vw);height:auto;aspect-ratio:464/496;max-height:calc(100% - 175px)}.hero-video{object-fit:contain;object-position:center}.video-shade{background:linear-gradient(90deg,#101517b3 0%,#10151726 16%,transparent 38%),linear-gradient(0deg,#101517b3 0%,transparent 18%)}.hero-copy{max-width:57%}.hero-copy h1{font-size:clamp(58px,6.5vw,90px)}}
@media(min-width:641px) and (max-width:900px){.hero-video,.video-shade{top:auto;bottom:20px;left:auto;right:20px;width:46%;height:auto;aspect-ratio:464/496;max-height:calc(100% - 160px)}.hero-video{object-fit:contain;object-position:center}.video-shade{background:linear-gradient(90deg,#101517aa,transparent 36%),linear-gradient(0deg,#101517aa,transparent 20%)}.hero-copy{max-width:65%}.hero-copy h1{font-size:clamp(50px,6.5vw,65px)}}
@media(max-width:640px){.hero-video{object-fit:contain;object-position:center}.video-shade{background:linear-gradient(0deg,#101517b3,transparent 25%),linear-gradient(90deg,#10151755,transparent 35%)}}
/* Larger full-frame video with restrained overlap. */
@media(min-width:901px){.hero-video,.video-shade{width:min(640px,49vw);height:auto;aspect-ratio:464/496;max-height:calc(100% - 175px)}.hero-video{object-fit:contain}.hero-copy{max-width:57%}.video-shade{background:linear-gradient(90deg,#101517d9 0%,#10151755 14%,transparent 36%),linear-gradient(0deg,#101517aa 0%,transparent 18%)}}
@media(min-width:641px) and (max-width:900px){.hero-video,.video-shade{width:54%;height:auto;aspect-ratio:464/496;max-height:calc(100% - 160px)}.hero-video{object-fit:contain}}
/* Fade the actual footage edge, including contain letterboxing, into the background. */
.hero-video{-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 25%,#000 100%);mask-image:linear-gradient(90deg,transparent 0%,#000 25%,#000 100%)}
@media(min-width:641px){.video-shade{background:linear-gradient(90deg,#101517 0%,#101517b3 9%,#10151740 23%,transparent 40%),linear-gradient(0deg,#101517aa 0%,transparent 18%)}}
