/* ==========================================================================
   House Clearance in Lancashire (Clear This Ltd) — design system.
   Faithful to lancashirehouseclearance.com: brand green #1AA31C, Montserrat
   headings/labels + ABeeZee body, clean white surfaces — with measured polish
   (real states, depth, one warm accent for value/quote CTAs).
   ========================================================================== */

/* CRITICAL: Bricks frontend CSS forces html{font-size:62.5%} (10px root), which
   shrinks every rem. Restore a 16px root so the whole type scale reads correctly. */
html{font-size:100%;-webkit-text-size-adjust:100%;}

:root{
  /* Surfaces */
  --paper:#F7FAF6;       /* soft off-white green-tinted base */
  --surface:#FFFFFF;     /* cards / raised */
  --tint:#EAF4EA;        /* soft green band */
  --tint-2:#F1F5EF;      /* neutral band */

  /* Ink */
  --ink:#16241A;         /* primary text (deep green-black, AA) */
  --ink-dim:#46594B;     /* secondary text (AA) */
  --ink-soft:#6E7E72;    /* captions */

  /* Brand green (live #1AA31C) */
  --green:#1AA31C;       /* primary */
  --green-700:#138214;   /* hover/pressed */
  --green-800:#0E6610;   /* deepest */
  --green-dk:#138214;    /* alias */
  --green-soft:#E3F3E1;  /* badge / tint */
  --forest:#0E2912;      /* very dark green for overlays/footer */

  /* Warm accent (value / auction / quote CTAs) — replaces Divi's accidental link-blue */
  --amber:#E08A1E;
  --amber-dk:#B96E10;
  --amber-soft:#FBEAD0;
  /* brass-* aliases kept so the component layer keeps working */
  --brass:#E08A1E;
  --brass-dk:#B96E10;
  --brass-soft:#FBEAD0;

  --border:#E2EADF;
  --border-2:#CDD9C8;

  /* Type — Montserrat display/labels + ABeeZee body (matches live Google Fonts) */
  --font-body:'ABeeZee',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --font-display:'Montserrat','Helvetica Neue',Arial,sans-serif;
  --font-label:'Montserrat','Helvetica Neue',Arial,sans-serif;

  --fs-h1:clamp(2.3rem,1.5rem + 3.4vw,3.9rem);
  --fs-h2:clamp(1.8rem,1.35rem + 2.1vw,2.7rem);
  --fs-h3:clamp(1.3rem,1.12rem + .8vw,1.55rem);
  --fs-body:clamp(1.02rem,.99rem + .18vw,1.12rem);
  --fs-lead:clamp(1.15rem,1.05rem + .5vw,1.4rem);
  --fs-small:.9rem;
  --fs-eyebrow:.78rem;

  /* Layout */
  --container:1200px;
  --container-narrow:760px;
  --gutter:clamp(1.1rem,4vw,2.4rem);

  /* Spacing (4px base) */
  --sp-1:.25rem; --sp-2:.5rem; --sp-3:.75rem; --sp-4:1rem;
  --sp-5:1.5rem; --sp-6:2rem; --sp-7:3rem; --sp-8:4rem;

  /* Radius */
  --radius:14px;
  --radius-sm:9px;
  --radius-pill:999px;

  /* Shadow (green-tinted) */
  --shadow:0 2px 4px rgba(14,41,18,.05),0 16px 36px -16px rgba(14,41,18,.20);
  --shadow-sm:0 1px 2px rgba(14,41,18,.06),0 8px 20px -12px rgba(14,41,18,.16);
  --ring:0 0 0 3px rgba(26,163,28,.38);

  /* Motion */
  --ease:cubic-bezier(.22,1,.36,1);
  --section-y:clamp(3.2rem,6.5vw,6rem);
}

