/* Shared styles for ChaseStewartAZ.com guide pages. Same tokens as the homepage. */
:root{
  --stone:#EEF0E9;--stone-2:#E2E6DC;--ink:#16231C;--muted:#4F5E55;
  --saguaro:#1E3A2D;--on-saguaro:#EEF0E9;--on-saguaro-muted:#B5C2B8;
  --brittle:#E1AE22;--brittle-ink:#2A2104;--line:#C9D0C3;--card:#F7F8F4;--focus:#C48D00;
  --link:#1E3A2D;
  --display:"Bricolage Grotesque","Avenir Next","Segoe UI",system-ui,sans-serif;
  --body:"Public Sans","Helvetica Neue",Arial,system-ui,sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,"SFMono-Regular",Menlo,monospace;
  --max:1160px;
  color-scheme:light;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --stone:#101814;--stone-2:#16211B;--ink:#E8ECE5;--muted:#A3B0A7;
  --saguaro:#1A3127;--on-saguaro:#EEF0E9;--on-saguaro-muted:#A9B7AD;
  --brittle:#E8B83A;--brittle-ink:#221A02;--line:#2A3830;--card:#18241E;--focus:#F0C552;--link:#E8B83A;
  color-scheme:dark}}
:root[data-theme="dark"]{
  --stone:#101814;--stone-2:#16211B;--ink:#E8ECE5;--muted:#A3B0A7;
  --saguaro:#1A3127;--on-saguaro:#EEF0E9;--on-saguaro-muted:#A9B7AD;
  --brittle:#E8B83A;--brittle-ink:#221A02;--line:#2A3830;--card:#18241E;--focus:#F0C552;--link:#E8B83A;
  color-scheme:dark}
*{box-sizing:border-box}
html{scroll-behavior:smooth;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*{transition:none!important}}
body{margin:0;background:var(--stone);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
img{max-width:100%}
[hidden]{display:none!important}
a{color:var(--link);text-underline-offset:3px}
:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:4px}
h1,h2,h3{font-family:var(--display);line-height:1.1;letter-spacing:-0.02em;text-wrap:balance;margin:0}
.wrap{max-width:var(--max);margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}

header.site{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:color-mix(in srgb,var(--stone) 92%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
header.site .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:14px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink)}
.brand b{font-family:var(--display);font-weight:800;font-size:20px;letter-spacing:-0.02em}
.brand small{display:block;font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:2px}
nav.main{display:flex;gap:22px;align-items:center;font-size:15px;font-weight:500}
nav.main a{text-decoration:none;color:var(--muted)}
nav.main a:hover{color:var(--ink)}
nav.main a.btn-yellow,nav.main a.btn-yellow:hover{color:var(--brittle-ink)}
.btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--body);font-weight:600;font-size:15px;padding:12px 18px;border-radius:999px;text-decoration:none;border:1.5px solid transparent;cursor:pointer}
.btn-yellow{background:var(--brittle);color:var(--brittle-ink)}
@media (max-width:860px){nav.main a:not(.btn){display:none}}

.crumbs{font-size:14px;color:var(--muted);padding-block:22px 0}
.crumbs a{color:var(--muted)}
.hero{padding-block:24px 40px;border-bottom:1px solid var(--line)}
.hero h1{font-size:clamp(36px,5.6vw,64px);font-weight:800;max-width:20ch;margin-top:12px}
.answer{font-size:20px;line-height:1.55;max-width:60ch;margin:20px 0 0}
.byline{display:flex;align-items:center;gap:12px;margin-top:24px;font-size:14px;color:var(--muted)}
.byline img{width:44px;height:44px;border-radius:50%;object-fit:cover;object-position:50% 20%}
.byline b{color:var(--ink)}

.layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:56px;padding-block:40px 72px}
.toc{position:sticky;top:calc(env(safe-area-inset-top,0px) + 84px);align-self:start;font-size:14.5px}
.toc ol{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:8px;border-left:2px solid var(--line)}
.toc a{display:block;padding-left:14px;color:var(--muted);text-decoration:none}
.toc a:hover{color:var(--ink)}
@media (max-width:900px){.layout{grid-template-columns:1fr;gap:24px}.toc{position:static}}
article{max-width:68ch;min-width:0}
article h2{font-size:clamp(26px,3.4vw,36px);font-weight:800;margin:48px 0 14px;scroll-margin-top:96px}
article h2:first-child{margin-top:0}
article h3{font-size:21px;font-weight:700;margin:28px 0 8px}
article p{margin:0 0 16px}
article ul,article ol{margin:0 0 18px;padding-left:22px}
article li{margin-bottom:6px}
.callout{background:var(--card);border:1px solid var(--line);border-left:4px solid var(--brittle);border-radius:12px;padding:18px 20px;margin:24px 0}
.callout p:last-child{margin:0}
.steps{list-style:none;padding:0;margin:0 0 18px;counter-reset:s;display:grid;gap:14px}
.steps li{counter-increment:s;display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px;margin:0}
.steps li::before{content:counter(s);font-family:var(--display);font-weight:800;font-size:20px;width:40px;height:40px;border-radius:50%;background:var(--saguaro);color:var(--on-saguaro);display:grid;place-items:center}
.steps b{display:block;font-family:var(--display);font-size:18px}
.table-wrap{overflow-x:auto;margin:0 0 20px;border:1px solid var(--line);border-radius:12px}
table{border-collapse:collapse;width:100%;font-size:15.5px;min-width:520px}
th,td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:top}
th{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);background:var(--card)}
tr:last-child td{border-bottom:0}
td.num{font-variant-numeric:tabular-nums;white-space:nowrap}
.faq details{border-bottom:1px solid var(--line);padding:14px 0}
.faq summary{font-family:var(--display);font-weight:700;font-size:18px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq summary::after{content:"+";font-family:var(--mono);color:var(--muted)}
.faq details[open] summary::after{content:"–"}
.faq details p{margin:10px 0 0}

.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;margin:8px 0 24px}
.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:20px;text-decoration:none;color:var(--ink);display:grid;gap:6px;align-content:start;min-width:0}
.card b{font-family:var(--display);font-size:19px}
.card span{color:var(--muted);font-size:15px}
.card:hover{border-color:var(--ink)}

.signup{background:var(--saguaro);color:var(--on-saguaro);border-radius:18px;padding:28px;margin:40px 0;display:grid;gap:14px}
.signup h2,.signup h3{margin:0;color:var(--on-saguaro)}
.signup p{margin:0;color:var(--on-saguaro-muted)}
.signup form{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end}
.signup label{display:grid;gap:4px;font-size:13px;font-weight:600;color:var(--on-saguaro-muted)}
.signup input{font:400 16px var(--body);padding:12px 14px;border-radius:10px;border:1px solid transparent;background:var(--on-saguaro);color:#16231C;width:100%}
.signup .fine{font-size:12.5px}
.signup .status{font-weight:600;color:var(--brittle)}
@media (max-width:700px){.signup form{grid-template-columns:1fr}}

.next{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:24px;margin-top:40px}
.next a{font-weight:600}
.updated{font-size:14px;color:var(--muted);margin-top:24px}

footer{background:#142019;color:#EEF0E9}
footer .wrap{padding-block:40px;display:flex;flex-wrap:wrap;gap:12px 28px;font-size:13.5px;align-items:center}
footer a{color:#EEF0E9}

/* Forms with an optional address field */
.wide-form{grid-template-columns:1fr 1fr}
.wide-form .wide{grid-column:1 / -1}
.wide-form button{justify-self:start}
@media (max-width:700px){.wide-form{grid-template-columns:1fr}}

/* Market numbers */
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin:8px 0 12px}
.stat{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:20px}
.stat h3{margin:0 0 12px;font-size:19px}
.stat dl{display:grid;grid-template-columns:1fr auto;gap:8px 16px;margin:0;font-size:15.5px}
.stat dt{color:var(--muted)}
.stat dd{margin:0;font-weight:600;font-variant-numeric:tabular-nums;text-align:right}
.src{font-size:13.5px;color:var(--muted)}
.live{background:var(--card);border:1px solid var(--line);border-left:4px solid var(--saguaro);border-radius:12px;padding:16px 20px;margin:24px 0}
.live p{margin:0 0 8px}
.live p:last-child{margin:0}
.live a{font-weight:600}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .live{border-left-color:var(--brittle)}}
:root[data-theme="dark"] .live{border-left-color:var(--brittle)}
