:root{--ink:#383838;--paper:#faf8f3;--muted:#646464;--line:#dcded5;--accent:#625945}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Arial,sans-serif}a{color:inherit}button,input{font:inherit}button,a,input{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #8d8267;outline-offset:5px}header{height:108px;display:flex;align-items:center;justify-content:space-between;padding:0 6%}.brand{text-decoration:none;display:flex;align-items:center;gap:14px;font-size:35px}.brand span{font-size:20px;letter-spacing:.24em;line-height:1.3}.brand small{display:block;font-size:10px;text-align:center;letter-spacing:.55em}nav{display:flex;gap:32px;font-size:12px}nav a{text-decoration:none}.hero{height:660px;min-height:70vh;position:relative;background:#383838;color:white;margin:0 24px}.hero img{width:100%;height:100%;object-fit:cover;object-position:center 55%;filter:brightness(.62)}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#38383885,transparent)}.hero-copy{position:absolute;left:7%;top:16%;z-index:1}.eyebrow{font-size:10px;letter-spacing:.24em;font-weight:600}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.12}h1{font-size:clamp(45px,5.7vw,83px);letter-spacing:-.04em;margin:25px 0}h2{font-size:clamp(34px,4vw,52px);letter-spacing:-.035em;margin-bottom:25px}h3{font-size:25px}.hero-copy>p:not(.eyebrow){font-size:15px;line-height:1.7}.caption{position:absolute;bottom:25px;left:7%;z-index:1;font-size:10px;letter-spacing:.1em}.button{background:var(--ink);color:white;border:1px solid var(--ink);padding:15px 23px;text-decoration:none;display:inline-flex;align-items:center;justify-content:space-between;gap:35px;font-size:12px;cursor:pointer}.light{background:var(--paper);color:var(--ink);border-color:var(--paper);margin-top:15px}.wrap{max-width:1250px;margin:auto;padding:80px 45px}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.intro-grid>p{max-width:480px;color:var(--muted)}.facts{display:grid;grid-template-columns:1fr 1fr;gap:20px}.facts div:last-child{grid-column:1/-1}.facts b{display:block;font-family:Georgia,serif;font-weight:400;font-size:23px}.facts span,.note{font-size:12px;color:var(--muted)}.journey{border-top:1px solid var(--line)}.section-head{display:flex;justify-content:space-between;gap:35px}.section-head>p{font-size:13px;color:var(--muted)}.timeline{padding:0;list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:0 32px}.timeline li{padding:24px 0;border-top:1px solid var(--line)}.timeline time{font-size:11px;letter-spacing:.1em;color:var(--accent)}.timeline h3{font-size:23px;margin:12px 0}.timeline p{font-size:13px;color:var(--muted);margin:0}.builder{background:#eef0e9}.lede{color:var(--muted);font-size:14px;margin-bottom:45px}.planner{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:55px;align-items:start}.control{padding:25px 0;border-top:1px solid #c6bb99}.control-head{display:flex;justify-content:space-between;gap:15px}.control h3{font-size:21px;margin-bottom:18px}.control output{font-size:13px;white-space:nowrap;color:var(--accent)}.control label{font-size:14px;font-weight:600;display:block}.control p{font-size:13px;max-width:620px;margin:13px 0 0}.control .note{font-size:11px}input[type=range]{width:100%;accent-color:var(--ink);height:30px;cursor:pointer;margin:13px 0 0}.ends{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);gap:10px}.ends span{max-width:31%}.ends span:nth-child(2){text-align:center}.ends span:last-child{text-align:right}input[type=number]{display:block;width:160px;border:1px solid #8d8267;background:var(--paper);padding:8px;margin-top:10px;color:var(--ink)}.estimate{position:sticky;top:25px;background:var(--paper);padding:30px;border:1px solid var(--line)}.total{font:44px/1.1 Georgia,serif;margin:20px 0 12px}.estimate #travel-dates{font-size:12px;margin-bottom:5px}dl{font-size:12px;margin:25px 0}dl div{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid #d8cdaa}dd{margin:0;white-space:nowrap}.compare{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);padding:15px 0;font-size:11px}.compare div{display:flex;justify-content:space-between;margin:7px 0}.compare b{font-weight:400}.estimate #range{font-size:11px;color:var(--muted)}.fee{font-size:12px;padding:18px 0;border-top:1px solid var(--line)}.fee b{float:right;font-weight:400}.fee span{font-size:10px;color:var(--muted)}.estimate .button{width:100%}.text-button{border:0;background:none;color:var(--ink);display:block;margin:12px auto;font-size:11px;text-decoration:underline;cursor:pointer;min-height:30px}#status{font-size:12px}.editorial{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin:40px 0 60px}.editorial span{font-size:10px;color:var(--accent);letter-spacing:.08em}.editorial h3{margin:17px 0}.editorial p{font-size:13px;color:var(--muted)}details{border-top:1px solid var(--line);padding:20px 0;font-size:13px}summary{cursor:pointer;font-size:15px}details p{margin:18px 0;color:var(--muted)}.next{text-align:center;border-top:1px solid var(--line);max-width:1160px}.next>p:not(.eyebrow){max-width:650px;margin:20px auto}.star{font-size:60px;display:block;color:var(--accent);margin-bottom:20px}footer{padding:25px 6%;display:flex;justify-content:space-between;border-top:1px solid var(--line);font-size:10px;letter-spacing:.12em}.skip{position:absolute;left:20px;top:-100px;z-index:10;background:white;padding:10px}.skip:focus{top:10px}@media(max-width:850px){.planner{grid-template-columns:1fr;gap:25px}.estimate{position:static}.intro-grid{gap:35px}.hero{height:570px;min-height:0}.editorial{gap:22px}.section-head{display:block}}@media(max-width:560px){header{height:86px;padding:0 22px}nav a:first-child{display:none}nav{font-size:10px}.brand span{font-size:14px}.brand small{font-size:8px}.brand{font-size:27px;gap:8px}.hero{margin:0 10px;height:570px}.hero-copy{left:7%;right:7%;top:18%}h1{font-size:49px}.caption{right:7%;font-size:9px}.wrap{padding:55px 25px}.intro-grid,.editorial{grid-template-columns:1fr;gap:22px}.timeline{grid-template-columns:1fr 1fr;gap:0 20px}.timeline h3{font-size:21px}.timeline p{font-size:12px}.facts{padding-top:10px}.control-head{align-items:start}.control h3{font-size:20px}.control output{font-size:12px}.estimate{padding:25px}.editorial{margin-bottom:40px}footer{gap:20px;display:block}footer span{display:block;margin:7px 0}}@media print{header,nav,.hero,#controls,.control,.button,.text-button,details,footer,.next,.intro,.details{display:none!important}.builder{background:white}.planner{display:block}.estimate{position:static;max-width:650px;border:0}.wrap{padding:15px}.timeline{grid-template-columns:repeat(3,1fr)}.journey{break-after:page}body{background:white}.estimate .note{color:#333}}

.mobile-budget{display:none}@media(max-width:850px){body{padding-bottom:76px}.mobile-budget{position:fixed;bottom:0;left:0;right:0;z-index:5;display:flex;justify-content:space-between;align-items:center;background:var(--ink);color:white;padding:17px 23px;text-decoration:none;font-size:10px;gap:10px;box-shadow:0 -2px 12px #0002}.mobile-budget b{font:24px Georgia,serif}}@media print{.mobile-budget{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Horizon supplied identity: champagne, warm taupe, charcoal. */
.brand img{display:block;width:205px;height:auto}.footer-logo{width:150px;height:auto;display:block}header{border-bottom:1px solid #8d826733}.control input[type=range]{accent-color:#383838}.star{color:#8d8267}.estimate{border-color:#8d8267}.eyebrow{color:var(--ink)}.hero .eyebrow{color:#ede3be}footer{align-items:center}@media(max-width:560px){.brand img{width:155px}.footer-logo{margin-bottom:15px}header{gap:15px}}

/* Light neutral surfaces for comfortable reading. */
body{background:#fafafa}.builder{background:#f0f1ef}.estimate,.light,input[type=number]{background:#fff}.control{border-color:#d5d7d2}dl div{border-bottom-color:#e5e6e2}.hero .eyebrow{color:#fff}header{border-bottom-color:#e1e2de}

/* Supplied castle photograph, centered across screen sizes. */
.hero img{object-position:50% 50%;filter:brightness(.76)}.hero:after{background:linear-gradient(90deg,rgba(20,25,35,.62),rgba(20,25,35,.08) 75%)}@media(max-width:560px){.hero img{object-position:51% center}.hero:after{background:linear-gradient(90deg,rgba(20,25,35,.60),rgba(20,25,35,.22))}}

.budget-context{max-width:850px;padding:20px 24px;margin:0 0 30px;border-left:2px solid #8d8267;background:#f0f1ef;color:#383838;font-size:14px;line-height:1.7}

/* Editorial additions within the existing Horizon layout. */
.extension-intro{max-width:800px;color:var(--muted)}.more-time{border-top:1px solid var(--line)}.journey-comparison{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:35px}.journey-comparison article{padding:30px;border:1px solid var(--line);background:#fff}.journey-comparison .recommended{background:#f0f1ef;border-top:3px solid #8d8267}.journey-comparison h3{font-size:27px}.day-count{font:32px Georgia,serif;margin:25px 0}.day-count span{display:block;font:12px/1.7 Arial,sans-serif;margin-top:8px;color:var(--muted)}.journey-comparison ul{padding-left:18px;font-size:14px;line-height:1.9;min-height:90px}.comparison-budget{font-size:12px;border-top:1px solid var(--line);padding-top:20px}.comparison-budget b{display:block;font:25px/1.5 Georgia,serif;font-weight:400}#two-night-cost{font-size:13px}.selected-length{font-size:13px;border-left:2px solid #8d8267;padding-left:16px}.photo-story{display:grid;grid-template-columns:1.1fr 1fr;gap:65px;align-items:center;padding-top:35px;padding-bottom:65px}.photo-story figure{margin:0}.photo-story img{width:100%;height:370px;object-fit:cover;display:block}.photo-story figcaption{font-size:10px;color:var(--muted);margin-top:10px}.photo-story p{font-size:14px;color:var(--muted)}.quiet-link{font-size:12px;text-underline-offset:5px}.estimate-label{font-size:12px;margin:20px 0 8px}.estimate .total{font-size:39px;margin:0 0 12px}.total .approx-word{font:12px/1.5 Arial,sans-serif;display:block;margin-bottom:6px}.estimate #range{font-size:13px;margin-bottom:15px;color:var(--ink)}.estimate #range span{display:block;font-size:10px;color:var(--muted);margin-bottom:3px}#share{white-space:normal;text-align:center;line-height:1.6;padding:13px 15px}.control .ends{display:grid;grid-template-columns:repeat(3,1fr);font-size:11px;line-height:1.45;gap:13px}.control .ends span{max-width:none}.control input[type=range]{height:44px;margin-top:6px}.control label{min-height:25px}.control-head{align-items:baseline}.estimate{scroll-margin-top:25px}.total{scroll-margin-top:25px}.share-fallback{width:100%;font-size:12px;padding:10px;border:1px solid var(--line)}
@media(max-width:850px){.photo-story{gap:30px}.photo-story img{height:310px}.journey-comparison article{padding:24px}.mobile-budget{padding:13px 20px;min-height:65px}.mobile-budget b{font-size:21px}body{padding-bottom:85px}}
@media(max-width:560px){.journey-comparison,.photo-story{grid-template-columns:1fr;gap:24px}.journey-comparison ul{min-height:0}.photo-story{padding-top:20px}.photo-story img{height:280px}.dining-story>div{order:2}.control-head{display:block}.control output{display:block;margin:-7px 0 13px}.control .ends{font-size:11px;gap:9px}.control label{font-size:15px}.estimate .total{font-size:40px}.mobile-budget{gap:8px}.mobile-budget span{font-size:10px}.budget-context{padding:18px}.photo-story h2{font-size:34px}}
@media print{.photo-story,.more-time{display:none}.estimate{display:block!important}.builder .wrap>h2,.builder .wrap>.eyebrow,.builder .wrap>.lede{display:none}.estimate .total{font-size:35px}#status{display:none}}

.photo-story:not(.dining-story) img{object-position:50% 80%}

/* Final legibility refinements; existing headings and layout retained. */
:root{--muted:#595959}.hero-copy>p:not(.eyebrow){font-size:17px}.eyebrow{font-size:12px}.lede{font-size:16px}.note,.facts span{font-size:14px}.timeline p,.editorial p,.photo-story p,.section-head>p{font-size:16px}.timeline time{font-size:13px}.control label{font-size:16px}.control p{font-size:15px;line-height:1.65}.control .note{font-size:14px}.control output{font-size:14px}.control .ends{font-size:13px;line-height:1.5}.estimate{padding:26px}.estimate .eyebrow{font-size:11px}.estimate-label{font-size:14px}.estimate #travel-dates,.estimate #range,.estimate #range span,.estimate .note{font-size:13px}.estimate .total .approx-word{font-size:14px}dl{font-size:14px}.compare{font-size:13px}.compare div{gap:12px}.compare b{text-align:right}.estimate .text-button{font-size:13px;min-height:40px}details{font-size:15px}summary{font-size:16px}.photo-story figcaption{font-size:12px}.journey-comparison ul{font-size:15px}.comparison-budget{font-size:14px}.selected-length{font-size:14px}.airfare-note{font-size:14px!important;line-height:1.6;border-left:2px solid #8d8267;padding-left:12px;margin-top:12px;color:#383838}.budget-context{font-size:16px}.quiet-link{font-size:14px}.control input[type=range]{min-height:44px}#status{font-size:14px}.share-fallback{margin-top:12px;min-height:44px;font-size:14px}.facts{align-content:start}.intro-grid{gap:65px}.ends{color:#595959}header nav{font-size:13px}.photo-story .note{font-size:14px}.text-button{font-size:13px}
@media(max-width:850px){.control output{white-space:normal}.mobile-budget span{font-size:11px}.mobile-budget{padding-bottom:max(13px,env(safe-area-inset-bottom))}body{padding-bottom:calc(85px + env(safe-area-inset-bottom))}}
@media(max-width:560px){nav{font-size:12px!important}.hero-copy>p:not(.eyebrow){font-size:16px}.hero-copy{top:15%}.hero h1{font-size:47px}.timeline{grid-template-columns:1fr}.timeline p{font-size:15px}.control .ends{font-size:12px;gap:10px}.control p,.control label{font-size:16px}.control output{font-size:14px}.estimate .note{font-size:14px}.estimate #range,.estimate #range span{font-size:14px}.compare{font-size:13px}.caption{font-size:11px;line-height:1.5}.journey-comparison article{padding:24px}.intro-grid{gap:25px}.photo-story figcaption{font-size:12px}.facts span{font-size:13px}.estimate dl{font-size:14px}.mobile-budget{min-height:68px}.mobile-budget b{font-size:20px}}

/* A cinematic opening, with a calm optional planning stage. */
header{position:absolute;inset:0 0 auto;z-index:5;border:0;height:125px;color:white}header .brand img{width:220px;filter:brightness(0) invert(1)}header nav{font-size:12px}header nav a{text-shadow:0 1px 8px #0005}.hero{height:100svh;min-height:680px;max-height:none;width:100%;margin:0}.hero img{object-position:50% 48%;filter:brightness(.96)}.hero:after{background:linear-gradient(180deg,rgba(9,20,37,.55),transparent 26%),linear-gradient(90deg,rgba(8,20,39,.63),transparent 65%),linear-gradient(0deg,rgba(8,20,39,.42),transparent 35%)}.hero-copy{top:auto;bottom:14%;left:8%}.hero h1{font-size:clamp(76px,8.3vw,132px);line-height:.97;margin:24px 0 32px;letter-spacing:-.045em}.hero .eyebrow{font-size:12px;letter-spacing:.2em}.hero .button{background:none;border:0;color:#fff;padding:10px 0;border-bottom:1px solid #ffffff80;font-size:13px;gap:40px}.hero .caption{bottom:28px;left:8%;font-size:11px}.budget-context{background:none;border:0;padding:0;max-width:830px;font-size:20px;line-height:1.7;margin-bottom:24px}.intro>.note{max-width:850px;margin-bottom:32px}.intro-grid>p{font-size:16px}.builder-invitation>p:not(.eyebrow){max-width:700px;font-size:17px;color:var(--muted)}#budget-stage{padding:0;border:0;margin-top:30px}#budget-stage>summary{display:flex;justify-content:space-between;align-items:center;background:var(--ink);color:white;padding:20px 25px;max-width:440px;list-style:none;font-size:15px;cursor:pointer}#budget-stage>summary::-webkit-details-marker{display:none}#budget-stage[open]>summary{margin-bottom:35px}#budget-stage[open]>summary span{transform:rotate(45deg)}.builder-invitation:has(#budget-stage[open]){max-width:none;padding-left:0;padding-right:0}.builder-invitation:has(#budget-stage[open])>h2,.builder-invitation:has(#budget-stage[open])>p,.builder-invitation:has(#budget-stage[open])>details>summary{margin-left:max(45px,calc((100% - 1160px)/2));margin-right:45px}.itinerary-disclosure{padding-top:20px;padding-bottom:35px;border-top:0}.itinerary-disclosure>summary{font-size:16px}.itinerary-disclosure .journey{padding:35px 0 0;border:0}.itinerary-disclosure .section-head>p{display:none}.mobile-budget{display:none!important}.builder-invitation:not(:has(#budget-stage[open])){padding-top:45px}.journey-comparison .button{font-size:13px}.intro{padding-bottom:55px}.more-time{padding-top:55px}
@media(max-width:850px){body{padding-bottom:0}.budget-open{padding-bottom:calc(85px + env(safe-area-inset-bottom))}.budget-open .mobile-budget{display:flex!important}}
@media(max-width:560px){header{height:102px;padding:15px 25px;align-items:center}header .brand img{width:155px}header nav{max-width:135px;text-align:right}header nav a:first-child{display:none}.hero{height:100svh;min-height:650px}.hero img{object-position:51% center}.hero:after{background:linear-gradient(180deg,rgba(8,20,39,.65),transparent 25%),linear-gradient(0deg,rgba(8,20,39,.76),transparent 65%)}.hero-copy{left:8%;right:7%;bottom:13%;top:auto}.hero h1{font-size:clamp(64px,17vw,82px);line-height:.98;margin:20px 0 25px}.hero .eyebrow{font-size:11px}.hero .caption{left:8%;right:8%;bottom:23px;font-size:10px}.hero .button{margin-top:0;font-size:13px}.budget-context{font-size:18px}.builder-invitation:has(#budget-stage[open])>h2,.builder-invitation:has(#budget-stage[open])>p,.builder-invitation:has(#budget-stage[open])>details>summary{margin-left:25px;margin-right:25px}.itinerary-disclosure .wrap{padding-left:0;padding-right:0}}
@media print{#budget-stage{display:block}#budget-stage>summary,.builder-invitation>h2,.builder-invitation>p{display:none}.builder-invitation,.builder-invitation .wrap{padding:0}#budget-stage::details-content{content-visibility:visible}#budget-stage[open] .builder{display:block}}

/* Exact Horizon logo star, isolated from the supplied SVG path. */
.brand-star{display:block;width:34px;height:35px;margin:0 auto 24px}.recommended>.eyebrow{text-transform:uppercase}
