/* ==========================================================================
   GetRentBack.org — stylesheet
   Built on the RRO Guide design system (spec 2026-09-08).
   Tokens, type scale and the six components are taken verbatim from
   RRO_Guide_styling_proof.html. Everything below "SITE LAYER" is the site
   chrome the guide does not have, built from the same eleven tokens.
   ========================================================================== */

:root{--ink:#12232E;--muted:#5A6B77;--line:#8898A4;--rule:#D8DFE4;
--teald:#0E5343;--teal:#146A56;--tealt:#E9F4F0;
--ochrd:#7A5620;--ochr:#9A7433;--cream:#FBF6EC;--panel:#F5F7F8;--pale:#B9C6CE;}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#E8ECEF;font-family:Inter,-apple-system,"Segoe UI",Helvetica,Arial,sans-serif;color:#22323C;}
.page{max-width:860px;margin:0 auto;background:#fff;padding:56px 68px 80px;}

/* ---------- type ---------- */
.kicker{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ochrd);font-weight:600;margin:0 0 10px}
h1{font-size:34px;line-height:1.15;margin:0 0 14px;color:var(--ink);letter-spacing:-.01em}
.rule{height:3px;background:var(--ink);margin:0 0 18px}
.stand{font-size:18px;line-height:1.55;color:var(--muted);margin:0 0 26px;max-width:62ch}
h2{font-size:21px;color:var(--ink);margin:38px 0 12px;padding-left:14px;border-left:4px solid var(--teal);line-height:1.3}
h3{font-size:16px;color:var(--ink);margin:26px 0 8px}
p{font-size:15.5px;line-height:1.68;margin:0 0 14px;max-width:70ch}
ul{margin:0 0 16px;padding-left:0;list-style:none;max-width:70ch}
li{font-size:15.5px;line-height:1.6;margin:0 0 9px;padding-left:20px;position:relative}
li:before{content:"";position:absolute;left:2px;top:.62em;width:6px;height:6px;background:var(--teal);border-radius:1px}
strong{font-weight:650;color:var(--ink)}
em{font-style:italic}
section{margin:0 0 72px}
section:last-child{margin-bottom:0}

/* ---------- the six components ---------- */
.stats{display:flex;gap:12px;margin:0 0 30px;flex-wrap:wrap}
.stat{flex:1 1 180px;border-radius:4px;padding:14px 16px}
.stat b{display:block;font-size:19px;line-height:1.1;margin-bottom:4px}
.stat span{font-size:12px;line-height:1.35;display:block}
.stat.ink{background:var(--ink)}.stat.ink b{color:#fff}.stat.ink span{color:var(--pale)}
.stat.teal{background:var(--tealt)}.stat.teal b{color:var(--teald)}.stat.teal span{color:var(--teald)}
.stat.ochre{background:var(--cream)}.stat.ochre b{color:var(--ochrd)}.stat.ochre span{color:var(--ochrd)}

.cal{border-radius:4px;padding:16px 20px;margin:22px 0;font-size:15px;line-height:1.6;max-width:70ch}
.cal .lead{font-weight:700;display:block;margin-bottom:4px}
.cal.warn{background:var(--cream);border-left:4px solid var(--ochr);color:#42341c}
.cal.warn .lead{color:var(--ochrd)}
.cal.good{background:var(--tealt);border-left:4px solid var(--teal);color:#1b3a32}
.cal.good .lead{color:var(--teald)}
.cal p{font-size:15px;margin:0 0 10px;max-width:none}
.cal p:last-child,.cal ul:last-child{margin-bottom:0}
.cal ul{max-width:none}
.cal li{font-size:15px}

.note{background:var(--panel);border-left:4px solid var(--line);padding:14px 18px;margin:20px 0;
font-size:14px;line-height:1.6;color:var(--muted);max-width:70ch}
.note p{font-size:14px;color:var(--muted);margin:0 0 8px;max-width:none}
.note p:last-child{margin-bottom:0}
.note strong{color:var(--ink)}

blockquote{margin:26px 0 30px;background:var(--cream);border-top:3px solid var(--ochr);padding:24px 28px 20px}
blockquote p{font-size:21px;line-height:1.45;color:var(--ink);margin:0 0 12px;max-width:none;font-weight:500}
cite{font-style:normal;font-size:12.5px;color:var(--ochrd);letter-spacing:.01em}

figure{margin:26px 0 30px}
figure img{width:100%;display:block;border:1px solid var(--rule);border-radius:3px}
figcaption{font-size:12.5px;color:var(--muted);margin-top:8px}

a{color:var(--teald);text-decoration:none;border-bottom:1px solid rgba(20,106,86,.35)}
a:hover{border-bottom-color:var(--teal)}
a:focus-visible{outline:2px solid var(--teal);outline-offset:2px;border-radius:2px}

/* ==========================================================================
   SITE LAYER — chrome the guide does not have. Same eleven tokens only.
   ========================================================================== */

.skip{position:absolute;left:-9999px}
.skip:focus{left:8px;top:8px;z-index:100;background:#fff;color:var(--ink);padding:10px 16px;border-radius:4px;border:0}

/* ---------- header ---------- */
.site-head{background:var(--ink);color:#fff}
.head-in{max-width:1200px;margin:0 auto;padding:0 32px;display:flex;align-items:center;gap:18px;min-height:64px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:10px;color:#fff;border:0;flex:0 0 auto}
.brand:hover{border:0}
.brand svg{width:27px;height:28px;color:#fff;flex:0 0 auto}
.brand .bt{font-size:17px;font-weight:700;letter-spacing:-.01em;line-height:1.05}
.brand .bs{display:block;font-size:10px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--pale);margin-top:2px}

/* ---------- navigation: no JavaScript ---------- */
.nav{margin-left:auto}
.nav ul{list-style:none;margin:0;padding:0;max-width:none}
.nav li{margin:0;padding:0;font-size:13.5px}
.nav li:before{display:none}
.nav > ul{display:flex;gap:0;align-items:center}
.nav a{color:#fff;border:0;display:block;padding:8px 9px;border-radius:4px;font-size:13.5px;white-space:nowrap}
.nav a:hover,.nav a:focus-visible{background:rgba(255,255,255,.12);border:0}
.nav a[aria-current="page"]{background:rgba(255,255,255,.16)}
.nav .cta a{background:var(--teal);color:#fff;margin-left:6px;padding:8px 12px}
.nav .cta a:hover{background:var(--teald)}
.has-menu{position:relative}
.has-menu > a::after{content:"";display:inline-block;margin-left:6px;border:4px solid transparent;border-top-color:var(--pale);transform:translateY(2px)}
.submenu{position:absolute;top:100%;left:0;min-width:250px;background:#fff;border:1px solid var(--rule);
  border-radius:4px;padding:6px;display:none;z-index:40}
.has-menu:hover > .submenu,.has-menu:focus-within > .submenu{display:block}
.submenu a{color:var(--ink);padding:8px 10px;white-space:normal;font-size:14px}
.submenu a:hover,.submenu a:focus-visible{background:var(--panel)}
.submenu .d{display:block;font-size:11.5px;color:var(--muted);margin-top:1px;line-height:1.35}
.navtoggle{display:none}

@media (max-width:1160px){
  .head-in{padding:0 20px;min-height:56px}
  .navtoggle{display:block;margin-left:auto}
  .navtoggle summary{list-style:none;cursor:pointer;color:#fff;font-size:14px;font-weight:600;
    padding:8px 12px;border:1px solid rgba(255,255,255,.35);border-radius:4px}
  .navtoggle summary::-webkit-details-marker{display:none}
  .navtoggle[open] summary{background:rgba(255,255,255,.12)}
  .nav{margin:0;flex:0 0 100%;display:none}
  .navtoggle[open] ~ .nav{display:block;padding:6px 0 18px}
  .nav > ul{flex-direction:column;align-items:stretch;gap:0}
  .nav a{padding:11px 4px;border-radius:0;white-space:normal}
  .nav .cta a{margin-top:10px;border-radius:4px;text-align:center;padding:11px}
  .has-menu > a::after{display:none}
  .submenu{position:static;display:block;border:0;background:transparent;padding:0 0 8px 14px;
    border-left:2px solid rgba(255,255,255,.2);margin:0 0 4px 4px}
  .submenu a{color:var(--pale);font-size:13.5px}
  .submenu a:hover,.submenu a:focus-visible{background:rgba(255,255,255,.1);color:#fff}
  .submenu .d{display:none}
}

/* ---------- footer ---------- */
.site-foot{background:var(--ink);color:var(--pale);font-size:13.5px;line-height:1.6}
.foot-in{max-width:1140px;margin:0 auto;padding:40px 40px 30px}
.foot-grid{display:flex;gap:36px;flex-wrap:wrap}
.foot-col{flex:1 1 170px}
.foot-in h2{font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:#fff;
  margin:0 0 12px;padding:0;border:0;line-height:1.3}
.foot-in ul{margin:0;max-width:none}
.foot-in li{font-size:13.5px;margin:0 0 7px;padding-left:0;line-height:1.5}
.foot-in li:before{display:none}
.foot-in a{color:var(--pale);border-bottom-color:rgba(185,198,206,.3)}
.foot-in a:hover{color:#fff;border-bottom-color:#fff}
.foot-in p{font-size:13.5px;color:var(--pale);max-width:none;line-height:1.6}
.foot-org{display:flex;align-items:center;gap:24px;flex-wrap:wrap;
  border-top:1px solid rgba(255,255,255,.14);margin-top:30px;padding-top:26px}
.fjlogo{display:block;flex:0 0 auto;background:#fff;border-radius:4px;padding:12px 16px;border:0}
.fjlogo:hover{border:0}
.fjlogo img{display:block;width:168px;height:auto}
.foot-org p{margin:0;flex:1 1 320px;max-width:56ch}
.foot-org strong{color:#fff;font-weight:650}
.foot-legal{margin-top:24px;
  display:flex;flex-wrap:wrap;gap:6px 16px;font-size:12.5px}
.foot-note{font-size:12.5px;color:var(--pale);margin-top:14px;max-width:80ch;opacity:.85}

/* ---------- site-only content bits, all from the same tokens ---------- */
.guidebox{display:flex;gap:28px;align-items:flex-start;flex-wrap:wrap;margin:0 0 30px}
.guidecover{flex:0 0 auto;display:block;border:0;line-height:0}
.guidecover:hover{border:0}
.guidecover img{display:block;width:196px;height:auto;border:1px solid var(--rule);border-radius:3px}
.guidecover:hover img,.guidecover:focus-visible img{border-color:var(--teal)}
.guidetext{flex:1 1 300px}
.guidetext h3{margin:0 0 4px}
.guidetext .gsub{font-size:12.5px;color:var(--ochrd);margin:0 0 12px;letter-spacing:.01em}
.guidetext .gnote{font-size:12.5px;color:var(--muted);margin:12px 0 0}
.fieldhint{display:block;font-size:13.5px;color:var(--muted);line-height:1.5;margin:2px 0 6px;max-width:70ch}
.videolink{display:block;position:relative;border:0;line-height:0;border-radius:4px;overflow:hidden}
.videolink:hover{border:0}
.videolink img{display:block;width:100%;height:auto;border:1px solid var(--rule);border-radius:4px}
.vislabel{position:absolute;right:12px;top:12px;display:flex;align-items:center;gap:9px;
  background:rgba(18,35,46,.88);color:#fff;font-size:13px;font-weight:600;line-height:1;
  padding:9px 14px 9px 11px;border-radius:4px;letter-spacing:.01em}
.vislabel:before{content:"";display:block;border-style:solid;border-width:6px 0 6px 10px;
  border-color:transparent transparent transparent #fff}
.videolink:hover .vislabel,.videolink:focus-visible .vislabel{background:var(--teald)}
.tnote{font-size:12.5px;color:var(--muted);line-height:1.4}
.num{text-align:right;white-space:nowrap}
.linklist li{margin:0 0 14px}
.linklist .lsub{display:block;font-size:13.5px;color:var(--muted);line-height:1.5;margin-top:2px}

.tiles{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 30px}
.tile{flex:1 1 240px;border:1px solid var(--rule);border-radius:4px;padding:18px 20px;background:#fff}
.tile h3{margin:0 0 8px}
.tile p{font-size:14.5px;margin:0 0 10px;max-width:none}
.tile p:last-child{margin-bottom:0}
a.tile{border-bottom:1px solid var(--rule);color:inherit;display:block}
a.tile:hover{border-color:var(--teal)}
a.tile .more{color:var(--teald);font-weight:600;font-size:14px}

.btnrow{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}
.btn{display:inline-block;border-radius:4px;padding:11px 18px;font-size:15px;font-weight:600;border:1px solid transparent}
.btn:hover{border-bottom-width:1px}
.btn-primary{background:var(--teal);color:#fff;border-color:var(--teal)}
.btn-primary:hover{background:var(--teald);border-color:var(--teald)}
.btn-ink{background:var(--ink);color:#fff;border-color:var(--ink)}
.btn-ink:hover{background:#0a1820;border-color:#0a1820}
.btn-quiet{background:#fff;color:var(--ink);border-color:var(--rule)}
.btn-quiet:hover{border-color:var(--teal);color:var(--teald)}

.toc{background:var(--panel);border-left:4px solid var(--line);padding:16px 20px;margin:0 0 34px;max-width:70ch}
.toc h2{font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);
  margin:0 0 10px;padding:0;border:0}
.toc ul{margin:0}
.toc li{font-size:14.5px;margin-bottom:6px}

.tablewrap{overflow-x:auto;margin:24px 0 30px;border:1px solid var(--rule);border-radius:4px}
table{border-collapse:collapse;width:100%;font-size:14.5px;background:#fff}
th,td{text-align:left;padding:10px 14px;border-bottom:1px solid var(--rule);vertical-align:top;line-height:1.5}
thead th{background:var(--panel);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--muted);font-weight:600;white-space:nowrap}
tbody tr:last-child td{border-bottom:0}
td.old{background:var(--cream)}
td.new{background:var(--tealt)}
table caption{caption-side:bottom;padding:10px 14px;font-size:12.5px;color:var(--muted);text-align:left}

.steps{counter-reset:s 0;padding:0;margin:26px 0;max-width:none;list-style:none}
.steps > li{counter-increment:s;position:relative;padding:0 0 4px 52px;margin:0 0 26px;
  border-bottom:1px solid var(--rule)}
.steps > li:last-child{border-bottom:0}
.steps > li:before{content:counter(s);position:absolute;left:0;top:0;width:34px;height:34px;
  border-radius:50%;background:var(--ink);color:#fff;display:flex;align-items:center;
  justify-content:center;font-size:15px;font-weight:600}
.steps h3{margin-top:2px}
.steps[start="8"]{counter-reset:s 7}
.steps[start="12"]{counter-reset:s 11}
.when{display:inline-block;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--teald);font-weight:600;margin-bottom:6px}

details.acc{border:1px solid var(--rule);border-radius:4px;margin:10px 0;max-width:70ch;background:#fff}
details.acc > summary{padding:13px 16px;cursor:pointer;font-weight:650;color:var(--ink);font-size:15px;
  list-style:none;display:flex;justify-content:space-between;gap:14px}
details.acc > summary::-webkit-details-marker{display:none}
details.acc > summary::after{content:"+";color:var(--teal);font-size:18px;line-height:1}
details.acc[open] > summary::after{content:"\2212"}
details.acc > div{padding:0 16px 14px;border-top:1px solid var(--rule);padding-top:12px}
details.acc > div > :last-child{margin-bottom:0}

.checker fieldset{border:0;padding:0;margin:0 0 20px}
.checker legend{font-weight:650;color:var(--ink);font-size:15.5px;padding:0;margin-bottom:8px}
.checker label{display:inline-flex;align-items:flex-start;gap:7px;border:1px solid var(--rule);
  border-radius:4px;padding:8px 14px;font-size:14.5px;margin:0 8px 8px 0;cursor:pointer;background:#fff}
.checker label:hover{border-color:var(--teal)}
.checker label:has(input:checked){background:var(--tealt);border-color:var(--teal);color:var(--teald);font-weight:600}
.checker input{accent-color:var(--teal);margin:.2em 0 0}
.checker input[type=date]{padding:8px 12px;border:1px solid var(--rule);border-radius:4px;font:inherit;font-size:14.5px}
.verdict:empty{display:none}
.mono{font-variant-numeric:tabular-nums}

form.fj p{max-width:70ch}
form.fj label{font-weight:600;color:var(--ink);font-size:14.5px}
form.fj input[type=text],form.fj input[type=email],form.fj textarea{
  font:inherit;font-size:15px;padding:9px 12px;border:1px solid var(--rule);border-radius:4px;
  background:#fff;color:#22323C;max-width:100%}
form.fj input[type=submit]{font:inherit;font-size:15px;font-weight:600;background:var(--teal);color:#fff;
  border:1px solid var(--teal);border-radius:4px;padding:11px 20px;cursor:pointer}
form.fj input[type=submit]:hover{background:var(--teald);border-color:var(--teald)}
.phone-number{display:block;margin:0 0 14px}
.phone-number svg{display:block;width:236px;max-width:100%;height:auto;color:var(--teald)}

/* ---------- responsive: the layer the guide does not have ---------- */
@media (max-width:820px){
  .page{padding:36px 24px 56px}
  .foot-in{padding:32px 24px 24px}
  h1{font-size:28px}
  .stand{font-size:17px}
  h2{font-size:19px}
  .stat{flex:1 1 100%}
  .tile{flex:1 1 100%}
  blockquote{padding:20px 20px 16px}
  blockquote p{font-size:19px}
  .steps > li{padding-left:44px}
  .steps > li:before{width:30px;height:30px;font-size:14px}
}
@media (max-width:480px){
  .page{padding:28px 16px 44px}
  .foot-in{padding:28px 16px 22px}
  .guidecover img{width:150px}
  .guidebox{gap:20px}
  .foot-org{gap:18px}
  .fjlogo img{width:140px}
  h1{font-size:25px}
}
/* 1000px-wide diagrams must scroll rather than shrink to illegibility */
.figscroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.figscroll img{min-width:680px}

@media print{
  body{background:#fff}
  .site-head,.site-foot,.skip,.btnrow{display:none}
  .page{max-width:none;padding:0}
  a{border:0;color:#000}
}

/* ==========================================================================
   LEGACY COMPATIBILITY
   For pages not yet rebuilt. Link grb.css AFTER styles.css and the old
   thesitewizard structure inherits the new palette and type without any
   markup change. Delete this block once every page uses the new shell.
   ========================================================================== */
#tswcontainer{max-width:860px;margin:0 auto;background:#fff;padding:0 0 60px}
#tswheader{background:#fff;padding:18px 0 0}
#tswcontent{float:none;width:auto;padding:0 68px}
#tswsidecol{float:none;width:auto;background:var(--ink);margin-bottom:28px}
#tswsideproper{padding:0}
#tswcssbuttons{width:auto;text-align:left}
#tswcssbuttons ul{display:flex;flex-wrap:wrap;gap:2px;box-shadow:none;margin:0;padding:8px 20px;max-width:none}
#tswcssbuttons li{font-family:inherit}
#tswcssbuttons li:before{display:none}
#tswcssbuttons li a{background:transparent;border:0;color:#fff;padding:7px 10px;border-radius:4px;font-size:13.5px}
#tswcssbuttons li a:hover,#tswcssbuttons li a:focus{background:rgba(255,255,255,.14);color:#fff}
#tswcssbuttons li a[aria-current="page"]{background:rgba(255,255,255,.18);font-weight:600}
#tswhamburger{background:var(--ink);color:#fff}
#tswfooter{padding:26px 68px 0;border-top:1px solid var(--rule);margin-top:40px;font-size:13px;color:var(--muted)}
#tswfooter a{color:var(--teald)}
#grb_banner{max-height:150px}
.download_text{background:var(--teal);color:#fff;border-radius:4px;text-decoration:none;
  font-size:16px;font-weight:600;padding:11px 18px;display:inline-block}
.highlight-yellow{background:var(--cream);padding:0 3px}
@media only screen and (max-width:820px){
  #tswcontent{padding:0 20px}
  #tswfooter{padding:24px 20px 0}
  #tswcssbuttons ul{padding:8px 12px}
}
