/* RentIncreaseCheck — theme "Broadsheet".
   A rent fight arrives as a printed notice, so the site is designed like the
   document that answers it: warm ivory paper, oxblood-red ink, brass rules,
   a serif display face for headlines, plain sans for reading and forms.
   Verdict classes keep ONE color each, everywhere they appear:
   exceeds oxblood / coverage brass-brown / notice clay / timing umber /
   facts taupe / legal sage. */
:root{
  --ink:#2B2118; --ink-soft:#5D4C39; --paper:#FAF5EA; --alt:#F2E9D5;
  --card:#FFFDF4; --line:#DCCBA6; --oxblood:#7C2128; --oxblood-deep:#571418;
  --dark:#2A0F0D; --dark2:#3D1512; --dark-text:#F3EAD6; --dark-small:#D9C8A6;
  --brass:#8F6414; --brass-lt:#E9CB8A; --sage:#33512F; --sage-bg:#E2EDDC;
  --exceeds:#6E1420; --exceeds-bg:#F7E1DB; --coverage:#6B4A03; --coverage-bg:#F4E7C6;
  --notice:#7A3416; --notice-bg:#F8E6D2; --timing:#4A3A22; --timing-bg:#EAE0C9;
  --facts:#57492F; --facts-bg:#EFE9DA;
  --serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,"Times New Roman",serif;
  --sans:-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}
