:root{--ink:#1b1d21;--muted:#5d6168;--bg:#fff;--soft:#f5f4f1;--line:#e3ded6;--accent:#1f2b3d;--warm:#a6865a;
--serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;--sans:-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--sans);color:var(--ink);background:var(--bg);font-size:17px;line-height:1.65}
a{color:var(--accent)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--warm);outline-offset:2px}
.wrap{max-width:1180px;margin:0 auto;padding:0 22px}.narrow{max-width:760px}
.draftbar{background:#fff4d6;color:#5a4500;text-align:center;font-size:13px;padding:6px;letter-spacing:.04em}
header.site{border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:5}
.hd{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;column-gap:12px;padding-top:14px;padding-bottom:14px}
.brand{flex:1 1 0;min-width:0;padding-right:12px;text-decoration:none;color:var(--ink);display:flex;flex-direction:column}
.mark{font-family:var(--serif);font-size:24px;font-weight:700;letter-spacing:.01em;line-height:1.1}
.brok{font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-top:3px}
.mbtn{border:1px solid var(--ink);background:#fff;padding:8px 14px;font:inherit;font-size:14px;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}
nav{display:none;width:100%;flex-direction:column;padding-top:12px}nav.open{display:flex}
nav a{text-decoration:none;color:var(--ink);padding:10px 0;border-top:1px solid var(--line);font-size:15px}
nav a[aria-current]{font-weight:700}nav .lang{color:var(--warm);font-weight:600}nav .btn{margin-top:10px;text-align:center;border-top:0}
@media(min-width:960px){.mbtn{display:none}nav{display:flex!important;width:auto;flex-direction:row;align-items:center;gap:26px;padding:0}
 nav a{border:0;padding:4px 0}nav a[aria-current]{border-bottom:2px solid var(--ink)}nav .btn{margin:0;color:#fff}}
.btn{display:inline-block;background:var(--accent);color:#fff;text-decoration:none;padding:14px 24px;font-size:15px;font-weight:600;letter-spacing:.03em;border:1px solid var(--accent);cursor:pointer;font-family:inherit}
.btn:hover{background:#121a26}.btn.ghost{background:transparent;color:var(--accent)}.btn.ghost:hover{background:var(--soft)}
.btn.light{background:#fff;color:var(--accent);border-color:#fff}.btn.sm{padding:9px 16px;font-size:14px}
.ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}.ctas.c{justify-content:center}
h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.15;margin:0 0 .5em}
h1{font-size:clamp(36px,6vw,64px);letter-spacing:-.01em}h2{font-size:clamp(28px,3.6vw,40px)}h3{font-size:22px}
.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:12.5px;color:var(--warm);font-weight:700;margin:0 0 14px}
.lede{font-size:19px;color:var(--muted);max-width:640px}.center .lede{margin:0 auto}
section{padding:64px 0}@media(min-width:960px){section{padding:104px 0}}
.hero{padding-top:48px}.herogrid{display:grid;gap:40px}@media(min-width:960px){.herogrid{grid-template-columns:1.25fr .75fr;align-items:center;gap:72px}}
.headshot{aspect-ratio:4/5;background:repeating-linear-gradient(45deg,#ece7df,#ece7df 12px,#f4f0ea 12px,#f4f0ea 24px);border:1px dashed #b9b0a2;display:flex;align-items:center;justify-content:center;max-width:460px;width:100%}
.headshot span{font-size:13px;letter-spacing:.16em;color:#7b7262;font-weight:700}
.phero{background:var(--soft);padding:56px 0}@media(min-width:960px){.phero{padding:96px 0}}
.soft{background:var(--soft)}.band{background:var(--soft)}.dark{background:var(--accent);color:#fff}.dark p{color:#d5dae2}
.h2c{text-align:center;margin-bottom:44px}.center{text-align:center}.center .ctas{justify-content:center}.muted{color:var(--muted)}
.grid3{display:grid;gap:20px}@media(min-width:720px){.grid3{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.grid3{grid-template-columns:repeat(3,1fr);gap:28px}}
.card{background:#fff;border:1px solid var(--line);padding:30px;display:block;color:inherit;text-decoration:none}
.card p{color:var(--muted);margin:0}.card.link:hover{border-color:var(--ink)}.more{display:inline-block;margin-top:18px;font-weight:600;color:var(--accent)}
.num{display:block;font-family:var(--serif);font-size:15px;color:var(--warm);margin-bottom:10px;font-weight:700}
.split{display:grid;gap:28px}@media(min-width:960px){.split{grid-template-columns:1fr 1fr;gap:72px;align-items:center}.split.top{align-items:start}}
.areas{text-align:center;font-family:var(--serif);font-size:clamp(20px,2.6vw,30px);margin:0 0 8px}
.bio p{font-size:18px}.sig{font-weight:600;margin-top:28px}
.contactlist .k{text-transform:uppercase;letter-spacing:.12em;font-size:12px;color:var(--warm);font-weight:700;margin:26px 0 4px}.contactlist .k:first-child{margin-top:0}
.contactlist .v{font-family:var(--serif);font-size:24px;margin:0 0 8px;word-break:break-word}
form.lead{background:#fff;border:1px solid var(--line);padding:26px;display:flex;flex-direction:column;gap:6px}
form.lead label{display:flex;flex-direction:column;font-size:14px;font-weight:600;gap:6px;margin-top:8px}
form.lead input,form.lead select,form.lead textarea{font:inherit;font-weight:400;padding:12px;border:1px solid #c9c2b6;border-radius:0;background:#fff;width:100%}
.two{display:grid;gap:6px}@media(min-width:560px){.two{grid-template-columns:1fr 1fr;gap:14px}}
.err{color:#a3241a;font-size:14px;margin:0;min-height:0}.err:empty{display:none}.small{font-size:13px;color:var(--muted)}
.status{margin:6px 0 0;font-size:15px}.status:empty{display:none}.status.warn{background:#fff4d6;padding:12px;color:#5a4500}.status.good{background:#e7f3ea;padding:12px}
form.lead .btn{margin-top:8px;align-self:flex-start}
footer.site{background:#15191f;color:#c9ced6;padding:56px 0;font-size:14.5px}footer .mark{color:#fff}footer a{color:#fff}
footer .brok{color:#9aa1ab}.ft{display:grid;gap:26px}@media(min-width:900px){.ft{grid-template-columns:1.2fr 1fr 1fr}}footer p{margin:0 0 8px}footer .small{color:#8d949e}
@media(max-width:959px){.headshot{max-width:320px;margin:0 auto}}
/* v2 clarity */
.hphone{display:none;text-decoration:none;font-weight:700;color:var(--ink);font-size:15px}
@media(min-width:960px){.hphone{display:inline;order:2;margin-left:auto;margin-right:28px}nav{order:3}}
.hero2{padding:40px 0 48px;background:var(--soft)}@media(min-width:960px){.hero2{padding:80px 0}}
.hero2 h1{font-size:clamp(34px,5vw,56px);max-width:16ch}.narrowhero{max-width:900px}.hero2.slim h1{max-width:20ch}
.hero2 .ctas .btn{flex:1 1 auto;text-align:center}@media(min-width:600px){.hero2 .ctas .btn{flex:0 0 auto}}
.profile{background:#fff;border:1px solid var(--line);max-width:380px;width:100%;justify-self:end}.profile .headshot{max-width:none;aspect-ratio:1/1;border:0;border-bottom:1px dashed #b9b0a2}
.pbody{padding:20px 22px 24px}.pname{font-family:var(--serif);font-size:24px;font-weight:700;margin:0}.ptitle{margin:2px 0;color:var(--muted);font-size:14px}.pbrok{margin:0 0 14px;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--warm);font-weight:700}
.btn.full{display:block;text-align:center}
@media(max-width:959px){.profile{display:grid;grid-template-columns:110px 1fr;justify-self:stretch;max-width:none}.profile .headshot{border:0;border-right:1px dashed #b9b0a2;height:100%;aspect-ratio:auto;min-height:150px}.profile .headshot span{font-size:10px;text-align:center}.pbody{padding:14px 16px}.pname{font-size:20px}}
.facts{padding:0;border-bottom:1px solid var(--line)}.fgrid{display:grid;grid-template-columns:1fr;text-align:center}
.fgrid>div{padding:22px 10px;border-top:1px solid var(--line)}.fgrid>div:first-child{border-top:0}
@media(min-width:720px){.fgrid{grid-template-columns:repeat(3,1fr)}.fgrid>div{border-top:0;border-left:1px solid var(--line)}.fgrid>div:first-child{border-left:0}}
.fk{font-family:var(--serif);font-size:26px;font-weight:700;margin:0}.fv{margin:0;color:var(--muted);font-size:15px}
.svc{display:block;text-decoration:none;color:inherit;border-top:3px solid var(--accent);background:#fff;padding:26px 4px 8px}.svc p{color:var(--muted);margin:0}.svc:hover h3{text-decoration:underline}
.steps{list-style:none;padding:0;margin:0;display:grid;gap:18px;counter-reset:s}@media(min-width:720px){.steps{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.steps{grid-template-columns:repeat(3,1fr)}}
.steps li{counter-increment:s;background:#fff;border:1px solid var(--line);padding:24px 24px 22px}.steps li::before{content:counter(s,decimal-leading-zero);display:block;color:var(--warm);font-weight:700;font-family:var(--serif);margin-bottom:6px}
.steps h3{font-size:20px;margin-bottom:6px}.steps p{margin:0;color:var(--muted)}
.ticks{list-style:none;padding:0;margin:0}.ticks li{padding:14px 0 14px 32px;border-bottom:1px solid var(--line);position:relative}.ticks li::before{content:"";position:absolute;left:4px;top:22px;width:12px;height:7px;border-left:2px solid var(--warm);border-bottom:2px solid var(--warm);transform:rotate(-45deg)}
.chips{list-style:none;padding:0;margin:0 0 14px;display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.chips li{border:1px solid var(--line);padding:8px 16px;font-size:15px}
.right{text-align:left}@media(min-width:960px){.right{text-align:right}}
.contactblock{background:var(--soft);border-top:1px solid var(--line)}.bigphone{display:block;font-family:var(--serif);font-size:clamp(34px,5vw,48px);font-weight:700;text-decoration:none;color:var(--ink);margin:10px 0 0}
.cinfo{margin:28px 0 0}.cinfo dt{text-transform:uppercase;letter-spacing:.12em;font-size:12px;color:var(--warm);font-weight:700;margin-top:16px}.cinfo dd{margin:2px 0 0;word-break:break-word}
.mbar{position:fixed;left:0;right:0;bottom:0;display:grid;grid-template-columns:1fr 1fr 1.3fr;background:var(--accent);z-index:9;border-top:1px solid #202830}
.mbar a{color:#fff;text-align:center;padding:14px 4px;text-decoration:none;font-weight:600;font-size:15px;border-left:1px solid rgba(255,255,255,.2)}.mbar a:first-child{border-left:0}
@media(max-width:959px){body{padding-bottom:52px}}@media(min-width:960px){.mbar{display:none}}
.narrowhero{max-width:1180px}.narrowhero>div,.narrowhero>p,.narrowhero>h1{max-width:780px}
/* headshot */
picture.headshot,picture.avatar{display:block;background:#2b2d31;overflow:hidden}
picture img{display:block;width:100%;height:auto}
.profile picture.headshot{aspect-ratio:1/1;max-width:480px}
.profile picture.headshot img{height:100%;object-fit:cover}
@media(max-width:959px){.profile picture.headshot{border-right:0;min-height:0;height:auto;align-self:center;margin:14px 0 14px 14px;border-radius:50%;aspect-ratio:1/1;width:96px}}
picture.portrait{max-width:420px;width:100%;border-radius:10px;aspect-ratio:auto}
@media(max-width:959px){picture.portrait{max-width:300px;margin:0 auto}}
picture.avatar{width:88px;height:88px;border-radius:50%;margin-bottom:18px}picture.avatar img{height:100%;object-fit:cover}
/* v3 palette + style matched to 541sold.com profile (extracted from site_custom.css Oct 28, 2026) */
:root{--ink:#2c2c2c;--muted:#666;--bg:#fff;--soft:#f5f4f1;--line:#dddddd;--accent:#202830;--warm:#c8102e;
--serif:"proxima-nova","Avenir Next","Avenir","Helvetica Neue",Helvetica,Arial,sans-serif;--sans:"proxima-nova","Avenir Next","Avenir","Helvetica Neue",Helvetica,Arial,sans-serif}
h1,h2,h3,.mark,.pname,.fk,.bigphone,.areas,.contactlist .v{font-weight:700;letter-spacing:-.01em}
h1{text-transform:none}.mark{text-transform:uppercase;letter-spacing:.06em;font-size:21px}
.btn{border-radius:5px;text-transform:uppercase;letter-spacing:1px;font-size:14px;font-weight:700;background:#202830;border-color:#202830}
.btn:hover{background:#343434;border-color:#343434;color:#fff}.btn.ghost{background:#fff;color:#202830;border-color:#202830}.btn.ghost:hover{background:#343434;color:#fff}
.btn.light{background:#fff;color:#202830;border-color:#fff}.btn.light:hover{background:#343434;color:#fff;border-color:#343434}
.dark{background:#202830}.dark p{color:#ccc}footer.site{background:#202830}
.card,.steps li,form.lead,.profile{border-radius:5px}.svc{border-top-color:#c8102e}
.chips li{border-radius:4px;background:#fff}.mbtn{border-radius:5px}
.mbar{background:#202830}.draftbar{border-bottom:1px solid #eee}
.profile picture.headshot{border-radius:5px 5px 0 0}
form.lead input,form.lead select,form.lead textarea{border-radius:4px;border-color:#ccc}
nav a[aria-current]{border-bottom-color:#c8102e}a{color:#202830}a:hover{color:#343434}
@media(max-width:959px){.profile picture.headshot{border-radius:50%}}
/* v4 homepage (Oct 28 review) */
.brok b{color:#202830;font-weight:800;font-size:1.12em;letter-spacing:.04em}footer .brok b{color:#fff}
.hero3{background:#0d0d0d;color:#fff;padding:36px 0 40px}.hero3 .lede{color:#cfcfcf;font-size:18px;margin:0 0 6px}
.h3grid{display:grid;gap:28px;align-items:center}
.kicker{text-transform:uppercase;letter-spacing:.16em;font-size:12.5px;font-weight:700;color:#c8102e;margin:0 0 12px}.kicker span{color:#666;margin:0 4px}.kicker.c{text-align:center}
.hero3 .kicker{color:#fff}.hero3 .kicker span{color:#c8102e}
.hero3 h1{font-size:clamp(32px,4.6vw,58px);line-height:1.08;margin:0 0 14px;color:#fff;max-width:18ch}
.btn.red{background:#c8102e;border-color:#c8102e}.btn.red:hover{background:#a30d25;border-color:#a30d25}
.hero3 .ctas{margin-top:18px}.sublinks{margin:16px 0 0}.sublinks a{color:#fff;font-weight:600;text-decoration:underline;text-underline-offset:4px}
picture.h3photo{display:none}
@media(min-width:960px){.hero3{padding:84px 0}.h3grid{grid-template-columns:1.35fr .65fr;gap:64px}picture.h3photo{display:block;border-radius:6px;overflow:hidden;max-width:420px;justify-self:end;box-shadow:0 30px 60px rgba(0,0,0,.45)}}
.trust{border-bottom:1px solid var(--line);padding:0}.tgrid{display:grid;grid-template-columns:1fr 1fr}
.tgrid>div{padding:18px 8px;text-align:center;border-bottom:1px solid var(--line)}.tgrid>div:nth-child(odd){border-right:1px solid var(--line)}
@media(min-width:960px){.tgrid{grid-template-columns:repeat(4,1fr)}.tgrid>div{border-bottom:0;border-right:1px solid var(--line);padding:26px 10px}.tgrid>div:last-child{border-right:0}}
.tk{font-weight:800;font-size:19px;margin:0;color:#202830}.tv{margin:0;font-size:13.5px;color:var(--muted)}
.paths{background:#fff}.pgrid{display:grid;gap:20px}@media(min-width:960px){.pgrid{grid-template-columns:repeat(3,1fr);gap:26px;align-items:start}}
.path{border:1px solid var(--line);border-top:4px solid #202830;border-radius:6px;padding:26px}.path:nth-child(2){border-top-color:#c8102e}
.ptag{text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:800;color:#c8102e;margin:0 0 8px}.path h3{font-size:22px}.path>p{color:var(--muted)}
details{margin-top:14px}summary{cursor:pointer;font-weight:700;display:inline-block;padding:11px 18px;border:1px solid #202830;border-radius:5px;text-transform:uppercase;letter-spacing:1px;font-size:13px;list-style:none}
summary::-webkit-details-marker{display:none}details[open] summary{background:#202830;color:#fff}
form.mini{border:0;padding:16px 0 0;background:transparent}.path .more{display:block;margin-top:16px}
.why{background:#f5f4f1}.wgrid{display:grid;gap:30px}@media(min-width:960px){.wgrid{grid-template-columns:.8fr 1.2fr;gap:70px}}
.wlist{display:grid;gap:0}@media(min-width:720px){.wlist{grid-template-columns:1fr 1fr;gap:0 30px}}
.witem{border-top:2px solid #202830;padding:18px 0 22px}.witem h3{font-size:19px;margin-bottom:6px}.witem p{margin:0;color:var(--muted)}
.placeholder{margin-top:36px;border:2px dashed #c8102e;border-radius:6px;padding:18px;color:#5a0000;background:#fff;font-size:15px}
.tk{line-height:1.2;font-size:17px}.tv{line-height:1.35;margin-top:4px}
@media(max-width:959px){.h3grid{grid-template-columns:1fr 72px;align-items:start}.h3text{grid-row:1}picture.h3photo{display:block;width:72px;height:72px;border-radius:50%;overflow:hidden;grid-column:2;grid-row:1;border:2px solid #fff}picture.h3photo img{height:100%;object-fit:cover}.hero3 h1{font-size:30px}}
@media(max-width:959px){.h3grid{display:block;position:relative}picture.h3photo{position:absolute;right:22px;top:0;width:58px;height:58px}.hero3 .kicker{padding-right:72px}.hero3 .btn.red{display:block;text-align:center}}
/* v5 logo + consent */
.brand{flex-direction:row!important;align-items:center;gap:14px}.brand .logo{height:58px;width:auto;flex:0 0 auto;color:#202830}
.bname{display:flex;flex-direction:column;border-left:2px solid #202830;padding-left:14px}.mark{font-size:20px;letter-spacing:.06em}
.brok b{font-size:1.05em}
@media(max-width:959px){.brand .logo{height:50px}.bname{padding-left:10px}.mark{font-size:16px}.brand .brok{font-size:11.5px}}
.flogo .logo{height:96px;width:auto;color:#fff;margin-bottom:14px}
.chk{flex-direction:row!important;align-items:flex-start;gap:10px!important;font-weight:400!important;font-size:13px!important;color:var(--muted);margin-top:12px!important}
.chk input{width:18px!important;height:18px;flex:0 0 18px;margin-top:2px;padding:0!important}
.legal h2{font-size:22px;margin-top:34px}.legal p{color:#333}
picture.fam{display:block;border-radius:6px;overflow:hidden}picture.fam img{width:100%;height:auto;display:block}
.famsec{background:#f5f4f1}.famsec .placeholder{margin-top:18px}.famteaser .btn{margin-top:10px}
.agrid{display:grid;gap:22px;max-width:980px;margin:0 auto 18px}@media(min-width:960px){.agrid{grid-template-columns:2.4fr 1fr 1fr;gap:30px}}
.acounty{text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:800;color:#c8102e;margin:0 0 10px;text-align:center}
.agroup .chips{margin:0}
/* v6 */
.chips a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.reviews{background:#fff;border-top:1px solid var(--line)}.reviews .btn{margin-top:8px}
.citygrid{display:grid;gap:36px}@media(min-width:960px){.citygrid{grid-template-columns:1.6fr 1fr;gap:64px;align-items:start}.cform{position:sticky;top:110px}}
.cbody h2{font-size:24px;margin-top:30px}.cbody h2:first-child{margin-top:0}.cbody p{color:#333}
.cform{border:1px solid var(--line);border-top:4px solid #c8102e;border-radius:6px;padding:24px;background:#fff}
.sources{font-size:13px;color:var(--muted);padding-left:20px}.srch{font-size:15px;margin-top:34px}
sup a{text-decoration:none;color:#c8102e;font-size:11px;margin-left:1px}
@media(max-width:959px){
 section{padding:44px 0}.h2c{margin-bottom:24px}
 .path{padding:20px}
 .placeholder{margin-top:20px}

}
@media(max-width:959px){.path>p.ptag{display:block}}
/* v7 carousel + areas */
.rc{max-width:760px;margin:0 auto 26px;position:relative}.rc-viewport{overflow:hidden;border:1px solid var(--line);border-radius:6px;background:#fff}
.rc-track{list-style:none;margin:0;padding:0;display:flex;transition:transform .5s ease}@media(prefers-reduced-motion:reduce){.rc-track{transition:none}}
.rc-slide{flex:0 0 100%;padding:34px 30px;box-sizing:border-box;min-height:180px}
.rc-empty{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;border:2px dashed #c8102e;border-radius:6px}
.rc-empty-t{font-weight:800;font-size:20px;margin:0 0 6px}
.rc-ctrl{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:14px}.rc-ctrl[hidden]{display:none}
.rc-prev,.rc-next{width:44px;height:44px;border-radius:50%;border:1px solid #202830;background:#fff;font-size:18px;cursor:pointer}
.rc-dots{display:flex;gap:8px}.rc-dot{width:12px;height:12px;border-radius:50%;border:1px solid #202830;background:#fff;padding:0;cursor:pointer}.rc-dot[aria-current=true]{background:#c8102e;border-color:#c8102e}
.reviews .btn[aria-disabled=true]{opacity:.85}
details.agroup summary.acounty{display:block;cursor:pointer;list-style:none;border:0;padding:0;text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:800;color:#c8102e;text-align:center;margin-bottom:10px}
details.agroup summary span{color:#666;font-weight:600}
details.agroup[open] summary{background:none;color:#c8102e}
@media(min-width:960px){.agrid{grid-template-columns:1.6fr 1.3fr 1fr}details.agroup summary{pointer-events:none}details.agroup summary span{display:none}}
@media(max-width:959px){details.agroup{border-top:1px solid var(--line);padding:12px 0}details.agroup summary.acounty{text-align:left;margin:0}details.agroup summary.acounty::after{content:" +";float:right;color:#202830}details.agroup[open] summary.acounty::after{content:" –"}details.agroup .chips{justify-content:flex-start;margin-top:10px}.chips li{padding:6px 12px;font-size:14px}}
@media(max-width:959px){.agrid{gap:0!important;align-items:start}}
/* v8 medford */
.steps-s{padding-left:20px}.steps-s li{margin:0 0 10px}
.types{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px}.types li{border:1px solid var(--line);border-top:3px solid #c8102e;padding:14px;border-radius:4px}.types b{display:block;margin-bottom:4px}.types span{color:#343434;font-size:15px}
.mkt{overflow-x:auto}.mkt table{border-collapse:collapse;width:100%;font-size:15px}.mkt caption{text-align:left;font-weight:700;margin-bottom:8px}.mkt th,.mkt td{border-bottom:1px solid var(--line);padding:9px 8px;text-align:left}.mkt thead th{background:#202830;color:#fff;font-size:13px}
@media(max-width:700px){.types{grid-template-columns:1fr}.mkt table{font-size:13px}}
details.faq{border-bottom:1px solid var(--line);margin:0;padding:12px 0}details.faq summary{display:block;border:0;padding:0;text-transform:none;letter-spacing:0;font-size:17px}details.faq[open] summary{background:none;color:#c8102e}details.faq p{margin:8px 0 0}
.cbody{min-width:0}
.sources li{margin:0 0 10px}.sources a{display:inline-block;padding:6px 0;min-height:24px}.cbody sup a{display:inline-block;min-width:24px;min-height:24px;text-align:center}
.netclaim{padding:48px 0}.netcard{border:1px solid var(--line);border-top:4px solid #c8102e;border-radius:6px;padding:22px;background:#fff;text-align:center;max-width:640px;margin:0 auto 14px}.netcard .big{font-size:36px;font-weight:800;margin:0 0 6px}#net-fn{max-width:760px;margin:0 auto;text-align:center;font-size:12px}

.netchart{margin:18px auto 0;max-width:520px;text-align:left}.netchart figcaption{font-size:13px;font-weight:700;margin-bottom:8px}.nbrow{display:flex;align-items:center;gap:10px;margin:6px 0}.nblbl{flex:0 0 112px;font-size:14px}.nbtrack{flex:1;min-width:0;background:#f5f4f1;height:22px;border-radius:3px}.nbbar{display:block;height:100%;border-radius:3px}.nbbar.r{background:#c8102e}.nbbar.k{background:#222}.nbval{flex:0 0 36px;font-weight:800;text-align:right}@media(max-width:420px){.nblbl{flex-basis:92px;font-size:13px}}
.brandclaims{padding:8px 0 40px}.bcgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin-top:14px}.bccard{border:1px solid var(--line);border-left:4px solid #c8102e;border-radius:6px;padding:16px 18px;background:#fff;font-weight:600}.bccard p{margin:0}.bcfn{list-style:none;padding:0;margin:12px auto 0;max-width:760px;text-align:center;font-size:12px}.bcfn li{margin:4px 0}
.rvsum{font-weight:700;margin:0 0 14px}.rvstars{color:#c8102e;letter-spacing:2px;margin:0 0 8px}.rvlist{list-style:none;display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 2px 14px;margin:0;-webkit-overflow-scrolling:touch}.rv{flex:0 0 min(320px,85%);scroll-snap-align:start;border:1px solid var(--line);border-top:4px solid #c8102e;border-radius:6px;background:#fff;padding:18px;display:flex;flex-direction:column}.rv blockquote{margin:0 0 12px;flex:1}.rv blockquote p{margin:0;font-size:16px;line-height:1.5}.rvby{margin:0;font-size:14px}.rvby b{display:block}.rvsrc{color:#666;font-size:13px}.rvlist:focus-visible{outline:2px solid #c8102e}

/* reviews carousel (JS on); without JS .rvlist stays a sideways scroll list */
.rvc-on .rvlist{overflow:visible;display:block;max-width:640px;margin:0 auto;padding:4px 0}.rvc-on .rv{min-height:190px}.rvc-on .rv[hidden]{display:none}.rvc-on .rv blockquote p{font-size:18px}
.rvc-ctrl{display:flex;align-items:center;justify-content:center;gap:14px;margin:14px 0 6px}.rvc-prev,.rvc-next{width:44px;height:44px;border-radius:50%;border:1px solid #202830;background:#fff;color:#202830;font-size:18px;cursor:pointer}.rvc-prev:hover,.rvc-next:hover{background:#202830;color:#fff}
.rvc-dots{display:flex;gap:6px}.rvc-dot{width:24px;height:24px;border:0;background:transparent;padding:6px;cursor:pointer}.rvc-dot::before{content:"";display:block;width:12px;height:12px;border-radius:50%;border:1px solid #202830;background:#fff}.rvc-dot[aria-current=true]::before{background:#c8102e;border-color:#c8102e}
.rvc button:focus-visible{outline:2px solid #c8102e;outline-offset:2px}
.rvneutral{margin:0 0 12px;flex:1;color:#444;font-size:16px;font-style:italic}
/* Oct 29: photos, 4-path grid, bigger headshot */
.hero3.photo{background:linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.72) 55%,rgba(0,0,0,.45) 100%),url(img/home-rogue-valley.jpg) center/cover;position:relative}
@supports (background-image:url(x.webp)){.hero3.photo{background:linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.72) 55%,rgba(0,0,0,.45) 100%),url(img/home-rogue-valley.webp) center/cover}}
.herocredit{font-size:11px;color:#bbb;margin:18px auto 0}.herocredit a{color:#ddd}
@media(min-width:960px){.h3photo{max-width:460px}.pgrid.four{grid-template-columns:repeat(4,1fr);gap:20px}}
@media(min-width:640px) and (max-width:959px){.pgrid.four{grid-template-columns:repeat(2,1fr)}}
.path .btn.ghost{margin-top:8px}
@media(max-width:959px){.hero3 .h3photo{width:104px;height:104px}.hero3 .kicker{padding-right:118px}.hero3 h1{padding-right:0}}
.scenic{margin:0}.scenic img{display:block;width:100%;height:auto;border-radius:6px}.scenic figcaption{font-size:11px;color:#666;margin-top:6px;line-height:1.35}.scenic figcaption a{color:#555}
.cityhero{align-items:center}.cityphoto img{aspect-ratio:4/3;object-fit:cover;box-shadow:0 18px 40px rgba(0,0,0,.18)}
@media(max-width:959px){.cityphoto{margin-top:22px}}
.credits{font-size:14px;padding-left:18px}.credits li{margin:0 0 6px}
@media(max-width:959px){.hero3 .h3grid{display:flex;flex-direction:column}.hero3 .h3photo{position:static;order:-1;width:112px;height:112px;margin:0 0 16px}.hero3 .kicker{padding-right:0}}
/* Oct 29: text invitation (home hero + city pages); photo captions removed */
.herocredit,.scenic figcaption{display:none}
.txtinv{border-top:1px solid rgba(255,255,255,.28);margin-top:22px;padding-top:20px;max-width:560px}
.txtq{font-weight:800;font-size:21px;color:#fff;margin:0 0 6px}
.txtd{color:#d6d6d6;margin:0 0 14px;font-size:16px;line-height:1.5}
.btn.outline{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;box-sizing:border-box;background:transparent;color:#fff;border:2px solid #fff;min-height:56px;font-size:16px}
.btn.outline:hover,.btn.outline:focus-visible{background:#fff;color:#202830}
.txtinv .txtnum{color:#bbb;font-size:14px;margin:8px 0 0;text-align:center}
.citytxt{margin:16px 0 0;font-size:15px;color:#333}.citytxt a{font-weight:700;color:#c8102e;display:inline-flex;align-items:center;gap:6px;padding:6px 0;min-height:44px}.citytxt svg{vertical-align:middle}
.citytxt .txtnum{color:#666;font-size:14px}
@media(max-width:959px){.txtinv .txtnum,.citytxt .txtnum{display:none}.btn.outline{min-height:60px;font-size:17px}}
@media(min-width:960px){.hero3 .ctas .btn.red{min-width:100%;box-sizing:border-box;text-align:center;display:block}.hero3 .ctas{max-width:560px}}
.hero3 .ctas{max-width:560px}.hero3 .ctas .btn.red{display:block;width:100%;box-sizing:border-box;text-align:center}
/* Oct 29 10:56: anchors clear the sticky header; mobile hero tighter; city text line */
[id]{scroll-margin-top:96px}
.citytxt{display:flex;flex-wrap:wrap;align-items:center;column-gap:8px;row-gap:2px;margin:14px 0 0;font-size:15px;line-height:1.4;color:#333}
.citytxt .ctlink{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 4px;white-space:nowrap;font-weight:700;color:#c8102e}
.citytxt .ctlink span{text-decoration:underline}
@media(max-width:959px){
 .hero3{padding:18px 0 22px}
 .hero3 .h3grid{display:grid;grid-template-columns:64px 1fr;column-gap:14px;align-items:center}
 .hero3 .h3text{display:contents}
 .hero3 .h3photo{grid-column:1;grid-row:1;width:64px;height:64px;margin:0;order:0;position:static}
 .hero3 .kicker{grid-column:2;grid-row:1;margin:0;padding:0;font-size:12px;line-height:1.4}
 .hero3 .h3text>*:not(.kicker){grid-column:1 / -1}
 .hero3 h1{font-size:27px;line-height:1.12;margin:12px 0 8px}
 .hero3 .lede{font-size:16px;line-height:1.4;margin:0}
 .hero3 .ctas{margin-top:12px}
 .hero3 .btn.red{min-height:50px;padding-top:14px;padding-bottom:14px}
 .txtinv{margin-top:14px;padding-top:12px}.txtq{font-size:18px;margin-bottom:2px}.txtd{font-size:15px;line-height:1.4;margin-bottom:10px}
 .btn.outline{min-height:50px}
 .hero3 .sublinks{margin:10px 0 0}
}
/* QA fixes Oct 29: sticky city form panel taller than the screen hid its 2nd submit button; sticky bar padding */
@media(min-width:960px){.cform{max-height:calc(100vh - 110px);overflow-y:auto;overscroll-behavior:contain}}
@media(max-width:959px){.mbar{height:54px;box-sizing:border-box}body{padding-bottom:calc(54px + env(safe-area-inset-bottom))}.mbar{height:calc(54px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom)}
 .hero3 .sublinks{display:none}.hero3 h1{font-size:26px;margin:10px 0 6px}.hero3{padding:14px 0 18px}.txtd{margin-bottom:8px}.txtinv{margin-top:12px;padding-top:10px}}
@media(max-width:959px){.hero3 .h3grid{row-gap:0}}
@media(max-width:959px){.hero3 .h3grid{align-items:start;grid-auto-rows:auto;align-content:start}.hero3 .kicker{align-self:center}}
@media(max-width:959px){.hero3{padding:20px 0 22px}.hero3 h1{margin:16px 0 10px}.hero3 .ctas{margin-top:16px}.txtinv{margin-top:16px;padding-top:14px}}
/* Language switcher, segmented pill (Juan, Oct 29, 2026 1:12 PM PT; replaces the 12:29 PM text version). English pages only (header.hd-en). */
.hd-en .langsw{display:flex;align-items:center;gap:0;margin-left:auto;margin-right:8px;white-space:nowrap}
.hd-en .langsw .lglobe{display:none;color:var(--ink)}
.hd-en .langsw .lsep{display:none}
.hd-en .langsw .ls-on,.hd-en .langsw .ls-off{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;box-sizing:border-box;padding:0 10px;font-size:13px;letter-spacing:.04em;text-decoration:none;border:1.5px solid #202830;background:#fff;color:#202830;font-weight:400}
.hd-en .langsw .ls-on{background:#202830;color:#fff;font-weight:700;border-radius:999px 0 0 999px;border-right:0}
.hd-en .langsw .ls-off{border-radius:0 999px 999px 0;border-left:0}
.hd-en .langsw .lf{display:none}.hd-en .langsw .lsh{display:inline}
.hd-en .langsw a.ls-off:hover,.hd-en .langsw a.ls-off:focus-visible{background:#f5f4f1}
.hd-en .langsw .ls-soon{cursor:default}
.hd-en .langsw .ls-soon[data-tip]:hover::after,.hd-en .langsw .ls-soon[data-tip]:focus::after{content:attr(data-tip);position:absolute;top:calc(100% + 6px);right:0;z-index:60;background:#202830;color:#fff;font-size:12px;font-weight:500;letter-spacing:0;padding:6px 9px;border-radius:4px;white-space:nowrap;box-shadow:0 4px 12px rgba(0,0,0,.18)}
.hd-en .langsw .ls-on:focus-visible,.hd-en .langsw .ls-off:focus-visible{outline:2px solid #c8102e;outline-offset:2px}
.hd-en .mbtn{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;width:44px;height:44px;padding:0;font-size:9px;letter-spacing:.04em;line-height:1;gap:2px}
.hd-en .mbtn .mic{display:block}
@media(max-width:959px){.hd-en .brand{min-width:0;padding-right:8px}}
@media(min-width:960px){.hd-en .langsw{order:4;margin-left:22px;margin-right:0}.hd-en .langsw .ls-on,.hd-en .langsw .ls-off{height:44px;padding:0 14px;font-size:14.5px;letter-spacing:.02em}.hd-en .langsw .lf{display:inline}.hd-en .langsw .lsh{display:none}.hd-en .mbtn{display:none}}
/* Mobile: the pill does not fit beside Menu without crowding the name, so it stays stacked above Menu (Juan's fallback). */
@media(max-width:959px){.hd-en .hd{position:relative}.hd-en .langsw{position:absolute;top:6px;right:12px;margin:0}.hd-en .mbtn{align-self:flex-start;margin-top:40px}}
@media(max-width:370px){.hd-en .brand{padding-right:96px}}
@media(max-width:959px){.hd-en~main [id],main [id]{scroll-margin-top:136px}}
/* Route B honeypot (hidden from people; bots fill it and Netlify rejects the submission) */
.hp{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
/* Tool 2 payment calculator (Oct 29, 2026) */
form.paycalc{background:#fff;border:1px solid var(--line);border-radius:5px;padding:22px;display:grid;gap:18px}
@media(min-width:860px){form.paycalc{grid-template-columns:1.25fr 1fr;align-items:start}.presult{position:sticky;top:120px}}
.pinputs label{display:flex;flex-direction:column;font-size:14px;font-weight:600;gap:6px;margin-top:10px}
.pin{display:flex;align-items:center;border:1px solid #ccc;border-radius:4px;background:#fff}.pin:focus-within{outline:2px solid var(--accent)}
.pfx{padding:0 4px 0 12px;color:var(--muted);font-weight:400}.pin input{font:inherit;font-weight:400;font-size:17px;padding:12px 12px 12px 4px;border:0;width:100%;min-width:0;background:transparent;outline:0}
.pinputs select{font:inherit;font-weight:400;font-size:17px;padding:12px;border:1px solid #ccc;border-radius:4px;background:#fff;width:100%}
.phint{font-size:12.5px;font-weight:400;color:var(--muted)}
.pdown{border:0;padding:0;margin:10px 0 0}.pdown legend{font-size:14px;font-weight:700;padding:0}
.presult{background:var(--soft);border-radius:5px;padding:20px}.ptl{margin:0;font-weight:700}.ptotal{font-size:clamp(34px,8vw,46px);font-weight:800;margin:4px 0 10px;line-height:1.1}
.pbreak{margin:0}.prow{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-top:1px solid var(--line)}.prow dt{margin:0}.prow dd{margin:0;font-weight:700}
.pbad .presult{opacity:.45}
.pdisc{font-size:14px;color:var(--muted);margin:14px 0 0}.pnext{margin-top:22px}.pnext h2{font-size:24px;margin:0 0 6px}
.paysend{margin-top:14px}
/* Tool 3 Southern Oregon Property Check (Oct 29, 2026) */
.pcwrap{display:grid;gap:18px}@media(min-width:860px){.pcwrap{grid-template-columns:.9fr 1.3fr;align-items:start}form.pccheck{position:sticky;top:120px}}
form.pccheck{background:#fff;border:1px solid var(--line);border-radius:5px;padding:18px 20px;display:grid;gap:14px}
.pcq{border:0;padding:0;margin:0}.pcq legend{font-weight:700;font-size:15px;padding:0;margin-bottom:6px}
.pcopts{display:flex;flex-wrap:wrap;gap:8px}.pcopt{position:relative}.pcopt input{position:absolute;opacity:0;width:1px;height:1px}
.pcopt span{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border:1.5px solid #c9c3b9;border-radius:22px;font-size:15px;cursor:pointer;background:#fff}
.pcopt input:checked+span{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:700}.pcopt input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}
.pcresult{background:var(--soft);border-radius:5px;padding:18px 20px}.pchead{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap}.pchead h2{margin:0;font-size:22px}
.pclist{list-style:none;margin:10px 0 0;padding:0;counter-reset:pc}.pcitem{background:#fff;border:1px solid var(--line);border-radius:5px;padding:14px 16px;margin:0 0 10px}
.pcitem h3{margin:0 0 6px;font-size:17px}.pcitem p{margin:0 0 6px;font-size:15px}.pcwhere{font-size:14px}.pcwhere ul{margin:4px 0 0;padding-left:18px}.pcwhere li{margin:2px 0}
.pcitem[hidden],.pcwhere li[hidden]{display:none}
.pcprint{margin-top:6px}
@media print{header.site,.mbar,footer,.pnext,form.pccheck,.pcprint,.hero2,.draftbar{display:none!important}.pcwrap{display:block}.pcresult{background:#fff;padding:0}.pcitem{break-inside:avoid}}
.pcwrap~.pdisc,.pcwrap~.pnext{max-width:760px}
/* Social follow links (Juan, Oct 29, 2026 8:11 PM PT). Quiet in the header so Call / Text / Home search stay the main actions. */
.hsoc{display:flex;align-items:center;gap:0}
.hsoc .si{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;color:#333;border-radius:50%;text-decoration:none}
.hsoc .si:hover,.hsoc .si:focus-visible{color:#c8102e;background:#f5f4f1}.hsoc .si:focus-visible{outline:2px solid #c8102e;outline-offset:1px}
.hsoc .sico{width:20px;height:20px}
@media(min-width:960px){.hsoc{order:5;margin-left:0}.hd-en .hsoc{order:5}}
/* Desktop (960px+): header container a little wider and gaps a little tighter so the icons fit on the same row (no wrap, no height change). */
@media(min-width:960px){header.site .wrap.hd{max-width:1280px;column-gap:10px}header.site nav{gap:16px}.hphone{margin-right:12px}.hd-en .langsw{margin-left:8px}header.site nav .btn.sm{padding:9px 12px}}
/* Mobile EN: icons left of the Menu button, under the EN|ES pill, in space the header already had. */
@media(max-width:959px){.hd-en .hsoc{position:absolute;right:70px;bottom:2px}}
@media(max-width:370px){.hd-en .hsoc{right:78px;bottom:9px}}
/* Mobile ES: compact 44px Menú button like English; icons top right, Menú under them; brand keeps its old width. */
@media(max-width:959px){header.site:not(.hd-en) .hd{position:relative}header.site:not(.hd-en) .brand{max-width:calc(100% - 86px)}
 header.site:not(.hd-en) .hsoc{position:absolute;top:0;right:22px}
 header.site:not(.hd-en) .mbtn{position:absolute;bottom:-1px;right:22px;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;width:44px;height:44px;padding:0;font-size:9px;letter-spacing:.04em;line-height:1;gap:2px}
 header.site:not(.hd-en) .mbtn .mic{display:block}}
.fsoc{display:flex;flex-wrap:wrap;gap:4px 18px;margin:6px 0 12px}
footer .fsl{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:#fff;text-decoration:none;font-weight:600}
footer .fsl:hover span{text-decoration:underline}footer .fsl .sico{width:22px;height:22px}
/* 960-1199px (Oct 29, 2026 ~8:35 PM PT): brand block never squeezed under the phone number (brokerage name must stay readable); other header items a bit smaller instead. */
@media(min-width:960px) and (max-width:1199px){header.site .brand{flex-shrink:0}header.site .bname{min-width:168px}header.site .brand .logo{height:52px;width:auto}header.site nav{gap:11px}header.site nav a{font-size:14px}.hphone{font-size:14px;margin-right:8px}header.site nav .btn.sm{padding:9px 10px;font-size:13px}.hd-en .langsw .ls-on,.hd-en .langsw .ls-off{padding:0 10px;font-size:13.5px}header.site .wrap.hd{column-gap:8px;padding-left:16px;padding-right:16px}}@media(min-width:960px) and (max-width:1099px){.hd-en .langsw .lf{display:none}.hd-en .langsw .lsh{display:inline}}
@media(min-width:960px) and (max-width:1199px){header.site .wrap.hd{flex-wrap:nowrap}header.site .mark{font-size:17px}header.site .bname{min-width:132px}header.site .brand{min-width:248px}.hphone,header.site nav a,header.site nav .btn.sm{white-space:nowrap}}@media(min-width:960px) and (max-width:1023px){header.site nav{gap:9px}header.site nav a{font-size:13.5px}.hphone{font-size:13.5px}}
/* Follow section redesign (Juan, Oct 29, 2026 8:43 PM PT): light, card-based, black/white/red brand. Same language scaled down on About + city pages. */
.socsec{background:#f5f4f1;padding:64px 0;border-top:1px solid #e6e3dc;border-bottom:1px solid #e6e3dc}
@media(min-width:960px){.socsec{padding:88px 0}}
.socgrid{display:grid;gap:28px}@media(min-width:960px){.socgrid{grid-template-columns:1.05fr 1fr;align-items:center;gap:64px}}
.sochead{display:flex;gap:18px;align-items:flex-start}
.savatar{flex:0 0 72px;width:72px;height:72px;border-radius:50%;overflow:hidden;box-shadow:0 0 0 3px #fff,0 0 0 4px #c8102e}.savatar img{width:100%;height:100%;object-fit:cover;display:block}
.skick{margin:0 0 6px;font-size:12.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#c8102e}
.socsec h2{margin:0 0 10px;font-size:clamp(26px,4vw,36px);line-height:1.15;color:#202830}
.slede{margin:0;color:#4a4a4a;font-size:16.5px;line-height:1.6;max-width:560px}
.scards{display:grid;gap:14px}@media(min-width:600px){.scards{grid-template-columns:1fr 1fr}}
.scard{display:flex;flex-direction:column;gap:14px;min-height:44px;padding:20px;background:#fff;border:1px solid #e2dfd8;border-radius:10px;text-decoration:none;color:#202830;box-shadow:0 1px 2px rgba(0,0,0,.04),0 8px 24px rgba(0,0,0,.05);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
.scard:hover{transform:translateY(-2px);border-color:#202830;box-shadow:0 2px 4px rgba(0,0,0,.06),0 14px 30px rgba(0,0,0,.10);color:#202830}
.scard:focus-visible{outline:3px solid #c8102e;outline-offset:3px}
@media(prefers-reduced-motion:reduce){.scard{transition:none}.scard:hover{transform:none}}
.scard .scico{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:#202830;color:#fff}
.scard .scico .sico{width:22px;height:22px}
.sctx{display:flex;flex-direction:column;gap:2px}.scnet{font-weight:800;font-size:18px;letter-spacing:.01em}.schandle{color:#555;font-size:14.5px;word-break:break-all}
.scact{display:inline-flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:12px;border-top:1px solid #ecebe6;font-size:13.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#c8102e}
.scard:hover .scact{color:#a30d25}.scard:hover .scarr{transform:translateX(3px)}.scarr{transition:transform .15s ease}
@media(max-width:599px){.scard{flex-direction:row;align-items:center;flex-wrap:wrap;gap:12px 14px;padding:16px}.scard .sctx{flex:1}.scact{flex-basis:100%}}
.socmini{background:#f5f4f1;padding:48px 0;border-top:1px solid #e6e3dc}
.socmini h2{margin:0 0 8px;font-size:26px;color:#202830}.socmini .savatar{flex-basis:56px;width:56px;height:56px}.socmini .slede{font-size:15.5px}
.socstrip{padding:26px 0;border-top:1px solid #e6e3dc;background:#f5f4f1}
.socstrip .socgrid{gap:16px}.sline{margin:0;font-weight:600;font-size:16px;color:#202830}
.scards.sm .scard{flex-direction:row;align-items:center;flex-wrap:nowrap;gap:12px;padding:12px 14px}
.scards.sm .scico{width:40px;height:40px;flex:0 0 40px}.scards.sm .scico .sico{width:20px;height:20px}
.scards.sm .sctx{flex:1;min-width:0}.scards.sm .scnet{font-size:15.5px}.scards.sm .schandle{font-size:13px}
.scards.sm .scard{flex-wrap:wrap}.scards.sm .scact{flex-basis:100%;padding-top:8px;font-size:12.5px}
@media(min-width:960px){.socgrid{grid-template-columns:1fr 1.05fr;gap:56px}}
.scact{letter-spacing:.06em;white-space:nowrap}
@media(max-width:599px){.sochead{flex-direction:column;gap:14px}}
@media(max-width:599px){.scards.sm .scard{padding:12px 14px;gap:8px 12px}.scards.sm .scico{width:40px;height:40px;flex-basis:40px}.scards.sm .scact{padding-top:8px}}
/* Review 4 (Juan, Oct 29, 2026 9:21 PM PT): RE/MAX network block toned down so Juan's trust bar and reviews lead. Same claims, footnotes and labels. */
.netclaim{padding:40px 0}@media(min-width:960px){.netclaim{padding:56px 0}}
.netclaim .h2c{font-size:clamp(22px,3vw,28px);margin-bottom:14px}.netclaim .kicker{font-size:12px}
.netcard{padding:16px 18px;max-width:560px;border-top-width:3px}.netcard .big{font-size:26px;margin:0 0 4px}.netcard p{font-size:15px}
.netchart{max-width:460px}.nbtrack{height:16px}.nbrow{margin:4px 0}
.brandclaims{padding-top:8px}
@media(min-width:960px){.agrid{grid-template-columns:1.6fr 1.3fr}} /* two county groups (Juan, Oct 29, 2026 9:28 PM PT) */
/* Payment calculator: work-backward mode toggle (Oct 30, 2026) */
.paycalc .pmode{border:0;padding:0;margin:0 0 14px}
.paycalc .pmode legend{font-weight:600;margin-bottom:6px}
.paycalc .pmopts{display:flex;gap:8px;flex-wrap:wrap}
.paycalc .pmopt{flex:1 1 200px;display:flex;align-items:center;gap:8px;min-height:44px;padding:8px 12px;border:1px solid #d9d5cc;border-radius:10px;cursor:pointer;font-weight:600;margin:0}
.paycalc .pmopt input{width:18px;height:18px;margin:0;accent-color:#202830}
.paycalc .pmopt:has(input:checked){border-color:#202830;background:#f5f4f1}
.paycalc .pbmo{margin:4px 0 10px;font-size:1.05rem}
.paycalc .passume{margin-top:8px}
[data-mode][hidden]{display:none!important}
.paycalc .pmopt{display:flex!important;flex-direction:row!important;justify-content:flex-start;text-align:left}.paycalc .pmopt input{flex:0 0 18px;width:18px!important;min-height:0!important;padding:0!important}
/* Search by property type band (Oct 30, 2026): compact, under the Search homes band */
.ptband{padding:22px 0 26px;background:#f5f4f1;border-bottom:1px solid #e3e8ee}
.ptband h2{font-size:1.15rem;margin:0 0 12px;text-align:center}
.ptband .ptbtns{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.ptband .ptbtn{display:inline-flex;align-items:center;min-height:44px;padding:8px 16px;border:1px solid #202830;border-radius:999px;color:#202830;background:#fff;font-weight:600;text-decoration:none;font-size:.95rem}
.ptband .ptbtn:hover,.ptband .ptbtn:focus-visible{background:#202830;color:#fff}
.ptband p{text-align:center;margin:10px 0 0}
@media (max-width:600px){.ptband{padding:16px 0 18px}.ptband .ptbtns{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;padding:2px 2px 8px;margin:0 -4px}.ptband .ptbtn{flex:0 0 auto;white-space:nowrap;scroll-snap-align:start;font-size:.92rem}}
.paycalc .psee{margin:12px 0 0}

/* Color refinement (Juan, Oct 30, 2026 6:20 AM PT): charcoal #202830, warm gray #f5f4f1, deep red #c8102e used selectively.
   Red stays on primary contact CTAs (.btn.red, Call/Text/Send), small kickers, focus rings, review stars and carousel dots.
   Decorative lines, headings and secondary buttons are charcoal. RE/MAX logos/brand marks are untouched. */
:root{--charcoal:#202830;--warmgray:#f5f4f1;--red:#c8102e}
.path:nth-child(2),.svc{border-top-color:var(--charcoal)}
.cform,.netcard,.rv{border-top-color:var(--charcoal)}
.types li{border-top-color:#d9d5cc}
.bccard{border-left-color:var(--charcoal)}
.acounty,details.agroup summary.acounty,details.agroup[open] summary,details.faq[open] summary{color:var(--charcoal)}
.ptag,.scact{color:var(--charcoal)}.scard:hover .scact{color:var(--red)}
.hsoc .si:hover,.hsoc .si:focus-visible{color:var(--charcoal)}
.placeholder,.rc-empty{border-color:#b9b0a2}
nav a[aria-current]{border-bottom-color:var(--charcoal)}
/* Primary contact CTAs in red: Text Juan, Send/Send to Juan, key Ask buttons */
form.lead button[type=submit].btn,a.btn[data-pay-sms],.pnext a.btn[href^="sms:"],.textinvite a.btn,a.btn.ask-cta{background:var(--red);border-color:var(--red);color:#fff}
form.lead button[type=submit].btn:hover,a.btn[data-pay-sms]:hover{background:#a30d25;border-color:#a30d25}
/* Tighter pale sections (city pages felt empty) */
.soft,.why,.famsec,.socmini,.socstrip{padding-top:44px;padding-bottom:44px}@media(min-width:960px){.soft,.why,.famsec{padding-top:64px;padding-bottom:64px}}
.areachips{justify-content:center;max-width:820px;margin:0 auto 14px}

/* BoldTrail search embed (Oct 30, 2026) */
.idxsec{padding:28px 0 8px}.idxcard{max-width:420px;margin:0 auto;background:#fff;border:1px solid #e3e1dc;border-top:3px solid #202830;border-radius:6px;padding:22px 16px 18px;text-align:center}.idxcard .h2c{margin:0 0 6px;font-size:1.45rem}.idxcard p{margin:0 0 14px}.idxframe{display:block;margin:0 auto;width:280px;max-width:100%;height:680px;border:0}
/* Spanish pages use the same EN | ES pill (Juan, Oct 30, 2026 3:39 PM PT): EN segment on the left (link), ES on the right (active). */
.hd-es .langsw .ls-off.ls-first{border-radius:999px 0 0 999px;border-left:1.5px solid #202830;border-right:0}
.hd-es .langsw .ls-on.ls-last{border-radius:0 999px 999px 0;border-right:1.5px solid #202830;border-left:0}
/* Spanish-only footer note (principal broker to review) */
footer.site .esdisc{display:block;padding-top:16px;margin-top:22px;border-top:1px solid rgba(255,255,255,.14)}
footer.site .esdisc p{margin:0;max-width:880px;line-height:1.5}
/* ES desktop header: the Spanish menu words are longer; tighten the ES menu so the header keeps the English height and pill position (Oct 30, 2026). */
@media(min-width:960px){.hd-es .bname .brok{white-space:nowrap;letter-spacing:.045em}header.site.hd-es nav{gap:11px}header.site.hd-es nav a{font-size:14px}header.site.hd-es nav .btn.sm{padding:9px 10px;letter-spacing:.02em}}
@media(min-width:960px) and (max-width:1199px){header.site.hd-es nav{gap:8px}header.site.hd-es nav a{font-size:13px}header.site.hd-es nav .btn.sm{font-size:12px;padding:8px 8px}.hd-es .hphone{font-size:13px;margin-right:4px}}

@media(min-width:960px) and (max-width:1149px){.hd-es .brand{min-height:64px}}
@media(min-width:960px) and (max-width:1023px){header.site.hd-es nav{gap:6px}header.site.hd-es nav a{font-size:12.5px}.hd-es .hphone{font-size:12.5px}}
@media(min-width:1200px) and (max-width:1279px){.hd-es .brand{min-height:67px}}
@media(min-width:960px) and (max-width:1199px){.hd-es .bname .brok{white-space:normal}}
@media(max-width:370px){.hd-es .bname .brok{letter-spacing:.03em}.hd-es .brand{padding-right:104px}}
@media(max-width:370px){.hd-es .brand .bname .brok{font-size:10.5px;letter-spacing:.02em}}
@media(max-width:370px){.hd-es .brand .bname .brok{max-width:76px}}

/* Oct 30, 2026: About photos (Juan 6:23 PM PT swap): 100% Club photo in the intro, headshot after the story */
picture.award{display:block;border-radius:10px;overflow:hidden;box-shadow:0 18px 40px rgba(0,0,0,.18);width:100%}picture.award img{width:100%;height:auto;display:block}
picture.award.intro img{aspect-ratio:1400/1226;object-fit:cover;object-position:50% 40%}
/* Oct 30, 2026 6:32 PM PT: About Me first on /about/ + /es/sobre-mi/ */
.abouttop{padding:24px 0 44px}@media(min-width:960px){.abouttop{padding:40px 0 64px}}.abouttop .eyebrow{margin-bottom:8px}.abouttop h1{font-size:clamp(28px,3.4vw,40px);margin-bottom:6px}.abouttop .lede{font-size:16px;margin:0 0 20px}@media(min-width:960px){.abouttop .lede{margin-bottom:32px}}
/* Oct 30, 2026 6:48 PM PT: home About Me section (award photo + intro) */
.aboutme{background:#f5f4f1}.aboutme .btn{margin-top:10px}
