/* =========================================================
   LG GRANITE & MARBLE — legal pages (privacy-policy, terms)
   Self-contained on purpose: these two pages share nothing with
   styles.css or lp.css, so editing either of those can never
   break the pages Google Ads needs to be able to reach.
   Same brand tokens, ~1/20th of the weight.
   ========================================================= */

:root{
  --gold:#c8912f;
  --gold-lite:#e2b866;
  --gold-deep:#8a5f18;      /* AA on light backgrounds */
  --black:#0d0d0d;
  --ink:#121212;
  --body:#4a4644;
  --paper:#faf9f7;
  --cream:#f1efec;
  --line:#e2ded8;
  --line-dk:rgba(244,242,238,.14);
  --serif:"Merriweather",Georgia,"Times New Roman",serif;
  --sans:"Figtree",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --r:4px;
}

*,*::before,*::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth; }
@media (prefers-reduced-motion:reduce){ html{ scroll-behavior:auto; } }

body{
  margin:0;
  font-family:var(--sans);
  font-size:16px;
  line-height:1.72;
  color:var(--body);
  background:var(--paper);
}
img{ max-width:100%; height:auto; display:block; }
a{ color:var(--gold-deep); }
a:hover{ color:var(--ink); }
:where(a,button):focus-visible{ outline:2px solid var(--gold); outline-offset:3px; border-radius:2px; }

.wrap{ width:100%; max-width:820px; margin:0 auto; padding:0 22px; }

/* ---------- header ---------- */
.lhdr{ background:var(--black); border-bottom:1px solid var(--line-dk); }
.lhdr__in{
  max-width:1180px; margin:0 auto; padding:14px 22px;
  display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap;
}
/* square source PNG — size by height or the header inherits the logo's width */
.lhdr__logo img{ height:46px; width:auto; }
.lhdr__tel{
  color:#f4f2ee; text-decoration:none;
  font-size:14px; font-weight:800; letter-spacing:.06em;
}
.lhdr__tel:hover{ color:var(--gold-lite); }

/* ---------- title block ---------- */
.lhero{ background:var(--cream); border-bottom:1px solid var(--line); padding:44px 0 38px; }
.lhero h1{
  font-family:var(--serif); font-weight:700; color:var(--ink);
  font-size:clamp(27px,5.6vw,38px); line-height:1.2; margin:0 0 12px;
  text-transform:uppercase; letter-spacing:.02em;
}
.lhero__meta{
  margin:0; font-size:12px; font-weight:800; letter-spacing:.14em;
  text-transform:uppercase; color:var(--gold-deep);
}

/* ---------- body ---------- */
.doc{ padding:44px 0 64px; }
.doc h2{
  font-family:var(--serif); font-weight:700; color:var(--ink);
  font-size:clamp(19px,3.4vw,23px); line-height:1.3;
  margin:44px 0 14px; padding-top:26px; border-top:1px solid var(--line);
}
.doc h2:first-of-type{ margin-top:0; padding-top:0; border-top:0; }
.doc h3{
  font-family:var(--sans); font-weight:800; color:var(--ink);
  font-size:15px; letter-spacing:.02em; margin:26px 0 8px;
}
.doc p{ margin:0 0 1.05em; }
.doc ul{ margin:0 0 1.25em; padding-left:20px; }
.doc li{ margin:0 0 .5em; }
.doc li::marker{ color:var(--gold); }
.doc strong{ color:var(--ink); }

.lead{ font-size:17.5px; color:var(--ink); }

/* boxed callout for the things people actually need to notice */
.note{
  background:#fff; border:1px solid var(--line); border-left:3px solid var(--gold);
  border-radius:var(--r); padding:18px 20px; margin:0 0 1.4em;
}
.note p:last-child{ margin-bottom:0; }

/* contact block at the end */
.contact{
  background:var(--cream); border-radius:var(--r);
  padding:22px 24px; margin-top:8px;
}
.contact p{ margin:0 0 .4em; }
.contact p:last-child{ margin-bottom:0; }

/* ---------- footer ---------- */
.lft{ background:var(--black); color:rgba(244,242,238,.62); padding:30px 0 26px; }
.lft__in{
  max-width:1180px; margin:0 auto; padding:0 22px;
  display:flex; align-items:center; justify-content:space-between; gap:16px 24px; flex-wrap:wrap;
}
.lft a{ color:rgba(244,242,238,.72); text-decoration:none; font-size:13px; }
.lft a:hover{ color:var(--gold-lite); }
.lft__links{ display:flex; gap:20px; flex-wrap:wrap; }
.lft__copy{ margin:0; font-size:12px; }

@media (max-width:560px){
  .lhdr__in{ padding:12px 18px; }
  .lhdr__logo img{ height:40px; }
  .doc{ padding:36px 0 52px; }
}
