/* Big Skies — Mountain Morning design system. Shared by every public page. */
:root, body.mountain-morning {
  --ink:#0B1324; --ink-soft:#121D35; --paper:#0B1324; --white:#EEF4FA;
  --sky:#9CC4E4; --stone:#9CC4E4; --mist:#121D35; --accent-strong:#3A6894;
  --line:rgba(238,244,250,.18); --shadow:none;
  --serif:'Cormorant Garamond',Georgia,serif; --sans:'Jost',sans-serif;
  --section-space:clamp(88px,12vw,160px); --gutter:clamp(20px,5vw,72px);
  --closing-gradient:linear-gradient(180deg,#16223F 0%,#2A4A74 38%,#3A6894 62%,#9CC4E4 100%);
}
.mountain-morning { background:var(--ink); color:var(--white); font-family:var(--sans); font-size:17px; font-weight:300; line-height:1.6; color-scheme:dark; }
.mountain-morning *, .mountain-morning *::before, .mountain-morning *::after { border-radius:0!important; }
.mountain-morning :is(h1,h2,h3) { font-family:var(--serif)!important; font-weight:400!important; color:var(--white); letter-spacing:-.02em; text-wrap:balance; }
.mountain-morning h1 { font-size:clamp(2.75rem,6.4vw,5.25rem)!important; line-height:1.02!important; }
.mountain-morning h2 { font-size:clamp(2.1rem,4.2vw,3.5rem)!important; line-height:1.05!important; }
.mountain-morning h3 { font-size:clamp(1.65rem,2.7vw,2.4rem); line-height:1.1; }
.mountain-morning :is(h1,h2,h3) em { color:#9CC4E4!important; font-style:italic; font-weight:400; text-decoration:none; }
.mountain-morning :is(p,.profile-story,.possible-detail) { font-family:var(--sans); font-size:17px; font-weight:300; line-height:1.6; }
.mountain-morning :is(.section-lead,.hero-intro,.page-hero p,.perspectives-hero p:last-child,.possible-lead,.possible-ending) {
  font-family:var(--serif); font-style:italic; font-weight:400; font-size:clamp(1.25rem,1.9vw,1.6rem)!important; line-height:1.4; color:#A9BACF!important;
}
.mountain-morning :is(.kicker,.eyebrow,.quote-theme,.person-role,.card-role,.profile-meta>p,.possibility-copy>span) {
  font-family:var(--sans); font-style:normal; font-weight:500; font-size:12px; text-transform:uppercase; letter-spacing:.32em; line-height:1.6; color:#9CC4E4!important; border:0; padding-left:0;
}
.mountain-morning :is(.hero-bonded,.hero-tagline,.brand-tagline) { font-family:var(--sans); font-style:normal; font-weight:500; text-transform:uppercase; letter-spacing:.52em; color:#9CC4E4; line-height:1.7; }
.mountain-morning .hero-bonded { font-size:12px; margin:0 0 1.5rem; }
.mountain-morning .brand { flex-direction:column; align-items:flex-start; gap:0; width:210px; }
.mountain-morning .brand-logo { width:210px; height:auto; margin-bottom:6px; }
.mountain-morning .brand-tagline { display:block; font-size:8px; white-space:nowrap; }
.mountain-morning .site-header { height:104px; border-bottom:1px solid var(--line); background:linear-gradient(180deg,rgba(11,19,36,.7),rgba(11,19,36,.12)); color:var(--white); }
.mountain-morning .site-header.light, .mountain-morning .site-header.navigation-scrolled { background:var(--ink); color:var(--white); border-color:var(--line); }
.mountain-morning :is(.container,.container-narrow,.nav-shell,.hero-content) { width:100%; max-width:1360px; margin-inline:auto; padding-inline:var(--gutter); }
.mountain-morning .container-narrow { max-width:1064px; }
.mountain-morning .nav-shell { gap:24px; }
.mountain-morning .desktop-nav { gap:14px; }
.mountain-morning :is(.desktop-nav>a,.footer-links>a,.text-link,.button) { font-family:var(--sans); font-size:12px; font-weight:500; text-transform:uppercase; letter-spacing:.22em; line-height:1.6; }
.mountain-morning .desktop-nav>a { white-space:nowrap; }
.mountain-morning .desktop-nav>a:not(.button) { color:var(--white); }
.mountain-morning a:hover { color:var(--sky); }
.mountain-morning .text-link { display:inline-block; color:var(--sky); margin-top:1.4rem; border-color:var(--sky); }
.mountain-morning .button { background:#9CC4E4; color:#0B1324; border:1px solid #9CC4E4; padding:18px 30px; min-height:0; transform:none; box-shadow:none; transition:background .25s,color .25s,border-color .25s; }
.mountain-morning .button:hover { background:transparent; color:#9CC4E4; border-color:#9CC4E4; transform:none; }
.mountain-morning .button-outline { background:transparent; color:#EEF4FA; border-color:rgba(238,244,250,.18); }
.mountain-morning .button-outline:hover { background:transparent; color:#EEF4FA; border-color:#EEF4FA; }
.mountain-morning :is(.section,.section-tight) { padding-block:var(--section-space); }
.mountain-morning :is(.process,.trust,.possibilities,.service-design,.responsibility,.perspective-preview,.quote-section,.possible-intro,.possible-story,.possible-story:nth-of-type(even)) { background:var(--ink); color:var(--white); }
.mountain-morning :is(.person,.service-item,.responsibility-card,.editorial-card,.quote-card,.credential,.enquiry-form,.split-copy,.adventure-type) { background:#121D35; color:var(--white); box-shadow:none; }
.mountain-morning :is(.principle p,.step p,.trust-copy p,.person p,.feature-row p,.process-item p,.adventure-type p,.service-item p,.responsibility-card p:last-child,.credential p,.profile-story .details,.contact-note p:not(.kicker),.possible-detail,.possible-intro p:last-child,.quote-attribution span,.footer-brand p,.footer-bottom,.field-note,.privacy-note,.form-actions>span) { color:#A9BACF!important; }
.mountain-morning :is(.split-copy p,.possibility-copy p) { color:var(--white); }
.mountain-morning .split-copy .kicker { color:var(--sky); font-size:12px; }
.mountain-morning :is(.principles,.principle,.process-grid,.step,.person,.feature-row,.process-item,.adventure-types,.adventure-type,.profile-photo,.people-profile,.enquiry-form,.trust-points,.trust-point,.footer-bottom,.service-grid,.quote-grid,.credentials,.responsibility-grid,.possible-phases,.possible-phases section) { border-color:var(--line); }
.mountain-morning :is(.service-grid,.quote-grid,.credentials,.responsibility-grid) { background:var(--line); }
.mountain-morning :is(.service-dot,.step::before) { background:var(--sky); }
.mountain-morning :is(.process-item::before,.step span,.adventure-type>span,.possible-ending strong) { color:var(--sky); }
.mountain-morning .process-item .stage-note { color:var(--white); font-weight:500; }
.mountain-morning .split { min-height:700px; }
.mountain-morning .split-copy { padding-block:var(--section-space); padding-inline:var(--gutter); }
.mountain-morning .split-copy>div { max-width:570px; }
.mountain-morning .possible-story-content { padding-block:var(--section-space); }
.mountain-morning .statement { text-align:center; }
.mountain-morning .statement .section-lead { margin-inline:auto; }
.mountain-morning .two-col { gap:clamp(3rem,6vw,6rem); }
.mountain-morning .possibility-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; background:none; }
.mountain-morning .possibility-card, .mountain-morning .possibility-card:nth-child(n+2) { margin-top:0; min-height:580px; }
.mountain-morning .possibility-copy { z-index:3; inset:auto 28px 32px; }
.mountain-morning .possibility-copy h3 { font-size:clamp(1.65rem,2.7vw,2.4rem); }
.mountain-morning .possibility-copy>span { font-size:12px; }
.mountain-morning :is(.editorial-copy blockquote,.large-quote,.quote-card blockquote,.perspective-preview blockquote) { font-family:var(--serif); font-weight:400; color:var(--white); }
.mountain-morning .quote-attribution { font-weight:500; color:var(--white); }
.mountain-morning .hero { min-height:max(88svh,740px); }
.mountain-morning .hero-content { align-self:end; z-index:3; margin-block:0; padding-top:160px; padding-bottom:clamp(64px,8vw,112px); }
.mountain-morning .hero h1 { max-width:1100px; }
.mountain-morning .hero h1 span { display:block; white-space:normal; }
.mountain-morning .hero-intro { max-width:690px; margin:1.8rem 0 0; }
.mountain-morning :is(.page-hero,.perspectives-hero) { min-height:max(78svh,650px); align-items:flex-end; padding:0; }
.mountain-morning :is(.page-hero,.perspectives-hero)>.container { z-index:3; padding-top:160px; padding-bottom:clamp(64px,8vw,112px); }
.mountain-morning .page-hero h1 { max-width:950px; }
.mountain-morning .scroll-note { color:var(--sky); }
/* Grade only photographic media so text and the wordmark stay crisp. */
.mountain-morning .photo-treatment { position:relative; isolation:isolate; overflow:hidden; }
.mountain-morning .photo-treatment img, .mountain-morning .hero-video { filter:saturate(.78) contrast(1.04) brightness(.86)!important; }
.mountain-morning .photo-treatment::before, .mountain-morning .photo-treatment::after { content:''; position:absolute; inset:0; pointer-events:none; }
.mountain-morning .photo-treatment::before { z-index:1; background:var(--closing-gradient); opacity:.7; mix-blend-mode:soft-light; }
.mountain-morning .photo-treatment::after { z-index:2; background:linear-gradient(180deg,rgba(11,19,36,.64) 0%,transparent 38%,transparent 58%,rgba(11,19,36,.76) 100%); box-shadow:none; }
.mountain-morning .possibility-card::after { background:linear-gradient(180deg,rgba(11,19,36,.42),transparent 32%,rgba(11,19,36,.92) 100%); }
.mountain-morning .portrait-frame { max-width:520px; aspect-ratio:4/5; border:1px solid var(--line); }
.mountain-morning .portrait-frame .profile-photo { width:100%; height:100%; border:0; box-shadow:none; }
.mountain-morning .reflection-frame img { width:100%; height:100%; object-fit:cover; }
.mountain-morning :is(.final-cta,.possible-close,.closing-section) { background:var(--closing-gradient); text-align:center; color:var(--white); }
.mountain-morning :is(.final-cta,.possible-close) p:not(.kicker) { color:var(--white); font-size:17px; }
.mountain-morning .final-cta .kicker { color:var(--sky); }
.mountain-morning .possible-close .possible-final-line { font-family:var(--serif); font-weight:400; }
.mountain-morning .site-footer { background:var(--ink); color:var(--white); padding-block:88px; }
.mountain-morning .footer-brand .brand { width:240px; }
.mountain-morning .footer-brand .brand-logo { width:240px; height:auto; }
.mountain-morning .footer-brand .brand-tagline { font-size:9px; }
.mountain-morning .footer-brand p { max-width:390px; }
.mountain-morning .footer-links { gap:20px 24px; }
.mountain-morning .field label { color:var(--sky); font-size:12px; font-weight:500; letter-spacing:.22em; }
.mountain-morning :is(.field input,.field select,.field textarea) { color:var(--white); background:transparent; font-family:var(--sans); font-size:17px; font-weight:300; border-color:var(--line); }
.mountain-morning .field select option { background:var(--ink-soft); color:var(--white); }
.mountain-morning :is(.field input,.field select,.field textarea):focus { border-color:var(--sky); box-shadow:0 1px 0 var(--sky); }
.mountain-morning .field input::placeholder { color:var(--muted,#A9BACF); }
.mountain-morning .form-status { background:var(--ink); color:var(--white); border:1px solid var(--sky); }
.mountain-morning .form-status.error { background:var(--ink); color:var(--white); border-color:var(--white); }
.mountain-morning.legal-page main a, .mountain-morning .profile-story em { color:var(--sky); }
.mountain-morning .skip-link { color:var(--ink); background:var(--sky); }
.mountain-morning :focus-visible { outline:2px solid var(--sky); outline-offset:5px; }
.mountain-morning.legal-page main a { font-weight:500; }
/* The lower horizon is light: keep the specified accent legible there. */
.mountain-morning .on-light { color:var(--ink); }
.mountain-morning .on-light :is(.kicker,.text-link,h1 em,h2 em,h3 em) { color:#3A6894!important; }
@media(min-width:1181px) and (max-width:1350px) {
 .mountain-morning .desktop-nav { display:none; }
 .mountain-morning .menu-button { display:block; }
 .mountain-morning .desktop-nav.open { position:fixed; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; z-index:-1; }
}
@media(max-width:1350px) {
 .mountain-morning .desktop-nav.open { background:var(--ink)!important; color:var(--white)!important; gap:24px; overflow-y:auto; padding:110px 20px 40px; }
 .mountain-morning .desktop-nav.open>a:not(.button) { font-family:var(--sans); font-size:12px; font-weight:500; letter-spacing:.22em; text-transform:uppercase; }
}
@media(max-width:1180px) {
 .mountain-morning :is(.two-col,.trust-grid) { grid-template-columns:1fr; }
 .mountain-morning .possibility-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .mountain-morning .reflection-frame img { min-height:0; height:auto; aspect-ratio:2048/1365; }
}
@media(max-width:660px) {
 .mountain-morning .site-header { height:86px; }
 .mountain-morning .brand { width:178px; }
 .mountain-morning .brand-logo { width:178px; height:auto; margin-bottom:5px; }
 .mountain-morning .brand-tagline { font-size:7px; }
 .mountain-morning .hero { min-height:max(100svh,780px); }
 .mountain-morning .hero-content { padding-top:132px; padding-bottom:64px; }
 .mountain-morning .hero-bonded { max-width:300px; }
 .mountain-morning :is(.page-hero,.perspectives-hero) { min-height:640px; }
 .mountain-morning :is(.page-hero,.perspectives-hero)>.container { padding-top:132px; padding-bottom:64px; }
 .mountain-morning .possibility-grid { grid-template-columns:1fr; }
 .mountain-morning .possibility-card, .mountain-morning .possibility-card:nth-child(n+2) { min-height:560px; }
 .mountain-morning .enquiry-form { padding:28px 20px; }
 .mountain-morning .form-actions .button { width:100%; }
 .mountain-morning .possible-phases h3 { margin-bottom:1rem; }
 .mountain-morning .floating-adventure-cta { padding:18px 30px; font-size:12px; }
}

.mountain-morning strong { font-weight:500; }
.mountain-morning .possible-detail>p:first-child { color:var(--white); font-size:17px; }
.mountain-morning :is(.step span,.adventure-type>span,.person-mark,.profile-meta .initial) { font-family:var(--sans); font-weight:500; }
