:root{color-scheme:dark;--navy:#07131f;--navy-2:#0b2030;--blue:#123650;--red:#e21f2f;--white:#f5f7f7;--ice:#dce5e8;--mist:#a9b8bf;--line:rgba(255,255,255,.17);--ink:#07131f;--pad:clamp(1.25rem,4.8vw,5.5rem);--display:"Arial Narrow","Aptos Narrow","Roboto Condensed",Arial,sans-serif;--body:"Segoe UI",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--navy);color:var(--white);font-family:var(--body);line-height:1.55}a{color:inherit;text-decoration:none}img,video{display:block;max-width:100%}button,input{font:inherit}.skip-link{position:fixed;z-index:100;top:.5rem;left:.5rem;padding:.65rem 1rem;background:#fff;color:#000;transform:translateY(-160%)}.skip-link:focus{transform:none}
.site-header{position:fixed;z-index:50;top:0;left:0;width:100%;height:92px;display:grid;grid-template-columns:220px 1fr auto;align-items:center;gap:2rem;padding:0 var(--pad);border-bottom:1px solid var(--line);transition:background .3s,backdrop-filter .3s}.site-header.is-scrolled{background:rgba(4,15,24,.9);backdrop-filter:blur(16px)}.brand{display:flex;align-items:center;width:185px;height:70px}.brand img,.footer-brand img{width:100%;height:100%;object-fit:contain;filter:brightness(0) invert(1)}.site-header nav{display:flex;justify-content:center;gap:clamp(1.2rem,3vw,3.2rem)}.site-header nav a,.header-cta{font-size:.69rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase}.site-header nav a{position:relative;padding:.5rem 0}.site-header nav a:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:1px;background:var(--red);transform:scaleX(0);transform-origin:right;transition:transform .25s}.site-header nav a:hover:after{transform:scaleX(1);transform-origin:left}.header-cta{padding:1rem 0;border-bottom:1px solid currentColor}.menu-toggle{display:none}
.scroll-world{position:relative;height:430vh;background:#000}.world-stage{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden}.world-video,.world-poster,.world-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.world-video{opacity:0;transition:opacity .3s}.world-video.ready{opacity:1}.world-shade{background:linear-gradient(90deg,rgba(2,10,17,.89) 0%,rgba(2,10,17,.5) 40%,rgba(2,10,17,.06) 75%),linear-gradient(0deg,rgba(2,10,17,.65),transparent 45%)}.hero-coordinates{position:absolute;z-index:2;top:50%;right:var(--pad);display:flex;gap:1.5rem;padding-top:.6rem;border-top:1px solid rgba(255,255,255,.55);font:600 .59rem var(--body);letter-spacing:.16em}.world-copy{position:absolute;z-index:3;left:var(--pad);bottom:clamp(6.5rem,13vh,9.5rem);max-width:920px;animation:scene-in .7s cubic-bezier(.2,.7,.2,1) both}.world-copy[hidden]{display:none}.eyebrow,.overline{margin:0 0 1.3rem;color:var(--mist);font-size:.67rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase}.world-copy h1,.world-copy h2{max-width:12ch;margin:0;font-family:var(--display);font-size:clamp(4rem,8.6vw,9.4rem);font-weight:900;line-height:.8;letter-spacing:-.065em;text-transform:uppercase}.world-copy em,.global em{color:transparent;font-style:normal;-webkit-text-stroke:1.2px rgba(255,255,255,.86)}.world-copy>p:not(.eyebrow){max-width:52ch;margin:1.6rem 0 0;color:#d6dfe2;font-size:clamp(1rem,1.25vw,1.2rem)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:2.5rem;min-width:255px;margin-top:2rem;padding:1.05rem 1.15rem 1.05rem 1.35rem;background:var(--red);border:1px solid var(--red);color:#fff;font-size:.69rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase;transition:transform .25s,background .25s}.button:hover{transform:translateY(-3px);background:#ff3343}.world-progress{position:absolute;z-index:3;right:var(--pad);bottom:2.2rem;left:var(--pad);display:flex;align-items:center;gap:1rem;color:#d6dfe2;font-size:.58rem;letter-spacing:.2em;text-transform:uppercase}.world-progress:before{content:"";flex:1;height:1px;background:rgba(255,255,255,.25)}.world-progress-bar{position:absolute;bottom:0;left:0;width:var(--progress,0%);height:1px;background:var(--red)}
.manifesto,.services,.fleet,.support,.global,.contact,footer{padding-right:var(--pad);padding-left:var(--pad)}.section-label{display:flex;gap:1rem;color:#657984;font-size:.64rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.section-label span{color:var(--red)}.manifesto{display:grid;grid-template-columns:.55fr 1.55fr .6fr;gap:clamp(2rem,6vw,7rem);padding-top:clamp(7rem,12vw,12rem);padding-bottom:clamp(7rem,12vw,12rem);background:var(--ice);color:var(--ink)}.manifesto h2,.section-head h2,.fleet h2,.support h2,.global h2,.contact h2{margin:0;font-family:var(--display);font-size:clamp(3rem,6vw,6.8rem);font-weight:900;line-height:.88;letter-spacing:-.055em;text-transform:uppercase}.manifesto-copy>p:last-child,.fleet-copy>p,.support-main>p:last-child{max-width:65ch;margin-top:2rem;color:#4c626d}.metric{align-self:end;padding-top:1rem;border-top:1px solid #8da0a8}.metric strong{display:block;font-family:var(--display);font-size:clamp(4rem,7vw,7rem);line-height:.8;letter-spacing:-.06em}.metric span{display:block;max-width:18ch;margin-top:1rem;color:#536772;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em}
.services{padding-top:clamp(7rem,10vw,10rem);padding-bottom:clamp(7rem,10vw,10rem);background:#eef2f3;color:var(--ink)}.section-head{display:grid;grid-template-columns:.55fr 2.15fr;gap:2rem;margin-bottom:5rem}.section-head h2{max-width:12ch}.service-list{border-top:1px solid #9babb2}.service-card{position:relative;display:grid;grid-template-columns:minmax(180px,28%) 1fr 42px;align-items:center;gap:clamp(1.5rem,4vw,4rem);min-height:210px;padding:1.25rem 0;border-bottom:1px solid #9babb2;overflow:hidden}.service-card img{width:100%;height:180px;object-fit:cover;filter:saturate(.7);transition:filter .4s,transform .5s}.service-card:hover img{filter:saturate(1);transform:scale(1.025)}.service-copy span{font-size:.62rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#667b84}.service-copy h3{margin:.35rem 0 .65rem;font-family:var(--display);font-size:clamp(2rem,4.2vw,4.7rem);font-weight:900;line-height:.9;letter-spacing:-.045em;text-transform:uppercase}.service-copy p{max-width:64ch;margin:0;color:#52656e}.service-card>b{display:grid;place-items:center;width:40px;height:40px;border:1px solid #9babb2;border-radius:50%;font-weight:400;transition:background .2s,color .2s}.service-card:hover>b{background:var(--red);border-color:var(--red);color:white}
.fleet{display:grid;grid-template-columns:1.15fr .85fr;min-height:850px;padding:0;background:var(--navy);overflow:hidden}.fleet-image{position:relative;min-height:620px;overflow:hidden}.fleet-image img{width:100%;height:100%;object-fit:cover}.fleet-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 65%,var(--navy)),linear-gradient(0deg,rgba(7,19,31,.55),transparent)}.fleet-image span{position:absolute;z-index:2;bottom:-.14em;left:.04em;color:rgba(255,255,255,.12);font-family:var(--display);font-size:clamp(14rem,34vw,35rem);font-weight:900;line-height:.7;letter-spacing:-.11em}.fleet-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(4rem,7vw,8rem)}.fleet-copy .section-label{margin-bottom:4rem;color:#83949c}.fleet-copy h2{max-width:9ch}.fleet-copy ul{display:grid;grid-template-columns:1fr 1fr;margin:2.5rem 0 0;padding:0;border-top:1px solid var(--line);list-style:none}.fleet-copy li{padding:.8rem 0;border-bottom:1px solid var(--line);color:#dbe3e5;font:700 .72rem var(--body);letter-spacing:.09em;text-transform:uppercase}
.support{display:grid;grid-template-columns:.55fr 1.3fr .65fr;gap:clamp(2rem,6vw,7rem);padding-top:clamp(7rem,11vw,11rem);padding-bottom:clamp(7rem,11vw,11rem);background:#dbe3e5;color:var(--ink)}.support-main h2{max-width:10ch}.cert-list{align-self:end;border-top:1px solid #93a5ac}.cert-list span{display:block;padding:.9rem 0;border-bottom:1px solid #93a5ac;font-size:.67rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.global{position:relative;display:flex;min-height:720px;align-items:center;justify-content:center;flex-direction:column;text-align:center;overflow:hidden;background:radial-gradient(circle at 50% 50%,#174d6c 0,#0a2333 48%,#07131f 75%)}.global:before,.global:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.1);border-radius:50%}.global:before{width:60vw;height:60vw}.global:after{width:38vw;height:38vw}.global h2{position:relative;z-index:1}.global>p:last-of-type{position:relative;z-index:1;max-width:48ch;color:#b9c6cb}.route{position:absolute;z-index:2;width:min(720px,70vw);height:1px;background:linear-gradient(90deg,transparent,var(--red),transparent);transform:rotate(-12deg)}.route i{position:absolute;top:-4px;width:9px;height:9px;border-radius:50%;background:#fff;box-shadow:0 0 18px #fff}.route i:nth-child(1){left:7%}.route i:nth-child(2){left:27%}.route i:nth-child(3){left:51%}.route i:nth-child(4){left:74%}.route i:nth-child(5){left:93%}
.contact{display:grid;grid-template-columns:1.1fr .7fr .55fr;gap:clamp(2rem,6vw,7rem);padding-top:clamp(7rem,11vw,11rem);padding-bottom:clamp(6rem,9vw,9rem);background:var(--red)}.contact .section-label{margin-bottom:4rem;color:#ffd1d5}.contact .section-label span{color:#fff}.contact .overline{color:#ffd5d8}.contact-action{align-self:end}.contact-action>p{max-width:38ch}.button-light{width:100%;background:#fff;border-color:#fff;color:var(--ink)}.button-light:hover{background:var(--navy);border-color:var(--navy);color:#fff}.phone{display:inline-block;margin-top:1.6rem;border-bottom:1px solid rgba(255,255,255,.6);font-family:var(--display);font-size:1.4rem;font-weight:800}.contact address{align-self:end;padding-top:1rem;border-top:1px solid rgba(255,255,255,.55);font-size:.85rem;font-style:normal}.contact address strong{display:block;margin-bottom:1rem;font:800 1.2rem var(--display);text-transform:uppercase}
footer{display:grid;grid-template-columns:1.2fr 1fr 1fr auto;align-items:center;gap:2rem;padding-top:3.5rem;padding-bottom:3.5rem;background:#030a10}footer .footer-brand{width:190px;height:80px}footer p,footer small{margin:0;color:#819099;font-size:.65rem;letter-spacing:.1em;text-transform:uppercase}footer div{display:flex;gap:1.5rem;font-size:.69rem;text-transform:uppercase}a:focus-visible,button:focus-visible{outline:3px solid #fff;outline-offset:4px}@keyframes scene-in{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@media (max-width:900px){.site-header{grid-template-columns:1fr auto;height:78px}.brand{width:150px;height:60px}.header-cta{display:none}.menu-toggle{display:flex;align-items:center;gap:.7rem;border:0;background:transparent;color:#fff;font-size:.65rem;letter-spacing:.15em;text-transform:uppercase}.menu-toggle i,.menu-toggle i:after{display:block;width:22px;height:1px;background:currentColor}.menu-toggle i:after{content:"";transform:translateY(6px)}.site-header nav{position:absolute;top:100%;right:var(--pad);display:none;flex-direction:column;gap:0;width:min(300px,calc(100vw - 2.5rem));padding:.7rem;background:var(--navy);border:1px solid var(--line)}.site-header nav.open{display:flex}.site-header nav a{padding:1rem;border-bottom:1px solid var(--line)}.hero-coordinates{display:none}.manifesto,.section-head,.support,.contact{grid-template-columns:1fr}.metric{margin-top:2rem}.service-card{grid-template-columns:200px 1fr 42px}.fleet{grid-template-columns:1fr}.fleet-copy{min-height:650px}.fleet-image:after{background:linear-gradient(0deg,var(--navy),transparent 45%)}.cert-list{margin-top:2rem}.contact address{margin-top:2rem}footer{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}
@media (max-width:600px){.scroll-world{height:380vh}.world-copy{bottom:6.5rem}.world-copy h1,.world-copy h2{font-size:clamp(3.5rem,15vw,5.3rem)}.world-shade{background:linear-gradient(0deg,rgba(2,10,17,.94) 5%,rgba(2,10,17,.26) 72%)}.world-video,.world-poster{object-position:58% center}.manifesto,.services,.support,.global,.contact{padding-top:5.5rem;padding-bottom:5.5rem}.service-card{grid-template-columns:1fr 34px;gap:1.2rem;padding:1.2rem 0 1.8rem}.service-card img{grid-column:1/-1;height:230px}.service-copy h3{font-size:2.5rem}.fleet-image{min-height:480px}.fleet-copy{min-height:auto;padding:5rem var(--pad)}.fleet-copy ul{grid-template-columns:1fr}.global{min-height:600px}.global:before{width:130vw;height:130vw}.global:after{width:85vw;height:85vw}.route{width:110vw}footer{grid-template-columns:1fr;align-items:start}footer .footer-brand{grid-column:auto}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.scroll-world{height:100svh}.world-video{display:none}.world-copy:not([data-scene="0"]){display:none!important}.button,.site-header,.service-card img{transition:none}}
@media (max-width:600px){.world-copy{right:var(--pad)}.world-copy h1,.world-copy h2{max-width:100%;font-size:clamp(3.1rem,12.8vw,4.6rem)}}

/* Fleet gallery */
.fleet-gallery{padding:clamp(7rem,10vw,10rem) var(--pad);background:#eef2f3;color:var(--ink)}
.fleet-gallery-head{display:grid;grid-template-columns:.55fr 1.2fr .8fr;align-items:end;gap:clamp(2rem,5vw,6rem);margin-bottom:4.5rem}
.fleet-gallery-head .overline{align-self:start;margin:0;color:#657984}
.fleet-gallery-head h2{margin:0;font-family:var(--display);font-size:clamp(3rem,6vw,6.8rem);font-weight:900;line-height:.88;letter-spacing:-.055em;text-transform:uppercase}
.fleet-gallery-head>p:last-child{max-width:45ch;margin:0;color:#52656e}
.fleet-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:#9babb2;border:1px solid #9babb2}
.fleet-card{min-width:0;margin:0;padding:1rem;background:#eef2f3}
.fleet-card-image{position:relative;aspect-ratio:1.15;overflow:hidden;background:#cbd5d9}
.fleet-card-image:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,19,31,.42),transparent 50%);pointer-events:none}
.fleet-card-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.72);transition:transform .5s cubic-bezier(.2,.7,.2,1),filter .4s}
.fleet-card:hover img{transform:scale(1.045);filter:saturate(1)}
.fleet-card-image span{position:absolute;z-index:1;top:.8rem;left:.8rem;display:grid;place-items:center;width:2rem;height:2rem;background:rgba(7,19,31,.78);color:#fff;font-size:.58rem;font-weight:800;letter-spacing:.1em}
.fleet-card figcaption{display:flex;align-items:end;justify-content:space-between;gap:1rem;padding:1.15rem .2rem .25rem}
.fleet-card strong{font-family:var(--display);font-size:clamp(1.45rem,2.2vw,2.45rem);font-weight:900;line-height:.9;letter-spacing:-.035em;text-transform:uppercase}
.fleet-card small{max-width:13ch;color:#667b84;font-size:.56rem;font-weight:700;line-height:1.3;text-align:right;text-transform:uppercase;letter-spacing:.1em}
.fleet-card-wide{grid-column:span 2}.fleet-card-wide .fleet-card-image{aspect-ratio:2.15}
@media (max-width:1000px){.fleet-gallery-head{grid-template-columns:1fr 2fr}.fleet-gallery-head>p:last-child{grid-column:2}.fleet-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.fleet-gallery{padding-top:5.5rem;padding-bottom:5.5rem}.fleet-gallery-head{grid-template-columns:1fr;gap:1.5rem;margin-bottom:3rem}.fleet-gallery-head>p:last-child{grid-column:auto}.fleet-grid{grid-template-columns:1fr}.fleet-card-wide{grid-column:auto}.fleet-card-wide .fleet-card-image,.fleet-card-image{aspect-ratio:1.22}.fleet-card figcaption{align-items:start}.fleet-card strong{font-size:2rem}}

/* Quotation form */
.contact{grid-template-columns:minmax(280px,.7fr) minmax(560px,1.3fr);align-items:start;background:var(--red)}
.contact-intro>p:not(.overline){max-width:46ch;margin-top:2rem}
.contact-direct{display:flex;flex-direction:column;align-items:flex-start;gap:.65rem;margin-top:2.5rem}
.contact-direct a{border-bottom:1px solid rgba(255,255,255,.65);font-family:var(--display);font-size:1.25rem;font-weight:800}
.quote-form{padding:clamp(1.5rem,3.5vw,3.25rem);background:#f4f7f7;color:var(--ink);box-shadow:0 24px 65px rgba(25,5,8,.2)}
.quote-form fieldset{min-width:0;margin:0 0 2.1rem;padding:0;border:0}
.quote-form legend{width:100%;margin-bottom:1.25rem;padding-bottom:.7rem;border-bottom:1px solid #b7c4c9;font-family:var(--display);font-size:1.2rem;font-weight:900;text-transform:uppercase}
.form-note{margin:0 0 1.7rem;color:#5b7079;font-size:.65rem;font-weight:700;text-align:right;text-transform:uppercase;letter-spacing:.12em}.form-note span,.field label span,.operation-types legend span{color:var(--red)}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.15rem 1.4rem}.form-grid legend{grid-column:1/-1}
.field{display:flex;flex-direction:column;gap:.45rem}.field-wide{grid-column:1/-1}
.field label,.operation-types legend{font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em}
.field input,.field textarea{width:100%;min-height:50px;padding:.75rem .85rem;border:1px solid #a9b8be;border-radius:0;background:#fff;color:var(--ink);font:inherit;font-size:.95rem}
.field textarea{min-height:120px;resize:vertical}.field input:focus-visible,.field textarea:focus-visible{outline:3px solid var(--navy);outline-offset:2px;border-color:transparent}.field input:user-invalid,.field textarea:user-invalid{border-color:#b81725;background:#fff7f8}
.operation-types{display:grid;grid-template-columns:repeat(4,1fr);gap:.55rem}.operation-types legend{grid-column:1/-1}.operation-types label{position:relative;min-height:52px;cursor:pointer}.operation-types input{position:absolute;opacity:0}.operation-types label>span{display:flex;align-items:center;justify-content:center;height:100%;padding:.65rem;border:1px solid #a9b8be;background:#fff;font-size:.62rem;font-weight:800;text-align:center;text-transform:uppercase;letter-spacing:.08em;transition:background .2s,color .2s}.operation-types input:checked+span{background:var(--navy);border-color:var(--navy);color:#fff}.operation-types input:focus-visible+span{outline:3px solid var(--navy);outline-offset:2px}
.form-submit{margin-top:.4rem;border:0;cursor:pointer}.form-status{min-height:1.4em;margin:0;color:#5a2228;font-size:.78rem;font-weight:700}
.contact>address{grid-column:1/-1;display:block;margin-top:0;padding-top:2rem;border-top:1px solid rgba(255,255,255,.55)}
@media (max-width:1000px){.contact{grid-template-columns:1fr}.quote-form{margin-top:1rem}.contact>address{grid-column:auto}.form-grid{grid-template-columns:1fr}.field-wide,.form-grid legend{grid-column:auto}}
@media (max-width:600px){.quote-form{padding:1.35rem}.operation-types{grid-template-columns:1fr 1fr}.contact-direct{margin-bottom:1.5rem}}
