/* Shared chrome for PhysicianMortgage.ca sub-pages. Tokens mirror the main page. */
:root{--bg:#f9f7f5;--bg2:#efebe7;--card:#fffefd;--line:#e0d9d2;--line2:#bfb5ab;--text:#1c1614;--muted:#4e463f;--dim:#6d6459;--primary:#7d2b3a;--primary-ink:#fff;--accent:#6b6152;--radius:13px}
:root[data-theme="dark"]{--bg:#14100f;--bg2:#1a1514;--card:#211b1a;--line:#332b28;--line2:#4a3f3a;--text:#f3ede9;--muted:#c2b4ad;--dim:#968780;--primary:#e59aa6;--primary-ink:#2e0e15;--accent:#cfc3ae}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--bg);color:var(--text);font:400 16px/1.65 'Plus Jakarta Sans',system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit}
.wrap{max-width:820px;margin:0 auto;padding:0 1.4rem}
h1,h2,h3{font-family:'Playfair Display',Georgia,serif;line-height:1.15;font-weight:700}
h1{font-size:clamp(1.9rem,4.4vw,2.7rem);margin:.2rem 0 .8rem}
h2{font-size:1.42rem;margin:2.2rem 0 .7rem}
h3{font-size:1.05rem;margin:0 0 .35rem}
p{margin:0 0 1rem;color:var(--muted)}
p.lede{font-size:1.08rem;color:var(--muted)}
.kicker{font:700 .74rem 'Plus Jakarta Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--primary);margin-bottom:.5rem}
nav.top{border-bottom:1px solid var(--line);background:var(--card)}
nav.top .wrap{display:flex;align-items:center;justify-content:space-between;height:62px;max-width:1100px}
nav.top a.brand{display:inline-flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--text);white-space:nowrap}
nav.top a.brand .tile{width:32px;height:32px;border-radius:9px;background:var(--primary);color:var(--primary-ink);display:flex;align-items:center;justify-content:center;font:700 .95rem 'Playfair Display',Georgia,serif;letter-spacing:-.5px;flex:none}
nav.top a.brand .wm{font:700 1.06rem 'Plus Jakarta Sans',system-ui,sans-serif;letter-spacing:-.02em}
nav.top a.brand .wm i{font-style:normal;color:var(--dim);font-weight:500}
nav.top .tel{font-weight:700;font-size:.9rem;color:var(--primary);text-decoration:none}
nav.top .nav-r{display:flex;align-items:center;gap:.7rem}
.mnu-btn{background:none;border:1px solid var(--line2);border-radius:8px;width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;color:var(--muted);cursor:pointer;flex:none}
.mnu-btn:hover{color:var(--text);border-color:var(--primary)}
.mnu-btn svg{width:19px;height:19px}
/* Site menu — every real page, reachable from every page. Without this the
   stage pages were dead ends: brand + phone number and nothing else. */
.mnu{position:fixed;inset:0;z-index:200;display:none}
.mnu.open{display:block}
.mnu-back{position:absolute;inset:0;background:rgba(0,0,0,.5)}
.mnu-panel{position:absolute;top:0;right:0;height:100%;width:min(340px,88vw);background:var(--card);border-left:1px solid var(--line2);padding:1rem 1.25rem 2rem;overflow-y:auto;display:flex;flex-direction:column;box-shadow:-18px 0 50px rgba(0,0,0,.28)}
.mnu-x{align-self:flex-end;background:none;border:0;color:var(--muted);font-size:1.9rem;line-height:1;cursor:pointer;padding:.1rem .3rem;margin-bottom:.4rem}
.mnu-h{font:700 .7rem 'Plus Jakarta Sans',system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--dim);margin:1.15rem 0 .3rem}
.mnu-h:first-of-type{margin-top:.2rem}
.mnu-panel a{display:block;padding:.62rem 0;color:var(--text);font-weight:600;font-size:.97rem;border-bottom:1px solid var(--line);text-decoration:none}
.mnu-panel a:hover{color:var(--primary)}
.mnu-panel a span{display:block;font-weight:400;font-size:.8rem;color:var(--muted);margin-top:.1rem}
main{padding:2.6rem 0 3rem}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1.2rem 1.3rem;margin:0 0 1rem}
.btn{display:inline-block;background:var(--primary);color:var(--primary-ink);text-decoration:none;font-weight:700;font-size:.94rem;padding:.8rem 1.4rem;border-radius:10px}
.btn.ghost{background:transparent;color:var(--text);border:1px solid var(--line2)}
.btns{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.2rem 0}
ul{margin:0 0 1rem 1.1rem;color:var(--muted)}li{margin:.3rem 0}
table{width:100%;border-collapse:collapse;font-size:.92rem;margin-bottom:1rem}
th,td{text-align:left;padding:.6rem .5rem;border-bottom:1px solid var(--line)}
th{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
td b{color:var(--text)}
.note{font-size:.84rem;color:var(--dim);line-height:1.55}
footer{border-top:1px solid var(--line);padding:1.6rem 0 2.4rem;margin-top:2.4rem}
footer p{font-size:.82rem;color:var(--dim)}
