/* One type family, measured hierarchy, open engraved country studies. */
.home-page{--title:clamp(1.625rem,1.35rem + 1.1vw,2rem);--body:1rem;--label:.875rem;font-kerning:normal}
.home-page .hero-body{padding-block:76px 86px;gap:52px}
.home-page .hero-body h1{font-size:clamp(2rem,1.5rem + 2vw,2.75rem);line-height:1.42;letter-spacing:.015em;font-weight:500}
.home-page .hero-body .lead{font-size:1rem;line-height:1.9;max-width:34em}
.home-page .hero-aside{font-size:.8125rem;line-height:1.9}
.programme-band{border:0}
.programme-band:first-child{border-top:1px solid rgba(190,158,109,.24)}
.band-dark{background:#392819;color:#f8f6f2;--band-muted:#c9bba8;--band-accent:#cfb58e;--band-line:rgba(207,181,142,.27)}
.band-light{background:#f8f6f2;color:#392819;--band-muted:#706454;--band-accent:#806846;--band-line:rgba(128,104,70,.25)}
.programme-layout{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,1fr);gap:clamp(44px,6vw,88px);align-items:center;padding-block:64px;min-height:440px}
.programme-art{margin:0;min-width:0;width:100%;align-self:center}
.programme-art img{width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}
.art-filters{position:absolute;pointer-events:none;overflow:hidden}
.band-dark .programme-art img{filter:url(#ink-on-dark)}
.band-light .programme-art img{filter:url(#ink-on-light)}
.programme-art figcaption{text-align:center;font-size:.75rem;line-height:1.7;color:var(--band-muted);margin-top:12px;letter-spacing:.025em}
.programme-copy{min-width:0;max-width:510px}
.programme-kicker{display:flex;align-items:baseline;gap:16px;font-size:.75rem;line-height:1.7;letter-spacing:.1em;color:var(--band-accent)}
.programme-index{font-size:.75rem;letter-spacing:.04em;font-variant-numeric:tabular-nums}
.programme-kicker>span+span{padding-left:16px;border-left:1px solid var(--band-line)}
.programme-copy h2{font-size:var(--title);line-height:1.45;font-weight:500;letter-spacing:.015em;margin:14px 0 10px;overflow-wrap:break-word;text-wrap:balance}
.programme-path{font-size:var(--label);line-height:1.8;color:var(--band-muted);max-width:30em}
.programme-terms{padding-inline:0;margin-top:27px;padding-top:23px;border-top:1px solid var(--band-line);max-width:none}
.programme-amount{display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.amount-option{display:flex;flex-direction:column;gap:7px}
.amount-option small{font-size:var(--label);line-height:1.6;color:var(--band-muted)}
.amount-option strong{font-size:clamp(1.5rem,1.3rem + .65vw,1.75rem);font-weight:400;letter-spacing:0;line-height:1.45;font-variant-numeric:lining-nums tabular-nums}
.amount-option strong span{font-size:.9375rem;letter-spacing:.02em}
.amount-or{font-size:.875rem;color:var(--band-muted);padding-top:24px}
.assessment{font-size:1rem;line-height:1.85;max-width:26em}
.programme-note{font-size:.8125rem;line-height:1.85;color:var(--band-muted);margin-top:14px;max-width:32em}
.programme-more{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;color:var(--band-accent);font-size:.875rem;line-height:1.6;min-height:44px;margin-top:20px;padding:4px 0;border-bottom:1px solid var(--band-line)}
.programme-more .arrow{width:24px;transition:transform .18s ease}
.programme-more:hover .arrow{transform:translateX(4px)}
.programme-more:focus-visible{outline-color:var(--band-accent);outline-offset:7px}
.programme-disclosure{padding-block:28px 0}
.programme-disclosure p{font-size:.8125rem;color:#706454;max-width:960px;line-height:1.85}
.home-page .services.home-residence{padding-block:62px 70px}
.home-residence .service-link{border-top:0;padding-top:0}
.home-residence .text-link{color:#cfb58e}
.home-residence .service-link:hover h2,.home-residence .service-link:hover .text-link{color:#e1c69c}
.home-page .home-insights{padding-top:62px}
.home-page .home-insights .section-heading{border-top:0;padding-top:0}
.home-page .programme-disclosure{padding-bottom:28px}
@media(max-width:760px){.home-page .home-insights{padding-top:44px}.home-page .programme-disclosure{padding-bottom:24px}}
.home-page .service-link h2,.home-page .section-heading h2,.home-page .enquiry-copy h2{font-size:clamp(1.5rem,1.25rem + .8vw,1.75rem);line-height:1.5;letter-spacing:.01em}
.home-page .news-row h3{font-size:1.0625rem;line-height:1.75;font-weight:500}
.home-page .news-meta{font-size:.8125rem}
.home-page .contact-number .contact-value{font-size:1.25rem}
@media(max-width:900px){.home-page .hero-body{padding-block:50px 60px}.programme-layout{gap:36px;padding-block:50px;min-height:400px}}
@media(max-width:760px){.programme-layout{grid-template-columns:1fr;gap:28px;padding-block:34px 42px;min-height:0;max-width:530px}.programme-art{max-width:390px;margin-inline:auto}.programme-art figcaption{margin-top:7px}.programme-copy{max-width:none}.programme-copy h2{font-size:1.625rem;margin:12px 0 8px}.programme-kicker{font-size:.75rem}.programme-terms{margin-top:22px;padding-top:19px}.programme-more{margin-top:18px}.programme-amount{gap:18px}.programme-note{max-width:32em}.home-page .hero-body h1{font-size:2rem}.home-page .hero-aside{margin-bottom:20px}.home-page .services.home-residence{padding-block:44px 48px}.home-page .hero-body{padding-block:34px 48px}.programme-disclosure{padding-top:24px}}
@media(max-width:360px){.programme-layout{gap:24px}.programme-copy h2{font-size:1.5rem}.programme-art{max-width:320px}.home-page .hero-body h1{font-size:1.875rem}}
@media(prefers-reduced-motion:reduce){.programme-more .arrow{transition:none}}

/* Desktop-only alignment and artwork blending. Original mobile rules stay intact. */
@media(min-width:901px){
 .home-page .hero-body{grid-template-columns:minmax(180px,.7fr) minmax(0,2fr);gap:64px;padding-block:64px 76px}
 .home-page .hero-body .lead{max-width:34em}
 .home-page .programme-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;padding-block:56px;min-height:410px}
 .home-page .programme-art{max-width:480px;margin-inline:auto}
 .home-page .programme-copy{max-width:480px}
 .home-page .band-light .programme-art{background:#f8f6f2;isolation:isolate}
 .home-page .band-light .programme-art img{filter:grayscale(1) contrast(1.16) brightness(1.05) sepia(.5) brightness(1.15)!important;mix-blend-mode:multiply;mask-image:radial-gradient(ellipse at 50% 48%,#000 49%,rgba(0,0,0,.96) 58%,transparent 75%)}
}
