@font-face {
font-family: 'Poppins';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('/assets/fonts/poppins-latin-400-normal.woff2') format('woff2');
}

@font-face {
font-family: 'Poppins';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url('/assets/fonts/poppins-latin-500-normal.woff2') format('woff2');
}

@font-face {
font-family: 'Poppins';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url('/assets/fonts/poppins-latin-600-normal.woff2') format('woff2');
}

@font-face {
font-family: 'Poppins';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('/assets/fonts/poppins-latin-700-normal.woff2') format('woff2');
}

* {
margin: 0;
     padding: 0;
     box-sizing: border-box;
}

body {
line-height: 1.6;
     -webkit-font-smoothing: antialiased;
}

:root {
--font-body:Poppins,Arial,sans-serif;
    --font-display:Poppins,Arial,sans-serif;
    --ink:#102537;
    --cream:#f7f5ef;
    --champagne:#ccb994;
    --muted:#596570
}

* {
box-sizing:border-box
}

html {
scroll-behavior:smooth;
    scroll-padding-top:120px
}

body.refined {
margin:0;
    background:var(--cream);
    color:var(--ink);
    font-family:Poppins,Arial,sans-serif;
    overflow-x:clip
}

body.refined main {
display:block
}

a {
color:inherit
}

.refined a {
text-decoration:none
}

.refined button,.refined select {
font:inherit
}

.refined :focus-visible {
outline:3px solid #b58a46;
    outline-offset:5px
}

.sr-only {
position:absolute;
    width:1px;
    height:1px;
    padding:0;
    overflow:hidden;
    clip:rect(0,0,0,0);
    white-space:nowrap
}

.skip-link {
position:fixed;
    top:-100px;
    left:20px;
    padding:15px;
    background:white;
    color:var(--ink);
    z-index:200
}

.skip-link:focus {
top:12px
}

.site-header {
position:absolute;
    top:0;
    left:0;
    width:100%;
    z-index:50;
    color:white;
    border-bottom:1px solid #ffffff30
}