*,*::before,*::after{box-sizing:border-box;}
body{
  margin:0;background:var(--paper);color:var(--ink);
  font-family:var(--font-body);font-size:var(--fs-body);line-height:1.7;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden;
}
::selection{background:var(--green);color:#fff;}

/* Headings — Montserrat display */
h1,h2,h3,h4,h5,h6,.brxe-heading{
  font-family:var(--font-display);font-weight:700;line-height:1.14;
  letter-spacing:-.01em;color:var(--ink);margin:0 0 .5em;
}
h1{font-size:var(--fs-h1);line-height:1.07;}
h2{font-size:var(--fs-h2);}
h3{font-size:var(--fs-h3);font-weight:600;}
p{margin:0 0 1.15em;}
p:last-child{margin-bottom:0;}
a{color:var(--green);text-underline-offset:3px;text-decoration-thickness:1px;}
a:hover{color:var(--green-700);}
img{max-width:100%;height:auto;display:block;}
strong{font-weight:600;color:var(--ink);}
ul,ol{padding-left:1.2em;margin:0 0 1.15em;}
li{margin:.35em 0;}
hr{border:0;border-top:1px solid var(--border);margin:2rem 0;}

/* Eyebrow / labels — Montserrat, uppercase, letterspaced */
.eyebrow,.brxe-text-basic.eyebrow{
  font-family:var(--font-label);font-weight:700;text-transform:uppercase;
  letter-spacing:.18em;font-size:var(--fs-eyebrow);color:var(--amber);
  display:inline-block;margin:0 0 .9rem;
}
.eyebrow--green{color:var(--green);}
.eyebrow--light{color:var(--amber-soft);}

/* Containers / sections */
.lhc-container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter);}
.lhc-container--narrow{max-width:var(--container-narrow);}
.lhc-section{padding-block:var(--section-y);}
.lhc-section--tint{background:var(--tint);}
.lhc-section--sand{background:var(--tint-2);}
.lhc-section--neutral{background:var(--tint-2);}
.lhc-section--green{background:var(--green);color:#fff;}
.lhc-section--ink{background:var(--forest);color:#fff;}
.lhc-section--tight{padding-block:clamp(2.2rem,4vw,3.4rem);}

/* Buttons */
.btn,.brxe-button.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.5em;
  font-family:var(--font-label);font-weight:700;font-size:.92rem;line-height:1;
  text-transform:uppercase;letter-spacing:.08em;
  padding:1.05em 1.8em;min-height:52px;border-radius:999px;border:2px solid transparent;
  text-decoration:none;cursor:pointer;transition:background-color .25s var(--ease),color .25s var(--ease),border-color .25s var(--ease),transform .15s var(--ease);
}
.btn:active{transform:translateY(1px);}
.btn--primary{background:var(--green);color:#fff;border-color:var(--green);}
.btn--primary:hover{background:var(--green-700);border-color:var(--green-700);color:#fff;}
.btn--accent{background:var(--amber);color:#fff;border-color:var(--amber);}
.btn--accent:hover{background:var(--amber-dk);border-color:var(--amber-dk);color:#fff;}
.btn--ghost{background:transparent;color:var(--green);border-color:var(--border-2);}
.btn--ghost:hover{border-color:var(--green);color:var(--green-700);background:#fff;}
.btn--light{background:#fff;color:var(--green);border-color:#fff;}
.btn--light:hover{background:var(--green-soft);color:var(--green-700);}
.btn--outline-light{background:transparent;color:#fff;border-color:rgba(255,255,255,.6);}
.btn--outline-light:hover{background:#fff;color:var(--green-700);border-color:#fff;}
.btn--lg{font-size:1rem;padding:1.15em 2em;min-height:58px;}

:focus-visible{outline:none;box-shadow:var(--ring);border-radius:6px;}
.skip-link{position:absolute;left:-9999px;top:0;background:var(--green);color:#fff;padding:.7em 1.2em;z-index:2000;}
.skip-link:focus{left:0;}

.brxe-heading{margin-bottom:.5em;}
#brx-content,.brx-body{background:var(--paper);}

/* Prose */
.lhc-prose{font-size:var(--fs-body);color:var(--ink);line-height:1.75;}
.lhc-prose h2{margin-top:1.9em;font-size:clamp(1.6rem,1.2rem + 1.5vw,2.1rem);}
.lhc-prose h3{margin-top:1.4em;}
.lhc-prose ul{padding-left:1.25em;}
.lhc-prose a{font-weight:600;}
.lhc-prose blockquote{margin:1.6em 0;padding:1.1em 1.5em;border-left:4px solid var(--amber);background:var(--amber-soft);border-radius:0 12px 12px 0;font-size:1.05em;font-style:italic;}

.lhc-lead{font-size:var(--fs-lead);color:var(--ink-dim);line-height:1.5;}
.lhc-center{text-align:center;}
