@import url('assets/cinzel.css');
@import url('assets/cormorant.css');
:root{--ink:#193b32;--text:#354741;--muted:#627168;--cream:#faf7f0;--paper:#fffdf8;--sand:#ece5d7;--line:#d7dace;--gold:#9b7946;--serif:'Cormorant Garamond',Georgia,serif;--brand:'Cinzel',Georgia,serif;--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--cream);color:var(--text);font:16px/1.7 var(--sans)}a{color:inherit}a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}img{display:block;max-width:100%;object-fit:cover}figure{margin:0}h1,h2,h3,p{margin:0}p+p{margin-top:1.05rem}h1,h2{font-family:var(--serif);font-weight:500;color:var(--ink);line-height:1.02;letter-spacing:-.035em}h1{font-size:clamp(3rem,5.6vw,5.4rem)}h2{font-size:clamp(2.5rem,4vw,3.75rem)}h3{font-family:var(--serif);font-size:1.7rem;line-height:1.15;font-weight:600;color:var(--ink)}em{font-weight:400}a{text-underline-offset:5px}a:hover{color:#795b2f}.button:hover{color:var(--cream);background:#2b5546}.button.secondary:hover{background:var(--sand);color:var(--ink)}:focus-visible{outline:3px solid #a47229;outline-offset:5px}[hidden]{display:none!important}.skip{position:fixed;top:-80px;left:20px;background:var(--ink);color:white;padding:12px 20px;z-index:100}.skip:focus{top:8px}.container{max-width:1180px;margin:auto;padding-inline:32px}.section{padding-block:90px}.compact{padding-top:24px}.eyebrow{font:600 10px/1.6 var(--sans);letter-spacing:.19em;text-transform:uppercase;color:var(--gold);margin-bottom:20px}.lead{font-size:18px;line-height:1.7;max-width:670px}.small{font-size:13px;line-height:1.6;color:var(--muted)}.preview-bar{background:var(--ink);color:#eee5d6;text-align:center;font-size:9px;letter-spacing:.13em;padding:5px 12px}.preview-bar span{padding:0 12px}.site-header{background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30}.header-inner{max-width:1360px;margin:auto;padding:22px 36px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{text-decoration:none;display:flex;flex-direction:column;gap:4px;flex-shrink:0}.brand-name{font-family:var(--brand);font-size:19px;line-height:1.3;letter-spacing:.10em;color:var(--ink)}.brand-sub{font-family:var(--serif);font-size:15px;letter-spacing:.09em;color:var(--muted)}nav{display:flex;align-items:center;gap:24px}nav>a:not(.button){font-size:12px;text-decoration:none;white-space:nowrap}nav>a[aria-current=page]{border-bottom:1px solid var(--gold);padding-bottom:3px}nav .button{font-size:11px;padding:10px 15px;min-height:42px}.menu-toggle{display:none}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;min-height:48px;background:var(--ink);color:white;padding:14px 22px;border:1px solid var(--ink);text-decoration:none;font-size:12px;font-weight:600;line-height:1.5;transition:background .2s}.button span{font-size:18px;line-height:1}.button.secondary{background:transparent;color:var(--ink);border-color:#a8b2a2}.actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.text-link{display:inline-block;font:600 12px/1.7 var(--sans);text-decoration:none;border-bottom:1px solid #a4967c;padding-bottom:6px}.hero{display:grid;grid-template-columns:1fr 1fr;max-width:1360px;margin:auto;position:relative;padding:45px 36px 0;gap:38px}.hero-copy{padding:44px 5px 38px 34px;align-self:center}.hero-copy h1{font-size:clamp(3rem,5.1vw,5rem);margin-bottom:25px}.hero-copy>p:not(.eyebrow){max-width:435px;font-size:17px}.hero-copy .actions{margin-top:30px}.hero-image{position:relative;min-height:515px}.hero-image>img{width:100%;height:100%;position:absolute;inset:0;object-position:50% 44%}.hero-image figcaption{position:absolute;bottom:20px;right:20px;background:var(--cream);padding:9px 15px;font-family:var(--serif);font-size:18px}.hero-note{display:flex;flex-wrap:wrap;gap:7px 18px;margin-top:30px;font-size:10px;color:var(--muted)}.hero-note span+span:before{content:'•';margin-right:12px;color:var(--gold)}.hero-bottom{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:0 34px 25px;font-size:10px;letter-spacing:.1em}.hero-bottom a{letter-spacing:0;text-decoration:none}.section-head{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;margin-bottom:36px;align-items:end}.section-head>p{font-size:15px;max-width:390px;margin-left:auto}.cards{display:grid;gap:25px}.cards.three{grid-template-columns:repeat(3,1fr)}.cards.two{grid-template-columns:repeat(2,1fr)}.journey-card{background:var(--paper);border-bottom:1px solid var(--line)}.card-photo{display:block;overflow:hidden;aspect-ratio:1.45}.card-photo img{width:100%;height:100%;transition:transform .4s}.card-photo:hover img{transform:scale(1.025)}.card-body{padding:24px 25px 28px}.card-body .eyebrow{margin-bottom:12px;font-size:9px}.card-body h3{font-size:1.85rem;margin-bottom:15px}.card-body h3 a{text-decoration:none}.card-body>p:not(.eyebrow){font-size:14px}.card-body .text-link{margin-top:22px}.section-foot{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:28px}.section-foot p{font-size:12px;color:var(--muted);max-width:560px}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.split h2{margin-bottom:26px}.split figure img{width:100%;aspect-ratio:1.15;height:auto}.split figcaption{font-size:12px;color:var(--muted);padding-top:12px}.split .text-link{margin-top:25px}.story-band{background:var(--sand);padding-block:75px}.story-band .split{gap:75px}.pathways{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.pathways>a,.pathways>div{border-top:1px solid #b7bfb0;padding-top:25px}.pathways>a{text-decoration:none;display:block}.path-number{font-family:var(--serif);font-size:22px;color:var(--gold);display:block;margin-bottom:20px}.pathways h3{margin-bottom:17px}.pathways p{font-size:14px}.pathways .text-link{margin-top:25px}.planning-band{background:var(--ink);color:var(--cream);padding-block:55px}.planning-band>.container{display:flex;gap:80px;justify-content:space-between;align-items:center}.planning-band h2{color:var(--cream);font-size:2.7rem;margin-bottom:18px}.planning-band p:not(.eyebrow){max-width:680px;font-size:14px}.planning-band .eyebrow{color:#d7bd8e}.planning-band .button.secondary{border-color:#b9c6b6;color:var(--cream);flex-shrink:0}.planning-band .button.secondary:hover{color:var(--ink)}.values>div{position:relative;border-top:1px solid var(--line);padding:20px 0 20px 48px}.values span{position:absolute;left:0;color:var(--gold);font:22px var(--serif)}.values p{font-size:14px;margin-top:10px}.closing{background:#e5e9df;text-align:center;padding-block:80px}.closing h2{max-width:770px;margin:0 auto 22px}.closing p:not(.eyebrow){max-width:620px;margin:0 auto 28px;font-size:15px}.closing .button{min-width:220px}footer{background:var(--ink);color:#d6dfd0;padding:58px 0 20px;font-size:12px}.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:55px}.footer-grid .brand-name{color:var(--cream);font-size:18px}.footer-grid .brand-sub{color:#c3cbbb}.footer-grid h3{color:var(--cream);font-size:20px;margin-bottom:18px}.footer-grid>div>a:not(.brand){display:block;text-decoration:none;margin-bottom:9px}.footer-grid p{margin-top:22px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #476050;padding-top:20px;margin-top:40px;font-size:10px}.page-intro{padding-top:70px;padding-bottom:45px}.page-intro h1{margin-bottom:24px}.page-intro .lead{max-width:710px}.filter-bar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:30px}.filter{background:transparent;border:1px solid #b8c1b3;color:var(--ink);padding:11px 18px;font-size:12px;min-height:44px}.filter.active{color:white;background:var(--ink);border-color:var(--ink)}.notice{padding:30px;border-left:3px solid var(--gold);background:#f0ece3;margin-top:40px}.notice h2{font-size:2.3rem;margin-bottom:20px}.notice p{font-size:14px;margin-top:8px}.detail-lead{padding-bottom:30px}.detail-lead.split{align-items:start}.detail-lead{display:grid;grid-template-columns:1.25fr 1fr;gap:55px;align-items:stretch}.detail-lead figure img{width:100%;height:100%;aspect-ratio:1.25}.journey-summary{padding:32px;background:var(--sand)}.journey-summary h2{font-size:2.6rem;margin-bottom:22px}dl{margin:0}dt{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--gold);margin-top:18px}dd{margin:5px 0 0;font-size:14px}.journey-summary .button{margin:25px 0 20px}.itinerary details{border-bottom:1px solid var(--line);padding-block:20px}.itinerary summary{list-style:none;display:grid;grid-template-columns:1fr 25px;gap:6px;cursor:pointer}.itinerary summary>span:first-child{grid-column:1;font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--gold)}.itinerary summary strong{grid-column:1;font:600 1.6rem var(--serif);color:var(--ink)}.itinerary summary>span:last-child{grid-column:2;grid-row:1/3;align-self:center;text-align:right;font-size:22px}.itinerary p{font-size:14px;padding-top:15px}.itinerary details[open] summary>span:last-child{transform:rotate(45deg)}.partner-hero{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center}.partner-hero h2{margin-bottom:24px}.partner-hero .actions{margin-top:30px}.partner-hero img{width:100%;aspect-ratio:1.12}.steps{padding:0;list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin:35px 0 0}.steps li{border-top:1px solid #b7bfb0;padding-top:24px}.steps span{font:26px var(--serif);color:var(--gold)}.steps h3{font-size:1.45rem;margin:18px 0 13px}.steps p{font-size:13px}.faq h3{margin-bottom:15px}.faq details{border-bottom:1px solid #b7bfb0}.faq summary{padding:20px 28px 20px 0;font-size:15px;color:var(--ink);cursor:pointer}.faq p{font-size:14px;padding-bottom:20px}.history-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-top:35px}.history-grid article{border-top:1px solid var(--line);padding-top:24px}.history-grid span{font-size:10px;letter-spacing:.13em;color:var(--gold)}.history-grid h3{margin:15px 0}.history-grid p{font-size:14px}.source-note{font-size:12px;color:var(--muted);margin-top:35px}.route-panel{padding:35px;background:var(--sand)}.route-row{border-bottom:1px solid #bac0b2;padding:16px 0;display:flex;justify-content:space-between;gap:20px;font-size:14px}.route-row>span{font-size:12px}.route-branches{display:flex;gap:8px;flex-wrap:wrap;padding:20px 0}.route-branches span{font-size:11px;background:var(--cream);border:1px solid #bfc6b9;padding:8px 12px}.route-panel p:not(.eyebrow){font-size:12px}.company-details{border-top:1px solid var(--line);padding-top:12px}.company-details .small{margin-top:25px}.inquiry-layout{display:grid;grid-template-columns:1fr 1.6fr;gap:80px;padding-bottom:90px}.inquiry-aside h2{font-size:2.7rem;margin-bottom:22px}.inquiry-aside p{font-size:14px}.contact-box{border-block:1px solid var(--line);padding:20px 0;margin:30px 0}.contact-box a{display:block;margin-top:10px}.inquiry-main{background:var(--paper);padding:35px;border:1px solid var(--line)}label,legend{display:block;font-size:12px;font-weight:600;color:var(--ink);margin-bottom:7px}input,select,textarea{width:100%;padding:12px;background:var(--cream);border:1px solid #acb7a4;border-radius:0;font-size:14px;color:var(--text);min-height:46px;max-width:100%}textarea{resize:vertical}form>select{margin-bottom:24px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:24px}fieldset{border:1px solid var(--line);padding:18px;margin:0 0 24px}fieldset input{margin-bottom:18px}.check-label{display:flex;gap:12px;align-items:flex-start;font-weight:400;margin:20px 0}.check-label input{width:18px;min-height:18px;flex-shrink:0;margin-top:2px;accent-color:var(--ink)}.form-note{margin-bottom:20px}.reading{max-width:780px;padding-top:15px}.reading h2{font-size:2rem;margin:25px 0 16px}.reading .text-link{margin-top:25px}pre{font:14px/1.6 var(--sans);white-space:pre-wrap;overflow-wrap:anywhere;padding:20px;background:var(--sand);border:1px solid var(--line);max-width:100%}.inquiry-main h2{font-size:2.8rem;margin-bottom:20px}.edit-inquiry{border:none;border-bottom:1px solid var(--gold);background:none;color:var(--ink);margin:22px 0}.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}.approved-logo{width:55px;height:55px;object-fit:contain}
@media(min-width:1100px){.hero-image{max-height:560px}.hero{gap:32px}}
@media(max-width:1150px){.header-inner{padding-inline:24px;gap:18px}nav{gap:16px}.brand-name{font-size:17px}nav>a:not(.button){font-size:11px}.hero-copy{padding-left:10px}.hero{gap:24px}}
@media(max-width:1000px){.menu-toggle{display:flex;align-items:center;gap:10px;background:none;border:1px solid #a7b49f;color:var(--ink);padding:10px 13px;font-size:12px;min-height:44px}.header-inner{flex-wrap:wrap;padding-block:16px}nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0;padding-top:10px}nav.is-open{display:flex}nav>a:not(.button){padding:12px 0;font-size:14px;border-bottom:1px solid var(--line)}nav .button{margin-top:14px;justify-content:center;gap:30px}.hero{padding:30px 24px 0}.hero-copy h1{font-size:3.6rem}.hero-image{min-height:450px}.hero-copy .actions{align-items:stretch;flex-direction:column}.hero-copy .button{justify-content:space-between}.hero-note{display:block}.hero-note span{display:block}.hero-note span+span:before{display:none}.split,.detail-lead,.partner-hero{gap:35px}.section-head{gap:35px}.cards{gap:18px}.card-body{padding:20px}.card-body h3{font-size:1.7rem}.inquiry-layout{gap:35px;grid-template-columns:.8fr 1.5fr}.planning-band>.container{gap:30px}.steps{gap:20px}}
@media(max-width:700px){.container{padding-inline:22px}.section{padding-block:55px}.compact{padding-top:10px}.header-inner{padding-inline:22px}.brand-name{font-size:15px}.brand-sub{font-size:13px}.preview-bar{font-size:8px;padding-block:4px}.hero{display:flex;flex-direction:column;padding:0;gap:0}.hero-copy{padding:40px 22px 30px}.hero-copy h1{font-size:3.45rem;max-width:400px;margin-bottom:20px}.hero-copy>p:not(.eyebrow){font-size:15px;max-width:480px}.hero-copy .actions{flex-direction:row;gap:10px}.hero-copy .button{font-size:11px;padding:12px 15px;gap:14px;min-height:46px}.hero-note{display:flex;margin-top:23px;font-size:9px;gap:12px}.hero-note span{display:inline}.hero-image{min-height:310px;margin:0 22px}.hero-image figcaption{font-size:16px;right:12px;bottom:12px}.hero-bottom{margin-inline:22px;padding:20px 0;font-size:8px;gap:15px}.section-head{grid-template-columns:1fr;gap:22px;margin-bottom:28px}.section-head>p{margin:0;max-width:100%;font-size:14px}h1{font-size:3.2rem}h2{font-size:2.65rem}.cards.three,.cards.two{grid-template-columns:1fr;gap:25px}.card-photo{aspect-ratio:1.7}.card-body{padding:24px}.card-body h3{font-size:1.9rem}.section-foot{display:block}.section-foot .text-link{margin-top:18px}.split,.detail-lead,.partner-hero{grid-template-columns:1fr;gap:30px}.story-band{padding-block:50px}.story-band .split{gap:35px}.split figure img{aspect-ratio:1.4}.split h2{margin-bottom:20px}.pathways{grid-template-columns:1fr;gap:30px}.path-number{margin-bottom:12px}.pathways h3{margin-bottom:12px}.planning-band>.container{display:block}.planning-band .button{margin-top:26px}.planning-band h2{font-size:2.55rem}.planning-band{padding-block:45px}.closing{padding-block:55px}.closing h2{padding-inline:5px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid .brand-name{font-size:17px}.footer-grid>div>a:not(.brand){overflow-wrap:anywhere}.footer-bottom{flex-wrap:wrap;font-size:9px;gap:12px}.page-intro{padding-top:45px;padding-bottom:30px}.page-intro .lead{font-size:16px}.detail-lead figure img{aspect-ratio:1.4}.journey-summary{padding:26px}.steps{grid-template-columns:1fr 1fr;gap:25px}.history-grid{grid-template-columns:1fr;gap:28px}.inquiry-layout{grid-template-columns:1fr;gap:30px;padding-bottom:55px}.inquiry-main{padding:22px}.inquiry-aside .contact-box{margin:20px 0}.form-grid{grid-template-columns:1fr;gap:20px}.filter-bar{gap:8px}.filter{padding:10px 12px;font-size:11px}.notice{padding:23px}.route-panel{padding:25px}.source-note{overflow-wrap:anywhere}.actions .button{max-width:100%}.reading{padding-top:0}.approved-logo{width:40px;height:40px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

@font-face{font-family:Cinzel;src:url(assets/Cinzel.ttf) format("truetype");font-display:swap}.company-name,.brand-name{font-family:Cinzel,serif}.calendar{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.calendar>div{border:1px solid #c7cfc2;padding:22px;background:#fffcf7}.calendar span{color:#916823;font-size:12px}.calendar h3{font-size:23px;margin-top:14px}.partner-map{width:100%;height:1200px;border:0}.approved-logo{flex-shrink:0;object-fit:contain}.brand:has(.approved-logo){display:grid;grid-template-columns:55px 1fr;gap:0 12px}.brand .approved-logo{grid-row:1/3}.brand-sub{grid-column:2}@media(max-width:700px){.calendar{grid-template-columns:1fr 1fr}.partner-map{height:1500px}}

:root{--ink:#263e4a;--text:#38515e;--cream:#f5f0e6;--paper:#fffcf7;--sand:#eee5d9;--gold:#8b5b42}.closing,.planning-band,footer{background:#dceaf0;color:#263e4a}.closing h2,.planning-band h2,footer h3{color:#263e4a}.closing p,.planning-band p,footer p{color:#425e6b}.button{background:#3f7e9b;border-color:#3f7e9b;color:white}.button.secondary{background:transparent;color:#263e4a}.featured-button{background:#e9c6b5;color:#263e4a;border-color:#aa7861}.long-tour-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.long-tour-grid article{background:#fffcf7;border:1px solid #d5dadd;padding:30px}.long-tour-grid h3{font-size:30px;margin:15px 0}.long-tour-grid article p{font-size:15px}.long-tour-grid article>a{color:#285d77}.calendar>div{background:#fffcf7}.preview-bar{background:#eee5d9;color:#263e4a}@media(max-width:700px){.long-tour-grid{grid-template-columns:1fr}}

.footer-grid .brand-name,.footer-grid .brand-sub,.footer-grid h3,.planning-band .button.secondary{color:#263e4a}.planning-band .eyebrow{color:#8b5b42}

/* Uploaded photography: full-width page introductions, light readable copy panels. */
.photo-hero{position:relative;isolation:isolate;min-height:560px;width:100%;max-width:none;margin:0;padding:0;display:flex;align-items:center;overflow:hidden;background:#dceaf0}
.photo-hero-image{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:var(--photo-position,center)}
.photo-hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(245,240,230,.13),transparent 70%)}
.photo-hero-copy{width:100%;max-width:1250px;margin:0 auto;padding:56px 36px}
.photo-hero-text{width:min(650px,58%);padding:38px;background:rgba(255,252,247,.64);border-left:4px solid #d5a78e;box-shadow:0 12px 40px rgba(38,62,74,.07)}
.photo-hero-text h1{font-size:clamp(42px,4.7vw,68px);line-height:1.06;margin-bottom:24px;color:#263e4a}
.photo-hero-text .lead{font-size:17px;color:#38515e;line-height:1.6}
.photo-hero-text .eyebrow{color:#8b5b42;margin-bottom:19px}
.calendar>div{padding:0 0 22px;overflow:hidden}
.calendar>div>span,.calendar>div>h3{display:block;margin-left:20px;margin-right:20px}
.calendar>div>span{margin-top:18px}
.calendar-media{display:flex;align-items:center;justify-content:center;height:135px;background:#e7eef1;border-bottom:1px solid #d5dadd}
.calendar-media img{width:100%;height:100%;object-fit:cover;object-position:center}
.calendar-media svg{width:62px;height:62px;stroke:#326c88;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.calendar>div:nth-child(1) .calendar-media,.calendar>div:nth-child(7) .calendar-media{background:#f3e0d3}
@media(max-width:800px){.photo-hero{min-height:640px;align-items:flex-end}.photo-hero-copy{padding:260px 20px 24px}.photo-hero-text{width:100%;padding:25px;background:rgba(255,252,247,.64)}.photo-hero-text h1{font-size:40px}.photo-hero-text .lead{font-size:16px}.photo-hero-image{object-position:var(--photo-position,center)}.calendar-media{height:120px}}

.photo-copy-right .photo-hero-text{margin-left:auto}@media(max-width:800px){.photo-copy-right .photo-hero-text{margin-left:0}}

.mass-photo{padding-block:40px;text-align:center}.mass-photo img{width:min(100%,450px);height:auto;margin:auto;border-radius:3px}.mass-photo figcaption{margin-top:12px;color:#38515e}

/* Shared translucent photo panels: keep uploaded scenery visible. */
.photo-hero-text{border-left-color:rgba(213,167,142,.65);box-shadow:none}.photo-hero-text h1,.photo-hero-text .lead,.photo-hero-text .eyebrow{color:#203b48}

.calendar-media img[src="assets/lorenzo-statue.jpg"]{object-position:50% 16%}

.heritage-photo-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:850px;margin:24px auto}.heritage-photo-pair figure{margin:0}.heritage-photo-pair img{display:block;width:100%;height:auto;border-radius:6px}.heritage-photo-pair figcaption{padding:10px 0;font-size:.9rem}@media(max-width:600px){.heritage-photo-pair{grid-template-columns:1fr;max-width:420px}}
