
*{box-sizing:border-box}
:root{
  --ink:#16160F; --ink-2:#4A4A40; --paper:#FBF7EC; --surface:#FFFFFF; --band:#FFF3D6;
  --emerald:#0B7A4B; --emerald-ink:#FFFFFF;
  --flame:#E8510E; --sun:#F5B915; --sky:#1B6FA8;
  --rule:#16160F; --bw:3px; --max:1120px;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --ink:#F6F2E4; --ink-2:#BCB8A6; --paper:#15160E; --surface:#1E2015; --band:#26220F;
    --emerald:#35B377; --emerald-ink:#0A0B06;
    --flame:#FF7433; --sun:#FFC93C; --sky:#4FA3DA; --rule:#F6F2E4;
  }
}
:root[data-theme="dark"]{
  --ink:#F6F2E4; --ink-2:#BCB8A6; --paper:#15160E; --surface:#1E2015; --band:#26220F;
  --emerald:#35B377; --emerald-ink:#0A0B06;
  --flame:#FF7433; --sun:#FFC93C; --sky:#4FA3DA; --rule:#F6F2E4;
}
html,body{margin:0}
body{
  background:var(--paper); color:var(--ink);
  font-family:"Barlow Condensed","Arial Narrow",Arial,sans-serif;
  font-size:19px; line-height:1.4; font-weight:500; text-transform:uppercase;
  -webkit-text-size-adjust:100%;
}
.wrap{max-width:var(--max);margin:0 auto;padding-inline:16px}
h1,h2,h3{font-family:Anton,"Arial Black",Impact,sans-serif;font-weight:400;
  line-height:1.0;letter-spacing:.005em;text-wrap:balance;margin:0}
h1{font-size:clamp(40px,9vw,80px)}
h2{font-size:clamp(28px,5vw,46px)}
h3{font-size:clamp(19px,2.6vw,24px)}
p{margin:0 0 .8em;max-width:56ch}
a{color:inherit}
img,svg{max-width:100%}
.lock{height:46px;width:auto;display:block}
.hero-svg,.plan-svg{display:block;width:100%;height:auto}
.hero-svg{max-width:340px;margin-inline:auto}
.plan-svg{max-width:540px;margin-inline:auto}
.ic{display:block}
/* ---------- top bar ---------- */
.bar{background:var(--ink);color:var(--paper);border-bottom:var(--bw) solid var(--rule)}
.bar .wrap{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;
  justify-content:space-between;padding-block:9px;font-size:16px;font-weight:600}
