/* Travel notebook: native reading, vivid decision sheets and real route steps. */
.onepage-guide{background:#fff5df;--guide-ink:#123d47;--guide-accent:#d34438;color:var(--guide-ink)}
.onepage-reading{max-width:1180px}
.onepage-guide p,.onepage-guide li{font-size:1rem;line-height:1.8}
.onepage-guide .guide-eyebrow{display:block;font:600 .75rem/1.5 'DM Sans',sans-serif;letter-spacing:.13em}
.onepage-guide :is(a,button,select):focus-visible{outline:3px solid #de623e;outline-offset:5px}
.onepage-guide .source-note{font-size:.8125rem;max-width:85ch}
.onepage-guide .mini{font-size:.75rem;line-height:1.5}
.onepage-guide .guide-cover-nav :is(a,p),.onepage-guide .guide-cover-start{font-size:.875rem}
.onepage-guide .guide-cover-intro>p{font-size:1rem}
.onepage-reading>section{margin-bottom:90px}
.onepage-reading .guide-planner{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:0;border:0;margin-bottom:100px;box-shadow:0 18px 45px #123d4712}
.planner-intro{background:#174b59;color:#fff5df;padding:clamp(25px,4vw,48px)}
.onepage-guide .planner-intro h2{font-size:clamp(42px,5vw,68px);margin:24px 0}
.onepage-guide .planner-intro h2 em{color:#ffce60}
.onepage-guide .planner-intro p{font-size:1rem}
#guide-trip-form{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:30px}
#guide-trip-form label{font:500 .875rem/1.5 'DM Sans',sans-serif;min-width:0}
#guide-trip-form select{display:block;width:100%;font:400 1rem 'DM Sans',sans-serif;color:#153d48;background:#fff5df;border:0;border-radius:0;padding:13px 10px;margin-top:9px}
#guide-trip-form button{grid-column:1/-1;min-height:48px;border:0;background:#ffd264;color:#173d48;font:600 1rem 'DM Sans',sans-serif;padding:15px 20px;cursor:pointer;border-radius:0}
#guide-trip-form button:hover{background:#ffe39b}
.onepage-guide .planner-note{font-size:.8125rem;line-height:1.65;color:#d4e7e7;margin-top:24px}
.trip-result{padding:clamp(25px,4vw,48px);background:#fbd76f;min-width:0;position:relative}
.onepage-guide .trip-result h3{font-size:clamp(32px,3.2vw,45px);margin:18px 0}
.onepage-guide .trip-result>p{font-size:1rem;margin-bottom:25px}
.onepage-guide .trip-days{list-style:none;padding:0;margin:0}
.onepage-guide .trip-days li{position:relative;padding:0 0 20px 46px;margin:0 0 18px;border-bottom:1px solid #174b5933;font-size:1rem}
.trip-days b{position:absolute;left:0;top:0;font:500 30px/1 'Cormorant Garamond',serif;color:#ab4137}
.onepage-guide .trip-days :is(strong,h4){font:600 1rem/1.4 'DM Sans',sans-serif;margin:0}
.onepage-guide .trip-days p{font-size:.875rem;line-height:1.65;margin:9px 0}
.onepage-guide .trip-days a{font-size:.875rem}
.onepage-guide .guide-action{display:inline-block;font-size:.875rem;padding:12px 0;font-weight:600}
.destination-cover{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;margin-bottom:30px}
.destination-title{min-width:0}.destination-title>.guide-eyebrow{margin-bottom:25px;color:#ad3b31}
.onepage-guide .destination-title h2{font-size:clamp(40px,4.8vw,70px);line-height:1;margin:0}
.destination-cover figure{margin:0;position:relative;overflow:hidden;border-radius:160px 160px 4px 4px;aspect-ratio:5/4;background:#123d47}
.destination-cover img{display:block;width:100%;height:100%;object-fit:cover}
.destination-cover figcaption{position:absolute;bottom:0;left:0;right:0;padding:50px 22px 20px;color:#fff;font:500 .875rem/1.5 'DM Sans',sans-serif;background:linear-gradient(transparent,#062b3be6)}
.destination-2 .destination-cover figure,.destination-4 .destination-cover figure{border-radius:4px 4px 150px 4px}
.destination-3 .destination-cover figure{border-radius:120px 4px 4px 120px}
.destination-5 .destination-cover figure{border-radius:50%}
.destination-brief{display:grid;grid-template-columns:1fr 1fr;background:#174b59;color:#fff5df;margin:0 0 20px;padding:24px 28px;gap:30px}
.destination-brief span{display:block;font-size:.75rem;letter-spacing:.12em;margin-bottom:10px;color:#b9ddd9}
.destination-brief strong{font:500 clamp(24px,2.6vw,34px)/1.1 'Cormorant Garamond',serif}
.destination-decisions{display:grid;grid-template-columns:1fr 1fr 1.15fr;gap:0;margin-bottom:30px;background:#e0ece7}
.destination-decisions>div{padding:24px;min-width:0}
.onepage-guide .destination-decisions h3{font-size:27px;margin:0 0 14px}
.onepage-guide .destination-decisions p{font-size:.9375rem;line-height:1.75;margin:0}
.destination-decisions .decision-highlight{background:#ffd66d}
.decision-highlight>.guide-eyebrow{color:#a64033;margin-bottom:12px}
.destination-3 .destination-brief{background:#67416d}.destination-4 .destination-brief{background:#315f43}.destination-5 .destination-brief{background:#8c342f}
.onepage-guide .guide-destination>.destination-entry{position:relative;padding:28px 0 28px 36px;border:0;border-left:2px solid #d6c8aa;margin-left:12px}
.destination-entry:before{content:'';position:absolute;left:-7px;top:38px;width:12px;height:12px;background:#d34438;border-radius:50%;box-shadow:0 0 0 5px #fff5df}
.onepage-guide .destination-entry>p{max-width:78ch}
.onepage-guide .destination-entry h3{font-size:32px;margin-top:0}
.onepage-guide .destination-entry a{font-size:.875rem}
.walking-strip{display:flex;gap:0;justify-content:space-between;margin:30px 0;background:#ffd66d;padding:18px 24px;flex-wrap:wrap}
.onepage-guide .walking-strip a{display:flex;align-items:center;gap:10px;font-size:.9375rem;text-decoration:none;padding:10px}
.walking-strip b{font:500 30px 'Cormorant Garamond',serif;color:#ad3b31}
.useful-note{padding:22px 25px;background:#e0ece7;border-left:4px solid #24746b;margin:24px 0}
.onepage-guide .useful-note p{font-size:.9375rem;margin:10px 0}
.useful-note small{display:block;font-size:.75rem;margin-top:12px}
.onepage-guide .region-list{gap:18px;grid-template-columns:repeat(3,minmax(0,1fr))}
.onepage-guide .region-list>section{position:relative;padding:28px;background:#174b59;color:#fff5df;border:0;min-width:0;display:flex;flex-direction:column}
.onepage-guide .region-list>section:nth-child(3n+2){background:#67416d}.onepage-guide .region-list>section:nth-child(3n){background:#9e3930}
.onepage-guide .region-list section>span{color:#ffd66d;font-size:42px;line-height:1}
.onepage-guide .region-list h3{font-size:28px;margin:20px 0}
.onepage-guide .region-list p{font-size:.9375rem;line-height:1.8}
.onepage-guide .region-list a{font-size:.875rem;display:inline-block;margin-top:15px;color:#ffdf96}
.route-sheet{border:1px solid #174b5940;margin:25px 0 40px;display:grid;grid-template-columns:32% 1fr;overflow:hidden}
.route-sheet>header{background:#174b59;color:#fff5df;padding:30px}
.route-sheet:nth-of-type(even)>header{background:#67416d}
.onepage-guide .route-sheet h3{font-size:35px;margin:20px 0}
.onepage-guide .route-sheet>header p{font-size:.9375rem;line-height:1.8}
.onepage-guide .route-sheet ol{list-style:none;padding:15px 30px;margin:0;counter-reset:journey-day}
.onepage-guide .route-sheet li{position:relative;padding:20px 0 20px 44px;margin:0;border-bottom:1px solid #174b5922;counter-increment:journey-day}
.route-sheet li:last-child{border:0}
.route-sheet li:before{content:counter(journey-day,decimal-leading-zero);position:absolute;left:0;top:22px;color:#b13b31;font:500 29px/1 'Cormorant Garamond',serif}
.onepage-guide .route-sheet h4{font:600 1rem/1.5 'DM Sans',sans-serif;margin:0}
.onepage-guide .route-sheet li p{font-size:.9375rem;margin:10px 0}
.onepage-guide .route-sheet a{font-size:.875rem}
.base-table-wrap{max-width:100%;overflow-x:auto;margin:30px 0;border:1px solid #174b5933}
.base-table{width:100%;border-collapse:collapse;min-width:600px;text-align:left;font:400 .9375rem/1.7 'DM Sans',sans-serif}
.base-table caption{text-align:left;font-weight:600;background:#ffd66d;padding:20px 25px;color:#123d47}
.base-table thead{background:#174b59;color:#fff5df}
.base-table th,.base-table td{padding:20px;vertical-align:top;border-bottom:1px solid #174b5922}
.base-table tbody th{width:23%;font-weight:600}.base-table tbody tr:nth-child(even){background:#e4ebe3}
.transport-board,.season-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:30px}
.transport-board article,.season-board article{padding:27px;min-width:0;background:#174b59;color:#fff5df}
.transport-board article:nth-child(2){background:#67416d}.transport-board article:nth-child(3){background:#ffd66d;color:#123d47}
.onepage-guide .transport-board h3,.onepage-guide .season-board h3{font-size:30px;margin:18px 0}
.onepage-guide .transport-board p,.onepage-guide .season-board p{font-size:.9375rem;line-height:1.8}
.onepage-guide .transport-board a{display:block;font-size:.875rem;margin-top:15px}
.season-board article{background:#dbe9e1;color:#123d47;border-top:4px solid #24746b}
.season-board article:nth-child(2){background:#ffdf94;border-color:#b54835}.season-board article:nth-child(3){background:#e7d9ec;border-color:#67416d}
.season-board span{font-size:.75rem;letter-spacing:.12em}
.onepage-guide details{background:#e5ece4;margin:12px 0;padding:22px 25px;border:0}
.onepage-guide details[open]{background:#ffd66d}
.onepage-guide .onepage-plan{padding:40px 0;gap:45px}
.onepage-guide .onepage-plan .mini{font-size:.75rem}
.onepage-guide .guide-maker{padding:clamp(25px,4vw,48px);border-radius:0 70px 0 0;background:#67416d}
.onepage-guide .guide-maker h2 em{color:#ffd66d}
@media(max-width:1000px){.onepage-guide .region-list{grid-template-columns:repeat(2,minmax(0,1fr))}.destination-decisions{grid-template-columns:1fr 1fr}.destination-decisions .decision-highlight{grid-column:1/-1}.route-sheet{grid-template-columns:36% 1fr}.destination-cover{gap:25px}.transport-board,.season-board{grid-template-columns:1fr}.onepage-guide .transport-board article,.onepage-guide .season-board article{padding:27px}}
@media(max-width:700px){.onepage-reading .guide-planner{grid-template-columns:1fr;margin-bottom:65px}.destination-cover{grid-template-columns:1fr;gap:25px}.destination-cover figure{aspect-ratio:3/2;border-radius:100px 100px 4px 4px}.onepage-guide .destination-title h2{font-size:clamp(36px,9vw,54px)}.destination-title>.guide-eyebrow{margin-bottom:18px}.destination-5 .destination-cover figure{border-radius:100px 100px 4px 4px}.destination-brief{grid-template-columns:1fr;padding:23px;gap:20px}.destination-decisions{grid-template-columns:1fr}.destination-decisions .decision-highlight{grid-column:auto}.onepage-guide .region-list{grid-template-columns:1fr}.route-sheet{grid-template-columns:1fr}.onepage-guide .route-sheet ol{padding:10px 23px}.route-sheet>header{padding:25px}.onepage-guide .route-sheet h3{margin:15px 0}.onepage-guide .guide-destination>.destination-entry{padding-left:26px;margin-left:4px}.walking-strip{padding:12px}.onepage-guide .walking-strip a{font-size:.875rem}.onepage-reading>section{margin-bottom:65px}.onepage-guide p,.onepage-guide li{font-size:1rem}.onepage-guide .guide-cover-nav a{font-size:.875rem}.base-table{min-width:550px}.base-table th,.base-table td{padding:16px}.onepage-guide .guide-maker{border-radius:0 40px 0 0}}
@media print{.onepage-guide{padding:20px;background:white}.guide-trip-form,.journey-track{display:none}.onepage-guide .guide-planner,.route-sheet,.destination-cover{display:block}.destination-cover figure{max-height:220px}.base-table-wrap{overflow:visible}.base-table{min-width:0}.onepage-guide :is(.planner-intro,.trip-result,.route-sheet>header,.region-list>section,.transport-board article,.guide-maker){background:white!important;color:#111!important;box-shadow:none}a{color:#111!important}.destination-entry,.route-sheet li{break-inside:avoid}}
/* The dialog and guide expose the same trip, with controls that fit small screens. */
.shared-trip-form{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:25px 0}
.shared-trip-form label{font:500 1rem/1.5 'DM Sans',sans-serif}
.shared-trip-form select{display:block;width:100%;padding:12px;margin-top:8px;font:400 1rem 'DM Sans',sans-serif;background:#fff5df;color:#123d47;border:1px solid #123d4766}
#plan-dialog .trip-result{background:transparent;padding:20px 0;color:inherit}
#plan-dialog .trip-result h3{font:500 38px/1.1 'Cormorant Garamond',serif;margin:18px 0}
#plan-dialog .trip-days{list-style:none;padding:0}
#plan-dialog .trip-days li{position:relative;padding-left:45px;margin:20px 0;border-bottom:1px solid #123d4733;padding-bottom:20px}
#plan-dialog .trip-days :is(h4,p,a){font-family:'DM Sans',sans-serif;font-size:1rem;line-height:1.7}
#plan-dialog .trip-days h4{margin:0}#plan-dialog .trip-days p{margin:10px 0}
.trip-tools{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin:20px 0}
.trip-tools button{padding:13px 18px;min-height:46px;font:500 .9375rem 'DM Sans',sans-serif;color:#fff5df;background:#174b59;border:0;cursor:pointer}
.trip-tools [role=status]{font-size:.875rem;flex-basis:100%}
.guide-trip-tools{grid-column:1/-1;margin:0;padding:22px 30px;background:#e0ece7}
.trip-copy-fallback{width:100%;min-height:160px;padding:15px;font:400 1rem/1.5 'DM Sans',sans-serif;box-sizing:border-box;background:#fff5df;color:#123d47}
.trip-copy-fallback[hidden]{display:none}
@media(max-width:500px){.shared-trip-form{grid-template-columns:1fr;gap:15px}.guide-trip-tools{padding:22px 25px}.trip-tools button{flex:1}}
