@font-face{font-family:'Overused Grotesk';src:url('/assets/overused-grotesk.woff2') format('woff2');font-weight:300 900;font-style:normal;font-display:swap}
/* The Terrace typography and composition, translated to a light page. */
@font-face{font-family:'Cormorant Garamond';src:url('/assets/cormorant-garamond.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Inter;src:url('/assets/inter.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Inter;src:url('/assets/inter-500.ttf') format('truetype');font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:Inter;src:url('/assets/inter-600.ttf') format('truetype');font-style:normal;font-weight:600;font-display:swap}
:root{--paper:#fdfcf9;--white:#ffffff;--sand:#f6f4ee;--line:#e6e4dc;--muted:#77796f;--radius:5px}
body{font-family:'Overused Grotesk',Arial,sans-serif}h1,h2,h3,.story blockquote{font-family:'Overused Grotesk',Arial,sans-serif;font-weight:400;letter-spacing:-.025em}h1{letter-spacing:-2px}h2 span{color:inherit}h2{line-height:1.03}.property-info h3{font-family:'Overused Grotesk',Arial,sans-serif;font-weight:400;letter-spacing:-.035em;font-size:21px}.brand{font-family:'Overused Grotesk',Arial,sans-serif}.property-image,.neighborhood-card,.featured-article,.team-image,.door{border-radius:var(--radius)}.button,.icon-button,.valuation-form,.status{border-radius:4px}.section-top{border-top:0;padding-top:0;margin-bottom:28px}.section-top .eyebrow{letter-spacing:.08em;font-size:10px}.inline-link{text-decoration:underline;text-underline-offset:3px}
/* Full photograph and a uniform dark scrim, without a pale directional gradient. */
.hero{color:#f9f7ef;min-height:760px;height:100svh;max-height:1000px}.hero-shade{background:rgba(15,19,15,.45)}.hero-copy{padding-top:60px}.hero-copy>.eyebrow,.hero-bottom{display:none}.hero h1{font-size:clamp(62px,7.2vw,112px);line-height:1.02;max-width:1200px}.hero h1 .hero-amp{color:#b8a371;font-style:italic}.hero-description{color:#e2e1d9;font-size:16px;max-width:530px;margin-top:42px;line-height:1.5}.hero .actions{margin-top:62px}.hero .button{background:#f4f1e7;border-color:#f4f1e7;color:#262a24;padding:18px 26px;min-height:58px}.hero .button:hover{background:white}.hero .text-link{color:#f6f4ed}
/* Three photographic entry points, one large panel and two stacked panels. */
.intro .section-heading{align-items:center;margin-bottom:48px}.intro .section-heading>p{max-width:440px}.doors-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:280px 280px;gap:14px}.door{position:relative;isolation:isolate;overflow:hidden;color:#fff;display:block;background:#505448}.door-main{grid-row:span 2}.door>img{position:absolute;inset:0;width:100%;height:100%;z-index:-3;transition:transform .8s cubic-bezier(.2,.6,.2,1)}.door::after{content:'';position:absolute;inset:0;background:rgba(10,15,11,.32);z-index:-2;transition:background .35s}.door:hover::after{background:rgba(10,15,11,.18)}.door:hover>img{transform:scale(1.04)}.door>div{position:absolute;left:30px;bottom:30px;right:60px}.door h3{font-size:44px;line-height:1;margin-bottom:10px}.door span{font-size:12px;color:#eeeee7}.door>svg{position:absolute;right:30px;bottom:35px;width:24px}.door-main h3{font-size:58px}
/* The reference places the practice statistics over a full-width photograph. */
.track-record{position:relative;isolation:isolate;overflow:hidden;color:#f8f6ef;background:#3b4036;min-height:590px;align-items:center;gap:100px}.track-photo{position:absolute;inset:0;height:100%;width:100%;z-index:-3;object-position:center 65%}.track-record::before{content:'';position:absolute;inset:0;background:rgba(12,17,12,.64);z-index:-2}.track-record h2{font-size:clamp(44px,4.7vw,72px);margin:25px 0}.track-record p:not(.eyebrow){color:#d2d3c9;max-width:400px;line-height:1.6}.stats>div{border-color:#ffffff36}.stats strong{font-family:'Overused Grotesk',Arial,sans-serif;font-size:62px;letter-spacing:-.02em}.stats span,.stats small{color:#d4d5cb}.stats small{font-size:9px}.contact{background:#f8f7f2}.stories{background:#f8f7f2}.stories .story-carousel{max-width:1280px;margin:auto}.stories .story{display:grid;grid-template-columns:220px 1fr;align-items:center;gap:80px;min-height:360px}.story-person{display:block!important;align-self:center}.client-monogram{width:220px;height:265px;border-radius:var(--radius);display:grid;place-items:center;background:#edeae1;color:#9a917b;font-family:'Overused Grotesk',Arial,sans-serif;font-size:88px;letter-spacing:-.06em;margin-bottom:20px}.story-person strong{font-size:14px;font-family:'Overused Grotesk',Arial,sans-serif;font-weight:500}.story-person small{font-size:10px;margin-top:5px;color:var(--muted)}.story-quote .quote-mark{font-family:'Overused Grotesk',Arial,sans-serif;font-size:100px;line-height:.7;letter-spacing:0;color:var(--ink);margin-bottom:18px}.story blockquote{font-size:clamp(34px,3.4vw,54px);line-height:1.12;margin:0;max-width:900px}.story-controls{border:0;margin:35px 0 0 300px;padding:0;gap:30px}.story-controls>.text-link{font-size:11px;color:var(--muted)}.story-controls>div{display:flex;align-items:center;gap:8px}.story-controls .tiny{margin-right:18px;font-size:10px}.story-controls .icon-button{border-color:var(--line);width:36px;height:36px}.story-controls .icon-button:hover{background:#edeae1}
/* Keep photo treatments consistent throughout the page. */
.valuation{background:#383c32;color:#f8f6ee;min-height:570px}.valuation::before{background:rgba(13,18,13,.57)}.valuation h2{max-width:850px;font-size:clamp(48px,5vw,78px)}.valuation h2 span{color:inherit}.valuation p:not(.eyebrow),.valuation small{color:#e2e3da}.valuation-form{max-width:100%;border-color:#ffffff50;background:#fbfaf5;margin-top:40px}.valuation-form input{color:#2c3029}.valuation small .inline-link{color:inherit}.neighborhood-card::after{background:linear-gradient(0deg,#152013a8,transparent 70%)}.featured-article::after{background:linear-gradient(0deg,#171e17a8,transparent 80%)}.neighborhood-card h3{font-weight:400;font-size:44px}.article-list h3{font-size:34px}.team-caption{border-color:var(--line)}
/* Reveals are activated only when scripting and motion are available. */
.motion-ready .reveal{opacity:0;transform:translateY(28px);transition:opacity .85s ease,transform .85s cubic-bezier(.2,.65,.25,1);transition-delay:var(--reveal-delay,0ms)}.motion-ready .reveal.is-visible{opacity:1;transform:none}.story.is-entering .story-quote{animation:story-in .45s ease both}.story.is-entering .story-person{animation:story-in .55s ease both}@keyframes story-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(max-width:980px){.doors-grid{grid-template-rows:250px 250px}.track-record{gap:45px}.stories .story{grid-template-columns:170px 1fr;gap:45px}.client-monogram{width:170px;height:220px}.story-controls{margin-left:215px}.hero .actions{margin-top:40px}.hero-description{margin-top:30px}}
@media(max-width:700px){.hero{height:800px;min-height:740px;max-height:none}.hero-shade{background:rgba(15,19,15,.5)}.hero-copy{padding-top:25px}.hero h1{font-size:clamp(52px,10vw,70px);letter-spacing:-1.3px;line-height:1.03}.hero-description{font-size:14px;max-width:330px;margin-top:30px}.hero .actions{margin-top:38px;gap:26px}.hero .button{padding:16px 22px;min-height:54px}.intro .section-heading{align-items:flex-start;margin-bottom:32px}.doors-grid{grid-template-columns:1fr;grid-template-rows:380px 260px 260px;gap:14px}.door-main{grid-row:auto}.door>div{left:25px;bottom:25px}.door h3,.door-main h3{font-size:40px}.door>svg{right:25px;bottom:30px}.track-record{min-height:760px;gap:35px;grid-template-columns:1fr}.track-record h2{font-size:48px}.stats strong{font-size:48px}.stats>div{padding-top:15px}.stories .story{display:flex;flex-direction:column;align-items:stretch;gap:30px;min-height:0}.story-person{align-self:auto;order:2;display:grid!important;grid-template-columns:62px 1fr;gap:0 16px;align-items:center}.client-monogram{grid-row:span 2;width:62px;height:74px;font-size:28px;margin:0}.story-person strong{align-self:end;font-size:17px}.story-person small{align-self:start;margin-top:5px;font-size:9px}.story-quote .quote-mark{font-size:80px;margin:0 0 10px}.story blockquote{font-size:38px;line-height:1.14;min-height:175px}.story-controls{margin:35px 0 0;align-items:center;gap:20px}.story-controls>.text-link{max-width:175px;font-size:9px;gap:8px}.story-controls>.text-link svg{width:14px}.story-controls .tiny{margin-right:5px;font-size:9px}.story-controls .icon-button{height:32px;width:32px}.valuation{min-height:600px}.valuation::before{background:rgba(13,18,13,.6)}.valuation h2{font-size:44px}.valuation-form{margin-top:30px}.valuation p:not(.eyebrow){font-size:14px}.valuation small{font-size:9px}.article-list h3{font-size:30px}.neighborhood-card h3{font-size:40px}}
@media(prefers-reduced-motion:reduce){.motion-ready .reveal{opacity:1;transform:none;transition:none}.story.is-entering .story-quote,.story.is-entering .story-person{animation:none}}

/* Compact navigation: 40% of the previous internal padding. */
.site-header{padding:5.6px 6.4px 5.6px 9.6px;min-height:0}
@media(max-width:980px){.site-header{padding:5.6px 8.8px;min-height:0}}
@media(max-width:700px){.site-header{padding:4px 6px;min-height:0}}

/* One grotesk family, with weight providing the hierarchy. */
h1,h2,h3,.story blockquote{font-weight:500}h1{letter-spacing:-.045em}.property-info h3{font-weight:500}.stats strong{font-weight:400}

/* Search, pagination and secondary actions share explicit control affordances. */
.property-search-wrap{position:relative;width:320px;flex-shrink:0;z-index:5}
.property-search{width:100%;display:flex;gap:12px;min-height:52px;padding:12px 16px;border:1px solid #bcbfb1;border-radius:5px;background:var(--white)}
.property-search:focus-within{border-color:var(--ink);box-shadow:0 0 0 2px #292b2710}
.property-search input{width:100%;min-width:0;font-size:13px;appearance:none}
.property-search input::-webkit-search-cancel-button{display:none}
.clear-search{background:none;border:0;padding:0 2px;font-size:21px;line-height:1}
.location-options{position:absolute;top:calc(100% + 8px);left:0;right:0;list-style:none;margin:0;padding:6px;background:var(--white);border:1px solid var(--line);border-radius:5px;box-shadow:0 14px 35px #292b2718;max-height:250px;overflow:auto}
.location-options [role=option]{padding:12px 13px;border-radius:3px;font-size:13px;cursor:pointer}
.location-options [role=option]:hover,.location-options [aria-selected=true]{background:var(--sand)}
.property-pagination{justify-content:center;margin-top:45px}
.button-secondary{background:transparent;color:var(--ink);border:1px solid #a8ac9c;min-height:52px;padding:14px 22px}
.button-secondary:hover{background:var(--sand);color:var(--ink);text-decoration:none}
.hero .button-secondary{border-color:#ffffffbd;background:#ffffff0d;color:white;backdrop-filter:blur(4px)}
.hero .button-secondary:hover{background:#ffffff20;color:white}
.story-photo{display:block;width:220px;height:265px;object-fit:cover;border-radius:5px;margin-bottom:20px}
.story-controls{justify-content:flex-end}
.story-person strong{font-family:'Overused Grotesk',Arial,sans-serif;font-size:13px}
.footer-bottom{font-size:11px}
.studio-signature{display:inline-flex;gap:10px;align-items:center;color:var(--ink)}
.studio-signature span{transition:transform .2s}
.studio-signature:hover span{transform:translate(2px,-2px)}
.section-heading:has(>h2:only-child){margin-bottom:40px}
.section-top:empty{display:none}
.valuation h2{margin-top:0}.valuation-form{margin-top:35px}
.hero .actions{margin-top:42px}
@media(max-width:980px){.property-search-wrap{width:100%}.story-photo{width:170px;height:220px}}
@media(max-width:700px){.property-search-wrap{width:100%}.property-tools{gap:20px}.property-search input{font-size:14px}.story-person{grid-template-columns:82px 1fr}.story-photo{grid-row:span 2;width:82px;height:96px;margin:0}.story-controls{margin-top:25px}.story-person strong{align-self:center}.footer-bottom{font-size:10px}.actions{gap:16px}.hero .actions{flex-direction:row;align-items:stretch;gap:14px}.hero .button{padding:16px 18px;gap:16px;font-size:12px}.hero .button-secondary{min-height:54px}.section-heading:has(>h2:only-child){margin-bottom:30px}}

/* Restore the spacing around the fuller section copy. */
.hero .actions{margin-top:62px}
.valuation h2{margin-top:28px}
@media(max-width:980px){.hero .actions{margin-top:40px}}
@media(max-width:700px){.hero .actions{margin-top:38px}.story-person strong{align-self:end}}
@media(max-width:700px){.hero-copy{width:100%}.hero h1{width:100%;max-width:none;text-wrap:pretty}.hero h1 br{display:none}}
