/* =========================================================================
   You Decide Realty — Buy / Sell / Neighborhood guides
   Shared stylesheet for pages generated by _ydr/area-build/build.py
   Brand: Midnight Navy #0D1B2A · Champagne Gold #C9A84C · Warm White #F5F0E8
   Fonts: Cormorant Garamond (display) · DM Sans (body) · DM Mono (labels)
   No border radius anywhere.
   ========================================================================= */
:root{
  --navy:#0D1B2A; --navy-2:#13263a; --gold:#C9A84C; --gold-dk:#8a6d24;
  --cream:#F5F0E8; --fog:#E8E4DC; --white:#fff; --ink:#142231; --ink-soft:#4b5866;
  --display:'Cormorant Garamond',Georgia,serif; --body:'DM Sans',Arial,sans-serif; --mono:'DM Mono',ui-monospace,monospace;
}
*{box-sizing:border-box;border-radius:0}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font:17px/1.7 var(--body)}
img{max-width:100%;display:block}
a{color:var(--gold-dk);text-underline-offset:3px}
.wrap{max-width:1160px;margin:0 auto;padding:0 24px}
.narrow{max-width:860px}
.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;background:#fff;padding:8px 12px;z-index:99}

/* ---------- Header ---------- */
.a-header{background:var(--navy);position:sticky;top:0;z-index:50;border-bottom:1px solid rgba(201,168,76,.18)}
.a-nav{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:72px}
.a-brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--cream)}
.a-brand .mark{font:500 30px/1 var(--display);letter-spacing:.06em}
.a-brand .rule{width:1px;height:30px;background:var(--gold);opacity:.7}
.a-brand .word{font:500 10.5px/1.3 var(--mono);letter-spacing:.24em;text-transform:uppercase;color:var(--gold)}
.a-links{display:flex;align-items:center;gap:26px;list-style:none;margin:0;padding:0}
.a-links>li{position:relative}
.a-links a,.a-links button{color:var(--cream);text-decoration:none;font:500 13px var(--body);letter-spacing:.06em;background:none;border:0;cursor:pointer;padding:8px 0}
.a-links a:hover,.a-links button:hover,.a-links a[aria-current]{color:var(--gold)}
.a-drop{display:none;position:absolute;top:100%;left:-16px;min-width:230px;background:var(--navy);border:1px solid rgba(201,168,76,.25);padding:10px 0;list-style:none;margin:0}
.a-drop a{display:block;padding:8px 18px;font-size:13px}
.a-links li:hover>.a-drop,.a-links li:focus-within>.a-drop,.a-links li.open>.a-drop{display:block}
.a-links .a-cta{background:var(--gold);color:var(--navy)!important;padding:11px 18px!important;font-weight:600!important;letter-spacing:.1em!important;text-transform:uppercase;font-size:11.5px!important}
.a-toggle{display:none;background:none;border:1px solid rgba(201,168,76,.5);color:var(--cream);font-size:20px;padding:6px 12px;cursor:pointer}
@media(max-width:1080px){
  .a-toggle{display:block}
  .a-links{display:none;position:absolute;top:72px;left:0;right:0;background:var(--navy);flex-direction:column;align-items:stretch;gap:0;padding:8px 24px 20px;border-bottom:1px solid rgba(201,168,76,.25);max-height:calc(100vh - 72px);overflow:auto}
  .a-links.open{display:flex}
  .a-links>li>a,.a-links>li>button{display:block;padding:12px 0;width:100%;text-align:left;border-bottom:1px solid rgba(255,255,255,.07)}
  .a-drop{position:static;border:0;padding:0 0 8px 14px;display:none}
  .a-links li.open>.a-drop{display:block}
  .a-links li:hover>.a-drop{display:none}.a-links li.open:hover>.a-drop{display:block}
  .a-links .a-cta{margin-top:12px;text-align:center!important}
}

