@font-face{font-family:Public Sans;src:url('/assets/fonts/public-sans-400.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Public Sans;src:url('/assets/fonts/public-sans-700.ttf') format('truetype');font-weight:700;font-display:swap}
@font-face{font-family:Public Sans;src:url('/assets/fonts/public-sans-800.ttf') format('truetype');font-weight:800;font-display:swap}
:root{--red:#86181d;--ink:#202021;--muted:#565353;--paper:#faf9f6;--line:#dedad4;--radius:6px;--space:clamp(22px,3.2vw,52px);font-family:'Public Sans',sans-serif;color:var(--ink);background:var(--paper);scrollbar-color:#998f85 var(--paper)}
*{box-sizing:border-box}body{margin:0}body:has(dialog[open]){overflow:hidden}a{color:var(--red);text-underline-offset:4px;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}input,textarea{caret-color:var(--red)}:focus-visible{outline:3px solid #17658a;outline-offset:4px}::selection{background:#86181d;color:white}img{max-width:100%;display:block}h1,h2,h3{letter-spacing:-.03em;text-wrap:balance;line-height:1.1}h1{font-size:clamp(38px,4.5vw,72px);margin:18px 0 0;font-weight:800}h2{font-size:clamp(28px,3.2vw,48px);margin:0 0 20px;font-weight:800}h3{font-size:24px}p{line-height:1.65;margin:0 0 22px}a[aria-current=page]{text-decoration:underline;font-weight:700}.skip{position:fixed;top:-100px;left:16px;background:white;z-index:100;padding:16px}.skip:focus{top:12px}
.site-header{display:flex;align-items:center;gap:24px;padding:18px var(--space);background:white;min-height:105px}.brand{flex:0 0 290px}.brand img{width:100%;height:auto}.desktop-nav{display:flex;align-items:center;justify-content:flex-end;gap:clamp(12px,1.3vw,24px);flex:1}.desktop-nav a{font-size:14px;text-decoration:none;color:var(--ink);white-space:nowrap}.desktop-nav a:hover{color:var(--red);text-decoration:underline}.menu-toggle{display:flex;align-items:center;gap:8px;padding:10px 13px;border:1px solid var(--line);background:white;border-radius:var(--radius);min-height:44px}.utility{display:flex;justify-content:space-between;align-items:center;padding:8px var(--space);font-size:13px;background:white;border-bottom:1px solid var(--line);color:var(--muted)}.utility div{display:flex;gap:26px}.utility a{font-weight:700;text-decoration:none}.site-menu{inset:0 0 0 auto;margin:0;width:min(490px,100%);height:100dvh;max-height:100dvh;max-width:100%;border:0;padding:28px;background:var(--paper);color:var(--ink);overflow:auto}.site-menu::backdrop,.lightbox::backdrop{background:rgb(20 15 14 / .56)}.menu-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:12px}.menu-top h2{font-size:28px;margin:0}.menu-top button,.lightbox button{border:1px solid var(--line);background:white;padding:10px 16px;border-radius:var(--radius)}.menu-group{padding:15px 0;border-bottom:1px solid var(--line)}.menu-group>a{font-size:23px;font-weight:700;text-decoration:none}.menu-group ul{list-style:none;padding:8px 0 0 14px;margin:0;display:grid;gap:4px}.menu-group li a{display:block;padding:7px 0;text-decoration:none;color:var(--muted);font-size:16px}.menu-group li a:hover{color:var(--red);text-decoration:underline}.menu-contact{display:grid;gap:18px;padding:24px 0}
.atlas-hero{background:#e6e7df url('/assets/atlas-map.png') center/cover no-repeat}.hero-inner{padding:48px var(--space) 0;max-width:1700px;margin:auto}.atlas-hero h1{color:var(--red);font-size:clamp(42px,5.35vw,86px);font-weight:800;max-width:1400px;letter-spacing:-.04em;margin:0 0 8px}.hero-description{font-size:clamp(19px,2.08vw,32px);line-height:1.4;letter-spacing:-.03em;max-width:1100px}.property-actions{display:flex;align-items:center;gap:24px;width:fit-content;padding:12px;background:white;border-radius:8px;margin:24px 0 32px}.property-actions>a:not(.button){color:var(--ink);text-decoration:none;font-weight:700}.button{display:inline-flex;justify-content:center;align-items:center;min-height:50px;padding:14px 24px;background:var(--red);color:white;border:0;border-radius:var(--radius);text-decoration:none;font-weight:700;text-align:center}.button:hover{background:#661014;color:white}.button.light{background:white;color:var(--red);border:1px solid #e3d3d3}.button.light:hover{background:#f6eae8}.hero-bottom{display:grid;grid-template-columns:1.35fr 1fr;gap:22px;align-items:end}.hero-photo{width:100%;height:clamp(320px,27vw,440px);object-fit:cover}.seller-panel{background:var(--red);color:white;padding:38px 34px 30px;border-radius:4px 4px 0 0}.seller-panel h2{font-size:clamp(30px,3vw,46px);margin-bottom:15px}.seller-panel p{font-size:20px;line-height:1.4;max-width:40ch}.seller-panel .light{margin-top:12px}.seller-more{display:block;color:white;font-size:14px;margin-top:20px;width:fit-content}.section{padding:60px var(--space);max-width:1600px;margin:auto}.section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:24px}.section-heading>a{font-weight:700;white-space:nowrap}.section>p{max-width:75ch;color:var(--muted)}.team-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:38px 24px;margin-top:32px}.team-grid img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 20%}.team-grid h3{font-size:22px;margin:18px 0 7px}.team-grid h3 a{color:var(--ink);text-decoration:none}.team-grid h3 a:hover{color:var(--red);text-decoration:underline}.team-grid p{font-size:14px;color:var(--muted)}.service-section{border-block:1px solid var(--line)}.service-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin:30px 0 20px}.service-columns h3{margin-top:0}.service-columns p{max-width:34ch}
.page-heading{background:#e6e7df url('/assets/atlas-map.png') center/cover;padding:45px var(--space) 50px}.page-heading>a{font-size:14px}.page-heading h1{max-width:1100px;color:var(--red)}.page-body{min-height:40vh}.prose{max-width:75ch;font-size:18px}.prose .source-block{margin:0 0 26px}.prose h2{font-size:32px;margin:44px 0 20px}.prose h3,.prose h4{font-size:25px;margin:36px 0 18px}.prose li{margin-bottom:12px;line-height:1.6}.prose p:empty{display:none}.prose a{overflow-wrap:anywhere}.agent-profile{display:grid;grid-template-columns:minmax(220px,.7fr) 1.3fr;gap:64px;align-items:start}.agent-photo{width:100%;max-height:650px;object-fit:cover;object-position:50% 15%;position:sticky;top:24px}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:45px 0}.gallery img{width:100%;height:auto}.gallery-image{align-self:start}.lightbox{max-width:95vw;max-height:95dvh;border:0;background:var(--paper);padding:14px;overflow:auto}.lightbox button{display:block;margin:0 0 12px auto}.lightbox img{max-height:80dvh;width:auto;object-fit:contain}.section-nav,.article-nav{display:flex;flex-wrap:wrap;gap:24px;margin:0 0 32px}.article-nav{margin-top:40px;padding-top:24px;border-top:1px solid var(--line)}.gallery+.section-nav{margin-top:40px}.podcast-choices{display:flex;flex-wrap:wrap;gap:30px}.podcast-choices a{font-size:28px;padding:30px;border-block:1px solid var(--line)}.video-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}.video-grid iframe{width:100%;aspect-ratio:16/9;border:0}.integration iframe,.reviews-widget{border:0;width:100%;background:white}.search-widget{min-height:300px}.listing-widget{min-height:650px}.reviews-widget{height:800px}.provider-fallback{margin:24px 0;padding-top:20px;border-top:1px solid var(--line)}
.blog-controls{display:flex;align-items:end;gap:24px;max-width:850px;margin-bottom:24px}.blog-controls label{display:grid;gap:10px;flex:1}.blog-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 28px;margin-top:28px}.blog-list article[hidden]{display:none}.blog-list article>a{display:block;color:var(--ink);text-decoration:none}.blog-list article>a:hover h2{color:var(--red);text-decoration:underline;text-underline-offset:5px}.blog-list img{width:100%;aspect-ratio:16/10;object-fit:cover;margin-bottom:16px}.blog-list h2{font-size:24px;line-height:1.25;margin:10px 0 0}.language-label{font-size:13px;color:var(--muted)}input,textarea,select{width:100%;border:1px solid #a5a09a;border-radius:4px;background:white;padding:13px;color:var(--ink);min-height:48px}textarea{resize:vertical}.form-section{margin-top:50px;padding-top:42px;border-top:1px solid var(--line);scroll-margin-top:24px}.form-section h2{font-size:36px}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:22px;max-width:850px}.field label{display:block;font-size:15px;line-height:1.4;margin-bottom:9px}.full{grid-column:1/-1}.preview-notice{font-size:15px;color:var(--muted);max-width:70ch}.form-status{margin-top:18px;color:var(--red)}.contact-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:60px}.contact-layout .form-section{margin:0;padding:0;border:0}
.prose{line-height:1.65}.agent-contact{display:flex;flex-wrap:wrap;gap:12px 24px;margin-bottom:28px;font-weight:700}.agent-contact a{overflow-wrap:anywhere}.listing-unavailable{max-width:75ch}.provider-note{margin-top:24px;color:var(--muted);font-size:15px}.estimate-section{margin-top:48px;padding-top:36px;border-top:1px solid var(--line)}.estimate-section h2{font-size:30px}.reviews-section{border-bottom:1px solid var(--line)}.contact-widget{position:fixed;right:20px;bottom:20px;z-index:10;max-width:calc(100vw - 40px);border-radius:8px;background:white;box-shadow:0 5px 25px rgb(32 20 20 / .2)}.contact-widget summary{cursor:pointer;padding:15px 18px;background:var(--red);color:white;border-radius:8px;font-size:14px;font-weight:700;list-style-position:inside}.contact-widget>div{padding:20px;width:330px;max-width:calc(100vw - 40px)}.contact-widget p{font-size:16px}.contact-widget label{font-size:14px;display:block;margin-bottom:10px}.contact-widget .button{margin-top:14px;font-size:14px;width:100%}.contact-widget[open] summary{border-radius:8px 8px 0 0}footer{padding-bottom:90px}
footer{background:#eeeae3;padding:52px var(--space) 24px;margin-top:30px}.footer-top{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:70px}.footer-top>img{align-self:start}.footer-top h2{font-size:22px;margin-bottom:20px}.footer-top a{display:block;width:fit-content;margin-bottom:14px}.footer-nav{display:flex;flex-wrap:wrap;gap:18px 25px;padding:32px 0;border-bottom:1px solid #ccc5bc;margin-top:25px}.footer-nav a{font-size:14px}.affiliations{display:flex;flex-wrap:wrap;gap:25px;margin:25px 0;font-size:13px}.copyright{font-size:12px;color:var(--muted);margin:0}
@media(max-width:1250px){.brand{flex-basis:235px}.desktop-nav{gap:14px}.desktop-nav a{font-size:12px}.site-header{gap:18px}.team-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:1000px){.desktop-nav{display:none}.site-header{justify-content:space-between}.brand{flex-basis:285px}.hero-bottom{grid-template-columns:1.1fr 1fr}.seller-panel{padding:26px}.seller-panel p{font-size:17px}.hero-photo{height:390px}.blog-list{grid-template-columns:repeat(2,1fr)}.agent-profile{gap:36px}.gallery{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.site-header{min-height:80px;padding-block:16px}.brand{flex-basis:220px}.menu-toggle{padding:10px}.menu-toggle span{display:none}.utility>span{display:none}.utility{justify-content:flex-end}.hero-inner{padding-top:30px}.atlas-hero h1{font-size:46px;line-height:1.04}.hero-description{font-size:19px;margin-top:16px}.property-actions{width:100%;gap:12px;flex-wrap:wrap;padding:12px;margin:24px 0}.property-actions .button{flex:1;padding:13px;font-size:14px}.property-actions>a:not(.button){order:3;width:100%;text-align:center;font-size:14px;padding:6px}.hero-bottom{grid-template-columns:1fr;gap:0}.hero-photo{height:240px}.seller-panel{margin-inline:calc(-1 * var(--space));padding:30px var(--space);border-radius:0}.seller-panel h2{font-size:34px}.seller-panel p{font-size:18px}.section{padding-block:40px}.section-heading{align-items:center}.section-heading h2{font-size:30px}.section-heading>a{font-size:13px}.team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px}.team-grid h3{font-size:19px}.team-grid p{font-size:12px}.service-columns{grid-template-columns:1fr;gap:20px}.service-columns h3{margin-bottom:12px}.blog-list{grid-template-columns:1fr}.blog-list h2{font-size:24px}.page-heading{padding-block:30px}.page-heading h1{font-size:38px;overflow-wrap:anywhere}.agent-profile{grid-template-columns:1fr;gap:32px}.agent-photo{position:static;max-height:470px;max-width:360px}.gallery{gap:14px}.prose{font-size:17px}.video-grid{grid-template-columns:1fr}.blog-controls{flex-direction:column;align-items:stretch}.contact-layout{grid-template-columns:1fr;gap:25px}.contact-form{grid-template-columns:1fr}.footer-top{grid-template-columns:1fr;gap:28px}.footer-top>img{max-width:260px}.footer-top h2{margin-bottom:16px}.podcast-choices a{font-size:24px;padding:24px 0}.section-nav{gap:16px}.form-section h2{font-size:30px}}

/* Atlas navigation and motion: source content remains visible without JavaScript. */
:root{--motion-ease:cubic-bezier(.16,1,.3,1);scroll-padding-top:130px}
.site-header{position:sticky;top:0;z-index:20;transition:box-shadow 180ms ease}
.site-header.is-scrolled{box-shadow:0 5px 20px rgb(32 20 20 / .09)}
.desktop-nav{gap:clamp(12px,1.15vw,20px)}
.desktop-nav a{font-size:18px;font-weight:700;position:relative;padding-block:10px}
.desktop-nav a::after{content:'';position:absolute;left:0;right:0;bottom:4px;height:2px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform 220ms var(--motion-ease)}
.desktop-nav a:hover::after,.desktop-nav a:focus-visible::after,.desktop-nav a[aria-current=page]::after{transform:scaleX(1)}
.desktop-nav a:hover,.desktop-nav a[aria-current=page]{text-decoration:none}
.menu-toggle{font-size:18px;font-weight:700}
.site-menu{width:min(520px,100%);overscroll-behavior:contain}
.menu-group>a{font-size:28px;font-weight:800;line-height:1.25}
.menu-group li a{font-size:20px;font-weight:700;color:var(--ink);padding-block:10px;min-height:44px}
.menu-contact a{font-size:19px;font-weight:700}
.menu-top{position:sticky;top:-28px;background:var(--paper);z-index:1;padding-top:15px}
.menu-top button{font-weight:700}
.agent-photo{top:130px}
.form-section{scroll-margin-top:130px}
.portrait-link{display:block;overflow:hidden}
.portrait-link img{transition:transform 550ms var(--motion-ease)}
.button,.menu-toggle{transition:background-color 160ms ease,color 160ms ease,transform 200ms var(--motion-ease),box-shadow 200ms ease}
.menu-group a{transition:color 160ms ease,transform 200ms var(--motion-ease)}
footer{padding-bottom:90px}
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .portrait-link:hover img{transform:scale(1.045)}
  .button:hover{transform:translateY(-2px);box-shadow:0 5px 12px rgb(32 20 20 / .12)}
  .menu-toggle:hover{background:var(--paper);transform:translateY(-1px)}
  .menu-group li a:hover{transform:translateX(5px)}
}
@media (prefers-reduced-motion:no-preference){
  html{scroll-behavior:smooth}
  .reveal-pending{opacity:0;transform:translateY(22px)}
  .button:active,.menu-toggle:active{transform:translateY(1px);box-shadow:none}
  .lightbox[open]{animation:lightbox-arrive 240ms var(--motion-ease)}
  @keyframes lightbox-arrive{from{opacity:.35;transform:scale(.985)}to{opacity:1;transform:scale(1)}}
}
@media (max-width:1300px) and (min-width:1181px){.brand{flex-basis:220px}.site-header{gap:18px}.desktop-nav{gap:12px}.desktop-nav a{font-size:17px}}
@media (max-width:1180px){.desktop-nav{display:none}.site-header{justify-content:space-between}}
@media (max-width:650px){:root{scroll-padding-top:100px}.agent-photo{position:static}.menu-group>a{font-size:27px}.form-section{scroll-margin-top:100px}}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .reveal-pending{opacity:1;transform:none}
  .desktop-nav a::after,.portrait-link img,.menu-group a{transition:none}
  .button,.menu-toggle{transition:background-color 120ms ease,color 120ms ease}
}
@media print{.reveal-pending{opacity:1;transform:none}.site-header{position:static}.contact-widget{display:none}}

/* Atlas refinement: a working property chooser, browsable people, editorial pages. */
:root{--surface-raised:#fff;--surface-warm:#eeeae3;--hover-red:#661014;--elevation-tray:0 12px 35px rgb(32 20 20 / .09)}
[hidden]{display:none!important}
.hero-inner{padding-top:54px}
.hero-lead{display:grid;grid-template-columns:1.35fr 1fr;align-items:center;gap:50px;padding-bottom:46px}
.atlas-hero h1{max-width:1000px;font-size:clamp(52px,5.6vw,82px);line-height:1.01;margin-bottom:22px}
.hero-description{max-width:670px;font-size:clamp(20px,1.8vw,27px);line-height:1.5;letter-spacing:-.02em}
.property-chooser{position:relative;width:100%;margin:0;background:var(--surface-raised);border-radius:12px;box-shadow:var(--elevation-tray)}
.property-tabs{display:flex;gap:30px;padding:0 28px;border-bottom:1px solid var(--line)}
.property-tabs a{display:flex;align-items:center;position:relative;min-height:61px;color:var(--muted);font-size:17px;font-weight:700;text-decoration:none}
.property-tabs a::after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:3px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform 240ms var(--motion-ease)}
.property-tabs a[aria-selected=true]{color:var(--red)}
.property-tabs a[aria-selected=true]::after{transform:scaleX(1)}
.property-panel{display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;gap:22px;padding:26px 28px;min-height:225px;scroll-margin-top:150px}
.property-panel h2{font-size:25px;letter-spacing:-.02em;margin:0 0 9px}
.property-panel p{color:var(--muted);font-size:15px;margin:0;max-width:40ch}
.property-links{display:flex;align-items:center;flex-wrap:wrap;gap:16px 20px;flex:0 0 auto;font-size:14px}
.property-links .button{min-width:195px;font-size:16px}
.hero-bottom{grid-template-columns:1.5fr 1fr;gap:0;align-items:stretch}
.hero-photo-wrap{margin:0;position:relative;min-width:0;overflow:hidden}
.hero-photo{height:100%;min-height:400px;max-height:520px;object-position:center;transition:transform 1100ms var(--motion-ease)}
.hero-photo-wrap figcaption{position:absolute;bottom:0;left:0;right:0;background:var(--paper);padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:14px}
.hero-photo-wrap figcaption>span{color:var(--muted)}
.hero-photo-wrap figcaption a{display:flex;align-items:center;gap:14px;font-weight:700;text-decoration:none}
.hero-photo-wrap figcaption svg{width:20px;flex-shrink:0}
.seller-panel{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;border-radius:0;padding:42px}
.seller-panel h2{font-size:clamp(38px,3.7vw,56px);line-height:1.03;max-width:10ch}
.seller-panel p{font-size:18px;line-height:1.55;max-width:32ch}
.seller-more{font-size:16px}
.section{padding-block:80px}
.section-heading h2{margin-bottom:14px}
.team-tools{display:flex;align-items:center;gap:30px;flex-shrink:0;font-weight:700}
.team-grid h3{font-size:23px;line-height:1.2;margin:20px 0 8px}
.team-grid p{margin-bottom:16px}
.portrait-link{position:relative;background:var(--surface-warm)}
.portrait-action{position:absolute;bottom:14px;left:14px;right:14px;display:flex;align-items:center;justify-content:space-between;gap:10px;background:white;color:var(--red);padding:14px 16px;font-size:15px;font-weight:700;transform:translateY(0);transition:transform 350ms var(--motion-ease),opacity 250ms ease}
.portrait-action svg{width:20px;flex-shrink:0}
.team-contact{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;padding-top:16px;border-top:1px solid var(--line);font-size:14px;font-weight:700}
.team-contact a{min-height:30px;display:flex;align-items:center}
.service-section{display:grid;grid-template-columns:1fr 1.1fr;gap:70px;background:var(--surface-warm);max-width:none;padding-inline:max(var(--space),calc((100vw - 1496px)/2));border:0}
.service-intro h2{font-size:clamp(36px,4vw,58px);margin-bottom:30px;color:var(--red)}
.text-action{font-weight:700}
.service-accordion details{border-top:1px solid #c6bdb3}
.service-accordion details:last-child{border-bottom:1px solid #c6bdb3}
.service-accordion summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:25px 0;font-size:27px;font-weight:700;letter-spacing:-.02em}
.service-accordion summary::-webkit-details-marker{display:none}
.service-accordion summary span{width:20px;height:20px;position:relative;flex-shrink:0}
.service-accordion summary span::before,.service-accordion summary span::after{content:'';position:absolute;top:9px;left:1px;width:18px;height:2px;background:var(--red)}
.service-accordion summary span::after{transform:rotate(90deg);transition:transform 220ms var(--motion-ease)}
.service-accordion details[open] summary span::after{transform:rotate(0)}
.service-accordion p{font-size:18px;max-width:48ch;margin:0 36px 28px 0}
.reviews-section{display:grid;grid-template-columns:1fr 1fr;gap:36px;padding-block:38px}
.reviews-section h2{font-size:25px;white-space:nowrap}
.reviews-section .section-heading{align-items:center;justify-content:flex-start;gap:28px}
.reviews-section .section-heading a{font-size:14px}
.reviews-section p{font-size:14px;margin:0}
.journal-section .blog-list{grid-template-columns:1.4fr 1fr;gap:28px 42px}
.journal-section .blog-list article:first-child{grid-row:span 2}
.journal-section .blog-list article:not(:first-child)>a{display:grid;grid-template-columns:155px 1fr;align-items:start;gap:22px}
.journal-section .blog-list article:not(:first-child) img{aspect-ratio:1;object-fit:cover}
.journal-section .blog-list article:not(:first-child) h2{font-size:25px}
.blog-list article>a{overflow:hidden}
.blog-list img{transition:filter 250ms ease}
.blog-list h2{line-height:1.2}
.journal-section .blog-list article:not(:first-child) .language-label{margin-top:0}
.office-section{display:flex;align-items:center;justify-content:space-between;gap:40px;margin:0 var(--space) 65px;padding:55px 0;border-top:1px solid var(--line)}
.office-section h2{font-size:32px;margin-bottom:22px}
.office-phone{display:flex;align-items:center;gap:24px;font-size:clamp(30px,4vw,58px);font-weight:800;letter-spacing:-.03em;text-decoration:none}
.office-phone svg{width:36px;height:36px}
.office-section p{margin:25px 0 0;color:var(--muted)}
.office-actions{display:grid;justify-items:start;gap:20px;font-weight:700}
.page-heading{padding-block:55px 62px}
.page-heading>a{display:inline-flex;align-items:center;min-height:32px;font-weight:700}
.page-heading h1{line-height:1.07}
.article-page{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 280px;column-gap:80px;align-items:start;max-width:1280px}
.article-page>.prose{grid-column:1;grid-row:1;min-width:0}
.article-tools{grid-column:2;grid-row:1;position:sticky;top:145px;border-top:2px solid var(--red);padding-top:20px;font-size:14px}
.article-tools p{color:var(--muted);margin:0 0 20px}
.article-tools h2{font-size:18px;margin-bottom:18px}
.article-tools nav{display:grid;gap:16px;margin-bottom:26px}
.article-tools nav a{color:var(--muted);text-decoration:none;line-height:1.45}
.article-tools nav a[aria-current=location]{color:var(--red);text-decoration:underline;font-weight:700}
.article-tools>a{display:block;padding-top:20px;border-top:1px solid var(--line);font-weight:700}
.article-page>.gallery,.article-page>.article-nav,.article-page>.related-posts{grid-column:1/-1}
.reading-progress{position:absolute;bottom:0;left:0;width:100%;height:3px;background:var(--red);transform:scaleX(0);transform-origin:left;pointer-events:none}
.prose h2,.prose h3{scroll-margin-top:145px}
.gallery-image{display:block;position:relative;overflow:hidden;background:var(--surface-warm);cursor:zoom-in}
.gallery-image::after{content:'View photo';position:absolute;bottom:12px;right:12px;background:var(--paper);color:var(--red);padding:10px 13px;font-size:13px;font-weight:700;pointer-events:none}
.lightbox{width:min(1180px,95vw);padding:20px;border-radius:6px}
.lightbox-toolbar,.lightbox-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px}
.lightbox-toolbar{margin-bottom:16px}
.lightbox-toolbar p,.lightbox-bottom p{margin:0;font-size:14px;line-height:1.45}
.lightbox button{margin:0;flex-shrink:0;min-height:44px;font-weight:700}
.lightbox>img{width:100%;height:65dvh;max-height:65dvh;object-fit:contain}
.lightbox-bottom{margin-top:18px}
.image-caption{text-align:center;color:var(--muted);max-width:65ch}
.contact-widget summary{display:flex;align-items:center;gap:12px;list-style:none;padding:16px 20px}
.contact-widget summary::-webkit-details-marker{display:none}
.contact-widget summary::before{content:'';width:16px;height:12px;border:1.5px solid currentColor;border-radius:3px;flex-shrink:0}
.contact-widget[open] summary::before{height:2px;border-width:1px;border-radius:0}
.contact-widget[open]{max-height:calc(100dvh - 120px);overflow:auto}
.contact-widget textarea{width:100%}
@media (hover:hover) and (pointer:fine){
  .portrait-action{transform:translateY(10px);opacity:0}
  .portrait-link:hover .portrait-action,.portrait-link:focus-visible .portrait-action{transform:translateY(0);opacity:1}
  .hero-photo-wrap:hover .hero-photo{transform:scale(1.025)}
  .blog-list article>a:hover img{filter:brightness(.94)}
}
@media(max-width:1050px){
  .hero-lead{grid-template-columns:1fr;gap:12px;padding-bottom:34px}.property-chooser{max-width:880px}.property-panel{flex-direction:row;align-items:center;min-height:150px}.property-links{display:grid;justify-items:center}
  .hero-bottom{grid-template-columns:1.2fr 1fr}.seller-panel{padding:30px}
  .hero-photo-wrap figcaption{align-items:flex-start;flex-direction:column;gap:8px;padding:16px 20px}
  .service-section{gap:38px}.reviews-section{grid-template-columns:1fr;gap:8px}
  .journal-section .blog-list article:not(:first-child)>a{grid-template-columns:110px 1fr;gap:18px}
  .journal-section .blog-list article:not(:first-child) h2{font-size:21px}
  .article-page{column-gap:36px;grid-template-columns:minmax(0,1fr) 200px}
}
@media(max-width:700px){
  .hero-inner{padding-top:34px}.atlas-hero h1{font-size:clamp(43px,9vw,62px);line-height:1.03}
  .hero-description{font-size:19px;line-height:1.5}.hero-lead{gap:10px;padding-bottom:30px}.property-chooser{margin:0}
  .property-tabs{padding-inline:20px;gap:24px;justify-content:space-between}.property-tabs a{font-size:14px;min-height:56px}
  .property-panel{padding:22px;flex-direction:column;align-items:stretch;gap:22px;min-height:248px}
  .property-panel h2{font-size:23px}.property-panel p{font-size:15px;max-width:none}
  .property-links{justify-items:stretch;text-align:center}.property-links .button{width:100%}
  .hero-bottom{grid-template-columns:1fr}.hero-photo{height:320px;min-height:0}.hero-photo-wrap figcaption{flex-direction:row;align-items:center;padding:17px;font-size:12px}
  .hero-photo-wrap figcaption>span{max-width:14ch}.hero-photo-wrap figcaption a{gap:8px}
  .seller-panel{padding:34px var(--space);margin-inline:calc(-1 * var(--space))}.seller-panel h2{font-size:40px}.seller-panel h2 br{display:none}
  .section{padding-block:52px}.section-heading{align-items:flex-start;gap:16px}.section-heading h2{font-size:32px}
  .team-section .section-heading{flex-wrap:wrap;align-items:center}.team-tools{width:100%;justify-content:space-between;margin-bottom:8px;font-size:14px}.team-grid h3{font-size:22px}.team-grid p{font-size:14px}
  .team-grid:not(.team-wall){grid-template-columns:1fr 1fr}.team-grid:not(.team-wall) h3{font-size:19px}.team-grid:not(.team-wall) .portrait-action{display:none}
  .team-contact{font-size:13px;gap:6px}.team-grid:not(.team-wall) .team-contact{flex-direction:column}
  .service-section{grid-template-columns:1fr;gap:28px}.service-intro h2{font-size:40px;margin-bottom:24px}.service-accordion summary{font-size:24px}
  .reviews-section{padding-block:30px}.reviews-section .section-heading{justify-content:space-between;gap:12px}.reviews-section h2{font-size:23px}
  .journal-section .blog-list{grid-template-columns:1fr;gap:30px}.journal-section .blog-list article:first-child{grid-row:auto}
  .journal-section .blog-list article:not(:first-child)>a{grid-template-columns:100px 1fr;gap:20px}.journal-section .blog-list article:not(:first-child) h2{font-size:20px}
  .office-section{align-items:flex-start;flex-direction:column;gap:30px;padding-block:38px;margin-bottom:10px}.office-phone{font-size:36px}.office-phone svg{width:26px}.office-actions{width:100%}.office-actions .button{width:100%}
  .page-heading{padding-block:32px 40px}.page-heading h1{font-size:38px}
  .article-page{display:block}.article-tools{position:static;margin-bottom:34px}.article-tools nav{grid-template-columns:1fr 1fr;gap:16px}
  .lightbox{padding:14px}.lightbox>img{height:55dvh}.image-caption{display:none}
  .contact-widget{right:14px;bottom:14px}.contact-widget summary{font-size:12px;padding:13px 16px}
}
@media(prefers-reduced-motion:reduce){
  .property-tabs a::after,.portrait-action,.hero-photo,.service-accordion summary span::after{transition:none}
  .hero-photo-wrap:hover .hero-photo{transform:none}
}
@media print{.article-tools,.reading-progress{display:none!important}.article-page{display:block}}

/* Photography gets a deep burgundy stage rather than another white section. */
:root{--gallery-ground:#281519;--gallery-ink:#fff8f2;--gallery-muted:#d7bdc0;--gallery-line:#76565d;--gallery-stage:#1b1013}
.team-section{background:var(--gallery-ground);color:var(--gallery-ink);max-width:none;padding-inline:max(var(--space),calc((100vw - 1496px)/2));padding-block:72px 50px}
.team-section .section-heading h2{font-size:clamp(38px,4.2vw,62px);margin-bottom:18px}
.team-section>p,.team-section .team-grid p{color:var(--gallery-muted)}
.team-section a,.team-section .team-grid h3 a{color:var(--gallery-ink)}
.team-section .team-grid h3 a:hover{color:white}
.team-section .team-contact{border-color:var(--gallery-line)}
.team-section .team-grid h3{font-size:26px}
.team-section .portrait-link{background:var(--gallery-stage)}
.team-section .portrait-action{background:var(--red);color:white;inset:auto 0 0;padding:20px;transform:translateY(100%)}
.team-section .portrait-link:hover .portrait-action,.team-section .portrait-link:focus-visible .portrait-action{transform:translateY(0)}
.team-section :focus-visible,.gallery :focus-visible,.lightbox :focus-visible{outline-color:var(--gallery-ink)}
.gallery{background:var(--gallery-ground);padding:28px;color:var(--gallery-ink)}
.gallery-enhanced{display:block;min-width:0}
.gallery-feature{position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--gallery-stage);min-width:0;cursor:zoom-in;color:var(--gallery-ink)}
.gallery-feature>img{width:100%;height:clamp(320px,47vw,620px);object-fit:contain}
.gallery-enlarge{position:absolute;bottom:18px;right:18px;background:var(--red);color:white;padding:13px 18px;font-size:14px;font-weight:700}
.gallery-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0}
.gallery-toolbar p{margin:0;font-size:16px;font-variant-numeric:tabular-nums}
.gallery-controls{display:flex;gap:12px}
.gallery-controls button,.lightbox button{border:1px solid var(--gallery-line);background:transparent;color:var(--gallery-ink);min-height:46px;padding:12px 20px;border-radius:0;font-weight:700;transition:background-color 160ms ease,color 160ms ease}
.gallery-controls button:hover,.lightbox button:hover{background:var(--gallery-ink);color:var(--gallery-ground)}
.gallery-thumbnails{display:flex;gap:14px;overflow-x:auto;padding:5px;scrollbar-color:var(--gallery-muted) var(--gallery-stage)}
.gallery-thumbnails .gallery-image{flex:0 0 108px;width:108px;background:var(--gallery-stage);opacity:.55;outline:2px solid transparent;outline-offset:3px;transition:opacity 180ms ease,outline-color 180ms ease;cursor:pointer}
.gallery-thumbnails img{width:100%;height:80px;object-fit:cover}
.gallery-thumbnails .gallery-image::after{content:none}
.gallery-thumbnails .gallery-image[aria-current=true],.gallery-thumbnails .gallery-image:hover,.gallery-thumbnails .gallery-image:focus-visible{opacity:1;outline-color:var(--gallery-ink)}
.lightbox{background:var(--gallery-stage);color:var(--gallery-ink);width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;padding:24px 36px;border-radius:0}
.lightbox::backdrop{background:var(--gallery-stage)}
.lightbox>img{height:calc(100dvh - 190px);max-height:none;object-fit:contain}
.lightbox .image-caption{color:var(--gallery-muted)}
.lightbox .image-count{font-size:18px;font-variant-numeric:tabular-nums}

@media(max-width:700px){
  .team-section{padding-block:48px 34px}.team-section .section-heading h2{font-size:40px}
  .team-section .team-grid h3{font-size:26px}.team-section .portrait-action{padding:16px}
  .team-section .team-tools{align-items:center}
  .gallery{padding:14px;margin-inline:calc(-1 * var(--space));margin-block:30px}
  .gallery-feature>img{height:390px;max-height:65dvh}.gallery-enlarge{bottom:12px;right:12px;padding:11px 14px;font-size:13px}
  .gallery-toolbar{gap:12px;padding-block:18px}.gallery-toolbar p{font-size:14px}
  .gallery-controls{gap:8px}.gallery-controls button{padding:11px 12px;font-size:14px}
  .gallery-thumbnails .gallery-image{flex-basis:82px;width:82px}.gallery-thumbnails img{height:64px}
  .lightbox{padding:16px}.lightbox>img{height:calc(100dvh - 180px)}
}
@media(hover:none),(pointer:coarse){.team-section .portrait-action{transform:none;opacity:1}}
@media(prefers-reduced-motion:reduce){.gallery-thumbnails .gallery-image{transition:none}}
@media print{.team-section,.gallery,.lightbox{background:white;color:black}.team-section a,.team-section .team-grid h3 a,.team-section .team-grid p{color:black}.gallery-controls,.gallery-enlarge{display:none}.gallery-thumbnails{display:flex!important}}

/* All seven agents share the stage; expansion never hides a teammate. */
.team-section .team-wall{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:16px;margin-top:36px;overflow:visible;align-items:start;transition:grid-template-columns 520ms cubic-bezier(.22,1.18,.36,1)}
.team-wall>article{min-width:0}
.team-section .team-wall .portrait-link{height:310px;overflow:hidden;transition:transform 520ms cubic-bezier(.22,1.18,.36,1),box-shadow 300ms ease}
.team-section .team-wall img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:50% 20%}
.team-section .team-wall h3{font-size:18px;line-height:1.25;min-height:68px;margin:18px 0 8px;letter-spacing:-.02em;text-wrap:wrap}
.team-section .team-wall p{font-size:13px;min-height:38px;margin-bottom:12px;line-height:1.45}
.team-wall .team-contact{flex-direction:column;align-items:flex-start;gap:4px;font-size:13px;padding-top:12px}
.team-section .team-wall .portrait-action{display:flex;font-size:14px;padding:14px;white-space:nowrap}
.team-wall .portrait-action svg{width:18px}
@media(min-width:1101px) and (hover:hover) and (pointer:fine){
  .team-wall>article:hover .portrait-link,.team-wall>article:focus-within .portrait-link{transform:translateY(-10px);box-shadow:0 15px 28px rgb(0 0 0 / .28)}
  .team-section .team-wall .portrait-link:hover img{transform:none}
}
@media(max-width:1100px){
  .team-section .team-wall{grid-template-columns:repeat(8,minmax(0,1fr));gap:32px 20px}
  .team-wall>article{grid-column:span 2}
  .team-wall>article:nth-child(5){grid-column:2/span 2}.team-wall>article:nth-child(6){grid-column:4/span 2}.team-wall>article:nth-child(7){grid-column:6/span 2}
  .team-section .team-wall .portrait-link{height:260px}
  .team-section .team-wall h3{font-size:21px;min-height:53px}
  .team-section .team-wall .portrait-action{transform:none;opacity:1}
}
@media(max-width:600px){
  .team-section .team-wall{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 16px;margin-top:28px}
  .team-wall>article,.team-wall>article:nth-child(5),.team-wall>article:nth-child(6){grid-column:auto}
  .team-wall>article:nth-child(7){grid-column:1/-1;width:calc(50% - 8px);justify-self:center}
  .team-section .team-wall .portrait-link{height:215px}
  .team-section .team-wall h3{font-size:19px;min-height:48px}
  .team-section .team-wall .portrait-action{font-size:13px;padding:12px 10px}
  .team-wall .portrait-action svg{display:none}
}
@media(prefers-reduced-motion:reduce){.team-section .team-wall,.team-section .team-wall .portrait-link{transition:none}.team-wall>article:hover .portrait-link,.team-wall>article:focus-within .portrait-link{transform:none}}
@media print{.team-section .team-wall{grid-template-columns:repeat(4,minmax(0,1fr))}.team-wall>article{grid-column:auto!important}.team-wall>article:nth-child(7){width:auto}.team-wall .portrait-action{display:none}}

@media(min-width:1101px){
  .team-section .team-wall:not(:has(>article:hover)):has(>article:nth-child(1):focus-within){grid-template-columns:minmax(0,2.6fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr)}
  .team-section .team-wall:not(:has(>article:hover)):has(>article:nth-child(2):focus-within){grid-template-columns:minmax(0,1fr) minmax(0,2.6fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr)}
  .team-section .team-wall:not(:has(>article:hover)):has(>article:nth-child(3):focus-within){grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,2.6fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr)}
  .team-section .team-wall:not(:has(>article:hover)):has(>article:nth-child(4):focus-within){grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,2.6fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr)}
  .team-section .team-wall:not(:has(>article:hover)):has(>article:nth-child(5):focus-within){grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,2.6fr) minmax(0,1fr) minmax(0,1fr)}
  .team-section .team-wall:not(:has(>article:hover)):has(>article:nth-child(6):focus-within){grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,2.6fr) minmax(0,1fr)}
  .team-section .team-wall:not(:has(>article:hover)):has(>article:nth-child(7):focus-within){grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,2.6fr)}
}
@media(min-width:1101px) and (hover:hover) and (pointer:fine){
  .team-section .team-wall:has(>article:nth-child(1):hover){grid-template-columns:minmax(0,2.6fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr)}
  .team-section .team-wall:has(>article:nth-child(2):hover){grid-template-columns:minmax(0,1fr) minmax(0,2.6fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr)}
  .team-section .team-wall:has(>article:nth-child(3):hover){grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,2.6fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr)}
  .team-section .team-wall:has(>article:nth-child(4):hover){grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,2.6fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr)}
  .team-section .team-wall:has(>article:nth-child(5):hover){grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,2.6fr) minmax(0,1fr) minmax(0,1fr)}
  .team-section .team-wall:has(>article:nth-child(6):hover){grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,2.6fr) minmax(0,1fr)}
  .team-section .team-wall:has(>article:nth-child(7):hover){grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(0,2.6fr)}
}

/* Clearly visible, two-way language navigation and phone contact. */
.utility{padding-block:5px}
.utility>div{align-items:center;gap:24px;flex-wrap:wrap}
.language-switch{display:flex;align-items:center;gap:6px}
.language-switch a,.utility .utility-phone{display:inline-flex;align-items:center;justify-content:center;min-height:44px;font-size:18px;font-weight:700}
.language-switch a{padding:8px 11px;border-radius:4px;color:var(--muted)}
.language-switch a[aria-current]{color:var(--red);background:var(--surface-warm);text-decoration:underline;text-underline-offset:5px}
.language-switch a:hover{background:var(--surface-warm);color:var(--red)}
.utility .utility-phone{white-space:nowrap}
@media(max-width:650px){
  .utility{justify-content:center;padding-inline:16px}
  .utility>div{justify-content:center;gap:6px 16px}
  .language-switch{gap:2px}
  .language-switch a,.utility .utility-phone{font-size:16px}
  .language-switch a{padding-inline:8px}
}
