@font-face{font-family:Instrument;src:url('/northstar-20260918/assets/fonts/instrument-serif-regular.ttf')}@font-face{font-family:Instrument;src:url('/northstar-20260918/assets/fonts/instrument-serif-italic.ttf');font-style:italic}@font-face{font-family:DM;src:url('/northstar-20260918/assets/fonts/dm-sans-regular.ttf')}
:root{--coal:#242321;--ivory:#f5f1e8;--gold:#c6ae82}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;background:var(--coal);color:var(--ivory);font-family:DM,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}header{position:fixed;z-index:20;top:0;left:0;width:100%;padding:24px 4%;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(#171714a8,transparent)}.brand{width:208px;background:var(--ivory);padding:10px 13px;border-radius:2px}.brand img{width:100%;display:block;mix-blend-mode:multiply}.preview{font-size:9px;letter-spacing:2.5px;opacity:.65}.nav-contact{font-size:12px;border-bottom:1px solid #c6ae8270;padding:12px 0}.nav-contact span{margin-left:28px;color:var(--gold)}.stage{position:fixed;inset:0;overflow:hidden;z-index:-1;background:#242321}.scene{position:absolute;inset:-3%;background-size:cover;background-position:center;opacity:0;transform:scale(1.04);transition:opacity 1.25s,transform 2.5s}.scene.active{opacity:.75;transform:scale(1)}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(18,19,18,.91),rgba(22,23,22,.43) 62%,rgba(19,19,18,.25)),linear-gradient(0deg,#242321b0,transparent 35%)}#northstar{position:absolute;inset:0;width:100%;height:100%;opacity:.9}.vignette{position:absolute;inset:0;background:linear-gradient(0deg,#24232180,transparent 18%)}.chapter{height:115vh;min-height:700px;position:relative;display:flex;align-items:center;padding:100px 9%}.hero{height:100vh;min-height:650px}.copy{max-width:850px;position:relative;z-index:2;transition:opacity .55s,transform .75s}.chapter:not(.current) .copy{opacity:.18;transform:translateY(35px)}.chapter.current .copy{opacity:1;transform:none}.eyebrow{font-size:10px;letter-spacing:3px;color:var(--gold);margin:0 0 29px}h1,h2{font-family:Instrument,Georgia,serif;font-weight:400;line-height:.98;letter-spacing:-2px;margin:0 0 30px}h1{font-size:clamp(64px,6.8vw,110px)}h2{font-size:clamp(58px,6.5vw,100px)}em{font-weight:400;color:var(--gold)}.intro{font-size:15px;line-height:1.9;color:#eee9dfc9;margin-bottom:33px}.text-link{display:inline-flex;align-items:center;gap:32px;border:0;border-bottom:1px solid #c6ae8280;background:transparent;padding:9px 0;font-size:12px}.text-link span{color:var(--gold)}.aside{margin-top:35px;font-size:11px;color:#ddd7cd9c;max-width:380px;line-height:1.7}.hero-foot{position:absolute;bottom:30px;left:9%;right:9%;display:flex;justify-content:space-between;font-size:8px;letter-spacing:2px;color:#e5e0dba0}.hero-foot i{font-style:normal;color:var(--gold);margin-left:12px}.chapters{position:fixed;right:3%;top:42%;z-index:10;display:grid;gap:20px}.chapters a{display:flex;justify-content:flex-end;align-items:center;width:33px;height:16px}.chapters a:after{content:'';height:1px;width:10px;background:#f5f1e860;transition:width .4s}.chapters a.selected:after{width:24px;background:var(--gold)}.chapters span{font-size:8px;margin-right:8px;opacity:0}.chapters .selected span{opacity:1;color:var(--gold)}.enquire{padding:140px 9% 35px;background:var(--coal);position:relative;min-height:90vh;text-align:center}.enquire h2{font-size:clamp(58px,6vw,90px)}.enquire>p:not(.eyebrow){font-size:14px;line-height:1.9;color:#d4cec2}.actions{display:flex;justify-content:center;align-items:center;gap:34px;margin:32px 0}.pill{background:var(--gold);color:#242321;padding:17px 26px;border-radius:40px;display:inline-block;font-size:12px}.contact-line{display:flex;justify-content:center;gap:25px;margin:55px 0 70px;font-size:12px;color:#ddd5c7}footer{border-top:1px solid #c6ae8230;padding-top:25px;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;text-align:left;font-size:10px;color:#b4aea2}footer small{width:100%;font-size:9px;line-height:1.6}#motion{position:fixed;bottom:17px;right:25px;z-index:25;background:#242321cc;border:1px solid #c6ae8250;border-radius:30px;padding:8px 12px;font-size:9px;color:#e2d8c6}dialog{background:var(--coal);color:var(--ivory);border:1px solid #c6ae8240;border-radius:5px;padding:55px;width:min(590px,92vw);max-height:85vh}dialog::backdrop{background:#080a09b8;backdrop-filter:blur(9px)}dialog h2{font-size:54px}dialog p,dialog li{font-size:14px;line-height:1.8}dialog li{margin:8px 0}dialog ul{padding-left:18px}dialog .detail-note{font-size:11px;color:var(--gold);margin:25px 0}#close{position:absolute;right:18px;top:12px;background:none;border:0;font-size:28px}a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:6px}
@media(max-width:700px){header{padding:17px 6%}.brand{width:153px;padding:7px 10px}.preview{display:none}.nav-contact{font-size:10px}.nav-contact span{margin-left:10px}.chapter{padding:110px 8% 80px;height:105svh;min-height:600px}.hero{height:100svh}h1{font-size:65px;letter-spacing:-1.4px}h2{font-size:61px;letter-spacing:-1px}.eyebrow{font-size:8px;letter-spacing:2px}.intro{font-size:13px;max-width:295px}.intro br{display:none}.hero-foot{font-size:7px;left:8%;right:8%;bottom:60px}.hero-foot>span:first-child{max-width:130px;line-height:1.7}.chapters{right:2%;gap:17px}.shade{background:linear-gradient(90deg,#171917db,#17191790),linear-gradient(0deg,#24232199,transparent)}#northstar{opacity:.45}.enquire{padding:100px 8% 55px}.actions{gap:20px;flex-direction:column}.contact-line{flex-direction:column;gap:15px}dialog{padding:42px 28px}dialog h2{font-size:45px}}
.brand{height:62px;overflow:hidden;position:relative}.brand img{position:absolute;width:195px;max-width:none;left:6px;top:50%;transform:translateY(-50%)}
@media(max-width:700px){.brand{height:47px}.brand img{width:144px;left:4px}}
/* Approved cinematic direction: image-led, restrained, continuous ivory masthead. */
header{height:82px;padding:0 8%;background:var(--ivory);color:var(--coal);border-bottom:1px solid #c6ae8230}.brand{width:225px;height:76px;background:transparent;padding:0}.brand img{width:245px;left:-10px}.top-nav{display:flex;align-items:center;gap:38px;font-size:11px}.nav-contact{font-size:11px;border:0}.nav-contact span{margin-left:15px;color:#80683f}.stage{top:82px;z-index:0;pointer-events:none}.scene{inset:-2%;opacity:0;background-position:center;transition:opacity 1.1s;will-change:transform,opacity}.scene.active{opacity:1}.shade{background:linear-gradient(90deg,#17171355,transparent 60%),linear-gradient(0deg,#15151266,transparent 30%)}.chapter{padding:130px 8% 90px;min-height:660px;height:110vh;z-index:1}.hero{height:100svh}.copy{max-width:700px}h1{font-size:clamp(50px,4.25vw,74px);line-height:1.12;letter-spacing:-1px}h1 em{font-size:.76em;color:var(--ivory)}h2{font-size:clamp(49px,4.3vw,72px);line-height:1.04;letter-spacing:-.7px}h2 em{color:var(--ivory)}.intro{font-size:14px}.service-line{font-size:10px;text-transform:uppercase;letter-spacing:2px;margin:27px 0}.eyebrow{font-size:9px;letter-spacing:2px}.text-link{border:1px solid #c6ae8290;padding:15px 22px;gap:27px;font-size:11px;background:#2423211a;transition:background .2s}.text-link:hover{background:#c6ae8226}.hero-foot{left:8%;right:8%;bottom:34px}.chapters{z-index:10}.enquire{z-index:2}.enquire .text-link{border:0;border-bottom:1px solid #c6ae8255}.motion-paused .scene,.motion-paused .copy{transition:none!important}.motion-paused{scroll-behavior:auto}.contact-visible .stage{opacity:.3}
@media(max-width:700px){header{height:68px;padding:0 6%}.brand{width:165px;height:64px}.brand img{width:185px;left:-10px}.top-nav{gap:0}.top-nav>a:not(.nav-contact){display:none}.nav-contact{font-size:10px}.stage{top:68px}.chapter{padding:125px 7% 90px;align-items:flex-end;height:100svh;min-height:640px}.copy{max-width:100%}h1{font-size:45px;line-height:1.07}h1 em{font-size:.77em}h2{font-size:48px}.scene{background-position:64% center}.scene-airport{background-position:72% center}.shade{background:linear-gradient(0deg,#171713f2 0%,#171713d9 25%,#17171322 65%,transparent)}.intro{font-size:13px;max-width:310px}.service-line{font-size:8px;letter-spacing:1px;max-width:320px;line-height:1.9}.eyebrow{font-size:8px;margin-bottom:19px}.hero-foot{font-size:7px;bottom:24px;left:7%;right:7%}.aside{margin-top:20px}.chapters{top:32%;right:3%}.enquire{padding-top:100px}.enquire h2{font-size:49px}}
#guiding-star{position:fixed;inset:0;width:100%;height:100%;z-index:4;pointer-events:none}
/* Warm smoked-glass masthead; original navy artwork stays on a small stone field. */
header{height:88px;background:linear-gradient(180deg,rgba(28,27,25,.96),rgba(28,27,25,.72));color:var(--ivory);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgba(198,174,130,.15);box-shadow:none}
header .brand{height:51px;width:218px;background:#d5c7ad;border:1px solid rgba(198,174,130,.28);border-radius:2px}
header .brand img{width:239px;left:-11px;mix-blend-mode:multiply}
.top-nav>a{color:#e3dcd0;transition:color .2s}.top-nav>a:hover{color:#c6ae82}.top-nav .nav-contact{border:1px solid #c6ae8266;padding:12px 19px;color:#eadbc1}.nav-contact span{color:#c6ae82}
.stage{top:0}.top-nav{gap:32px}
@media(max-width:700px){header{height:78px;padding:0 5%}header .brand{width:162px;height:42px}header .brand img{width:179px;left:-9px}.top-nav .nav-contact{padding:10px 11px;font-size:9px}.nav-contact span{margin-left:7px}.stage{top:0}}
.scene-chauffeur{filter:brightness(.65) sepia(.22) saturate(.72)}
/* Keep the approved airport subjects below the fixed header. */
.scene-airport{top:110px;background-position:center top}
@media(max-width:700px){.scene-airport{top:88px;background-position:78% top}}
.chapters{right:2%;gap:24px}.chapter:not(.current) .copy{opacity:0}.hero .copy{max-width:740px}.enquire .eyebrow{color:#c6ae82}.enquire h2 em{color:var(--gold)}
@media(max-width:700px){.chapter{padding-left:11%}.enquire{padding-left:11%;padding-right:9%}.hero-foot{left:11%}.chapters{display:none}.top-nav .nav-contact{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}.chapter:not(.current) .copy{opacity:1;transform:none}}
/* In-flow masthead: never covers a chapter while scrolling or following anchors.
   Solid warm stone supports the original navy logo without a badge. */
html{scroll-padding-top:24px}
header{position:relative;height:76px;background:#c7b99e;color:var(--coal);backdrop-filter:none;-webkit-backdrop-filter:none;border:0;border-bottom:1px solid #24232118}
header .brand{background:transparent;border:0;border-radius:0;width:230px;height:60px;flex-shrink:0}
header .brand img{width:251px;left:-11px;mix-blend-mode:multiply}
.top-nav{gap:42px;font-size:12px;letter-spacing:.15px}
.top-nav>a{position:relative;display:inline-flex;align-items:center;min-height:44px}
.top-nav>a:after{content:'';position:absolute;left:0;right:0;bottom:8px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .2s ease}
.top-nav>a:hover:after,.top-nav>a:focus-visible:after{transform:scaleX(1)}
.top-nav>a,.top-nav .nav-contact{color:#242321}
.top-nav .nav-contact{border:0;border-left:1px solid #24232135;padding:12px 0 12px 30px;background:none;font-size:12px}
.top-nav .nav-contact:after{left:30px}
.top-nav>a:hover{color:#51432e}
.top-nav .nav-contact span{color:#51432e}
.hero{height:calc(100svh - 76px);min-height:580px}
.scene-airport{top:0;background-position:center top}
@media(max-width:700px){
 header{height:64px;background:#c7b99e}
 header .brand{width:162px;height:48px}
 header .brand img{width:179px;left:-9px}
 .top-nav{gap:0}
 .top-nav .nav-contact{padding:12px 0;font-size:11px;border-left:0;white-space:nowrap}
 .top-nav .nav-contact:after{left:0}
 .hero{height:calc(100svh - 64px);min-height:600px}
 .scene-airport{top:0;background-position:78% top}
}

/* No full-width masthead surface: share the hero background. */
header{background:transparent;border:0;height:100px;isolation:isolate}
header::after{content:none}
header::before{content:"";position:absolute;z-index:-1;pointer-events:none;left:0;top:0;width:580px;height:240px;background:radial-gradient(ellipse 290px 165px at 225px 35px,#c7b99e 0%,#c7b99e 35%,rgba(199,185,158,.65) 55%,transparent 100%)}
header .brand{mix-blend-mode:normal;overflow:visible;isolation:auto}
header .brand img{mix-blend-mode:normal;filter:url(#logo-paper-removal);clip-path:inset(27% 4% 27% 4%)}
.top-nav>a,.top-nav .nav-contact,.top-nav .nav-contact span{color:#f5f1e8}
.top-nav .nav-contact{border-left-color:#c6ae8255}
.top-nav>a:hover{color:#c6ae82}
.hero{height:calc(100svh - 100px)}
@media(max-width:700px){header{background:transparent;height:80px}header::before{width:275px;height:154px;background:radial-gradient(ellipse at 33% 18%,#c7b99e 0%,#c7b99e 24%,rgba(199,185,158,.65) 44%,transparent 76%)}.hero{height:calc(100svh - 80px)}}