/* ---------- Breadcrumb + hero ---------- */
.crumbs{font:12px var(--mono);letter-spacing:.08em;color:rgba(245,240,232,.6);padding-top:26px}
.crumbs a{color:rgba(245,240,232,.75);text-decoration:none}.crumbs a:hover{color:var(--gold)}
.a-hero{background:linear-gradient(160deg,#08121c 0%,var(--navy) 55%,var(--navy-2) 100%);color:var(--cream);padding:0 0 64px;position:relative;overflow:hidden}
.a-hero:after{content:"";position:absolute;right:-120px;top:-120px;width:420px;height:420px;border:1px solid rgba(201,168,76,.14);transform:rotate(45deg)}
.eyebrow{font:500 12px var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin:28px 0 14px}
.a-hero h1{font:400 clamp(40px,6vw,74px)/1.02 var(--display);margin:0 0 22px;max-width:17ch;letter-spacing:-.01em}
.a-hero h1 em{color:var(--gold);font-style:italic}
.a-hero .lede{font-size:clamp(17px,2vw,20px);color:rgba(245,240,232,.78);max-width:62ch;margin:0 0 30px;font-weight:300}
.btns{display:flex;flex-wrap:wrap;gap:12px}
.btn{display:inline-block;text-decoration:none;font:600 12px var(--body);letter-spacing:.14em;text-transform:uppercase;padding:16px 26px;border:1px solid var(--gold);cursor:pointer}
.btn-gold{background:var(--gold);color:var(--navy)}.btn-gold:hover{background:#d8b965}
.btn-ghost{color:var(--cream)}.btn-ghost:hover{background:rgba(201,168,76,.12)}
.btn-navy{background:var(--navy);color:var(--cream);border-color:var(--navy)}
.verified{display:inline-block;margin-top:26px;font:12px var(--mono);letter-spacing:.06em;color:rgba(245,240,232,.62);border:1px solid rgba(201,168,76,.3);padding:6px 12px}

/* ---------- Facts strip ---------- */
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:1px;background:rgba(13,27,42,.12);border:1px solid rgba(13,27,42,.12);margin:-34px auto 0;position:relative;z-index:2;max-width:1112px}
.fact{background:var(--white);padding:20px 22px}
.fact .k{font:500 11px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--gold-dk);margin:0 0 6px}
.fact .v{font:500 21px/1.25 var(--display);color:var(--navy);margin:0}
.fact .s{font-size:12px;color:var(--ink-soft);margin:4px 0 0;line-height:1.4}

/* ---------- Body ---------- */
.sec{padding:64px 0}
.sec.white{background:var(--white)}
.sec.fog{background:var(--fog)}
.sec.navy{background:var(--navy);color:var(--cream)}
.sec.navy h2{color:var(--cream)}.sec.navy p{color:rgba(245,240,232,.8)}
h2{font:500 clamp(30px,3.6vw,44px)/1.1 var(--display);color:var(--navy);margin:0 0 18px}
h3{font:600 20px/1.3 var(--body);color:var(--navy);margin:28px 0 8px}
.kicker{font:500 11.5px var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--gold-dk);margin:0 0 10px}
.sec.navy .kicker{color:var(--gold)}
p{margin:0 0 16px}
.answer{border-left:4px solid var(--gold);background:var(--white);padding:22px 26px;margin:0 0 8px;font-size:18px}
.answer strong:first-child{font:500 11.5px var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--gold-dk);display:block;margin-bottom:6px}
.note{border-left:3px solid var(--navy);background:rgba(201,168,76,.1);padding:16px 20px;margin:20px 0;font-size:15.5px}
.cite{font:12px var(--mono);color:var(--ink-soft)}
span.cite{white-space:nowrap}
p.cite{overflow-wrap:anywhere}
ul.ticks{list-style:none;padding:0;margin:0 0 18px}
ul.ticks li{padding:8px 0 8px 30px;position:relative;border-bottom:1px solid rgba(13,27,42,.08)}
ul.ticks li:before{content:"";position:absolute;left:4px;top:17px;width:10px;height:10px;background:var(--gold);transform:rotate(45deg)}
ol.steps{counter-reset:s;list-style:none;padding:0;margin:26px 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,330px),1fr));gap:18px}
ol.steps li{counter-increment:s;background:var(--white);padding:26px 24px;border-top:3px solid var(--gold);position:relative}
ol.steps li:before{content:"0" counter(s);font:500 12px var(--mono);letter-spacing:.2em;color:var(--gold-dk);display:block;margin-bottom:8px}
ol.steps li strong{display:block;font:500 24px/1.2 var(--display);color:var(--navy);margin-bottom:8px}
ol.steps li p{font-size:15px;margin:0;color:var(--ink-soft)}
.sec.white ol.steps li{background:var(--cream)}
.tbl-wrap{overflow-x:auto;margin:18px 0}
table{border-collapse:collapse;width:100%;min-width:560px;background:var(--white);font-size:15px}
th,td{text-align:left;padding:13px 16px;border-bottom:1px solid rgba(13,27,42,.1);vertical-align:top}
th{background:var(--navy);color:var(--cream);font:500 11.5px var(--mono);letter-spacing:.12em;text-transform:uppercase}
.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:28px}
.card{background:var(--white);padding:24px;border:1px solid rgba(13,27,42,.1)}
.sec.white .card{background:var(--cream)}
.card h3{margin-top:0}
.card p{font-size:15.5px;color:var(--ink-soft)}
.tag{display:inline-block;font:500 10.5px var(--mono);letter-spacing:.12em;text-transform:uppercase;background:var(--navy);color:var(--gold);padding:3px 8px;margin:0 6px 6px 0}
.links-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}
.links-grid a{display:block;background:var(--white);border:1px solid rgba(13,27,42,.12);padding:18px 20px;text-decoration:none;color:var(--navy);transition:border-color .2s}
.links-grid a:hover{border-color:var(--gold)}
.links-grid a b{display:block;font:500 22px/1.2 var(--display)}
.links-grid a span{font-size:13.5px;color:var(--ink-soft)}
.sec.navy .links-grid a{background:rgba(255,255,255,.04);border-color:rgba(201,168,76,.25);color:var(--cream)}
.sec.navy .links-grid a span{color:rgba(245,240,232,.65)}

