/* Focused art-direction review: image-led opening, deliberate image roles and a shorter narrative. */
.window-definition{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
.art-hero{position:relative;isolation:isolate;background:#102f59;color:#f8f6f0;min-height:720px;overflow:hidden}
.art-hero-scene{position:absolute;inset:0;margin:0;z-index:-2}
.art-hero-scene img{width:100%;height:100%;object-fit:cover;object-position:54% 80%}
.art-hero:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(8,28,52,.72),rgba(8,28,52,.60) 35%,rgba(8,28,52,.18) 67%,transparent),linear-gradient(0deg,rgba(8,28,52,.82),rgba(8,28,52,.18) 28%,transparent 55%)}
.art-hero-copy{max-width:1440px;min-height:720px;padding:64px 7% 90px;display:flex;flex-direction:column;margin:auto}
.art-hero-copy>.eyebrow{font-size:10px;letter-spacing:2px;margin:0 0 28px;color:#f8f6f0}
.art-hero h1{font-size:clamp(86px,9vw,132px);font-weight:400;line-height:1.04;letter-spacing:-3.4px;margin:0 0 42px;max-width:100%;text-wrap:initial}
.art-hero h1 em{display:block;color:#f1dfbd;white-space:nowrap;font-weight:400}
.art-hero-bottom{margin-top:auto;display:flex;align-items:flex-end;justify-content:space-between;gap:30px;padding-top:30px;border-top:1px solid #ffffff70}
.art-hero-bottom>p{margin:0;font-family:'Playfair Display',Georgia,serif;font-size:25px;line-height:1.55;color:#f8f6f0}
.art-hero-bottom>p span{font-family:'DM Sans',sans-serif;font-size:13px;color:#f8f6f0;letter-spacing:.1px}
.art-hero-bottom .button-row{display:flex;gap:22px;align-items:center;flex-wrap:wrap}
.art-hero .button{background:#f8f6f0;border-color:#f8f6f0;color:#102f59;min-width:195px}
.art-hero .text-link{color:#f8f6f0;border-color:#f8f6f090;min-width:190px}
.art-hero-scene figcaption{position:absolute;right:25px;bottom:18px;background:#102f59;color:#f8f6f0;padding:5px 10px;font-size:10px;line-height:1.8}
.art-hero-scene figcaption a{text-decoration:underline;text-underline-offset:3px}
.art-home .journeys{padding-top:85px;padding-bottom:60px}
.art-home .journeys .section-top{align-items:flex-end;margin-bottom:44px}
.art-home .journeys .section-top h2{font-size:clamp(38px,4.2vw,58px);max-width:750px;line-height:1.12}
.art-home .journeys .section-top>.text-link{margin-bottom:5px}
.art-home .journey-grid{gap:70px}
.art-home .journey-card:nth-child(2){padding-top:64px}
.art-home .journey-card .card-image,.art-home .journey-card:nth-child(2) .card-image{aspect-ratio:5/4}
.art-home .journey-card .card-image img,.art-home .journey-card:nth-child(2) .card-image img{aspect-ratio:5/4}
.art-home .journey-card p:not(.card-meta):not(.trip-hosts){max-width:38ch}
.art-home .journey-card .tag{font-size:9px;letter-spacing:1.25px;max-width:calc(100% - 32px)}
.art-home .private-callout{margin-top:36px;padding-top:28px}
.art-home .private-callout h3{font-size:29px}
.art-home .private-callout p{font-size:14px}
.art-approach{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:9%;padding-top:80px;padding-bottom:90px;align-items:center}
.art-approach .view-window{margin:0;min-width:0}
.view-window img{clip-path:url(#curious-window)}
.art-approach .view-window img{width:100%;height:520px;object-fit:cover;object-position:center bottom}
.art-approach figcaption{margin-top:18px;font-size:10px;color:var(--muted);line-height:1.8;letter-spacing:.2px}
.art-approach figcaption a{text-decoration:underline;text-underline-offset:3px}
.art-note h2{font-size:clamp(40px,4.2vw,60px);line-height:1.1;margin:14px 0 26px;letter-spacing:-1.7px}
.art-note>p:not(.eyebrow){font-size:15px;line-height:1.9;max-width:35ch;color:var(--muted)}
.art-note>.text-link{margin-top:24px;max-width:210px}
.host-chapter{max-width:none;background:#eeebe3;padding-top:80px;padding-bottom:75px;border:0}
.host-introduction{max-width:1136px;margin:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10%;align-items:start}
.host-introduction h2{font-size:clamp(42px,4.6vw,64px);line-height:1.1;max-width:11ch}
.host-letter .nic-byline{font-family:'Playfair Display',Georgia,serif;font-size:30px;font-style:italic;margin:0 0 25px;line-height:1.5}
.nic-byline span{display:block;font:10px/1.8 'DM Sans',sans-serif;letter-spacing:1.5px;text-transform:uppercase;margin-top:6px}
.host-letter>p:not(.nic-byline){font-size:15px;line-height:1.9;max-width:44ch}
.host-letter>.text-link{max-width:270px;margin-top:25px}
.host-chapter .host-films{max-width:1136px;margin:64px auto 0;padding:32px 0 0;background:transparent;border-top:1px solid #aeb4b5}
.host-films>.section-top{max-width:none;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:end}
.host-films .section-top h2{font-size:42px;line-height:1.1}
.host-films .section-top>p{font-size:14px;line-height:1.9;max-width:44ch;margin:0}
.host-films .film-grid{max-width:820px;gap:42px;margin:36px 0 0 auto}
.host-films .film-card{background:transparent;border:0;box-shadow:none}
.host-films .film-card:nth-child(2){margin-top:44px}
.host-films .film-copy{padding:22px 0 0;background:transparent}
.host-films .film-copy h3{font-size:29px;line-height:1.18}
.host-films .film-copy>p:not(.eyebrow):not(.film-note):not(.film-status){font-size:14px;line-height:1.8}
.host-films .film-copy .film-note{font-size:11px;line-height:1.8}
.host-films .film-context{font-size:11px;line-height:1.9;max-width:820px;margin:24px 0 0 auto}
.art-home .testimonials{padding-top:80px;padding-bottom:70px}
.art-home .testimonials>h2{font-size:clamp(42px,4.8vw,66px)}
.art-home .testimonial-grid{gap:70px;margin-top:36px}
.art-home .testimonial blockquote p{font-size:22px;line-height:1.7}
.art-practical{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:12%;padding-top:60px;padding-bottom:65px;border-top:1px solid var(--line)}
.practical-intro h2{font-size:60px;line-height:1.1;margin-bottom:25px}
.practical-intro>p:not(.eyebrow){font-size:14px;line-height:1.9;max-width:29ch}
.practical-intro .text-link{max-width:230px;margin-top:20px}
.practical-questions{min-width:0}
.art-practical details{padding:18px 0;border-bottom:1px solid var(--line);margin:0}
.art-practical details:first-child{border-top:1px solid var(--line)}
.art-practical summary{min-height:44px;font-size:15px;gap:20px;align-items:center}
.art-practical details p{font-size:14px;line-height:1.9;max-width:48ch}
.mailing-reserve{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:23px;padding-bottom:23px;border-top:1px solid var(--line)}
.mailing-reserve h2{font-size:22px;line-height:1.4;letter-spacing:-.3px;flex:none;margin:0}
.mailing-reserve p{font-size:12px;line-height:1.8;margin:0;color:var(--muted)}
.mailing-reserve p span{margin-left:8px}
.art-enquire{padding:72px 24px 66px}
.art-enquire h2{font-size:clamp(48px,6.8vw,90px);line-height:1.05;max-width:920px}
.art-enquire h2 em{color:#f1dfbd}
.art-enquire>p:not(.eyebrow){font-size:14px;margin:24px auto;max-width:540px}
.art-enquire>.eyebrow{font-size:10px;letter-spacing:1.8px;margin-bottom:25px}
.art-enquire small{display:block;font-size:10px;margin:24px 0 0;line-height:1.9}
.art-departure .teaser-photo img{object-position:center 72%}
.art-departure .teaser-details h2{font-size:clamp(36px,3.8vw,50px);max-width:12ch}
.page-intro:not(.teaser-intro):not(.form-intro):after,.planning-sidebar:before{display:none}
@media(min-width:1440px){.art-hero,.art-hero-copy{min-height:760px}}
@media(max-width:1100px){.art-hero-bottom{align-items:flex-start}.art-hero-bottom .button-row{gap:12px;max-width:390px}.art-hero-bottom>p{font-size:23px;min-width:235px}.art-home .journey-grid{gap:40px}.art-approach{gap:7%}.art-approach .view-window img{height:440px}.art-note h2{font-size:43px}.art-note>p:not(.eyebrow){font-size:14px}}
@media(max-width:959px){.art-hero,.art-hero-copy{min-height:680px}.art-hero-copy{padding:50px 6% 75px}.art-hero h1{font-size:88px}.art-hero-bottom{gap:24px}.art-hero-bottom .button-row{display:block;min-width:220px;max-width:250px}.art-hero-bottom .text-link{margin-top:10px}.art-hero-bottom .button{width:100%}.art-home .journeys .section-top{display:block}.art-home .journeys .section-top>.text-link{margin-top:20px}.art-home .journeys .section-top h2{font-size:48px}.host-introduction{gap:7%}.host-introduction h2{font-size:46px}.host-films>.section-top{gap:7%}.host-films .film-grid{gap:28px}.host-letter>p:not(.nic-byline){font-size:14px}.art-practical{gap:9%}.practical-intro h2{font-size:50px}.art-home .testimonial-grid{gap:40px}.art-home .testimonial blockquote p{font-size:20px}.mailing-reserve{align-items:flex-start}.mailing-reserve p span{display:block;margin-left:0}}
@media(max-width:767px){
 .art-hero,.art-hero-copy{min-height:650px}
 .art-hero-copy{padding:38px 24px 70px}
 .art-hero-copy>.eyebrow{font-size:9px;letter-spacing:1.6px;margin-bottom:24px}
 .art-hero h1{font-size:clamp(60px,16vw,84px);letter-spacing:-1.8px;line-height:1.04;margin-bottom:28px;max-width:11ch}
 .art-hero h1 em{white-space:normal}
 .art-hero-scene img{object-position:62% center}
 .art-hero:before{background:linear-gradient(90deg,rgba(8,28,52,.83),rgba(8,28,52,.35)),linear-gradient(0deg,rgba(8,28,52,.92),transparent 90%)}
 .art-hero-bottom{display:block;padding-top:22px;margin-top:auto;border-color:#ffffff70}
 .art-hero-bottom>p{font-size:22px;line-height:1.5;margin:0 0 23px}
 .art-hero-bottom>p span{font-size:12px}
 .art-hero-bottom .button-row{display:flex;max-width:none;gap:10px;align-items:center}
 .art-hero-bottom .button{width:100%;min-height:52px}
 .art-hero-bottom .text-link{min-height:44px;margin:4px 0 0;max-width:none;width:100%}
 .art-hero-scene figcaption{font-size:9px;right:18px;bottom:16px;max-width:calc(100% - 36px)}
 .art-home .journeys{padding-top:52px;padding-bottom:40px}
 .art-home .journeys .section-top{margin-bottom:32px}
 .art-home .journeys .section-top h2{font-size:39px;line-height:1.13}
 .art-home .journey-grid{gap:38px}
 .art-home .journey-card:nth-child(2){padding-top:0}
 .art-home .journey-card .card-image,.art-home .journey-card:nth-child(2) .card-image,.art-home .journey-card .card-image img,.art-home .journey-card:nth-child(2) .card-image img{aspect-ratio:4/3}
 .art-home .journey-card .tag{font-size:8px;letter-spacing:1px}
 .art-home .private-callout{margin-top:32px;padding-top:24px}
 .art-home .private-callout h3{font-size:27px}
 .art-home .private-callout p{font-size:14px}
 .art-approach{grid-template-columns:minmax(0,1fr);gap:34px;padding-top:42px;padding-bottom:54px}
 .art-approach .view-window{max-width:500px}
 .art-approach .view-window img{height:350px}
 .art-approach figcaption{font-size:10px;margin-top:15px}
 .art-note h2{font-size:42px;line-height:1.1;max-width:13ch}
 .art-note>p:not(.eyebrow){font-size:15px;max-width:43ch}
 .host-chapter{padding-top:52px;padding-bottom:50px}
 .host-introduction{grid-template-columns:minmax(0,1fr);gap:30px}
 .host-introduction h2{font-size:44px;max-width:12ch}
 .host-letter .nic-byline{font-size:28px;margin-bottom:18px}
 .host-letter>p:not(.nic-byline){font-size:15px;max-width:none}
 .host-chapter .host-films{margin-top:40px;padding-top:28px}
 .host-films>.section-top{display:block}
 .host-films .section-top h2{font-size:37px}
 .host-films .section-top>p{font-size:14px;margin-top:20px;max-width:none}
 .host-films .film-grid{display:grid;grid-template-columns:minmax(0,1fr);max-width:400px;margin:28px auto 0;gap:36px}
 .host-films .film-card:nth-child(2){margin-top:0}
 .host-films .film-copy{padding:20px 0 0}
 .host-films .film-copy h3{font-size:28px}
 .host-films .film-context{font-size:11px;margin-top:28px}
 .art-home .testimonials{padding-top:54px;padding-bottom:48px}
 .art-home .testimonials>h2{font-size:42px}
 .art-home .testimonial-grid{gap:30px;margin-top:28px}
 .art-home .testimonial blockquote p{font-size:20px;line-height:1.7}
 .art-practical{grid-template-columns:minmax(0,1fr);gap:32px;padding-top:44px;padding-bottom:44px}
 .practical-intro h2{font-size:44px;margin-bottom:20px}
 .practical-intro>p:not(.eyebrow){max-width:none;font-size:14px}
 .practical-intro .text-link{margin-top:18px}
 .art-practical summary{font-size:14px;line-height:1.65}
 .art-practical details p{font-size:14px;line-height:1.9}
 .mailing-reserve{padding-top:20px;padding-bottom:22px;display:block}
 .mailing-reserve h2{font-size:21px}
 .mailing-reserve p{font-size:11px;margin-top:8px}
 .mailing-reserve p span{display:inline;margin-left:4px}
 .art-enquire{padding-top:54px;padding-bottom:52px}
 .art-enquire h2{font-size:clamp(44px,11vw,64px)}
 .art-enquire>p:not(.eyebrow){font-size:14px;max-width:29ch}
 .art-enquire small{font-size:10px;max-width:29ch;margin:24px auto 0}
 .art-departure .teaser-details h2{font-size:35px;max-width:13ch}
}
@media(max-width:360px){.art-hero-copy{padding-left:20px;padding-right:20px}.art-hero h1{font-size:57px}.art-hero-copy>.eyebrow{font-size:8px;letter-spacing:1.3px}.art-hero-bottom>p{font-size:21px}.art-home .journeys .section-top h2{font-size:35px}.art-note h2,.host-introduction h2{font-size:38px}.art-approach .view-window img{height:310px}.art-practical summary{font-size:13px}}
@media(prefers-reduced-motion:reduce){.art-home *, .art-departure *{transition:none!important;animation:none!important}}
/* Keep credits above the image treatment; the phone crop brings the palace forward. */
.art-hero-scene{z-index:auto;pointer-events:none}
.art-hero-scene img{position:absolute;inset:0;z-index:-2}
.art-hero-scene figcaption{z-index:2;pointer-events:auto}
.art-hero-copy{position:relative;z-index:1}
@media(max-width:767px){.art-hero-scene img{transform:scale(1.3);transform-origin:55% 80%}}
@media(max-width:767px){.art-hero:before{background:linear-gradient(180deg,rgba(8,28,52,.66),rgba(8,28,52,.62) 30%,rgba(8,28,52,.08) 43%,rgba(8,28,52,.08) 51%,rgba(8,28,52,.72) 65%,rgba(8,28,52,.86))}}

/* A short third reflection keeps the existing two-column stories balanced. */
.art-home .testimonial-excerpt{grid-column:1/-1;max-width:760px;width:100%;justify-self:center}

/* Focused owner refinement: display italics belong to the opening and image story. */
.art-hero h1{font-size:clamp(82px,8.2vw,118px);line-height:1.06}
.art-home .journeys .section-top h2{font-size:clamp(34px,3.2vw,46px);line-height:1.22;max-width:620px;letter-spacing:-1px}
.art-note h2{font-size:clamp(38px,3.7vw,52px);line-height:1.17}
.host-introduction h2{font-size:clamp(34px,3.4vw,46px);line-height:1.24;max-width:15ch;letter-spacing:-1px}
.host-letter .nic-byline{font-size:27px;font-style:normal}
.host-films .section-top h2,.art-home .testimonials>h2,.practical-intro h2{font-size:clamp(30px,2.8vw,38px);line-height:1.25;letter-spacing:-.6px}
.host-films .film-copy h3{font-size:26px;line-height:1.3}
.art-enquire h2{font-size:clamp(36px,4.2vw,58px);line-height:1.2;max-width:680px;letter-spacing:-1px}
.art-departure .teaser-intro h1{font-size:clamp(46px,5vw,68px);line-height:1.14;letter-spacing:-1.5px}
.art-departure .teaser-details h2{font-size:clamp(32px,3vw,40px);line-height:1.24;max-width:16ch}
.art-departure .enquire h2{font-size:clamp(32px,3.2vw,44px);line-height:1.25}
.page-intro:not(.teaser-intro) h1,.archive-intro h1{font-size:clamp(40px,4.6vw,64px);line-height:1.18}
@media(max-width:767px){.art-hero h1{font-size:clamp(57px,15.3vw,78px);letter-spacing:-1.6px}.art-home .journeys .section-top h2{font-size:34px;max-width:17ch}.art-note h2{font-size:38px}.host-introduction h2{font-size:34px;max-width:15ch}.host-films .section-top h2,.art-home .testimonials>h2,.practical-intro h2{font-size:30px}.host-films .film-copy h3{font-size:25px}.art-enquire h2{font-size:38px;max-width:14ch}.art-departure .teaser-details h2{font-size:32px}.art-departure .teaser-intro h1{font-size:46px}.page-intro:not(.teaser-intro) h1,.archive-intro h1{font-size:40px}}

@media(min-width:768px) and (max-width:959px){.art-hero:before{background:linear-gradient(180deg,rgba(8,28,52,.66),rgba(8,28,52,.62) 36%,rgba(8,28,52,.08) 53%,rgba(8,28,52,.30) 65%,rgba(8,28,52,.86))}}

/* Solid secondary action protects small text independently of the photograph. */
.art-hero .text-link{background:#102f59;color:#f8f6f0;padding:12px 16px;border-color:#718398;min-height:50px}


/* Preview stills remain unobstructed; duration lives in the existing film caption. */
.host-films .film-play-icon{left:24px;top:auto;bottom:24px;transform:none;width:56px;height:56px}
.host-films .film-play-icon svg{width:26px;height:26px}

/* Failed or pending gallery media must not render as a broken-image box. */
.photo-dialog>img[hidden],.gallery-load-status[hidden]{display:none!important}
.gallery-load-status{padding:20px 0;color:var(--muted)}