.bar a{color:var(--paper);text-decoration:none;border-bottom:2px solid var(--sun)}
/* ---------- masthead ---------- */
header.mast{border-bottom:var(--bw) solid var(--rule);background:var(--surface)}
header.mast .wrap{display:flex;flex-wrap:wrap;gap:14px;align-items:center;
  justify-content:space-between;padding-block:14px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand .lock{display:block}
nav.main{display:flex;flex-wrap:wrap;gap:0}
nav.main a{text-decoration:none;font-weight:600;font-size:16px;padding:7px 12px;
  border:var(--bw) solid var(--rule);margin-left:-3px;background:var(--surface)}
nav.main a[aria-current="page"]{background:var(--sun);color:#16160F}
nav.main a.navlogo{display:flex;align-items:center;padding:5px 10px;background:#fff}
nav.main a.navlogo img{display:block;height:21px;width:auto}
nav.main a.navlogo[aria-current="page"]{background:#fff;box-shadow:inset 0 -5px 0 var(--sun)}
/* ---------- sections ---------- */
section{padding-block:clamp(30px,4.6vw,54px);border-bottom:var(--bw) solid var(--rule)}
section.flag{background:var(--emerald);color:var(--emerald-ink)}
section.flag p{color:var(--emerald-ink)}
section.band{background:var(--band)}
.kicker{font-size:15px;font-weight:700;letter-spacing:.15em;color:var(--flame);margin:0 0 10px}
section.flag .kicker{color:var(--emerald-ink);opacity:.9}
.lede{font-size:clamp(19px,2.2vw,23px);font-weight:600}
/* hero split */
.hero{display:grid;gap:26px;align-items:center;grid-template-columns:1fr}
@media(min-width:780px){.hero{grid-template-columns:1.12fr .88fr;gap:34px}}
.hero .art{border:var(--bw) solid var(--rule);background:var(--sun);padding:14px;order:-1;
  display:grid;place-items:center}
@media(min-width:780px){.hero .art{order:0}}
/* answer box */
.answer{border:var(--bw) solid var(--rule);background:var(--surface);padding:16px 18px;margin:20px 0 0}
.answer p{margin:0;font-size:clamp(18px,2.1vw,21px);font-weight:600;max-width:56ch}
.answer .kicker{margin-bottom:8px}
/* buttons */
.cta{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font-weight:700;
  font-size:21px;padding:13px 22px;border:var(--bw) solid var(--rule);background:var(--flame);color:#fff}
.cta.ghost{background:var(--surface);color:var(--ink)}
.cta.sun{background:var(--sun);color:#16160F}
.ctarow{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
/* icon cards */
.grid{display:grid;gap:0;margin-top:24px;
  grid-template-columns:repeat(auto-fit,minmax(238px,1fr));
  border:var(--bw) solid var(--rule);background:var(--rule)}
.grid > *{background:var(--surface);padding:18px;outline:1.5px solid var(--rule)}
.grid .ic{width:64px;height:64px;display:block;margin-bottom:10px}
.grid h3{margin-bottom:6px}
.grid p{font-size:17px;margin-bottom:0;color:var(--ink-2);max-width:34ch}
.grid a.more{display:inline-block;margin-top:10px;font-weight:700;color:var(--flame);
  text-decoration:none;border-bottom:3px solid var(--flame)}
/* big number tiles */
.facts{display:grid;gap:0;grid-template-columns:repeat(auto-fit,minmax(168px,1fr));
  border:var(--bw) solid var(--rule);background:var(--rule);margin-top:24px}
.facts div{padding:15px 16px;outline:1.5px solid var(--rule)}
.facts div:nth-child(1){background:var(--sun);color:#16160F}
.facts div:nth-child(2){background:var(--surface)}
.facts div:nth-child(3){background:var(--surface)}
.facts div:nth-child(4){background:var(--surface)}
.facts b{display:block;font-family:Anton,"Arial Black",sans-serif;font-weight:400;
  font-size:clamp(25px,3.3vw,34px);line-height:1.03}
.facts span{font-size:15px;font-weight:600;color:var(--ink-2);letter-spacing:.04em}
.facts div:nth-child(1) span{color:#4A3B0B}
/* strip of small badges */
.badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px;list-style:none;padding:0}
.badges li{display:flex;align-items:center;gap:8px;border:var(--bw) solid var(--rule);
  background:var(--surface);padding:8px 13px;font-weight:700;font-size:16px}
.badges svg{width:26px;height:26px;flex:none}

/* U-Haul dealer badge: the site's own type and palette, not a reproduction of any brand mark */
.dealer{display:inline-flex;flex-direction:column;align-items:flex-start;
  border:var(--bw) solid var(--rule);background:var(--flame);color:#fff;padding:12px 18px}
.dealer b{font-family:Anton,"Arial Black",sans-serif;font-weight:400;
  font-size:clamp(30px,5vw,44px);line-height:1;letter-spacing:.01em}
.dealer span{font-size:14px;font-weight:700;letter-spacing:.16em;margin-top:5px}
.dealerlogo{display:block;height:auto;width:100%;max-width:300px;background:#fff;
  padding:10px 14px;margin:6px 0 2px}
.dealerrow{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin-top:22px}
.dealerrow .logoslot{border:var(--bw) dashed var(--ink-2);background:var(--surface);
  padding:14px 18px;font-size:15px;font-weight:600;color:var(--ink-2);max-width:34ch}
/* rv space panel */
.lot{display:grid;gap:22px;grid-template-columns:1fr;align-items:center;margin-top:8px}
@media(min-width:780px){.lot{grid-template-columns:.92fr 1.08fr;gap:32px}}
.lot .plan{border:var(--bw) solid var(--rule);background:var(--sky);padding:12px;
  display:grid;place-items:center}
/* qa */
.qa{margin-top:22px;border-top:var(--bw) solid var(--rule)}
.qa details{border-bottom:var(--bw) solid var(--rule)}
.qa summary{cursor:pointer;padding:15px 0;font-weight:700;font-size:20px;list-style:none;
  display:flex;gap:13px;align-items:flex-start}
.qa summary::-webkit-details-marker{display:none}
.qa summary::before{content:"+";font-family:Anton,sans-serif;color:var(--flame);flex:none;font-size:24px;line-height:1}
.qa details[open] summary::before{content:"3"}
.qa .a{padding:0 0 15px 27px}
.qa .a p{font-size:18px;color:var(--ink-2);max-width:62ch}
/* table */
.tablewrap{overflow-x:auto;margin-top:22px;border:var(--bw) solid var(--rule)}
table{border-collapse:collapse;width:100%;min-width:460px;background:var(--surface)}
th,td{text-align:left;padding:12px 15px;border-bottom:1.5px solid var(--rule);font-size:17px}
th{background:var(--ink);color:var(--paper);font-weight:700;font-size:15px;letter-spacing:.07em}
tbody tr:last-child td{border-bottom:0}
/* footer */
footer{background:var(--ink);color:var(--paper);padding-block:32px;text-transform:uppercase}
footer a{color:var(--paper)}
footer .cols{display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}
footer h3{font-size:19px;margin-bottom:9px;color:var(--paper)}
footer p,footer li{font-size:16px;color:#CDC9B8}
footer ul{list-style:none;margin:0;padding:0}
footer li{margin-bottom:5px}
footer li a{text-decoration:none;border-bottom:2px solid var(--sun)}
.legal{margin-top:26px;padding-top:15px;border-top:2px solid #45453A;font-size:14px;color:#9E9B8B;max-width:78ch}
.skip{position:absolute;left:-9999px}
.skip:focus{left:8px;top:8px;background:var(--flame);color:#fff;padding:10px;z-index:9}
a:focus-visible,summary:focus-visible{outline:3px solid var(--flame);outline-offset:2px}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
