:root{--navy:#052f44;--deep:#031d2a;--mist:#f2f5f6;--ink:#102b38;--line:rgba(9,48,67,.18);--serif:"Iowan Old Style",Georgia,serif;--sans:Inter,"Helvetica Neue",Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--mist);color:var(--ink);font-family:var(--sans);line-height:1.6;overflow-x:hidden}
img,video{display:block;max-width:100%}
a{color:inherit}
.skip-link{position:fixed;z-index:999;left:1rem;top:1rem;transform:translateY(-200%);background:#fff;padding:.7rem 1rem}
.skip-link:focus{transform:none}
:focus-visible{outline:2px solid #8bc3d7;outline-offset:4px}
.site-header{position:fixed;z-index:100;inset:0 0 auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:1.2rem clamp(1.2rem,4vw,4rem);color:#fff;transition:.3s}
.site-header.is-scrolled{background:rgba(3,29,42,.94);backdrop-filter:blur(14px);padding-block:.8rem}
.brand{display:block;width:clamp(180px,18vw,310px)}
.brand img{width:100%;height:auto;filter:brightness(0) invert(1)}
.desktop-nav{display:flex;gap:1.5rem}
.desktop-nav a,.header-cta{font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;text-decoration:none}
.desktop-nav a{opacity:.75}
.header-actions{justify-self:end}
.header-cta{border:1px solid #ffffff88;padding:.7rem 1rem}
.menu-toggle{display:none;background:transparent;border:0;width:42px}
.menu-toggle span{display:block;height:1px;background:#fff;margin:7px}
.mobile-menu{position:absolute;top:100%;left:1rem;right:1rem;background:var(--deep);padding:1rem}
.mobile-menu a{display:block;text-decoration:none;padding:.8rem;border-bottom:1px solid #ffffff22}
.hero-world{height:500vh;background:var(--deep)}
.hero-stage{position:sticky;top:0;height:100svh;overflow:hidden;color:#fff}
.hero-media,.hero-layer,.hero-layer img,.hero-layer video,.hero-shade{position:absolute;inset:0;width:100%;height:100%}
.hero-layer{opacity:0}
.hero-layer.is-active{opacity:1}
.hero-layer img,.hero-layer video{object-fit:cover}
.hero-layer video{opacity:0}
.hero-layer.has-frame video{opacity:1}
.hero-layer.has-frame img{opacity:0}
.hero-shade{background:linear-gradient(90deg,#031d2ae8,#031d2a44 55%,transparent),linear-gradient(0deg,#031d2a88,transparent 55%)}
.hero-copy{position:absolute;z-index:5;left:clamp(1.4rem,7vw,8rem);top:50%;transform:translateY(-45%);max-width:760px}
.eyebrow,.section-kicker{font-size:.67rem;letter-spacing:.23em;text-transform:uppercase;font-weight:700}
.hero-copy h1{font:400 clamp(4.4rem,9vw,9rem)/.82 var(--serif);letter-spacing:-.06em;margin:1.2rem 0 2rem}
.hero-copy__body{max-width:43ch;color:#ffffffcc;font-size:clamp(1rem,1.3vw,1.22rem)}
.text-link{display:inline-flex;gap:.7rem;margin-top:1.2rem;text-decoration:none;text-transform:uppercase;font-size:.68rem;letter-spacing:.18em}
.journey-copy{position:absolute;z-index:6;right:clamp(2rem,7vw,8rem);bottom:14vh;text-align:right}
.journey-copy p{position:absolute;right:0;bottom:0;width:430px;margin:0;opacity:0;font:400 clamp(1.8rem,3vw,3.3rem)/1.05 var(--serif)}
.journey-copy strong{font-weight:400;color:#bcd8e3}
.scroll-indicator,.journey-rail{position:absolute;z-index:7;bottom:2rem;font-size:.56rem;letter-spacing:.18em;text-transform:uppercase}
.scroll-indicator{left:50%;transform:translateX(-50%)}
.journey-rail{left:clamp(1.4rem,4vw,4rem);display:flex;align-items:center;gap:.8rem}
.journey-rail i{display:block;width:90px;height:1px;background:#ffffff44}
.journey-rail b{display:block;height:1px;background:#fff;transform:scaleX(0);transform-origin:left}
.section{padding:clamp(5rem,10vw,10rem) clamp(1.4rem,7vw,8rem)}
.section-kicker{color:#617d89;margin-bottom:2rem}
.light{color:#9bc0ce}
.intro{background:#fff}
.intro__statement{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(3rem,9vw,10rem)}
h2{font:400 clamp(3rem,6vw,6.4rem)/.94 var(--serif);letter-spacing:-.045em;margin:0}
.intro p{max-width:56ch;color:#526c77}
.signature{font:400 1.4rem var(--serif)!important;color:var(--ink)!important;margin-top:2rem}
.signature span{display:block;font:600 .58rem var(--sans);letter-spacing:.12em;text-transform:uppercase;color:#78909a;margin-top:.3rem}
.button{display:inline-flex;justify-content:center;text-decoration:none;text-transform:uppercase;letter-spacing:.13em;font-size:.67rem;padding:1rem 1.3rem;margin-top:1.3rem;border:0;cursor:pointer}
.button--dark{background:var(--navy);color:#fff}
.button--line{border:1px solid var(--line)}
.wide-image{margin:clamp(4rem,8vw,8rem) 0 0}
.wide-image img{width:100%;aspect-ratio:16/7;object-fit:cover}
.wide-image figcaption{font-size:.65rem;text-transform:uppercase;letter-spacing:.13em;margin-top:.8rem}
.section--ink{background:var(--deep);color:#fff}
.section-heading{margin-bottom:4rem}
.section-heading>p{max-width:52ch;color:#9eb4bd}
.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:#ffffff22}
.service-card{position:relative;min-height:520px;overflow:hidden;background:var(--navy)}
.service-card.wide{grid-column:span 2;min-height:640px}
.service-card img{position:absolute;width:100%;height:100%;object-fit:cover;filter:saturate(.75);transition:transform .8s}
.service-card:hover img{transform:scale(1.03)}
.service-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#031d2af0,#031d2a08 72%)}
.service-card>div{position:absolute;z-index:2;left:2rem;right:2rem;bottom:2rem}
.service-card span{font-size:.6rem;text-transform:uppercase;letter-spacing:.18em;color:#b7d2dc}
.service-card h3{font:400 clamp(2rem,3vw,3.3rem)/1 var(--serif);margin:.7rem 0}
.service-card p{max-width:52ch;color:#ffffffbb}
.split{display:grid;grid-template-columns:1fr .55fr;gap:5rem;align-items:end}
.fleet-tabs{display:flex;gap:.6rem;margin-bottom:2rem;flex-wrap:wrap}
.fleet-tabs button{border:1px solid var(--line);background:transparent;padding:.8rem 1.2rem;text-transform:uppercase;letter-spacing:.12em;font-size:.65rem;cursor:pointer}
.fleet-tabs button.is-active{background:var(--navy);color:#fff}
.fleet-list{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.aircraft{background:#fff}
.aircraft img{width:100%;aspect-ratio:16/9;object-fit:cover}
.aircraft div{padding:1.4rem}
.aircraft h3{font:400 2rem var(--serif);margin:0 0 .7rem}
.aircraft p{margin:0;color:#68808a;font-size:.82rem}
.sales{display:grid;grid-template-columns:1.1fr .9fr;gap:7rem}
.sales p{max-width:50ch;color:#5c747f}
.sales ul{padding:0;list-style:none;border-top:1px solid var(--line)}
.sales li{padding:1rem 0;border-bottom:1px solid var(--line)}
.contact{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(3rem,8vw,8rem);background:#fff}
.contact__lead p{max-width:43ch}
.quote-form{background:var(--mist);padding:clamp(1.5rem,4vw,3rem);display:grid;gap:.5rem}
.quote-form h3{font:400 2.5rem var(--serif);margin:0 0 1rem}
.quote-form label{font-size:.65rem;letter-spacing:.12em;text-transform:uppercase}
.quote-form input,.quote-form textarea{font:inherit;border:0;border-bottom:1px solid var(--line);background:transparent;padding:.7rem 0;margin-bottom:1rem}
.form-status{min-height:1.5rem}
.contact address{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);font-style:normal;border-top:1px solid var(--line)}
.contact address div{padding:1.5rem 0;border-bottom:1px solid var(--line)}
.contact address span{display:block;font-size:.58rem;text-transform:uppercase;letter-spacing:.15em;color:#738b95}
.contact address a{display:block;text-decoration:none}
.contact address p{margin:0}
footer{background:var(--deep);color:#fff;padding:3rem clamp(1.4rem,7vw,8rem);display:flex;align-items:end;justify-content:space-between;gap:2rem;font-size:.7rem}
footer .brand{width:230px}
footer div{display:flex;gap:1.4rem}
footer a{text-decoration:none}
.reveal{opacity:0;transform:translateY(30px);transition:.75s}
.reveal.is-visible{opacity:1;transform:none}
@media(max-width:980px){.desktop-nav,.header-cta{display:none}
.site-header{grid-template-columns:1fr auto}
.menu-toggle{display:block}
.intro__statement,.split,.sales,.contact{grid-template-columns:1fr}
.fleet-list{grid-template-columns:repeat(2,1fr)}
.contact address{grid-template-columns:1fr}
}
@media(max-width:620px){.site-header{padding:1rem 1.2rem}
.brand{width:175px}
.hero-world{height:420vh}
.hero-copy{left:1.2rem;right:1.2rem;top:auto;bottom:13vh;transform:none}
.hero-copy h1{font-size:clamp(4rem,19vw,6.5rem)}
.journey-copy,.journey-rail{display:none}
.section{padding:5rem 1.2rem}
.service-grid,.fleet-list{grid-template-columns:1fr}
.service-card.wide{grid-column:auto}
.service-card,.service-card.wide{min-height:500px}
footer{align-items:flex-start;flex-direction:column}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}
.hero-layer video{display:none}
.reveal{opacity:1;transform:none}
}

/* Refinamentos de conteúdo, frota e contacto */
.director{display:grid;grid-template-columns:minmax(260px,.68fr) 1.32fr;align-items:center;gap:clamp(2rem,7vw,7rem);margin-top:clamp(4rem,8vw,8rem);background:var(--deep);color:#fff}.director>img{width:100%;height:100%;min-height:520px;object-fit:cover;object-position:center 28%}.director>div{padding:clamp(2rem,5vw,5rem) clamp(1.5rem,6vw,6rem) clamp(2rem,5vw,5rem) 0}.director__label{font-size:.63rem!important;letter-spacing:.2em;text-transform:uppercase;color:#9bc0ce!important}.director blockquote{font:400 clamp(2rem,4vw,4.5rem)/1.05 var(--serif);letter-spacing:-.035em;margin:1.4rem 0 2.5rem;max-width:17ch}.director .signature{color:#fff!important}.director .signature span{color:#9bc0ce}.wide-image img{object-position:center 55%}
.aircraft{display:flex;flex-direction:column;min-width:0}.aircraft img{width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;object-position:center;background:#a7b8bb;padding:clamp(.35rem,1vw,.8rem)}.aircraft div{margin-top:auto}
.quote-form{gap:0;border:1px solid var(--line);box-shadow:0 24px 70px rgba(3,29,42,.08)}.form-heading{display:flex;justify-content:space-between;gap:2rem;align-items:end;padding-bottom:1.6rem;border-bottom:1px solid var(--line);margin-bottom:1.8rem}.form-heading h3{margin:0}.form-heading>p{max-width:24ch;margin:0;color:#667f8a;font-size:.78rem}.form-kicker{margin:0 0 .35rem;font-size:.6rem;text-transform:uppercase;letter-spacing:.18em;color:#6d8792}.quote-form fieldset{border:0;padding:0;margin:0}.quote-form legend{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem 1rem}.field{display:flex;flex-direction:column}.field--full{grid-column:1/-1}.quote-form label{display:block;margin-bottom:.45rem;color:#3c5966}.quote-form label span{color:#a3483d}.quote-form input,.quote-form select,.quote-form textarea{width:100%;min-height:52px;margin:0;border:1px solid #b8c7cc;border-radius:2px;background:#fff;padding:.85rem 1rem;font:inherit;font-size:1rem;color:var(--ink);transition:border-color .2s,box-shadow .2s,background .2s}.quote-form textarea{min-height:150px;resize:vertical}.quote-form input::placeholder,.quote-form textarea::placeholder{color:#8a9ca4}.quote-form input:focus-visible,.quote-form select:focus-visible,.quote-form textarea:focus-visible{outline:0;border-color:var(--navy);box-shadow:0 0 0 3px rgba(5,47,68,.14)}.field-hint,.error-msg{font-size:.72rem;margin:.4rem 0 0}.field-hint{color:#71858e}.error-msg{display:none;color:#a22e24}.quote-form input:user-invalid,.quote-form textarea:user-invalid{border-color:#a22e24;background:#fff8f7}.quote-form input:user-invalid~.error-msg,.quote-form textarea:user-invalid~.error-msg{display:block}.form-submit{display:flex;width:100%;justify-content:space-between;align-items:center;margin-top:1.7rem;min-height:54px}.form-note{font-size:.72rem;color:#6b8089;margin:.9rem 0 0}.form-status{font-size:.78rem;color:#315f4e;margin:.35rem 0 0}
@media(max-width:980px){.director{grid-template-columns:.8fr 1.2fr}.director>div{padding-right:2rem}.director>img{min-height:460px}}
@media(max-width:620px){.director{grid-template-columns:1fr}.director>img{height:auto;min-height:0;aspect-ratio:1/1;object-position:center 20%}.director>div{padding:1.8rem}.director blockquote{font-size:2rem}.form-heading{display:block}.form-heading>p{margin-top:.7rem}.form-grid{grid-template-columns:1fr}.field--full{grid-column:auto}.quote-form{padding:1.25rem}.aircraft img{padding:.25rem}}