.page-home .site-header {
background:linear-gradient(#10253770,transparent)
}

.refined:not(.page-home) .site-header {
position:relative;
    background:var(--ink)
}

.navigation {
max-width:1600px;
    margin:auto;
    padding:28px 5%;
    display:flex;
    align-items:center;
    justify-content:space-between;
    position:relative;
    gap:25px
}

.wordmark {
display:flex;
    flex-direction:column;
    font-size:27px;
    font-weight:700;
    letter-spacing:4px;
    line-height:1.3;
    white-space:nowrap
}

.wordmark span {
font-size:8px;
    font-weight:500;
    letter-spacing:2.2px;
    margin-top:6px
}

.navigation-links {
display:flex;
    align-items:center;
    gap:32px
}

.nav-tab {
display:inline-flex;
    align-items:center;
    min-height:48px;
    font-size:13px;
    position:relative
}

.nav-tab:after {
content:'';
    position:absolute;
    bottom:5px;
    left:0;
    width:0;
    height:1px;
    background:var(--champagne);
    transition:width .2s
}

.nav-tab[aria-expanded=true]:after,.nav-tab[aria-current]:after,.nav-tab:hover:after {
width:100%
}

.nav-whatsapp {
font-size:12px;
    border-left:1px solid #ffffff50;
    padding-left:26px;
    min-height:44px;
    display:flex;
    align-items:center;
    gap:15px
}

.language-picker select {
background:transparent;
    border:0;
    color:inherit;
    min-height:44px;
    width:60px;
    font-size:12px;
    cursor:pointer
}

.language-picker option {
background:var(--ink);
    color:white
}

.mobile-toggle,.mobile-close {
display:none
}

.mega-panel {
position:absolute;
    top:100%;
    left:3%;
    right:3%;
    display:grid;
    grid-template-columns:1fr repeat(3,1fr);
    gap:28px;
    padding:36px;
    background:rgba(255,254,250,.97);
    backdrop-filter:blur(22px);
    box-shadow:0 22px 50px #10253725;
    color:var(--ink);
    border-radius:0 0 4px 4px;
    animation:panel-enter .2s ease
}

.mega-panel[hidden] {
display:none
}

.mega-preview {
display:block;
    min-width:0
}

.mega-preview img {
width:100%;
    height:130px;
    object-fit:cover;
    border-radius:2px
}

.mega-preview span {
display:flex;
    justify-content:space-between;
    font-size:13px;
    font-weight:700;
    margin:15px 0 8px
}

.mega-preview small {
display:block;
    font-size:11px;
    line-height:1.65;
    color:var(--muted)
}

.mega-preview b {
font-weight:400
}

.eyebrow {
display:block;
    text-transform:uppercase;
    letter-spacing:2.3px;
    font-size:10px;
    font-weight:600;
    line-height:1.6
}

.arrival-hero {
position:relative;
    min-height:780px;
    height:100svh;
    color:white;
    display:flex;
    align-items:center;
    isolation:isolate
}

.hero-photograph {
position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    z-index:-2
}

.hero-copy {
width:100%;
    max-width:1600px;
    margin:auto;
    padding:120px 7% 100px
}

.hero-copy .eyebrow {
color:#e0cda9;
    margin-bottom:24px
}

.refined .hero-copy h1 {
font-family:Poppins,Arial,sans-serif;
    font-size:clamp(44px,4.7vw,76px);
    font-weight:500;
    line-height:1.12;
    letter-spacing:-2.8px;
    max-width:790px;
    margin:0 0 28px
}

.hero-copy p {
font-size:15px;
    line-height:1.85;
    max-width:395px;
    color:#f2f1ec;
    margin:0 0 32px
}

.button {
display:inline-flex;
    align-items:center;
    justify-content:space-between;
    gap:38px;
    min-height:54px;
    padding:16px 23px;
    font-size:12px;
    font-weight:600;
    background:var(--ink);
    color:white;
    border:1px solid var(--ink);
    transition:background .2s,transform .2s
}

.button-light {
background:var(--cream);
    color:var(--ink);
    border-color:var(--cream)
}

.button:hover {
background:var(--champagne);
    color:var(--ink);
    border-color:var(--champagne);
    transform:translateY(-2px)
}

.refined h2 {
font-family:Poppins,Arial,sans-serif;
    font-size:clamp(32px,3.4vw,48px);
    letter-spacing:-1.5px;
    line-height:1.2;
    font-weight:500;
    margin:0 0 22px
}

.personal-section {
background:#eceae3;
    padding:100px 7%;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12%
}

.personal-copy>.eyebrow {
color:#786647;
    margin-bottom:25px
}

.personal-copy>p {
font-size:14px;
    line-height:1.9;
    max-width:420px;
    color:var(--muted)
}

.signature {
display:block;
    font-size:29px;
    letter-spacing:-1px;
    margin-top:32px
}

.signature>span {
display:block;
    letter-spacing:2px;
    font-size:8px;
    margin-top:10px
}

.journey-steps article {
padding:25px 0;
    border-top:1px solid #10253725
}

.journey-steps h3 {
font-size:15px;
    font-weight:600;
    margin:0 0 10px
}

.journey-steps p {
font-size:13px;
    line-height:1.8;
    color:var(--muted);
    margin:0
}

.contact-band {
padding:95px 7%;
    background:var(--ink);
    color:var(--cream);
    text-align:center
}

.contact-band .eyebrow {
color:var(--champagne);
    margin-bottom:22px
}

.contact-band p {
max-width:490px;
    margin:0 auto 28px;
    font-size:13px;
    line-height:1.9;
    color:#d0d6d8
}

.refined-footer {
padding:65px 7% 25px;
    display:grid;
    grid-template-columns:2fr 1fr 1fr;
    gap:40px;
    font-size:12px;
    background:var(--cream);
    color:var(--ink)
}

.refined-footer p {
font-size:11px;
    color:var(--muted);
    margin-top:22px
}

.refined-footer>div:not(:first-child) {
display:flex;
    flex-direction:column;
    gap:12px
}

.refined-footer a:not(.wordmark) {
min-height:28px;
    padding:3px 0
}

.refined-footer .footer-line {
grid-column:1/-1;
    flex-direction:row!important;
    justify-content:space-between;
    border-top:1px solid #10253720;
    padding-top:25px;
    color:var(--muted);
    font-size:9px;
    letter-spacing:1px
}

.page-intro {
padding:95px 7% 50px;
    max-width:1300px;
    margin:auto
}

.page-intro .eyebrow {
color:#786647;
    margin-bottom:22px
}

.page-intro h1 {
font-size:clamp(38px,5vw,68px);
    font-weight:500;
    letter-spacing:-2px;
    margin:0 0 25px;
    line-height:1.15
}

.page-intro p {
font-size:15px;
    line-height:1.9;
    max-width:620px
}

.contact-intro {
min-height:65vh;
    padding-bottom:90px
}

.contact-intro .button {
margin:15px 0
}

.refined .reveal-on-scroll {
opacity:1;
    transform:none;
    visibility:visible
}

@media(min-width:901px) {
.mega-preview:hover img {
filter:brightness(.92)
}

.navigation-links {
display:flex!important
}
}

@media(max-width:1100px) {
.navigation-links {
gap:20px
}

.mega-panel {
gap:18px;
    padding:25px
}

.wordmark {
font-size:23px
}

.nav-whatsapp {
padding-left:15px
}
}

@media(max-width:900px) {
.navigation {
padding:22px 6%
}

.mobile-toggle {
display:flex;
    flex-direction:column;
    justify-content:center;
    gap:6px;
    width:48px;
    height:48px;
    background:transparent;
    border:1px solid #ffffff60;
    color:white;
    padding:12px
}

.mobile-toggle span {
display:block;
    height:1px;
    background:currentColor;
    width:100%
}

.navigation-links {
display:none;
    position:fixed;
    inset:0;
    background:var(--cream);
    color:var(--ink);
    padding:25px 7% 45px;
    overflow-y:auto;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    z-index:100
}

.navigation-links.is-open {
display:flex
}

.mobile-close {
display:flex;
    align-items:center;
    justify-content:space-between;
    min-height:48px;
    background:transparent;
    border:0;
    border-bottom:1px solid #10253730;
    margin-bottom:25px;
    color:var(--ink)
}

.mobile-close span {
font-size:30px
}

.nav-tab {
font-size:28px;
    min-height:72px;
    width:100%;
    border-bottom:1px solid #10253720
}

.nav-whatsapp {
padding:22px 0;
    border:0;
    font-size:16px
}

.language-picker {
margin-top:24px
}

.language-picker select {
font-size:16px;
    width:80px
}

.mega-panel {
display:none!important
}

.arrival-hero {
min-height:700px
}

.hero-copy {
padding-left:7%;
    padding-right:7%
}

.hero-copy h1 {
max-width:630px
}

.hero-photograph {
object-position:65% center
}

.personal-section {
gap:8%;
    padding:75px 7%
}

.refined-footer {
grid-template-columns:1.5fr 1fr 1fr;
    gap:25px
}
}

@media(max-width:600px) {
.arrival-hero {
min-height:680px;
    height:100svh;
    align-items:flex-end
}

.hero-copy {
padding-top:150px;
    padding-bottom:135px
}

.refined .hero-copy h1 {
font-size:44px;
    letter-spacing:-1.8px;
    max-width:100%
}

.hero-copy p {
font-size:13px;
    max-width:320px
}

.hero-copy .eyebrow {
font-size:9px;
    margin-bottom:20px
}

.hero-photograph {
object-position:67% center
}

.personal-section {
grid-template-columns:1fr;
    gap:40px;
    padding:65px 7%
}

.contact-band {
padding:65px 7%
}

.refined-footer {
grid-template-columns:1fr 1fr;
    padding:45px 7% 25px
}

.refined-footer>div:first-child {
grid-column:1/-1
}

.refined-footer .footer-line {
flex-wrap:wrap;
    gap:14px
}

.page-intro {
padding-top:65px
}

.button {
max-width:100%;
    gap:20px
}

.refined h2 {
font-size:33px
}
}

@media(prefers-reduced-motion:reduce) {
html {
scroll-behavior:auto
}

*,*:before,*:after {
animation:none!important;
    transition:none!important
}

.button:hover {
transform:none
}
}

body.refined main {
padding-top:0;
    min-height:0
}

@media(min-width:901px) and (prefers-reduced-motion:no-preference) {
.mega-panel {
animation:none;
    opacity:1;
    transform:translateY(0);
    transition:opacity .18s ease,transform .18s ease,display .18s allow-discrete
}

.mega-panel[hidden] {
opacity:0;
    transform:translateY(-5px)
}
}

@media (min-width: 901px) {
.navigation {
max-width: none; position: static; padding: 22px 5%;
}

.navigation-links {
gap: 12px;
}

.nav-tab {
padding: 8px 17px; min-height: 40px; border-radius: 24px;
}

.nav-tab::after {
display: none;
}

.nav-tab:hover, .nav-tab:focus-visible, .nav-tab[aria-expanded="true"] {
background: rgba(255,255,255,.18);
}

.refined .site-header.is-menu-open {
background: #faf9f6; color: var(--ink); border-color: transparent;
}

.site-header.is-menu-open .nav-tab:hover, .site-header.is-menu-open .nav-tab:focus-visible,
    .site-header.is-menu-open .nav-tab[aria-expanded="true"] {
background: #e3e3df;
}

.site-header.is-menu-open .nav-whatsapp {
border-color: #10253725;
}

.mega-panel {
left: 0; right: 0; top: 100%; border-radius: 0;
        padding: 40px 5% 48px; gap: 32px;
        grid-template-columns: 1.15fr 1fr repeat(3, 1fr);
        background: rgba(250,249,246,.98); box-shadow: 0 24px 35px #10253720;
        animation: none; transition: none; opacity: 1; transform: none;
        max-height: calc(100svh - 110px); overflow-y: auto;
}

.mega-panel[hidden] {
display: none; opacity: 0; transform: none;
}

.mega-category {
min-width: 0; display: flex; flex-direction: column; gap: 16px;
}

.mega-label {
color: var(--muted); font-size: 12px; font-weight: 600; margin-bottom: 4px;
}

.mega-category a {
font-size: 16px; line-height: 1.5; width: fit-content; min-height: 28px;
}

.mega-category a:hover {
text-decoration: underline; text-underline-offset: 5px;
}

.mega-category p {
max-width: 210px; color: var(--muted); font-size: 12px; line-height: 1.9;
}

.mega-preview {
align-self: center; text-align: center;
}

.mega-preview img {
height: 140px; border-radius: 4px;
}

.mega-preview span {
justify-content: center; gap: 12px; line-height: 1.6; margin-top: 18px;
}

.mega-preview small {
font-size: 11px;
}
}

@media (min-width: 901px) and (max-width: 1100px) {
.navigation {
padding-left: 4%; padding-right: 4%;
}

.navigation-links {
gap: 4px;
}

.nav-tab {
padding-left: 13px; padding-right: 13px;
}

.mega-panel {
gap: 20px; padding-left: 4%; padding-right: 4%;
}

.mega-category a {
font-size: 14px;
}

.mega-preview img {
height: 110px;
}
}

.refined .page-intro {
color: var(--cream);
}

.refined .page-intro .eyebrow {
color: var(--champagne);
}

.refined:not(.page-services):not(.page-home) .page-intro {
color: var(--ink);
}

.refined:not(.page-services):not(.page-home) .page-intro .eyebrow {
color: #786647;
}

.story-action {
display: inline-flex;
    align-items: center;
    gap: 24px;
    min-height: 44px;
    padding: 8px 0;
    color: var(--champagne);
    font-size: 13px;
    font-weight: 500;
    border-bottom: 1px solid #ccb99455;
    transition: color .2s, border-color .2s;
}

.story-action:hover, .story-action:focus-visible {
color: var(--cream);
    border-color: var(--cream);
}

/* Panoramic cover and interactive journey preparation. */
.hero-shade { position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg,#081b2cef 0%,#081b2c90 38%,#081b2c10 75%),linear-gradient(0deg,#081b2c95,transparent 40%); }
.hero-caption { position: absolute; bottom: 32px; left: 7%; right: 7%; display: flex; align-items: center; justify-content: space-between; font-size: 9px; letter-spacing: 2px; text-transform: uppercase; border-top: 1px solid #ffffff45; padding-top: 22px; }
.hero-caption>a { font-size: 22px; min-width: 44px; min-height: 44px; text-align: center; }
.journey-guide { background: var(--ink); color: var(--cream); padding: 85px 7%; }
.guide-heading, .guide-layout, .guide-process { max-width: 1240px; margin-left: auto; margin-right: auto; }
.guide-heading { margin-bottom: 38px; }
.guide-heading .eyebrow { color: var(--champagne); margin-bottom: 20px; }
.guide-heading p { font-size: 14px; line-height: 1.8; color: #d3dade; max-width: 600px; }
.guide-layout { display: grid; grid-template-columns: 250px minmax(0,1fr); gap: 35px; align-items: start; }
.guide-tabs { display: flex; flex-direction: column; gap: 10px; }
.journey-guide:not(.is-enhanced) .guide-tabs { display: none; }
.journey-guide:not(.is-enhanced) .guide-layout { grid-template-columns: 1fr; }
.journey-guide:not(.is-enhanced) .guide-panel { margin-bottom: 30px; }
.guide-category { position: relative; display: flex; align-items: center; gap: 14px; width: 100%; min-height: 85px; padding: 20px 16px; border: 1px solid #ffffff20; background: transparent; color: var(--cream); border-radius: 8px; cursor: pointer; text-align: left; font-size: 14px; line-height: 1.5; transition: background .2s,border-color .2s; }
.guide-category[aria-selected="true"] { background: #ccb99415; border-color: var(--champagne); }
.guide-number { font-size: 10px; color: var(--champagne); flex-shrink: 0; }
.guide-arrow { margin-left: auto; color: var(--champagne); opacity: .4; transition: transform .2s,opacity .2s; }
.guide-category[aria-selected="true"] .guide-arrow { opacity: 1; transform: translateX(3px); }
.guide-stage { min-width: 0; min-height: 360px; }
.guide-panel { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); min-height: 360px; background: #172e40; border: 1px solid #ffffff15; border-radius: 12px; overflow: hidden; }
.guide-panel[hidden] { display: none; }
.guide-photo { position: relative; min-width: 0; min-height: 360px; }
.guide-photo img { display: block; position: absolute; width: 100%; height: 100%; object-fit: cover; object-position: 65% center; }
.guide-photo>span { position: absolute; bottom: 0; left: 0; right: 0; padding: 35px 22px 20px; background: linear-gradient(transparent,#102537db); font-size: 13px; line-height: 1.6; }
.guide-details { padding: 28px; min-width: 0; }
.guide-details h3 { font-size: 18px; font-weight: 500; line-height: 1.4; margin-bottom: 22px; }
.guide-checklist { list-style: none; display: grid; gap: 14px; margin-bottom: 26px; }
.guide-checklist li { display: flex; align-items: baseline; gap: 12px; font-size: 13px; line-height: 1.6; color: #d3dade; }
.guide-checklist li>span { color: var(--champagne); }
.guide-action { display: inline-flex; gap: 16px; align-items: center; min-height: 44px; font-size: 12px; padding: 9px 0; border-bottom: 1px solid #ccb99470; color: var(--champagne); }
.guide-action:hover { color: white; border-color: white; }
.guide-process { border-top: 1px solid #ffffff20; margin-top: 38px; padding-top: 28px; }
.guide-process h3 { font-size: 15px; font-weight: 500; margin-bottom: 20px; }
.guide-process ol { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 25px; list-style: none; counter-reset: journey; }
.guide-process li { counter-increment: journey; display: flex; gap: 12px; align-items: baseline; font-size: 12px; line-height: 1.8; color: #d3dade; }
.guide-process li::before { content: counter(journey); flex-shrink: 0; color: var(--champagne); }
.refined.page-services .page-intro { background: var(--ink); color: var(--cream); max-width: none; }
.refined.page-services .page-intro .eyebrow { color: var(--champagne); }
@media (max-width: 1000px) {
    .guide-layout { grid-template-columns: 1fr; gap: 24px; }
    .guide-tabs { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); }
    .guide-category { min-height: 80px; padding: 16px 12px; }
    .guide-arrow { display: none; }
}
@media (max-width: 900px) {
    .hero-shade { background: linear-gradient(90deg,#081b2cce,#081b2c35),linear-gradient(0deg,#081b2cd9,transparent 80%); }
}
@media (max-width: 600px) {
    .hero-shade { background: linear-gradient(0deg,#081b2cf5,#081b2c55 65%,#081b2c50); }
    .hero-caption { bottom: 20px; font-size: 8px; gap: 15px; }
    .hero-caption>span:nth-child(2) { display: none; }
    .journey-guide { padding: 55px 7%; }
    .guide-tabs { grid-template-columns: 1fr; gap: 8px; }
    .guide-category { min-height: 56px; padding: 13px 15px; }
    .guide-arrow { display: block; }
    .guide-panel { grid-template-columns: 1fr; }
    .guide-stage { min-height: 555px; }
    .guide-photo { min-height: 200px; }
    .guide-details { padding: 24px; }
    .guide-process ol { grid-template-columns: 1fr; gap: 14px; }
}

/* Each navigation panel has a layout suited to its content. */
@media (min-width: 901px) {
.mega-panel { grid-template-columns: 1.2fr repeat(3, 1fr); gap: 30px; padding: 32px 5% 38px; }
.mega-panel--home { grid-template-columns: 1.1fr 1fr; }
.mega-panel--about { grid-template-columns: 1fr 2fr; }
.mega-panel--contact { grid-template-columns: 1.1fr 1fr 1fr; }
.mega-intro { min-width: 0; padding-right: 20px; }
.mega-intro h2 { font-size: clamp(22px, 2vw, 30px); line-height: 1.3; margin: 10px 0 14px; }
.mega-intro p, .mega-steps p, .mega-checklist p { font-size: 13px; line-height: 1.8; color: var(--muted); margin: 0; }
.mega-links { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; margin-top: 22px; }
.mega-links a { font-size: 13px; font-weight: 600; }
.mega-links a:hover, .mega-contact > a:not(.button):hover { text-decoration: underline; text-underline-offset: 4px; }
.mega-preview { text-align: left; align-self: start; padding: 12px; border-radius: 14px; background: #fff; border: 1px solid #10253712; }
.mega-preview img { height: 145px; border-radius: 9px; }
.mega-preview span { justify-content: space-between; margin-top: 15px; font-size: 13px; }
.mega-preview small { font-size: 12px; }
.mega-panel--home .mega-preview img { height: 180px; }
.mega-steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; align-self: center; }
.mega-steps article { border-top: 2px solid var(--champagne); padding-top: 20px; }
.mega-steps h3, .mega-checklist h3 { font-size: 15px; line-height: 1.6; margin: 0 0 12px; }
.mega-contact { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 18px; font-size: 14px; }
.mega-contact .button { font-size: 13px; padding: 15px 20px; }
.mega-checklist { padding: 24px; border-radius: 14px; background: #efede7; align-self: center; }
.mega-checklist span { display: block; margin-top: 18px; font-size: 11px; color: var(--muted); }
}
@media (min-width: 901px) and (max-width: 1100px) {
.mega-panel { gap: 18px; }
.mega-intro { padding-right: 0; }
.mega-steps { gap: 16px; }
.mega-contact a { overflow-wrap: anywhere; }
}

/* Centered navigation and typography above the vehicle. */
@media (min-width: 1101px) {
.navigation { display: grid; grid-template-columns: 1fr auto 1fr; gap: 20px; }
.navigation > .wordmark { justify-self: start; }
.navigation-links { grid-column: 2; justify-self: center; gap: 6px; }
.navigation-links .language-picker { position: absolute; right: calc(5% + 145px); top: 50%; transform: translateY(-50%); }
.navigation-links .nav-whatsapp { position: absolute; right: 5%; top: 50%; transform: translateY(-50%); }
}
@media (min-width: 901px) and (max-width: 1100px) {
.navigation { gap: 14px; }
.navigation-links { margin-left: auto; gap: 2px; }
.nav-tab { padding: 8px 12px; }
}

@font-face {
font-family: 'Michroma'; font-style: normal; font-weight: 400; font-display: swap;
src: url('/assets/fonts/Michroma-Regular.ttf') format('truetype');
}
.hero-copy { position: relative; z-index: 2; }
.refined .hero-copy h1 {
font-family: 'Michroma', Arial, sans-serif;
font-weight: 400; font-synthesis: none;
font-size: clamp(34px, 3.6vw, 64px);
line-height: 1.3; letter-spacing: .04em;
text-transform: uppercase; text-shadow: none; transform: none;
max-width: 100%; margin-bottom: 30px;
}
.hero-copy h1 > span { display: block; }
.hero-copy h1 > span + span {
font-size: .43em; letter-spacing: .09em; line-height: 1.8;
margin-top: 16px; color: #ecefea;
}
.hero-copy .eyebrow { margin-bottom: 24px; }
@media (min-width: 901px) {
.hero-copy { max-width: none; padding: 155px 7% 135px 28%; }
.hero-copy p { max-width: 430px; text-shadow: none; }
.hero-shade { background: linear-gradient(90deg,#081b2c95 0%,#081b2c99 32%,#081b2c60 58%,#081b2c10 90%),linear-gradient(0deg,#081b2c9c,transparent 55%); }
}
@media (max-width: 900px) {
.refined .hero-copy h1 { font-size: clamp(30px, 4.8vw, 44px); }
}
@media (max-width: 600px) {
.refined .hero-copy h1 { font-size: clamp(24px, 6.8vw, 36px); letter-spacing: .02em; }
.hero-copy h1 > span + span { font-size: .52em; letter-spacing: .06em; margin-top: 16px; }
}

/* Trip details are the primary content; imagery supports the selected service. */
.guide-panel { grid-template-columns: minmax(0,1.55fr) minmax(0,.8fr); }
.guide-details { padding: 34px; }
.guide-service-label { display: block; color: var(--champagne); font-size: 11px; letter-spacing: .08em; margin-bottom: 12px; }
.guide-details h3 { font-size: clamp(22px,2vw,28px); font-weight: 600; line-height: 1.35; margin-bottom: 24px; }
.guide-checklist { gap: 0; margin-bottom: 28px; }
.guide-checklist li { align-items: center; padding: 14px 0; border-bottom: 1px solid #ffffff19; gap: 16px; }
.guide-checklist li > .guide-field-number { display: flex; align-items: center; justify-content: center; width: 32px; height: 32px; flex-shrink: 0; background: #ccb99416; border-radius: 50%; color: var(--champagne); font-size: 10px; }
.guide-checklist li > .guide-field-text { font-size: 15px; color: var(--cream); line-height: 1.6; }
.guide-action { padding: 14px 20px; background: var(--champagne); color: var(--ink); border: 0; border-radius: 4px; font-size: 13px; font-weight: 600; }
.guide-action:hover, .guide-action:focus-visible { background: #e0cda9; color: var(--ink); }
.guide-photo { min-height: 300px; }
@media (max-width: 600px) {
.guide-panel { grid-template-columns: 1fr; }
.guide-details { padding: 24px; }
.guide-checklist li > .guide-field-text { font-size: 14px; }
.guide-photo { min-height: 170px; }
.guide-action { width: 100%; justify-content: space-between; }
}

/* Hover feedback accompanies the menu's continuous crossfade. */
@media (min-width: 901px) {
.site-header { transition: background-color .28s ease, color .28s ease, border-color .28s ease; }
.nav-tab { transition: background-color .18s ease, transform .22s cubic-bezier(.22,1,.36,1), box-shadow .22s ease; }
.nav-tab:hover, .nav-tab:focus-visible { transform: translateY(-2px); }
.mega-panel[inert] { pointer-events: none; }
.mega-preview { transition: transform .24s cubic-bezier(.22,1,.36,1), box-shadow .24s ease; }
.mega-preview:hover { transform: translateY(-4px); box-shadow: 0 8px 20px #10253712; }
}
@media (prefers-reduced-motion: reduce) {
.site-header, .nav-tab, .mega-preview { transition: none; }
.nav-tab:hover, .nav-tab:focus-visible, .mega-preview:hover { transform: none; }
}