*{box-sizing:border-box}
html{font-size:19px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.62;-webkit-text-size-adjust:100%}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}
h1{font-family:var(--serif);font-size:2.1rem;line-height:1.2;margin:0 0 .5em;color:var(--ink);font-weight:700}
h2{font-family:var(--serif);font-size:1.52rem;line-height:1.28;margin:0 0 .5em;color:var(--ink);font-weight:700}
h3{font-size:1.14rem;line-height:1.35;margin:1.05em 0 .35em;color:var(--ink);font-weight:700}
p{margin:0 0 .9em;color:var(--ink)}
li{color:var(--ink)}
ul,ol{margin:.2em 0 1em;padding-left:1.25em}
small{color:var(--ink-soft);font-size:.82rem}
label{color:var(--ink)}
legend{color:var(--ink)}
button{color:var(--ink);font-family:var(--sans)}
a{color:var(--oxblood);text-underline-offset:2px}
button{cursor:pointer}
.eyebrow{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--oxblood);margin:0 0 .55em}
.stamp{display:inline-block;border:1.5px solid var(--brass);color:var(--brass);border-radius:3px;padding:.12em .6em;font-size:.76rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:transparent}
section{padding:46px 0}
section.alt{background:var(--alt)}
section.alt h1,section.alt h2,section.alt h3{color:var(--ink)}
section.alt p,section.alt li{color:var(--ink)}
section.alt label,section.alt legend{color:var(--ink)}
section.alt small{color:var(--ink-soft)}
section.alt button{color:#FFFDF4}
section.dark{background:linear-gradient(165deg,var(--dark2) 0%,var(--dark) 70%)}
section.dark h1,section.dark h2,section.dark h3{color:var(--paper)}
section.dark p,section.dark li{color:var(--dark-text)}
section.dark label,section.dark legend{color:var(--paper)}
section.dark small{color:var(--dark-small)}
section.dark button{color:#FFFDF4}
section.dark a{color:var(--brass-lt)}
section.dark .eyebrow{color:var(--brass-lt)}
section.dark .stamp{border-color:var(--brass-lt);color:var(--brass-lt)}
section.hero{background:var(--paper);border-top:10px solid var(--oxblood);padding:52px 0 46px}
section.hero h1{color:var(--ink)}
section.hero h2,section.hero h3{color:var(--ink)}
section.hero p,section.hero li{color:var(--ink)}
section.hero label,section.hero legend{color:var(--ink)}
section.hero small{color:var(--ink-soft)}
section.hero button{color:#FFFDF4}
section.hero a{color:var(--oxblood)}
section.hero .lead{font-family:var(--serif);font-size:1.22rem;line-height:1.45;color:var(--ink-soft);max-width:44em}
/* light components inside dark sections: scoped rules beat the section rules on specificity */
section.dark .card h3,section.dark .band h3,section.dark .lock-panel h3,section.dark .result h3{color:var(--ink)}
section.dark .card p,section.dark .band p,section.dark .lock-panel p,section.dark .result p{color:var(--ink)}
section.dark .card li,section.dark .band li,section.dark .lock-panel li,section.dark .result li{color:var(--ink)}
section.dark .card small,section.dark .band small,section.dark .lock-panel small,section.dark .result small{color:var(--ink-soft)}
section.dark .card a,section.dark .band a,section.dark .lock-panel a,section.dark .result a{color:var(--oxblood)}
section.hero .card h3,section.hero .band h3,section.hero .lock-panel h3,section.hero .result h3{color:var(--ink)}
section.hero .card p,section.hero .band p,section.hero .lock-panel p,section.hero .result p{color:var(--ink)}
section.hero .card li,section.hero .band li,section.hero .lock-panel li,section.hero .result li{color:var(--ink)}
section.hero .card small,section.hero .band small,section.hero .lock-panel small,section.hero .result small{color:var(--ink-soft)}
/* header / footer — ONE lockup, identical everywhere; footer carries it on a light plate */
header.site{background:var(--paper);border-bottom:1px solid var(--line);padding:13px 0}
header.site .wrap{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 22px}
.brand{font-family:var(--serif);font-size:1.38rem;font-weight:700;letter-spacing:.1px;text-decoration:none;display:inline-flex;align-items:center;gap:.5em}
.brand .mark{flex:none}
.brand .b1{color:var(--ink)} .brand .b2{color:var(--oxblood)} .brand .b3{color:var(--ink)}
nav.main{display:flex;flex-wrap:wrap;gap:4px 20px}
nav.main a{color:var(--ink);text-decoration:none;font-weight:600;font-size:.94rem}
nav.main a:hover{color:var(--oxblood);text-decoration:underline}
footer.site{background:linear-gradient(165deg,var(--dark2) 0%,var(--dark) 70%);padding:38px 0 30px}
footer.site .plate{display:inline-block;background:var(--paper);border-radius:8px;padding:10px 14px;margin-bottom:14px}
footer.site p{color:var(--dark-text);font-size:.92rem}
footer.site small{color:var(--dark-small)}
footer.site a{color:var(--brass-lt)}
footer.site .flinks{display:flex;flex-wrap:wrap;gap:4px 20px;margin:10px 0 14px}
footer.site .flinks a{font-weight:600;text-decoration:none}
footer.site .flinks a:hover{text-decoration:underline}
/* buttons */
.btn{display:inline-block;background:var(--oxblood);color:#FFFDF4;border:none;border-radius:6px;padding:.72em 1.35em;font-size:1rem;font-weight:700;text-decoration:none;font-family:var(--sans)}
.btn:hover{background:var(--oxblood-deep)}
.btn.ghost{background:transparent;color:var(--oxblood);border:2px solid var(--oxblood)}
.btn.ghost:hover{background:var(--oxblood);color:#FFFDF4}
section.dark .btn{color:#FFFDF4}
/* button labels — FULL-CASCADE GUARD (2026-10-25 fix for the brick-on-brick hole).
   The bare .btn rule is only (0,1,0): generic and scoped LINK rules beat it —
   section.hero a (0,1,2) painted hero/band/guide CTA labels oxblood on the
   oxblood button (1:1, invisible), and section.dark .card/.band/.lock-panel/
   .result a (0,2,2) beat section.dark .btn (0,2,1) the same way. The scoped
   rules below sit strictly above every link rule that can reach a button, in
   every section flavor and light component, so a filled button's label always
   resolves to paper. The seal audit now computes this from the full cascade. */
section.hero a.btn,section.hero button.btn,
section.dark a.btn,section.dark button.btn,
section.alt a.btn,section.alt button.btn,
section .band .btn,section .card .btn,section .result .btn,
section .lock-panel .btn,section .notice .btn,
footer.site .btn{color:#FFFDF4}
section.dark .band .btn,section.dark .card .btn,section.dark .result .btn,section.dark .lock-panel .btn,
section.hero .band .btn,section.hero .card .btn,section.hero .result .btn,section.hero .lock-panel .btn{color:#FFFDF4}
/* ghost buttons keep their outline look: oxblood label on light grounds, paper on dark */
section a.btn.ghost,section button.btn.ghost,
section .band .btn.ghost,section .card .btn.ghost,section .result .btn.ghost,
section .lock-panel .btn.ghost,section .notice .btn.ghost{color:var(--oxblood)}
section.dark a.btn.ghost,section.dark button.btn.ghost,
section.dark .band .btn.ghost,section.dark .card .btn.ghost,
section.dark .result .btn.ghost,section.dark .lock-panel .btn.ghost{color:#FFFDF4}
/* the kit band — named, priced, one button; never inside the checker flow */
.band{background:var(--card);border:1px solid var(--line);border-top:6px solid var(--oxblood);border-radius:10px;padding:26px 28px;margin:26px 0;box-shadow:0 2px 10px rgba(43,33,24,.06)}
.band h3{font-family:var(--serif);font-size:1.34rem;margin:.1em 0 .35em;color:var(--ink)}
.band p{color:var(--ink)}
.band .price{font-family:var(--serif);font-size:1.5rem;font-weight:700;color:var(--oxblood)}
.band ul{margin:.3em 0 1em}
.band li{color:var(--ink)}
.band small{color:var(--ink-soft)}
/* cards, tables, faq, notices */
.card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:22px 24px;margin:0 0 18px}
.card h3{margin-top:.2em;color:var(--ink)}
.card p,.card li{color:var(--ink)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px}
.tablewrap{overflow-x:auto;border:1px solid var(--line);border-radius:10px;margin:0 0 18px;background:var(--card)}
table{border-collapse:collapse;width:100%;font-size:.92rem}
th,td{padding:.55em .8em;text-align:left;border-bottom:1px solid var(--line);color:var(--ink)}
th{font-family:var(--serif);background:var(--alt);color:var(--ink)}
.notice{background:var(--card);border-left:6px solid var(--brass);border-radius:6px;padding:16px 20px;margin:0 0 18px}
.notice p{color:var(--ink)}
.faq{border-top:1px solid var(--line);padding:14px 0}
.faq h3{margin-top:0}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px}
.step{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:20px}
.step .num{font-family:var(--serif);font-size:1.6rem;color:var(--oxblood);font-weight:700}
.step h3{margin-top:.15em}
.lock-panel{border:1.5px dashed var(--brass);border-radius:10px;padding:18px 22px;background:var(--card);margin:0 0 16px}
.lock-panel h3{color:var(--ink);margin-top:.1em}
.lock-panel p,.lock-panel li{color:var(--ink)}
.lock-panel .incl{font-weight:700;color:var(--oxblood)}
/* checker tool */
form.tool{background:var(--card);border:1px solid var(--line);border-top:6px solid var(--oxblood);border-radius:10px;padding:26px 28px;color:var(--ink)}
form.tool fieldset{border:1px solid var(--line);border-radius:8px;margin:0 0 18px;padding:16px 18px}
form.tool legend{font-family:var(--serif);font-weight:700;color:var(--ink);padding:0 .4em}
form.tool label{display:block;font-weight:600;color:var(--ink);margin:.65em 0 .25em;font-size:.95rem}
form.tool label.radio,form.tool .checks label{font-weight:500}
form.tool .help,form.tool small{color:var(--ink-soft);font-size:.83rem;display:block;margin-top:.2em}
form.tool input,form.tool select{width:100%;padding:.55em .7em;font-size:1rem;border:1.5px solid var(--line);border-radius:6px;background:#FFF;color:var(--ink);font-family:var(--sans)}
form.tool input:focus,form.tool select:focus{outline:2px solid var(--brass);outline-offset:1px}
form.tool .row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
form.tool button{color:#FFFDF4}
section.hero form.tool label,section.hero form.tool legend{color:var(--ink)}
section.hero form.tool small{color:var(--ink-soft)}
section.dark form.tool label,section.dark form.tool legend{color:var(--ink)}
section.dark form.tool small{color:var(--ink-soft)}
/* injected verdict panel */
.result{margin-top:24px;border:1px solid var(--line);border-radius:10px;background:var(--card);padding:24px 26px;color:var(--ink)}
.result h3{font-family:var(--serif);font-size:1.36rem;margin:.35em 0 .4em;color:var(--ink)}
.result p,.result li{color:var(--ink)}
.result small{color:var(--ink-soft)}
.chip{display:inline-block;border-radius:999px;padding:.18em .8em;font-size:.78rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.chip.exceeds{background:var(--exceeds-bg);color:var(--exceeds)}
.chip.coverage{background:var(--coverage-bg);color:var(--coverage)}
.chip.notice{background:var(--notice-bg);color:var(--notice)}
.chip.timing{background:var(--timing-bg);color:var(--timing)}
.chip.facts{background:var(--facts-bg);color:var(--facts)}
.chip.legal{background:var(--sage-bg);color:var(--sage)}
.result .mathbox{background:var(--alt);border-radius:8px;padding:14px 18px;margin:12px 0}
.result .mathbox p{margin:.25em 0}
/* kit page */
.kitdoc h2{border-top:3px solid var(--oxblood);padding-top:.6em;margin-top:1.4em}
.letterbox{background:#FFF;border:1.5px solid var(--line);border-radius:8px;padding:22px 26px;margin:14px 0;font-size:.95rem}
.letterbox p{color:var(--ink)}
.ledger td,.ledger th{text-align:right}
.ledger td:first-child,.ledger th:first-child{text-align:left}
@media(max-width:760px){
  html{font-size:18px}
  header.site .wrap{flex-direction:column;align-items:stretch;gap:6px}
  nav.main{display:flex;width:100%;gap:2px 16px;padding-top:4px;border-top:1px solid var(--line)}
  nav.main a{padding:6px 0}
  section{padding:34px 0}
  section.hero{padding:38px 0 34px}
  h1{font-size:1.78rem}
  form.tool .row{grid-template-columns:1fr}
  .band,form.tool,.result{padding:20px 18px}
}
@media print{
  header.site,footer.site,nav.main,.band .btn{display:none}
  body{background:#FFF}
}
