:root{--ink:#18201d;--cream:#f0ece4;--gold:#c96745;--paper:#faf9f5;--line:rgba(24,32,29,.18);--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:100%;object-fit:cover}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.02}h2{font-size:clamp(2.8rem,5vw,5.6rem);letter-spacing:-.045em}.section-pad{padding:clamp(5rem,10vw,10rem) max(5vw,2rem)}.section-kicker{font-size:.72rem;text-transform:uppercase;letter-spacing:.22em;font-weight:700;color:#7d6843;margin-bottom:2rem}.site-header{height:86px;padding:0 max(4vw,1.25rem);display:flex;align-items:center;justify-content:space-between;position:absolute;z-index:20;width:100%;color:white;border-bottom:1px solid rgba(255,255,255,.25)}.brand{display:flex;align-items:center;gap:12px;text-transform:uppercase;letter-spacing:.12em;line-height:1}.brand-mark{display:grid;place-items:center;width:40px;height:40px;border:1px solid rgba(255,255,255,.7);font-family:var(--serif);font-size:.72rem}.brand b{display:block;font-family:var(--serif);font-size:1.15rem;font-weight:400}.brand small{display:block;font-size:.55rem;letter-spacing:.28em;margin-top:6px}.site-header nav{display:flex;align-items:center;gap:2rem;font-size:.76rem;text-transform:uppercase;letter-spacing:.12em}.site-header nav>a:not(.nav-cta){opacity:.8;transition:.2s}.site-header nav>a:hover{opacity:1}.nav-cta{border:1px solid rgba(255,255,255,.55);padding:.8rem 1.25rem}.menu-toggle{display:none;background:transparent;border:0;padding:10px}.hero{height:max(760px,100svh);position:relative;color:white;background:#38413c}.hero img{position:absolute;inset:0}.hero-shade,.quote-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,18,15,.74) 0%,rgba(11,18,15,.27) 58%,rgba(11,18,15,.08)),linear-gradient(0deg,rgba(11,18,15,.44),transparent 55%)}.hero-copy{position:absolute;left:max(7vw,2rem);bottom:17%;max-width:800px}.eyebrow{font-size:.72rem;text-transform:uppercase;letter-spacing:.24em;font-weight:700;color:#ead19e}.hero h1{font-size:clamp(4rem,8.2vw,8.5rem);letter-spacing:-.06em;margin-bottom:1.8rem}.hero h1 em,.quote em{color:#f0c36d;font-weight:400}.hero-copy>p:not(.eyebrow){font-family:var(--serif);font-size:clamp(1.15rem,1.8vw,1.45rem);line-height:1.55;max-width:620px}.hero-actions{display:flex;align-items:center;gap:2rem;margin-top:2.5rem}.button{display:inline-flex;align-items:center;justify-content:center;padding:1rem 1.5rem;text-transform:uppercase;font-size:.72rem;letter-spacing:.14em;font-weight:700;transition:.2s}.button.light{background:var(--cream);color:var(--ink)}.button.light:hover{background:#fff}.text-link{font-size:.78rem;text-transform:uppercase;letter-spacing:.12em}.text-link span{margin-left:.5rem}.hero-trust{position:absolute;bottom:0;width:100%;display:flex;justify-content:flex-end;gap:2rem;padding:1.3rem max(4vw,1.25rem);border-top:1px solid rgba(255,255,255,.25);font-size:.66rem;text-transform:uppercase;letter-spacing:.16em;color:rgba(255,255,255,.75)}.intro{background:var(--paper)}.intro-grid{display:grid;grid-template-columns:1.1fr .75fr;gap:10vw}.intro h2{margin-bottom:0}.intro-grid>div{padding-top:1rem}.intro .lead{font-family:var(--serif);font-size:1.5rem;line-height:1.5}.intro-grid p:not(.lead){color:#5d625f}.ink-link{display:inline-block;margin-top:1rem;padding-bottom:.25rem;border-bottom:1px solid var(--ink);font-size:.74rem;text-transform:uppercase;letter-spacing:.14em}.regions{background:var(--ink);color:white;padding-bottom:clamp(5rem,8vw,8rem)}.regions-head{padding-bottom:4rem}.regions-head .section-kicker{color:#e5a17f}.regions-head h2{max-width:970px;margin-bottom:0}.region-stage{margin:0 max(5vw,2rem);border-top:1px solid rgba(255,255,255,.22)}.region-card{display:grid;grid-template-columns:10% 1fr;align-items:center;padding:2rem 0;border-bottom:1px solid rgba(255,255,255,.22);cursor:pointer;transition:.25s}.region-card:hover,.region-card.active{background:#242e2a;padding-left:1.25rem;padding-right:1.25rem}.region-card .number{font-size:.7rem;color:#e5a17f}.region-card div{display:grid;grid-template-columns:22% 1fr 35%;align-items:center;gap:1rem}.region-card p{margin:0;font-size:.67rem;text-transform:uppercase;letter-spacing:.16em;color:#b6bcb8}.region-card h3{font-size:clamp(1.8rem,3.7vw,3.5rem);margin:0}.region-card div>span{font-family:var(--serif);font-size:1.05rem;color:#b6bcb8}.feature{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(3rem,7vw,8rem);align-items:center}.feature-image{height:min(720px,68vw);position:relative}.image-note{position:absolute;bottom:0;left:0;background:var(--paper);padding:1rem 1.5rem;font-size:.68rem;text-transform:uppercase;letter-spacing:.14em}.feature-copy h2{font-size:clamp(2.8rem,4.8vw,5rem)}.feature-copy>p:not(.section-kicker){color:#5d625f;max-width:570px}.journey-types{margin-top:3rem;border-top:1px solid var(--line)}.journey-types a{display:grid;grid-template-columns:42px 1fr auto;align-items:center;padding:1.1rem 0;border-bottom:1px solid var(--line);font-family:var(--serif);font-size:1.15rem}.journey-types a span{font-family:var(--sans);font-size:.65rem;color:#9b5139}.journey-types a b{font-family:var(--sans);font-weight:400}.timing{display:grid;grid-template-columns:1.1fr .9fr;background:#c96745;color:#18201d}.timing-copy{padding:clamp(5rem,9vw,9rem) max(5vw,2rem)}.timing-copy .section-kicker{color:#493813}.timing-copy h2{font-size:clamp(2.8rem,5vw,5.3rem)}.timing-copy>p:not(.section-kicker){max-width:600px}.button.outline{border:1px solid var(--ink);margin-top:1.5rem}.season-list{background:#b65738;padding:clamp(5rem,9vw,9rem) max(4vw,2rem)}.season-list div{display:grid;grid-template-columns:25% 1fr;border-bottom:1px solid rgba(24,32,29,.28);padding:1.35rem 0;align-items:baseline}.season-list div:first-child{border-top:1px solid rgba(24,32,29,.28)}.season-list span{font-size:.72rem;letter-spacing:.1em}.season-list b{font-family:var(--serif);font-size:1.45rem;font-weight:400}.season-list small{grid-column:2;font-size:.82rem;opacity:.7}.planning{background:#e7e1d7}.planning-head{display:grid;grid-template-columns:.6fr 1.4fr;gap:5vw}.planning-head h2{margin-top:0}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:3vw;margin-top:5rem}.steps article{border-top:1px solid var(--line);padding-top:1.5rem}.steps span{font-size:.7rem;color:#9b5139}.steps h3{font-size:1.75rem;margin:2rem 0 1rem}.steps p{color:#5d625f}.proof{margin-top:6rem;padding:2.5rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr)}.proof div{padding:0 2.5rem;border-right:1px solid var(--line)}.proof div:first-child{padding-left:0}.proof div:last-child{border:0}.proof strong{display:block;font-family:var(--serif);font-size:1.6rem;font-weight:400}.proof span{font-size:.72rem;text-transform:uppercase;letter-spacing:.11em;color:#6f7470}.quote{height:75vh;min-height:620px;position:relative;color:white;display:grid;place-items:center}.quote img{position:absolute;inset:0}.quote-shade{background:rgba(10,17,14,.38)}.quote blockquote{position:relative;font-family:var(--serif);font-size:clamp(2.7rem,6vw,6rem);line-height:1.12;text-align:center;margin:0;padding:2rem;letter-spacing:-.035em}.cta{text-align:center}.cta h2{margin-bottom:1.5rem}.cta>p:not(.section-kicker){font-family:var(--serif);font-size:1.25rem;color:#626762}.button.dark{background:var(--ink);color:white;margin-top:2rem}.phone{display:block;margin-top:1.25rem;font-size:.78rem;letter-spacing:.08em}footer{background:var(--ink);color:white;padding:4rem max(5vw,2rem);display:grid;grid-template-columns:1fr 1.2fr .8fr 1fr;gap:3rem;border-top:1px solid rgba(255,255,255,.2)}.footer-brand{font-family:var(--serif);font-size:1.5rem;line-height:1}.footer-brand b,.footer-brand span{display:block;font-weight:400}.footer-brand span{font-family:var(--sans);font-size:.62rem;text-transform:uppercase;letter-spacing:.25em;margin-top:.6rem}.legal{font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;color:#a8afab;margin-top:2rem}.footer-links,.footer-end{display:flex;flex-direction:column;gap:.5rem;font-size:.8rem}.footer-end{color:#a8afab}.reveal{opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:850px){.site-header{height:72px}.menu-toggle{display:block;z-index:2}.menu-toggle span{display:block;width:25px;height:1px;background:white;margin:7px}.site-header nav{display:none;position:absolute;left:0;right:0;top:0;background:var(--ink);padding:100px 2rem 2rem;flex-direction:column;align-items:flex-start;font-size:1rem}.site-header nav.open{display:flex}.hero{min-height:700px}.hero-copy{bottom:14%;left:1.5rem;right:1.5rem}.hero h1{font-size:clamp(3.7rem,16vw,6rem)}.hero-actions{align-items:flex-start;flex-direction:column;gap:1rem}.hero-trust{justify-content:flex-start;gap:1rem;overflow:hidden;white-space:nowrap}.intro-grid,.feature,.timing,.planning-head{grid-template-columns:1fr}.intro-grid{gap:3rem}.region-card{grid-template-columns:13% 1fr}.region-card div{grid-template-columns:1fr}.region-card p{margin-bottom:.2rem}.region-card div>span{font-size:.9rem}.feature-image{height:65vh;min-height:500px}.timing-copy{padding-bottom:4rem}.season-list{padding-top:3rem}.planning-head{gap:1rem}.steps,.proof{grid-template-columns:1fr}.steps{gap:2.5rem}.proof div,.proof div:first-child{border-right:0;border-bottom:1px solid var(--line);padding:1.25rem 0}.proof div:last-child{border-bottom:0}footer{grid-template-columns:1fr 1fr}.quote{min-height:520px}}@media(max-width:540px){h2{font-size:2.8rem}.section-pad{padding:5rem 1.4rem}.regions-head{padding-bottom:3rem}.region-stage{margin:0 1.4rem}.hero-copy>p:not(.eyebrow){font-size:1.05rem}.hero-trust span:last-child{display:none}.feature{padding-left:0;padding-right:0}.feature-copy{padding:0 1.4rem}.feature-image{height:500px}.timing-copy,.season-list{padding-left:1.4rem;padding-right:1.4rem}.season-list div{grid-template-columns:30% 1fr}footer{grid-template-columns:1fr;padding:3rem 1.4rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}

/* Interior pages */
.inner-header{position:relative;background:var(--ink)}.inner-header nav{gap:1.5rem}.page-hero{min-height:580px;background:var(--cream);display:flex;align-items:flex-end;padding:clamp(8rem,13vw,13rem) max(8vw,2rem) clamp(5rem,8vw,8rem)}.page-hero>div{max-width:1050px}.page-hero h1,.detail-hero h1,.contact-intro h1{font-size:clamp(4rem,9vw,9rem);letter-spacing:-.06em;margin-bottom:2rem}.page-hero>div>p:last-child,.detail-hero>div>p:last-child{font-family:var(--serif);font-size:clamp(1.15rem,1.8vw,1.5rem);max-width:680px}.gold-hero{background:var(--gold)}.gold-hero .section-kicker{color:#493813}.dark-hero{background:var(--ink);color:white}.detail-hero{min-height:720px;position:relative;display:flex;align-items:flex-end;padding:clamp(8rem,13vw,13rem) max(8vw,2rem) clamp(5rem,8vw,8rem)}.detail-hero.image-hero{color:white}.detail-hero>img{position:absolute;inset:0}.detail-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,18,15,.82) 0%,rgba(11,18,15,.52) 40%,rgba(11,18,15,.12) 76%),linear-gradient(0deg,rgba(11,18,15,.5) 0%,transparent 58%)}.detail-hero>div{position:relative;max-width:850px}.detail-hero .section-kicker{color:#e2bd74}.detail-intro{display:grid;grid-template-columns:.45fr 1.3fr;gap:6vw}.detail-intro h2{margin-bottom:2.5rem}.detail-intro .lead{font-family:var(--serif);font-size:1.5rem;line-height:1.5;max-width:760px}.detail-intro div>p:not(.lead){max-width:700px;color:#5d625f}.editorial-list{padding-top:3rem}.editorial-row{display:grid;grid-template-columns:8% 1.2fr .45fr;gap:4vw;padding:5rem 0;border-top:1px solid var(--line)}.editorial-row>span{font-size:.7rem;color:#9b5139}.editorial-row h2{font-size:clamp(3rem,6vw,6.5rem);margin-bottom:1.5rem}.editorial-row div>p:not(.section-kicker){max-width:650px;color:#5d625f}.editorial-row aside{padding-top:3.8rem;font-family:var(--serif);font-size:1.1rem;line-height:1.9;color:#6b706c}.dark-section{background:var(--ink);color:white}.gold-section{background:var(--gold)}.place-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4vw}.place-grid article{border-top:1px solid currentColor;padding-top:1.5rem}.place-grid span,.principles span{font-size:.7rem;opacity:.65}.place-grid h3,.principles h3{font-size:2.2rem;margin:2.5rem 0 1rem}.place-grid p{opacity:.72}.route-note{display:grid;grid-template-columns:1.25fr .55fr;gap:8vw;align-items:end}.route-note h2{font-size:clamp(2.8rem,5.5vw,5.6rem);margin:0}.route-note>p{font-family:var(--serif);font-size:1.25rem}.idea-grid{display:grid;grid-template-columns:repeat(2,1fr);padding-top:3rem}.idea-card{min-height:440px;padding:3.5rem;border:1px solid var(--line);margin:-1px 0 0 -1px;display:flex;flex-direction:column}.idea-card>span{font-size:.7rem;color:#9b5139}.idea-card h2{font-size:clamp(2.5rem,4.5vw,4.5rem);margin:3rem 0 1.5rem}.idea-card p{color:#5d625f;max-width:560px}.idea-card small{margin-top:auto;text-transform:uppercase;letter-spacing:.12em;color:#9b5139}.month-guide{padding-top:3rem}.month-row{display:grid;grid-template-columns:.4fr 1fr;gap:7vw;padding:4.5rem 0;border-top:1px solid var(--line)}.month-row>span{font-size:.75rem;text-transform:uppercase;letter-spacing:.15em;color:#856d40}.month-row h2{font-size:clamp(2.5rem,5vw,5rem);margin-bottom:1.5rem}.month-row p{max-width:760px;color:#5d625f}.month-row small{display:block;margin-top:1.5rem;text-transform:uppercase;letter-spacing:.1em}.itinerary-list{padding-top:3rem}.itinerary{display:grid;grid-template-columns:.35fr 1fr .45fr;gap:5vw;padding:4.5rem 0;border-top:1px solid var(--line)}.itinerary>div span{font-size:.72rem;text-transform:uppercase;letter-spacing:.15em;color:#9b5139}.itinerary>div p{font-family:var(--serif);font-size:1.25rem}.itinerary h2{font-size:clamp(2.7rem,5vw,5rem);margin:0}.itinerary h2 i{font-family:var(--sans);font-size:.7rem;font-style:normal;vertical-align:middle;color:#9b5139}.itinerary aside{padding-top:.5rem}.itinerary aside b{font-size:.7rem;text-transform:uppercase;letter-spacing:.12em}.itinerary aside p{color:#5d625f}.itinerary aside small{font-family:var(--serif);font-size:1rem}.pricing-note{max-width:740px;font-size:.82rem;color:#6d726f}.principles>div{display:grid;grid-template-columns:repeat(3,1fr);gap:4vw}.principles article{border-top:1px solid rgba(255,255,255,.3);padding-top:1.5rem}.principles p{color:#b8bfbb}.founder{display:grid;grid-template-columns:.55fr 1.2fr;gap:8vw;align-items:center}.portrait-block{aspect-ratio:4/5;background:var(--gold);display:grid;place-items:center}.portrait-block span{font-family:var(--serif);font-size:clamp(5rem,12vw,12rem);color:rgba(24,32,29,.25)}.founder h2{font-size:clamp(2.8rem,5vw,5rem)}.founder div:last-child>p:not(.section-kicker){max-width:600px;color:#5d625f}.contact-wrap{min-height:calc(100vh - 86px);display:grid;grid-template-columns:.85fr 1.15fr;background:var(--cream)}.contact-intro{background:var(--ink);color:white;padding:clamp(5rem,8vw,8rem) max(5vw,2rem)}.contact-intro .section-kicker{color:#e5a17f}.contact-intro>p:not(.section-kicker){font-family:var(--serif);font-size:1.25rem;max-width:560px;color:#d4d8d5}.contact-direct{display:flex;flex-direction:column;margin:3rem 0;font-family:var(--serif);font-size:1.2rem}.contact-intro>small{font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;color:#aeb5b1}.enquiry-form{padding:clamp(5rem,8vw,8rem) max(5vw,2rem);display:flex;flex-direction:column;gap:1.5rem}.enquiry-form label{display:flex;flex-direction:column;gap:.55rem}.enquiry-form label>span{font-size:.7rem;text-transform:uppercase;letter-spacing:.13em;font-weight:700}.enquiry-form input,.enquiry-form select,.enquiry-form textarea{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;padding:.8rem 0;font:inherit;color:var(--ink);border-radius:0}.enquiry-form textarea{border:1px solid var(--line);padding:1rem;resize:vertical}.enquiry-form input:focus,.enquiry-form select:focus,.enquiry-form textarea:focus{outline:2px solid #9b772f;outline-offset:3px}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.enquiry-form .button{border:0;align-self:flex-start;cursor:pointer}.form-note{font-size:.78rem;color:#6d726f}.cost-guide{background:var(--gold);display:grid;grid-template-columns:.35fr 1.2fr .5fr;gap:5vw}.cost-guide h2{font-size:clamp(2.5rem,4.5vw,4.8rem)}.cost-guide>p:last-child{align-self:end}.form-success{padding:1rem;background:#e2eadf;border-left:3px solid #557353}
@media(max-width:850px){.inner-header nav{top:0}.detail-intro,.editorial-row,.route-note,.month-row,.itinerary,.founder,.contact-wrap,.cost-guide{grid-template-columns:1fr}.detail-hero{min-height:620px}.editorial-row{grid-template-columns:40px 1fr}.editorial-row aside{grid-column:2;padding-top:0}.place-grid,.principles>div{grid-template-columns:1fr}.idea-card{padding:2.2rem;min-height:380px}.contact-intro h1{font-size:clamp(3.5rem,14vw,6rem)}.cost-guide{gap:1rem}.cost-guide>p:last-child{max-width:600px}.itinerary aside{max-width:550px}}@media(max-width:540px){.page-hero{min-height:520px;padding-left:1.4rem;padding-right:1.4rem}.page-hero h1,.detail-hero h1{font-size:3.8rem}.detail-hero{padding-left:1.4rem;padding-right:1.4rem}.editorial-row{padding:3.5rem 0}.idea-grid{grid-template-columns:1fr;padding-left:1.4rem;padding-right:1.4rem}.form-pair{grid-template-columns:1fr}.contact-intro,.enquiry-form{padding-left:1.4rem;padding-right:1.4rem}.month-row{padding:3rem 0}.itinerary{padding:3rem 0}}

.price-intro{background:#e7e1d7;padding-bottom:7rem}
.price-statement{display:grid;grid-template-columns:.4fr 1.3fr .55fr;gap:5vw;align-items:end}
.price-statement h2{font-size:clamp(2.7rem,4.8vw,5rem);margin:0}
.price-statement>p:last-child{color:#5d625f}
.price-bands{display:grid;grid-template-columns:repeat(3,1fr);margin-top:5rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.price-bands article{padding:2.25rem 2.5rem;border-right:1px solid var(--line)}
.price-bands article:first-child{padding-left:0}
.price-bands article:last-child{border:0}
.price-bands span{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.15em;color:#8f4933}
.price-bands strong{display:block;font-family:var(--serif);font-size:clamp(2rem,3vw,3.2rem);font-weight:400;line-height:1.1;margin-top:1.2rem}
.price-bands small{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:#747974;margin:.4rem 0 1.5rem}
.price-bands p{color:#5d625f}
.price-context{max-width:900px;margin:2rem 0 0;font-size:.82rem;color:#666c68}
.itinerary-heading{display:grid;grid-template-columns:.35fr 1fr;gap:5vw;margin-bottom:3rem}
.itinerary-heading h2{font-size:clamp(2.7rem,4.8vw,5rem);margin:0}
.itinerary-meta small{display:block;font-family:var(--serif);font-size:1.35rem;color:#a64f32;margin-top:2rem}
.itinerary aside a{display:inline-block;margin-top:1.2rem;padding-bottom:.15rem;border-bottom:1px solid currentColor;font-size:.7rem;text-transform:uppercase;letter-spacing:.12em}
.price-factors>div{display:grid;grid-template-columns:repeat(3,1fr);gap:4vw}
.price-factors article{border-top:1px solid rgba(255,255,255,.28);padding-top:1.5rem}
.price-factors span{font-size:.7rem;color:#e5a17f}
.price-factors h3{font-size:2rem;margin:2.25rem 0 1rem}
.price-factors p{color:#bac0bc}
@media(max-width:850px){
.price-statement,.itinerary-heading{grid-template-columns:1fr}
.price-bands,.price-factors>div{grid-template-columns:1fr}
.price-bands article,.price-bands article:first-child{padding:2rem 0;border-right:0;border-bottom:1px solid var(--line)}
.price-bands article:last-child{border-bottom:0}
.price-statement{gap:2rem}
}

/* Individual itineraries */
.journey-image{display:block}
.journey-body h2 a{color:inherit}
.itinerary-detail-hero{min-height:84vh;position:relative;display:flex;align-items:flex-end;color:#fff;padding:clamp(9rem,14vw,13rem) max(7vw,2rem) clamp(4rem,7vw,7rem)}
.itinerary-detail-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.itinerary-detail-hero .detail-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,14,11,.82),rgba(7,14,11,.05) 72%),linear-gradient(90deg,rgba(7,14,11,.52),transparent 70%)}
.itinerary-detail-hero>div:last-child{position:relative;max-width:1080px}
.itinerary-detail-hero h1{max-width:950px;margin:1rem 0 1.5rem;font-size:clamp(4rem,8vw,8rem);line-height:.95;letter-spacing:-.045em}
.itinerary-detail-hero>div>p:not(.section-kicker){max-width:740px;font-family:var(--serif);font-size:clamp(1.2rem,1.8vw,1.55rem);line-height:1.55}
.itinerary-summary{display:flex;flex-wrap:wrap;gap:.65rem 2.5rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.35);font-size:.72rem;text-transform:uppercase;letter-spacing:.13em}
.itinerary-overview{display:grid;grid-template-columns:.55fr 1fr;gap:8vw;background:#f3efe7}
.itinerary-overview h2{font-size:clamp(3rem,5vw,5.4rem)}
.itinerary-overview .lead{font-family:var(--serif);font-size:clamp(1.3rem,2vw,1.7rem);line-height:1.6;color:var(--ink)}
.itinerary-overview>div:last-child>p:not(.lead){max-width:800px;color:#59615d;line-height:1.8}
.itinerary-note{margin-top:2.2rem;padding-top:1.5rem;border-top:1px solid var(--line);font-size:.86rem}
.itinerary-route{display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw;align-items:start}
.route-copy h2{font-size:clamp(3rem,5vw,5rem);margin-bottom:2.5rem}
.route-copy ol{list-style:none;margin:0;padding:0;border-top:1px solid rgba(255,255,255,.2)}
.route-copy li{display:grid;grid-template-columns:45px 1fr;gap:1.2rem;padding:1.6rem 0;border-bottom:1px solid rgba(255,255,255,.2)}
.route-copy li>span{color:#c7b38d;font-size:.72rem}
.route-copy h3{margin:0;font-family:var(--serif);font-size:1.65rem;font-weight:400}
.route-copy b{display:block;margin:.35rem 0 .7rem;color:#d8be8a;font-size:.7rem;text-transform:uppercase;letter-spacing:.12em}
.route-copy li p{margin:0;color:#bac0bc;font-size:.91rem;line-height:1.65}
.route-map-wrap{position:sticky;top:2rem}
.route-map{height:min(70vh,680px);min-height:480px;background:#d9ded9;filter:saturate(.65)}
.route-map-wrap>p{margin:.9rem 0 0;color:#aeb6b1;font-size:.72rem;line-height:1.6}
.leaflet-tooltip{border:0!important;border-radius:0!important;background:#14201b!important;color:#fff!important;box-shadow:none!important;font-family:Arial,sans-serif;font-size:11px!important;letter-spacing:.03em}
.leaflet-tooltip:before{display:none}
.camp-suggestions{background:#ede7dc}
.camp-stop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:rgba(20,32,27,.18);margin-top:3rem}
.camp-stop-grid article{background:#ede7dc;padding:clamp(2rem,4vw,4rem)}
.camp-stop-grid article>span{font-size:.68rem;text-transform:uppercase;letter-spacing:.14em;color:#806944}
.camp-stop-grid h3{font-size:clamp(2rem,3vw,3rem);margin:1.5rem 0 1rem}
.camp-stop-grid article>p{color:#5c645f;min-height:7.5em}
.camp-links{margin-top:2rem;border-top:1px solid var(--line)}
.camp-links a{display:flex;justify-content:space-between;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--line);font-family:var(--serif);font-size:1.05rem}
.camp-links i{font-family:var(--sans);font-size:.62rem;font-style:normal;text-transform:uppercase;letter-spacing:.1em;white-space:nowrap}
.itinerary-price{display:grid;grid-template-columns:1fr 1fr;gap:10vw;background:#f6f3ed}
.itinerary-price h2{font-size:clamp(3rem,5vw,5rem)}
.itinerary-price h3{font-size:2rem}
.itinerary-price p{color:#5c645f;line-height:1.8}
@media(max-width:900px){.itinerary-route{grid-template-columns:1fr}.route-map-wrap{position:static}.camp-stop-grid{grid-template-columns:1fr 1fr}.itinerary-overview{grid-template-columns:1fr}.itinerary-price{grid-template-columns:1fr;gap:3rem}}
@media(max-width:700px){.itinerary-detail-hero{min-height:720px;padding:8.5rem 1.4rem 3rem}.itinerary-detail-hero h1{font-size:3.55rem}.itinerary-summary{gap:.7rem 1.3rem}.route-map{min-height:390px;height:52vh}.camp-stop-grid{grid-template-columns:1fr}.camp-stop-grid article>p{min-height:0}.itinerary-route{padding-left:1.4rem;padding-right:1.4rem}.itinerary-overview{gap:1.5rem}}

/* Image-led journey collection */
.journeys{padding-top:clamp(5rem,8vw,8rem)}
.itinerary-heading>div>p{max-width:720px;color:#5d625f;font-family:var(--serif);font-size:1.2rem}
.journey-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem;margin-top:4rem}
.journey-card{background:#fff;border:1px solid var(--line);display:flex;flex-direction:column;min-width:0}
.journey-card.featured{grid-column:1/-1;display:grid;grid-template-columns:1.05fr .95fr;background:var(--ink);color:#fff}
.journey-image{position:relative;aspect-ratio:16/9;overflow:hidden;background:#38413c}
.journey-card.featured .journey-image{aspect-ratio:auto;min-height:620px}
.journey-image img{transition:transform .7s ease}
.journey-card:hover .journey-image img{transform:scale(1.025)}
.journey-image>span{position:absolute;left:1.25rem;bottom:1.25rem;background:var(--paper);color:var(--ink);padding:.7rem .9rem;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em}
.journey-body{padding:clamp(1.8rem,3vw,3rem);display:flex;flex:1;flex-direction:column}
.journey-type{font-size:.7rem;text-transform:uppercase;letter-spacing:.15em;color:#9b5139;font-weight:700;margin-bottom:1rem}
.featured .journey-type{color:#e5a17f}
.journey-body h2{font-size:clamp(2.3rem,3.6vw,4rem);margin-bottom:1.5rem}
.journey-lead{font-family:var(--serif);font-size:1.2rem;line-height:1.55;color:#d2d7d3;max-width:640px}
.night-plan{list-style:none;padding:0;margin:1rem 0 2.25rem;border-top:1px solid var(--line)}
.featured .night-plan{border-color:rgba(255,255,255,.22)}
.night-plan li{display:grid;grid-template-columns:1fr auto;gap:.25rem 1rem;padding:1.15rem 0;border-bottom:1px solid var(--line)}
.featured .night-plan li{border-color:rgba(255,255,255,.22)}
.night-plan b{font-family:var(--serif);font-size:1.15rem;font-weight:400}
.night-plan span{color:#9b5139;font-size:.73rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;white-space:nowrap}
.featured .night-plan span{color:#e5a17f}
.night-plan small{grid-column:1/-1;color:#707571;font-size:.82rem}
.featured .night-plan small{color:#aeb6b1}
.journey-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:1.5rem;margin-top:auto}
.journey-foot p{margin:0}.journey-foot p b{display:block;font-family:var(--serif);font-size:1.4rem;font-weight:400;color:#a64f32}.featured .journey-foot p b{color:#e5a17f}.journey-foot p small{display:block;color:#777d79;font-size:.72rem;max-width:280px}.featured .journey-foot p small{color:#aeb6b1}
.journey-foot a,.honeymoon-idea a{font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;border-bottom:1px solid currentColor;padding-bottom:.18rem;white-space:nowrap}
.pricing-note{margin-top:2.5rem}
.honeymoon-idea{background:var(--ink);color:#fff}.honeymoon-idea p{color:#c0c7c2}.honeymoon-idea small{color:#e5a17f}.honeymoon-idea a{margin-top:1.5rem;align-self:flex-start}
@media(max-width:900px){.journey-grid{grid-template-columns:1fr}.journey-card.featured{grid-column:auto;display:flex}.journey-card.featured .journey-image{aspect-ratio:16/9;min-height:0}}
@media(max-width:540px){.journey-grid{gap:1.25rem;margin-top:2.5rem}.journey-body{padding:1.5rem}.journey-foot{align-items:flex-start;flex-direction:column}.journey-foot a{white-space:normal}.journey-card.featured .journey-image{aspect-ratio:4/3}.night-plan li{grid-template-columns:1fr auto}}

/* Timeless luxury refinement */
:root{--ink:#14201b;--cream:#f2eee5;--gold:#a98a58;--paper:#fbfaf7;--line:rgba(20,32,27,.16);--serif:Baskerville,'Iowan Old Style','Palatino Linotype',Georgia,serif;--sans:'Avenir Next',Avenir,'Helvetica Neue',Arial,sans-serif}
body{font-size:17px;line-height:1.72;letter-spacing:.002em;background:var(--paper)}
h1,h2,h3{letter-spacing:-.025em}
h2{font-size:clamp(2.65rem,4.5vw,5rem);line-height:1.06}
.section-pad{padding:clamp(5.5rem,9vw,9rem) max(6vw,2rem)}
.section-kicker{color:#806944;font-size:.68rem;letter-spacing:.24em;font-weight:600;margin-bottom:2.2rem}
.site-header{height:94px;padding:0 max(4.5vw,1.4rem);border-bottom:1px solid rgba(255,255,255,.2)}
.brand{gap:14px;letter-spacing:.16em}
.brand-mark{width:46px;height:46px;border-color:rgba(255,255,255,.62);border-radius:50%;font-size:.65rem;letter-spacing:.12em}
.brand b{font-size:1.18rem;letter-spacing:.04em}
.brand small{font-size:.52rem;letter-spacing:.34em;margin-top:7px}
.site-header nav{gap:2.35rem;font-size:.69rem;letter-spacing:.17em}
.nav-cta{padding:.86rem 1.45rem;border-color:rgba(255,255,255,.5)}
.hero{height:max(760px,100svh);background:#223029}
.hero-shade{background:linear-gradient(90deg,rgba(7,14,11,.72) 0%,rgba(7,14,11,.34) 48%,rgba(7,14,11,.04) 78%),linear-gradient(0deg,rgba(7,14,11,.42),transparent 58%)}
.hero-copy{left:max(8vw,2rem);bottom:17%;max-width:760px}
.hero h1{font-size:clamp(4rem,7.4vw,7.6rem);letter-spacing:-.04em;line-height:.98;margin-bottom:2rem}
.hero h1 em,.quote em{color:#ddc79c}
.hero-copy>p:not(.eyebrow){font-size:clamp(1.15rem,1.65vw,1.38rem);line-height:1.58;max-width:600px;color:rgba(255,255,255,.9)}
.eyebrow{color:#ddc79c;font-size:.67rem;letter-spacing:.28em;font-weight:600}
.hero-actions{margin-top:2.8rem;gap:2.25rem}
.button{padding:1.05rem 1.65rem;font-size:.68rem;letter-spacing:.17em;font-weight:600}
.button.light{background:#f4f0e7;color:#14201b}
.button.light:hover{background:#fff}
.text-link{font-size:.7rem;letter-spacing:.16em}
.hero-trust{padding:1.4rem max(4.5vw,1.4rem);font-size:.61rem;letter-spacing:.19em;color:rgba(255,255,255,.7)}
.intro-grid{grid-template-columns:1.15fr .7fr;gap:11vw}
.intro .lead{font-size:1.42rem;line-height:1.58}
.ink-link{font-size:.69rem;letter-spacing:.17em}
.regions{background:#14201b}
.regions-head .section-kicker,.region-card .number{color:#c3a974}
.region-card{padding:2.15rem 0;transition:background .3s ease,padding .3s ease}
.region-card:hover,.region-card.active{background:rgba(255,255,255,.035);padding-left:1.4rem;padding-right:1.4rem}
.region-card p{letter-spacing:.18em;color:#aeb7b1}
.region-card h3{letter-spacing:-.02em}
.region-card div>span{color:#aeb7b1}
.feature{background:#f7f4ee;gap:clamp(3.5rem,8vw,9rem)}
.feature-image{height:min(740px,68vw)}
.image-note{background:#f7f4ee;letter-spacing:.17em}
.feature-copy>p:not(.section-kicker),.intro-grid p:not(.lead),.detail-intro div>p:not(.lead),.month-row p{color:#59615d}
.journey-types a{padding:1.25rem 0;font-size:1.12rem}
.journey-types a span,.steps span,.editorial-row>span,.idea-card>span,.journey-type,.night-plan span{color:#8b7047}
.planning,.price-intro{background:#eee9df}
.planning-head{grid-template-columns:.55fr 1.45fr}
.steps h3{font-size:1.65rem}
.proof strong{font-size:1.5rem}
.quote{height:78vh}
.quote-shade{background:linear-gradient(rgba(8,15,12,.34),rgba(8,15,12,.46))}
.quote blockquote{font-size:clamp(2.7rem,5.4vw,5.5rem);letter-spacing:-.025em}
.cta{background:#fbfaf7}
.button.dark{background:#14201b}
footer,.dark-section,.inner-header,.contact-intro,.honeymoon-idea,.journey-card.featured{background:#14201b}
footer{padding-top:4.5rem;padding-bottom:4.5rem}
.sub-brand{grid-column:1/-1;margin:1rem 0 -2rem;padding-top:1.4rem;border-top:1px solid rgba(255,255,255,.12);font-size:.62rem;line-height:1.5;letter-spacing:.13em;text-transform:uppercase;color:rgba(255,255,255,.46)}
.sub-brand a{color:rgba(255,255,255,.68);border-bottom:1px solid rgba(255,255,255,.28)}
.page-hero{background:#f1ece2}
.page-hero h1,.detail-hero h1,.contact-intro h1{font-size:clamp(3.8rem,7.5vw,7.8rem);letter-spacing:-.035em}
.gold-hero,.gold-section,.cost-guide{background:#c6b08a}
.gold-hero .section-kicker{color:#5e4c31}
.detail-shade{background:linear-gradient(90deg,rgba(7,14,11,.84) 0%,rgba(7,14,11,.5) 42%,rgba(7,14,11,.12) 78%),linear-gradient(0deg,rgba(7,14,11,.52) 0%,transparent 60%)}
.detail-hero .section-kicker,.contact-intro .section-kicker,.featured .journey-type,.featured .night-plan span,.featured .journey-foot p b{color:#d8be8a}
.timing{background:#c6b08a}
.season-list{background:#b59d76}
.timing-copy .section-kicker{color:#58472e}
.idea-card{background:#fbfaf7}
.idea-card.honeymoon-idea{background:#14201b;color:#fff}
.idea-card.honeymoon-idea p{color:#c0c7c2}
.idea-card.honeymoon-idea small{color:#e5a17f}
.idea-card small,.itinerary>div span,.journey-foot p b{color:#8b7047}
.journey-grid{gap:2.4rem}
.journey-card{background:#fff;border-color:rgba(20,32,27,.13)}
.journey-image>span{background:rgba(251,250,247,.94);font-size:.66rem;letter-spacing:.16em}
.journey-image img{transition:transform 1s ease}
.journey-card:hover .journey-image img{transform:scale(1.012)}
.journey-body{padding:clamp(2rem,3.2vw,3.3rem)}
.journey-lead{color:#d4dad6}
.night-plan small,.journey-foot p small{color:#69716d}
.enquiry-form input:focus,.enquiry-form select:focus,.enquiry-form textarea:focus{outline-color:#8b7047}
.form-success{background:#e7eee6;border-left-color:#536d5e}
.form-error{background:#f4e8e4;border-left:3px solid #9b5139;padding:1rem}
.enquiry-form button:disabled{cursor:wait;opacity:.68}

.season-notes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:2rem}
.safari-note,.coast-note{padding:1.4rem 1.5rem;border-left:2px solid;background:#f1ece2}
.safari-note{border-left-color:#61766b;background:#edf1ed}
.coast-note{border-left-color:#a98a58}
.safari-note b,.coast-note b{display:block;margin-bottom:.55rem;font-size:.68rem;text-transform:uppercase;letter-spacing:.18em;color:#806944}
.safari-note b{color:#53685d}
.safari-note p,.coast-note p{margin:0;font-family:var(--serif);font-size:1.05rem;line-height:1.65;color:#3f4944}
@media(max-width:700px){.season-notes{grid-template-columns:1fr;margin-top:1.5rem}.safari-note,.coast-note{padding:1.2rem 1.25rem}.safari-note p,.coast-note p{font-size:1rem}}

/* Editorial wordmark */
.brand{gap:0;text-align:center;text-transform:none;letter-spacing:0;line-height:1}
.brand-mark{display:none}
.brand>span:last-child{display:block;min-width:178px}
.brand b{font-size:1.65rem;letter-spacing:.01em;line-height:.9}
.brand small{position:relative;margin-top:.72rem;padding-top:.62rem;border-top:1px solid rgba(216,190,138,.78);font-size:.5rem;letter-spacing:.42em;color:#f3eee4}
.brand small::before{content:'';position:absolute;top:-3px;left:50%;width:5px;height:5px;border-radius:50%;background:#d8be8a;transform:translateX(-50%)}
.footer-brand{width:max-content;text-align:center}
.footer-brand b{font-size:2.15rem;line-height:.95}
.footer-brand span{position:relative;margin-top:.85rem;padding-top:.75rem;border-top:1px solid rgba(216,190,138,.68);font-size:.56rem;letter-spacing:.38em;color:#f3eee4}
.footer-brand span::before{content:'';position:absolute;top:-3px;left:50%;width:5px;height:5px;border-radius:50%;background:#d8be8a;transform:translateX(-50%)}
@media(max-width:540px){.brand>span:last-child{min-width:145px}.brand b{font-size:1.42rem}.brand small{font-size:.43rem;letter-spacing:.34em}.footer-brand b{font-size:1.9rem}}
@media(max-width:850px){.site-header{height:78px}.hero-copy{left:1.6rem;right:1.6rem}.hero h1{font-size:clamp(3.6rem,15vw,5.8rem)}.section-pad{padding-top:5.25rem;padding-bottom:5.25rem}}
@media(max-width:540px){body{font-size:16px}.section-pad{padding:4.75rem 1.4rem}.hero h1{font-size:3.65rem}.hero-copy>p:not(.eyebrow){font-size:1.02rem}.page-hero h1,.detail-hero h1{font-size:3.55rem}.quote{min-height:500px}.sub-brand{margin-bottom:-1rem}}

/* Homepage mobile refinement below the hero */
@media(max-width:600px){
.home .intro{padding-top:4rem;padding-bottom:4.25rem}
.home .intro-grid{grid-template-columns:minmax(0,1fr);gap:1.75rem}
.home .intro-grid>div{padding-top:0;max-width:none}
.home .intro h2{font-size:2.55rem;line-height:1.06;max-width:10em}
.home .intro h2 br{display:none}
.home .intro .lead{max-width:none;font-size:1.18rem;line-height:1.55}
.home .intro-grid p:not(.lead){font-size:.96rem;line-height:1.7}
.home .intro .ink-link{margin-top:1.4rem}
.home .regions-head{padding-top:4.25rem;padding-bottom:2.25rem}
.home .regions-head h2{font-size:3rem}
.home .region-stage{margin:0}
.home .region-card,.home .region-card:hover,.home .region-card.active{grid-template-columns:34px 1fr;padding:1.35rem 1.4rem;background:transparent}
.home .region-card .number{align-self:start;padding-top:.45rem}
.home .region-card div{gap:.25rem}
.home .region-card p{font-size:.62rem;letter-spacing:.14em}
.home .region-card h3{font-size:2rem;line-height:1.08;margin:.12rem 0}
.home .region-card div>span{font-size:.83rem;line-height:1.45}
.home .feature{gap:3.25rem;padding-top:0;padding-bottom:4.5rem}
.home .feature-image{height:auto;min-height:0;aspect-ratio:4/3}
.home .image-note{padding:.75rem 1rem;font-size:.58rem;letter-spacing:.12em}
.home .feature-copy h2{font-size:2.7rem;line-height:1.06}
.home .feature-copy>p:not(.section-kicker){font-size:.96rem;line-height:1.7}
.home .journey-types{margin-top:2.25rem}
.home .journey-types a{grid-template-columns:34px 1fr auto;padding:1rem 0;font-size:1.04rem}
.home .planning{padding-top:4.5rem;padding-bottom:4.5rem}
.home .planning-head h2{font-size:2.65rem;line-height:1.08}
.home .steps{margin-top:3.25rem;gap:2.25rem}
.home .steps article{padding-top:1.15rem}
.home .steps h3{margin:1.25rem 0 .65rem;font-size:1.55rem}
.home .steps p{font-size:.94rem;line-height:1.65}
.home .proof{margin-top:3.75rem;padding:0}
.home .proof div,.home .proof div:first-child{padding:1.2rem 0}
.home .proof strong{font-size:1.42rem}
.home .quote{height:62vh;min-height:430px;max-height:560px}
.home .quote blockquote{padding:1.4rem;font-size:2.35rem;line-height:1.16}
.home .cta{padding-top:4.5rem;padding-bottom:4.75rem}
.home .cta h2{font-size:2.7rem;line-height:1.08}
.home .cta>p:not(.section-kicker){font-size:1.08rem;line-height:1.55}
.home footer{gap:2.25rem;padding-top:3.25rem;padding-bottom:3.25rem}
.home footer>div:nth-child(2){padding-top:.25rem}
.home .sub-brand{margin-top:.25rem;padding-top:1.25rem}
}

/* Property and regional directories */
.property-directory-hero{background:#e9e1d2}
.property-directory{padding-top:4rem}
.directory-tools{margin-bottom:3.5rem;padding-bottom:2rem;border-bottom:1px solid var(--line)}
.property-search{display:block;max-width:620px;margin-bottom:2rem}
.property-search span{display:block;margin-bottom:.65rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.16em;color:#6b705f}
.property-search input{width:100%;border:0;border-bottom:1px solid var(--ink);border-radius:0;background:transparent;padding:.85rem 0;font:inherit;font-family:var(--serif);font-size:1.25rem;color:var(--ink)}
.property-search input:focus{outline:2px solid #8b7047;outline-offset:4px}
.region-filters{display:flex;flex-wrap:wrap;gap:.65rem}
.region-filters button{border:1px solid var(--line);background:transparent;padding:.72rem 1rem;font:inherit;font-size:.75rem;letter-spacing:.04em;color:var(--ink);cursor:pointer}
.region-filters button:hover,.region-filters button.active{background:var(--ink);color:#fff;border-color:var(--ink)}
.region-filters span{opacity:.62;margin-left:.3rem}
.directory-count{margin:1.5rem 0 0;font-family:var(--serif);color:#66706a}
.property-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem}
.property-card{min-width:0;background:#fff;border:1px solid var(--line)}
.property-card[hidden]{display:none}
.property-card>a{display:flex;height:100%;flex-direction:column}
.property-card-image{aspect-ratio:4/3;overflow:hidden;background:#d7d3ca}
.property-card-image img{transition:transform .6s ease}
.property-card:hover .property-card-image img{transform:scale(1.025)}
.property-card-body{display:flex;flex:1;flex-direction:column;padding:1.7rem}
.property-region{margin-bottom:.9rem;font-size:.7rem;text-transform:uppercase;letter-spacing:.16em;color:#806944}
.property-card h2{font-size:clamp(1.7rem,2.5vw,2.35rem);margin-bottom:1rem}
.property-card-body>p:not(.property-region){display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:4;color:#646b67;font-size:.94rem;line-height:1.65}
.property-card-body>span{align-self:flex-start;margin-top:auto;padding-top:1.25rem;border-bottom:1px solid currentColor;font-size:.7rem;text-transform:uppercase;letter-spacing:.13em}
.directory-empty{padding:3rem;border:1px solid var(--line);font-family:var(--serif);font-size:1.25rem;text-align:center}
.directory-editorial{display:grid;grid-template-columns:.38fr 1.2fr;gap:6vw;background:#eee9df}
.directory-editorial h2{max-width:900px}
.directory-editorial div>p{max-width:700px;color:#5d625f}
.directory-heading{display:grid;grid-template-columns:1.1fr .65fr;gap:6vw;align-items:end;margin-bottom:3.5rem}
.directory-heading h2{font-size:clamp(2.7rem,4.5vw,4.8rem);margin-bottom:0}
.directory-heading>p{color:#5d625f}
.region-properties{background:#f1ede5}
.related-properties{background:#f5f2ec}
.directory-more{text-align:center;margin-top:3.5rem}
.property-hero{min-height:76vh;position:relative;display:flex;align-items:flex-end;color:#fff;padding:clamp(8rem,14vw,13rem) max(7vw,2rem) clamp(4rem,7vw,7rem)}
.property-hero>img{position:absolute;inset:0}
.property-hero .detail-shade{background:linear-gradient(0deg,rgba(7,14,11,.74),rgba(7,14,11,.08) 68%),linear-gradient(90deg,rgba(7,14,11,.38),transparent 60%)}
.property-hero>div:last-child{position:relative;max-width:1100px}
.property-hero h1{max-width:1000px;margin:0 0 1.5rem;font-size:clamp(4rem,8vw,8rem);line-height:.98;letter-spacing:-.04em}
.property-hero>div:last-child>a{display:inline-block;border-bottom:1px solid currentColor;padding-bottom:.2rem;font-size:.72rem;text-transform:uppercase;letter-spacing:.14em}
.property-intro{display:grid;grid-template-columns:.42fr 1.25fr;gap:7vw}
.property-intro h2{font-size:clamp(2.7rem,4.5vw,4.8rem)}
.property-intro .lead{font-family:var(--serif);font-size:1.45rem;line-height:1.55;color:var(--ink)}
.property-intro div:last-child>p:not(.lead){max-width:800px;color:#5d625f}
.property-actions{display:flex;align-items:center;gap:2rem;margin-top:2.5rem}
.property-actions .button{margin-top:0}
.property-actions .ink-link{margin-top:0}
.property-facts{display:grid;grid-template-columns:1fr 1.45fr 1fr;background:var(--ink);color:#fff;border-top:1px solid rgba(255,255,255,.18)}
.property-facts>div{padding:2rem max(2rem,5vw);border-right:1px solid rgba(255,255,255,.16)}
.property-facts>div:last-child{border-right:0}
.property-facts span{display:block;margin-bottom:.65rem;color:#c7b38d;font-size:.68rem;text-transform:uppercase;letter-spacing:.16em}
.property-facts strong{display:block;font-family:var(--serif);font-size:1.15rem;font-weight:400;line-height:1.45}
.property-details{padding-top:2rem;padding-bottom:2rem;background:#eee7db}
.property-detail-block{display:grid;grid-template-columns:90px minmax(0,1fr);gap:clamp(2rem,7vw,8rem);padding:clamp(4rem,8vw,8rem) 0;border-top:1px solid rgba(20,32,27,.2)}
.property-detail-block:first-child{border-top:0}
.property-detail-number{color:#8b7047;font-family:var(--serif);font-size:1.1rem}
.property-detail-block>div{display:grid;grid-template-columns:minmax(210px,.62fr) minmax(0,1.38fr);column-gap:clamp(3rem,8vw,10rem)}
.property-detail-block .section-kicker{grid-column:1/-1}
.property-detail-block h2{font-size:clamp(2.7rem,5vw,5.4rem);line-height:1}
.property-detail-block>div>p:last-child{max-width:800px;color:#555e59;font-size:1.02rem;line-height:1.85}
.property-consider{display:grid;grid-template-columns:.62fr 1.38fr;gap:clamp(3rem,9vw,11rem);background:#fff}
.property-consider h2{max-width:620px;font-size:clamp(2.6rem,4.6vw,5rem)}
.property-consider h3{margin:0 0 .8rem;font-family:var(--serif);font-size:1.65rem;font-weight:400}
.property-consider h3:not(:first-child){margin-top:2.8rem;padding-top:2.8rem;border-top:1px solid var(--line)}
.property-consider>div:last-child>p{max-width:780px;color:#59615d;line-height:1.8}
.property-check-note{margin-top:2.8rem;padding-top:1.5rem;border-top:1px solid var(--line);font-size:.82rem!important;color:#747a76!important}
.property-gallery{padding-top:3rem;background:#14201b;color:#fff}
.property-gallery-heading{display:grid;grid-template-columns:1fr .55fr;gap:6vw;align-items:end;margin-bottom:3rem}
.property-gallery-heading h2{margin-bottom:0;font-size:clamp(2.8rem,5vw,5.3rem)}
.property-gallery-heading>p{max-width:460px;margin:0;color:#b9c0bc}
.property-gallery-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:repeat(2,minmax(250px,34vh));gap:1rem}
.property-gallery-item{position:relative;overflow:hidden;border:0;padding:0;background:#26312c;cursor:zoom-in}
.property-gallery-item:first-child{grid-column:span 6;grid-row:span 2}
.property-gallery-item:not(:first-child){grid-column:span 3}
.property-gallery-item img{transition:transform .55s ease,filter .35s ease}
.property-gallery-item:hover img{transform:scale(1.025);filter:brightness(.92)}
.gallery-mobile-note{display:none}
.gallery-lightbox{width:min(94vw,1500px);height:min(92vh,1000px);border:0;padding:0;background:#08100d;color:#fff;overflow:hidden}
.gallery-lightbox::backdrop{background:rgba(5,10,8,.88);backdrop-filter:blur(5px)}
.gallery-lightbox img{width:100%;height:100%;object-fit:contain}
.gallery-close{position:absolute;z-index:2;top:1rem;right:1rem;border:1px solid rgba(255,255,255,.5);background:rgba(8,16,13,.72);color:#fff;padding:.8rem 1rem;font:inherit;font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;cursor:pointer}
.region-directory-hero .section-kicker{color:#d8be8a}
.editorial-row aside a{display:inline-block;margin-top:1rem;border-bottom:1px solid currentColor;font-family:var(--sans);font-size:.68rem;text-transform:uppercase;letter-spacing:.12em}
@media(max-width:980px){.property-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-header nav{gap:1.25rem}}
@media(max-width:1100px) and (min-width:851px){.menu-toggle{display:block;z-index:2}.menu-toggle span{display:block;width:25px;height:1px;background:#fff;margin:7px}.site-header nav{display:none;position:absolute;left:0;right:0;top:0;background:var(--ink);padding:110px 2rem 2rem;flex-direction:column;align-items:flex-start;font-size:1rem}.site-header nav.open{display:flex}}
@media(max-width:700px){.property-grid{grid-template-columns:1fr;gap:1.25rem}.directory-heading,.directory-editorial,.property-intro,.property-consider{grid-template-columns:1fr}.directory-heading{gap:1rem}.directory-tools{margin-bottom:2.5rem}.region-filters{gap:.5rem}.region-filters button{padding:.65rem .8rem}.property-hero{min-height:650px;padding-left:1.4rem;padding-right:1.4rem}.property-hero h1{font-size:3.45rem}.property-facts{grid-template-columns:1fr}.property-facts>div{padding:1.35rem 1.4rem;border-right:0;border-bottom:1px solid rgba(255,255,255,.14)}.property-facts>div:last-child{border-bottom:0}.property-facts strong{font-size:1rem}.property-intro{gap:1.5rem}.property-intro .lead{font-size:1.24rem}.property-actions{align-items:flex-start;flex-direction:column;gap:1.25rem}.property-detail-block{grid-template-columns:1fr;gap:1.2rem;padding:4rem 0}.property-detail-block>div{grid-template-columns:1fr;gap:.8rem}.property-detail-block h2{font-size:3rem}.property-consider{gap:2rem}.property-card-body{padding:1.4rem}.region-properties{padding-top:4.5rem;padding-bottom:4.5rem}}
@media(max-width:700px){.property-gallery{padding-left:0;padding-right:0;overflow:hidden}.property-gallery-heading{grid-template-columns:1fr;gap:1rem;padding:0 1.4rem;margin-bottom:2rem}.property-gallery-heading h2{font-size:2.9rem}.property-gallery-heading>p{font-size:.92rem}.property-gallery-grid{display:flex;gap:.8rem;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 1.4rem 1rem;scrollbar-width:none}.property-gallery-grid::-webkit-scrollbar{display:none}.property-gallery-item,.property-gallery-item:first-child,.property-gallery-item:nth-child(2),.property-gallery-item:nth-child(3),.property-gallery-item:nth-child(4),.property-gallery-item:nth-child(5){display:block;flex:0 0 84vw;height:auto;aspect-ratio:4/3;scroll-snap-align:center}.gallery-mobile-note{display:block;margin:1rem 1.4rem 0;color:#aeb6b1;font-size:.68rem;text-transform:uppercase;letter-spacing:.14em}.gallery-lightbox{width:100vw;height:100dvh;max-width:none;max-height:none}}
.idea-card-link{display:block;margin-top:1.1rem;font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:var(--ink)}
a.idea-card{transition:background-color .25s ease,color .25s ease}
a.idea-card:hover{background:#e8e1d5}

/* Safari Advice */
.advice-hero{background:#e7e1d7}
.advice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);padding-top:1px}
.advice-card{background:var(--paper)}
.advice-card>a{display:grid;grid-template-columns:.72fr 1fr;min-height:410px}
.advice-image{min-height:100%;overflow:hidden;background:#26312c}
.advice-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.advice-card:hover .advice-image img{transform:scale(1.025)}
.advice-card>a>div:last-child{padding:clamp(2rem,4vw,4rem);display:flex;flex-direction:column;align-items:flex-start}
.advice-card span,.home-advice-grid span{font-size:.68rem;text-transform:uppercase;letter-spacing:.15em;color:#806944}
.advice-card h2{font-size:clamp(2rem,3.5vw,3.65rem);margin:2rem 0 1.3rem}
.advice-card p{color:#5d625f}
.advice-card b,.home-advice-grid b{margin-top:auto;padding-top:2rem;font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;font-weight:600}
.article-hero{display:grid;grid-template-columns:1.02fr .98fr;min-height:700px;background:#e7e1d7}
.article-hero>div{padding:clamp(6rem,10vw,10rem) max(5vw,2rem) 5rem;align-self:end}
.article-hero h1{font-size:clamp(3.8rem,6.8vw,7rem);line-height:.98;letter-spacing:-.04em;margin:1.5rem 0 2rem}
.article-hero p{font-family:var(--serif);font-size:clamp(1.2rem,1.8vw,1.5rem);line-height:1.55;max-width:680px}
.article-hero small{display:block;margin-top:2rem;font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;color:#666d69}
.article-hero>img{width:100%;height:100%;object-fit:cover;min-height:700px}
.article-body{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:9vw;align-items:start}
.article-copy{max-width:820px}
.article-section{display:grid;grid-template-columns:50px 1fr;gap:2rem;padding:4rem 0;border-top:1px solid var(--line);scroll-margin-top:2rem}
.article-section>span{font-size:.7rem;color:#806944;padding-top:.5rem}
.article-section h2{font-size:clamp(2.4rem,4vw,4rem);margin-bottom:1.6rem}
.article-section p{font-size:1.06rem;line-height:1.85;color:#515955}
.article-aside{position:sticky;top:2rem;border-top:1px solid var(--line);padding-top:1.5rem}
.article-aside a{display:block;padding:.8rem 0;border-bottom:1px solid var(--line);font-size:.76rem;line-height:1.5;color:#555d59}
.article-related{background:#e7e1d7}
.article-related h2{margin-bottom:3rem}
.article-related>div{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.article-related a{display:flex;justify-content:space-between;gap:1rem;padding:1.6rem 1rem 1.6rem 0;border-bottom:1px solid var(--line);font-family:var(--serif);font-size:1.15rem}
.home-advice{background:#f1ede5}
.home-advice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);margin:4rem 0 2rem}
.home-advice-grid a{background:#f1ede5;min-height:270px;padding:2rem;display:flex;flex-direction:column}
.home-advice-grid h3{font-size:2rem;margin:2rem 0}
.home-advice-grid a:hover{background:#e7e1d7}
@media(max-width:980px){.advice-grid{grid-template-columns:1fr}.article-hero{grid-template-columns:1fr}.article-hero>img{min-height:500px;height:60vh;order:-1}.article-body{grid-template-columns:1fr}.article-aside{display:none}}
@media(max-width:700px){.advice-card>a{grid-template-columns:1fr}.advice-image{height:300px}.article-hero>div{padding:4.5rem 1.4rem}.article-hero h1{font-size:3.45rem}.article-hero>img{min-height:390px;height:50vh}.article-section{grid-template-columns:32px 1fr;gap:1rem;padding:3rem 0}.article-section p{font-size:1rem}.article-related>div,.home-advice-grid{grid-template-columns:1fr}.home-advice-grid a{min-height:220px}}

/* Stronger full-frame hero overlay where mobile copy spans the photograph. */
@media(max-width:850px){
  .detail-shade{background:linear-gradient(180deg,rgba(7,14,11,.3) 0%,rgba(7,14,11,.5) 48%,rgba(7,14,11,.74) 100%)}
  .detail-hero>div{text-shadow:0 2px 18px rgba(0,0,0,.24)}
}

.illustrated-route{margin:0;background:#f4efe5;color:#14201b}.illustrated-route svg{display:block;width:100%;height:auto;max-height:640px}.illustrated-route figcaption{padding:1.3rem 1.6rem;border-top:1px solid #c8bda6}.illustrated-route ol{list-style:none;padding:0;margin:0;display:grid;gap:.7rem}.illustrated-route li{display:flex;gap:.8rem;align-items:center;font-size:.9rem}.illustrated-route li b{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;width:1.5rem;height:1.5rem;background:#14201b;color:#fff;font-size:.75rem;flex-shrink:0}.illustrated-route small{display:block;margin-top:1.2rem;font-size:.75rem;color:#6f7268}