/* ---------- FAQ ---------- */
details.faq{background:var(--white);border:1px solid rgba(13,27,42,.1);margin:0 0 10px}
.sec.white details.faq{background:var(--cream)}
details.faq summary{cursor:pointer;padding:18px 22px;font:600 17px var(--body);color:var(--navy);list-style:none;position:relative;padding-right:50px}
details.faq summary::-webkit-details-marker{display:none}
details.faq summary:after{content:"+";position:absolute;right:22px;top:14px;font:400 26px var(--display);color:var(--gold-dk)}
details.faq[open] summary:after{content:"–"}
details.faq .fb{padding:0 22px 18px;color:var(--ink-soft);font-size:16px}

/* ---------- Lead form ---------- */
.lead{display:grid;grid-template-columns:1fr 1.1fr;gap:48px;align-items:start}
@media(max-width:860px){.lead{grid-template-columns:1fr}}
.lead-card{background:var(--white);padding:30px;border-top:4px solid var(--gold);color:var(--ink)}
.lead-card .m-input,.lead-card input[type=text],.lead-card input[type=email],.lead-card input[type=tel],.lead-card select,.lead-card textarea{width:100%;font:15px var(--body);padding:12px 14px;border:1px solid rgba(13,27,42,.25);background:#fff;margin:0 0 14px;color:var(--ink)}
.lead-card .ydr-field-label{display:block;font:500 11px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);margin:0 0 6px}
.lead-card .ydr-field-label span{text-transform:none;letter-spacing:0}
.lead-card .row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:520px){.lead-card .row2{grid-template-columns:1fr}}
.lead-card .m-btn{width:100%;background:var(--navy);color:var(--cream);border:0;padding:17px;font:600 12.5px var(--body);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;margin-top:6px}
.lead-card .m-btn:hover{background:#1b3149}
.lead-card .ydr-consent{font-size:12.5px;line-height:1.5;color:var(--ink-soft)}
.lead-card .ydr-consent-option{display:flex;gap:10px;align-items:flex-start;margin:0 0 10px}
.lead-card .ydr-consent-option input{margin-top:3px;flex:none}
.lead-card .ydr-collection-notice{margin:0 0 12px}
.lead-card [data-lead-status]{font-size:14px;margin:12px 0 0}
.sec.navy .lead-card p{color:var(--ink-soft)}

/* ---------- Sources / disclaimer / footer ---------- */
.sources{font-size:14px;color:var(--ink-soft)}
.sources ol{padding-left:20px}.sources li{margin:0 0 6px;word-break:break-word}
.disc{font-size:13px;color:var(--ink-soft);border-top:1px solid rgba(13,27,42,.15);padding:22px 0 40px;margin-top:10px}
.a-footer{background:#08121c;color:rgba(245,240,232,.7);padding:56px 0 34px;font-size:13.5px}
.a-footer .fgrid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:32px}
@media(max-width:860px){.a-footer .fgrid{grid-template-columns:1fr 1fr}}
.a-footer h4{font:500 11.5px var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin:0 0 12px}
.a-footer ul{list-style:none;padding:0;margin:0}.a-footer li{margin:0 0 7px}
.a-footer a{color:rgba(245,240,232,.8);text-decoration:none}.a-footer a:hover{color:var(--gold)}
.a-footer .ftag{font:italic 400 26px var(--display);color:var(--cream);margin:0 0 10px}
.a-footer .legal{border-top:1px solid rgba(255,255,255,.1);margin-top:34px;padding-top:20px;font-size:12px;line-height:1.6}
.dock{display:none}
@media(max-width:700px){
  .dock{display:grid;grid-template-columns:1fr 1fr;position:fixed;left:0;right:0;bottom:0;z-index:60}
  .dock a{padding:15px 8px;text-align:center;text-decoration:none;font:600 12px var(--body);letter-spacing:.1em;text-transform:uppercase}
  .dock a:first-child{background:var(--navy);color:var(--cream)}.dock a:last-child{background:var(--gold);color:var(--navy)}
  body{padding-bottom:50px}
  .sec{padding:48px 0}
}
