@charset "UTF-8";
:root{--navy:#142640;--ink:#1c2b3d;--muted:#52616b;--gold:#b88b4f;--gold-light:#eed6af;--paper:#faf9f6;--soft:#f0f1ee;--line:#cbd1d3;--error:#a02323;--white:#fff;--max:1160px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:120px}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.65 Arial,Helvetica,sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-underline-offset:4px}a:hover{text-decoration-thickness:2px}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #95621f;outline-offset:4px}img{max-width:100%;display:block}h1,h2,h3,p,figure{margin-top:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.15}h1{font-size:clamp(2.3rem,4.8vw,4.5rem);letter-spacing:-.035em;margin-bottom:1.25rem}h2{font-size:clamp(1.85rem,3.2vw,2.85rem);letter-spacing:-.02em;margin-bottom:1.15rem}h3{font-size:1.5rem;margin-bottom:.6rem}p{margin-bottom:1.1rem}ul,ol{padding-left:1.3rem}li+li{margin-top:.45rem}button{border-radius:0}hr{border:0;border-top:1px solid var(--line);margin:2rem 0}
.wrap{width:min(var(--max),calc(100% - 64px));margin-inline:auto}.section{padding:72px 0}.section.alt{background:var(--soft)}.section.dark{background:var(--navy);color:#fff}.section.dark .muted{color:#dbe2e6}.section.dark .eyebrow{color:var(--gold-light)}.section.dark .btn{background:var(--gold-light);border-color:var(--gold-light);color:var(--navy)}.section-head{max-width:730px;margin-bottom:32px}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-weight:700;font-size:.75rem;color:#765629;margin-bottom:1rem}.lead{font-size:1.15rem;line-height:1.65;max-width:700px}.muted{color:var(--muted)}.small{font-size:.88rem}.text-link{display:inline-flex;align-items:center;min-height:44px;font-weight:700}.actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:24px}.btn{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:12px 22px;background:var(--navy);color:#fff;border:1px solid var(--navy);text-decoration:none;font-weight:700;font-size:.94rem;line-height:1.35;text-align:center}.btn:hover{background:#263f5a}.btn.secondary{background:transparent;color:var(--navy);border-color:#81909c}.btn.secondary:hover{background:#e8ebeb}.btn.text{background:transparent;color:var(--ink);border-color:transparent;text-decoration:underline}.btn:disabled{cursor:wait;opacity:.7}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:center}.stack>*+*{margin-top:24px}.narrow{max-width:760px}.flow-note{max-width:640px}.list-clean{list-style:none;padding:0;margin:0}.list-clean li{padding:14px 0;border-bottom:1px solid var(--line)}.tag{font-size:.76rem;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}
.reviewbar{font-size:.75rem;line-height:1.5;padding:7px 16px;text-align:center;background:#e9e4da;color:#354457}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.98);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;gap:22px;min-height:88px}.brand{flex:none;width:164px}.brand img{width:164px;height:65px;object-fit:contain}.nav{display:flex;gap:22px;align-items:center;margin-left:auto}.nav a{display:inline-flex;align-items:center;min-height:44px;font-size:.86rem;text-decoration:none;white-space:nowrap}.nav a[aria-current=page]{text-decoration:underline;text-decoration-color:#95621f;text-decoration-thickness:2px}.header-cta{white-space:nowrap;font-size:.86rem;padding:12px 16px}.languages{display:flex;gap:0;flex:none}.languages button{background:transparent;border:1px solid transparent;min-height:44px;min-width:44px;color:var(--ink);font-size:.82rem}.languages button[aria-pressed=true]{border-color:var(--line);font-weight:700;text-decoration:underline;text-underline-offset:5px}.menu-toggle{display:none;background:#fff;border:1px solid var(--line);min-height:44px;padding:8px 12px}.skip{position:fixed;top:-100px;left:16px;z-index:100;background:#fff;color:var(--navy);padding:12px 20px}.skip:focus{top:12px}.site-footer{background:#e9edea;padding:56px 0 24px}.footer-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr;gap:48px}.footer-grid a{display:block;min-height:44px;padding:8px 0}.footer-brand{max-width:340px}.footer-brand img{width:155px;mix-blend-mode:multiply;margin-bottom:20px}.footer-bottom{margin-top:32px;padding-top:20px;border-top:1px solid #b8c1c3;display:flex;justify-content:space-between;gap:24px;font-size:.8rem}.review-tools{background:#fff;border-top:1px solid var(--line);padding:16px 0;color:var(--muted);font-size:.86rem}.review-tools summary{cursor:pointer;min-height:44px;padding:10px 0;font-family:Arial,Helvetica,sans-serif}.review-tools ul{max-width:850px}.mobile-cta{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.hero{position:relative;isolation:isolate;display:grid;place-items:center;min-height:670px;overflow:hidden;background:#273e50;text-align:center;color:#fff;padding:96px 32px}.hero-media{position:absolute;inset:0;z-index:-2;background:linear-gradient(135deg,#6c7980,#384d5a)}.hero-media:before,.hero-media:after{content:"";position:absolute;width:150%;height:1px;background:#9da9ae;top:50%;left:-25%;transform:rotate(27deg)}.hero-media:after{transform:rotate(-27deg)}.hero:before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(9,24,41,.66)}.hero-copy{max-width:860px}.hero h1{font-size:clamp(2.65rem,5.7vw,5rem)}.hero .eyebrow{color:var(--gold-light)}.hero .lead{max-width:690px;margin-inline:auto;color:#f5f6f8}.hero .actions{justify-content:center}.hero .btn{background:var(--gold-light);border-color:var(--gold-light);color:var(--navy)}.hero .btn:hover{background:#ffe6bf}.hero .btn.secondary{background:transparent;color:#fff;border-color:#dfe5e9}.hero .btn.secondary:hover{background:#263e55}.hero .small{color:#e0e6eb;margin-top:20px}.hero-label{position:absolute;bottom:12px;left:20px;right:20px;font-size:.69rem;letter-spacing:.08em;color:#d7e0e5}.promise-strip{background:#fff;border-bottom:1px solid var(--line)}.promise-strip ul{display:flex;justify-content:center;align-items:flex-start;gap:clamp(24px,4vw,48px);width:fit-content;max-width:calc(100% - 64px);list-style:none;margin:0 auto;padding:26px 0 24px;font-size:.88rem}.promise-strip li{display:flex;flex:0 1 220px;flex-direction:column;align-items:center;gap:11px;margin:0;text-align:center;line-height:1.45}.promise-icon{width:48px;height:48px;object-fit:contain;flex:none}.media{position:relative;display:grid;place-items:center;aspect-ratio:4/3;margin:0;background:#e0e3e0;border:1px solid #bbc2c5;overflow:hidden;color:#495862;text-align:center}.media:before,.media:after{content:"";width:150%;height:1px;background:#b7c0c4;position:absolute;top:50%;left:-25%;transform:rotate(26deg)}.media:after{transform:rotate(-26deg)}.media figcaption{z-index:1;background:#edf0edf2;max-width:90%;padding:10px 18px;font-size:.82rem}.media figcaption span{display:block;font-size:.67rem;letter-spacing:.12em;margin-bottom:6px}.media.wide{aspect-ratio:16/9}.media.portrait{aspect-ratio:4/5}.card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--line);background:#fff}.card .media{border:0;border-bottom:1px solid var(--line)}.card-body{padding:24px;display:flex;flex:1;flex-direction:column;align-items:flex-start}.card h3{margin-top:8px;font-size:1.5rem}.card h3 a{text-decoration:none}.card h3 a:hover{text-decoration:underline}.card p{font-size:.95rem}.card .route{font-size:.79rem;line-height:1.7;color:var(--muted)}.card-foot{margin-top:auto;padding-top:8px;width:100%}.card-foot p{font-size:.82rem;margin-bottom:4px}.card-foot a{min-height:44px;display:inline-flex;align-items:center;font-weight:700}.step-number{display:block;font:2.4rem Georgia,serif;color:#805d2b;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:22px}.value-card{border-top:2px solid #ae8b59;padding-top:24px}.value-card p{color:var(--muted)}.destination-links{display:grid;grid-template-columns:repeat(2,1fr);gap:0 24px}.destination-links a{padding:14px 0;border-bottom:1px solid var(--line);display:block}.cta-panel{padding:40px;background:#fff;border:1px solid var(--line)}
.page-intro{padding:48px 0 40px}.breadcrumb{font-size:.8rem;color:var(--muted);margin-bottom:28px}.breadcrumb ol{list-style:none;display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:0}.breadcrumb li{margin:0}.breadcrumb li+li:before{content:'/';margin-right:8px}.breadcrumb a{display:inline-block;min-height:32px;padding:4px 0}.detail-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:40px;align-items:start}.detail-side{border:1px solid var(--line);padding:28px;background:#fff}.detail-side h2{font-size:1.6rem}.detail-side .btn{width:100%}.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding:24px 0;margin:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.facts dt{color:var(--muted);font-size:.78rem;margin-bottom:6px}.facts dd{margin:0;font-weight:700;font-size:.93rem}.fit{margin-top:20px}.jump-nav{display:flex;flex-wrap:wrap;gap:8px 24px;border-bottom:1px solid var(--line);padding:20px 0}.jump-nav a{min-height:44px;display:flex;align-items:center;font-size:.88rem}.route-stops{padding:20px;background:var(--soft);font-size:.93rem}.gallery{display:grid;grid-template-columns:1.7fr 1fr;gap:18px;margin-top:24px}.gallery .media{height:100%;aspect-ratio:4/3}.accordion details{border-top:1px solid var(--line)}.accordion details:last-child{border-bottom:1px solid var(--line)}.accordion summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:64px;padding:16px 0;cursor:pointer;list-style:none;font-weight:700}.accordion summary::-webkit-details-marker{display:none}.accordion summary:after{content:'+';font-size:1.4rem;font-weight:400;flex:none}.accordion details[open]>summary:after{content:'−'}.accordion .answer{padding:0 24px 20px 0;max-width:820px}.day-label{font-size:.75rem;display:block;color:#75572f;margin-bottom:4px}.day-tools{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:16px}.day-tools button{min-height:44px;border:1px solid var(--line);background:#fff;padding:8px 16px}.filters{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:16px}.filters button{min-height:46px;background:#fff;border:1px solid #94a1a7;padding:10px 18px;color:var(--ink)}.filters button[aria-pressed=true]{background:var(--navy);color:#fff;border-color:var(--navy)}.filter-layout{display:flex;gap:28px;flex-wrap:wrap;align-items:end}.filter-layout label{margin:0}.filter-layout select{width:auto;min-width:180px}.result-count{margin:18px 0 28px;color:var(--muted);font-size:.9rem}.empty{padding:40px;border:1px dashed #94a1a7;background:#fff}.article{max-width:760px}.article h2{margin-top:40px}.article p{font-size:1.06rem}.inline-note{padding:18px 22px;background:#edf0ed;border-left:3px solid #8c6a3c;font-size:.92rem}.related-heading{display:flex;justify-content:space-between;align-items:end;gap:24px}
.form-layout{display:grid;grid-template-columns:minmax(0,720px) minmax(240px,1fr);gap:40px;align-items:start}.form-card{padding:36px;border:1px solid #bfc8cc;background:#fff}.form-card h2{font-size:1.95rem}.form-card h3{font-size:1.4rem}.form-progress{display:flex;gap:20px;list-style:none;padding:0;margin:0 0 30px}.form-progress li{flex:1;margin:0;padding-top:12px;border-top:3px solid #d0d6d9;font-size:.84rem}.form-progress [aria-current=step]{border-color:#82602f;font-weight:700}.form-card label,.field-label{display:block;font-weight:700;margin:24px 0 7px;font-size:.95rem}.form-card input:not([type=checkbox]),.form-card select,.form-card textarea{width:100%;min-height:48px;padding:12px;border:1px solid #86969f;background:#fff;color:var(--ink);border-radius:0}.form-card textarea{resize:vertical}.hint{color:var(--muted);font-size:.85rem;margin:0 0 9px}.form-card fieldset{border:0;padding:0;margin:22px 0}.form-card legend{font-weight:700;margin-bottom:10px}.check-option{display:flex!important;align-items:flex-start;gap:12px;font-weight:400!important;margin:12px 0!important;min-height:44px;padding:6px 0}.check-option input{width:20px;height:20px;flex:none;margin-top:3px;accent-color:var(--navy)}.optional{font-weight:400;color:var(--muted);font-size:.83rem}.form-actions{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:28px}.form-actions .btn{flex:1}.trip-summary{background:var(--soft);padding:20px;margin-bottom:22px}.trip-summary dl{margin:0}.trip-summary div{display:grid;grid-template-columns:1fr 2fr;gap:18px;padding:8px 0;font-size:.88rem;border-bottom:1px solid var(--line)}.trip-summary dt{color:var(--muted)}.trip-summary dd{margin:0;overflow-wrap:anywhere}.error-summary{padding:20px;border:2px solid var(--error);margin-bottom:24px;color:var(--error)}.error-summary h3{font-family:Arial,Helvetica,sans-serif;font-size:1rem;font-weight:700}.field-error{color:var(--error);font-weight:700;font-size:.88rem;margin:7px 0 0}.form-card [aria-invalid=true]{border:2px solid var(--error)!important}.privacy-note{font-size:.86rem;padding:16px;background:var(--soft);margin-top:24px}.form-aside{padding-top:20px}.form-aside h2{font-size:1.5rem}.form-aside ol{padding-left:22px}.form-aside li{margin:0 0 20px}.form-aside .media{margin-top:28px}.confirmation{padding:70px 0 90px}.confirmation .symbol{font-size:2rem;color:#516751;border:1px solid #8b9c8b;border-radius:50%;width:64px;height:64px;display:grid;place-items:center;margin-bottom:28px}.optional-details{margin-top:20px;border-top:1px solid var(--line);padding-top:12px}.optional-details summary{min-height:44px;padding:10px 0;cursor:pointer;font-weight:700}.notice-demo{font-size:.86rem;border-left:3px solid #8c6a3c;background:#f7f1e6;padding:14px 18px}
@media(max-width:1080px){.header-inner{gap:12px}.nav{gap:14px}.nav a{font-size:.8rem}.brand,.brand img{width:135px}.header-cta{padding:10px 12px}.languages button{min-width:38px}.wrap{width:calc(100% - 48px)}.split{gap:32px}}
@media(max-width:960px){.menu-toggle{display:block;margin-left:auto}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:20px 24px;margin:0;box-shadow:0 8px 12px #14264015;max-height:70vh;overflow:auto}.nav.open{display:flex;flex-direction:column;align-items:stretch;gap:4px}.nav a{font-size:1rem;min-height:48px;padding:8px}.header-inner{min-height:78px}.grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-layout,.form-layout{grid-template-columns:minmax(0,1fr) minmax(260px,.7fr);gap:24px}.card-body{padding:20px}}
@media(max-width:740px){html{scroll-padding-top:100px}body.has-mobile-cta{padding-bottom:88px}.wrap{width:calc(100% - 36px)}.header-cta{display:none}.header-inner{gap:6px;min-height:72px}.brand,.brand img{width:125px}.brand img{height:56px}.languages button{min-width:40px}.menu-toggle{font-size:.8rem;padding:8px 10px}.section{padding:48px 0}.hero{min-height:610px;padding:72px 18px 80px}.hero .lead{font-size:1.05rem}.hero h1{font-size:clamp(2.55rem,10vw,3.8rem)}.hero .actions{flex-direction:column;align-items:stretch;margin-inline:auto;max-width:350px}.hero-label{font-size:.61rem}.promise-strip ul{display:grid;grid-template-columns:1fr;justify-content:center;gap:20px;width:100%;max-width:none;padding:20px 0;font-size:.85rem}.grid,.grid.two,.grid.four,.split,.detail-layout,.form-layout{grid-template-columns:1fr}.grid{gap:24px}.media.portrait{aspect-ratio:4/3}.page-intro{padding:30px 0}.facts{gap:14px;grid-template-columns:1fr 1fr}.facts>div:last-child{grid-column:1/-1}.detail-side{padding:24px}.form-card{padding:24px 18px}.form-aside{padding-top:0}.form-aside .media{display:none}.footer-grid{grid-template-columns:1fr 1fr;gap:28px}.footer-brand{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:6px}.cta-panel{padding:26px}.destination-links{grid-template-columns:1fr}.mobile-cta:not([hidden]){display:block;position:fixed;z-index:30;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--line);padding:10px 18px calc(10px + env(safe-area-inset-bottom))}.mobile-cta .btn{width:100%}.gallery{grid-template-columns:1fr 1fr}.gallery .media{aspect-ratio:1}.related-heading{align-items:start;flex-direction:column;gap:0}.filters{gap:8px}.filters button{font-size:.86rem;padding:9px 12px}.filter-layout{gap:16px}.filter-layout select{width:100%}.trip-summary div{grid-template-columns:1fr}.confirmation{padding:44px 0}.form-actions{flex-direction:column}.form-actions .btn{width:100%}}
@media(max-width:400px){.brand,.brand img{width:100px}.languages button{min-width:44px}.menu-toggle{padding:8px;font-size:.76rem}.header-inner{gap:5px}.hero h1{font-size:2.55rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
/* Tour pages: a distinct promise, immersive hero and personal planning. */
.journey-breadcrumb{padding:20px 0;background:var(--paper)}
.journey-breadcrumb .breadcrumb{margin:0}
.journey-hero{min-height:700px;padding:72px 32px 76px}
.journey-hero .hero-copy{max-width:980px}
.journey-hero h1{font-size:clamp(2.5rem,4.9vw,4.3rem);margin-bottom:24px}
.journey-name{display:block;font:400 1.15rem/1.5 Arial,Helvetica,sans-serif;letter-spacing:.01em;color:var(--gold-light);margin-bottom:18px}
.journey-headline{display:block;text-wrap:balance}
.journey-hero .lead{max-width:780px}
.journey-service-note{font-size:.8rem;line-height:1.6;color:#dbe2e6;margin:14px 0 0}
.journey-overview{background:#fff}
.journey-facts{grid-template-columns:1fr 1.4fr 2.2fr;border-top:0;padding:28px 0}
.journey-facts dd{font-weight:400}
.journey-overview .jump-nav{border:0;gap:8px 28px;padding:8px 0}
.journey-story{gap:56px;align-items:center}
.journey-story .lead{font-size:1.08rem}
.journey-story .fit{border-top:1px solid var(--line);padding-top:20px;font-size:.92rem}
.proposal-list{padding-left:20px;font-size:.9rem;margin:20px 0 26px}
.detail-side>.small:last-child{margin:14px 0 0}
.journey-moments .card-body{padding-top:20px}
.journey-moments h3{margin-top:12px}
.journey-moments p{margin-bottom:0;color:var(--muted)}
.journey-benefits{list-style:none;padding:0;margin:24px 0 0}
.journey-benefits li{border-top:1px solid var(--line);padding:16px 0;margin:0}
.journey-benefits strong,.journey-benefits span{display:block}
.journey-benefits strong{font-size:.95rem;margin-bottom:5px}
.journey-benefits span{color:var(--muted);font-size:.92rem}
.journey-closing-action .small{max-width:340px;color:#dbe2e6;margin:18px 0 0}
@media(max-width:960px){.journey-story{gap:28px}.journey-facts{grid-template-columns:1fr 1.2fr 1.7fr}}
@media(max-width:740px){.journey-breadcrumb{padding:16px 0}.journey-hero{min-height:0;padding:48px 18px 68px}.journey-hero h1{font-size:clamp(2.3rem,8.4vw,3.8rem)}.journey-name{font-size:1rem;margin-bottom:18px}.journey-hero .lead{font-size:1.02rem}.journey-hero .actions{max-width:380px}.journey-hero .small{font-size:.82rem}.journey-service-note{font-size:.76rem}.journey-facts{grid-template-columns:1fr 1fr;gap:16px;padding:22px 0}.journey-facts>div:last-child{grid-column:1/-1}.journey-overview .jump-nav{gap:0 22px;padding:12px 0}.journey-overview .jump-nav a{font-size:.83rem}.journey-story{grid-template-columns:1fr}.journey-closing-action .btn{width:100%}}

@media print{.site-header,.reviewbar,.review-tools,.mobile-cta,.site-footer,.skip{display:none!important}.section{padding:24px 0}.wrap{width:100%}.hero{min-height:380px}.card,.form-card,.media{break-inside:avoid}body{padding:0!important;font-size:11pt}.grid{gap:12px}}
/* Homepage: chosen stays and third-party trust content. */
.home-stays .home-stay-card h3{margin-top:14px}
.home-stay-card .media{aspect-ratio:4/3}
.home-stay-card .card-body{padding-top:18px}
.home-stays-cta{display:grid;grid-template-columns:1fr auto;align-items:center;gap:28px;margin-top:30px;padding:28px 32px;background:#fff;border:1px solid var(--line)}
.home-stays-cta h3{font-size:1.4rem;margin-bottom:8px}
.home-stays-cta p{max-width:720px;margin:0;color:var(--muted);font-size:.91rem}
.home-stays-cta .actions{margin-top:0}
.tripadvisor-home{background:#f0f1ee}
.tripadvisor-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;max-width:900px;margin:0 auto 24px}
.tripadvisor-heading h2{margin-bottom:0}
.tripadvisor-wordmark{font:bold 1.35rem/1.2 Arial,Helvetica,sans-serif;letter-spacing:-.045em;color:#20292c;white-space:nowrap}
.tripadvisor-slider{max-width:900px;margin-inline:auto;background:#fff;border:1px solid var(--line)}
.tripadvisor-review{min-height:270px;padding:32px 42px 28px}
.tripadvisor-review:not([hidden]){animation:tripadvisor-slide-in .35s ease-out}
@keyframes tripadvisor-slide-in{from{opacity:.4;transform:translateX(18px)}to{opacity:1;transform:translateX(0)}}
.tripadvisor-review[hidden]{display:none}
.tripadvisor-review-number{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.tripadvisor-quote-mark{height:43px;font:4rem/.9 Georgia,serif;color:#a88a5c;margin:12px 0 4px}
.tripadvisor-review-placeholder{font:1.5rem/1.35 Georgia,'Times New Roman',serif;max-width:720px;margin-bottom:15px}
.tripadvisor-review-lines{display:grid;gap:7px;max-width:660px;margin-bottom:22px}
.tripadvisor-review-lines span{display:block;height:8px;background:#e6e9e7}
.tripadvisor-review-lines span:nth-child(2){width:89%}
.tripadvisor-review-lines span:nth-child(3){width:62%}
.tripadvisor-review-source{font-size:.8rem;color:var(--muted);margin:0}
.tripadvisor-controls{display:flex;align-items:center;justify-content:space-between;gap:18px;border-top:1px solid var(--line);padding:12px 20px}
.tripadvisor-controls-left{display:flex;align-items:center;gap:12px}
.tripadvisor-controls button{min-width:44px;min-height:44px;border:1px solid var(--line);background:#fff;color:var(--navy)}
.tripadvisor-controls button:hover{background:var(--soft)}
.tripadvisor-count{font-size:.8rem;letter-spacing:.12em;color:var(--muted);min-width:60px;text-align:center}
.tripadvisor-controls .tripadvisor-toggle{padding:8px 14px;font-size:.82rem;min-width:94px}
.tripadvisor-caption{max-width:900px;margin:14px auto 0;color:var(--muted);font-size:.77rem}
@media(max-width:740px){.home-stays-cta{grid-template-columns:1fr;gap:24px;padding:22px}.home-stays-cta .btn{width:100%}.tripadvisor-heading{align-items:start;flex-direction:column;gap:8px}.tripadvisor-review{min-height:280px;padding:24px 22px}.tripadvisor-review-placeholder{font-size:1.3rem}.tripadvisor-controls{padding:10px 12px}}
/* Blog index: one clear starting article followed by two practical guides. */
.blog-feature-section{padding-top:24px}
.blog-feature{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);background:#fff;border:1px solid var(--line);align-items:stretch}
.blog-feature .media{height:100%;min-height:350px;aspect-ratio:auto;border:0;border-right:1px solid var(--line)}
.blog-feature-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:42px}
.blog-feature-copy h2{font-size:clamp(1.85rem,3vw,2.7rem)}
.blog-feature-copy h2 a{text-decoration:none}
.blog-feature-copy h2 a:hover{text-decoration:underline}
.blog-feature-copy .text-link{margin-top:10px}
.blog-grid .media{aspect-ratio:16/9}
@media(max-width:740px){.blog-feature{grid-template-columns:1fr}.blog-feature .media{height:auto;min-height:0;aspect-ratio:16/9;border-right:0;border-bottom:1px solid var(--line)}.blog-feature-copy{padding:26px}.blog-feature-copy h2{font-size:1.85rem}}
/* Home hotel showcase: approved property photos and logos will replace these slots. */
.hotel-showcase-card .media{aspect-ratio:4/3}
.hotel-showcase-card .card-body{min-height:210px;padding-top:22px}
.hotel-logo-slot{display:grid;place-items:center;width:155px;height:64px;border:1px dashed #96a1a5;background:#f5f6f3;color:var(--muted);font-size:.7rem;font-weight:700;letter-spacing:.1em;text-align:center}
.hotel-showcase-card .tag{margin-top:18px}
.hotel-showcase-card h3{font-size:1.35rem;margin-top:5px}
.hotel-showcase-card .hotel-location{font-size:.88rem;color:var(--muted);margin:0}

/* Final Home action for desktop; mobile already has the fixed Plan my trip button. */
.home-desktop-cta{text-align:center;padding-block:52px}
.home-desktop-cta .wrap{display:grid;justify-items:center;gap:20px}
.home-desktop-cta h2{max-width:780px;margin:0}
.home-desktop-cta .btn{min-width:190px}
@media(max-width:740px){.home-desktop-cta{display:none}}

/* Home journey cards: portrait carousel with an accessible flip reveal. */
.home-journeys-section>.wrap{width:min(1680px,calc(100% - 64px))}
.home-journeys-section .section-head{max-width:none;margin-bottom:30px}
.home-journeys-section .section-head h2{text-align:center}
.home-journeys-section .section-head p{max-width:730px}
.home-journey-carousel{position:relative;width:100vw;margin-left:calc(50% - 50vw)}
.home-journey-track{display:flex;gap:2px;overflow-x:auto;overflow-y:hidden;padding:4px 0 20px;background:#fff;scroll-snap-type:x mandatory;scroll-padding-inline:0;scrollbar-width:none;-ms-overflow-style:none;overscroll-behavior-x:contain;touch-action:pan-x;cursor:grab;user-select:none;-webkit-user-select:none}
.home-journey-track:focus-visible{outline:3px solid #95621f;outline-offset:4px}
.home-journey-track::-webkit-scrollbar{display:none;width:0;height:0}
.home-journey-track.is-dragging{cursor:grabbing;scroll-snap-type:none;scroll-behavior:auto}
.home-journey-track img{ -webkit-user-drag:none }
.home-journey-card{flex:0 0 clamp(280px,22vw,390px);height:590px;min-width:0;perspective:1500px;scroll-snap-align:start}
.home-journey-card-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .78s cubic-bezier(.2,.68,.25,1)}
.home-journey-card.is-flipped .home-journey-card-inner{transform:rotateY(180deg)}
.home-journey-face{position:absolute;inset:0;overflow:hidden;backface-visibility:hidden;-webkit-backface-visibility:hidden}
.home-journey-front{background:transparent}
.home-journey-front-button{display:flex;width:100%;height:100%;flex-direction:column;align-items:stretch;padding:0;border:0;background:transparent;color:var(--ink);text-align:left}
.home-journey-front-button:focus-visible{outline:3px solid #95621f;outline-offset:4px}
.home-journey-photo{position:relative;display:block;flex:1;min-height:0;overflow:hidden;background:#142640}
.home-journey-photo>img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.68,.25,1)}
.home-journey-card:hover .home-journey-photo>img{transform:scale(1.035)}
.home-journey-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:28px;background:linear-gradient(145deg,#d8ddd9,#bec9c5);color:#364950;text-align:center}
.home-journey-placeholder:before,.home-journey-placeholder:after{position:absolute;left:-10%;top:50%;width:120%;height:1px;background:#aeb9b7;content:"";transform:rotate(25deg)}
.home-journey-placeholder:after{transform:rotate(-25deg)}
.home-journey-placeholder>span,.home-journey-placeholder>strong{position:relative;z-index:1}
.home-journey-placeholder>span{font-size:.68rem;letter-spacing:.14em}
.home-journey-placeholder>strong{max-width:240px;padding:11px 14px;background:#edf0edf2;font-size:.85rem;font-weight:400;line-height:1.5}
.home-journey-caption{display:flex;min-height:92px;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 2px 0}
.home-journey-title{font:400 clamp(1.25rem,1.7vw,1.55rem)/1.2 Georgia,'Times New Roman',serif}
.home-journey-discover{flex:none;padding-top:5px;color:var(--muted);font-size:.73rem;letter-spacing:.04em;text-transform:uppercase}
.home-journey-back{display:flex;flex-direction:column;padding:31px 28px 26px;background:var(--navy);color:#fff;transform:rotateY(180deg)}
.home-journey-back .tag{margin:10px 0 12px;color:var(--gold-light);font-size:.69rem}
.home-journey-back h3{margin:0 0 14px;color:#fff;font-size:clamp(1.45rem,2vw,1.8rem);line-height:1.15}
.home-journey-summary{margin:0 0 14px;color:#f0f3f5;font-size:.91rem;line-height:1.52}
.home-journey-route,.home-journey-fit{margin:0 0 12px;color:#dce4e9;font-size:.8rem;line-height:1.5}
.home-journey-route strong,.home-journey-fit strong{color:#fff}
.home-journey-foot{margin-top:auto;padding-top:14px;border-top:1px solid #ffffff45}
.home-journey-foot p{margin:0 0 9px;color:#dce4e9;font-size:.79rem}
.home-journey-foot a{display:inline-flex;min-height:44px;align-items:center;gap:8px;color:#fff;font-weight:700;text-underline-offset:5px}
.home-journey-foot a:hover{color:var(--gold-light)}
.home-journey-controls{display:flex;justify-content:flex-end;gap:8px}
.home-journey-controls button{display:grid;width:44px;height:44px;place-items:center;border:1px solid var(--line);background:#fff;color:var(--navy);font-size:1.15rem}
.home-journey-controls button:hover:not(:disabled){background:var(--navy);color:#fff}
.home-journey-controls button:disabled{cursor:default;opacity:.42}
@media(max-width:740px){
  .home-journeys-section>.wrap{width:calc(100% - 36px)}
  .home-journey-track{gap:2px;padding:4px 0 16px}
  .home-journey-card{flex-basis:min(82vw,360px);height:570px}
  .home-journey-caption{min-height:92px;padding-top:14px}
  .home-journey-title{font-size:1.34rem}
  .home-journey-discover{font-size:.66rem}
  .home-journey-back{padding:28px 23px 22px}
  .home-journey-back h3{font-size:1.5rem}
  .home-journey-summary{font-size:.87rem;line-height:1.48}
  .home-journey-route,.home-journey-fit{font-size:.77rem}
  .home-journey-foot{margin-top:16px}
}
@media(prefers-reduced-motion:reduce){
  .home-journey-track{scroll-behavior:auto}
  .home-journey-card-inner,.home-journey-photo>img{transition:none}
}
