/* Approved Fraunces / Manrope foundation, cast iron, brass and lamplight. */
:root{--heritage-ink:#191c1d;--heritage-panel:#222625;--heritage-brass:#d2aa66;--heritage-paper:#ede7db;--heritage-muted:#bfc0b8;--heritage-rule:rgba(210,170,102,.27)}
body.heritage-active{background:var(--heritage-ink);color:#f7f5f1}
.heritage-active .floors{opacity:.32}
.heritage-active header{background:rgba(25,28,29,.96);border-bottom-color:var(--heritage-rule)}
.heritage-active header>div{height:78px;gap:16px}
.heritage-active header nav>a{padding:9px 0}
.heritage-active header nav>a[aria-current=page]{text-decoration:underline;text-decoration-color:var(--heritage-brass);text-underline-offset:9px}
.heritage-active header>div>a:first-child>span{width:46px;height:46px;flex-shrink:0;border-radius:50%;background:#648db5 url('/assets/heritage/tower-header-blue-v2.webp') center/cover no-repeat;border:1px solid #c1c9ca;box-shadow:none;overflow:hidden}
.heritage-active header>div>a:first-child>span svg{visibility:hidden}
.heritage-active a.rounded-full,.heritage-active button.rounded-full{border-radius:4px}
.heritage-active .bg-brass{background-color:#d2aa66;color:#17181c;box-shadow:inset 0 1px 0 #edcf94}
.heritage-active .bg-brass:hover{background-color:#e1bc7c;color:#17181c}
.heritage-active .text-brass{color:#d2aa66}
.heritage-active [class*="text-cream/"]{color:#c8c9c3}
.heritage-active a:focus-visible,.heritage-active button:focus-visible,.heritage-active summary:focus-visible{outline:2px solid #ecc78b;outline-offset:5px}
.heritage-active section{scroll-margin-top:90px}
.heritage-active h2{letter-spacing:-.025em;text-wrap:balance}
.heritage-active p{ text-wrap:pretty }
.heritage-active .lift{animation:none;opacity:1;transform:none}
/* Preserve the approved hero crop, scrim and responsive title measures. */
.heritage-active #top .text-brass{color:#dbb46d}
.heritage-active #top [class*="text-cream/"]{color:#e0e0da}
.heritage-active #top .hero-secondary{background:rgba(23,24,28,.82)}
/* Tablet copy crosses the pale tower; protect its measured AA contrast. */
@media(min-width:641px) and (max-width:1100px){.heritage-active .hero-photo::after{background:linear-gradient(100deg,rgba(23,24,28,.94) 0%,rgba(23,24,28,.88) 32%,rgba(23,24,28,.76) 60%,rgba(23,24,28,.40) 100%),linear-gradient(180deg,rgba(23,24,28,.70) 0%,rgba(23,24,28,.46) 32%,rgba(23,24,28,.22) 62%,rgba(23,24,28,.66) 100%)}}
.heritage-active #services{--lamp-right:max(30px,calc((100vw - 1152px)/2));--lamp-top:32px;--lamp-width:96px;--lamp-height:153.6px;isolation:isolate;background:radial-gradient(ellipse 430px 430px at calc(100% - var(--lamp-right) - var(--lamp-width)/2) calc(var(--lamp-top) + var(--lamp-height)*.475),rgba(182,112,38,.19),transparent 80%),#191c1d;border-bottom:1px solid var(--heritage-rule)}
.heritage-lamp{position:absolute;right:var(--lamp-right);top:var(--lamp-top);width:var(--lamp-width);height:var(--lamp-height);color:#b3955f;pointer-events:none;filter:drop-shadow(0 10px 24px rgba(242,174,69,.24))}
.heritage-active #services>div:first-of-type{padding-top:88px;padding-bottom:20px;padding-right:150px}
.heritage-active #services ul{border-top:1px solid var(--heritage-rule)}
.heritage-active #services .floor-row{padding-top:25px;padding-bottom:25px;border-bottom-color:var(--heritage-rule);transition:background .2s,padding .2s}
.heritage-active #services .floor-row:hover{background:rgba(210,170,102,.055);padding-left:10px;padding-right:10px}
.heritage-active #services .floor-row>span:first-child{font-size:14px;font-family:Manrope,sans-serif;letter-spacing:.12em;color:#c7a66d;align-self:center}
.heritage-active #services .floor-row .go{border:1px solid var(--heritage-rule);width:32px;height:32px;display:grid;place-items:center;font-size:17px;align-self:center}
.heritage-active #approach{background:#232725;border:0}
.heritage-active #approach ul{margin-top:32px}
.heritage-active #approach li{padding:19px 0;border-top:1px solid var(--heritage-rule);margin-top:0;line-height:1.8}
.heritage-active #approach strong{display:block;font-family:Fraunces,Georgia,serif;font-size:23px;font-weight:500;margin-bottom:7px}
.heritage-active #approach>div>div:last-child{margin-top:12px;border:1px solid #736142;background:linear-gradient(140deg,rgba(210,170,102,.06),transparent 65%),#191c1d;box-shadow:inset 0 0 0 6px #232725,inset 0 0 0 7px rgba(210,170,102,.16);padding:38px}
/* The archive is a photograph with a caption, not a decorative unreadable backdrop. */
.heritage-active #story{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(35px,6vw,88px);align-items:center;max-width:1152px;margin:0 auto;padding:100px 20px;border:0}
.heritage-active #story>div{padding:0;text-align:left;max-width:none}
.heritage-active #story>div>span{display:none}
.heritage-active #story>div>p{margin-left:0;margin-right:0}
.heritage-active #story>div>p:first-of-type{margin-top:0;font-size:clamp(80px,8vw,116px);font-weight:500;letter-spacing:-.065em}
.heritage-active #story h2{font-size:clamp(28px,3vw,39px);line-height:1.2}
.heritage-active #story>div>p:first-of-type span{letter-spacing:normal;margin-left:10px}
.heritage-archive{margin:0;background:#e7e0d0;color:#3c3b34;padding:12px;transform:rotate(-1.2deg);box-shadow:0 20px 45px #0004}
.heritage-archive img{width:100%;height:440px;object-fit:cover;object-position:center}
.heritage-archive figcaption{font-size:12px;line-height:1.65;padding:13px 7px 4px}
.heritage-archive figcaption a{text-decoration:underline;text-underline-offset:3px}
.heritage-active #faq{background:#222625;border-color:var(--heritage-rule)}
.heritage-active #faq .grid>div{background:transparent;border:0;border-top:1px solid var(--heritage-rule);padding:25px 0 0}
.heritage-active #faq .grid>div:empty{display:none}
.heritage-active #faq h3{font-family:Fraunces,Georgia,serif;font-size:23px;font-weight:500;line-height:1.35}
.heritage-active #faq p{line-height:1.8;font-size:15px}
.heritage-active #contact,.heritage-active section:has(>div>h2):has(>div>a[href*="contact"]){background:radial-gradient(ellipse at 50% 100%,#8d60232b,transparent 65%)}
.heritage-active footer{background:#141718;border-color:var(--heritage-rule);padding-bottom:0}
.heritage-active footer .es-fnav-in{padding-top:50px;padding-bottom:50px}
.heritage-active footer .es-fnav-h{color:#d2aa66}
/* Shared inner-page title treatment retains every source heading and paragraph. */
.heritage-active:not(.heritage-home) header+section,.heritage-active:not(.heritage-home) section:has(h1):not(.phero){background:radial-gradient(ellipse at 95% 20%,#b7833630,transparent 58%),linear-gradient(110deg,#191c1d,#252a27);border-bottom-color:var(--heritage-rule)}
.heritage-active:not(.heritage-home) section:has(h1):not(.phero)>div{padding-top:76px;padding-bottom:80px}
.heritage-active:not(.heritage-home) h1{letter-spacing:-.035em}
.heritage-active:not(.heritage-home) section[id]:not(#faq){border-color:var(--heritage-rule)}
.heritage-active:not(.heritage-home) section[class*="bg-night"]{background:#222625}
.heritage-active:not(.heritage-home) section>.grid>div:first-child:has(h2){border-left:2px solid #a38653;padding-left:25px}
.heritage-active input,.heritage-active textarea{border-color:#777b72;background:#181c1c;border-radius:3px}
.heritage-active input::placeholder,.heritage-active textarea::placeholder{color:#aeb2ab;opacity:1}
.heritage-active .doc{line-height:1.85}
/* Mechanical marginalia: the original scroll car, now running between two sheaves. */
.heritage-active .shaft-rail{pointer-events:none;left:27px;top:100px;bottom:35px;background:linear-gradient(90deg,#907546 1px,transparent 1px 7px,#907546 7px);width:8px;opacity:.65}
.heritage-active .shaft-rail::before{inset:0;background:none}
.heritage-active .shaft-rail::after{display:none}
.heritage-active .shaft-rail .car{left:-4px;width:16px;height:26px;border:1px solid #e2bb75;background:#282921;box-shadow:inset 3px 0 0 #9c7b46,inset -3px 0 0 #9c7b46;top:clamp(25px,calc(var(--car-y,70vh) - 100px),calc(100% - 52px))}
.heritage-sheave{position:absolute;width:32px;height:32px;left:-12px;top:-15px;color:#c6a368;transform:rotate(var(--sheave-turn,0deg))}
.heritage-sheave.bottom{top:auto;bottom:-15px;transform:rotate(calc(-1 * var(--sheave-turn,0deg)))}
@media(min-width:1000px){.heritage-active #faq>div>.grid{grid-template-columns:1fr;gap:28px}.heritage-home #faq>div{display:grid;grid-template-columns:1fr 1.4fr;gap:75px}.heritage-home #faq .grid{margin-top:0}}
@media(max-width:1050px){.heritage-active header>div{gap:10px}.heritage-active header>div>nav{display:none}.heritage-active header .es-menu{display:block;margin-left:auto}.heritage-active #services>div:first-of-type{padding-right:140px}}
@media(max-width:700px){.heritage-active header>div{height:68px;padding-left:16px;padding-right:16px}.heritage-active header>div>a:first-child{font-size:15px;gap:8px}.heritage-active header>div>a:first-child>span{width:29px;height:29px}.heritage-active header>div>a:last-child{font-size:12px;padding:10px}.heritage-active #services>div:first-of-type{padding-right:75px;padding-top:64px}.heritage-lamp{width:64px;height:110px;right:10px}.heritage-active #services .floor-row{column-gap:12px}.heritage-active #story{grid-template-columns:1fr;padding:70px 22px;gap:45px}.heritage-archive{order:2;transform:none}.heritage-archive img{height:340px}.heritage-active #approach>div>div:last-child{padding:30px}.heritage-active:not(.heritage-home) section:has(h1):not(.phero)>div{padding-top:55px;padding-bottom:60px}}
@media(max-width:360px){.heritage-active header>div{padding-inline:12px;gap:8px}.heritage-active header>div>a:first-child{font-size:14px;gap:6px}.heritage-active header>div>a:first-child>span{display:none}}
@media(prefers-reduced-motion:reduce){.heritage-active *, .heritage-active *::before,.heritage-active *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.heritage-active .shaft-rail .car{top:calc(100% - 52px)}.heritage-sheave{transform:none!important}}
/* An explicit, session-only preview choice; the system preference is unchanged. */
.heritage-active.preview-motion .shaft-rail .car{top:clamp(25px,calc(var(--car-y,70vh) - 100px),calc(100% - 52px))}
.heritage-active.preview-motion .heritage-sheave{transform:rotate(var(--sheave-turn,0deg))!important}
.heritage-active.preview-motion .heritage-sheave.bottom{transform:rotate(calc(-1 * var(--sheave-turn,0deg)))!important}
@media(max-width:700px){.heritage-active #services{--lamp-right:10px;--lamp-width:64px;--lamp-height:102.4px}.heritage-active .heritage-lamp{right:var(--lamp-right);width:var(--lamp-width);height:var(--lamp-height)}.heritage-active header>div>a:first-child>span{width:30px;height:30px;border-radius:5px;background:#121316;border:1px solid #776748}.heritage-active header>div>a:first-child>span svg{visibility:visible}}
