/* ============================================================================
   heatblockingwindows.com — shared stylesheet for the legal pages only.

   The landing page (/) deliberately inlines its own CSS and does not use this
   file: it receives paid traffic, so it is kept to a single request. These
   pages are reached from the footer, are not ad destinations, and are better
   served by one cached stylesheet than by five inline copies of it.
   ========================================================================== */
:root{
  --hb-ink:#12171f; --hb-ink-70:#495468; --hb-paper:#fbfaf8; --hb-rule:#e0dbd3;
  --hb-amber:#d97a1a; --hb-amber-600:#b8620f; --hb-slate-900:#0f151d;
  --hb-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0; background:var(--hb-paper); color:var(--hb-ink);
  font-family:var(--hb-sans); font-size:17px; line-height:1.7;
  -webkit-font-smoothing:antialiased;
}
.wrap{max-width:780px; margin-inline:auto; padding:0 clamp(18px,5vw,32px)}

:focus-visible{outline:3px solid var(--hb-amber); outline-offset:2px; border-radius:3px}
.skip-link{
  position:absolute; left:-9999px; top:0; z-index:100;
  background:var(--hb-slate-900); color:#fff; padding:12px 20px; font-weight:600;
}
.skip-link:focus{left:0}

.top{border-bottom:1px solid var(--hb-rule); background:#fff}
.top .wrap{
  display:flex; align-items:center; justify-content:space-between; gap:16px;
  padding-block:15px; max-width:1140px;
}
.brand{font-weight:700; color:var(--hb-ink); text-decoration:none; letter-spacing:-.02em}
.brand b{color:var(--hb-amber-600)}
.top a.tel{font-weight:700; color:var(--hb-ink); text-decoration:none; white-space:nowrap}

main{padding-block:56px 72px}
h1{font-size:clamp(30px,5vw,42px); line-height:1.15; letter-spacing:-.02em; margin:0 0 12px}
.eff{
  color:var(--hb-ink-70); font-size:15.5px; margin:0 0 40px;
  padding-bottom:24px; border-bottom:1px solid var(--hb-rule);
}
h2{font-size:22px; letter-spacing:-.01em; margin:44px 0 12px; line-height:1.3}
h3{font-size:18px; margin:28px 0 8px}
p,li{color:var(--hb-ink-70)}
p{margin:0 0 16px}
ul,ol{margin:0 0 16px; padding-left:22px}
li{margin-bottom:8px}
strong{color:var(--hb-ink)}
a{color:var(--hb-amber-600)}

.box{
  background:#fff; border:1px solid var(--hb-rule); border-radius:12px;
  padding:22px 24px; margin:24px 0;
}
.box p:last-child{margin-bottom:0}
address{font-style:normal; line-height:1.8; color:var(--hb-ink-70)}

/* ── Form (used by /do-not-sell/ only) ──────────────────────────────────── */
.legal-form{display:grid; gap:20px; margin-top:8px}
.field{display:grid; gap:7px}
.field label{font-weight:700; font-size:15.5px; color:var(--hb-ink)}
.field .req{color:var(--hb-amber-600)}
.field input,.field textarea{
  font:inherit; font-size:16.5px; padding:12px 14px; border:1px solid #cfc9c0;
  border-radius:10px; background:#fff; color:var(--hb-ink); width:100%;
}
.field textarea{min-height:96px; resize:vertical}
.field input:focus-visible,.field textarea:focus-visible{border-color:var(--hb-amber)}
.field [aria-invalid="true"]{border-color:#b3261e; background:#fdf4f3}
.hint{font-size:14.5px; color:#7d8798}
.hp-field{
  position:absolute!important; width:1px; height:1px; overflow:hidden;
  clip:rect(0 0 0 0); clip-path:inset(50%); white-space:nowrap;
}
.form-status{margin:0; font-size:15.5px; font-weight:600; color:var(--hb-amber-600); min-height:1.2em}
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  padding:15px 26px; border-radius:10px; border:1px solid transparent;
  font:inherit; font-weight:700; font-size:17px; text-decoration:none; cursor:pointer;
  background:var(--hb-amber); color:#fff; justify-self:start;
}
.btn:hover{background:var(--hb-amber-600)}
.btn[disabled]{opacity:.6; cursor:progress}
.form-success{
  background:#fff; border:2px solid #1f6f6b; border-radius:12px; padding:22px 24px;
}
.form-success h2{margin-top:0; color:#1f6f6b}

.ftr{background:var(--hb-slate-900); color:#98a3b3; font-size:14.5px; line-height:1.7}
.ftr .wrap{padding-block:36px; max-width:1140px}
.ftr a{color:#c4ccd8}
.ftr ul{list-style:none; margin:0 0 16px; padding:0; display:flex; flex-wrap:wrap; gap:18px}
.ftr li{margin:0}
