/* 3 Counties Style Kit — Brand Green (clean, conflict-free) */
:root{
  /* Primary = Logo Green */
  --color-primary-50:#EAF3ED;
  --color-primary-100:#B8D0C0;
  --color-primary-200:#5A8A68;
  --color-primary-300:#3C6E49;
  --color-primary-400:#2A6039;
  --color-primary-500:#214F2E;
  --color-primary-600:#173820;
  --color-primary-700:#122B19;
  --color-primary-800:#0C1E11;
  --color-primary-900:#07140B;

  /* Secondary (supporting teal) */
  --color-secondary-50:#E7F7F1;
  --color-secondary-100:#CFF0E3;
  --color-secondary-200:#9FE1C7;
  --color-secondary-300:#6FD1AC;
  --color-secondary-400:#3FC290;
  --color-secondary-500:#00A676;
  --color-secondary-600:#008C64;
  --color-secondary-700:#007252;
  --color-secondary-800:#005841;
  --color-secondary-900:#003F2F;

  /* Accent (amber) */
  --color-accent-50:#FFF3E6;
  --color-accent-100:#FFE7CC;
  --color-accent-200:#FFCF99;
  --color-accent-300:#FFB766;
  --color-accent-400:#FF9F33;
  --color-accent-500:#F59E0B;

  /* Feedback & neutrals */
  --color-success:#16A34A;
  --color-warning:#F59E0B;
  --color-danger:#DC2626;
  --color-info:#2563EB;

  --color-neutral-50:#FAFAFA;
  --color-neutral-100:#F5F5F5;
  --color-neutral-200:#E5E5E5;
  --color-neutral-300:#D4D4D4;
  --color-neutral-400:#A3A3A3;
  --color-neutral-500:#737373;
  --color-neutral-600:#525252;
  --color-neutral-700:#404040;
  --color-neutral-800:#262626;
  --color-neutral-900:#171717;

  --font-heading:"Poppins", system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, "Noto Sans";
  --font-body:"Inter", system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, "Noto Sans";

  --text-xs:0.75rem;
  --text-sm:0.875rem;
  --text-base:1rem;
  --text-lg:1.125rem;
  --text-xl:1.25rem;
  --text-2xl:1.5rem;
  --text-3xl:1.875rem;
  --text-4xl:2.25rem;

  --leading-tight:1.2;
  --leading-snug:1.35;
  --leading-normal:1.5;
  --leading-relaxed:1.7;

  --space-0:0;
  --space-1:0.25rem;
  --space-2:0.5rem;
  --space-3:0.75rem;
  --space-4:1rem;
  --space-5:1.25rem;
  --space-6:1.5rem;
  --space-8:2rem;
  --space-10:2.5rem;
  --space-12:3rem;
  --space-16:4rem;

  --radius-sm:6px;
  --radius-md:10px;
  --radius-lg:16px;
  --radius-xl:24px;

  --shadow-sm:0 1px 2px rgba(0,0,0,.06);
  --shadow-md:0 4px 12px rgba(0,0,0,.08);
  --shadow-lg:0 10px 24px rgba(0,0,0,.10);

  --container-max:1200px;
  --container-pad:clamp(16px, 3vw, 32px);
}

body{font-family:var(--font-body);color:var(--color-neutral-800);font-size:var(--text-base);line-height:var(--leading-relaxed);}
h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);line-height:var(--leading-tight);color:var(--color-neutral-900);margin:0 0 var(--space-4);}
h1{font-size:clamp(2rem,2.5vw,2.75rem);} h2{font-size:clamp(1.75rem,2vw,2.25rem);} h3{font-size:clamp(1.5rem,1.6vw,1.875rem);}

.container{max-width:var(--container-max);margin-inline:auto;padding-inline:var(--container-pad);}

/* Buttons (brand green) */
.elementor-button,.button{--btn-bg:var(--color-primary-500);--btn-fg:#fff;--btn-bg-hover:#1B4026;--btn-radius:var(--radius-lg);--btn-py:var(--space-3);--btn-px:var(--space-5);
display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:var(--btn-bg);color:var(--btn-fg);padding:var(--btn-py) var(--btn-px);border-radius:var(--btn-radius);
box-shadow:var(--shadow-sm);text-decoration:none;font-weight:600;border:0}
.elementor-button:hover,.button:hover{background:var(--btn-bg-hover);}

/* Cards */
.card{background:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-md);padding:var(--space-6);border:1px solid var(--color-neutral-200);}

/* Badges */
.badge{display:inline-block;padding:.35rem .6rem;border-radius:999px;font-size:var(--text-sm);background:var(--color-secondary-50);color:var(--color-secondary-700);}

/* Links */
a{color:var(--color-primary-500);} a:hover{color:#1B4026;}

/* Forms */
input,select,textarea{border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);padding:.65rem .8rem;width:100%;}
input:focus,select:focus,textarea:focus{outline:2px solid var(--color-primary-200);}

/* Utilities */
.text-muted{color:var(--color-neutral-600);}
.bg-primary{background:var(--color-primary-500);color:#fff;}
.bg-secondary{background:var(--color-secondary-500);color:#fff;}
.bg-accent{background:var(--color-accent-500);color:#111;}
