/* styles.css */
:root{--ivory:#f7f3eb;--navy:#102c38;--muted:#56636a;--sand:#d8c5a7;--line:#dcd9d0;--serif:Georgia,'Times New Roman',serif;--sans:'Helvetica Neue',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--ivory);color:var(--navy);font-family:var(--sans);font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;width:100%;object-fit:cover}a:focus-visible,button:focus-visible{outline:3px solid #b06e33;outline-offset:5px}[hidden]{display:none!important}.skip{position:absolute;left:18px;top:-100px;background:var(--ivory);z-index:10;padding:12px}.skip:focus{top:15px}.draft{padding:7px 5%;background:var(--navy);color:#e8dac3;font-size:10px;letter-spacing:1.8px;display:flex;justify-content:space-between}.draft span{letter-spacing:.8px}header{display:flex;justify-content:space-between;align-items:center;padding:22px 5%;height:109px}.brand strong{display:block;font-family:var(--serif);font-size:31px;font-weight:normal;letter-spacing:-.7px;line-height:1.15}.brand span{display:block;font-size:9px;letter-spacing:2.4px;padding-top:7px}.brand i{font-style:normal;color:#9a886e;padding:0 9px}header nav{display:flex;align-items:center;gap:40px;font-size:13px}header nav a:hover,.text-link:hover{color:#896333}.nav-cta{border:1px solid #b9b7b0;padding:11px 20px}.nav-cta span{margin-left:20px}.menu-button{display:none}.hero{height:650px;min-height:560px;position:relative;background:var(--navy);color:var(--ivory);overflow:hidden}.hero img{height:100%;object-position:center 52%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,20,30,.75),rgba(4,20,30,.15) 85%),linear-gradient(0deg,rgba(4,20,30,.55),transparent 35%)}.hero-content{position:absolute;left:7%;right:5%;top:14%;max-width:900px}.eyebrow{font-size:10px;line-height:1.6;font-weight:500;letter-spacing:2px;text-transform:uppercase;margin:0 0 20px}.hero h1{font-family:var(--serif);font-size:clamp(56px,5.9vw,92px);font-weight:normal;line-height:1.05;letter-spacing:-2px;margin:0 0 24px}.dash{position:absolute;clip:rect(0,0,0,0);clip-path:inset(50%);height:1px;width:1px;overflow:hidden;white-space:nowrap}.hero-subtitle{font-size:clamp(29px,3vw,45px);display:block;letter-spacing:-.5px;line-height:1.2;margin-top:22px}.hero-tagline{font-size:14px;letter-spacing:1px;margin:25px 0 32px}.button{display:flex;justify-content:space-between;align-items:center;gap:40px;padding:13px 24px;width:fit-content;font-size:12px;letter-spacing:.3px}.button.light{background:var(--ivory);color:var(--navy)}.button:hover{background:#e3d6c0;color:var(--navy)}.hero-caption{position:absolute;bottom:27px;left:7%;right:5%;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.5px}.wrap{width:86%;max-width:1320px;margin:auto}.intro{display:grid;grid-template-columns:.7fr 1.45fr 1fr;gap:45px;align-items:center;padding:96px 0}.intro h2,h2{font-family:var(--serif);font-size:44px;font-weight:normal;line-height:1.15;letter-spacing:-.8px;margin:0}.intro .eyebrow{align-self:start;margin-top:10px}.intro p:last-child{margin:0;color:var(--muted);font-size:14px;line-height:1.85}.collection{border-top:1px solid var(--line);padding:70px 0 80px}.section-heading{display:flex;justify-content:space-between;gap:50px;align-items:end}.section-heading p:last-child{max-width:430px;color:var(--muted);font-size:14px;margin:0}.section-heading h2{font-size:52px}.filters{display:flex;flex-wrap:wrap;gap:10px;margin:35px 0 20px}.filters button{background:transparent;border:1px solid #bfc2be;border-radius:0;padding:8px 15px;cursor:pointer;font-size:11px;color:var(--navy)}.filters button[aria-pressed=true],.filters button:hover{background:var(--navy);border-color:var(--navy);color:var(--ivory)}.result-count{font-size:11px;color:var(--muted);margin-bottom:24px}.journey-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:50px 27px}.journey-card{display:flex;flex-direction:column}.card-photo{position:relative;display:block;overflow:hidden;aspect-ratio:1.38;background:#d8d7d0}.card-photo img{height:100%;transition:transform .5s}.card-photo:hover img{transform:scale(1.04)}.number{position:absolute;top:14px;left:15px;display:grid;place-content:center;background:var(--ivory);color:var(--navy);width:31px;height:31px;font-size:10px}.photo-arrow{position:absolute;right:16px;bottom:13px;color:white;font-size:29px;text-shadow:0 1px 10px #000}.card-body{padding-top:20px;display:flex;flex-direction:column;flex-grow:1}.card-meta{display:flex;justify-content:space-between;gap:10px;font-size:8px;text-transform:uppercase;letter-spacing:1.05px;color:var(--muted)}.card-body h3{font-family:var(--serif);font-size:27px;font-weight:normal;letter-spacing:-.5px;line-height:1.2;margin:16px 0 12px;min-height:65px}.card-body p{font-size:13px;line-height:1.75;color:var(--muted);margin:0 0 20px}.card-body .route{font-size:11px;line-height:1.5;color:var(--navy);margin-bottom:14px}.text-link{display:flex;gap:20px;justify-content:space-between;width:fit-content;border-bottom:1px solid #ada590;padding-bottom:5px;font-size:11px;letter-spacing:.35px}.card-body .text-link{margin-top:auto}.collection-note{text-align:center;font-size:12px;color:var(--muted);margin:55px auto 0;max-width:720px}.approach{display:grid;grid-template-columns:1fr 1fr;background:#ece5d9}.approach-photo{position:relative;min-height:530px}.approach-photo img{height:100%;position:absolute}.approach-photo span{position:absolute;bottom:25px;left:30px;color:white;font-size:9px;letter-spacing:1.5px;text-shadow:0 0 7px black}.approach-copy{padding:75px 12%}.approach-copy h2{font-size:48px}.approach-copy>p:not(.eyebrow){color:var(--muted);font-size:14px;margin:27px 0}.approach-points{display:flex;flex-wrap:wrap;gap:16px;margin:30px 0;font-size:11px}.approach-points span{border-left:1px solid #a39886;padding-left:12px}.contact{background:var(--navy);color:var(--ivory);padding:78px 7%;display:grid;grid-template-columns:1.4fr 1fr;gap:100px}.contact h2{font-size:51px}.contact p:not(.eyebrow){font-size:14px;max-width:480px;color:#d5d9d9;margin-top:27px}.contact-links{align-self:center;display:flex;flex-direction:column;gap:14px}.contact-links .button{width:100%;max-width:340px}.outline{border:1px solid #a4b0b4;color:var(--ivory)}.contact-links>a:not(.button){font-size:12px}footer{padding:45px 7% 22px}.footer-top{display:flex;justify-content:space-between;align-items:center}.footer-top>a:last-child{font-size:12px}footer>p{color:var(--muted);font-size:11px;max-width:840px;margin:28px 0}.footer-bottom{border-top:1px solid var(--line);padding-top:18px;display:flex;justify-content:space-between;gap:15px;font-size:10px;color:var(--muted)}.journey-hero{height:540px;background:var(--navy);color:var(--ivory);position:relative}.journey-hero img{height:100%}.journey-hero-copy{position:absolute;left:7%;bottom:55px;right:7%;max-width:950px}.back-link{font-size:12px;display:block;margin-bottom:40px}.journey-hero h1{font-family:var(--serif);font-weight:normal;letter-spacing:-1.7px;line-height:1.08;font-size:clamp(40px,4.8vw,70px);margin:0}.journey-facts{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:30px 0;border-bottom:1px solid var(--line)}.journey-facts .eyebrow{display:block;margin:0 0 7px;font-size:9px}.journey-facts strong{font-weight:400;font-size:14px}.journey-intro{padding:70px 0 60px;max-width:920px}.journey-intro h2{font-size:32px;line-height:1.45}.chapters{max-width:920px}.chapters article{display:grid;grid-template-columns:80px 1fr;padding:32px 0;border-top:1px solid var(--line)}.chapter-number{color:#967e5a;font-family:var(--serif);font-size:29px}.chapters h2{font-size:29px;letter-spacing:-.4px}.chapters p{color:var(--muted);font-size:15px;line-height:1.9;max-width:730px;margin:16px 0 0}.planning{max-width:920px;margin:30px auto 70px;padding:30px;background:#ece5d9}.planning p:not(.eyebrow){font-size:14px;line-height:1.85}.planning .fine{color:var(--muted);font-size:12px!important}.next-journey{max-width:920px;border-top:1px solid var(--line);padding:25px 0 55px}.next-journey a{font-family:var(--serif);font-size:28px;display:flex;justify-content:space-between;gap:25px}.credits{padding:65px 0;min-height:60vh}.credits h1{font-family:var(--serif);font-size:50px;font-weight:normal}.credits li{font-size:13px;margin:15px 0}.credits a{text-decoration:underline}
@media(min-width:1600px){.hero{height:720px}}@media(max-width:1050px){.intro{grid-template-columns:1fr 1fr}.intro .eyebrow{grid-column:1/-1;margin-bottom:-10px}.journey-grid{gap:40px 20px}.card-meta{flex-direction:column;gap:3px}.card-body h3{font-size:24px;min-height:88px}.approach-copy{padding:60px 9%}.contact{gap:55px}}@media(max-width:760px){header{height:92px;padding:20px 6%}header nav{display:none}.brand strong{font-size:27px}.brand span{font-size:8px}.menu-button{display:block;background:none;border:1px solid #aeb6b5;padding:8px 12px;font-size:12px}.menu-button span{margin-left:10px}#mobile-menu{padding:15px 6%;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:12px;font-size:14px}.draft{font-size:8px;padding:7px 6%;letter-spacing:1.2px}.draft span{display:none}.hero{height:610px;min-height:0}.hero img{object-position:61% center}.hero-content{left:7%;top:16%;right:7%}.hero h1{font-size:57px;letter-spacing:-1.5px}.hero-subtitle{font-size:29px;line-height:1.22;margin-top:24px}.hero .eyebrow{font-size:8px;letter-spacing:1.6px}.hero-caption{font-size:8px;bottom:22px}.hero-caption span:last-child{display:none}.hero-shade{background:linear-gradient(90deg,rgba(4,20,30,.78),rgba(4,20,30,.25)),linear-gradient(0deg,rgba(4,20,30,.45),transparent 50%)}.intro{grid-template-columns:1fr;padding:60px 0;gap:23px}.intro .eyebrow{margin:0}.intro h2{font-size:38px}.intro p:last-child{font-size:14px}.collection{padding-top:45px}.section-heading{display:block}.section-heading h2{font-size:42px}.section-heading>p{margin-top:22px!important}.filters{gap:8px;margin-top:28px}.filters button{font-size:10px;padding:7px 11px}.journey-grid{grid-template-columns:1fr;gap:40px}.card-photo{aspect-ratio:1.35}.card-meta{flex-direction:row;font-size:8px}.card-body h3{font-size:29px;min-height:0}.card-body p{font-size:14px}.card-body .route{font-size:11px}.text-link{font-size:12px}.approach{grid-template-columns:1fr}.approach-photo{min-height:340px}.approach-copy{padding:50px 7%}.approach-copy h2{font-size:41px}.contact{grid-template-columns:1fr;padding:55px 7%;gap:25px}.contact h2{font-size:41px}.contact-links .button{max-width:none}.footer-top{display:block}.footer-top>a:last-child{display:block;margin-top:22px}.footer-bottom{flex-wrap:wrap;font-size:9px}.journey-hero{height:470px}.journey-hero-copy{bottom:35px}.journey-hero h1{font-size:43px}.back-link{margin-bottom:32px}.journey-hero .eyebrow{font-size:9px}.journey-facts{flex-direction:column;align-items:start;gap:16px}.journey-intro{padding:45px 0}.journey-intro h2{font-size:26px}.chapters article{grid-template-columns:44px 1fr;padding:26px 0}.chapters h2{font-size:26px}.chapters p{font-size:14px}.planning{padding:24px;margin-bottom:45px}.next-journey a{font-size:25px}.credits h1{font-size:38px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card-photo img{transition:none}}
/* Shared Nifty Ducks navigation and itinerary maps. */
.family-header{position:absolute;top:30px;left:0;right:0;height:112px;padding:15px 7%;z-index:20;color:#fff;border-bottom:1px solid rgba(255,255,255,.2);background:linear-gradient(180deg,rgba(4,22,29,.7),rgba(4,22,29,.18))}.family-brand{display:block;flex-shrink:0}.family-brand img{width:145px;height:84px;object-fit:contain;filter:brightness(0) invert(1)}.family-header .compact-nav{display:flex;gap:30px;align-items:center;font-size:11px;font-weight:500;letter-spacing:1px;text-transform:uppercase}.compact-nav a:hover{color:#e5cca5}.family-plan{border:1px solid rgba(255,255,255,.6);padding:13px 20px;white-space:nowrap}.family-plan span{margin-left:17px}.family-menu{position:relative}.family-menu>summary{list-style:none;cursor:pointer;padding:13px 3px;display:flex;align-items:center;gap:13px}.family-menu>summary::-webkit-details-marker{display:none}.mobile-menu-title{display:none}.family-menu>summary>span:last-child{font-size:17px;line-height:1}.family-menu[open]>summary>span:last-child{transform:rotate(180deg)}.family-menu-panel{position:absolute;top:58px;right:0;width:330px;max-height:calc(100vh - 160px);overflow:auto;box-shadow:0 20px 45px rgba(0,0,0,.3);padding:25px;background:linear-gradient(rgba(4,22,29,.93),rgba(4,22,29,.94)),var(--page-photo) center/cover;color:#fff;text-transform:none;letter-spacing:.4px;z-index:25}.family-menu-panel .eyebrow{color:#cfbd9e;font-size:9px;letter-spacing:1.8px;margin:0 0 10px}.family-menu-panel>a,.menu-local>a{display:block;padding:9px 0;font-size:13px;border-bottom:1px solid rgba(255,255,255,.14)}.family-menu-panel a:focus-visible,.family-menu>summary:focus-visible{outline:2px solid #f2c886;outline-offset:3px}.family-menu-panel .shop-link{color:#f2c886}.menu-local{margin:22px 0 15px}.family-menu-panel .menu-plan{border:1px solid #9eaaa9;padding:12px 14px;margin-top:18px;text-align:center}.hero-shade{background:linear-gradient(180deg,rgba(4,22,29,.62),transparent 38%),linear-gradient(90deg,rgba(4,20,30,.75),rgba(4,20,30,.12) 85%),linear-gradient(0deg,rgba(4,20,30,.55),transparent 35%)}.hero-content{top:26%}.hero{height:735px}.hero-caption{bottom:27px}.journey-hero{height:570px}.journey-overview{display:grid;grid-template-columns:1.15fr 1fr;gap:70px;align-items:center;max-width:1100px;padding:65px 0}.journey-overview .journey-intro{width:auto;max-width:none;margin:0;padding:0}.journey-overview .journey-intro h2{font-size:32px;line-height:1.45}.route-map{margin:0;padding:22px;border:1px solid #d8dbd5;background:#f0eee7}.route-map .eyebrow{font-size:8px;margin-bottom:9px}.route-map h3{font-family:var(--serif);font-size:24px;font-weight:normal;line-height:1.2;margin:0 0 18px}.route-map svg{display:block;width:100%;height:auto}.route-map ol{margin:16px 0 9px;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px 15px;list-style:none}.route-map li{font-size:11px;line-height:1.5;display:flex;gap:10px;align-items:baseline}.route-map li span{font-size:9px;color:#677a80}.map-note{font-size:9px;color:var(--muted);margin:13px 0 0}.map-credit{font-size:8px;color:var(--muted);text-decoration:underline}.site-footer{background:#eee8dd;padding:58px 7% 30px}.family-footer-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:70px}.footer-identity img{width:155px;height:auto;object-fit:contain}.footer-identity p{font-size:12px;max-width:280px;margin:18px 0 0;color:var(--muted)}.footer-identity p:first-of-type{font-family:var(--serif);font-size:20px;color:var(--navy)}.family-footer-links{display:flex;flex-direction:column;gap:9px;font-size:12px;color:var(--muted)}.family-footer-links strong{font-family:var(--serif);font-size:23px;font-weight:normal;color:var(--navy);margin-bottom:8px}.family-footer-links a:hover{text-decoration:underline;color:var(--navy)}.site-footer>.country-acknowledgment{font-size:11px;margin:35px 0 25px;max-width:900px;line-height:1.8;color:var(--muted)}.family-legal{border-top:1px solid #c9c9bf;padding-top:20px;display:flex;justify-content:space-between;gap:22px;font-size:9px;color:var(--muted)}.family-legal span{max-width:630px}.family-legal a{white-space:nowrap}.ai-credit{border-top:1px solid #d1d1c8;margin-top:24px;padding-top:20px;max-width:960px;font-size:10px;color:var(--muted)}.ai-credit strong{font-weight:500;color:var(--navy)}.ai-credit p{font-size:10px;line-height:1.8;margin:9px 0 0}.credits{padding-top:170px;position:relative}.credits:before{content:'';position:absolute;z-index:-1;height:115px;left:calc(-7% / .86);right:calc(-7% / .86);top:0;background:linear-gradient(rgba(4,22,29,.65),rgba(4,22,29,.65)),var(--page-photo) center/cover}
@media(max-width:1000px){.family-header .compact-nav{gap:22px}.journey-overview{gap:40px}.journey-overview .journey-intro h2{font-size:29px}.family-footer-grid{gap:35px}.hero-content{top:27%}}
@media(max-width:760px){.family-header{top:27px;height:92px;padding:12px 7%}.family-brand img{width:100px;height:58px}.family-header .compact-nav{gap:14px;display:flex;font-size:9px;letter-spacing:.4px}.collection-nav{display:none}.family-plan{padding:10px 11px}.family-plan span{display:none}.family-menu>summary{font-size:10px;gap:7px;padding:12px 0}.desktop-menu-title{display:none}.mobile-menu-title{display:inline}.family-menu-panel{position:fixed;left:7%;right:7%;top:118px;width:auto;max-height:calc(100dvh - 140px);padding:23px}.family-menu>summary>span:last-child{font-size:14px}.hero{height:725px}.hero-content{top:25%}.hero h1{font-size:54px}.hero-subtitle{font-size:28px}.journey-hero{height:560px}.journey-hero-copy{bottom:38px}.journey-hero h1{font-size:40px}.journey-overview{grid-template-columns:1fr;gap:35px;padding:45px 0}.journey-overview .journey-intro h2{font-size:26px}.route-map{padding:19px}.route-map h3{font-size:24px}.route-map ol{grid-template-columns:1fr 1fr;gap:9px}.route-map li{font-size:10px}.family-footer-grid{grid-template-columns:1fr;gap:35px}.footer-identity img{width:145px}.footer-identity p{max-width:320px}.family-footer-links strong{font-size:24px}.family-footer-links{font-size:13px;gap:10px}.family-legal{flex-wrap:wrap;gap:15px;font-size:9px}.site-footer{padding:45px 7% 25px}.site-footer>.country-acknowledgment{font-size:11px}.ai-credit,.ai-credit p{font-size:10px}.credits{padding-top:140px}}
.site-footer{background:#07191f;color:#d9e2e1}.footer-identity img{filter:brightness(0) invert(1)}.footer-identity p,.family-footer-links,.site-footer>.country-acknowledgment,.family-legal,.ai-credit{color:#b9c8ca}.footer-identity p:first-of-type,.family-footer-links strong,.ai-credit strong{color:#f7f3eb}.family-footer-links a:hover{color:#f2c886}.family-legal,.ai-credit{border-color:rgba(255,255,255,.18)}
.credits:before{z-index:0}.credits>*{position:relative}

.destination-menu{border-bottom:1px solid rgba(255,255,255,.14)}.destination-menu>summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;padding:9px 0;font-size:13px}.destination-menu>summary::-webkit-details-marker{display:none}.destination-menu[open]>summary span{transform:rotate(180deg)}.destination-submenu{padding:3px 0 12px 15px;border-left:1px solid rgba(255,255,255,.22);margin:3px 0 8px}.destination-submenu a{display:block;padding:8px 0;font-size:12px}.destination-submenu a[aria-current]{color:#f2c886}.destination-menu>summary:focus-visible{outline:2px solid #f2c886;outline-offset:3px}.footer-destinations{display:grid;gap:9px}.footer-destination-child{padding-left:14px;border-left:1px solid rgba(255,255,255,.25)}

/* Published layout */
.family-header{top:0}.family-menu-panel{max-height:calc(100dvh - 140px)}.source-credit{display:block;font-size:9px;padding:8px 7%;color:#52656c}.journey-card .source-credit{padding:8px 0 0}.destination-submenu a[aria-current]{color:#f2c886}@media(max-width:760px){.family-header{top:0}.family-menu-panel{top:92px;max-height:calc(100dvh - 110px)}}

.country-breadcrumbs{font-size:11px;padding:24px 7%;color:var(--muted);display:flex;gap:8px;flex-wrap:wrap}.country-breadcrumbs a{text-decoration:underline;text-underline-offset:4px}.journey-hero-copy .country-breadcrumbs{padding:0;margin:0 0 28px;color:#fff;font-size:11px;max-width:850px}.country-jump{display:flex;justify-content:center;gap:32px;flex-wrap:wrap;padding:22px 7%;background:#102c38;color:#fff;font-size:11px;letter-spacing:1px;text-transform:uppercase}.regions.destination-explorer{--ink:var(--navy);--cream:var(--ivory);--blue:#0a4764;--theme-highlight:#e1a84b;padding:65px 7%;background:#103e55;color:#fff}.regions .section-heading{display:block;margin-bottom:40px;max-width:850px}.regions .section-heading h2{font-family:var(--serif);font-size:46px;font-weight:normal;line-height:1.15;margin:15px 0 20px}.regions .section-heading p{font-size:14px;color:#d9e8eb;max-width:700px}.regions .eyebrow{color:#d9e8eb}.guide-overview{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:65px 0;border-bottom:1px solid #d8dbd5}.guide-overview h2{font-family:var(--serif);font-size:38px;font-weight:normal;line-height:1.2}.guide-links{display:grid;gap:12px;align-content:center}.guide-links a{padding:12px 0;border-bottom:1px solid #d8dbd5;font-size:14px}.guide-hero{padding:170px 7% 60px;background:linear-gradient(rgba(4,22,29,.7),rgba(4,22,29,.7)),url('/assets/hero.jpg') center/cover;color:#fff}.guide-hero .country-breadcrumbs{padding:0;margin-bottom:30px;color:#fff}.guide-hero h1{font-family:var(--serif);font-size:clamp(40px,6vw,70px);font-weight:normal;line-height:1.1}.guide-hero .eyebrow{color:#fff}.country-guide .planning{max-width:none;margin:0}.country-guide .section-heading{display:block}.country-guide .text-link{color:inherit}.country-guide .land-sea{scroll-margin-top:20px}@media(max-width:760px){.country-jump{gap:15px;font-size:10px}.regions.destination-explorer{--ink:var(--navy);--cream:var(--ivory);--blue:#0a4764;--theme-highlight:#e1a84b;padding:45px 7%}.regions .section-heading h2{font-size:34px}.guide-overview{grid-template-columns:1fr;gap:20px;padding:45px 0}.guide-overview h2{font-size:30px}.journey-hero-copy .country-breadcrumbs{font-size:10px;margin-bottom:22px}.guide-hero{padding-top:135px}}

.country-guide .guide-hero .eyebrow{color:#fff}.country-guide .guide-hero .country-breadcrumbs{color:#fff}

.family-itineraries{white-space:nowrap;border-bottom:1px solid #e5cca5;padding:5px 0}.itinerary-index-hero{height:320px}.itinerary-index-hero .journey-hero-copy{bottom:45px}.itinerary-index-hero h1{font-size:clamp(35px,4vw,58px)}.itinerary-index-hero~.collection{padding-top:45px}.country-jump a[aria-current]{text-decoration:underline;text-underline-offset:5px}@media(max-width:760px){.family-brand img{width:90px}.family-header .compact-nav{gap:10px}.itinerary-index-hero{height:275px}.itinerary-index-hero .journey-hero-copy{bottom:35px}.itinerary-index-hero h1{font-size:36px}}

.journey-hero img[src="/performance/alice-springs-large-4384f0ae8952-1600.webp"]{object-position:center 85%}

.journey-hero img[src="/performance/uluru-large-51f5066ac60e-1600.webp"]{object-position:center 75%}.chapter-photo{margin:25px 0 45px}.chapter-photo img{aspect-ratio:16/9;object-fit:cover}.chapter-photo figcaption{font-size:11px;color:var(--muted);margin-top:10px}

/* itinerary-design.css */
/* Itinerary chapter design: Australia. Scoped to journey details. */
.journey-facts{background:#173d43;color:#fff;padding:28px 34px;gap:28px;border:0;max-width:1320px;margin-top:0}
.journey-facts>div{min-width:0}
.journey-facts .eyebrow{color:#f2c886;margin-bottom:8px}
.journey-facts strong{display:block;font-weight:500;line-height:1.6;overflow-wrap:anywhere}
.journey-facts .text-link{color:#fff;border-color:#f2c886;flex-shrink:0}
.journey-overview .journey-intro{background:#eedbc3;padding:34px;border-left:4px solid #975728;align-self:stretch;display:flex;flex-direction:column;justify-content:center}
.journey-overview .journey-intro .eyebrow{color:#975728}
.journey-overview .journey-intro h2{font-size:clamp(25px,2.6vw,34px);line-height:1.4}
.chapters{max-width:1080px;padding:20px 0 0}
.chapters article{position:relative;display:grid;grid-template-columns:76px minmax(0,1fr);gap:0;background:#eedbc3;padding:0;border:0;margin:0 0 24px;overflow:hidden}
.chapters article:nth-of-type(3n+2){background:#e8eeeb}
.chapters article:nth-of-type(3n){background:#173d43;color:#fff}
.chapters article>.chapter-icon{display:flex;justify-content:center;align-items:flex-start;padding:34px 12px;font-size:58px;line-height:1;color:#975728;border-right:1px solid rgb(16 44 56 / 15%);background:rgb(255 255 255 / 18%)}
.chapters article>div{padding:34px 40px 38px;min-width:0}
.chapters article h2{font-size:clamp(26px,2.9vw,35px);line-height:1.2;color:inherit;max-width:780px}
.chapters article p{color:#35494f;font-size:15px;line-height:1.9;margin:18px 0 0;max-width:780px}
.chapters article:nth-of-type(3n) .chapter-icon{color:#f2c886;border-color:rgb(255 255 255 / 20%);background:rgb(0 0 0 / 8%)}
.chapters article:nth-of-type(3n) p{color:#edf1f2}
.chapters+.planning{max-width:1080px;padding:30px 36px;background:#e8eeeb;border-left:4px solid #975728;margin-top:36px}
.chapters+.planning .eyebrow{color:#975728}
.chapters~.next-journey{max-width:1080px;padding:28px 0 55px}
@media(max-width:760px){
.journey-facts{padding:25px;gap:18px}
.journey-overview .journey-intro{padding:26px}
.chapters{padding-top:5px}
.chapters article{grid-template-columns:48px minmax(0,1fr);margin-bottom:18px}
.chapters article>.chapter-icon{padding:26px 6px;font-size:33px}
.chapters article>div{padding:25px 22px 28px}
.chapters article h2{font-size:26px}
.chapters article p{font-size:14px;line-height:1.85}
.chapters+.planning{padding:25px}
}
@media(max-width:380px){.chapters article{grid-template-columns:44px minmax(0,1fr)}.chapters article>div{padding:22px 17px}.chapters article h2{font-size:24px}}

.chapters .chapter-icon svg{width:34px;height:34px;flex-shrink:0}
@media(max-width:760px){.chapters .chapter-icon svg{width:26px;height:26px}}

/* assets/destination-explorer.css */
.destination-explorer .section-heading { max-width:1000px; }
.destination-explorer-layout { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(290px,1fr); gap:clamp(1.5rem,3vw,3rem); align-items:start; }
.destination-map-wrap { min-width:0; }
.destination-map { display:block; width:100%; height:auto; border:1px solid #ffffff38; border-radius:6px; }
.destination-map-water { fill:#103e55; }
.destination-map-grid { stroke:#ffffff0b; stroke-width:1; }
.destination-map-land { fill:#335565; stroke:#64808c; stroke-width:.65; }
.destination-map-land.is-featured { fill:#6ca0a9; stroke:#aad0d1; stroke-width:.8; }
.destination-map-sea { fill:#a8c9d5; font:italic 18px Georgia,serif; letter-spacing:3px; }
.destination-map-context { fill:#8faab7; font:11px Arial,sans-serif; letter-spacing:2px; }
.destination-map-pin { cursor:pointer; outline:none; }
.destination-map-hit { fill:transparent; }
.destination-map-ring { fill:transparent; stroke:transparent; stroke-width:1.5; }
.destination-map-dot { fill:#f8f6f0; stroke:#123b4d; stroke-width:2; transition:fill .15s; }
.destination-map-number { fill:#143747; font:700 12px Arial,sans-serif; pointer-events:none; }
.destination-map-label { fill:#fff9ec; font:600 14px Arial,sans-serif; paint-order:stroke; stroke:#103e55; stroke-width:4px; stroke-linejoin:round; pointer-events:none; }
.destination-map-pin.is-selected .destination-map-dot,.destination-map-pin:hover .destination-map-dot { fill:#e1a84b; stroke:#fff2d5; stroke-width:2.5; }
.destination-map-pin.is-selected .destination-map-ring { fill:#e1a84b20; stroke:#e1a84b; }
.destination-map-pin:focus-visible .destination-map-ring { stroke:#fff; stroke-width:3; }
.destination-map-note,.destination-map-credit { color:#c5dbe4; font-size:.72rem; line-height:1.6; }
.destination-map-note { margin:1rem 0 1.5rem; }
.destination-map-credit { margin:2rem 0 0; }
.destination-map-credit a { text-decoration:underline; text-underline-offset:3px; }
.destination-region-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.5rem; }
.destination-region-choice { display:flex; align-items:center; gap:.6rem; min-height:52px; padding:.7rem .65rem; border:1px solid #ffffff40; border-radius:3px; background:transparent; color:#fffdf8; font:inherit; font-size:.8rem; text-align:left; cursor:pointer; }
.destination-region-choice span { color:#ecc684; font-size:.65rem; }
.destination-region-choice:hover,.destination-region-choice.is-selected { background:#f0dfbb; color:#143747; border-color:#f0dfbb; }
.destination-region-choice.is-selected span,.destination-region-choice:hover span { color:#6b5739; }
.destination-region-choice:focus-visible,.destination-region-plan:focus-visible,.destination-map-credit a:focus-visible { outline:3px solid #e1a84b; outline-offset:3px; }
.destination-region-detail { min-height:610px; padding:clamp(1.5rem,3vw,3rem); background:#f8f6f0; color:#102a3a; border-top:4px solid #e1a84b; scroll-margin-top:1rem; }
.destination-explorer .destination-region-detail .eyebrow { color:#55707b; line-height:1.65; }
.destination-region-detail h3 { margin:1rem 0 1.5rem; font:400 clamp(2.4rem,4vw,4.1rem)/1.05 var(--serif); letter-spacing:-.04em; }
.destination-region-description { min-height:160px; color:#55707b; line-height:1.8; font-size:1rem; }
.destination-detail-label { margin-top:1.75rem; font-size:.72rem; text-transform:uppercase; letter-spacing:.13em; font-weight:750; }
.destination-region-highlights { display:flex; flex-wrap:wrap; gap:.5rem; padding:0; margin:1rem 0 2rem; list-style:none; }
.destination-region-highlights li { padding:.45rem .7rem; border:1px solid #b5c6cd; font-size:.75rem; }
.destination-region-plan { display:block; text-align:center; padding:1rem; font-size:.8rem; background:#0a4764; color:#fff; }
.destination-detail-note { margin:1.2rem 0 0; color:#55707b; font-size:.8rem; line-height:1.7; }
.destination-announcement { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.destination-map-fallback { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:2rem; margin-top:2rem; }
@media(max-width:1100px) { .destination-explorer-layout { grid-template-columns:minmax(0,1.3fr) minmax(270px,1fr); gap:1.25rem; } .destination-region-list { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:760px) { .destination-explorer-layout { display:flex; flex-direction:column; } .destination-map-wrap,.destination-region-detail { width:100%; } .destination-region-detail { min-height:0; } .destination-region-description { min-height:0; } .destination-region-detail h3 { font-size:2.8rem; } .destination-map-fallback { grid-template-columns:1fr; } }

.destination-explorer { --map-water:#5b382c; --map-land:#ad8168; --map-line:#d4ad88; --map-context-land:#765143; }
.theme-new-zealand .destination-explorer { --map-water:#153e35; --map-land:#80a99b; --map-line:#b6d2c1; --map-context-land:#3a6253; }
.destination-explorer .destination-map-water { fill:var(--map-water); }
.destination-explorer .destination-map-land { fill:var(--map-context-land); stroke:var(--map-line); }
.destination-explorer .destination-map-land.is-featured { fill:var(--map-land); stroke:var(--map-line); }
.destination-explorer .destination-map-label { stroke:var(--map-water); }
.destination-explorer .destination-map-sea,.destination-explorer .destination-map-context { fill:#f4ecdd99; }
.destination-explorer .destination-region-detail { color:var(--ink); background:var(--cream); border-color:var(--theme-highlight); }
.destination-explorer .destination-region-detail .eyebrow,.destination-explorer .destination-region-description,.destination-explorer .destination-detail-note { color:var(--muted); }
.destination-explorer .destination-region-plan { background:var(--blue); }
.destination-explorer .destination-region-choice.is-selected,.destination-explorer .destination-region-choice:hover { background:var(--theme-highlight); border-color:var(--theme-highlight); color:var(--ink); }
.destination-explorer .destination-map-dot { stroke:var(--map-water); }
.destination-explorer .destination-map-number { fill:var(--ink); }
.destination-explorer .destination-map-pin.is-selected .destination-map-dot,.destination-explorer .destination-map-pin:hover .destination-map-dot { fill:var(--theme-highlight); }
.destination-explorer .destination-map-pin.is-selected .destination-map-ring { stroke:var(--theme-highlight); }
.destination-explorer .destination-map-note,.destination-explorer .destination-map-credit { color:#f4ecddbf; }
.destination-explorer .destination-region-description { min-height:150px; }
.destination-explorer .destination-region-detail h3 { font-size:clamp(2.1rem,3.2vw,3.4rem); }
@media(max-width:760px) { .destination-explorer .destination-region-description { min-height:0; } }

.destination-map-leader {fill:none;stroke:#f4ecdd;stroke-width:1.5;opacity:.75;pointer-events:none;}
.destination-group-label {color:#f4ecdd;font-size:.76rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin:28px 0 12px;}
.destination-territories-note {color:#f4ecddbf;font-size:.86rem;line-height:1.65;margin:0 0 16px;}

@media(min-width:761px) { .theme-australia .destination-region-detail {position:sticky;top:24px;align-self:start;} }

/* guide-themes.css */
/* Greece-inspired editorial destinations with individual regional palettes. */
.destination-experience { --blue:#794632; --navy:#30271f; --ink:#30271f; --muted:#665e52; --cream:#faf6ed; --paper:#fffdf8; --theme-highlight:#f2c990; --accent-deep:#895028; --celebration-bg:#ecd4b1; --route-bg:#e3e9e7; background:var(--cream); }
.theme-new-zealand { --blue:#245144; --navy:#102f28; --ink:#173d32; --muted:#54665e; --cream:#f3f5ed; --paper:#fcfdf8; --theme-highlight:#cfdec0; --accent-deep:#3e6048; --celebration-bg:#d7e2c9; --route-bg:#dce9e2; }
.theme-caribbean { --blue:#0d6570; --navy:#073940; --ink:#0e3d44; --muted:#526b6c; --cream:#fbf7ed; --paper:#fffdf8; --theme-highlight:#e8d8ae; --accent-deep:#426365; --celebration-bg:#efe0bf; --route-bg:#d9efeb; }
.destination-experience h2, .destination-experience h3 { font-family:Georgia, 'Times New Roman',serif; }
.destination-experience .eyebrow { color:var(--accent-deep); }
.destination-experience .eyebrow.light, .destination-experience .hero .eyebrow { color:inherit; }
.destination-experience .hero h1 { max-width:1020px; }
.theme-hero-note { position:absolute; bottom:1.5rem; right:4vw; z-index:1; color:#fff; font-size:.72rem; letter-spacing:.12em; text-transform:uppercase; }
.theme-cta-group { display:flex; align-items:flex-start; flex-direction:column; gap:.7rem; }
.theme-cta { display:inline-flex; justify-content:center; align-items:center; min-height:3.2rem; padding:.85rem 1.25rem; color:var(--ink); background:var(--paper); border:1px solid var(--paper); font-size:.76rem; font-weight:800; letter-spacing:.08em; text-align:center; text-transform:uppercase; text-decoration:none; }
.theme-cta:hover { background:var(--theme-highlight); color:var(--ink); }
.theme-cta-group small { font-size:.65rem; letter-spacing:.08em; text-transform:uppercase; color:rgba(255,255,255,.8); }
.theme-jump { display:flex; justify-content:center; flex-wrap:wrap; gap:1rem 2.8rem; padding:1.3rem 4vw; background:var(--navy); color:#fff; }
.theme-jump a { font-size:.72rem; font-weight:700; text-transform:uppercase; letter-spacing:.12em; text-decoration:none; }
.theme-jump a:hover { color:var(--theme-highlight); }
.destination-experience section[id] { scroll-margin-top:1rem; }
.theme-point-number, .theme-service-number { font:italic 1.3rem Georgia,serif; color:var(--accent-deep); }
.theme-service-number { color:var(--theme-highlight); }
.theme-gallery { display:flex; background:var(--cream); }
.theme-gallery figure { position:relative; margin:0; flex:1; min-width:0; }
.theme-gallery img { width:100%; height:480px; object-fit:cover; }
.theme-gallery figcaption { position:absolute; bottom:1.5rem; left:1.5rem; padding:.5rem .8rem; color:#fff; background:rgba(3,25,30,.82); font-size:.68rem; text-transform:uppercase; letter-spacing:.12em; }
.theme-sources { margin-top:2rem; color:var(--muted); font-size:.8rem; }
.theme-faq { padding:5rem 7vw; background:var(--paper); }
.theme-faq h2 { font-size:clamp(2.8rem,5vw,5.5rem); font-weight:400; letter-spacing:-.045em; line-height:.98; margin:0; }
.theme-faq .destination-faq { max-width:none; }
.final-cta .theme-cta-group { align-items:center; }
.theme-australia .mobile-menu { background:linear-gradient(rgba(23,21,17,.88),rgba(23,21,17,.94)),var(--destination-hero) center/cover; }
.theme-new-zealand .mobile-menu { background:linear-gradient(rgba(5,28,20,.86),rgba(5,28,20,.94)),var(--destination-hero) center/cover; }
.theme-caribbean .mobile-menu { background:linear-gradient(rgba(4,31,35,.84),rgba(4,31,35,.94)),var(--destination-hero) center/cover; }
a:focus-visible, summary:focus-visible { outline:3px solid var(--theme-highlight); outline-offset:4px; }
.intro { display: grid; grid-template-columns: .7fr 1.65fr 1fr; align-items: start; gap: clamp(2rem,5vw,6rem); padding: clamp(6rem,10vw,10rem) clamp(1.25rem,7vw,8rem); }
.intro h2, .section-heading h2, .land-sea h2, .blend h2, .honeymoon h2, .planning h2, .process h2, .final-cta h2 { margin: 0; font-family: var(--serif); font-weight: 400; letter-spacing: -.045em; line-height: .98; }
.intro h2 { font-size: clamp(2.8rem,5vw,5.8rem); }
.intro > p:last-child { margin: .4rem 0 0; color: var(--muted); font-size: 1.08rem; line-height: 1.8; }

.regions { background: var(--blue); color: #fff; padding: clamp(6rem,9vw,9rem) clamp(1.25rem,7vw,8rem); }
.section-heading { max-width: 810px; margin-bottom: clamp(3.5rem,6vw,6rem); }
.section-heading.on-blue { display: grid; grid-template-columns: .65fr 1.3fr; max-width: none; column-gap: 4rem; }
.section-heading h2 { font-size: clamp(3.2rem,6vw,6.5rem); }
.section-heading > p:last-child { color: var(--muted); line-height: 1.75; font-size: 1.1rem; max-width: 690px; }
.section-heading.on-blue > p:last-child { grid-column: 2; color: rgba(255,255,255,.68); }
.region-grid { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid rgba(255,255,255,.25); border-left: 1px solid rgba(255,255,255,.25); }
.region-card { min-height: 340px; display: flex; flex-direction: column; justify-content: space-between; padding: clamp(1.5rem,3vw,2.5rem); border-right: 1px solid rgba(255,255,255,.25); border-bottom: 1px solid rgba(255,255,255,.25); transition: background .25s ease,color .25s ease; }
.region-card:hover { background: var(--cream); color: var(--ink); }
.region-number { color: var(--theme-highlight); font-family: var(--serif); font-size: 1.2rem; }
.region-cue { margin: 0 0 .65rem; color: var(--theme-highlight); font-size: .72rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.region-card:hover .region-cue { color: var(--accent-deep); }
.region-card h3 { margin: 0 0 1rem; font-family: var(--serif); font-size: clamp(1.8rem,2.5vw,2.75rem); font-weight: 400; line-height: 1; }
.region-card p:last-child { margin: 0; color: rgba(255,255,255,.68); line-height: 1.65; }
.region-card:hover p:last-child { color: var(--muted); }

.word-ribbon { display: flex; align-items: center; justify-content: space-around; gap: 2rem; min-height: 112px; padding: 1.5rem 2rem; overflow: hidden; background: var(--gold); color: var(--ink); font-family: var(--serif); font-size: clamp(1.9rem,4vw,4.5rem); letter-spacing: -.035em; white-space: nowrap; }
.word-ribbon i { font-family: sans-serif; font-size: .6em; font-style: normal; }

.land-sea { position: relative; display: grid; grid-template-columns: 1.25fr 1fr; background: #fff; }
.land-sea-image-wrap { position: relative; min-height: 680px; overflow: hidden; }
.land-sea-image-wrap img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 32% 62%; }
.photo-label { position: absolute; left: 2rem; bottom: 2rem; padding: .55rem .7rem; background: rgba(7,31,45,.82); color: #fff; font-size: .7rem; letter-spacing: .12em; text-transform: uppercase; }
.land-sea-copy { padding: clamp(4.5rem,8vw,9rem) clamp(2rem,6vw,7rem); }
.land-sea h2 { margin-bottom: 2rem; font-size: clamp(3rem,5vw,5.8rem); }
.lead { color: var(--muted); font-size: 1.12rem; line-height: 1.8; }
.cruise-points { display: grid; gap: 1.5rem; margin-top: 2.5rem; }
.cruise-points > div { display: grid; grid-template-columns: 38px 1fr; gap: 1rem; padding-top: 1.5rem; border-top: 1px solid var(--stone); }
.cruise-points svg { color: var(--accent-deep); }
.cruise-points p { margin: 0; color: var(--muted); line-height: 1.6; }
.cruise-points strong { color: var(--ink); }
.route-line { grid-column: 1/-1; display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1.8rem clamp(1.25rem,7vw,8rem); background: var(--route-bg); color: var(--ink); font-size: .75rem; font-weight: 750; letter-spacing: .1em; text-transform: uppercase; }
.route-line b { flex: 1; display: flex; align-items: center; gap: .8rem; color: var(--accent-deep); font-weight: 500; }
.route-line b::after { content: ''; height: 1px; flex: 1; background: var(--muted); }

.blend { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(4rem,10vw,12rem); padding: clamp(6rem,10vw,10rem) clamp(1.25rem,7vw,8rem); background: var(--navy); color: #fff; }
.blend h2 { font-size: clamp(3.3rem,6vw,6.5rem); }
.blend-copy { align-self: end; }
.blend-copy > p { color: rgba(255,255,255,.7); font-size: 1.08rem; line-height: 1.8; }
.blend-copy .cta-group { margin-top: 1.5rem; }
.cta-light { background: transparent; color: #fff; border: 1px solid rgba(255,255,255,.55); }
.cta-light:hover { color: var(--ink); }

.honeymoon { display: grid; grid-template-columns: 100px 1.2fr 1fr; gap: clamp(2rem,5vw,6rem); padding: clamp(6rem,10vw,10rem) clamp(1.25rem,7vw,8rem); background: var(--celebration-bg); }
.honeymoon-mark { width: 76px; height: 76px; display: grid; place-items: center; border: 1px solid rgba(16,42,58,.45); border-radius: 50%; }
.honeymoon h2 { font-size: clamp(3.2rem,5.8vw,6.3rem); }
.honeymoon-copy { align-self: end; }
.honeymoon-copy > p { font-size: 1.1rem; line-height: 1.78; }
.honeymoon-proof { margin: 2rem 0 0; padding: 1.5rem 0 1.5rem 1.5rem; border-left: 2px solid rgba(16,42,58,.55); font-family: var(--serif); font-size: 1.25rem; line-height: 1.55; }
.honeymoon-proof cite { display: block; margin-top: .8rem; font-family: var(--font-geist-sans), Arial, sans-serif; font-size: .72rem; font-style: normal; font-weight: 750; letter-spacing: .12em; text-transform: uppercase; }
.honeymoon ul { margin: 2rem 0 0; padding: 0; list-style: none; }
.honeymoon li { padding: 1rem 0; border-top: 1px solid rgba(16,42,58,.3); font-weight: 650; }

.greece-collage { width: 100%; overflow: hidden; background: var(--cream); }
.greece-collage img { width: 100%; height: auto; object-fit: cover; }

.season { padding: clamp(6rem,10vw,10rem) clamp(1.25rem,7vw,8rem); }
.season .section-heading { display: grid; grid-template-columns: .55fr 1.2fr 1fr; align-items: start; gap: 3rem; max-width: none; }
.season .section-heading h2 { font-size: clamp(3rem,5vw,5.8rem); }
.season-grid { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid var(--stone); border-left: 1px solid var(--stone); }
.season-grid article { position: relative; min-height: 340px; padding: 2.25rem; border-right: 1px solid var(--stone); border-bottom: 1px solid var(--stone); }
.season-grid article.peak { background: #fff; }
.season-grid span { color: var(--accent-deep); font-size: .73rem; font-weight: 750; letter-spacing: .14em; }
.season-grid h3 { margin: 2rem 0 1rem; font-family: var(--serif); font-size: 2.6rem; font-weight: 400; }
.season-grid p { color: var(--muted); line-height: 1.7; }
.season-grid em { position: absolute; left: 2.25rem; bottom: 2rem; color: var(--blue); font-size: .78rem; font-style: normal; font-weight: 750; letter-spacing: .09em; text-transform: uppercase; }

.planning { padding: clamp(6rem,10vw,10rem) clamp(1.25rem,7vw,8rem); background: var(--blue); color: #fff; }
.planning-intro { display: grid; grid-template-columns: .6fr 1.35fr 1fr; gap: 3rem; align-items: start; margin-bottom: 5rem; }
.planning h2 { font-size: clamp(3.2rem,5.8vw,6.3rem); }
.planning-intro > p:last-child { margin: .3rem 0 0; color: rgba(255,255,255,.7); line-height: 1.75; }
.service-grid { display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid rgba(255,255,255,.24); border-left: 1px solid rgba(255,255,255,.24); }
.service-card { min-height: 250px; padding: 2rem; border-right: 1px solid rgba(255,255,255,.24); border-bottom: 1px solid rgba(255,255,255,.24); }
.service-card svg { color: var(--theme-highlight); }
.service-card h3 { margin: 3rem 0 .75rem; font-family: var(--serif); font-size: 1.65rem; font-weight: 400; }
.service-card p { margin: 0; color: rgba(255,255,255,.65); line-height: 1.62; font-size: .94rem; }

.process { display: grid; grid-template-columns: 1fr 1.15fr; gap: clamp(4rem,9vw,10rem); padding: clamp(6rem,10vw,10rem) clamp(1.25rem,7vw,8rem); }
.process h2 { font-size: clamp(3.2rem,5.5vw,6rem); }
.process ol { margin: 0; padding: 0; list-style: none; }
.process li { display: grid; grid-template-columns: 55px 1fr; gap: 1.25rem; padding: 1.75rem 0; border-top: 1px solid var(--stone); }
.process li > span { color: var(--accent-deep); font-family: var(--serif); }
.process h3 { margin: 0 0 .5rem; font-family: var(--serif); font-size: 1.65rem; font-weight: 400; }
.process li p { margin: 0; color: var(--muted); line-height: 1.65; }

.final-cta { position: relative; overflow: hidden; padding: clamp(6rem,11vw,11rem) 1.5rem; text-align: center; background: var(--navy); color: #fff; }
.final-cta::before { content: ''; position: absolute; width: 580px; height: 580px; left: 50%; top: 50%; transform: translate(-50%,-50%); border: 1px solid rgba(125,198,227,.22); border-radius: 50%; box-shadow: 0 0 0 90px rgba(125,198,227,.035),0 0 0 180px rgba(125,198,227,.025); }
.final-cta > * { position: relative; z-index: 1; }
.final-cta h2 { font-size: clamp(3.3rem,6.5vw,7rem); }
.final-cta > p:not(.eyebrow) { max-width: 560px; margin: 2rem auto; color: rgba(255,255,255,.72); font-size: 1.08rem; line-height: 1.7; }

@media (max-width: 1100px) {
  .site-header nav { display: none; }
  .site-header { grid-template-columns: 1fr auto; }
  .region-grid { grid-template-columns: repeat(2,1fr); }
  .service-grid { grid-template-columns: repeat(2,1fr); }
  .intro, .planning-intro, .season .section-heading { grid-template-columns: 1fr 1.5fr; }
  .intro > p:last-child, .planning-intro > p:last-child, .season .section-heading > p:last-child { grid-column: 2; }
}

@media (max-width: 760px) {
  .site-header { height: 88px; padding-inline: 1rem; }
  .brand img { width: 125px; }
  .header-cta { padding: .7rem .75rem; font-size: .66rem; }
  .hero { min-height: 790px; }
  .hero-content { padding: 13rem 1.2rem 6rem; }
  .hero h1 { font-size: clamp(3.9rem,18vw,6.5rem); }
  .hero-note { display: none; }
  .intro, .section-heading.on-blue, .land-sea, .blend, .honeymoon, .season .section-heading, .planning-intro, .process { grid-template-columns: 1fr; }
  .intro > p:last-child, .planning-intro > p:last-child, .season .section-heading > p:last-child, .section-heading.on-blue > p:last-child { grid-column: 1; }
  .intro, .regions, .land-sea-copy, .blend, .honeymoon, .season, .planning, .process { padding-inline: 1.25rem; }
  .region-grid, .season-grid, .service-grid { grid-template-columns: 1fr; }
  .region-card { min-height: 290px; }
  .land-sea-image-wrap { min-height: 440px; }
  .route-line { overflow-x: auto; justify-content: flex-start; padding-inline: 1.25rem; }
  .route-line span { flex: 0 0 auto; }
  .route-line b { min-width: 74px; }
  .honeymoon-mark { width: 64px; height: 64px; }
  .section-heading, .planning-intro { margin-bottom: 3.5rem; }
  .section-heading.on-blue { gap: 1.5rem; }
  .season .section-heading, .planning-intro { gap: 1.5rem; }
  .service-grid { grid-template-columns: 1fr; }
  .service-card { min-height: 220px; }
  .__unused_footer { align-items: start; }
  .__unused_.__unused_footer { justify-self: start; align-items: flex-start; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: .01ms !important; }
}

.shared-nav { position:absolute; inset:0 0 auto; z-index:50; color:#fff; border-bottom:1px solid rgba(255,255,255,.24); }
.shared-nav-shell { height:7rem; max-width:1520px; margin:0 auto; padding:0 4vw; display:flex; align-items:center; gap:2rem; }
.shared-brand { display:inline-flex; align-items:center; margin-right:auto; position:relative; z-index:52; }
.shared-brand img { display:block; width:155px; height:90px; object-fit:contain; filter:brightness(0) invert(1); }
.shared-nav-links { display:flex; align-items:center; gap:1.7rem; font:700 .78rem Arial,Helvetica,sans-serif; letter-spacing:.08em; text-transform:uppercase; }
.shared-nav-links a { color:inherit; text-decoration:none; white-space:nowrap; }
.shared-nav-links a:hover,.shared-nav-links a:focus-visible { color:#f2c886; }
.shared-nav-cta { border:1px solid rgba(255,255,255,.7); padding:.8rem 1.05rem; }
.shared-menu { display:none; }
.shared-menu summary { position:relative; z-index:52; cursor:pointer; list-style:none; font:700 .8rem Arial,Helvetica,sans-serif; letter-spacing:.12em; text-transform:uppercase; }
.shared-menu summary::-webkit-details-marker { display:none; }
.menu-close-label { display:none; }
.shared-menu[open] .menu-open-label { display:none; }
.shared-menu[open] .menu-close-label { display:inline; }
.shared-menu-panel { position:fixed; inset:0; z-index:51; display:flex; flex-direction:column; justify-content:safe center; overflow-y:auto; gap:1rem; padding:8rem 8vw 4rem; background:#04161d; }
.shared-menu-panel a { flex-shrink:0; color:#fff; text-decoration:none; font:400 2rem Georgia,'Times New Roman',serif; }
.shared-menu-panel a:hover,.shared-menu-panel a:focus-visible { color:#f2c886; }
@media (max-width:1199px) { .shared-nav-links { display:none; } .shared-menu { display:block; } }

/* AI collaboration credit */
.ai-credit { grid-column: 1 / -1; width: 100%; max-width: 1320px; box-sizing: border-box; margin: 0 auto; padding-top: 24px; border-top: 1px solid rgba(255,255,255,.18); color: rgba(255,255,255,.76); text-align: left; font-family: Arial, Helvetica, sans-serif; font-size: 12px; line-height: 1.7; text-transform: none; letter-spacing: normal; }
.ai-credit strong { display: block; font-size: 12px; font-weight: 600; color: rgba(255,255,255,.9); }
.ai-credit p { max-width: 900px; margin: 7px 0 0; font: inherit; color: inherit; }

.destination-experience .intro h2 { font-size:clamp(2.8rem,5vw,5.8rem); }
.destination-experience .region-card p:last-child, .destination-experience .service-card p, .destination-experience .planning-intro > p:last-child, .destination-experience .section-heading.on-blue > p:last-child { color:rgba(255,255,255,.85); }
.destination-experience .region-card:hover p:last-child { color:var(--muted); }
.destination-experience .region-card:hover .region-number { color:var(--accent-deep); }
.destination-experience .blend-copy > p { color:rgba(255,255,255,.85); }
.destination-experience .season-grid article { padding-bottom:5rem; }
.destination-experience .season-grid em { right:2rem; }
@media (max-width:760px) { .theme-gallery { flex-direction:column; } .theme-gallery img { height:320px; } .theme-hero-note { display:none; } .theme-faq { padding:4rem 1.25rem; } .theme-cta { width:100%; } .theme-cta-group { width:100%; } .theme-jump { gap:.8rem 1.5rem; } .destination-experience .intro { gap:1.5rem; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }

@media (max-width:760px) {
 .destination-experience .hero-content { min-width:0; width:100%; padding:10rem 1.2rem 4rem; }
 .destination-experience .hero h1 { font-size:clamp(2.6rem,13vw,3.4rem); overflow-wrap:normal; }
 .destination-experience .hero-copy { width:100%; }
}

.theme-italy { --blue:#596143; --navy:#282f25; --ink:#303c2c; --muted:#626857; --cream:#faf5e9; --paper:#fffdf7; --theme-highlight:#eed5ae; --accent-deep:#945038; --celebration-bg:#ead4bd; --route-bg:#e3e7d9; }
.theme-italy .mobile-menu { background:linear-gradient(rgba(28,36,25,.88),rgba(28,36,25,.95)),var(--destination-hero) center/cover; }

/* A quieter sage Celebration Travel panel, scoped to Italy. */
.theme-italy .honeymoon { background:#e5e9df; color:#263a30; }
.theme-italy .honeymoon .eyebrow { color:#50634d; }
.theme-italy .honeymoon-copy p, .theme-italy .honeymoon-copy li { color:#34463b; }
.theme-italy .honeymoon-mark { border-color:#879783; color:#50634d; }
.theme-italy .honeymoon li { border-color:#a7b3a2; }
.italian-story-band { height:150px; background:#34483e url('/assets/italian-story-symbols.svg') center center / 840px 150px repeat-x; border-block:1px solid #667763; }
@media(max-width:760px) { .italian-story-band { height:120px; background-size:672px 120px; } }

/* Australia photography and Indigenous cultural experiences */
.theme-australia .hero-media { object-position: 68% 58%; }
.theme-australia .land-sea-image-wrap img { object-position: 50% 42%; }
.cultural-experiences { padding:clamp(4rem,7vw,7rem) clamp(1.25rem,7vw,8rem); background:var(--cream); color:var(--ink); scroll-margin-top:5rem; }
.culture-heading { max-width:850px; margin-bottom:3rem; }
.culture-heading h2 { margin:0 0 1.5rem; font-family:var(--serif); font-size:clamp(3rem,5.5vw,5.5rem); font-weight:400; line-height:1; letter-spacing:-.045em; }
.culture-heading>p:last-child { max-width:720px; line-height:1.8; }
.culture-grid { display:grid; grid-template-columns:1fr 1fr; gap:clamp(2rem,5vw,5rem); }
.culture-grid article { padding-top:2rem; border-top:1px solid var(--accent-deep); }
.culture-grid h3 { margin:0 0 1.2rem; font-family:var(--serif); font-weight:400; font-size:clamp(2rem,3vw,3rem); line-height:1.1; }
.culture-grid article>p:not(.eyebrow) { line-height:1.8; color:var(--muted); }
.culture-link { display:inline-block; margin-top:1rem; color:var(--ink); text-decoration:underline; text-underline-offset:.3em; line-height:1.6; }
@media(max-width:760px) { .culture-grid { grid-template-columns:1fr; } .theme-australia .hero-media { object-position:72% 55%; } }

.australian-story-band { height:150px; background:#3e5146 url('/assets/australian-story-symbols.svg') center center / 840px 150px repeat-x; border-block:1px solid #74836a; }
@media(max-width:760px) { .australian-story-band { height:120px; background-size:672px 120px; } }

/* New Zealand: supplied photography, living culture, and quieter celebration colours */
.theme-new-zealand .hero-media { object-position:70% 62%; }
.theme-new-zealand .land-sea-image-wrap img { object-position:58% 50%; }
.theme-new-zealand .honeymoon { background:#e5e9df; color:#263a30; }
.theme-new-zealand .honeymoon-copy p, .theme-new-zealand .honeymoon-copy li { color:#34463b; }
.nz-culture-photos { margin-top:3.5rem; display:grid; grid-template-columns:1fr 1fr; gap:1.5rem; }
.nz-culture-photos figure { margin:0; }
.nz-culture-photos img { width:100%; height:360px; object-fit:cover; }
.nz-culture-photos figcaption { margin-top:.7rem; color:var(--muted); font-size:.72rem; letter-spacing:.1em; text-transform:uppercase; }
.nz-photo-gallery figure:first-child { flex:1.6; }
.nz-photo-gallery img { height:580px; }
.nz-photo-gallery figure:last-child img { object-position:center 42%; }
.new-zealand-story-band { height:150px; background:#25483d url('/assets/new-zealand-story-symbols.svg') center center / 840px 150px repeat-x; border-block:1px solid #6f8875; }
@media(max-width:760px) { .theme-new-zealand .hero-media { object-position:74% 62%; } .nz-culture-photos { grid-template-columns:1fr; } .nz-culture-photos img { height:300px; } .nz-photo-gallery figure:first-child img { height:320px; } .nz-photo-gallery figure:last-child img { height:auto; max-height:620px; object-fit:contain; background:var(--navy); } .new-zealand-story-band { height:120px; background-size:672px 120px; } }

.italian-story-band, .australian-story-band, .new-zealand-story-band { --icon-repeat:840px; animation:icon-banner-drift 40s linear infinite; }
@keyframes icon-banner-drift { from { background-position:50% center; } to { background-position:calc(50% - var(--icon-repeat)) center; } }
@media(max-width:760px) { .italian-story-band, .australian-story-band, .new-zealand-story-band { --icon-repeat:672px; } }
@media(prefers-reduced-motion:reduce) { .italian-story-band, .australian-story-band, .new-zealand-story-band { animation:none; } }

/* Caribbean: one home base, by land or sea. */
.theme-caribbean .land-sea-image-wrap img { object-position:50% 38%; }
.theme-caribbean .photo-label a { display:block; margin-top:.35rem; font-size:.6rem; letter-spacing:.03em; text-transform:none; color:inherit; }
.caribbean-advisor-note { margin:2rem 0; color:var(--muted); line-height:1.7; }
.caribbean-story-band { height:150px; background:#0d6570 url('/assets/caribbean-story-symbols.svg') center center / 840px 150px repeat-x; border-block:1px solid #508b89; --icon-repeat:840px; animation:icon-banner-drift 40s linear infinite; }
@media(max-width:760px) { .caribbean-story-band { height:120px; background-size:672px 120px; --icon-repeat:672px; } }
@media(prefers-reduced-motion:reduce) { .caribbean-story-band { animation:none; } }
/* A map, a browsable island list, and one calm detail panel. */
.island-explorer .section-heading { max-width:1000px; }
.island-explorer-layout { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(290px,1fr); gap:1.5rem 2.5rem; align-items:start; }
.island-map-wrap { grid-column:1; min-width:0; }
.island-map { display:block; width:100%; height:auto; border:1px solid #ffffff38; border-radius:6px; }
.map-water { fill:#124a54; }
.map-grid { stroke:#ffffff0c; stroke-width:1; }
.map-land { fill:#52817b; stroke:#99b2a0; stroke-width:.8; }
.map-land[data-island] { cursor:pointer; }
.map-land.is-selected { fill:#e8d8ae; stroke:#fff2d5; }
.map-ocean-label { fill:#b7cfcb; font:italic 22px Georgia,serif; letter-spacing:5px; }
.map-context { fill:#bed0c7; font:11px sans-serif; letter-spacing:2px; }
.map-pin { cursor:pointer; outline:none; }
.map-hit { fill:transparent; }
.map-dot { fill:#f8f1dc; stroke:#0d3d45; stroke-width:2; transition:fill .15s; }
.map-pin text { fill:#153e43; font:700 10px sans-serif; pointer-events:none; }
.map-pin.is-selected .map-dot { fill:#e5bd73; stroke:#fff8e8; stroke-width:3; }
.map-pin:focus-visible .map-dot { stroke:#fff; stroke-width:5; }
.map-pin:hover .map-dot { fill:#e5bd73; }
.island-map-note,.island-map-credit { color:#dae7df; font-size:.72rem; line-height:1.6; }
.island-map-credit { margin-top:1.5rem; }
.island-map-credit a { color:inherit; }
.island-list { grid-column:1; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.5rem; }
.island-choice { display:flex; align-items:center; gap:.55rem; min-height:48px; padding:.7rem .65rem; border:1px solid #ffffff40; background:transparent; color:#fffdf8; font:inherit; font-size:.8rem; text-align:left; cursor:pointer; border-radius:3px; }
.island-choice span { color:#dfcda1; font-size:.65rem; }
.island-choice:hover,.island-choice.is-selected { background:#efe0bf; color:#143e43; border-color:#efe0bf; }
.island-choice.is-selected span,.island-choice:hover span { color:#4f655d; }
.island-choice:focus-visible,.island-source:focus-visible,.island-plan:focus-visible { outline:3px solid #e5bd73; outline-offset:3px; }
.island-detail { grid-column:2; grid-row:1 / span 2; min-height:610px; padding:clamp(1.5rem,3vw,3rem); background:#fbf7ed; color:#0e3d44; border-top:4px solid #e8d8ae; }
.island-detail .eyebrow { color:#426365; line-height:1.65; }
.island-detail h3 { margin:1rem 0 1.5rem; font:400 clamp(2.4rem,4vw,4.1rem)/1.05 var(--serif); letter-spacing:-.04em; }
#island-description { min-height:160px; color:#526b6c; line-height:1.8; font-size:1rem; }
.island-detail-label { margin-top:1.75rem; font-size:.72rem; text-transform:uppercase; letter-spacing:.13em; font-weight:750; }
#island-highlights { display:flex; flex-wrap:wrap; gap:.5rem; padding:0; margin:1rem 0 2rem; list-style:none; }
#island-highlights li { padding:.45rem .7rem; border:1px solid #b9c7bb; font-size:.75rem; }
.island-source { display:inline-block; color:#0d6570; font-size:.8rem; line-height:1.5; margin-bottom:1.75rem; text-underline-offset:4px; }
.island-plan { display:block; text-align:center; padding:1rem; font-size:.75rem; background:#0d6570; color:#fff; }
.island-detail-note { margin:1.2rem 0 0; color:#526b6c; font-size:.8rem; line-height:1.7; }
.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; }
@media(max-width:1000px) { .island-explorer-layout { grid-template-columns:minmax(0,1.3fr) minmax(270px,1fr); gap:1.25rem; } .island-list { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:760px) { .island-explorer-layout { display:flex; flex-direction:column; } .island-map-wrap,.island-list,.island-detail { width:100%; box-sizing:border-box; } .island-list { grid-template-columns:repeat(2,minmax(0,1fr)); } .island-detail { min-height:0; } #island-description { min-height:0; } .island-choice { min-height:52px; } .island-detail h3 { font-size:2.8rem; } }

@media(max-width:760px) { .island-list { max-height:236px; overflow-y:auto; padding:3px; } .island-detail { scroll-margin-top:1rem; } }

.cook-islands-extension {border-top:1px solid #f4ecdd35;}
.cook-islands-highlights {display:flex;flex-wrap:wrap;gap:10px;margin:24px 0;}
.cook-islands-highlights span {padding:9px 13px;border:1px solid #f4ecdd60;font-size:.8rem;}

/* Distinct, readable seasonal cards across destination guides. */
.season .season-grid { gap: 1.25rem; border: 0; }
.season .season-grid article {
  background: #fffdf8;
  border: 1px solid #b5bfc0;
  border-top: 4px solid #9b763e;
  border-radius: 3px;
  color: #102c38;
  padding: 2rem;
  min-height: 0;
  display: flex;
  flex-direction: column;
}
.season .season-grid article:nth-child(even) { background: #ede9df; }
.season .season-grid article span { color: #725024; }
.season .season-grid article h3 { color: #102c38; margin: 1.5rem 0 1rem; }
.season .season-grid article p { color: #465b63; margin: 0 0 1.5rem; }
.season .season-grid article em {
  position: static;
  display: block;
  margin-top: auto;
  padding-top: 1rem;
  border-top: 1px solid #b5bfc0;
  color: #102c38;
}
@media (max-width: 760px) {
  .season .season-grid { grid-template-columns: 1fr; gap: 1rem; }
  .season .season-grid article { padding: 1.5rem; }
}

/* guide-family.css */
/* Shared travel-guide presentation; destination palettes stay local to the guide. */
.country-guide{--guide-accent:#895028;--guide-highlight:#f2c990;--guide-dark:#30271f;--guide-surface:#faf6ed;--guide-paper:#fffdf8;--guide-muted:#665e52;--guide-band:#794632;--serif:Georgia,'Times New Roman',serif;background:var(--guide-surface);color:var(--guide-dark)}
.country-guide.theme-new-zealand{--guide-accent:#3e6048;--guide-highlight:#cfdec0;--guide-dark:#173d32;--guide-surface:#f3f5ed;--guide-paper:#fcfdf8;--guide-muted:#54665e;--guide-band:#245144}
.country-guide.theme-greece{--guide-accent:#0a4764;--guide-highlight:#a8d6e6;--guide-dark:#102a3a;--guide-surface:#f8f6f0;--guide-paper:#fffdf8;--guide-muted:#55707b;--guide-band:#0a4764}
.country-guide.theme-italy{--guide-accent:#576143;--guide-highlight:#dde2c9;--guide-dark:#263e36;--guide-surface:#f7f3eb;--guide-paper:#fffdf8;--guide-muted:#5d665b;--guide-band:#576143}
.country-guide.theme-caribbean{--guide-accent:#0d6570;--guide-highlight:#b9ddd7;--guide-dark:#0e3d44;--guide-surface:#fbf7ed;--guide-paper:#fffdf8;--guide-muted:#526b6c;--guide-band:#0d6570}
.country-guide :is(h1,h2,h3){font-family:var(--serif);font-weight:400;text-wrap:balance;overflow-wrap:normal;word-break:normal;hyphens:none}
.country-guide :is(.land-sea h2,.culture-heading h2,.honeymoon h2,.season h2,.planning h2,.process h2,.theme-faq h2,.blend h2){font-size:clamp(38px,4.8vw,76px);line-height:1.08;letter-spacing:-.035em;margin:0 0 26px}
.country-guide .eyebrow{color:var(--guide-accent);font-size:11px;line-height:1.6;letter-spacing:.14em;text-transform:uppercase;margin:0 0 22px}
.country-guide .eyebrow.light,.country-guide .guide-hero .eyebrow{color:#fff}
.country-guide .guide-hero{position:relative;margin:0;padding:165px 7% 65px;min-height:360px;color:#fff;background:linear-gradient(90deg,rgba(9,28,29,.82),rgba(9,28,29,.48)),var(--page-photo,var(--destination-hero)) center/cover}
.country-guide .guide-hero h1{font-size:clamp(40px,5vw,70px);line-height:1.12;letter-spacing:-.035em;margin:12px 0 25px;max-width:1050px}
.country-guide .guide-hero .country-breadcrumbs{padding:0;margin:0 0 28px;font-size:12px;color:#fff}
.country-guide .guide-hero a{color:inherit}
.country-guide .country-jump{display:flex;flex-wrap:wrap;justify-content:center;gap:18px 34px;margin:0;padding:23px 7%;background:var(--guide-dark);color:#fff;font-size:11px;text-transform:uppercase;letter-spacing:.08em}
.country-guide .country-jump a:hover{color:var(--guide-highlight)}
.country-guide :is(.cultural-experiences,.season,.process,.theme-faq){padding:clamp(55px,7vw,100px) 7%;margin:0;width:auto;max-width:none}
.country-guide :is(.culture-heading,.season .section-heading){display:block;max-width:820px;margin:0 0 42px}
.country-guide :is(.culture-heading>p:not(.eyebrow),.season .section-heading>p:not(.eyebrow)){font-size:17px;line-height:1.8;color:var(--guide-muted);max-width:760px}
.country-guide .land-sea{display:grid;grid-template-columns:1.25fr 1fr;background:var(--guide-paper);margin:0;width:auto;max-width:none}
.country-guide .land-sea-image-wrap{position:relative;min-height:600px;overflow:hidden}
.country-guide .land-sea-image-wrap img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.country-guide .land-sea-copy{padding:clamp(45px,6vw,90px) clamp(25px,4vw,65px)}
.country-guide .lead{color:var(--guide-muted);font-size:17px;line-height:1.85;margin:0 0 28px}
.country-guide .photo-label{position:absolute;bottom:26px;left:26px;background:rgba(9,28,29,.85);color:#fff;padding:9px 14px;font-size:10px;letter-spacing:.1em;text-transform:uppercase}
.country-guide .cruise-points{display:grid;gap:22px;margin-top:30px}
.country-guide .cruise-points>div{display:grid;grid-template-columns:28px 1fr;gap:16px;border-top:1px solid #b5bfc0;padding-top:20px}
.country-guide .cruise-points p{font-size:15px;line-height:1.8;color:var(--guide-muted);margin:0}
.country-guide .theme-point-number,.country-guide .cruise-points svg{color:var(--guide-accent)}
.country-guide .route-line{grid-column:1/-1;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;padding:25px 7%;background:var(--guide-highlight);color:var(--guide-dark);font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.country-guide .culture-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}
.country-guide .culture-grid article{border-top:1px solid var(--guide-accent);padding-top:25px}
.country-guide .culture-grid h3{font-size:clamp(28px,3vw,42px);line-height:1.15;margin:0 0 18px}
.country-guide .culture-grid p{color:var(--guide-muted);line-height:1.85;font-size:16px}
.country-guide .blend{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:clamp(55px,7vw,100px) 7%;background:var(--guide-dark);color:#fff}
.country-guide .blend p{color:#e2e9e3;line-height:1.8;font-size:17px}
.country-guide .blend .eyebrow{color:var(--guide-highlight)}
.country-guide .honeymoon{display:grid;grid-template-columns:76px 1.2fr 1fr;gap:40px;padding:clamp(55px,7vw,100px) 7%;background:var(--guide-highlight);color:var(--guide-dark)}
.country-guide .honeymoon-mark{display:grid;place-items:center;width:70px;height:70px;border:1px solid var(--guide-accent);border-radius:50%;font-size:32px;color:var(--guide-accent)}
.country-guide .honeymoon-copy{align-self:end;font-size:17px;line-height:1.8}
.country-guide .honeymoon-copy p,.country-guide .honeymoon-copy li{color:var(--guide-dark)}
.country-guide .season{background:var(--guide-surface);color:var(--guide-dark)}
.country-guide .season-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;border:0}
.country-guide .season-grid article{display:flex;flex-direction:column;min-height:0;padding:30px;background:var(--guide-paper);color:var(--guide-dark);border:1px solid #b5bfc0;border-top:4px solid var(--guide-accent);border-radius:3px}
.country-guide .season-grid article:nth-child(even){background:var(--guide-highlight)}
.country-guide .season-grid article span{color:var(--guide-accent);font-size:11px;letter-spacing:.1em;line-height:1.7}
.country-guide .season-grid article h3{font-size:32px;line-height:1.15;color:var(--guide-dark);margin:24px 0 18px}
.country-guide .season-grid article p{font-size:15px;line-height:1.8;color:var(--guide-muted);margin:0 0 22px}
.country-guide .season-grid article em{position:static;display:block;margin-top:auto;padding-top:17px;border-top:1px solid #b5bfc0;color:var(--guide-dark);font-size:11px;line-height:1.6;letter-spacing:.06em;text-transform:uppercase;font-style:normal}
.country-guide .planning{padding:clamp(55px,7vw,100px) 7%;margin:0;width:auto;max-width:none;background:var(--guide-band);color:#fff}
.country-guide .planning-intro{display:block;max-width:800px;margin-bottom:45px}
.country-guide .planning p,.country-guide .planning .eyebrow{color:#fff;line-height:1.8}
.country-guide .service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:35px 25px}
.country-guide .service-card{border:0;border-top:1px solid #ffffff50;padding:24px 0 0;min-height:0}
.country-guide .service-card h3{font-size:24px;line-height:1.2;margin:18px 0}
.country-guide .service-card p{font-size:14px;color:#e4ece5}
.country-guide .theme-service-number,.country-guide .service-card svg{color:var(--guide-highlight)}
.country-guide .process{display:grid;grid-template-columns:1fr 1fr;gap:70px;background:var(--guide-paper)}
.country-guide .process ol{padding:0;margin:0;list-style:none}
.country-guide .process li{display:grid;grid-template-columns:35px 1fr;gap:18px;border-top:1px solid #b5bfc0;padding:22px 0}
.country-guide .process li span{color:var(--guide-accent)}
.country-guide .process h3{font-size:24px;margin:0 0 12px}
.country-guide .process li p{color:var(--guide-muted);font-size:15px;line-height:1.8;margin:0}
.country-guide .theme-faq{background:var(--guide-surface)}
.country-guide .destination-faq{max-width:none}
.country-guide .destination-faq details{border-top:1px solid #b5bfc0;padding:22px 0}
.country-guide .destination-faq summary{font-size:18px;cursor:pointer;line-height:1.5}
.country-guide .destination-faq p{font-size:16px;line-height:1.8;color:var(--guide-muted);max-width:850px}
.country-guide :is(.primary-cta,.theme-cta){background:var(--guide-highlight);border-color:var(--guide-highlight);color:var(--guide-dark)}
.country-guide a:focus-visible,.country-guide summary:focus-visible{outline:3px solid var(--guide-accent);outline-offset:4px}
@media(max-width:1100px){.country-guide .honeymoon{grid-template-columns:65px 1fr}.country-guide .honeymoon-copy{grid-column:2}.country-guide .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.country-guide .land-sea-image-wrap{min-height:500px}}
@media(max-width:760px){.country-guide .guide-hero{padding:125px 7% 45px;min-height:320px}.country-guide .guide-hero h1{font-size:42px}.country-guide :is(.land-sea h2,.culture-heading h2,.honeymoon h2,.season h2,.planning h2,.process h2,.theme-faq h2,.blend h2){font-size:38px}.country-guide .country-jump{gap:14px 18px;padding:20px 7%;font-size:10px}.country-guide :is(.land-sea,.blend,.process,.culture-grid){grid-template-columns:1fr;gap:30px}.country-guide .land-sea{gap:0}.country-guide .land-sea-image-wrap{min-height:350px}.country-guide .land-sea-copy{padding:45px 7%}.country-guide .honeymoon{grid-template-columns:1fr;gap:24px}.country-guide .honeymoon-copy{grid-column:auto}.country-guide .honeymoon-mark{width:60px;height:60px}.country-guide .season-grid{grid-template-columns:1fr}.country-guide .season-grid article{padding:26px}.country-guide .service-grid{grid-template-columns:1fr}.country-guide .planning-intro{margin-bottom:35px}.country-guide .route-line{font-size:10px}.country-guide .guide-hero .country-breadcrumbs{font-size:11px}}

/* site-quality.css */
/* Shared navigation: the same surface, type, targets and focus treatment. */
.family-header,.nd-header{color:#fff;border-bottom-color:#ffffff55}
.family-header .family-menu-panel,.nd-header .nd-panel{background:#071f2b;color:#fff;border:1px solid #ffffff40;border-radius:0;box-shadow:0 16px 42px #0005;padding:24px;scrollbar-gutter:stable}
.family-header .family-menu-panel>a,.family-header .menu-local>a,.family-header .destination-menu>summary,.nd-header .nd-panel>a,.nd-header .nd-destinations>summary,.nd-header .nd-local>a,.nd-header .ports-menu-local>a{font:400 14px/1.5 Arial,sans-serif;letter-spacing:0;text-transform:none;color:#fff;min-height:44px;padding:11px 0;box-sizing:border-box;display:block}
.family-header .destination-menu>summary,.nd-header .nd-destinations>summary{display:flex;align-items:center;justify-content:space-between}
.family-header .destination-submenu>a,.nd-header .nd-destination-links>a{font:400 14px/1.5 Arial,sans-serif;letter-spacing:0;color:#fff;min-height:44px;padding:11px 0;box-sizing:border-box;display:block}
.family-header .family-menu-panel .eyebrow,.nd-header .nd-panel .nd-kicker{font:700 11px/1.6 Arial,sans-serif;letter-spacing:.12em;color:#e9d6b7}
.family-header .compact-nav,.nd-header .nd-controls{font-family:Arial,sans-serif}
.family-header .family-menu-panel .shop-link,.nd-header .nd-panel .nd-shop,.family-header .destination-submenu a[aria-current],.nd-header .nd-destination-links a[aria-current]{color:#ffd997}
.family-header .family-menu-panel .menu-plan,.nd-header .nd-panel .nd-panel-plan{border:1px solid #cbd8de;padding:12px 16px;margin-top:18px;text-align:center}
.family-header a:focus-visible,.family-header summary:focus-visible,.nd-header a:focus-visible,.nd-header summary:focus-visible{outline:3px solid #ffd997;outline-offset:3px}
.family-header .family-menu-panel a:hover,.nd-header .nd-panel a:hover{color:#ffd997;text-decoration:underline;text-underline-offset:4px}
@media(max-width:760px){.family-header .family-menu-panel,.nd-header .nd-panel{left:5%;right:5%;width:auto;top:92px;max-height:calc(100dvh - 108px);padding:20px}.family-header .family-brand img,.nd-header .nd-brand img{width:100px;height:58px}}

/* Keep the landscape clear, with shading concentrated beneath copy and navigation. */
.hero .hero-shade{background:linear-gradient(180deg,rgba(4,22,29,.68),transparent 28%),linear-gradient(90deg,rgba(4,22,29,.70),rgba(4,22,29,.62) 57%,rgba(4,22,29,.08) 90%)}
.journey-hero .hero-shade{background:linear-gradient(180deg,rgba(4,22,29,.72),transparent 36%),linear-gradient(0deg,rgba(4,22,29,.78),rgba(4,22,29,.62) 32%,transparent 72%)}
.hero h1,.hero .hero-subtitle,.hero .hero-tagline,.journey-hero h1,.journey-hero .country-breadcrumbs{ text-shadow:0 2px 12px #04161d66 }
.hero .hero-caption,.journey-hero .hero-caption{color:#fff;text-shadow:0 1px 5px #000}

/* Distinguish the guide introduction from the long itinerary collection. */
.guide-overview.wrap,.greece-collection .guide-overview.wrap{width:100%;max-width:none;margin:0;padding:56px max(7vw,calc((100vw - 1320px)/2));background:#dfeaec;color:#153441;border-block:1px solid #bdcfd4}
.guide-overview h2,.guide-overview .eyebrow,.guide-overview a{color:#153441}
.guide-overview a{font-size:16px;min-height:44px;border-color:#a7bdc5}
.journey-card .card-meta,.journey-card .route,.result-count{font-size:12px;line-height:1.65}
.journey-card .card-body p{font-size:15px;line-height:1.75;color:#40565f}
.journey-card .card-body .text-link{font-size:14px;min-height:40px;align-items:center;color:#153441}
.journey-card{background:#fffdf8;border-bottom:3px solid #bdcfd4}
.journey-card .card-body{padding:20px}
.journey-overview .eyebrow,.journey-overview p.eyebrow,.journey-overview .journey-intro .eyebrow,.chapters+.planning .eyebrow{color:#694421}
.chapters>article{padding:28px;margin-block:20px;background:#fffdf8;border:1px solid #d9ded8}
.chapters>article:nth-of-type(even){background:#e6eeea}
.next-journey.wrap,.regions-related.wrap{width:100%;max-width:none;padding:48px max(7vw,calc((100vw - 1320px)/2));background:#e7ddcc;color:#153441}
.country-guide .guide-hero{background-image:linear-gradient(90deg,rgba(4,22,29,.72),rgba(4,22,29,.62) 58%,rgba(4,22,29,.12)),var(--page-photo,var(--destination-hero))!important}
.country-guide .honeymoon .eyebrow,.country-guide .season-rows>div>span,.country-guide .season-list>div>span{color:#67471e}
.country-guide .honeymoon p,.country-guide .season-rows p,.country-guide .season-list p{color:#334d50}
.country-guide.theme-italy .season .section-heading>p{color:#3c5145}
.country-guide.theme-australia .honeymoon p,.country-guide.theme-australia .season-rows p,.country-guide.theme-australia .season-list p{color:#493c30}
.country-guide .season-grid article p,.country-guide .season-grid article span{color:#334d43}
.country-guide.theme-australia .season-grid article p,.country-guide.theme-australia .season-grid article span{color:#493c30}
.destination-experience .season-grid article p,.destination-experience .season-grid article span{color:#334d43}
.country-guide .cook-islands-extension{background:#dfeae5;color:#173d32}
.country-guide .cook-islands-extension p,.country-guide .cook-islands-extension h2,.country-guide .cook-islands-extension .eyebrow,.country-guide .cook-islands-extension li{color:#173d32}
.country-guide .theme-gallery+.season,.country-guide .greece-collage+.season{background:#e4ece5;color:#173d32}
.country-guide .theme-gallery+.season p,.country-guide .greece-collage+.season p{color:#334d43}
.approach-photo>span,.guide-culture-photo>span{background:#071f2be8;color:#fff;padding:7px 12px;font-size:12px;text-shadow:none}
@media(max-width:760px){.guide-overview.wrap,.greece-collection .guide-overview.wrap{padding:38px 7%}.chapters>article{padding:22px}.next-journey.wrap,.regions-related.wrap{padding:38px 7%}}

/* page-details.css */
/* Consistent details, with colours inherited from each destination. */
:root{--nd-detail-deep:#173d38;--nd-detail-paper:#edf0e7;--nd-detail-ink:#193a34;--nd-detail-accent:#9b6c36;--nd-icon-art:url('/nd-icons-travel.svg');--nd-icon-width:720px}
[data-nd-theme="australia"]{--nd-detail-deep:#653e2c;--nd-detail-paper:#f2e9db;--nd-detail-ink:#513622;--nd-detail-accent:#9b6232;--nd-icon-art:url('/nd-icons-australia.svg');--nd-icon-width:840px}
[data-nd-theme="new-zealand"]{--nd-detail-deep:#245144;--nd-detail-paper:#edf2e8;--nd-detail-ink:#173d32;--nd-detail-accent:#52733d;--nd-icon-art:url('/nd-icons-new-zealand.svg');--nd-icon-width:840px}
[data-nd-theme="italy"]{--nd-detail-deep:#633b2c;--nd-detail-paper:#f3e8dc;--nd-detail-ink:#4d3027;--nd-detail-accent:#a06332;--nd-icon-art:url('/nd-icons-italy.svg');--nd-icon-width:840px}
[data-nd-theme="ireland"]{--nd-detail-deep:#173d43;--nd-detail-paper:#e7eee6;--nd-detail-ink:#173d43;--nd-detail-accent:#a16e38;--nd-icon-art:url('/nd-icons-ireland.svg')}
[data-nd-theme="iceland"]{--nd-detail-deep:#173544;--nd-detail-paper:#e7edef;--nd-detail-ink:#173544;--nd-detail-accent:#826232;--nd-icon-art:url('/nd-icons-iceland.svg')}
[data-nd-theme="greece"]{--nd-detail-deep:#0a4764;--nd-detail-paper:#e9f0f2;--nd-detail-ink:#102a3a;--nd-detail-accent:#a3732a;--nd-icon-art:url('/nd-icons-greece.svg')}
[data-nd-theme="cruises"],[data-nd-theme="curated-cruises"]{--nd-detail-deep:#14313c;--nd-detail-paper:#e5eeeb;--nd-detail-ink:#14313c;--nd-detail-accent:#a65c3c;--nd-icon-art:url('/nd-icons-cruises.svg')}
[data-nd-theme="curated-cruises"]{--nd-detail-deep:#071f4d;--nd-detail-paper:#e9edf5;--nd-detail-ink:#071f4d;--nd-detail-accent:#9b6b00}
[data-nd-theme="celebration"]{--nd-detail-deep:#4a2432;--nd-detail-paper:#f5e7e6;--nd-detail-ink:#4a2432;--nd-detail-accent:#a74d69;--nd-icon-art:url('/nd-icons-celebration.svg')}
[data-nd-theme="accessible"]{--nd-detail-deep:#10272f;--nd-detail-paper:#ecece4;--nd-detail-ink:#10272f;--nd-detail-accent:#895943;--nd-icon-art:url('/nd-icons-accessible.svg')}
[data-nd-theme="caribbean"]{--nd-detail-deep:#17636b;--nd-detail-paper:#e8f2ef;--nd-detail-ink:#154851;--nd-detail-accent:#92703c;--nd-icon-art:url('/nd-icons-caribbean.svg');--nd-icon-width:840px}
.nd-scroll-icons{--nd-icon-repeat:calc(var(--nd-icon-width) * .88);position:relative;height:132px;overflow:hidden;background:var(--nd-detail-deep);border-block:1px solid #ffffff2b}
.nd-scroll-icons::before{content:"";display:block;width:100%;height:100%;background-image:var(--nd-icon-art);background-repeat:repeat-x;background-size:var(--nd-icon-repeat) 132px;background-position:0 center;animation:nd-detail-drift 42s linear infinite}
.nd-scroll-icons:hover::before{animation-play-state:paused}
@keyframes nd-detail-drift{to{background-position:calc(-1 * var(--nd-icon-repeat)) center}}
.nd-shop-strip{padding:24px clamp(20px,4vw,60px);background:var(--nd-detail-paper);color:var(--nd-detail-ink);border-block:1px solid color-mix(in srgb,var(--nd-detail-ink) 22%,transparent)}
.nd-shop-strip .nd-shop-strip-inner{width:min(1320px,100%);margin:auto;display:grid;grid-template-columns:1fr 1.8fr auto;align-items:center;gap:20px}
.nd-shop-strip .nd-shop-strip-kicker{margin:0;font:800 12px/1.5 var(--sans,Arial,sans-serif);letter-spacing:.12em;text-transform:uppercase;color:inherit}
.nd-shop-strip .nd-shop-strip-copy{margin:0;font:400 clamp(18px,2vw,24px)/1.5 var(--serif,Georgia,serif);color:inherit;text-align:center}
.nd-shop-strip a{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:44px;padding:8px 0;font:700 14px/1.5 var(--sans,Arial,sans-serif);color:inherit;text-decoration:none;border-bottom:1px solid currentColor;white-space:nowrap}
.nd-shop-strip a:hover{color:var(--nd-detail-accent)}
.nd-shop-strip a:focus-visible{outline:3px solid var(--nd-detail-accent);outline-offset:5px}
/* Inset borders keep the grid dimensions steady while a block is highlighted. */
:is(.step,.steps>article,.process-steps>li,.process ol>li,.service-card,.region-card,.journey-card,.celebration-card,.fit-card,.benefits>article,.trip-pieces>article,.pathway,.resource-card,.checklist-card,.nd-highlight-block,article[tabindex="0"],.trip-list>li,.detail-grid>article,.inspiration-card,.sailing-card,.journey-photo,.destination-photo){transition:box-shadow .2s ease,outline-color .2s ease;outline:2px solid transparent;outline-offset:-2px}
:is(.step,.steps>article,.process-steps>li,.process ol>li,.service-card,.region-card,.journey-card,.celebration-card,.fit-card,.benefits>article,.trip-pieces>article,.pathway,.resource-card,.checklist-card,.nd-highlight-block,article[tabindex="0"],.trip-list>li,.detail-grid>article,.inspiration-card,.sailing-card,.journey-photo,.destination-photo):is(:hover,:focus,:focus-within,:active){box-shadow:inset 0 0 0 3px var(--nd-detail-accent);outline-color:var(--nd-detail-accent)}
:is(.step,.steps>article,.process-steps>li,.process ol>li,.service-card,.region-card,.journey-card,.celebration-card,.fit-card,.benefits>article,.trip-pieces>article,.pathway,.resource-card,.checklist-card,.nd-highlight-block,article[tabindex="0"],.trip-list>li,.detail-grid>article,.inspiration-card,.sailing-card,.journey-photo,.destination-photo):focus-visible{outline:3px solid var(--nd-detail-accent);outline-offset:3px}
@media(max-width:700px){.nd-scroll-icons{--nd-icon-repeat:calc(var(--nd-icon-width) * .7333333333333333);height:110px}.nd-scroll-icons::before{background-size:var(--nd-icon-repeat) 110px}.nd-shop-strip .nd-shop-strip-inner{grid-template-columns:1fr;gap:8px;text-align:center}.nd-shop-strip .nd-shop-strip-copy{text-align:center}.nd-shop-strip a{justify-self:center}}
@media(prefers-reduced-motion:reduce){.nd-scroll-icons::before{animation:none}:is(.step,.steps>article,.process-steps>li,.process ol>li,.service-card,.region-card,.journey-card,.celebration-card,.fit-card,.benefits>article,.trip-pieces>article,.pathway,.resource-card,.checklist-card,.nd-highlight-block,article[tabindex="0"],.trip-list>li,.detail-grid>article,.inspiration-card,.sailing-card,.journey-photo,.destination-photo){transition:none}}

/* inquiry-links.css */
/* Explain the destination of every FORA inquiry link before it is opened. */
a.nd-inquiry-link{display:inline-flex;flex-direction:column;align-items:flex-start;justify-content:center;max-width:100%;vertical-align:top;white-space:normal;gap:0}
a.nd-inquiry-link>.nd-inquiry-label{display:block;margin:0}
a.nd-inquiry-link>.nd-inquiry-note{display:block;margin:6px 0 0;padding:0;max-width:28em;font:400 12px/1.45 Arial,sans-serif;letter-spacing:normal;text-transform:none;white-space:normal;color:inherit;text-decoration:none;opacity:1}
a.button.nd-inquiry-link,a.nd-planning-button.nd-inquiry-link,a.theme-cta.nd-inquiry-link,a.primary-cta.nd-inquiry-link{align-items:center;text-align:center}
.nd-header a.nd-plan.nd-inquiry-link{max-width:228px;text-align:center;align-items:center;box-sizing:border-box}
.nd-header a.nd-plan>.nd-inquiry-label{display:block;margin:0}
.nd-header a.nd-plan>.nd-inquiry-note{display:block;margin:5px 0 0;font-size:10px;line-height:1.3}
.nd-panel a.nd-panel-plan.nd-inquiry-link{display:flex;text-align:center;align-items:center}
.footer-links a.nd-inquiry-link>.nd-inquiry-note{font-size:11px;max-width:22em}
@media(max-width:760px){.nd-header a.nd-plan.nd-inquiry-link{max-width:148px;padding:8px 10px}.nd-header a.nd-plan>.nd-inquiry-note{display:block;font-size:9px;line-height:1.25}.nd-header a.nd-plan>.nd-inquiry-label{display:block}}
@media(max-width:380px){.nd-header .nd-shell{padding-left:4%;padding-right:4%;gap:8px}.nd-header .nd-controls{gap:8px}.nd-header .nd-brand img{width:82px}.nd-header a.nd-plan.nd-inquiry-link{max-width:132px}}

/* client-portal.css */
/* Client Portal: inherit the current page's established theme. */
.nd-client-portal{--cp-ink:var(--nd-detail-ink,var(--ink,var(--navy,#10272f)));--cp-deep:var(--nd-detail-deep,var(--deep,var(--primary,var(--navy,#173d38))));--cp-paper:var(--paper,var(--ivory,var(--cream,#fffdf8)));--cp-soft:var(--nd-detail-paper,var(--sand,var(--cream,#edf0e7)));--cp-accent:var(--nd-detail-accent,var(--gold,var(--coral,#9b6c36)));display:block;position:relative;clear:both;width:auto;max-width:none;min-height:0;margin:0;padding:32px 5vw;border:0;background:var(--cp-paper);color:var(--cp-ink);text-align:left;font-family:inherit;box-sizing:border-box}
.nd-client-portal *{box-sizing:border-box}
.nd-client-portal .nd-cp-shell{max-width:1280px;margin:0 auto;padding:28px;background:var(--cp-soft);border-top:3px solid var(--cp-accent)}
.nd-client-portal .nd-cp-body{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.nd-client-portal .nd-cp-copy{flex:1 1 420px;min-width:0}
.nd-client-portal .nd-cp-kicker{display:block;color:var(--cp-ink);font-weight:600;font-family:inherit;font-size:11px;line-height:1.5;letter-spacing:.15em;text-transform:uppercase;margin:0 0 12px}
.nd-client-portal h2{max-width:none;margin:0 0 12px;color:var(--cp-ink);font-family:var(--serif,Georgia,'Times New Roman',serif);font-size:clamp(25px,3vw,33px);font-weight:400;line-height:1.18;letter-spacing:-.02em;text-transform:none}
.nd-client-portal p{max-width:none;margin:0 0 12px;color:var(--cp-ink);font-family:inherit;font-size:15px;font-weight:400;line-height:1.65;letter-spacing:normal}
.nd-client-portal .nd-cp-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;flex:0 1 auto}
.nd-client-portal a.nd-cp-primary,.nd-client-portal a.nd-cp-secondary{display:inline-flex;justify-content:center;align-items:center;gap:8px;min-height:48px;max-width:100%;padding:13px 18px;border:1px solid var(--cp-deep);border-radius:0;background:var(--cp-deep);color:var(--cp-paper);font-family:inherit;font-size:14px;font-weight:600;line-height:1.5;text-align:center;text-decoration:none;white-space:normal}
.nd-client-portal a.nd-cp-secondary{background:transparent;color:var(--cp-ink);border-color:currentColor}
.nd-client-portal a.nd-cp-primary:hover,.nd-client-portal a.nd-cp-secondary:hover{opacity:.85}
.nd-client-portal a:focus-visible,.nd-client-portal summary:focus-visible{outline:3px solid var(--cp-accent);outline-offset:4px}
.nd-client-portal .nd-cp-caption{font-size:12px;line-height:1.6;margin:10px 0 0}
.nd-client-portal .nd-cp-note{display:block;margin:18px 0 0;padding:16px 0 0;border:0;border-top:1px solid color-mix(in srgb,var(--cp-ink) 22%,transparent);background:transparent;color:var(--cp-ink)}
.nd-client-portal .nd-cp-note p,.nd-client-portal .nd-cp-note details{font-size:13px;line-height:1.65}
.nd-client-portal .nd-cp-note p:last-child{margin-bottom:0}
.nd-client-portal .nd-cp-note details{display:block;background:transparent;color:var(--cp-ink);border:0;padding:0;margin:10px 0 0}
.nd-client-portal .nd-cp-note summary{display:list-item;cursor:pointer;min-height:34px;padding:6px 0;color:var(--cp-ink);font-family:inherit;font-size:13px;font-weight:600;line-height:1.6;letter-spacing:normal;border:0;text-transform:none}
.nd-client-portal .nd-cp-note summary::after{content:none}
.nd-client-portal .nd-cp-note a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.nd-client-portal.nd-cp-full{padding-top:64px;padding-bottom:64px}
.nd-client-portal.nd-cp-full .nd-cp-shell{padding:36px}
.nd-client-portal.nd-cp-full .nd-cp-body{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:start}
.nd-client-portal.nd-cp-full h2{font-size:clamp(32px,4vw,49px)}
.nd-client-portal.nd-cp-full .nd-cp-actions{margin-top:24px}
.nd-client-portal.nd-cp-full .nd-cp-note{margin:0;padding:0 0 0 28px;border:0;border-left:1px solid color-mix(in srgb,var(--cp-ink) 22%,transparent)}
.nd-client-portal .nd-cp-note h3{margin:0 0 14px;color:var(--cp-ink);font-family:var(--serif,Georgia,'Times New Roman',serif);font-size:25px;font-weight:400;line-height:1.3;letter-spacing:normal}
.nd-client-portal .nd-cp-note ul{margin:12px 0 16px;padding-left:20px;color:var(--cp-ink);font-size:14px;line-height:1.65;list-style:disc}
.nd-client-portal .nd-cp-note li{display:list-item;margin:5px 0;padding:0;color:inherit;font-size:inherit;line-height:inherit}
.nd-portal-footer{font-family:inherit;font-size:14px;line-height:1.6;margin:18px 0}.nd-portal-footer a{color:inherit;text-decoration:underline;text-underline-offset:4px;display:inline-flex;align-items:center;min-height:44px}
@media(max-width:760px){.nd-client-portal{padding:24px 5vw}.nd-client-portal .nd-cp-shell{padding:22px}.nd-client-portal .nd-cp-copy{flex-basis:100%}.nd-client-portal .nd-cp-actions{width:100%}.nd-client-portal.nd-cp-full{padding-top:36px;padding-bottom:36px}.nd-client-portal.nd-cp-full .nd-cp-shell{padding:24px}.nd-client-portal.nd-cp-full .nd-cp-body{grid-template-columns:1fr;gap:28px}.nd-client-portal.nd-cp-full .nd-cp-note{padding:24px 0 0;border-left:0;border-top:1px solid color-mix(in srgb,var(--cp-ink) 22%,transparent)}}
@media(max-width:420px){.nd-client-portal a.nd-cp-primary,.nd-client-portal a.nd-cp-secondary{width:100%}}
@media print{.nd-client-portal,.nd-portal-footer{display:none}}

/* card-spacing.css */
/* Comfortable space inside bordered and highlighted reading cards. */
[data-nd-theme] :is(.steps>article,.process-steps>li,.process ol>li,.benefits>article,.trip-pieces>article,.pathway,.trip-list>li,.country-guide .service-card){padding-inline:clamp(24px,2.5vw,36px)}
[data-nd-theme] :is(.steps>article,.country-guide .service-card){padding-block:clamp(24px,3vw,32px)}
[data-nd-theme="italy"] .region-card:not(:has(img)){padding-inline:clamp(24px,2.5vw,36px)}
/* Inset the copy while retaining the full image area above it. */
[data-nd-theme] .journey-card .card-body{padding:clamp(24px,2.5vw,30px)}
[data-nd-theme] :is(.question-list>details,.faq>details,.worksheet-group){padding-inline:clamp(20px,3vw,28px)}
@media(max-width:800px){
 [data-nd-theme] .steps{grid-template-columns:1fr}
 [data-nd-theme] :is(.process-steps>li,.trip-list>li){grid-template-columns:32px minmax(0,1fr);gap:16px}
}
