:root{--ink:#352b25;--copper:#934d36;--copper-light:#f5ddc9;--wash:#f3ece3;--muted:#716259;--line:#dfd1c4;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif;scroll-behavior:smooth;scroll-padding-top:110px;color-scheme:light}*{box-sizing:border-box}body{margin:0;font-family:var(--sans);font-size:1rem;line-height:1.65;color:var(--ink);background:#fefaf3}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit}button:disabled{cursor:not-allowed;opacity:.5}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid #b76b40;outline-offset:5px}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.1}h2{font-size:clamp(2.3rem,3.8vw,3.65rem);letter-spacing:-.035em}h3{font-size:1.85rem;letter-spacing:-.02em}.wrap{max-width:1380px;width:calc(100% - 112px);margin-inline:auto}.section{padding-block:110px}.eyebrow{font-size:.75rem;line-height:1.5;letter-spacing:.17em;color:var(--copper);font-weight:700;margin-bottom:24px}.eyebrow.light{color:var(--copper-light)}.header{min-height:100px;position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;padding:16px 56px;background:#fefaf3fa;border-bottom:1px solid #dfd1c4;gap:24px}.brand{text-decoration:none;display:flex;align-items:center;gap:15px;flex-shrink:0}.monogram{font-family:var(--serif);font-size:3.4rem;line-height:1;letter-spacing:-.12em;color:var(--copper);padding-right:7px}.brand-name{display:block;font-family:var(--serif);font-size:1.1rem;letter-spacing:.21em;line-height:1.5}.brand-name span{display:block;font-family:var(--sans);font-size:.65rem;letter-spacing:.16em;color:var(--muted)}nav{display:flex;gap:30px;align-items:center}nav a{text-decoration:none;font-size:.875rem;line-height:1.4;padding-block:12px}nav a:hover,.text-link:hover{color:var(--copper)}.nav-cta{border-bottom:1px solid var(--copper)}.languages{display:flex;align-items:center;gap:9px;font-size:.75rem}.languages button{border:0;background:none;padding:9px 2px;color:var(--muted);font-size:.875rem}.languages button[aria-pressed=true]{font-weight:700;color:var(--ink)}.menu-toggle{display:none}.hero{position:relative;min-height:690px;height:calc(100svh - 100px);max-height:920px;color:#fff;display:flex;flex-direction:column;justify-content:center;overflow:hidden}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 58%}.hero-shade{background:linear-gradient(90deg,rgba(48,32,26,.82),rgba(48,32,26,.46) 44%,rgba(48,32,26,.07) 75%),linear-gradient(0deg,rgba(48,32,26,.42),transparent 35%)}.hero-content{position:relative;padding-block:80px 118px;z-index:1}.hero .eyebrow{margin-bottom:29px}.hero h1{font-size:clamp(3.7rem,5.7vw,6rem);line-height:1.07;letter-spacing:-.045em;max-width:1050px}.hero h1 span,.hero h1 em{display:block}.hero h1 em{font-weight:400;color:#f4d7bf}.hero-description{max-width:510px;margin-top:30px;font-size:1.1rem;line-height:1.65;color:#f4f4f0}.hero-actions{display:flex;align-items:center;gap:29px;margin-top:38px;flex-wrap:wrap}.button{padding:16px 25px;min-height:52px;border:1px solid transparent;border-radius:0;display:inline-flex;align-items:center;justify-content:center;line-height:1.35;font-size:.875rem;letter-spacing:.025em;text-decoration:none;font-weight:600;transition:background .18s,transform .18s}.button:hover{transform:translateY(-2px)}.button-light{background:#fefaf3;color:var(--ink)}.button-light:hover{background:#e9cfb9}.button-dark{background:var(--ink);color:#fff}.button-dark:hover{background:#703c2d}.button-outline{border-color:var(--line);background:transparent;color:var(--ink)}.text-link{font-size:.875rem;text-underline-offset:8px;text-decoration-thickness:1px}.text-link.light:hover{color:#f3c4a2}.hero-foot{position:absolute;bottom:32px;left:0;right:0;z-index:1;display:flex;justify-content:space-between;font-size:.75rem;letter-spacing:.14em;color:#fff;gap:24px}.intro{padding-block:96px;display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.lead{font-size:1.15rem;line-height:1.8}.small-intro{margin-top:22px;color:var(--muted)}.services{background:var(--wash)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:70px;margin-bottom:54px}.section-heading>p{max-width:405px;color:var(--muted)}.section-heading .eyebrow{margin-bottom:18px}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.service-card{padding:32px 30px 27px;background:#fefaf3;border-top:2px solid var(--copper);display:flex;flex-direction:column}.card-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:50px;color:var(--copper)}.card-top>span:first-child{font-family:var(--serif);font-size:1.2rem}.card-category{font-size:.75rem;letter-spacing:.06em;text-align:right;max-width:190px}.service-card h3{margin-bottom:20px}.service-card p{color:var(--muted);line-height:1.7}.service-card ul{padding-left:18px;margin:28px 0 34px;color:var(--ink);font-size:.875rem;line-height:1.65}.service-card li{margin-bottom:12px;padding-left:3px}.service-card li::marker{color:var(--copper)}.card-link{align-self:flex-start;margin-top:auto;border:0;border-bottom:1px solid var(--copper);background:transparent;padding:9px 0;font-weight:600;font-size:.875rem;text-align:left}.card-link:hover{color:var(--copper)}.finder{background:var(--ink);color:#fff}.finder-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:100px;align-items:start}.finder-intro{padding-top:20px}.finder-intro h2{font-size:clamp(2.5rem,4vw,4rem)}.finder-intro>p:not(.eyebrow){color:#fff2e6;max-width:385px;margin-top:26px}.finder-count{margin-top:58px;display:flex;align-items:center;gap:22px;font-family:var(--serif);font-size:2rem;color:#e2b393;max-width:290px}.count-rule{height:1px;background:#dbac8f;flex:1}.finder-panel{background:#fefaf3;color:var(--ink);padding:36px 40px;min-height:485px}.finder-progress{display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:.75rem;color:var(--muted)}.quiet-button{background:transparent;border:0;color:inherit;text-decoration:underline;text-underline-offset:5px;padding:8px 0;font-size:.875rem}.quiet-button:hover{color:var(--copper)}.progress-track{height:2px;background:var(--line);margin:18px 0 30px}.progress-track span{display:block;background:var(--copper);height:100%;transition:width .3s}.finder-panel h3{font-size:1.85rem;margin-bottom:10px}.question-help{font-size:.875rem;color:var(--muted);margin-bottom:24px}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;border:0;padding:0;margin:0;min-width:0}.choice-grid legend{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}.choice{position:relative;display:flex;align-items:center;min-height:65px}.choice input{position:absolute;top:21px;left:16px;accent-color:var(--copper);width:18px;height:18px;margin:0;cursor:pointer}.choice label{cursor:pointer;width:100%;min-height:65px;border:1px solid var(--line);padding:18px 14px 18px 45px;display:flex;align-items:center;font-size:.875rem;line-height:1.45}.choice input:checked+label{border-color:var(--copper);background:#f6eee7;color:#672d17;box-shadow:inset 0 0 0 1px var(--copper)}.choice input:focus-visible+label{outline:3px solid var(--copper);outline-offset:3px}.finder-controls{margin-top:30px;display:flex;justify-content:space-between;align-items:center;gap:20px}.finder-controls #finder-next{margin-left:auto}.recommendation .result-tag{display:inline-block;background:#f2e6da;color:#703b22;font-size:.75rem;padding:5px 10px;letter-spacing:.04em;margin-bottom:17px}.recommendation h3{font-size:2.2rem;margin-bottom:15px}.recommendation>p{color:var(--muted);line-height:1.7}.result-facts{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.result-facts span{font-size:.75rem;background:var(--wash);padding:5px 9px}.recommendation h4{font-size:.875rem;margin:20px 0 7px}.result-next{font-size:.875rem}.recommendation .button{margin-top:24px;width:100%}.approach-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:38px}.approach-grid>div{border-top:1px solid var(--line);padding-top:22px}.step-number{color:var(--copper);font-size:.875rem;display:block;margin-bottom:23px}.approach-grid h3{font-size:1.7rem;margin-bottom:18px}.approach-grid p{font-size:.9375rem;color:var(--muted)}.network{margin-top:62px;padding-top:30px;border-top:1px solid var(--line);display:flex;gap:12px 25px;align-items:center;flex-wrap:wrap}.network span{font-size:.875rem}.network-title{color:var(--copper);margin-right:auto;font-weight:600}.network span:not(:first-child){padding:6px 13px;background:var(--wash)}.region{background:var(--wash)}.region-layout{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.region-layout>div>p:not(.eyebrow){color:var(--muted);margin-top:25px;max-width:400px}.region-tabs{display:flex;gap:25px;border-bottom:1px solid #dfd1c4;margin-bottom:30px}.region-tabs button{background:none;border:0;border-bottom:2px solid transparent;padding:14px 0;margin-bottom:-1px;font-size:1rem;min-width:55px}.region-tabs button[aria-selected=true]{border-color:var(--copper);color:var(--copper);font-weight:600}#region-panel h3{font-size:2rem;margin-bottom:20px}#region-panel p{color:var(--muted)}.region-places{font-size:.875rem;margin-top:26px;color:var(--copper);border-top:1px solid var(--line);padding-top:20px}.region-note{margin-top:15px;font-size:.875rem}.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px}.team-card{display:grid;grid-template-columns:185px 1fr;gap:28px;align-items:center}.team-card img{width:185px;height:250px;object-fit:cover;filter:grayscale(100%);object-position:center 28%}.team-card h3{font-size:2.3rem;margin-bottom:12px}.team-role{font-size:.75rem;letter-spacing:.1em;line-height:1.65;color:var(--copper);margin-bottom:17px}.team-card p:last-child{font-size:.9375rem;color:var(--muted)}.faq{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;padding-top:20px}.faq-list details{border-top:1px solid var(--line);padding-block:22px}.faq-list details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;font-size:1rem;font-weight:600;padding-right:20px;line-height:1.5}details p{margin-top:20px;color:var(--muted);font-size:.9375rem}.contact{background:var(--ink);text-align:center;color:#fff}.contact-inner h2{font-size:clamp(2.7rem,4.8vw,4.7rem)}.contact-inner>p:not(.eyebrow){max-width:430px;margin:26px auto;color:#fff2e6}.contact-inner .button{margin-top:10px}.contact-inner .contact-note{font-size:.875rem;margin-top:20px}.footer{padding-block:52px;display:grid;grid-template-columns:1.1fr 1fr auto;align-items:center;gap:30px}.footer p{font-size:.875rem;color:var(--muted)}.footer>a:not(.brand){font-size:.875rem;text-underline-offset:6px}.copyright{grid-column:1/-1;font-size:.75rem;color:var(--muted);border-top:1px solid var(--line);padding-top:24px;margin-top:12px}.skip-link{position:fixed;top:-80px;left:20px;z-index:100;background:#fefaf3;color:var(--ink);padding:12px}.skip-link:focus{top:10px}dialog{border:0;padding:0;max-width:630px;width:calc(100% - 32px);max-height:calc(100svh - 48px);background:#fefaf3;color:var(--ink);box-shadow:0 25px 100px #0006}dialog::backdrop{background:#30201ac9;backdrop-filter:blur(4px)}.dialog-inner{padding:42px;position:relative}dialog h2{font-size:2.5rem;margin-bottom:20px}dialog .eyebrow{padding-right:24px}dialog p{font-size:.9375rem;color:var(--muted)}.close-dialog{position:absolute;top:13px;right:16px;background:none;border:0;font-size:2rem;color:var(--ink);width:44px;height:44px;line-height:1}.dialog-inner form{display:flex;flex-direction:column;margin:24px 0 20px;gap:8px}.dialog-inner label{font-size:.875rem;font-weight:600}.dialog-inner input,.dialog-inner textarea{border:1px solid #c5b5a6;padding:11px;background:#fefaf3;border-radius:0;color:var(--ink);width:100%}.dialog-inner input{margin-bottom:10px}.dialog-inner textarea{resize:vertical;min-height:110px}.brief-preview{border-left:2px solid var(--copper);padding:13px 17px;background:var(--wash);font-size:.875rem;white-space:pre-wrap;overflow-wrap:anywhere;max-height:220px;overflow:auto}.dialog-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.status-message{min-height:24px;margin-top:15px}.noscript-note{background:#fefaf3;padding:25px;color:var(--ink)}[hidden]{display:none!important}
.hero{min-height:clamp(690px,calc(100svh - 100px),920px);height:auto;max-height:none}.brand-name span{font-size:.75rem;letter-spacing:.08em}.finder-intro,.finder-panel,.region-content,.team-card>div{min-width:0}
@media(max-width:1150px){.header{padding-inline:32px;gap:18px}nav{gap:19px}.wrap{width:calc(100% - 64px)}.finder-layout,.intro,.region-layout{gap:55px}.service-card{padding:27px 22px}.team-card{grid-template-columns:135px 1fr;gap:20px}.team-card img{width:135px;height:215px}.team-grid{gap:30px}.section{padding-block:85px}.faq{padding-top:10px;gap:50px}.finder-panel{padding:32px}.brand-name{font-size:1rem}}
@media(max-width:820px){.header{min-height:82px;padding:15px 24px;gap:18px}.brand{gap:11px}.monogram{font-size:2.75rem}.brand-name{font-size:.9rem}.brand-name span{font-size:.75rem;letter-spacing:.06em}.menu-toggle{display:block;margin-left:auto;border:0;background:none;padding:9px 4px;font-size:.875rem}.header nav{position:absolute;top:100%;left:0;width:100%;display:none;flex-direction:column;align-items:stretch;padding:22px 24px;background:#fefaf3;border-bottom:1px solid var(--line);gap:4px;box-shadow:0 15px 25px #352b250e}.header nav.open{display:flex}.header nav a{font-size:1rem;padding:14px}.nav-cta{border:0;background:var(--wash)}.wrap{width:calc(100% - 48px)}.hero{height:auto;min-height:650px;max-height:none}.hero h1{font-size:clamp(3.35rem,7vw,5rem)}.hero-description{font-size:1rem;max-width:420px}.hero-content{padding-block:70px 110px}.hero-shade{background:linear-gradient(90deg,#30201ae0,#30201a45),linear-gradient(0deg,#30201a66,transparent 50%)}.hero-foot{font-size:.75rem}.hero-foot span:last-child{display:none}.intro{grid-template-columns:1fr;gap:32px;padding-block:68px}.intro .lead{font-size:1.05rem}.intro h2 br{display:none}.section{padding-block:72px}.section-heading{display:block;margin-bottom:35px}.section-heading>p{margin-top:25px;max-width:530px}.service-grid{grid-template-columns:1fr;gap:18px}.service-card{padding:29px}.card-top{margin-bottom:22px}.service-card ul{margin:22px 0}.service-card p{max-width:570px}.finder-layout{grid-template-columns:1fr;gap:35px}.finder-intro{padding-top:0}.finder-intro h2 br{display:none}.finder-intro>p:not(.eyebrow){max-width:540px;margin-top:20px}.finder-count{display:none}.finder-panel{min-height:0}.approach-grid{grid-template-columns:1fr 1fr;gap:35px}.network{margin-top:40px;gap:12px}.network-title{width:100%;margin-bottom:8px}.region-layout{grid-template-columns:1fr;gap:30px}.region-layout h2 br{display:none}.region-layout>div>p:not(.eyebrow){max-width:540px}.team-grid{grid-template-columns:1fr;gap:35px}.team-card{grid-template-columns:155px 1fr;gap:30px}.team-card img{width:155px;height:215px}.faq{grid-template-columns:1fr;gap:30px;padding-top:0}.footer{grid-template-columns:1fr 1fr}.footer>a:not(.brand){grid-column:1/-1}.copyright{margin-top:0}}
@media(max-width:480px){.header{padding-inline:18px;gap:12px}.brand-name{font-size:.8rem;letter-spacing:.13em}.brand-name span{font-size:.75rem;letter-spacing:0}.monogram{font-size:2.6rem}.languages{gap:5px}.languages button{font-size:.875rem}.menu-toggle{font-size:.875rem}.wrap{width:calc(100% - 40px)}.hero{min-height:650px;height:auto}.hero h1{font-size:3.18rem}.hero-content{padding-block:70px 110px}.hero .eyebrow{font-size:.75rem;max-width:270px}.hero-image{object-position:67% center}.hero-description{max-width:330px;font-size:1rem}.hero-actions{gap:24px;margin-top:29px;align-items:flex-start;flex-direction:column}.hero-actions .button{max-width:100%}.hero-foot{bottom:25px}.section{padding-block:60px}h2{font-size:2.45rem}.eyebrow{font-size:.75rem;margin-bottom:18px}.section-heading{margin-bottom:30px}.finder-panel{padding:25px 22px}.finder-progress{font-size:.75rem}.finder-panel h3{font-size:1.65rem}.choice-grid{gap:9px;grid-template-columns:1fr}.choice,.choice label{min-height:58px}.choice input{top:19px}.choice label{padding:15px 12px 15px 43px}.finder-controls{margin-top:25px}.recommendation h3{font-size:2rem}.approach-grid{gap:30px 24px}.approach-grid h3{font-size:1.5rem}.approach-grid p{font-size:.9375rem}.team-card{grid-template-columns:110px 1fr;gap:20px;align-items:start}.team-card img{width:110px;height:155px}.team-card h3{font-size:1.9rem}.team-card p:last-child{font-size:.9375rem;line-height:1.7}.team-role{font-size:.75rem;letter-spacing:.03em}.region-tabs{gap:22px}.footer{grid-template-columns:1fr;gap:25px}.footer .copyright{grid-column:1}.dialog-inner{padding:32px 23px 24px}dialog h2{font-size:2.05rem}.dialog-actions .button{flex:1;padding:14px 13px;font-size:.875rem}}
@media(max-width:390px){.header{padding-inline:14px;gap:8px;flex-wrap:wrap}.brand{gap:9px}.monogram{font-size:2.2rem}.brand-name{font-size:.75rem}.hero h1{font-size:2.9rem}.team-card{grid-template-columns:95px 1fr;gap:17px}.team-card img{width:95px;height:140px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* AB's original logo is used intact, with its italic Real Estate Boutique signature. */
:root {
  --terracotta: #b16c51;
  --ivory: #fefaf3;
  scroll-padding-top: 88px;
}
.masthead {
  display: flex;
  justify-content: center;
  padding: 5px 24px 1px;
  background: var(--ivory);
}
.masthead-brand { display: block; width: 440px; max-width: 100%; }
.masthead-logo { width: 100%; height: auto; }
.header {
  min-height: 68px;
  padding-block: 6px;
  border-top: 1px solid var(--line);
  backdrop-filter: blur(12px);
}
.nav-location {
  flex-shrink: 0;
  color: var(--copper);
  font-size: .7rem;
  letter-spacing: .17em;
  text-decoration: none;
}
.header nav a { font-size: .83rem; }
.header .languages button[aria-pressed=true] { color: var(--copper); }
.hero { min-height: 650px; }
.hero-shade {
  background: linear-gradient(90deg, #30201ae8, #38291f80 49%, #38291f10 85%),
    linear-gradient(0deg, #30201a70, transparent 45%);
}
.hero h1 em { color: #f6d8c4; }
.hero-description { color: #fff9f2; }
.hero-foot { color: #fffaf5; }
.intro { padding-block: 100px; }
.services, .region { border-block: 1px solid var(--line); }
.service-card {
  border: 1px solid var(--line);
  border-top: 3px solid var(--terracotta);
}
.card-top > span:first-child { font-style: italic; }
.card-category { font-size: .7rem; letter-spacing: .08em; }
.card-link { color: var(--copper); }
.button-dark { background: var(--copper); color: #fffaf5; }
.button-dark:hover { background: #703c2d; }
.button-light:hover { background: #f4dfcc; }
.button:focus-visible, a:focus-visible, summary:focus-visible,
input:focus-visible, textarea:focus-visible, [tabindex]:focus-visible {
  outline-color: var(--terracotta);
}
.finder, .contact { background: #8a4a36; color: var(--ivory); }
.finder-count { color: #f5d7be; font-style: italic; }
.progress-track span { background: var(--terracotta); }
.choice input:checked + label { background: #f2e4d7; color: #703823; }
.recommendation .result-tag { background: #f0e1d1; color: #733e28; }
.team-card img { filter: grayscale(100%) sepia(12%); }
.footer-shell { background: var(--wash); border-bottom: 6px solid var(--terracotta); }
.footer {
  grid-template-columns: 1.3fr 1fr auto;
  gap: 30px 44px;
  padding-block: 52px 30px;
}
.footer-brand { display: block; max-width: 410px; }
.footer-logo { width: 100%; height: auto; }
.footer > a:not(.brand) { color: var(--copper); }
.copyright { margin-top: 4px; }
dialog::backdrop { background: #30201acc; }

@media (max-width: 1150px) {
  .footer { gap: 25px; }
}
@media (max-width: 820px) {
  .masthead-brand { width: 400px; }
  .header { min-height: 62px; padding-block: 8px; }
  .nav-location { font-size: .7rem; letter-spacing: .12em; }
  .menu-toggle { color: var(--ink); }
  .header nav { background: var(--ivory); }
  .header nav a { font-size: 1rem; }
  .hero { min-height: 610px; }
  .hero-shade {
    background: linear-gradient(90deg, #30201ae6, #30201a60),
      linear-gradient(0deg, #30201a66, transparent 50%);
  }
  .intro { padding-block: 68px; }
  .footer { grid-template-columns: 1fr 1fr; }
  .footer-brand { grid-column: 1 / -1; width: 380px; max-width: 100%; }
  .footer > a:not(.brand) { grid-column: auto; justify-self: end; }
}
@media (max-width: 480px) {
  .masthead { padding-inline: 14px; }
  .masthead-brand { width: 370px; }
  .header { padding-inline: 20px; gap: 14px; }
  .hero { min-height: 620px; }
  .hero h1 { font-size: clamp(2.7rem, 11vw, 3.2rem); }
  .hero .eyebrow { font-size: .7rem; max-width: 280px; }
  .footer { grid-template-columns: 1fr; padding-top: 36px; }
  .footer-brand { grid-column: 1; }
  .footer > a:not(.brand) { justify-self: start; }
}
@media (max-width: 390px) {
  .header { padding-inline: 16px; gap: 12px; flex-wrap: nowrap; }
  .nav-location { letter-spacing: .07em; }
}

/* Direct contact details, in the same restrained AB palette. */
.contact-inner > p:not(.eyebrow) { max-width: 590px; }
.contact-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
  margin: 44px 0 38px;
  text-align: left;
}
.contact-card {
  min-width: 0;
  padding: 30px 26px;
  border: 1px solid var(--line);
  color: var(--ink);
  background: var(--ivory);
}
.contact-card .contact-card-label {
  margin-bottom: 24px;
  font-size: .7rem;
  line-height: 1.5;
  letter-spacing: .12em;
  color: var(--copper);
}
.contact-card h3 { font-size: clamp(1.7rem, 2.2vw, 2rem); }
.contact-card .contact-card-role {
  color: var(--muted);
  font-size: .875rem;
  margin-top: 12px;
  margin-bottom: 24px;
}
.contact-email, .contact-phone {
  display: block;
  width: fit-content;
  max-width: 100%;
  padding-block: 8px;
  font-size: .9375rem;
  text-decoration-thickness: 1px;
  text-underline-offset: 5px;
  overflow-wrap: anywhere;
}
.contact-email { color: var(--copper); }
.contact-email:hover, .contact-phone:hover { color: var(--ink); }
@media (max-width: 1050px) and (min-width: 821px) {
  .header { gap: 18px; }
  .header nav { gap: 18px; }
  .contact-card { padding: 26px 20px; }
}
@media (max-width: 820px) {
  .contact-grid { grid-template-columns: 1fr; gap: 18px; max-width: 540px; margin-inline: auto; }
  .contact-card { padding: 28px; }
}

/* Property photography and figures come from AB's approved dossiers. */
.properties { padding-top: 10px; }
.property-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px; }
.property-card { min-width: 0; display: flex; flex-direction: column; background: var(--wash); border: 1px solid var(--line); }
.property-image-link { display: block; overflow: hidden; background: var(--line); }
.property-image-link img { width: 100%; height: auto; aspect-ratio: 16 / 10; object-fit: cover; transition: transform .35s ease; }
.property-image-link:hover img { transform: scale(1.025); }
.property-image-link:focus-visible { outline-offset: -5px; }
.property-content { display: flex; flex-direction: column; flex: 1; padding: 32px; }
.property-location { font-size: .7rem; letter-spacing: .15em; color: var(--copper); margin-bottom: 17px; }
.property-card h3 { font-size: clamp(1.8rem, 2.6vw, 2.6rem); margin-bottom: 18px; }
.property-description { color: var(--muted); font-size: .9375rem; }
.property-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 15px; border-block: 1px solid var(--line); padding-block: 22px; margin: 26px 0 20px; }
.property-facts div { min-width: 0; }
.property-facts dt { color: var(--muted); font-size: .75rem; line-height: 1.5; margin-bottom: 8px; }
.property-facts dd { margin: 0; color: var(--ink); font-family: var(--serif); font-size: 1.5rem; line-height: 1.25; }
.property-price { color: var(--copper); font-size: .9375rem; margin-bottom: 24px; }
.property-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: auto; }
.property-actions .button { font-size: .8125rem; padding: 14px 18px; }
.property-actions .button-outline { border-color: var(--copper); color: var(--copper); }
.properties-note { max-width: 700px; margin: 28px auto 0; text-align: center; color: var(--muted); font-size: .875rem; }
@media (max-width: 1050px) and (min-width: 821px) {
  .header nav { gap: 16px; }
  .property-content { padding: 26px; }
}
@media (max-width: 820px) {
  .properties { padding-top: 0; }
  .property-grid { grid-template-columns: 1fr; gap: 26px; }
  .property-content { padding: 28px; }
  .property-card h3 { font-size: 2.25rem; }
}
@media (max-width: 480px) {
  .property-content { padding: 24px 22px; }
  .property-card h3 { font-size: 2rem; }
  .property-facts { gap: 10px; }
  .property-facts dd { font-size: 1.3rem; }
  .property-actions { flex-direction: column; align-items: stretch; }
}
@media (prefers-reduced-motion: reduce) {
  .property-image-link:hover img { transform: none; }
}
