/* ============================================================
   MGD CONSTRUCTION LTD - LEGAL PAGES STYLESHEET
   Loaded ONLY by privacy and terms pages. These pages run as
   their own small site, so every rule they need lives here:
   page colour, header, table of contents, legal body, footer.
   Fully opaque colours across the sheet.
   ============================================================ */

/* The body rule carries a literal font-size of 16px. */
body{
  margin:0;
  font-family:"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  font-size:16px;
  line-height:1.75;
  color:#20262d;
  background-color:#E9ECEF;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}

.page-legal{
  background-color:#E9ECEF;
  color:#20262d;
  -webkit-font-smoothing:antialiased;
}

/* Every max-width region also centres and guards the edges. */
.legal-frame{max-width:900px;margin:0 auto;padding:0 24px;}
.legal-band{max-width:1140px;margin:0 auto;padding:0 24px;}

h1,h2,h3,h4{color:#13181d;line-height:1.25;}
p{margin:0 0 1em;}
a{color:#b45309;text-decoration:underline;}
a:hover{color:#7c3a00;}
strong{color:#13181d;}

/* ---------- Dark legal masthead with its own strong contrast ---------- */
.legal-bar{
  background-color:#14181D;
  border-bottom:6px solid #DE7E33;
}
.legal-brand{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.legal-brand .mark{
  display:block;
  font-weight:800;
  font-size:1.3rem;
  color:#E9ECEF;
  letter-spacing:1px;
}
.legal-brand .mark em{
  display:block;
  font-style:normal;
  font-weight:600;
  font-size:.72rem;
  letter-spacing:3px;
  color:#6E8C99;
}
.legal-brand a.na,
.legal-route a{
  color:#DE7E33;
  text-decoration:none;
  font-weight:700;
}
.legal-brand a:hover,
.legal-route a:hover{color:#E9ECEF;}

/* Single centred legal heading handled on the pages with solid label. */
.legal-title-band{
  background-color:#FFFFFF;
  border-top:2px solid #DE7E33;
  border-bottom:1px solid #CBD3DA;
}
.legal-title-band h1{
  font-size:clamp(2rem,5vw,3rem);
  line-height:1.1;
  color:#11161b;
  margin:0 0 8px;
  letter-spacing:.5px;
}
.legal-title-band .subline{color:#4b5660;margin:0;font-size:1.08rem;}

/* Breadcrumb/back row that always points home */
.legal-route{
  background-color:#ffffff;
  border-bottom:1px solid #CBD3DA;
}
.legal-route-list{
  display:flex;
  flex-wrap:wrap;
  gap:6px 22px;
  list-style:none;
  margin:0;
  padding:12px 0;
}
.legal-route-list li a,.legal-route-list li span{color:#20262d;}
.legal-route-list li span.now{font-weight:700;color:#13181d;}

/* ---------- Table of contents ---------- */
.toc{
  background-color:#ffffff;
  border-left:6px solid #DE7E33;
  border-right:1px solid #CBD3DA;
  border-top:1px solid #CBD3DA;
  border-bottom:1px solid #CBD3DA;
  margin:0;
}
.toc h2{
  font-size:1.1rem;
  margin:0 0 14px;
  color:#11161b;
  text-transform:uppercase;
  letter-spacing:1px;
}
.legal-toc-list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:6px 28px;
  font-size:.98rem;
}

/* ---------- Legal body ---------- */
.legal-content{
  background-color:#FFFFFF;
  border:1px solid #CBD3DA;
  margin-top:28px;
  padding:0;
}
/* scope isolation: sections may never paint onto the wrapper */
.legal-page .legal-content section{
  background-color:transparent !important;
  border:0;
}
.legal-content section{
  padding:22px 8px 6px;
}
.legal-content section + section{
  border-top:1px dashed #CBD3DA;
}
.legal-content h2{
  font-size:1.55rem;
  margin:0 0 10px;
  padding-top:6px;
  border-bottom:3px solid #DE7E33;
  padding-bottom:8px;
  scroll-margin-top:14px;
}
.legal-content h3{
  font-size:1.1rem;
  margin:1em 0 .4em;
  color:#c2410c;
}
.legal-content li{margin-bottom:.5em;}
.legal-content ul,
.legal-content ol{
  margin:.2em 0 1.2em 1.1em;
}
.legal-content p,
.legal-content li{
  color:#333a41;
}

/* minor note blocks look fine as solid pale grey, fully opaque */
.note{
  background-color:#33424d;
  color:#E9ECEF;
  border-left:6px solid #DE7E33;
  padding:14px 18px;
  margin:18px 0;
}
.note strong,.note b{color:#fff;}

/* ---------- Footer link band pointing home ---------- */
.legal-footer{
  background-color:#14181D;
  margin-top:34px;
}
.legal-footer-in{
  color:#C6CDD4;
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  gap:12px;
  padding:26px 0;
}
.legal-footer-in a{color:#DE7E33;font-weight:700;}
.legal-footer-in a:hover{color:#E9ECEF;}
.legal-address{color:#9aa4ad;}

@media (max-width:760px){
  .legal-toc-list{grid-template-columns:1fr;}
  .legal-content section{padding:18px 4px 4px;}
}
