/* ============================================================
   HANDY HYENA HVAC LLC — LEGAL stylesheet
   Shared by privacy.html and terms-of-service.html.
   NOTE: legal pages load ONLY this stylesheet (never style.css).
   LIGHT workshop-bay theme.
   ============================================================ */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

html{scroll-behavior:smooth}

/* Legal pages are LIGHT themed — background and text defined here. */
.legal-page{
  background-color:#FAF9F4;
  color:#2E3128;
  font-family:Georgia,"Times New Roman",serif;
  font-size:16px;
  line-height:1.75;
  overflow-x:hidden;
}

h1,h2,h3,h4{
  font-family:"Trebuchet MS","Segoe UI",sans-serif;
  font-weight:700;
  line-height:1.25;
}

a{color:#4E8FB0;text-decoration:none}
a:hover{color:#8A6420}

.container{
  max-width:980px;
  margin:0 auto;
  padding:0 24px;
}

/* -------- legal header (never a <section>) -------- */
.legal-header{
  background-color:#26241E;
  border-bottom:6px solid #8A6420;
}
.legal-header-top{
  max-width:980px;
  margin:0 auto;
  padding:0 24px;
  height:8px;
  background:repeating-linear-gradient(90deg,#8A6420 0 14px,transparent 14px 30px);
}
.legal-header-inner{
  max-width:980px;
  margin:0 auto;
  padding:44px 24px 40px;
  position:relative;
  z-index:1;
}
.legal-wordmark{
  display:inline-flex;
  align-items:center;
  gap:9px;
  font-family:"Trebuchet MS",sans-serif;
  font-weight:700;
  letter-spacing:3px;
  font-size:17px;
  color:#FFFFFF;
  margin-bottom:18px;
}
.legal-thermo{
  width:13px;height:13px;
  border-radius:50%;
  border:2px solid #8FBFA8;
  position:relative;
}
.legal-thermo::after{
  content:"";
  position:absolute;
  left:50%;bottom:0;
  width:2px;height:6px;
  transform:translateX(-50%);
  background:#D96C3F;
}
.legal-header h1{
  color:#FFFFFF;
  font-size:44px;
  font-size:clamp(34px,6vw,52px);
  letter-spacing:1px;
  margin-bottom:10px;
}
.legal-company{
  color:#D6D2C4;
  font-size:15px;
  letter-spacing:1px;
}
.legal-updated{
  display:inline-block;
  background-color:#8A6420;
  color:#FFFFFF;
  font-family:"Trebuchet MS",sans-serif;
  font-size:12px;
  letter-spacing:2px;
  text-transform:uppercase;
  padding:6px 14px;
  border-radius:999px;
  margin-top:14px;
  font-weight:700;
}

/* -------- scope isolation: only content sections transparent -------- */
.legal-content{
  background-color:transparent;
}
/* IMPORTANT scope-isolation rule */
.legal-page .legal-content section{
  background-color:transparent !important;
}

/* -------- table of contents -------- */
.legal-toc{
  background-color:#FFFFFF;
  border:1px solid #E5E2D6;
  border-left:4px solid #8A6420;
  border-radius:8px;
  padding:24px 28px;
  margin:40px auto 8px;
  max-width:980px;
}
.legal-toc h2{
  color:#5F4A24;
  font-size:18px;
  text-transform:uppercase;
  letter-spacing:2px;
  margin-bottom:14px;
}
.legal-toc nav{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:6px 22px;
}
.legal-toc nav a{
  display:block;
  padding:6px 0 6px 16px;
  position:relative;
  color:#3F423A;
  font-weight:700;
  font-size:14.5px;
  font-family:"Trebuchet MS",sans-serif;
}
.legal-toc nav a::before{
  content:"";
  position:absolute;left:0;top:12px;
  width:8px;height:8px;
  background:#4E8FB0;
  border-radius:2px;
}
.legal-toc nav a:hover{color:#8A6420}
.legal-toc nav a:hover::before{background:#8A6420}
.legal-note{
  color:#9A9488;
  font-family:"Courier New",monospace;
  font-size:14px;
  padding:8px 0 0 16px;
  position:relative;
}
.legal-note::before{
  content:"";
  position:absolute;left:0;top:14px;
  width:8px;height:8px;
  background:#D96C3F;
}

/* -------- legal content body -------- */
.legal-content{
  max-width:980px;
  margin:0 auto;
  padding:0 24px 0;
}
.legal-content section{
  padding:34px 0;
  border-bottom:1px solid #E5E2D6;
}
.legal-content section:last-child{border-bottom:none}
.legal-content section h2{
  color:#5F4A24;
  font-size:26px;
  margin-bottom:14px;
  padding-bottom:8px;
  border-bottom:1px solid #E5E2D6;
  scroll-margin-top:24px;
}
.legal-content h3{
  color:#5F4A24;
  font-size:19px;
  margin:22px 0 8px;
}
.legal-content p{
  color:#3F423A;
  margin-bottom:14px;
  font-size:16px;
}
.legal-content p:last-child{margin-bottom:0}
.legal-content ul,.legal-content ol{
  margin:0 0 16px 26px;
  color:#3F423A;
}
.legal-content li{margin-bottom:8px;color:#3F423A}
.legal-content strong{color:#2E3128}
.legal-content a{font-weight:700}
.legal-highlight{
  background-color:#F1EFE5;
  border-left:4px solid #4E8FB0;
  padding:16px 20px;
  margin:18px 0;
  border-radius:0 6px 6px 0;
  color:#3F423A;
}
.legal-highlight p{margin:0 0 8px}
.legal-highlight p:last-child{margin:0}

/* -------- legal footer -------- */
.legal-footer{
  background-color:#26241E;
  color:#DDD9CB;
  margin-top:48px;
}
.legal-footer-strip{
  height:8px;
  background:repeating-linear-gradient(90deg,#8FBFA8 0 8px,transparent 8px 20px);
}
.legal-footer-inner{
  max-width:980px;
  margin:0 auto;
  padding:30px 24px;
  text-align:center;
  position:relative;
  z-index:1;
}
.legal-footer-links{
  margin-bottom:14px;
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:6px;
  font-family:"Trebuchet MS",sans-serif;
  font-size:13px;
  letter-spacing:1px;
}
.legal-footer-links a{color:#CDC9BB;font-weight:600}
.legal-footer-links a:hover{color:#FFFFFF}
.legal-footer-links span{color:#8A6420;font-weight:700}
.legal-footer-line{
  font-size:13.5px;
  color:#AAC6D3;
  line-height:1.9;
}
.legal-footer-line .hl{color:#D96C3F;font-weight:700}
.legal-home{
  display:inline-block;
  background-color:#8A6420;
  color:#FFFFFF;
  font-family:"Trebuchet MS",sans-serif;
  font-weight:700;
  font-size:13px;
  letter-spacing:1px;
  text-transform:uppercase;
  padding:12px 26px;
  border-radius:4px;
  margin-bottom:18px;
}
.legal-home:hover{background-color:#5F4A24;color:#FFFFFF}
.legal-footer-title{color:#FFFFFF;font-family:"Trebuchet MS",sans-serif;letter-spacing:3px;font-weight:700;margin-bottom:8px;font-size:15px}

@media (max-width:640px){
  .legal-toc nav{grid-template-columns:1fr}
  .legal-content section{padding:28px 0}
  .legal-header-inner{padding:34px 22px}
}

/* any watermark-style absolutely positioned decorative element hidden in case of need */
.water-guard{visibility:hidden;position:absolute;width:0;height:0;overflow:hidden}
