/* ===== Mortgage calculator (DRAFT, used only by /mortgage-calculator.html and /fr/mortgage-calculator.html) =====
   Kept in its own file so site.css (v=16) and the header/social/icon rules are untouched. */
.mc-grid{display:grid;gap:24px;align-items:start}
@media (min-width:960px){.mc-grid{grid-template-columns:1.05fr .95fr;gap:32px}}
.mc-card{background:var(--charcoal);border:1px solid #2C2C2C;border-radius:var(--r);padding:clamp(22px,3vw,36px)}
.mc-card h2{font-weight:400;text-transform:uppercase;font-size:clamp(22px,2.2vw,28px);margin-bottom:6px}
.mc-card .fld:first-of-type{margin-top:18px}
.mc-pair{display:grid;grid-template-columns:1.4fr 1fr;gap:12px}
.mc-affix{position:relative}
.mc-affix .inp{padding-left:34px}
.mc-affix.suf .inp{padding-left:16px;padding-right:38px}
.mc-affix span{position:absolute;top:50%;transform:translateY(-50%);left:16px;color:var(--silver);pointer-events:none;font-size:16px}
.mc-affix.suf span{left:auto;right:16px}
.mc-hint{font-size:12.5px;color:var(--mist);margin:2px 0 0}
.mc-freq{border:0;margin:18px 0 0;padding:0;min-width:0}
.mc-freq legend{font-size:13.5px;font-weight:600;color:#DADADA;padding:0;margin-bottom:8px}
.mc-freq .opts{display:grid;gap:8px}
@media (min-width:520px){.mc-freq .opts{grid-template-columns:repeat(3,1fr)}}
.mc-freq label{display:flex;align-items:center;gap:10px;min-height:48px;padding:10px 14px;border:1px solid #3C3C3C;border-radius:12px;background:#0F0F0F;cursor:pointer;font-size:14.5px;line-height:1.25}
.mc-freq input{width:18px;height:18px;accent-color:var(--gold2);flex:none;margin:0}
.mc-freq label:has(input:checked){border-color:var(--gold2);box-shadow:0 0 0 1px var(--gold2) inset}
.mc-freq label:has(input:focus-visible){outline:3px solid var(--gold2);outline-offset:2px}
.mc-actions{margin-top:20px;display:flex;flex-wrap:wrap;gap:12px}
.mc-actions .btn{min-height:46px;padding:10px 22px;font-size:14.5px}
.mc-res{position:sticky;top:120px}
@media (max-width:959px){.mc-res{position:static}}
.mc-big{margin:18px 0 0;padding:22px;border-radius:var(--r-sm);background:#0F0F0F;border:1px solid #3A3A3A}
.mc-big .k{font:600 12px/1.3 var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--gold2)}
.mc-big .v{display:block;font:300 clamp(38px,6vw,54px)/1.05 var(--display);font-stretch:108%;color:var(--white);margin-top:8px;word-break:break-word}
.mc-big .f{display:block;font-size:13.5px;color:var(--silver);margin-top:6px}
.mc-dl{margin:18px 0 0;display:grid;gap:0}
.mc-dl div{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #2F2F2F}
.mc-dl dt{color:#D0D0D0;font-size:15px}
.mc-dl dd{margin:0;font-weight:600;color:var(--white);text-align:right;white-space:nowrap}
.mc-note{margin:16px 0 0;padding:14px 16px;border-radius:12px;font-size:14px;line-height:1.55}
.mc-note.ins{background:rgba(192,163,91,.1);border:1px solid rgba(192,163,91,.45);color:#E9E1CC}
.mc-note.warn{background:rgba(196,107,107,.12);border:1px solid rgba(196,107,107,.55);color:#F3D2D2}
.mc-note.pay{background:#151515;border:1px solid #333;color:#D8D8D8}
.mc-small{font-size:12.5px;color:var(--mist);margin:16px 0 0;line-height:1.55}
.mc-disc{max-width:860px}
.mc-disc ul{margin:22px 0 0;padding-left:20px;color:#3D3D3D}
.mc-disc li{margin:8px 0}
.mc-how{margin-top:28px;color:#3D3D3D;max-width:760px}
/* v2: Canadian rules additions */
.mc-check{font-size:14px;color:#DADADA;margin-top:18px}
.mc-check + .mc-check{margin-top:12px}
.mc-checkhint{margin:6px 0 0 32px}
.mc-flag{display:inline-block;margin-top:10px;padding:6px 10px;border-radius:999px;background:rgba(196,107,107,.18);border:1px solid rgba(196,107,107,.6);color:#F3D2D2;font-size:12.5px;font-weight:600}
.mc-dl .mc-key dt,.mc-dl .mc-key dd{color:var(--gold2);font-weight:700}
.mc-dl dt{padding-right:4px}
.mc-dl dd{align-self:center}
.mc-sub{margin-top:26px;font:600 13px/1.3 var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--gold2)}
.mc-disc a{color:inherit;text-underline-offset:3px}
.mc-dark ul,.mc-dark .mc-how{color:#D0D0D0}
@media (max-width:480px){.mc-dl div{flex-direction:column;gap:4px}.mc-dl dd{text-align:left;white-space:normal}}