/* Original travel content, fresh presentation. Adobe hero fonts use the licensed embed. */
@font-face { font-family:"Cormorant Garamond"; font-style:normal; font-weight:500; font-display:swap; src:url('/assets/fonts/cormorant-garamond-normal-500.woff2') format('woff2'); }
@font-face { font-family:"Cormorant Garamond"; font-style:italic; font-weight:500; font-display:swap; src:url('/assets/fonts/cormorant-garamond-italic-500.woff2') format('woff2'); }
:root { --navy:#234b70; --blue:#2c6b98; --sky:#c5e5ff; --ink:#293d3e; --muted:#626d68; --line:#d9e4eb; --paper:#fffef8; --wash:#eef7fd; --sand:#f4e9d8; --display:"Cormorant Garamond",Georgia,"Times New Roman",serif; --body:Lato,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; }
*,*::before,*::after { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:28px; }
body { margin:0; color:var(--ink); background:var(--paper); font:17px/1.7 var(--body); -webkit-font-smoothing:antialiased; }
a { color:inherit; text-underline-offset:5px; }
a:hover { color:var(--blue); }
img { display:block; max-width:100%; height:auto; }
svg { width:22px; height:22px; }
button,input { font:inherit; }
button,summary { cursor:pointer; }
button { color:inherit; }
:focus-visible { outline:3px solid #a56f24; outline-offset:5px; }
h1,h2,h3,h4,h5,h6 { color:var(--navy); font-family:var(--display); font-weight:500; line-height:1.08; overflow-wrap:anywhere; }
h1 { font-size:clamp(2.8rem,5vw,5rem); letter-spacing:-.035em; }
h2 { font-size:clamp(2.3rem,3.7vw,3.65rem); letter-spacing:-.025em; }
h3 { font-size:1.9rem; letter-spacing:-.02em; }
p { margin:0 0 1.25em; }
.container { width:min(1240px,calc(100% - 80px)); margin-inline:auto; }
.skip-link { position:fixed; z-index:100; top:8px; left:8px; padding:12px 20px; color:white; background:var(--navy); transform:translateY(-180%); }
.skip-link:focus { transform:none; color:white; }
.kicker { font:650 .69rem/1.5 var(--body); letter-spacing:.17em; text-transform:uppercase; color:var(--blue); text-decoration:none; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:23px; min-height:51px; padding:13px 25px; border:1px solid var(--navy); border-radius:0; color:white; background:var(--navy); font-size:.82rem; font-weight:600; text-decoration:none; }
.button:hover { color:white; background:#173533; border-color:#173533; }
.button-light { color:var(--navy); background:var(--paper); border-color:var(--paper); }
.button-light:hover { color:var(--navy); background:var(--sand); border-color:var(--sand); }
.story-link { display:inline-flex; align-items:center; gap:17px; min-height:44px; color:var(--navy); font-size:.8rem; font-weight:650; text-decoration:none; }
.story-link:hover { text-decoration:underline; }
.section-space { padding-block:88px; }
.section-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:30px; margin-bottom:40px; }
.section-heading h2 { margin:0; }
.section-heading .kicker { margin-bottom:11px; }
.section-heading > .story-link { flex:0 0 auto; border-bottom:1px solid var(--line); }

/* A text masthead and clear navigation, rather than a recreated source logo. */
.site-header { position:relative; z-index:10; background:var(--paper); border-bottom:1px solid #d6c5ad; }
.masthead { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; min-height:111px; gap:30px; position:relative; }
.masthead-note { justify-self:start; max-width:160px; font-size:.65rem; font-weight:600; letter-spacing:.14em; text-transform:uppercase; text-decoration:none; }
.brand { display:flex; flex-direction:column; align-items:center; color:var(--blue); font:500 2.8rem/.95 var(--display); letter-spacing:-.035em; text-decoration:none; }
.brand:hover,.brand:focus-visible { color:var(--navy); }
.brand-name { white-space:nowrap; }
.brand-and { font-size:.86em; }
.brand-category { margin-top:12px; font:600 .85rem/1 var(--body); letter-spacing:.4em; text-transform:uppercase; padding-left:.4em; }
.header-controls { display:flex; align-items:center; justify-self:end; gap:18px; }
.search-toggle { display:grid; place-items:center; width:44px; height:44px; flex:0 0 auto; border:1px solid var(--line); border-radius:50%; }
.desktop-nav { display:flex; justify-content:center; align-items:center; gap:36px; min-height:54px; border-top:1px solid #d6c5ad; }
.desktop-nav a { display:flex; align-items:center; min-height:53px; font-size:1rem; font-weight:600; letter-spacing:.08em; text-transform:uppercase; text-decoration:none; white-space:nowrap; }
.desktop-nav a[aria-current] { box-shadow:inset 0 -2px var(--navy); }
.mobile-menu { display:none; }

/* Preserve the approved left-side composition and untouched sunset colors. */
.site-hero { position:relative; isolation:isolate; min-height:680px; height:min(800px,calc(100svh - 130px)); max-width:1800px; margin-inline:auto; overflow:hidden; background:#6d5a37; }
.hero-photo { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:50% 45%; z-index:-2; }
/* Small desktop reframe; preserve the hero box and original photo pixels. */
@media(min-width:1101px) { .hero-photo { width:106%; max-width:none; object-position:50% 50%; } }
.site-hero::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(255,254,248,.45),rgba(255,254,248,.25) 22%,transparent 42%); z-index:-1; }
.hero-copy { width:min(1360px,calc(100% - 64px)); max-width:1360px; margin-inline:auto; height:100%; min-height:inherit; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding-block:65px; }
.hero-copy h1 { color:rgba(35,75,112,.95); width:max-content; max-width:100%; margin:0 0 clamp(96px,9vw,136px); font-size:clamp(2rem,4vw,3.4rem); font-style:italic; line-height:1.06; letter-spacing:-.035em; }
.hero-title-line { display:block; white-space:nowrap; }
.hero-title-line + .hero-title-line { margin-top:.14em; font-size:.84em; letter-spacing:-.025em; }
.hero-copy > p { color:rgba(51,102,153,.95); max-width:480px; margin-bottom:27px; font-size:1.55rem; line-height:1.35; text-wrap:balance; }
.hero-copy .button { margin-top:3px; }
.hero-copy .hero-note { max-width:460px; margin:18px 0 0; font-size:1.28rem; line-height:1.35; color:rgba(51,102,153,.95); }
@supports ((background-clip:text) or (-webkit-background-clip:text)) {
 .hero-copy h1,.hero-copy > p,.hero-copy .hero-note { background-image:linear-gradient(110deg,rgba(35,75,112,.6) 0%,rgba(35,75,112,.95) 100%); background-clip:text; -webkit-background-clip:text; color:transparent; -webkit-text-fill-color:transparent; }
 .hero-copy > p,.hero-copy .hero-note { background-image:linear-gradient(110deg,rgba(51,102,153,.6) 0%,rgba(51,102,153,.95) 100%); }
}
.hero-copy .button-light { background:var(--navy); border-color:var(--navy); color:white; }
.home-intro { background:var(--wash); }
.home-intro-layout { width:min(1340px,calc(100% - 80px)); display:grid; grid-template-columns:minmax(0,1.6fr) minmax(0,1fr); grid-template-areas:'media copy' 'source .'; gap:12px 50px; align-items:stretch; }
.intro-photo { grid-area:media; min-width:0; margin:0; }
.intro-image { width:100%; height:auto; }
.home-intro-copy { grid-area:copy; display:flex; flex-direction:column; width:100%; }
.home-testimonial,.home-quote-stack { display:flex; flex:1; flex-direction:column; }
.home-intro-layout .prose { font-size:.96rem; line-height:1.8; }
.home-intro-layout .prose h2,.home-intro-layout .prose h3 { font-size:2.6rem; margin:1em 0 .45em; }
.home-intro-layout .prose > div:first-child h3 { margin-top:0; }
.home-intro-layout .prose > div:last-child { font-family:var(--display); font-size:1.3rem; line-height:1.5; }
.home-intro-layout .quote-attribution { margin-top:auto; padding-top:14px; font:500 .71rem/1.5 var(--body); color:var(--muted); }
.home-intro-layout #content-happiness { font-size:3.4rem; margin-top:.85em; }
.home-intro-layout #content-enjoy-the-journey { margin:0 0 22px; font-size:clamp(3rem,5vw,4.7rem); }
.home-intro-layout .travel-quotations,.adventure-quote { position:relative; display:flex; align-items:center; min-height:210px; padding:60px 16px 34px; margin:0 0 25px; border-top:2px solid #cfb58f; border-bottom:1px solid #cfb58f; background:#e1f0fc; font:500 1.95rem/1.55 var(--display); color:#234b70; }
.home-intro-layout .travel-quotations::before,.adventure-quote::before { content:'“'; position:absolute; top:10px; left:15px; font:500 2.6rem/1 var(--display); color:#7fb3da; }
.video-figure { width:100%; max-width:100%; min-width:0; min-height:0; aspect-ratio:auto; align-self:stretch; }
.video-stage { position:relative; width:100%; max-width:100%; height:100%; min-width:0; min-height:0; aspect-ratio:8/5; background:var(--navy); }
.video-stage > .intro-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.video-play { position:absolute; inset:auto 18px 18px; display:flex; align-items:center; gap:15px; min-height:76px; padding:16px 20px; border:1px solid #9fc5e3; background:#d4ebff; color:var(--navy); text-align:left; font-size:.9rem; font-weight:650; box-shadow:0 3px 20px #172f3020; }
.video-play small { display:block; margin-top:3px; font-size:.66rem; font-weight:400; }
.home-intro .video-play { inset:auto 0 0; width:100%; box-shadow:none; }
.play-mark { width:37px; height:37px; display:grid; place-items:center; border:1px solid #8eaaa1; border-radius:50%; padding-left:3px; font-size:.7rem; flex:0 0 auto; }
.video-frame { display:block; width:100%; height:100%; border:0; }
.video-source-link { grid-area:source; margin:0; font-size:.72rem; line-height:1.6; color:var(--muted); }
.video-source-link a { display:inline-block; padding-block:5px; }

/* Owner-approved right-focused crop: Sunny, ocean and zip lines; Rich and his
   GoPro stick may leave the frame. The saved original photo is unchanged. */
.home-adventure { background:var(--paper); border-bottom:1px solid var(--line); }
.home-relax { background:var(--paper); }
.relax-photo { height:100%; overflow:hidden; }
.relax-photo > .intro-image { width:100%; height:100%; object-fit:cover; object-position:50% 80%; }
.home-adventure-layout { width:min(1340px,calc(100% - 80px)); display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.6fr); grid-template-areas:'copy media' '. source'; gap:12px 50px; align-items:stretch; }
.adventure-copy { grid-area:copy; min-width:0; display:flex; flex-direction:column; justify-content:space-between; padding-block:10px; }
.adventure-copy h2 { margin:10px 0 22px; font-size:clamp(3rem,5vw,4.7rem); }
.adventure-copy > div > p:not(.kicker) { max-width:390px; font-size:.96rem; line-height:1.8; }
.adventure-copy > div > p.adventure-lede { font:500 1.85rem/1.25 var(--display); color:var(--navy); margin-bottom:20px; }
.adventure-tags { display:flex; flex-wrap:wrap; gap:8px; list-style:none; padding:0; margin:25px 0; }
.adventure-tags li { padding:5px 12px; border:1px solid #c5dbea; background:#eef7fd; color:var(--navy); font-size:.65rem; letter-spacing:.04em; }
.home-adventure .adventure-video { display:grid; grid-template-rows:minmax(0,1fr) auto; height:100%; }
.home-adventure .adventure-video-stage,.home-adventure .adventure-video-stage.is-playing { aspect-ratio:auto; height:100%; background:#dcecf6; }
.home-adventure .adventure-video-stage > .intro-image { object-fit:cover; object-position:100% 50%; }
.home-adventure .video-play { position:static; inset:auto; width:100%; box-shadow:none; }
.home-adventure .video-play:disabled { cursor:default; opacity:1; }
.adventure-quote,.home-intro-layout .travel-quotations { container-type:inline-size; --quote-growth:0px; --quote-padding-gain:0px; }
.adventure-quote p,.travel-quotations > p { width:100%; min-width:0; margin:0; font-size:clamp(1.65rem,9.7cqi,2.8rem); }
.quote-first-line,.quote-second-line { display:block; white-space:nowrap; }
.home-adventure .adventure-quote p { white-space:nowrap; }
.quote-author { display:block; margin-top:.2em; white-space:nowrap; font-size:clamp(1.65rem,calc(9.7cqi - var(--quote-growth) * .097 - var(--quote-padding-gain) * .097),2.5rem); }
/* Use the existing middle gap for larger quote text, preserving media sizes. */
@media(min-width:1101px) { .home-intro-layout .travel-quotations,.adventure-quote { --quote-growth:calc(clamp(56px,4.5vw,80px) - 20px); width:calc(100% + var(--quote-growth)); } .home-intro-layout .travel-quotations { margin-left:calc(-1 * var(--quote-growth)); } }
@media(min-width:1101px) { .home-adventure .adventure-copy h2 { margin-bottom:14px; } .home-adventure .adventure-tags { margin-block:16px; } .home-adventure .adventure-quote { margin-bottom:8px; } }
@media(max-width:600px) { .home-intro-layout .travel-quotations,.adventure-quote { --quote-padding-gain:8px; width:calc(100% + 20px); margin-inline:-10px; padding-inline:6px; } }
@media(min-width:1101px) { .home-intro-layout,.home-adventure-layout { grid-template-rows:clamp(570px,44vw,640px) auto; } .home-adventure .home-adventure-layout { grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); } }
@media(max-width:1100px) { .home-intro-layout,.home-adventure-layout { grid-template-columns:1fr; grid-template-areas:'media' 'source' 'copy'; row-gap:12px; } .home-adventure-layout { width:calc(100% - 56px); } .home-intro-layout .reading-column,.adventure-copy { max-width:680px; width:100%; margin:20px auto 0; } .home-intro-layout .intro-photo,.home-adventure .intro-photo { width:100%; max-width:680px; margin-inline:auto; } .home-adventure .adventure-video { height:auto; aspect-ratio:5/4; } .video-source-link { width:100%; max-width:680px; margin-inline:auto; } }
@media(max-width:850px) { .home-adventure-layout { grid-template-columns:1fr; grid-template-areas:'media' 'source' 'copy'; } .home-adventure .intro-photo,.adventure-copy { width:100%; max-width:680px; margin-inline:auto; } .adventure-copy { padding-top:25px; } .adventure-copy > div > p:not(.kicker) { max-width:540px; } }
@media(max-width:600px) { .home-adventure-layout { width:calc(100% - 36px); } .adventure-copy h2 { margin-bottom:18px; } }
@media(max-width:1100px) { .home-relax .relax-photo { height:auto; width:100%; max-width:680px; aspect-ratio:5/4; margin-inline:auto; } }

.home-story-layout { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(0,1fr); gap:56px; align-items:start; }
.story-card { min-width:0; }
.card-picture { display:block; overflow:hidden; aspect-ratio:1.45; background:var(--sand); }
.card-image { width:100%; height:100%; object-fit:cover; transition:transform .3s ease; }
.card-picture:hover .card-image { transform:scale(1.025); }
.card-copy { padding-top:24px; }
.card-copy h3 { margin:9px 0 15px; font-size:2rem; line-height:1.1; }
.card-copy h3 a { text-decoration:none; }
.card-copy > p { color:var(--muted); font-size:.9rem; line-height:1.75; margin-bottom:14px; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3; overflow:hidden; }
.card-copy .story-link { margin-top:12px; }
.lead-card .card-copy h3 { font-size:2.8rem; }
.lead-card .card-picture { aspect-ratio:1.5; }
.home-side-stories { display:grid; gap:32px; }
.home-side-stories .story-card { display:grid; grid-template-columns:minmax(0,145px) minmax(0,1fr); gap:22px; padding-bottom:29px; border-bottom:1px solid var(--line); }
.home-side-stories .card-picture { aspect-ratio:1; }
.home-side-stories .card-copy { padding-top:0; }
.home-side-stories .card-copy h3 { font-size:1.65rem; margin-top:6px; }
.home-side-stories .card-copy > p { display:none; }
.home-side-stories .story-link { font-size:.72rem; min-height:35px; margin-top:9px; }
.home-side-stories .story-meta { font-size:.65rem; }
.story-meta { display:flex; flex-wrap:wrap; align-items:center; gap:6px 9px; font-size:.72rem; color:var(--muted); line-height:1.5; }
.story-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:54px 34px; }
.destination-band { background:var(--sand); padding-block:58px; text-align:center; }
.destination-band h2 { margin:8px 0 26px; }
.destination-band .topic-links { justify-content:center; }
.topic-links { display:flex; flex-wrap:wrap; gap:9px; }
.topic-links a { display:inline-flex; justify-content:space-between; align-items:center; gap:25px; min-height:44px; max-width:100%; padding:9px 17px; color:var(--navy); border:1px solid #bfc7bc; background:transparent; text-decoration:none; font-size:.75rem; overflow-wrap:anywhere; }
.topic-links a:hover,.topic-links a[aria-current] { background:var(--navy); border-color:var(--navy); color:white; }
.gallery-band,.related-band { background:var(--wash); }
.photo-gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.photo-gallery figure { margin:0; min-width:0; }
.photo-gallery img { width:100%; aspect-ratio:1.15; object-fit:cover; }
.photo-gallery figcaption { margin-top:10px; font-size:.78rem; color:var(--muted); }

.feature-hero { position:relative; isolation:isolate; overflow:hidden; display:flex; align-items:flex-end; min-height:535px; background:var(--navy); }
.feature-photo { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; z-index:-2; }
.feature-hero.has-photo::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(0deg,rgba(12,30,28,.84),rgba(12,30,28,.08) 100%); }
.feature-heading { padding-block:75px; }
.feature-heading h1 { max-width:1050px; margin:12px 0 20px; color:var(--paper); font-size:clamp(3.2rem,5vw,5.25rem); line-height:1.02; text-wrap:balance; }
.feature-heading .kicker,.feature-heading .kicker a,.feature-heading .story-meta { color:var(--paper); }
.feature-heading .kicker a { text-decoration:none; }
.feature-heading .story-meta { font-size:.77rem; }
.feature-description { max-width:710px; margin:18px 0 0; color:var(--paper); font-size:1rem; line-height:1.75; }
.feature-hero.text-only { min-height:300px; background:var(--wash); }
.text-only .feature-heading h1,.text-only .feature-heading .kicker,.text-only .feature-heading .story-meta,.text-only .feature-description { color:var(--navy); }
.photo-small .feature-photo { left:auto; max-width:640px; object-fit:contain; }
.photo-small.has-photo::after { background:linear-gradient(90deg,#234747 25%,#234747b8 65%,#23474720); }
.photo-small .feature-heading h1 { max-width:650px; }
.breadcrumbs { padding-top:29px; color:var(--muted); font-size:.7rem; }
.breadcrumbs ol { display:flex; flex-wrap:wrap; align-items:baseline; gap:6px 10px; padding:0; margin:0; list-style:none; }
.breadcrumbs li { max-width:100%; overflow-wrap:anywhere; }
.breadcrumbs li+li::before { content:'/'; margin-right:10px; color:#7c8b80; }
.breadcrumbs a { text-decoration:none; }
.article-shell,.page-shell { padding-block:47px 88px; }
.reading-column { max-width:760px; margin-inline:auto; min-width:0; }
.contact-layout { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:70px; align-items:start; }
.contact-intro h2 { margin:0 0 24px; }
.contact-source { margin-top:35px; }
.contact-source h3 { font-size:1.65rem; }
.contact-form { min-width:0; padding:38px; border:1px solid var(--line); border-radius:12px; background:var(--wash); box-shadow:0 12px 35px #234b7008; }
.contact-form h2 { margin:0 0 10px; font-size:2.6rem; }
.contact-required,.contact-privacy,.contact-field-hint { color:#4e626a; font-size:.81rem; }
.contact-required-mark { color:#923721; }
.contact-field-hint { margin-bottom:12px; }
.contact-form > div { margin-bottom:23px; }
.contact-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.contact-fields > div { min-width:0; }
.contact-social-fields { grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.contact-location-fields { grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.contact-form label { display:block; margin-bottom:8px; font-size:.86rem; font-weight:600; }
.contact-form input:not([type="checkbox"]),.contact-form textarea,.contact-form select { width:100%; min-width:0; padding:12px 14px; color:var(--ink); background:var(--paper); border:1px solid #879eac; border-radius:5px; font:inherit; font-size:1rem; }
.contact-location-fields select { height:calc(1.7em + 26px); }
.contact-form textarea { resize:vertical; min-height:180px; }
.contact-form .contact-consent { display:flex; align-items:flex-start; gap:12px; font-size:.82rem; font-weight:400; line-height:1.65; }
.contact-consent input { flex:0 0 auto; width:19px; height:19px; margin:3px 0 0; accent-color:var(--navy); }
.contact-form [aria-invalid="true"] { border-color:#923721; }
.field-error { display:block; color:#923721; font-size:.8rem; }
.contact-form .field-error:not(:empty) { margin-top:10px; }
.contact-trap { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.contact-status { margin:20px 0 0; font-size:.9rem; overflow-wrap:anywhere; }
.contact-status:empty { display:none; }
.contact-status[data-state="success"] { color:#205b42; }
.contact-status[data-state="error"] { color:#923721; }
.contact-form button:disabled { opacity:.65; cursor:not-allowed; }
.contact-form[aria-busy="true"] button:disabled { cursor:wait; }
.contact-verification { min-width:0; }
.contact-verification-label { margin:0 0 10px; font-size:.86rem; font-weight:600; }
.contact-verification [data-contact-captcha] { min-width:0; width:100%; }
.contact-verification-message { margin:9px 0 0; color:#4e626a; font-size:.8rem; }
.contact-preview-notice { margin:10px 0 0; padding:10px 12px; border:1px solid #9fc5e3; background:#e1f0fc; color:#234b70; font-size:.8rem; }
.contact-sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
@media(max-width:1100px) { .contact-social-fields { grid-template-columns:repeat(2,minmax(0,1fr)); } .contact-location-fields { grid-template-columns:repeat(2,minmax(0,1fr)); } .contact-location-fields > div:last-child { grid-column:1/-1; } }
@media(max-width:1000px) { .contact-layout { gap:35px; grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr); } .contact-form { padding:28px; } }
@media(max-width:700px) { .contact-layout { grid-template-columns:1fr; gap:25px; } .contact-location-fields { grid-template-columns:1fr; } .contact-form { padding:24px; } .contact-form h2 { font-size:2.25rem; } }
@media(max-width:500px) { .contact-fields { grid-template-columns:1fr; gap:18px; } }
.hero-caption { margin:0 0 27px; font-size:.75rem; color:var(--muted); }
.article-outline { border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:22px 0; margin-bottom:44px; }
.article-outline summary { font-size:.76rem; font-weight:650; color:var(--navy); letter-spacing:.04em; }
.article-outline ol { list-style:none; padding:0; margin:17px 0 0; }
.article-outline a { display:block; padding-block:8px; font-size:.84rem; text-decoration:none; }
.article-outline .level-3 { padding-left:18px; }
.article-outline a:hover { text-decoration:underline; }
.prose { font-size:1.06rem; line-height:1.95; overflow-wrap:anywhere; }
.prose > :first-child { margin-top:0; }
.prose h2 { font-size:2.7rem; margin:1.75em 0 .65em; scroll-margin-top:30px; line-height:1.12; }
.prose h3 { font-size:2rem; margin:1.65em 0 .65em; line-height:1.2; }
.prose h4 { font-size:1.55rem; margin:1.4em 0 .6em; }
.prose a { color:var(--blue); text-decoration-thickness:1px; }
.prose ul,.prose ol { padding-left:1.4em; margin-block:0 1.6em; }
.prose li { padding-left:.2em; margin-bottom:.65em; }
.prose li::marker { color:#66817b; }
.prose li > ul,.prose li > ol { margin-top:.65em; margin-bottom:.65em; }
/* All current matching source wrappers have no text outside their inner list. */
.prose li:has(> ul:only-child)::marker { content:""; }
.prose img { max-width:100%; height:auto; margin:44px auto; }
.prose figure { max-width:100%; margin:2.1em 0; }
.prose figure img { margin-bottom:13px; }
.prose figcaption { color:var(--muted); font-size:.78rem; line-height:1.7; text-align:center; }
.prose blockquote { border-left:2px solid #b08d57; padding:18px 30px; margin:2.4em 0; font:500 1.6rem/1.45 var(--display); background:var(--wash); }
.prose blockquote > :last-child { margin-bottom:0; }
.prose table { display:block; max-width:100%; overflow-x:auto; border-collapse:collapse; margin-block:1.75em; font-size:.86rem; }
.prose th,.prose td { min-width:130px; padding:14px; border:1px solid var(--line); text-align:left; vertical-align:top; }
.prose th { background:var(--wash); }
.prose pre { overflow-x:auto; padding:20px; background:var(--wash); font-size:.84rem; }
.prose hr { border:0; border-top:1px solid var(--line); margin-block:2.4em; }
.gallery-page .reading-column { max-width:none; }
.gallery-page .prose > div > div > div > div > div > div > div > h2 { text-align:center; }
.prose .content-gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:start; gap:32px; margin-block:40px; }
.prose .content-photo { min-width:0; margin:0; }
.prose .content-photo img { width:100%; height:auto; margin:0; }
.prose .content-photo-crop { overflow:hidden; }
.prose .content-photo figcaption { margin-top:11px; }
.prose .content-photo a { display:block; }
.article-topics { border-top:1px solid var(--line); padding-top:30px; margin-top:50px; }
.content-notice { border-left:3px solid #a68a58; background:var(--wash); padding:18px 22px; margin-bottom:32px; font-size:.88rem; }
.page-shell > .photo-gallery { margin-top:44px; }

.archive-shell { padding-block:44px 90px; }
.archive-topics { margin-bottom:43px; padding-bottom:35px; border-bottom:1px solid var(--line); }
.archive-section-heading { display:flex; flex-wrap:wrap; justify-content:space-between; gap:14px; margin-bottom:34px; }
.archive-section-heading p { margin:0; font-size:.71rem; color:var(--muted); }
.archive-section-heading .kicker { color:var(--blue); }
.archive-story-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:65px 44px; }
.archive-story-grid .story-card { padding-bottom:30px; border-bottom:1px solid var(--line); }
.archive-story-grid .lead-card { grid-column:1/-1; display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); gap:48px; align-items:center; padding-bottom:55px; }
.archive-story-grid .lead-card .card-copy { padding-top:0; }
.archive-story-grid .lead-card .card-copy h3 { font-size:3.05rem; }
.archive-story-grid .lead-card .card-copy > p { -webkit-line-clamp:4; }
.archive-story-grid .card-copy h3 { max-width:650px; font-size:2.35rem; }
.archive-story-grid .card-copy > p { max-width:560px; }
.pagination { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:22px; margin-top:55px; font-size:.8rem; }
.pagination a { min-height:44px; display:inline-flex; align-items:center; padding:9px 18px; border:1px solid var(--line); text-decoration:none; }
.not-found { max-width:900px; padding-block:90px 110px; }
.not-found h1 { margin:10px 0 24px; }
.not-found .button { margin-top:16px; }

.search-dialog { width:min(740px,calc(100vw - 30px)); max-height:calc(100dvh - 40px); margin:20px auto; padding:30px; border:1px solid var(--line); border-radius:0; color:var(--ink); background:var(--paper); }
.search-dialog::backdrop { background:#172f30bf; }
.search-dialog > header { display:flex; justify-content:space-between; align-items:flex-start; gap:18px; margin-bottom:24px; }
.search-dialog h2 { margin:0; font-size:2.3rem; }
.close-search { min-width:44px; min-height:44px; border:1px solid var(--line); border-radius:50%; background:var(--paper); font-size:1.8rem; line-height:1; }
[data-search-form] label { display:block; margin-bottom:8px; font-size:.79rem; font-weight:650; }
[data-search-form] > div { display:flex; align-items:stretch; gap:9px; }
[data-search-query] { flex:1; min-width:0; width:100%; min-height:50px; border:1px solid #98a79f; padding:11px 13px; border-radius:0; font-size:1rem; background:white; color:var(--ink); }
.search-status { margin-top:20px; color:var(--muted); font-size:.8rem; }
.search-results { list-style:none; margin:0; padding:0; }
.search-results li { border-top:1px solid var(--line); padding-block:21px; }
.search-results h3 { margin:0 0 10px; font-size:1.75rem; }
.search-results h3 a { text-decoration:none; }
.search-results p { font-size:.85rem; color:var(--muted); margin-bottom:8px; }
.search-page { max-width:850px; margin-inline:auto; }
.site-footer { background:var(--navy); color:var(--paper); }
.footer-inner { display:grid; grid-template-columns:1fr 1fr; gap:65px; padding-block:65px; }
.footer-brand { font:500 2.55rem/1.1 var(--display); text-decoration:none; letter-spacing:-.025em; }
.footer-inner p { max-width:360px; margin:20px 0 0; font-size:.8rem; color:#d3ded5; }
.footer-inner nav { display:flex; flex-wrap:wrap; align-content:flex-start; justify-content:flex-end; gap:10px 27px; }
.footer-inner nav a { display:inline-flex; align-items:center; min-height:40px; font-size:.9rem; text-decoration:none; }
.site-footer a:hover { color:var(--sky); }
.footer-bottom { border-top:1px solid #637e74; display:flex; justify-content:space-between; gap:20px; flex-wrap:wrap; padding-block:23px; font-size:.68rem; color:#d3ded5; }

@media(max-width:1100px) {
 .container { width:calc(100% - 56px); }
 .home-intro-layout { width:calc(100% - 56px); column-gap:44px; }
 .home-story-layout { gap:34px; grid-template-columns:minmax(0,1.45fr) minmax(0,1fr); }
 .home-side-stories .story-card { grid-template-columns:105px minmax(0,1fr); gap:17px; }
 .home-side-stories .card-copy h3 { font-size:1.48rem; }
 .story-grid { gap:42px 26px; }
 .archive-story-grid .lead-card { gap:33px; }
 .archive-story-grid .lead-card .card-copy h3 { font-size:2.65rem; }
 .feature-heading h1 { max-width:900px; }
}
@media(max-width:850px) {
 .masthead { min-height:100px; grid-template-columns:1fr auto; gap:20px; }
 .masthead-note,.desktop-nav { display:none; }
 .brand { justify-self:start; font-size:2.5rem; }
 .brand-category { font-size:.78rem; letter-spacing:.4em; margin-top:10px; }
 .mobile-menu { display:block; }
 .mobile-menu > summary { display:flex; align-items:center; gap:8px; min-height:44px; list-style:none; font-size:.9rem; }
 .mobile-menu > summary::-webkit-details-marker { display:none; }
 .mobile-menu nav { position:absolute; z-index:30; top:100%; left:-28px; right:-28px; display:grid; grid-template-columns:1fr 1fr; gap:0 28px; padding:16px 28px; background:var(--paper); box-shadow:0 12px 24px #172f3026; border-top:1px solid var(--line); }
 .mobile-menu nav a { display:flex; align-items:center; min-height:49px; padding:10px 0; border-bottom:1px solid var(--line); text-decoration:none; font-size:1rem; }
 .site-hero { height:730px; min-height:600px; }
 .hero-photo { object-position:25% center; }
 .hero-copy h1 { font-size:clamp(2rem,4.4vw,3.1rem); }
 .hero-copy > p,.hero-copy .hero-note { max-width:340px; }
 .home-story-layout { display:block; }
 .home-side-stories { grid-template-columns:1fr 1fr; margin-top:38px; gap:30px; }
 .home-side-stories .story-card { display:block; }
 .home-side-stories .card-picture { aspect-ratio:1.5; }
 .home-side-stories .card-copy { padding-top:20px; }
 .home-side-stories .card-copy h3 { font-size:1.8rem; }
 .story-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .home-intro-layout { grid-template-columns:1fr; grid-template-areas:'media' 'source' 'copy'; row-gap:12px; }
 .intro-photo { width:100%; max-width:680px; margin-inline:auto; }
 .home-intro-layout .reading-column { max-width:680px; width:100%; margin-top:20px; }
 .video-source-link { width:100%; max-width:680px; margin-inline:auto; }
 .feature-hero { min-height:490px; }
 .feature-heading { padding-block:65px; }
 .feature-heading h1 { font-size:3.55rem; }
 .feature-hero.photo-small { display:block; min-height:0; }
 .feature-hero.photo-small .feature-photo { position:static; width:100%; max-width:min(100%,640px); height:auto; margin-inline:auto; opacity:1; object-fit:contain; }
 .photo-small .feature-heading { padding-block:42px; }
 .photo-small .feature-heading h1 { max-width:100%; }
 .photo-small.has-photo::after { display:none; }
 .archive-story-grid { gap:44px 29px; }
 .archive-story-grid .lead-card { grid-template-columns:1fr; gap:25px; }
 .archive-story-grid .lead-card .card-copy h3 { font-size:2.8rem; }
 .archive-story-grid .card-copy h3 { font-size:2.1rem; }
 .prose .content-gallery { grid-template-columns:repeat(2,minmax(0,1fr)); gap:25px; }
}
@media(max-width:600px) {
 .container { width:calc(100% - 36px); }
 .masthead { min-height:88px; gap:13px; }
 .brand { font-size:2.05rem; }
 .brand-category { font-size:.72rem; letter-spacing:.4em; margin-top:9px; }
 .header-controls { gap:13px; }
 .search-toggle { width:38px; height:44px; border:0; }
 .mobile-menu > summary { font-size:.9rem; }
 .mobile-menu nav { left:-18px; right:-18px; padding-inline:18px; }
 .site-hero { height:650px; min-height:650px; }
 .hero-photo { object-position:25% center; }
 .site-hero::after { background:linear-gradient(90deg,rgba(255,254,248,.45),rgba(255,254,248,.25) 30%,transparent 60%); }
 .hero-copy { width:calc(100% - 36px); margin-inline:18px; padding-block:45px 20px; justify-content:flex-end; }
 .hero-copy h1 { max-width:100%; font-size:clamp(1.5rem,7.4vw,1.9rem); line-height:1.06; margin-bottom:clamp(84px,24vw,112px); }
 .hero-copy > p { max-width:250px; font-size:1.36rem; margin-bottom:24px; }
 .hero-copy .hero-note { max-width:250px; }
 .hero-copy .button { font-size:.76rem; }
 .section-space { padding-block:54px; }
 .section-heading { align-items:flex-start; gap:20px; margin-bottom:29px; }
 .section-heading h2 { font-size:2.45rem; }
 .section-heading > .story-link { max-width:100px; font-size:.69rem; }
 .section-heading .kicker { font-size:.61rem; }
 .home-intro-layout { row-gap:12px; }
 .home-intro-layout .prose h2,.home-intro-layout .prose h3 { font-size:2.2rem; }
 .home-intro-layout #content-happiness { font-size:2.85rem; }
 .home-intro-layout .travel-quotations,.adventure-quote { min-height:0; font-size:1.65rem; padding:46px 6px 23px; }
 .video-play { inset:auto 12px 12px; gap:10px; padding:10px 12px; min-height:62px; font-size:.72rem; }
 .video-play small { font-size:.57rem; }
 .play-mark { width:31px; height:31px; }
 .lead-card .card-copy h3 { font-size:2.3rem; }
 .home-side-stories { gap:22px; }
 .home-side-stories .card-copy h3 { font-size:1.55rem; }
 .home-side-stories .kicker { font-size:.55rem; letter-spacing:.09em; }
 .story-grid { grid-template-columns:1fr; gap:42px; }
 .card-copy h3 { font-size:2.1rem; }
 .card-copy > p { font-size:.87rem; }
 .destination-band { padding-block:43px; }
 .destination-band h2 { font-size:2.55rem; }
 .topic-links a { min-height:44px; font-size:.69rem; padding:9px 13px; }
 .photo-gallery { grid-template-columns:repeat(2,minmax(0,1fr)); gap:17px; }
 .feature-hero { min-height:480px; }
 .feature-heading { padding-block:45px; }
 .feature-heading h1 { font-size:2.7rem; line-height:1.04; }
 .feature-heading .story-meta { font-size:.68rem; }
 .feature-heading .kicker { font-size:.62rem; }
 .feature-description { font-size:.9rem; line-height:1.65; }
 .feature-hero.text-only { min-height:250px; }
 .breadcrumbs { padding-top:21px; font-size:.64rem; }
 .article-shell,.page-shell { padding-block:32px 54px; }
 .article-outline { padding-block:19px; margin-bottom:33px; }
 .article-outline a { font-size:.8rem; }
 .prose { font-size:1rem; line-height:1.9; }
 .prose h2 { font-size:2.25rem; margin-top:1.6em; }
 .prose h3 { font-size:1.85rem; }
 .prose img { margin-block:32px; }
 .prose .content-gallery { gap:19px; margin-block:30px; }
 .prose blockquote { padding:18px 21px; font-size:1.5rem; }
 .archive-shell { padding-block:31px 54px; }
 .archive-topics { margin-bottom:29px; padding-bottom:25px; }
 .archive-section-heading { margin-bottom:25px; }
 .archive-story-grid { grid-template-columns:1fr; gap:39px; }
 .archive-story-grid .lead-card { padding-bottom:30px; }
 .archive-story-grid .lead-card .card-copy h3,.archive-story-grid .card-copy h3 { font-size:2.25rem; }
 .archive-story-grid .story-card { padding-bottom:25px; }
 .pagination { gap:14px; }
 .footer-inner { grid-template-columns:1fr; gap:32px; padding-block:44px; }
 .footer-inner nav { justify-content:flex-start; gap:0 23px; }
 .footer-brand { font-size:2.2rem; }
 .search-dialog { padding:23px; }
 .search-dialog h2 { font-size:1.95rem; }
 [data-search-form] > div { flex-wrap:wrap; }
 [data-search-form] .button { width:100%; }
 .not-found { padding-block:55px 70px; }
}
@media(max-width:380px) { .brand { font-size:1.8rem; } .header-controls { gap:9px; } .masthead { gap:9px; } .home-side-stories { grid-template-columns:1fr; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { transition:none!important; } }
/* Group13: brighter original-photo collages, readable titles below imagery. */
.collage-hero { background:var(--wash); }
.hero-collage { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); max-width:1600px; height:390px; margin-inline:auto; gap:7px; }
.collage-count-1 { grid-template-columns:1fr; }
.collage-count-2 { grid-template-columns:1.3fr 1fr; }
.collage-count-3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
.collage-frame { min-width:0; margin:0; overflow:hidden; }
.collage-photo { width:100%; height:100%; object-fit:cover; }
.straight .collage-frame:first-child .collage-photo { object-position:50% 35%; }
/* The wide camel photograph needs room for both outstretched arms. */
.straight .collage-count-4 { grid-template-columns:1.35fr repeat(3,minmax(0,1fr)); height:clamp(220px,26vw,390px); }
.straight .collage-count-4 .collage-frame:first-child .collage-photo { object-position:40% 35%; }
.subpage-heading { padding-block:42px 48px; }
.subpage-heading h1 { max-width:1050px; margin:7px 0 0; font-size:clamp(3rem,4.5vw,4.5rem); }
.subpage-heading p:not(.kicker) { max-width:750px; margin:19px 0 0; color:var(--muted); font-size:1rem; }
.subpage-heading .kicker { margin:0; }
.mosaic .hero-collage { grid-template-columns:1.12fr .95fr .95fr 1.2fr; height:410px; gap:9px; }
.mosaic .frame-1 .collage-photo { object-position:50% 48%; }
.mosaic .frame-2 .collage-photo { object-position:50% 38%; }
.mosaic .frame-3 .collage-photo { object-position:50% 30%; }
.mosaic .frame-4 .collage-photo { object-position:50% 70%; }
.polaroid { background:#d3e5f3; }
.polaroid .hero-collage { max-width:1380px; height:auto; padding:50px 48px 45px; gap:28px; overflow:visible; }
.polaroid .collage-frame { padding:11px 11px 15px; background:white; box-shadow:0 9px 21px #285e5721; overflow:visible; }
.polaroid .collage-photo { height:260px; object-fit:cover; }
.polaroid .frame-1 { transform:rotate(-5deg); }
.polaroid .frame-2 { transform:rotate(3deg); }
.polaroid .frame-3 { transform:rotate(-3deg); }
.polaroid .frame-4 { transform:rotate(5deg); }
.polaroid figcaption { margin-top:13px; font-size:.68rem; line-height:1.4; color:#405d58; }
.polaroid .subpage-heading { padding-top:10px; }
.article-strip .hero-collage { height:370px; }
.collage-photo[src="/assets/media/af62ce4a8c2cb992574b.webp"] { object-position:50% 90%; }
.collage-photo[src="/assets/media/216217b165e988b90c65.webp"] { object-position:50% 90%; }
.article-strip .collage-count-1 { max-width:1000px; }
.article-strip .collage-count-1 .collage-photo { object-fit:contain; }
.article-strip:has(.collage-count-0) { min-height:90px; }
.article-body-heading { margin-bottom:35px; }
.article-body-heading h1 { font-size:clamp(2.65rem,4vw,3.8rem); line-height:1.08; margin:12px 0 23px; }
.article-body-heading .story-meta { font-size:.78rem; }
.destination-explorer { background:linear-gradient(#e6f8f5,#fffef8 920px); padding-block:45px 85px; }
.explorer-heading { text-align:center; margin-bottom:30px; }
.explorer-heading h1 { margin:10px 0 16px; }
.explorer-heading > p:last-child { color:var(--muted); font-size:1rem; }
.globe-layout { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,1fr); align-items:center; gap:65px; }
.globe-card { min-width:0; }
.destination-globe { display:block; width:100%; height:auto; overflow:visible; }
.destination-globe.can-drag { cursor:grab; touch-action:pan-y; user-select:none; }
.destination-globe.is-dragging { cursor:grabbing; }
[data-map-pin] { cursor:pointer; }
.globe-halo { fill:#d7f1ec; stroke:#b6ded4; stroke-width:1; }
.globe-ocean { fill:url(#ocean-light); stroke:#63adc9; stroke-width:1.4; }
.globe-land { fill:#78c4a1; stroke:#fffef8; stroke-width:.8; stroke-linejoin:round; }
.globe-graticule { fill:none; stroke:#7abbd1; stroke-width:.75; opacity:.6; }
.globe-shading { fill:url(#globe-shade); pointer-events:none; }
.pin-hit { fill:transparent; pointer-events:all; }
.pin-leader { fill:none; stroke:#527984; stroke-width:1.2; opacity:.65; pointer-events:none; }
.pin-origin { fill:#527984; stroke:#fffef8; stroke-width:1; pointer-events:none; }
.pin-shape { fill:#ee9876; stroke:#fffef8; stroke-width:3; }
[data-pin-kind="photo"] .pin-shape { fill:#3d8ab7; }
[data-pin-kind="coming-soon"] .pin-shape { fill:#b49b4b; }
.pin-center { fill:#fff4cc; }
.pin-label { opacity:0; pointer-events:none; font:650 21px var(--body); fill:#173f4b; stroke:#fffef8; stroke-width:5; paint-order:stroke; stroke-linejoin:round; }
[data-map-pin]:hover .pin-label,[data-map-pin]:focus .pin-label,[data-map-pin].is-selected .pin-label { opacity:1; }
[data-map-pin]:hover .pin-shape,[data-map-pin]:focus .pin-shape { fill:#a84d31; }
[data-map-pin].is-selected .pin-shape { fill:#234b70; }
[data-map-pin]:focus-visible { outline:none; }
[data-map-pin]:focus .pin-hit { stroke:#234747; stroke-width:3; }
.globe-controls[hidden] { display:none; }
.globe-views { display:flex; flex-wrap:wrap; justify-content:center; gap:8px; }
.globe-controls button { min-height:44px; min-width:44px; padding:8px 13px; border:1px solid #a4cbbf; background:#fffef8; color:var(--navy); font-size:.78rem; }
.globe-controls button[aria-pressed=true] { background:#fff0be; border-color:#cba55b; }
.globe-rotation { display:flex; align-items:center; justify-content:center; gap:9px; margin-top:13px; }
.globe-rotation label { display:grid; gap:4px; font-size:.61rem; text-align:center; color:var(--muted); }
.globe-rotation input { width:135px; accent-color:#2d6870; }
.globe-status,.map-credit { text-align:center; margin:14px 0 0; font-size:.7rem; color:var(--muted); }
.map-credit { margin-top:7px; font-size:.61rem; }
.pin-legend { display:flex; flex-wrap:wrap; justify-content:center; gap:8px 19px; padding:0; margin:20px 0 0; list-style:none; font-size:.7rem; }
.pin-legend li { display:flex; align-items:center; gap:7px; }
.pin-legend li::before { content:''; width:10px; height:10px; border-radius:50%; background:#ee9876; }
.pin-legend .legend-photo::before { background:#3d8ab7; }
.pin-legend .legend-coming-soon::before { background:#b49b4b; }
.destination-summary h2 { font-size:3.4rem; margin:12px 0 22px; }
.destination-summary > p:not(.kicker) { color:var(--muted); }
.destination-jump-links { margin:28px 0 18px; border-top:1px solid var(--line); }
.destination-jump-links a { display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px; min-height:70px; align-items:center; border-bottom:1px solid var(--line); text-decoration:none; font-size:1rem; }
.destination-jump-links a > span:last-child { font-size:.72rem; color:var(--muted); }
.visited-locations { margin-top:55px; padding-top:35px; border-top:1px solid var(--line); }
.visited-locations h2 { margin:10px 0 30px; font-size:2.8rem; }
.location-tag-groups { display:grid; grid-template-columns:.8fr 1fr 1.6fr; gap:32px; }
.location-tag-groups h3 { margin:0 0 16px; font-size:1.5rem; }
.location-tags { display:flex; flex-wrap:wrap; align-content:flex-start; gap:9px; }
.location-tags a { display:inline-flex; align-items:center; justify-content:space-between; gap:13px; min-height:44px; padding:9px 14px; border:1px solid #b9d4e6; border-radius:3px; background:#f3faff; color:var(--navy); font-size:.78rem; text-decoration:none; }
.location-tags a:hover { background:#dceefa; border-color:#6d9dbf; }
.destination-article-lists { padding-top:65px; }
.destination-country { scroll-margin-top:25px; padding:35px; border:1px solid var(--line); background:white; margin-bottom:30px; }
.destination-country.is-selected { border-color:#bf9c48; background:#fff9e7; }
.destination-country h2 { margin:7px 0 25px; }
.destination-country ul { display:grid; grid-template-columns:1fr 1fr; gap:0 35px; padding:0; list-style:none; margin:0; }
.destination-country li { border-top:1px solid var(--line); }
.destination-country li a { display:flex; justify-content:space-between; gap:16px; padding:17px 0; min-height:55px; font-size:.88rem; line-height:1.65; text-decoration:none; }
.destination-country li a:hover { text-decoration:underline; }
.country-photo-collection { margin-top:28px; padding:21px 24px; background:var(--wash); border-left:3px solid #8bb8d8; }
.country-photo-collection h3 { margin:7px 0 10px; font-size:1.85rem; }
.country-photo-collection h3 a { text-decoration:none; }
.country-photo-collection > p:last-child { margin:0; font-size:.8rem; color:var(--muted); }
.coming-soon-hero { padding-block:95px 85px; background:linear-gradient(120deg,#f4e9d8,#eef7fd 55%,#d3e5f3); }
.coming-soon-hero h1 { max-width:850px; margin:18px 0 25px; font-size:clamp(3.2rem,6vw,5.6rem); }
.coming-soon-hero > .container > p:not(.kicker) { max-width:560px; font-size:1.05rem; }
.coming-soon-actions { display:flex; align-items:center; flex-wrap:wrap; gap:24px 32px; margin-top:32px; }
.coming-soon-places { padding-block:35px 75px; }
.coming-soon-places header h2 { margin:10px 0 35px; font-size:3rem; }
.coming-soon-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; margin-bottom:38px; }
.coming-soon-grid article { min-width:0; min-height:180px; padding:25px; scroll-margin-top:35px; border:1px solid #c9dbe6; background:#f6fbff; }
.coming-soon-grid article:target { background:#e0f0fc; border-color:#2c6b98; box-shadow:0 0 0 2px #2c6b9822; }
.coming-soon-grid .chapter-number { display:block; margin-bottom:20px; font-size:.72rem; letter-spacing:.16em; color:#71664f; }
.coming-soon-grid .kicker { font-size:.6rem; margin-bottom:8px; }
.coming-soon-grid h3 { margin:0; font-size:2.2rem; }
@media(max-width:1000px) { .coming-soon-grid { grid-template-columns:1fr 1fr; } }
@media(max-width:600px) { .coming-soon-hero { padding-block:60px 55px; } .coming-soon-hero h1 { font-size:3.55rem; } .coming-soon-actions { align-items:flex-start; flex-direction:column; gap:20px; } .coming-soon-places { padding-bottom:50px; } .coming-soon-places header h2 { font-size:2.5rem; } .coming-soon-grid { grid-template-columns:1fr; gap:17px; } .coming-soon-grid article { min-height:145px; } .coming-soon-grid .chapter-number { margin-bottom:14px; } }
.destination-general { padding-top:15px; }
.destination-general h2 { font-size:2.2rem; }
.photo-destinations { margin-top:65px; padding-block:60px 0; border-top:1px solid #d6c5ad; }
.photo-destination-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:25px; }
.photo-destination-grid article { min-width:0; background:white; }
.photo-destination-image { display:block; overflow:hidden; }
.photo-destination-image img { width:100%; height:200px; object-fit:cover; }
.photo-destination-grid article > div { padding:23px 20px 17px; }
.photo-destination-grid h3 { font-size:2rem; margin:7px 0 12px; }
.photo-destination-grid h3 a { text-decoration:none; }
.photo-destination-grid .kicker { font-size:.59rem; }
.photo-destination-grid .story-link { font-size:.7rem; }
@media(max-width:850px) { .photo-destination-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:850px) { .location-tag-groups { grid-template-columns:1fr 1fr; gap:30px; } .location-tag-groups > section:last-child { grid-column:1/-1; } }
@media(max-width:600px) { .visited-locations { margin-top:38px; padding-top:28px; } .visited-locations h2 { font-size:2.45rem; } .location-tag-groups { grid-template-columns:1fr; gap:28px; } .location-tags a { font-size:.76rem; } .country-photo-collection { padding:18px; } }
@media(max-width:600px) { .photo-destinations { margin-top:45px; padding-top:40px; } .photo-destination-grid { gap:22px 17px; } .photo-destination-image img { height:170px; } .photo-destination-grid article > div { padding:18px 14px 12px; } .photo-destination-grid h3 { font-size:1.8rem; } }
@media(max-width:1000px) { .hero-collage { height:320px; } .mosaic .hero-collage { height:345px; } .polaroid .hero-collage { padding:40px 35px; gap:20px; } .polaroid .collage-photo { height:195px; } .globe-layout { gap:35px; } .destination-summary h2 { font-size:2.8rem; } }
@media(max-width:850px) { .hero-collage,.mosaic .hero-collage { height:auto; grid-template-columns:1fr 1fr; } .straight .collage-frame,.mosaic .collage-frame { height:225px; } .article-strip .hero-collage { height:260px; grid-template-columns:repeat(3,minmax(0,1fr)); } .article-strip .collage-count-1 { grid-template-columns:1fr; } .article-strip .collage-count-2 { grid-template-columns:1.2fr 1fr; } .article-strip .collage-frame { height:260px; } .polaroid .hero-collage { grid-template-columns:1fr 1fr; gap:25px; padding:38px 28px 35px; } .polaroid .collage-photo { height:200px; } .globe-layout { grid-template-columns:1fr; gap:40px; } .globe-card { max-width:620px; width:100%; margin-inline:auto; } .destination-summary { max-width:620px; margin-inline:auto; width:100%; } .destination-summary h2 { max-width:420px; } }
@media(max-width:600px) { .subpage-heading { padding-block:30px 35px; } .subpage-heading h1 { font-size:3rem; } .straight .collage-frame,.mosaic .collage-frame { height:195px; } .polaroid .hero-collage { padding:35px 22px 30px; gap:22px 19px; } .polaroid .collage-frame { padding:8px 8px 13px; } .polaroid .collage-photo { height:155px; } .polaroid figcaption { font-size:.59rem; margin-top:10px; } .article-strip .hero-collage,.article-strip .collage-frame { height:220px; } .article-body-heading h1 { font-size:2.55rem; } .destination-explorer { padding-block:35px 55px; } .explorer-heading h1 { font-size:3.2rem; } .destination-summary h2 { font-size:3rem; } .destination-country { padding:23px; } .destination-country ul { grid-template-columns:1fr; } .destination-country li a { font-size:.86rem; } .destination-article-lists { padding-top:44px; } .globe-rotation { gap:7px; } .globe-rotation input { width:115px; } }
@media(max-width:600px) {
 .article-strip .hero-collage { display:block; height:auto; }
 .article-strip .collage-frame { display:none; height:auto; }
 .article-strip .collage-frame:first-child { display:block; }
 .article-strip .collage-photo { width:100%; height:auto; max-height:400px; object-fit:contain; }
}
@media(max-width:850px) { .straight .collage-count-4 { grid-template-columns:1fr 1fr; height:auto; } }
@media(max-width:600px) { .straight .collage-count-4 .collage-frame:nth-child(-n+2) { height:min(40vw,195px); } }
/* Owner-requested half spacing, scoped to homepage chapters/collections only. */
.home-relax.section-space,.home-intro.section-space,.home-adventure.section-space,.home-journal.section-space,.home-more-stories.section-space,.gallery-preview.section-space { padding-block:44px; }
.destination-band { padding-block:29px; }
@media(max-width:600px) { .home-relax.section-space,.home-intro.section-space,.home-adventure.section-space,.home-journal.section-space,.home-more-stories.section-space,.gallery-preview.section-space { padding-block:27px; } .destination-band { padding-block:21.5px; } }
/* Retain the restored 1340px/1.6:1 reference, then apply the owner's explicit
   10% enlargement to all three body panels; hero geometry is unchanged. */
@media(min-width:1101px) {
 .home-intro-layout,.home-adventure-layout { --whale-reference-width:min(793.85px,calc((100vw - 130px) / 2.6 * 1.6)); --body-media-width:calc(var(--whale-reference-width) * 1.1); width:min(1620px,calc(100% - 64px)); column-gap:clamp(56px,4.5vw,80px); grid-template-rows:clamp(627px,48.4vw,704px) auto; }
 .home-intro-layout { grid-template-columns:var(--body-media-width) minmax(0,1fr); }
 .home-adventure .home-adventure-layout { grid-template-columns:minmax(0,1fr) var(--body-media-width); }
 .home-relax-layout { grid-template-columns:minmax(0,1fr) var(--body-media-width); }
 .home-journal > .home-section-inner,.home-more-stories > .home-section-inner,.gallery-preview { width:min(1620px,calc(100% - 64px)); }
 .adventure-copy > div > p:not(.kicker) { max-width:560px; }
}
@media(max-width:1100px) { .home-relax .intro-photo,.home-intro-layout .intro-photo,.home-adventure .intro-photo { width:min(748px,110%); max-width:none; justify-self:center; margin-inline:0; } }
/* Warm neutral reference: Aman Stories' verified #F3EEE7 .bg-primary.
   Baby-blue-first alternation is the owner's travel palette, not a copied layout. */
.home-relax,.home-adventure,.destination-band,.gallery-band { background:#eef7fd; }
.home-intro,.home-journal,.home-more-stories { background:#f3eee7; }
@media print { .site-header,.site-footer,.breadcrumbs,.article-outline,.article-topics,.search-dialog,.video-play,.hero-collage,.globe-controls { display:none; } .container,.reading-column { width:100%; max-width:none; } body { color:black; background:white; font-size:11pt; } .article-shell,.page-shell { padding:0; } h1 { font-size:26pt!important; } h2 { font-size:20pt!important; } h3 { font-size:15pt!important; } }
