:root{--brick:#9E4A2F;--brick-lit:#D98A63;--brick-shadow:#6E3320;--mortar:#EDE6DA;--paper:#F7F3EC;--olive:#5E624E;--soot:#1E1B19;--muted:#5A524B;--line:#D6CDBF;--font:'Archivo',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:78px}body{margin:0;color:var(--soot);background:var(--paper);font:16px/1.55 var(--font)}button,a,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit;border:0;background:none}img{display:block;max-width:100%}button:focus-visible,a:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid #9E4A2F;outline-offset:4px}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400}h1,h2{font-family:var(--font);letter-spacing:-.052em;line-height:.94}h1 em,h2 em{font-style:italic;font-family:var(--font);font-weight:400;letter-spacing:-.065em}h2{font-size:clamp(54px,6.1vw,100px)}p{line-height:1.65}.section{padding:clamp(65px,8vw,125px) max(5.7vw,24px)}.eyebrow{display:flex;align-items:center;gap:10px;font:600 10px/1.4 var(--font);letter-spacing:.19em;margin-bottom:23px}.eyebrow i{width:25px;height:1px;background:currentColor;display:inline-block}.eyebrow.ink{color:#5E624E}.eyebrow.light{color:#EDE6DA}.skip,.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.skip:focus{width:auto;height:auto;clip-path:none;z-index:100;background:var(--paper);padding:10px}.hero{position:relative;isolation:isolate;min-height:650px;height:91svh;max-height:960px;background:#1E1B19;color:var(--mortar)}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.hero-image{object-position:50% 53%}.hero-shade{z-index:-1;background:linear-gradient(90deg,rgba(30,27,25,.73),rgba(30,27,25,.28) 46%,rgba(30,27,25,.02) 75%),linear-gradient(0deg,rgba(30,27,25,.6),transparent 28%,transparent 72%,rgba(30,27,25,.42))}.hero-content{position:absolute;left:5.7vw;right:5.7vw;bottom:16%}.hero-content .eyebrow{color:#EDE6DA}.hero h1{font-size:clamp(82px,8.8vw,150px)}.hero-sub{max-width:400px;font-size:17px;margin:24px 0 28px;color:#EDE6DA}.outline-btn,.dark-btn,.plain-btn{display:inline-flex;justify-content:space-between;align-items:center;gap:30px;border:1px solid currentColor;padding:13px 19px;font-size:13px;font-weight:500;transition:background .2s,color .2s}.outline-btn:hover{background:#F7F3EC;color:var(--soot)}.hero-foot{position:absolute;bottom:23px;left:5.7vw;right:5.7vw;display:flex;justify-content:space-between;align-items:center;padding-top:15px;border-top:1px solid #ffffff70;font-size:9px;letter-spacing:.16em}.hero-foot a span{margin-left:10px}#topbar{position:absolute;z-index:8;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;color:var(--mortar);height:84px;padding:0 5.7vw;border-bottom:1px solid #ffffff55}.brand{display:flex;align-items:center;gap:10px;font-family:var(--font);font-size:26px;letter-spacing:.1em;line-height:1}.brand svg{width:31px;height:36px}.brand small{display:block;font:500 8px/1.8 var(--font);letter-spacing:.27em}.brand span{display:block}#topbar nav{display:flex;gap:32px;font-size:13px}.header-cta{font-size:13px;border-bottom:1px solid #ffffff80;padding:5px 0}.header-cta span{margin-left:13px}.mobile-menu,#mobile-nav{display:none}.story,.section-heading,.arch-head,.enquire{display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:end}.story{align-items:start}.story-prose{padding-top:32px}.story-prose>p:first-child{font-size:clamp(19px,1.6vw,26px);line-height:1.45}.story-prose>p+p{margin-top:19px;color:var(--muted)}.factline{display:flex;gap:clamp(30px,4.5vw,80px);margin-top:32px;padding-top:18px;border-top:1px solid var(--line)}.factline strong{font:43px/1.1 var(--font);display:block}.factline span{font-size:11px;color:var(--muted)}.arch{background:#1E1B19;color:var(--paper)}.arch-head{padding-bottom:32px}.arch-head p:last-child,.section-heading>p,.enquire>div>p:not(.eyebrow){max-width:410px;font-size:17px}.arch-head>p{color:#EDE6DA}.model-section{height:145svh;min-height:900px;padding:0 5.7vw 40px}.model-sticky{position:sticky;top:25px}.model-frame{position:relative;height:min(71svh,730px);min-height:450px;overflow:hidden;background:#EDE6DA;color:var(--soot)}#model-canvas,#model-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}#model-canvas canvas{display:block;width:100%;height:100%;touch-action:none}.model-heading{position:absolute;left:24px;top:21px;pointer-events:none}.model-heading .eyebrow{font-size:9px;margin-bottom:5px}.model-heading h3{font:30px/1.1 var(--font)}.model-tools{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);display:flex;background:#F7F3ECee;padding:4px;border:1px solid #D6CDBF;white-space:nowrap}.model-tools button,.floor-panel button{font-size:12px;padding:8px 13px}.model-tools .on,.floor-panel .on{background:var(--soot);color:var(--mortar)}.floor-panel{position:absolute;right:18px;top:18px;display:flex;flex-direction:column;gap:5px;align-items:center}.floor-panel>span{font-size:8px;letter-spacing:.15em}.floor-panel>div{display:grid;background:#F7F3ECdd;border:1px solid #D6CDBF}.floor-panel button{padding:5px 10px;min-width:35px;border-bottom:1px solid #D6CDBF}.reset{position:absolute;right:19px;bottom:20px;border:1px solid #D6CDBF;background:#F7F3ECd9;width:34px;height:34px;font-size:20px}.model-note{position:absolute;left:18px;bottom:20px;font-size:10px;letter-spacing:.03em;color:#5A524B;max-width:155px}.model-caption{display:flex;justify-content:space-between;color:#EDE6DA;font-size:9px;letter-spacing:.13em;padding:13px 0}.model-caption span+span{letter-spacing:.02em}#model-status{position:absolute;top:48%;left:10%;right:10%;text-align:center;pointer-events:none;font-size:13px}.model-hover{position:absolute;pointer-events:none;background:var(--soot);color:var(--mortar);padding:5px 9px;border-radius:2px;font-size:11px}.section-heading{margin-bottom:36px}.section-heading>p{color:var(--muted)}.filter-row{display:flex;align-items:center;gap:18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:15px 0;flex-wrap:wrap}.filter-row>div{display:flex;flex-wrap:wrap;gap:4px}.filter-row button,.filter-row label,.filter-row select{font-size:12px}.filter-row button{padding:8px 12px}.filter-row .on,.filter-row [aria-pressed=true]{background:var(--soot);color:var(--mortar)}.filter-row label{display:flex;align-items:center;gap:8px;color:var(--muted)}select{background:transparent;border:0;color:var(--soot)}.saved-filter{margin-left:auto}.count,.fine{font-size:12px;color:var(--muted)}.count{padding:18px 0 7px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left}th{font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:500;padding:13px 8px}td{padding:12px 8px;border-top:1px solid var(--line);font-size:14px}td:first-child{font-weight:600}td button{padding:5px}td .fav{font-size:20px}td .viewhome{font-size:12px;text-decoration:underline;text-underline-offset:4px}.more{width:100%;border-block:1px solid var(--line);padding:13px;font-size:13px}.more span{margin-left:18px}.fine{margin-top:12px}.interiors{background:#EDE6DA}.interiors>.section{margin:0;padding-bottom:32px}.tour-layout{display:grid;grid-template-columns:1.5fr 1fr}.tour-picture{position:relative;min-height:540px}.tour-picture img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.round-open{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);height:68px;width:68px;color:var(--mortar);border:1px solid white;background:#1E1B1970;border-radius:50%;font-size:30px}.image-credit{position:absolute;left:22px;bottom:18px;color:var(--mortar);background:#1E1B1980;padding:5px 8px;font-size:8px;letter-spacing:.15em}.tour-aside{background:#1E1B19;color:var(--paper);display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(34px,5.5vw,85px)}#tour-tabs{width:100%;margin:4px 0 18px}#tour-tabs button{width:100%;text-align:left;display:flex;align-items:center;gap:15px;border-top:1px solid #D6CDBF56;padding:14px 0;font:clamp(25px,2.7vw,42px)/1.1 var(--font);color:#EDE6DA}#tour-tabs button:last-child{border-bottom:1px solid #D6CDBF56}#tour-tabs span{font:10px var(--font);letter-spacing:.1em}#tour-tabs b{margin-left:auto;font:20px var(--font);opacity:0}#tour-tabs .chosen{color:var(--mortar)}#tour-tabs .chosen b{opacity:1}.tour-aside>p:not(.eyebrow){font-size:14px;color:#EDE6DA;margin-bottom:22px}.tour-aside small{margin-top:15px;font-size:11px;color:#EDE6DA}.gallery-controls{display:flex;justify-content:flex-end;gap:14px;align-items:center}.gallery-controls button{border:1px solid var(--line);border-radius:50%;width:39px;height:39px}.gallery-controls span{font-size:13px}.gallery-rail{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding-bottom:16px}.gallery-rail figure{margin:0;flex:0 0 42%;scroll-snap-align:start}.gallery-rail figure button{padding:0;width:100%;display:block}.gallery-rail img{width:100%;aspect-ratio:1.45;object-fit:cover}.gallery-rail figcaption{font-size:12px;padding-top:9px}.neighbourhood{display:grid;grid-template-columns:1fr 1fr;background:#EDE6DA}.neigh-image img{width:100%;height:100%;object-fit:cover}.neigh-copy{padding:clamp(40px,5.7vw,90px)}.neigh-copy h2{margin-bottom:23px}.neigh-copy>p:not(.eyebrow){color:#5A524B}.place{display:flex;gap:18px;border-top:1px solid #D6CDBF;padding:14px 0}.place:first-of-type{margin-top:23px}.place>span{font-size:10px;letter-spacing:.13em;margin-top:6px}.place h3{font:26px var(--font)}.place p{color:var(--muted);font-size:13px}.text-link{font-size:13px;display:inline-block;margin-top:16px;border-bottom:1px solid currentColor;padding-bottom:3px}.enquire{background:var(--soot);color:var(--paper)}.enquire .outline-btn{margin-top:23px}footer{display:flex;gap:15px;justify-content:space-between;padding:21px 5.7vw;font-size:11px;color:var(--muted)}footer span:first-child{font-size:9px;letter-spacing:.12em}.site-context{background:#EDE6DA}#orbit-view{position:relative;cursor:ew-resize;touch-action:pan-y;overflow:hidden;background:var(--soot)}#orbit-img{width:100%;aspect-ratio:16/9;object-fit:cover}.orbit-label,#map-credit{position:absolute;bottom:15px;background:#1E1B19d9;color:var(--mortar);padding:6px 10px;font-size:11px}.orbit-label{left:15px}.orbit-label b{margin-left:8px}#map-credit{right:15px;font-size:10px;max-width:65%;text-align:right}dialog{color:var(--soot);background:var(--paper);border:none;padding:0;width:min(1000px,94vw);max-height:90svh;box-shadow:0 20px 80px #0005}dialog::backdrop{background:#1E1B19cc;backdrop-filter:blur(4px)}.dialog-top{display:flex;gap:15px;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid var(--line)}.dialog-top .eyebrow{font-size:8px;margin-bottom:3px}.dialog-top h3{font:34px/1.05 var(--font)}.close{font-size:31px;width:40px;height:40px;line-height:1}.detail-layout{display:grid;grid-template-columns:1.5fr 1fr}.detail-plan{background:#fff;display:grid;place-items:center}.detail-plan img{width:100%;max-height:65vh;object-fit:contain}.detail-info{padding:25px}.detail-info dl{margin:0 0 22px}.detail-info dl>div{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid var(--line);font-size:14px}.detail-info dd{margin:0;font-weight:600}.detail-info .plain-btn,.detail-info .dark-btn{width:100%;margin-top:7px}.dark-btn{background:var(--soot);color:var(--mortar)}.plain-btn{border-color:var(--line)}#media-body iframe{width:100%;height:min(65svh,620px);border:0;display:block;background:#1E1B19}#media-body img{max-height:72svh;width:100%;object-fit:contain;background:#1E1B19}#external-tour{margin:12px 24px 17px}[hidden]{display:none!important}
@media(max-width:850px){#topbar nav{gap:15px}.model-note{bottom:65px}.tour-picture{min-height:480px}.story,.section-heading,.arch-head,.enquire{gap:5vw}.tour-aside{padding:34px}.neigh-copy{padding:35px}.tour-layout{grid-template-columns:1.25fr 1fr}.model-section{padding-inline:22px}.floor-panel{right:11px}.gallery-rail figure{flex-basis:56%}}
@media(max-width:680px){html{scroll-padding-top:18px}#topbar{height:68px;padding:0 21px}#topbar nav,.header-cta{display:none}.mobile-menu{display:block;color:var(--mortar);border:1px solid #ffffff73;padding:5px 10px;font-size:12px}#mobile-nav:not([hidden]){position:absolute;top:68px;right:15px;z-index:9;display:grid;background:var(--paper);color:var(--soot);min-width:180px;padding:9px 17px;box-shadow:0 8px 20px #0003}#mobile-nav a{padding:9px 0;border-bottom:1px solid var(--line)}.brand{font-size:23px}.hero{height:82svh;min-height:590px}.hero-image{object-position:56% 50%}.hero-shade{background:linear-gradient(0deg,#1E1B19e8,transparent 87%),linear-gradient(90deg,#1E1B1955,transparent)}.hero-content{bottom:15%;left:23px;right:23px}.hero-content .eyebrow{font-size:8px}.hero h1{font-size:clamp(65px,14vw,90px)}.hero-sub{font-size:15px;max-width:300px}.hero-foot{left:22px;right:22px;font-size:7px;bottom:17px}.section{padding:58px 22px}h2{font-size:56px}.story,.section-heading,.arch-head,.enquire,.neighbourhood,.tour-layout,.detail-layout{grid-template-columns:1fr;gap:20px}.story-prose{padding-top:0}.factline{justify-content:space-between}.section-heading{margin-bottom:25px}.section-heading>p,.arch-head>p{font-size:15px}.arch-head{padding-bottom:24px}.model-section{height:125svh;min-height:730px;padding:0 12px 18px}.model-sticky{top:12px}.model-frame{height:68svh;min-height:400px}.model-heading{left:14px;top:15px}.model-heading h3{font-size:23px}.model-tools{bottom:13px}.model-tools button{font-size:11px;padding:7px 9px}.model-note{bottom:53px;left:14px;font-size:9px}.model-caption{font-size:7px}.reset{right:12px;bottom:56px}.floor-panel{top:15px}.floor-panel button{padding:4px 7px;min-width:29px}.filter-row{gap:10px}.filter-row button{padding:6px 8px}.filter-row>div{width:100%}th,td{font-size:11px;padding:9px 4px}th{font-size:8px}td .viewhome{font-size:11px}.tour-layout{gap:0}.tour-picture{min-height:0;aspect-ratio:4/3}.tour-aside{padding:32px 22px}.tour-aside>p.eyebrow{margin-bottom:10px}.tour-aside small{font-size:10px}.gallery-controls{justify-content:flex-start}.gallery-rail figure{flex-basis:84%}.neigh-copy{padding:43px 22px}.neigh-image{max-height:335px;overflow:hidden}.neigh-image img{aspect-ratio:1.3}.detail-info{padding:15px 20px}.detail-plan img{max-height:38vh}.dialog-top{padding:12px 17px}.dialog-top h3{font-size:27px}footer{flex-wrap:wrap;font-size:10px}footer span:first-child{width:100%}.model-caption span+span{max-width:47%;text-align:right}.orbit-label,#map-credit{bottom:6px;padding:3px 5px;font-size:8px}.orbit-label{left:6px}#map-credit{right:6px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
.unit-strip{position:absolute;left:22px;top:91px;display:flex;gap:4px;flex-wrap:wrap;max-width:42%}.unit-strip[hidden],#model-poster[hidden],#model-canvas[hidden],.model-hover[hidden]{display:none}.unit-strip button{background:#F7F3ECed;border:1px solid #D6CDBF;font:10px/1.2 var(--font);padding:5px 7px}.unit-strip button:hover,.unit-strip button:focus-visible{background:var(--soot);color:var(--mortar)}#model-poster.drawing-fallback{padding:83px 58px 72px;mix-blend-mode:multiply}.model-hover{z-index:2}.model-heading,.model-note,.model-caption{pointer-events:none}@media(max-width:620px){.unit-strip{left:13px;top:63px;max-width:70%}.unit-strip button{font-size:9px;padding:4px 5px}}
/* Neighbourhood and travel guide */
.gallery-intro{max-width:35rem;margin-top:1.15rem;color:#5A524B}
.neigh-copy>p+p{margin-top:1em}
.local-guide,.connections{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,8vw,8rem);align-items:start}
.guide-lead>p:not(.eyebrow),.connections h2+p{max-width:37rem;margin-top:1.2rem}
.guide-lead .guide-note,.rail-times>p,.local-sources p{font-size:.81rem;line-height:1.6}
.guide-lead .guide-note{color:#5A524B;border-top:1px solid var(--line);padding-top:1rem}
.walk-list,.local-sources ul{list-style:none;padding:0;margin:0}
.walk-list{border-top:1px solid #D6CDBF}
.walk-list li{border-bottom:1px solid var(--line)}
.walk-list a{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 0}
.walk-list b,.walk-list small{display:block}
.walk-list b{font:400 clamp(1.2rem,1.9vw,1.65rem)/1.12 var(--font)}
.walk-list small{color:#5A524B;font-size:.79rem;line-height:1.45;margin-top:.3rem}
.walk-time{font-size:.88rem;white-space:nowrap;font-variant-numeric:tabular-nums}
.walk-time span{margin-left:.25rem;color:#9E4A2F}
.walk-list a:hover b,.travel-links a:hover,.local-sources a:hover{text-decoration:underline;text-underline-offset:.18em}
.connections{background:var(--soot);color:var(--paper)}
.connections h2{max-width:35rem}
.connections h2+p{color:#EDE6DA}
.travel-links{display:flex;flex-wrap:wrap;gap:.75rem 1.4rem;margin-top:1.25rem}
.travel-links a{font-size:.85rem;border-bottom:1px solid #5E624E;padding:.2rem 0}
.rail-times{padding-top:.2rem}
.rail-times h3{font:400 1.65rem/1.15 var(--font)}
.rail-times dl{margin:1.1rem 0 .75rem}
.rail-times dl>div{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;border-top:1px solid #D6CDBF;padding:.65rem 0}
.rail-times dl>div:last-child{border-bottom:1px solid #D6CDBF}
.rail-times dd{margin:0;font:400 1.8rem/1 var(--font)}
.rail-times>p{color:#EDE6DA;max-width:36rem}
.local-sources{padding:1.15rem max(5.7vw,24px);border-bottom:1px solid var(--line)}
.local-sources summary{cursor:pointer;width:fit-content;font-size:.87rem}
.local-sources summary:focus-visible{outline:3px solid #9E4A2F;outline-offset:3px}
.local-sources p{margin:.65rem 0}
.local-sources ul{display:flex;flex-wrap:wrap;gap:.35rem 1.25rem;font-size:.82rem}
.local-sources li a{display:inline-block;padding:.25rem 0;text-decoration:underline;text-underline-offset:.16em}
@media(max-width:700px){.local-guide,.connections{grid-template-columns:minmax(0,1fr);gap:1.8rem}.walk-list a{gap:.45rem}.neighbourhood{gap:0}.walk-time{font-size:.81rem}.connections h2{max-width:100%}.local-sources summary{padding:.4rem 0}}

@media(max-width:680px){.factline{gap:12px}.factline strong{font-size:clamp(30px,7.5vw,43px);white-space:nowrap}}

/* The mapped orbit and cutaway share one frame and floor selector. */
/* Keep navigation and viewer controls available while the page scrolls. */
:root{--header-height:84px}
html{scroll-padding-top:calc(var(--header-height) + 18px)}
#topbar{position:fixed;z-index:50;height:var(--header-height);transition:background .2s,box-shadow .2s}
#topbar.is-scrolled,#topbar.menu-open{background:#1E1B19f5;box-shadow:0 3px 18px #1E1B1924;backdrop-filter:blur(12px)}
.model-sticky{top:calc(var(--header-height) + 16px)}
.model-frame{height:min(71svh,calc(100svh - var(--header-height) - 60px),730px);min-height:min(450px,calc(100svh - var(--header-height) - 60px))}
#mobile-nav a{min-height:44px;display:flex;align-items:center}
@media(max-width:960px){
 :root{--header-height:68px}
 #topbar{padding:0 21px;gap:12px}
 #topbar nav,.header-cta{display:none}
 .brand{font-size:23px;gap:8px;min-width:0}
 .brand svg{width:27px;flex-shrink:0}
 .mobile-menu{display:block;flex-shrink:0;color:var(--mortar);border:1px solid #ffffff73;min-width:56px;min-height:44px;padding:6px 10px;font-size:12px}
 #mobile-nav:not([hidden]){position:fixed;z-index:51;top:var(--header-height);left:16px;right:16px;display:grid;background:var(--paper);color:var(--soot);min-width:0;max-height:calc(100dvh - var(--header-height) - 24px);overflow-y:auto;padding:9px 17px;box-shadow:0 8px 20px #0003}
 #mobile-nav a{border-bottom:1px solid var(--line);padding:9px 0}
 #mobile-nav a:last-child{border-bottom:0}
}
@media(max-width:680px){
 .model-frame{height:min(68svh,calc(100svh - var(--header-height) - 50px));min-height:min(400px,calc(100svh - var(--header-height) - 50px))}
}
@media(max-width:359px){#topbar{padding-inline:16px;gap:8px}.brand{font-size:19px;gap:6px}.brand svg{width:23px}.brand small{font-size:7px}}
#mapped-orbit{position:absolute;inset:0;overflow:hidden;touch-action:pan-y;cursor:grab}
#mapped-orbit[hidden],.orbit-credit[hidden],.orbit-tooltip[hidden]{display:none}
#mapped-orbit canvas,#mapped-orbit svg{position:absolute;inset:0;width:100%;height:100%;display:block}
#mapped-orbit svg{overflow:hidden}
#mapped-orbit path{fill:#D98A63;fill-opacity:0;stroke:none;outline:none;cursor:pointer;transition:fill-opacity .16s}
#mapped-orbit path.is-highlighted{fill-opacity:.5;stroke:#EDE6DA;stroke-width:1;vector-effect:non-scaling-stroke}
#mapped-orbit.dragging,#mapped-orbit.dragging path{cursor:grabbing}
.orbit-tooltip{position:absolute;z-index:3;pointer-events:none;background:#1E1B19f2;color:var(--mortar);padding:7px 10px;font-size:11px;white-space:nowrap}
.orbit-credit{position:absolute;bottom:14px;right:15px;color:var(--mortar);background:#1E1B19c9;padding:3px 7px;font:600 12px/1.3 var(--font);pointer-events:none}
.orbit-arrows{position:absolute;left:18px;bottom:78px;display:flex;gap:5px}
.orbit-arrows button{background:#F7F3ECed;border:1px solid #5E624E;width:36px;height:34px;font-size:18px;line-height:1}
.model-heading{z-index:2;text-shadow:0 1px 8px #F7F3EC}
.model-heading h3,.model-heading .eyebrow{background:#F7F3ECe8;width:fit-content;padding:3px 7px}
.model-note{background:#F7F3ECe8;padding:3px 7px}
@media(max-width:680px){.orbit-arrows{left:14px;bottom:84px}.orbit-credit{font-size:10px;right:9px;bottom:70px}.model-heading h3{font-size:20px}}
@media(max-width:680px){
 .floor-panel button,.model-tools button,.unit-strip button{min-width:44px;min-height:44px}
 .model-heading{max-width:calc(100% - 82px)}
 .model-heading h3{line-height:1.1}
 .unit-strip{top:94px;max-width:calc(100% - 85px)}
 .model-tools{bottom:12px}
 .model-note{bottom:70px}
 .reset{width:44px;height:44px;bottom:70px}
 .orbit-arrows{bottom:116px}
 .orbit-arrows button{width:44px;height:44px}
 .orbit-credit{bottom:120px;right:12px}
}

/* Portrait virtual tours retain a 2:3 viewport on phones and desktops. */
#media-dialog.is-tour{width:min(94vw,calc(60svh - 88px),560px);max-height:94svh}
#media-dialog.is-tour .dialog-top{padding:14px 18px;gap:10px}
#media-dialog.is-tour .dialog-top h3{font-size:clamp(20px,2.4vw,28px);line-height:1.12}
#media-dialog.is-tour .close{flex:0 0 40px}
#media-dialog.is-tour #media-body iframe{width:100%;height:auto;aspect-ratio:2 / 3;display:block}
#media-dialog.is-tour #external-tour{margin:12px 18px 16px;font-size:12px}
#detail-tour{display:flex;align-items:center;justify-content:space-between;text-align:left;min-height:48px}
#detail-tour-note{margin:10px 0 16px}

/* Coursing: the approved A2 identity, applied to the existing experience. */
body{font:400 17px/27px var(--font)}
p{line-height:27px}button,a,select{font-family:var(--font)}
h1,h2{font-family:var(--font);font-weight:800;font-stretch:125%;text-transform:uppercase;letter-spacing:.01em;line-height:1}
h1 em,h2 em{font:inherit;letter-spacing:inherit;color:var(--brick)}
h2{font-size:clamp(36px,4.2vw,68px);overflow-wrap:normal}
h3,.dialog-top h3,.model-heading h3,.rail-times h3,.walk-list b,.place h3{font-family:var(--font);font-weight:700;font-stretch:112%;letter-spacing:0;line-height:1.12}
.eyebrow,.eyebrow.ink,.eyebrow.light,th,.gallery-rail figcaption{font:600 12px/1.5 var(--font);text-transform:uppercase;letter-spacing:.3em;color:var(--brick)}
.eyebrow i{flex-shrink:0}.hero .eyebrow,.arch .eyebrow,.enquire .eyebrow{color:var(--brick-lit)}
.hero,.arch,.enquire{color:var(--mortar);background-color:var(--soot)}
.arch h2 em,.enquire h2 em{color:var(--brick-lit)}
.hero h1,.hero h1 em{color:var(--mortar)}
.hero h1{font-size:clamp(52px,8.2vw,116px)}
.hero h1 em{display:block}
.hero-sub{color:var(--mortar);max-width:460px;font-size:17px;line-height:27px}
.hero-shade{background:linear-gradient(90deg,#1e1b19ba,#1e1b1948 58%,#1e1b1900),linear-gradient(0deg,#1e1b19e8,#1e1b1900 80%)}
.hero-content .eyebrow{font-size:12px;max-width:100%}.hero-foot{color:var(--mortar);border-color:#ede6da70}
button,.outline-btn,.dark-btn,.plain-btn,.header-cta,.round-open{min-height:44px;border-radius:3px;font-weight:600}
.outline-btn,.dark-btn{background:var(--soot);color:var(--mortar);border:1px solid var(--soot);padding:13px 19px}
.hero .outline-btn,.enquire .outline-btn,.header-dark .header-cta{background:var(--brick-lit);border-color:var(--brick-lit);color:var(--soot)}
.outline-btn:hover,.dark-btn:hover,.header-cta:hover{background:var(--brick-shadow);border-color:var(--brick-shadow);color:var(--mortar)}
.hero .outline-btn:hover,.enquire .outline-btn:hover,.header-dark .header-cta:hover{background:var(--mortar);border-color:var(--mortar);color:var(--soot)}
.plain-btn{border:1px solid currentColor;background:transparent}.plain-btn:hover{background:var(--paper)}
#topbar,#topbar.is-scrolled,#topbar.menu-open{background:var(--paper);color:var(--soot);border-bottom:1px solid var(--line);box-shadow:none;backdrop-filter:none}
#topbar.header-dark{background:var(--soot);color:var(--mortar);border-color:#ede6da33}
.brand{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none;font-family:var(--font);letter-spacing:0;min-width:0}
.brand img{box-sizing:content-box;flex-shrink:0;width:28px;height:28px;padding:7px;background:var(--mortar)}
.brand__name{font:800 15px/1 var(--font);font-stretch:125%;letter-spacing:.04em;white-space:nowrap}
.header-cta{background:var(--soot);color:var(--mortar);border:1px solid var(--soot);padding:9px 16px;align-items:center}
#topbar nav{gap:24px}.mobile-menu{color:inherit;border:1px solid currentColor}
#mobile-nav:not([hidden]){background:var(--paper);color:var(--soot);border:1px solid var(--line)}
#topbar.header-dark+#mobile-nav:not([hidden]){background:var(--soot);color:var(--mortar);border-color:#ede6da55}
#mobile-nav a:last-child{background:var(--soot);color:var(--mortar);padding-inline:12px;margin-block:8px;border-radius:3px;font-weight:600}
#topbar.header-dark+#mobile-nav a:last-child{background:var(--brick-lit);color:var(--soot)}
.story{position:relative;padding-bottom:calc(clamp(65px,8vw,125px) + 32px)}
.story::after{content:"";position:absolute;bottom:0;inset-inline:0;height:32px;background:url('brand/pattern-recessed-band.svg') 0 48px/64px 80px;opacity:.22}
.story-prose>p:first-child{font-size:20px;line-height:29px}.story-prose>p+p{color:var(--soot)}
.factline{gap:24px;justify-content:space-between}.factline strong{font:800 clamp(28px,3vw,43px)/1.1 var(--font);font-stretch:125%;font-variant-numeric:tabular-nums;white-space:nowrap}
.factline span{display:block;margin-top:10px;font:600 12px/1.6 var(--font);letter-spacing:.3em;text-transform:uppercase;color:var(--brick)}
.arch-head>p,.section-heading>p,.neigh-copy>p:not(.eyebrow),.gallery-intro{color:inherit;font-size:17px;line-height:27px}
.arch-head>p{color:var(--mortar)}
.model-frame{background:var(--soot);color:var(--mortar);border:1px solid #ede6da33}
.model-frame::after{content:"";pointer-events:none;position:absolute;bottom:0;inset-inline:0;height:116px;background:linear-gradient(0deg,#1e1b19f5,#1e1b1900);z-index:1}
.model-heading,.floor-panel,.model-tools,.model-note,.reset,.unit-strip,.orbit-arrows,.orbit-credit{z-index:3}
.model-heading{text-shadow:none;max-width:calc(100% - 110px)}
.model-heading h3,.model-heading .eyebrow{background:var(--soot);color:var(--mortar);padding:6px 10px}
.model-heading .eyebrow{color:var(--brick-lit);font-size:12px;letter-spacing:.3em}
.model-heading h3{font-size:24px}.model-note{background:var(--soot);color:var(--mortar);bottom:122px;max-width:220px;font:400 12px/1.5 var(--font);padding:7px 10px}
.model-tools{bottom:62px;background:var(--soot);border:0;gap:5px;padding:0}
.model-tools button,.floor-panel button{font:600 12px/1.2 var(--font);text-transform:uppercase;letter-spacing:.3em;border:1px solid var(--mortar);color:var(--mortar);background:var(--soot);padding:12px;min-height:44px;min-width:44px}
.model-tools .on,.floor-panel .on{background:var(--brick-lit);border-color:var(--brick-lit);color:var(--soot)}
.model-tools button:hover,.floor-panel button:hover{border-color:var(--brick-lit)}
.floor-panel>span{font:600 12px/1.5 var(--font);letter-spacing:.3em;color:var(--brick-lit);background:var(--soot);padding:2px 4px}
.floor-panel>div{display:grid;gap:4px;border:0;background:none}
.reset,.orbit-arrows button{width:44px;height:44px;background:var(--soot);color:var(--mortar);border:1px solid var(--mortar);border-radius:3px}
.reset{bottom:62px}.orbit-arrows{bottom:164px;z-index:3}
.unit-strip{top:112px;max-width:calc(100% - 100px);gap:5px}
.unit-strip button{font:600 12px/1.2 var(--font);letter-spacing:.12em;min-height:44px;min-width:44px;border:1px solid var(--mortar);background:var(--soot);color:var(--mortar)}
.unit-strip button:hover,.unit-strip button:focus-visible,.unit-strip button[aria-pressed=true]{background:var(--brick-lit);color:var(--soot);border-color:var(--brick-lit)}
.model-hover,.orbit-tooltip{background:var(--soot);color:var(--mortar);border:1px solid var(--brick);border-radius:3px}
#mapped-orbit path{fill:var(--brick-lit)}#mapped-orbit path.is-highlighted{fill-opacity:.55;stroke:var(--brick);stroke-width:1.5}
.orbit-credit{left:10px;bottom:8px;right:auto;max-width:calc(100% - 20px);background:var(--paper);color:var(--soot);padding:10px 10px 5px;display:flex;align-items:center;gap:12px;font:400 10px/1.4 var(--font);z-index:5;white-space:nowrap}
.orbit-credit img,.footer-map-credit img{height:18px;width:auto;max-width:none;flex-shrink:0}
.model-caption{color:var(--mortar)}
.model-loading{position:absolute;inset:0;z-index:1;background:var(--soot);overflow:hidden}
.model-loading::before,.enquire::before{content:"";position:absolute;inset:0;background:#5A4A40;mask:url('brand/pattern-stretcher.svg') repeat;pointer-events:none}
.lit-brick{position:absolute;width:62px;height:14px;background:var(--brick-lit);pointer-events:none;z-index:0}
#model-status:not(:empty){z-index:2;top:46%;background:var(--soot);color:var(--mortar);padding:16px}
.interiors{background:var(--paper)}.tour-aside{background:var(--mortar);color:var(--soot)}
.tour-aside .eyebrow{color:var(--brick)}
#tour-tabs button{position:relative;font:700 clamp(22px,2.5vw,36px)/1.2 var(--font);font-stretch:112%;color:var(--muted);border-color:var(--line);padding:18px 10px 18px 20px}
#tour-tabs button:last-child{border-color:var(--line)}#tour-tabs .chosen{color:var(--soot)}
#tour-tabs .chosen::before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:4px;background:var(--brick-lit)}
#tour-tabs span{font:500 12px var(--font);font-variant-numeric:tabular-nums}
.tour-aside>p:not(.eyebrow){font-size:17px;line-height:27px;color:var(--soot)}.tour-aside small{color:var(--muted);font-size:12px}
.round-open{background:var(--soot);border:1px solid var(--mortar);border-radius:3px;color:var(--mortar)}
.image-credit{background:var(--soot);color:var(--mortar);font:600 12px/1.5 var(--font);letter-spacing:.3em;max-width:calc(100% - 44px)}
.gallery-controls button{width:44px;height:44px;background:var(--soot);color:var(--mortar);border:1px solid var(--soot);border-radius:3px}
.gallery-controls span,.walk-time,.rail-times dd,.detail-info dd{font-family:var(--font);font-weight:500;font-variant-numeric:tabular-nums}
.neighbourhood,.local-guide,.connections{background:var(--paper);color:var(--soot)}
.neigh-copy .text-link,.walk-list a,.travel-links a,.local-sources a,.text-link{color:var(--brick)}
.text-link:hover,footer a:hover{text-decoration:underline;text-underline-offset:.2em}
.walk-list b{font-size:20px}.walk-list small{color:var(--muted)}.walk-time{font-size:16px;color:var(--olive)}.walk-time span{color:var(--brick)}
.walk-list,.travel-links a,.rail-times dl>div,.rail-times dl>div:last-child{border-color:var(--line)}
.connections h2+p{color:var(--soot)}.rail-times>p,.guide-lead .guide-note{color:var(--muted)}.rail-times dd{font-size:28px}
.enquire{position:relative;isolation:isolate;overflow:hidden;gap:44px 9vw}
.enquire>div:not(.lit-brick){position:relative;z-index:1}.enquire .eyebrow,.enquire h2,.enquire>div>p:not(.eyebrow){background:var(--soot);width:fit-content}
.enquire .lockup{grid-column:1 / -1;padding-bottom:28px;border-bottom:1px solid #ede6da44}
.lockup{display:flex;align-items:center;gap:36px;color:var(--soot)}
.lockup>img{box-sizing:content-box;padding:30px;flex-shrink:0;background:var(--paper)}
.lockup__text{display:flex;flex-direction:column;gap:8px}
.lockup__the{font:600 16px/1 var(--font);letter-spacing:.36em}
.lockup__name{font:800 clamp(40px,6vw,66px)/.95 var(--font);font-stretch:125%;letter-spacing:.03em}
.lockup__place{font:600 13px/1 var(--font);letter-spacing:.32em;color:var(--muted)}
.enquire .lockup{color:var(--mortar)}.enquire .lockup>img,.enquire .lockup__text{background:var(--soot)}.enquire .lockup__text{padding-block:14px}.enquire .lockup__place{color:var(--mortar)}
footer{padding:38px 5.7vw;background:var(--paper);align-items:center;flex-wrap:wrap;color:var(--soot)}
footer .lockup{gap:12px}footer .lockup>img{padding:8px;width:32px;height:32px}footer .lockup__text{gap:5px}footer .lockup__the{font-size:10px}footer .lockup__name{font-size:22px}footer .lockup__place{font-size:9px;letter-spacing:.18em}
footer .footer-credits{font-size:12px;line-height:1.6}footer .footer-credits p{line-height:1.6}footer .footer-map-credit{display:flex;align-items:center;gap:12px;padding:12px 10px 5px;margin-left:-10px}footer a{color:var(--brick)}
dialog{background:var(--mortar);color:var(--soot);border-radius:3px}dialog::backdrop{background:#1e1b19cc}.close{min-width:44px;height:44px;border:1px solid var(--soot);color:var(--soot)}
.dialog-top h3{font-size:30px}.dialog-top .eyebrow{font-size:12px}.detail-info dd{font-weight:500}.detail-plan{background:var(--paper)}
#media-body iframe,#media-body img{background:var(--soot)}
@media(min-width:961px){.header-cta{display:inline-flex}}
@media(max-width:1100px) and (min-width:961px){#topbar{padding-inline:24px}#topbar nav{gap:16px;font-size:12px}}
@media(max-width:680px){
 h2{font-size:clamp(32px,8.6vw,48px)}
 .hero h1{font-size:clamp(27px,8.1vw,52px)}.hero-content{bottom:16%}.hero-content .eyebrow{font-size:11px;letter-spacing:.3em;line-height:1.6}.hero-sub{font-size:17px;line-height:27px;max-width:100%;margin-block:20px 24px}
 .hero{height:calc(100svh - 10px);min-height:650px;max-height:900px}.hero-foot{letter-spacing:.09em;font-size:8px}.hero-foot>a{max-width:115px;text-align:right}
 #topbar{padding-inline:14px;gap:8px}.brand{gap:7px}.brand__name{font-size:12px;letter-spacing:.025em}.mobile-menu{font-size:12px;padding:6px 9px}
 .section{padding:56px 22px}.story{padding-bottom:88px}.story-prose>p:first-child{font-size:18px;line-height:27px}
 .factline{display:grid;grid-template-columns:1fr 1fr;gap:24px 18px}.factline>div:first-child{grid-column:1 / -1}.factline strong{font-size:38px}.factline span{font-size:12px;letter-spacing:.18em}
 .section-heading>p,.arch-head>p{font-size:17px;line-height:27px}
 .model-section{padding-inline:12px}.model-frame{height:min(76svh,calc(100svh - var(--header-height) - 45px));min-height:500px}
 .model-heading{left:10px;top:12px;max-width:calc(100% - 78px)}.model-heading h3{font-size:18px}.model-heading .eyebrow{font-size:10px;letter-spacing:.3em}
 .floor-panel{right:9px;top:12px;gap:4px}.floor-panel>span{font-size:10px}.floor-panel>div{gap:3px}
 .floor-panel button{padding:8px;min-width:44px;min-height:44px}
 .unit-strip{left:10px;top:112px;max-width:calc(100% - 80px)}
 .model-tools{left:10px;right:10px;bottom:62px;transform:none;display:grid;grid-template-columns:1fr 1fr;gap:5px;background:transparent}
 .model-tools button{min-height:44px;font-size:12px;padding:10px 5px;letter-spacing:.3em}
 .model-note{bottom:166px;left:10px;max-width:235px;font-size:10px}
 .reset{bottom:167px;right:10px}.orbit-arrows{left:10px;bottom:210px}
 .orbit-credit{left:10px;bottom:8px;gap:9px;font-size:10px}
 .model-frame::after{height:210px}.model-caption{font-size:8px;line-height:1.5}
 .tour-aside{padding:32px 22px}#tour-tabs button{font-size:25px}.image-credit{font-size:10px;letter-spacing:.2em}
 .gallery-rail figcaption{font-size:11px;letter-spacing:.22em}
 .walk-list a{align-items:start;gap:12px}.walk-list b{font-size:18px}.walk-time{font-size:14px;padding-top:3px}
 .enquire{gap:28px}.enquire .lockup{flex-direction:column;align-items:flex-start;gap:8px;padding-bottom:30px}.enquire .lockup>img{width:72px;height:72px;padding:18px}.lockup__name{font-size:36px}.lockup__place{font-size:10px;letter-spacing:.2em}.lockup__the{font-size:13px}
 footer{gap:26px;padding:30px 22px}footer .lockup span:first-child{width:auto}footer .lockup__name{font-size:22px}.dialog-top h3{font-size:25px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
#topbar.header-dark .brand img{background:var(--soot)}

.hero-content .eyebrow{background:var(--soot);padding:6px 10px;width:fit-content}
@media(min-width:681px){.tour-aside{padding:clamp(32px,3.5vw,60px)}#tour-tabs button{font-size:clamp(22px,2vw,30px)}}
