:root{color-scheme:light;--ink:#171816;--paper:#f7f5f0;--white:#fff;--gold:#b18a4d;--gold-dark:#87652f;--muted:#67665f;--line:#dedbd3;--serif:"Bodoni MT",Didot,"Times New Roman",Georgia,serif;--sans:"Aptos",Arial,Helvetica,sans-serif;--content:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}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;max-width:100%}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.wrap{width:min(var(--content),calc(100% - 64px));margin-inline:auto}.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}.skip-link{position:fixed;top:-60px;left:16px;z-index:20;background:#fff;padding:12px 16px}.skip-link:focus{top:12px}.eyebrow{font-size:.68rem;letter-spacing:.24em;line-height:1.5;text-transform:uppercase;font-weight:700;color:var(--gold);margin:0 0 18px}h1,h2,h3,.brand-wordmark,.footer-brand{font-family:var(--serif);font-weight:400}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(3.1rem,7vw,6.8rem);line-height:.99;letter-spacing:-.025em;margin-bottom:25px}h1 em,h2 em{font-weight:400}h2{font-size:clamp(2.5rem,5vw,4.65rem);line-height:1.03;letter-spacing:-.02em;margin-bottom:26px}h3{font-size:2rem;line-height:1.1;margin-bottom:12px}p{line-height:1.8}.small-copy{font-size:.83rem;color:var(--muted)}
.site-header{height:88px;background:rgba(255,255,255,.97);display:flex;align-items:center;justify-content:space-between;padding:0 max(32px,calc((100vw - var(--content))/2));gap:28px;position:relative;z-index:10;border-bottom:1px solid rgba(23,24,22,.07)}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.brand img{width:52px;height:52px;object-fit:cover;border-radius:50%;border:1px solid var(--gold)}.brand-wordmark{font-size:1.14rem;letter-spacing:.13em;line-height:1.1;white-space:nowrap}.brand-wordmark small{display:block;font-family:var(--sans);font-size:.47rem;letter-spacing:.42em;text-align:center;margin-top:6px}.primary-nav{display:flex;align-items:center;gap:clamp(18px,3vw,43px);font-size:.76rem;letter-spacing:.1em;text-transform:uppercase}.primary-nav>a:not(.nav-cta){padding:13px 0;border-bottom:1px solid transparent}.primary-nav>a:hover,.primary-nav>a[aria-current=page]{color:var(--gold-dark);border-color:var(--gold)}.nav-cta{background:var(--gold);color:white;padding:14px 20px;transition:background .2s}.nav-cta:hover{background:var(--gold-dark)}.menu-toggle{display:none}
.home-hero,.inner-hero{position:relative;isolation:isolate;color:white;overflow:hidden}.home-hero{min-height:min(760px,78vw);height:calc(100svh - 88px);max-height:850px;display:flex;align-items:center}.inner-hero{min-height:590px;height:67vh;max-height:750px;display:flex;align-items:center}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%}.hero-image{object-fit:cover;z-index:-2}.hero-shade{z-index:-1;background:linear-gradient(90deg,rgba(12,13,11,.73) 0%,rgba(12,13,11,.46) 48%,rgba(12,13,11,.08) 100%),linear-gradient(0deg,rgba(12,13,11,.14),transparent 30%)}.hero-copy{padding-block:75px}.hero-copy h1{max-width:850px}.hero-intro{font-family:var(--serif);font-size:clamp(1.2rem,2vw,1.55rem);line-height:1.48;max-width:600px;margin-bottom:32px}.hero-caption{position:absolute;right:34px;bottom:28px;font-size:.62rem;letter-spacing:.15em;text-transform:uppercase;color:#eee}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:52px;padding:14px 22px;border:1px solid transparent;font-size:.68rem;letter-spacing:.13em;text-transform:uppercase;font-weight:700;cursor:pointer;transition:background .2s,color .2s,border-color .2s}.button-gold{background:var(--gold);color:white}.button-gold:hover{background:var(--gold-dark)}.button-dark{background:var(--ink);color:white}.button-dark:hover{background:#3d3b35}.button-outline-light{color:#fff;border-color:rgba(255,255,255,.7);background:transparent}.button-outline-light:hover{background:#fff;color:var(--ink)}.button-outline-dark{background:transparent;border-color:var(--ink);color:var(--ink)}.button-outline-dark:hover{background:var(--ink);color:white}
.pathways{display:grid;grid-template-columns:1fr 1fr}.pathway{position:relative;min-height:465px;display:flex;align-items:flex-end;isolation:isolate;color:white;overflow:hidden}.pathway>img,.pathway-shade{position:absolute;inset:0;width:100%;height:100%;z-index:-2}.pathway>img{object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}.pathway:hover>img{transform:scale(1.035)}.pathway-shade{z-index:-1;background:linear-gradient(0deg,rgba(12,13,11,.82),rgba(12,13,11,.1) 78%)}.pathway-copy{padding:52px clamp(28px,6vw,90px);max-width:650px}.pathway-copy strong{display:block;font-family:var(--serif);font-size:clamp(2.8rem,5vw,4.7rem);font-weight:400;line-height:1.05;margin:4px 0 14px}.pathway-copy>span:not(.eyebrow):not(.text-link){display:block;max-width:390px;color:#eee}.text-link{display:inline-block;font-size:.7rem;letter-spacing:.13em;text-transform:uppercase;border-bottom:1px solid var(--gold);padding-bottom:9px;margin-top:16px;font-weight:700}.text-link span{color:var(--gold)}.text-link-dark{color:var(--ink)}
.editorial-section{padding:clamp(75px,10vw,145px) 0;background:#fff}.editorial-grid{display:grid;grid-template-columns:1.03fr .97fr;align-items:center;gap:clamp(50px,9vw,140px)}.editorial-reverse{grid-template-columns:1.03fr .97fr}.editorial-image{height:590px;min-height:420px}.editorial-image img{width:100%;height:100%;object-fit:cover}.editorial-copy{max-width:510px}.editorial-copy p:not(.eyebrow){color:#595950}.editorial-copy h2{margin-bottom:30px}.closing-band{padding:95px 0 105px;background:#1b1c19;color:white;text-align:center}.closing-content{display:flex;flex-direction:column;align-items:center}.closing-content h2{margin-bottom:32px}.site-footer{background:#111310;color:white;padding:54px 0 38px}.footer-grid{display:flex;align-items:flex-start;justify-content:space-between;gap:40px}.footer-brand{font-size:1.55rem;letter-spacing:.12em}.footer-sub{font-size:.58rem;letter-spacing:.32em;color:var(--gold);margin:6px 0 14px}.site-footer p{font-size:.83rem;color:#c5c4bf;margin-bottom:10px}.footer-side{text-align:right}.footer-side>p:first-child{display:flex;justify-content:flex-end;gap:24px}.site-footer a:hover{color:#d0b27d}.copyright{font-size:.72rem!important;color:#898a84!important;margin-top:25px!important}
.content-section,.catalogue-section{padding:clamp(75px,9vw,125px) 0}.content-section{background:#fff}.narrow-copy{max-width:720px}.narrow-copy>p:not(.eyebrow){max-width:670px;color:#55554e}.narrow-copy .text-link{margin-top:18px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:55px;margin-bottom:42px}.section-heading h2{margin-bottom:0}.section-heading>p{max-width:400px;color:#626158;margin-bottom:4px}.catalogue-section{background:var(--paper)}.catalogue-notice{border-left:2px solid var(--gold);background:#ede8dd;padding:18px 21px;line-height:1.65;color:#3e3d37}.catalogue-notice strong{font-weight:700}.filter-panel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:25px;margin:28px 0;background:#fff;border:1px solid #ebe8e1}.filter-field label,.form-card label{display:block;font-size:.65rem;letter-spacing:.13em;text-transform:uppercase;font-weight:700;margin-bottom:7px}.filter-field input,.filter-field select,.form-card input,.form-card select,.form-card textarea{width:100%;min-height:48px;background:#fbfaf7;border:1px solid #d8d5cd;padding:12px 13px;color:var(--ink);border-radius:0}.filter-field input::placeholder,.form-card input::placeholder,.form-card textarea::placeholder{color:#77766e}.filter-reset{align-self:end;min-height:48px}.results-count{font-size:.8rem;color:var(--muted);min-height:20px}.property-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.property-card{background:#fff;border:1px solid #ebe8e1}.property-card>img{width:100%;height:250px;object-fit:cover;background:#e9e5dd}.property-card-content{padding:22px}.property-card-content h3{font-size:1.8rem}.property-meta{color:var(--muted);font-size:.8rem;line-height:1.5}.property-price{font-size:1rem;font-weight:700;margin:15px 0 4px}.property-actions{display:flex;gap:15px;flex-wrap:wrap}.property-actions .text-link{margin-top:10px}.empty-results{grid-column:1/-1;padding:35px;background:white;color:var(--muted)}
.experience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.experience-card{background:var(--paper)}.experience-card img{width:100%;height:280px;object-fit:cover}.experience-card>div{padding:27px 25px 29px}.experience-card h3{font-size:1.9rem}.experience-card p:not(.eyebrow){color:#5f5e57;font-size:.92rem}.experience-card .eyebrow{margin-bottom:10px}
.contact-intro{padding:80px 0 50px;background:#fff;text-align:center}.contact-intro h1{font-size:clamp(3.1rem,7vw,5.5rem)}.contact-intro>div>p:last-child{max-width:530px;margin:0 auto;color:#5f5e57}.contact-section{padding:50px 0 115px;background:#fff}.contact-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:65px;align-items:start}.contact-aside{padding-top:5px}.contact-aside>p{margin:28px 0 4px}.contact-aside>p strong{font-family:var(--serif);font-size:1.4rem;font-weight:400}.form-card{padding:clamp(24px,4vw,48px);background:var(--paper);border:1px solid #e9e6df}.form-card form>div{margin-bottom:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-card .button{margin-top:8px}.form-note{font-size:.75rem;color:#65645d;margin:18px 0 0}.summary-panel{border-top:1px solid var(--line);margin-top:30px;padding-top:25px}.summary-panel h2{font-size:2rem}.summary-panel p{white-space:pre-wrap;overflow-wrap:anywhere}.copy-status{margin-left:14px;font-size:.8rem}
@media(max-width:900px){.site-header{padding-inline:24px}.primary-nav{gap:16px;font-size:.68rem}.nav-cta{padding:12px}.editorial-grid,.editorial-reverse{gap:48px}.editorial-image{height:470px}.property-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-grid{gap:35px}}
@media(max-width:860px){.wrap{width:min(100% - 40px,var(--content))}.site-header{height:76px;padding-inline:20px}.brand img{height:46px;width:46px}.brand-wordmark{font-size:1rem}.brand-wordmark small{font-size:.42rem}.menu-toggle{display:grid;place-items:center;width:46px;height:44px;border:1px solid var(--line);background:#fff;color:var(--ink);cursor:pointer}.menu-icon,.menu-icon:before,.menu-icon:after{display:block;width:18px;height:1.5px;background:currentColor;position:relative}.menu-icon:before,.menu-icon:after{content:"";position:absolute;left:0}.menu-icon:before{top:-6px}.menu-icon:after{top:6px}.primary-nav{display:none;position:absolute;top:75px;left:0;right:0;background:#fff;padding:12px 20px 22px;border-top:1px solid var(--line);box-shadow:0 16px 24px #00000014;align-items:stretch;gap:0;font-size:.75rem}.primary-nav.is-open{display:flex;flex-direction:column}.primary-nav>a:not(.nav-cta){padding:14px 5px;border-bottom:1px solid #efede7}.nav-cta{margin-top:14px;text-align:center}.home-hero{height:calc(87svh - 76px);min-height:560px;max-height:760px}.inner-hero{height:70svh;min-height:510px;max-height:650px}.hero-shade{background:linear-gradient(90deg,rgba(12,13,11,.74),rgba(12,13,11,.2)),linear-gradient(0deg,rgba(12,13,11,.2),transparent 55%)}.hero-copy{padding-block:55px}.hero-copy h1{font-size:clamp(3.2rem,12vw,5rem)}.hero-intro{font-size:1.17rem;max-width:490px}.hero-caption{right:20px;bottom:18px;font-size:.55rem}.pathway{min-height:400px}.pathway-copy{padding:32px 24px}.pathway-copy strong{font-size:3.2rem}.editorial-grid,.editorial-reverse{grid-template-columns:1fr;gap:35px}.editorial-image{height:430px;min-height:0}.editorial-copy{max-width:650px}.editorial-section{padding:72px 0}.editorial-reverse .editorial-image{order:0}.editorial-reverse .editorial-copy{order:1}.section-heading{display:block;margin-bottom:28px}.section-heading>p{margin-top:18px}.filter-panel{grid-template-columns:1fr 1fr;padding:18px;gap:14px}.filter-reset{grid-column:1/-1}.experience-grid{grid-template-columns:1fr 1fr}.contact-grid{grid-template-columns:1fr;gap:28px}.contact-aside{order:1}.contact-section{padding:30px 0 75px}.footer-grid{display:block}.footer-side{text-align:left;margin-top:32px}.footer-side>p:first-child{justify-content:flex-start;flex-wrap:wrap}}
@media(max-width:520px){.wrap{width:calc(100% - 36px)}.home-hero{min-height:570px}.inner-hero{min-height:530px}.hero-copy h1{font-size:clamp(2.9rem,12.4vw,4rem)}.hero-copy{padding-block:42px}.hero-intro{font-size:1.08rem}.button{padding:13px 16px;gap:12px}.pathways{grid-template-columns:1fr}.pathway{min-height:360px}.pathway-copy{padding:30px 24px}.pathway-copy strong{font-size:3rem}.editorial-image{height:340px}.editorial-copy h2{font-size:3rem}.closing-band{padding:75px 0}.closing-content h2{font-size:3.2rem}.content-section,.catalogue-section{padding:70px 0}.section-heading h2{font-size:3rem}.filter-panel{grid-template-columns:1fr}.filter-reset{grid-column:auto}.property-grid,.experience-grid{grid-template-columns:1fr}.property-card>img{height:235px}.experience-card img{height:240px}.contact-intro{padding:60px 0 30px}.form-row{grid-template-columns:1fr;gap:0}.form-card{padding:21px}.footer-side>p:first-child{gap:12px 20px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
.property-detail{padding-top:35px;padding-bottom:95px}.breadcrumbs{display:flex;flex-wrap:wrap;gap:10px;font-size:.76rem;color:var(--muted);margin-bottom:45px}.breadcrumbs a{text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:4px}.detail-heading{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:30px}.detail-heading h1{font-size:clamp(2.8rem,5vw,5rem);margin-bottom:0;max-width:820px}.detail-heading .eyebrow{margin-bottom:12px}.detail-price{font-size:1.35rem;font-weight:700;white-space:nowrap;margin:0 0 8px}.detail-gallery{display:grid;grid-template-columns:1.5fr 1fr 1fr;grid-auto-rows:220px;gap:10px}.detail-gallery figure{margin:0}.detail-gallery img{width:100%;height:100%;object-fit:cover;background:#e9e5dd}.detail-gallery .detail-main-image{grid-row:span 2}.detail-columns{display:grid;grid-template-columns:1.35fr .65fr;gap:70px;margin-top:55px;align-items:start}.detail-summary{font-family:var(--serif);font-size:1.35rem;line-height:1.6;max-width:690px}.property-facts{padding:28px;background:#fff;border:1px solid #ebe8e1}.property-facts h2{font-size:2rem;margin-bottom:20px}.property-facts dl{margin:0 0 24px}.spec-item{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #eeeae2;padding:11px 0}.spec-item dt{font-size:.77rem;color:var(--muted)}.spec-item dd{margin:0;text-align:right;font-size:.82rem;font-weight:700}.property-facts ul{padding-left:20px}.property-facts li{margin:6px 0}.source-note{font-size:.75rem;color:var(--muted);margin-top:20px}.source-note a{text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:3px}.detail-back{margin-top:55px}
@media(max-width:720px){.detail-columns{grid-template-columns:1fr;gap:28px}.detail-gallery{grid-template-columns:1fr 1fr;grid-auto-rows:190px}.detail-gallery .detail-main-image{grid-column:span 2;grid-row:auto;height:350px}.detail-heading{display:block}.detail-price{margin-top:20px}}
@media(max-width:520px){.property-detail{padding-top:24px}.breadcrumbs{margin-bottom:32px}.detail-gallery{grid-auto-rows:145px;gap:7px}.detail-gallery .detail-main-image{height:270px}.detail-columns{margin-top:35px}.property-facts{padding:20px}}



/* Puglia places, source-reference cards and connected enquiry form */
.places-section{padding:clamp(4rem,8vw,8rem) 0;background:#f5f2eb}.places-section .section-heading{margin-bottom:2.5rem}.places-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.place-card{position:relative;margin:0;min-height:21rem;overflow:hidden;background:#222}.place-card:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.7))}.place-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .65s ease}.place-card:hover img{transform:scale(1.035)}.place-card figcaption{position:absolute;z-index:1;left:1.4rem;right:1.4rem;bottom:1.4rem;color:#fff;display:grid;gap:.35rem}.place-card figcaption span{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:#e1c28b}.place-card figcaption strong{font-family:var(--font-display,Georgia,serif);font-size:1.45rem;font-weight:400}.image-credit-note{font-size:.78rem;margin-top:1rem;color:#655d50}.image-credit-note a{color:inherit;text-decoration:underline}.property-image-note{font-size:.72rem;color:#655d50;padding:.55rem 1.25rem 0;margin:0}.property-status{font-size:.78rem;color:#6b5c42;margin:.3rem 0 .8rem}.property-card .property-card-content{padding-top:.9rem}.privacy-ack{display:flex;align-items:flex-start;gap:.7rem;margin:1.25rem 0}.privacy-ack input{margin-top:.3rem}.privacy-ack label{font-size:.9rem}.form-honeypot{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}.form-status{min-height:1.5em;margin-top:.8rem}.form-status:not(:empty){padding:.8rem;border:1px solid #c8b893;background:#faf8f2}.button:disabled{opacity:.6;cursor:wait}.image-credit-list{display:grid;gap:1rem;list-style:none;padding:0}.image-credit-list li{padding:1rem;border-bottom:1px solid #ded7ca}.image-credit-list a{overflow-wrap:anywhere}
@media(max-width:850px){.places-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.place-card{min-height:17rem}}
@media(max-width:520px){.places-grid{grid-template-columns:1fr}.place-card{min-height:19rem}}
