/* Shared identity for the realtor portal and property pages. */
:root{--brand-ink:#202720;--brand-paper:#f4f1e9;--brand-gold:#dbc6a1;--brand-green:#263329;--brand-gold-deep:#a88652;--brand-muted:#777d73;--brand-line:#d9d9cf;--brand-serif:Georgia,'Times New Roman',serif;--brand-sans:Arial,Helvetica,sans-serif}
html{font-family:var(--brand-sans)}body{-webkit-font-smoothing:antialiased}:focus-visible{outline-color:var(--brand-gold-deep)}::selection{background:var(--brand-gold);color:var(--brand-ink)}
.brand-logo{display:block;width:40px;height:40px;object-fit:contain;flex:0 0 auto}.brand-wordmark{display:block;font-family:var(--brand-serif);font-weight:500;letter-spacing:.04em}.brand-subline{display:block;margin-top:5px;color:#aeb6a8;font-size:8px;font-weight:400;letter-spacing:.16em}.brand-action{transition:color .2s ease,background-color .2s ease,transform .2s ease}
@media(max-width:700px){.brand-logo{width:34px;height:34px}}

/* One shared page frame and shared components for the realtor portal and /career. */
.site-header{height:82px;padding-inline:max(22px,calc((100vw - 1320px)/2));display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--brand-paper);color:var(--brand-ink);border-bottom:1px solid var(--brand-line)}
.site-header .identity,.site-header .brand{display:flex;align-items:center;gap:12px;min-width:0;color:var(--brand-ink);font-size:13px;font-weight:600;letter-spacing:.2px}
.site-header .brand-logo{width:42px;height:42px}
.site-header .identity-name,.site-header .brand-name{color:var(--brand-ink);line-height:1.35}
.site-header .brand-wordmark{font-family:var(--brand-sans);font-size:13px;font-weight:600;letter-spacing:.2px}
.site-header .brand-subline,.site-header .identity-name small{display:block;margin-top:5px;color:var(--brand-muted);font-family:var(--brand-sans);font-size:8px;font-weight:400;letter-spacing:1.5px}
.site-header nav{display:flex;align-items:center;gap:clamp(16px,2.4vw,34px);color:#626a5e;font-size:12px}
.site-header nav a,.site-header-phone{transition:color .2s ease}
.site-header nav a:hover,.site-header-phone:hover{color:var(--brand-gold-deep)}
.site-header-phone{flex:none;color:var(--brand-ink);font-size:12px;letter-spacing:.3px;white-space:nowrap}
.site-header-phone span{margin-left:10px;color:var(--brand-gold-deep)}
.contact-form-section .contact-phone{color:var(--brand-ink)}
.hero,.section,footer{padding-left:max(22px,calc((100vw - 1320px)/2));padding-right:max(22px,calc((100vw - 1320px)/2))}
.hero{min-height:min(600px,calc(100svh - 82px))}
.realtor-portal .hero-art{height:min(470px,60vw);min-height:360px}
.hero-content{width:100%;max-width:1320px;margin-inline:auto;padding-left:0;padding-right:0}
.section{padding-top:52px;padding-bottom:52px}
.metrics{padding-left:max(22px,calc((100vw - 1320px)/2));padding-right:max(22px,calc((100vw - 1320px)/2))}
.site-header .header-contact,.site-header .top-phone{color:var(--brand-ink)}
.hero-realtor{position:fixed;z-index:30;top:104px;right:max(22px,calc((100vw - 1320px)/2));width:min(470px,38vw);margin:0;padding:17px 18px;display:flex;align-items:center;gap:13px;background:#202720f2;border:1px solid #dbc6a14a;color:#f4f1e9;box-shadow:0 16px 44px #0c130b30;backdrop-filter:blur(10px)}
.hero-realtor-mark{display:block;width:52px;height:52px;flex:0 0 52px;object-fit:contain;background:#f4f1e9;padding:4px}
.hero-realtor-info{min-width:0;flex:1}.hero-realtor-info>span{display:block;color:#dbc6a1;font-size:8px;letter-spacing:1.1px;line-height:1.5}.hero-realtor-info>strong{display:block;margin:7px 0 5px;color:#f4f1e9;font-size:15px;font-weight:500;white-space:nowrap}.hero-realtor-info small{margin-left:7px;color:#c4c8bc;font-size:10px;font-weight:400}.hero-realtor-info>a{color:#dbc6a1;font-size:18px;letter-spacing:.2px;white-space:nowrap}.hero-realtor-call{align-self:stretch;display:flex;align-items:center;gap:10px;padding-left:14px;border-left:1px solid #ffffff25;color:#ead9ba;font-size:11px;white-space:nowrap}.hero-realtor-call span{font-size:16px}
.lead-form-section,.contact-form-section{background:#e8e9e0;color:var(--brand-ink)}
.lead-form-layout,.contact-form-section .contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:start;margin-top:10px}
.lead-form-section h2,.contact-form-section h2{font-size:clamp(34px,4vw,54px);font-weight:500;line-height:1.12;letter-spacing:-.03em}
.lead-form-section h2 em,.contact-form-section h2 em{color:#737b68}
.lead-form-section .section-label,.contact-form-section .section-kicker{color:#737c6b}
.lead-form-section .lead-form-layout>div>p,.contact-form-section .contact-intro>p{max-width:470px;margin-top:20px;color:#697163;font-size:14px;line-height:1.8}
#lead-form,.contact-form-section .portal-form{display:grid;gap:15px;max-width:540px}
#lead-form>label:not(.consent):not(.hp),.contact-form-section .portal-form>label:not(.portal-consent):not(.portal-honeypot){display:grid;gap:7px;color:#626b5b;font-size:12px}
#lead-form input:not([type=checkbox]),#lead-form textarea,.contact-form-section .portal-form input:not([type=checkbox]),.contact-form-section .portal-form textarea{width:100%;border:1px solid #c5cbbd;background:#f8f7f1;color:var(--brand-ink);border-radius:0;padding:14px;font:15px var(--brand-sans)}
#lead-form input::placeholder,#lead-form textarea::placeholder,.contact-form-section .portal-form input::placeholder,.contact-form-section .portal-form textarea::placeholder{color:#989e90}
#lead-form textarea,.contact-form-section .portal-form textarea{resize:vertical;min-height:92px}
#lead-form .consent,.contact-form-section .portal-consent{display:grid;grid-template-columns:18px 1fr;gap:10px;align-items:start;color:#697162;font-size:11px;line-height:1.7}
#lead-form .consent input,.contact-form-section .portal-consent input{width:16px;height:16px;margin:2px 0;accent-color:#59674b}
#lead-form .consent a,.contact-form-section .portal-consent a{color:#43513e;text-decoration:underline;text-underline-offset:3px}
#lead-form button,.contact-form-section .portal-form button{width:100%;min-height:52px;padding:16px 20px;display:flex;justify-content:space-between;border:0;background:var(--brand-ink);color:var(--brand-paper);cursor:pointer}
#lead-status,.contact-form-section .portal-status{min-height:18px;color:#465345;font-size:12px;line-height:1.6}
#lead-status.error,.contact-form-section .portal-status.error{color:#a34234}
#lead-status.success,.contact-form-section .portal-status.success{color:#315f42}
#lead-form .hp,.contact-form-section .portal-honeypot{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.lead-form-section .telegram-note{color:#818977;font-size:10px}
footer.site-footer{min-height:86px;display:block;padding-top:14px;padding-bottom:14px;background:#202720;color:#d6c6a7}.portal-footer{display:flex!important;align-items:center;justify-content:space-between;gap:24px}
footer.site-footer .footer-brand{color:#e0cba6}
footer.site-footer a{color:#e0cba6}
.footer-signature{display:inline-flex;align-items:center;max-width:220px}.footer-signature img{display:block;width:100%;height:auto;max-height:60px;object-fit:contain}
footer.site-footer .footer-brand span{padding-left:10px;font-family:var(--brand-sans);font-size:10px;color:#aeb6a8}
footer.site-footer .footer-site-link{font-size:11px;color:#e0cba6}
footer.site-footer .footer-top,footer.site-footer .footer-bottom{max-width:1320px;margin-inline:auto}
.intro-grid{grid-template-columns:.9fr 1.1fr;gap:5%;margin-top:12px}
.intro-details{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:24px;align-items:start}
.portrait-demo{margin:0;min-width:0}
.portrait-demo-image{height:230px;position:relative;display:grid;place-items:center;overflow:hidden;background:linear-gradient(145deg,#ddd9cc,#c9c5b7);border:1px solid #cbc8ba}
.portrait-demo-image:before{content:"";position:absolute;inset:12px;border:1px solid #f4f1e9a8}
.portrait-demo-image svg{width:56%;height:76%;fill:#777e6f;opacity:.72}
.portrait-demo-image span{position:absolute;right:10px;top:10px;padding:6px 8px;background:#202720;color:#f4f1e9;font-size:8px;letter-spacing:1.2px}
.portrait-demo figcaption{margin-top:9px;color:#737c6b;font-size:8px;letter-spacing:1.5px}
.section .choice-row{margin-top:38px}
.section .object-grid{margin-top:32px}
.lead-form-section,.contact-form-section{padding-top:44px;padding-bottom:44px}
@media(max-width:1100px){body:has(.hero-realtor){padding-bottom:78px}.site-header nav{gap:16px}.hero-realtor{position:fixed;top:auto;right:16px;bottom:calc(12px + env(safe-area-inset-bottom));width:min(470px,calc(100vw - 32px));padding:11px 14px}.hero-realtor-info>span{display:none}.hero-realtor-info>strong{margin:0 0 4px;font-size:14px}.hero-realtor-info small{margin-left:4px}.hero-realtor-info>a{font-size:16px}.hero-realtor-mark{width:42px;height:42px;flex-basis:42px}.hero-realtor-call{padding-left:11px}.hero-realtor .realtor-info,.hero-realtor .hero-realtor-info{min-width:0;flex:1}.lead-form-section,.contact-form-section{padding-top:38px;padding-bottom:38px}}
@media(max-width:850px){.site-header nav{display:none}}
@media(max-width:700px){body:has(.hero-realtor){padding-bottom:78px}.site-header{height:70px;padding-inline:20px;gap:10px}.site-header .brand-logo{width:36px;height:36px}.site-header .identity,.site-header .brand{gap:9px}.site-header nav{display:none}.site-header-phone{font-size:11px}.site-header-phone span{margin-left:4px}.hero,.section,footer{padding-left:22px;padding-right:22px}.hero{min-height:0}.realtor-portal .hero-art{height:290px;min-height:260px}.hero-content{padding-left:0;padding-right:0}.hero-realtor{right:10px;bottom:calc(10px + env(safe-area-inset-bottom));width:calc(100vw - 20px);padding:10px 12px;gap:12px}.hero-realtor-mark{display:none}.hero-realtor-info>strong{font-size:14px}.hero-realtor-info small{font-size:10px}.hero-realtor-info>a{font-size:15px}.hero-realtor-call{padding:8px 0 8px 12px;font-size:12px}.lead-form-layout,.contact-form-section .contact-grid{grid-template-columns:1fr;gap:22px}.lead-form-section h2,.contact-form-section h2{font-size:38px}.lead-form-section .lead-form-layout>div>p,.contact-form-section .contact-intro>p{font-size:15px}#lead-form>label:not(.consent):not(.hp),.contact-form-section .portal-form>label:not(.portal-consent):not(.portal-honeypot){font-size:13px}#lead-form input:not([type=checkbox]),#lead-form textarea,.contact-form-section .portal-form input:not([type=checkbox]),.contact-form-section .portal-form textarea{font-size:16px;padding:15px}#lead-form .consent,.contact-form-section .portal-consent{font-size:12px}.lead-form-section,.contact-form-section{padding-top:34px;padding-bottom:34px}.intro-grid{grid-template-columns:1fr;gap:18px}.intro-details{grid-template-columns:minmax(0,1fr) 130px;gap:16px}.portrait-demo-image{height:170px}.portrait-demo-image svg{width:65%}.intro-name{font-size:16px}.intro-copy{font-size:13px;line-height:1.7}.intro-copy>p+p{margin-top:10px}.section .choice-row{margin-top:28px}.section .object-grid{margin-top:24px}.section{padding-top:38px;padding-bottom:38px}footer.site-footer{min-height:72px;padding-top:15px;padding-bottom:15px;gap:14px}footer.site-footer .footer-signature{max-width:140px}footer.site-footer .footer-site-link{font-size:10px}}

/* Shared footer signature and contact placement across portal, career and policy pages. */
footer.site-footer{padding-top:22px;padding-bottom:20px}
footer.site-footer .footer-top{display:grid;grid-template-columns:minmax(220px,270px) 1fr auto;align-items:center;gap:22px;min-height:58px}
.footer-signature{display:inline-flex;align-items:center;gap:12px;width:max-content;max-width:100%;color:#f4f1e9}
.footer-signature img{display:block;width:48px;height:42px;flex:0 0 48px;max-height:none;object-fit:contain;background:transparent;padding:0}
.footer-signature-copy{display:grid;gap:4px;white-space:nowrap}
.footer-signature-copy strong{color:#f4f1e9;font:500 16px/1.2 Georgia,'Times New Roman',serif;letter-spacing:.1px}
.footer-signature-copy small{color:#dbc6a1;font:500 8px/1.4 Arial,Helvetica,sans-serif;letter-spacing:2px;text-transform:uppercase}
footer.site-footer .footer-top>span{justify-self:center;text-align:center;color:#aeb6a8;font-size:11px;line-height:1.6}
footer.site-footer .footer-top>a:last-child{justify-self:end;white-space:nowrap}
footer.site-footer>p{max-width:1320px;margin:16px auto 12px;color:#aeb6a8;font-size:11px;line-height:1.65}
footer.site-footer .footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #ffffff20;padding-top:12px;color:#c6b994;font-size:10px;line-height:1.5}
footer.site-footer .footer-bottom a{color:#e0cba6;text-decoration:underline;text-underline-offset:3px}
.portal-footer{display:block!important}
body.privacy-page{padding-bottom:0!important}body.privacy-page .hero-realtor{position:relative;top:auto;right:auto;bottom:auto;width:min(1320px,calc(100% - 44px));margin:18px auto 0}
@media(min-width:1101px){.hero-realtor{display:none!important}}
@media(max-width:700px){footer.site-footer .footer-top{display:flex;flex-wrap:wrap;gap:14px;min-height:0}footer.site-footer .footer-signature{max-width:none}footer.site-footer .footer-top>span{order:3;width:100%;text-align:left;justify-self:auto}footer.site-footer .footer-top>a:last-child{margin-left:auto}footer.site-footer>p{margin:14px auto 10px;font-size:10px}footer.site-footer .footer-bottom{align-items:flex-start;font-size:9px}.footer-signature img{width:42px;height:36px;flex-basis:42px}.footer-signature-copy strong{font-size:14px}.footer-signature-copy small{font-size:7px;letter-spacing:1.6px}}
