/* Editorial sections share the site's navy, warm paper and restrained gold. */
.planning-section{padding-top:70px;padding-bottom:70px}
.planning-section>h2,.quote-section h2{font:400 clamp(32px,4vw,54px)/1.15 'Playfair Display',Georgia,serif;letter-spacing:-.025em;max-width:900px;margin:14px 0 34px}
.planning-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.planning-card{display:flex;flex-direction:column;border:1px solid var(--line);background:#fff;padding:29px;min-width:0}
a.planning-card{transition:border-color .2s,box-shadow .2s}
a.planning-card:hover{border-color:var(--gold);box-shadow:0 8px 22px #1024360d}
.planning-card h3,.team-card h3{font:400 28px/1.2 'Playfair Display',Georgia,serif;margin:16px 0}
.planning-card p{font-size:15px;line-height:1.8;color:var(--muted);margin:0 0 22px}
.text-link{display:inline-block;font-size:13px;border-bottom:1px solid var(--gold);padding-bottom:5px;align-self:flex-start;margin-top:auto}
.planning-steps{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;padding:0;margin:30px 0}
.planning-steps li{border-top:1px solid var(--gold);padding-top:20px}
.planning-steps li>span{font:italic 24px Georgia,serif;color:var(--gold)}
.planning-steps h3{font-size:18px;font-weight:500;line-height:1.35}
.planning-steps p,.planning-note{color:var(--muted);font-size:14px;line-height:1.8}
.planning-note{margin-top:24px;max-width:860px}
.planning-note a,.guide-copy a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.journey-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 35px;margin:0}
.journey-facts>div{padding:20px 0;border-top:1px solid var(--line)}
.journey-facts dt{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#70522e;margin-bottom:8px}
.journey-facts dd{font-size:17px;margin:0;line-height:1.7}
.quote-section{background:var(--cream);padding:70px 0}
.quote-intro{max-width:880px;color:var(--muted);font-size:17px;line-height:1.85;margin-bottom:35px}
.quote-section .planning-card{background:transparent;border:0;border-left:1px solid #cdc8bb;padding-top:0;padding-bottom:0}
.quote-section .planning-card h3{margin-top:0}
.quote-section .solid-link{margin-top:15px}
.route-faq{max-width:960px}
.faq-item{border-bottom:1px solid var(--line);padding:19px 0}
.faq-item summary{cursor:pointer;font-size:18px;font-weight:500;line-height:1.6;padding-right:20px}
.faq-item p{max-width:820px;color:var(--muted);line-height:1.85;margin-bottom:6px}
summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}
.breadcrumbs{padding-top:20px;padding-bottom:20px}
.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:6px 12px;list-style:none;margin:0;padding:0;font-size:12px;color:#526369}
.breadcrumbs li+li:before{content:'/';padding-right:12px;color:#97713f}
.breadcrumbs a:hover{text-decoration:underline}
.guide-hero h1{font-size:clamp(40px,6vw,80px);max-width:1000px}
.travel-guide-hero{background-color:#173747;background-image:linear-gradient(90deg,rgba(8,29,44,.76),rgba(8,29,44,.22) 82%),var(--guide-image);background-size:cover;background-position:center,center 46%}
.travel-guide-hero .detail-hero-inner{min-height:500px}
.travel-guide-hero h1{max-width:760px}
.guide-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:65px;padding-top:45px;padding-bottom:40px;align-items:start}
.guide-toc{background:var(--cream);padding:24px;font-size:14px;position:sticky;top:25px}
.guide-toc ol{margin:14px 0 0;padding-left:18px}
.guide-toc li{padding:8px 0;line-height:1.5}
.guide-toc a:hover{text-decoration:underline}
.guide-copy{min-width:0;max-width:810px}
.guide-copy section{scroll-margin-top:24px;padding-top:30px}
.guide-copy h2{font:400 31px/1.25 'Playfair Display',Georgia,serif;margin:18px 0}
.guide-copy p{font-size:17px;line-height:1.85;color:var(--muted)}
.guide-copy .guide-intro{font-size:20px;color:var(--ink)}
.guide-copy .guide-date{font-size:12px;letter-spacing:.03em;margin-top:0}
.comparison-scroll{overflow-x:auto;margin:30px 0 10px}
.comparison-scroll table{border-collapse:collapse;width:100%;font-size:14px;line-height:1.65;min-width:460px}
.comparison-scroll caption{text-align:left;font:400 25px Georgia,serif;padding:0 0 15px}
.comparison-scroll th,.comparison-scroll td{padding:16px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
.comparison-scroll thead{background:var(--navy);color:#fff}
.comparison-scroll tbody th{font-weight:500;background:var(--cream);min-width:85px}
.team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.team-card{min-width:0}
.team-photo{aspect-ratio:1;overflow:hidden}
.team-photo img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.team-copy{padding:30px 34px 36px}
.team-copy h3{margin:0 0 12px}
.team-card p{line-height:1.8;color:var(--muted);margin:0;max-width:660px}
.team-grid-single{grid-template-columns:1fr}
.team-grid-single .team-card{display:grid;grid-template-columns:minmax(0,44%) minmax(0,1fr);gap:clamp(28px,5vw,82px);align-items:stretch}
.team-grid-single .team-photo{aspect-ratio:1}
.team-grid-single .team-copy{padding:0;display:flex;flex-direction:column}
.team-grid-single .team-copy>p{line-height:1.7;margin-bottom:18px}
.team-contact{margin-top:auto;padding-top:14px;border-top:1px solid #ced7d3}
.team-contact .team-ask-link{display:inline-flex;gap:28px;align-items:center;padding:10px 0;border-bottom:1px solid #aa8051;color:#173344;font-size:13px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.team-contact .team-ask-link span{font-size:20px;font-weight:400;line-height:1}
.team-contact>p{font-size:13px;line-height:1.6;margin-top:14px}
.team-social-contact{max-width:340px;margin-top:10px;gap:12px}
.team-social-contact .social-card{background:transparent;padding:0}
.team-social-contact .qr-frame{max-width:140px;margin-left:0;margin-right:0}
.about-hero{background:#102a3d}
.about-hero-layout{min-height:530px;display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);align-items:center;gap:clamp(35px,5vw,80px);padding-top:55px;padding-bottom:55px}
.about-hero-copy{position:relative;z-index:1}
.about-hero-copy h1{font-size:clamp(58px,5.7vw,92px);margin:22px 0 22px;line-height:1.05}
.about-hero-copy h1 em{color:#d4aa78;font-weight:400}
.about-hero-copy p{font-size:18px;line-height:1.72;max-width:500px}
.about-hero-link{display:inline-flex;justify-content:space-between;align-items:center;gap:35px;margin-top:30px;padding-bottom:12px;border-bottom:1px solid #d4aa78;color:#fff;font-size:12px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.about-hero-link span{font-size:22px;font-weight:400;line-height:1}
.about-hero-mosaic{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:186px 186px;gap:12px;min-width:0}
.about-hero-photo{position:relative;overflow:hidden;margin:0;background:#244455}
.about-hero-photo-main{grid-row:1/3}
.about-hero-photo img{width:100%;height:100%;display:block;object-fit:cover}
.about-hero-photo-main img{object-position:47% center}
.about-hero-photo:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(5,24,34,.55));pointer-events:none}
.about-hero-photo figcaption{position:absolute;z-index:1;left:16px;bottom:13px;color:#fff;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;text-shadow:0 1px 4px #123}
@media(max-width:950px){.about-hero-layout{grid-template-columns:1fr;gap:35px}.about-hero-mosaic{grid-template-rows:200px 200px}.about-hero-copy h1{font-size:clamp(54px,7vw,76px)}}
@media(max-width:680px){.about-hero-layout{padding-top:60px;padding-bottom:50px;min-height:0}.about-hero-copy h1{font-size:clamp(52px,11vw,72px)}.about-hero-copy p{font-size:16px}.about-hero-mosaic{grid-template-rows:128px 128px;gap:7px}.team-social-contact{flex-direction:row}.team-social-contact .social-card{flex-direction:column;align-items:stretch}.team-social-contact .qr-frame{width:100%;flex:none}}
.inquiry-form select{font:inherit;color:var(--ink);width:100%;min-height:46px;border:1px solid #b7c3be;background:#fff;padding:10px}
@media(max-width:680px){.hero-image{background-image:var(--home-mobile-image,var(--home-image))}.destination-detail-hero,.journey-detail-hero{background-image:linear-gradient(90deg,rgba(6,24,36,.79),rgba(6,24,36,.22) 84%),var(--detail-mobile-image,var(--detail-image))}.travel-guide-hero{background-image:linear-gradient(90deg,rgba(8,29,44,.72),rgba(8,29,44,.28) 90%),var(--guide-mobile-image,var(--guide-image));background-position:center,55% center}.travel-guide-hero .detail-hero-inner{min-height:440px}}
@media(min-width:951px){.site-nav{gap:25px}.site-nav>a{white-space:nowrap}.site-nav>a,.site-nav .nav-trigger{font-size:11px;letter-spacing:.12em}}
@media(max-width:950px){.planning-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.planning-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-layout{grid-template-columns:1fr;gap:25px}.guide-toc{position:static}.guide-copy{max-width:100%}}
@media(max-width:800px){.team-grid-single .team-card{grid-template-columns:1fr;gap:28px}}
@media(max-width:680px){.planning-section{padding-top:45px;padding-bottom:45px}.planning-grid,.journey-facts{grid-template-columns:1fr}.planning-card{padding:24px}.planning-steps{gap:22px}.planning-steps h3{font-size:16px}.planning-steps p{font-size:13px}.quote-section{padding:45px 0}.quote-section .planning-card{border-left:0;border-top:1px solid var(--line);padding:20px 0 0}.guide-layout{padding-top:20px}.guide-copy h2{font-size:27px}.guide-copy p{font-size:16px}.guide-copy .guide-intro{font-size:18px}.breadcrumbs{padding-top:15px;padding-bottom:15px}.faq-item summary{font-size:16px}.guide-hero .detail-hero-inner{min-height:360px}.guide-hero h1{font-size:42px}}
@media(max-width:680px){.team-grid{grid-template-columns:1fr}.team-copy,.team-grid-single .team-copy{padding:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
