:root {
    --oer-green: #1f4d3a;
    --oer-green-dark: #183d2e;
    --oer-blue: #4c84a6;
    --oer-charcoal: #23312b;
    --oer-ink-soft: #4d5c55;
    --oer-surface: #f8f7f2;
    --oer-tint: #eef2ea;
    --oer-white: #ffffff;
    --oer-border: rgba(35, 49, 43, 0.10);
    --oer-shadow: 0 14px 40px rgba(31, 77, 58, 0.08);
    --oer-radius: 22px;
    --oer-container: 1180px;
  }
  
  html {
    scroll-behavior: smooth;
  }
  
  body.oer-site {
    background: var(--oer-surface);
    color: var(--oer-charcoal);
    font-family: "Inter", sans-serif;
  }
  
  body.oer-site h1,
  body.oer-site h2,
  body.oer-site h3,
  body.oer-site h4,
  body.oer-site h5,
  body.oer-site h6 {
    color: var(--oer-charcoal);
    font-family: "Sora", sans-serif;
    line-height: 1.1;
  }
  
  body.oer-site p,
  body.oer-site li {
    color: var(--oer-ink-soft);
    line-height: 1.7;
  }
  
  .oer-container {
    width: min(calc(100% - 2rem), var(--oer-container));
    margin-inline: auto;
  }
  
  .oer-section {
    padding: clamp(4.5rem, 7vw, 7rem) 0;
  }
  
  .oer-section--tint {
    background: var(--oer-tint);
  }
  
  .oer-eyebrow {
    margin: 0 0 1rem;
    color: var(--oer-blue);
    font-size: 0.85rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
  }
  
  .oer-eyebrow--light {
    color: rgba(255, 255, 255, 0.75);
  }
  
  .oer-section__title,
  .oer-cta__title {
    margin: 0 0 1rem;
    font-size: clamp(2rem, 4vw, 3.3rem);
    letter-spacing: -0.03em;
  }
  
  .oer-section__lead,
  .oer-cta__text {
    max-width: 720px;
    margin: 0;
    font-size: 1.08rem;
  }
  
  .oer-hero {
    padding-top: clamp(5rem, 9vw, 7.5rem);
  }
  
  .oer-hero__grid,
  .oer-split-grid,
  .oer-cta__inner {
    display: grid;
    gap: 2rem;
    align-items: center;
  }
  
  .oer-hero__grid {
    grid-template-columns: 1.15fr 0.85fr;
  }
  
  .oer-hero__title {
    margin: 0 0 1rem;
    font-size: clamp(2.8rem, 6vw, 5rem);
    letter-spacing: -0.045em;
  }
  
  .oer-hero__text {
    max-width: 640px;
    margin: 0;
    font-size: 1.1rem;
  }
  
  .oer-hero__visual {
    display: flex;
    justify-content: center;
  }
  
  .oer-hero__card,
  .oer-panel,
  .oer-card,
  .oer-logo-card {
    border: 1px solid var(--oer-border);
    border-radius: var(--oer-radius);
    background: rgba(255, 255, 255, 0.78);
    box-shadow: var(--oer-shadow);
    backdrop-filter: blur(10px);
  }
  
  .oer-hero__card {
    width: min(100%, 420px);
    padding: 2rem;
    background:
      radial-gradient(circle at top right, rgba(76, 132, 166, 0.18), transparent 34%),
      linear-gradient(135deg, rgba(31, 77, 58, 0.06), rgba(255, 255, 255, 0.9));
  }
  
  .oer-hero__badge {
    display: inline-flex;
    margin-bottom: 1rem;
    padding: 0.45rem 0.8rem;
    border-radius: 999px;
    background: rgba(31, 77, 58, 0.10);
    color: var(--oer-green);
    font-size: 0.85rem;
    font-weight: 700;
  }
  
  .oer-hero__list,
  .oer-panel ul {
    margin: 0;
    padding-left: 1.1rem;
  }
  
  .oer-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.9rem;
    margin-top: 2rem;
  }
  
  .oer-trust-line {
    margin-top: 1rem;
    font-size: 0.95rem;
  }
  
  .oer-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 0.85rem 1.25rem;
    border: 1px solid transparent;
    border-radius: 999px;
    text-decoration: none !important;
    font-weight: 700;
    transition: 180ms ease;
  }
  
  .oer-button--primary {
    background: var(--oer-green);
    color: var(--oer-white);
  }
  
  .oer-button--primary:hover {
    background: var(--oer-green-dark);
    color: var(--oer-white);
  }
  
  .oer-button--secondary {
    border-color: rgba(31, 77, 58, 0.18);
    background: transparent;
    color: var(--oer-green);
  }
  
  .oer-button--secondary:hover {
    background: rgba(31, 77, 58, 0.06);
    color: var(--oer-green-dark);
  }
  
  .oer-button--light {
    background: var(--oer-white);
    color: var(--oer-green);
  }
  
  .oer-button--ghost-light {
    border-color: rgba(255, 255, 255, 0.25);
    color: var(--oer-white);
  }
  
  .oer-button--ghost-light:hover {
    background: rgba(255, 255, 255, 0.08);
    color: var(--oer-white);
  }
  
  .oer-card-grid {
    display: grid;
    gap: 1.25rem;
    margin-top: 2rem;
  }
  
  .oer-card-grid--3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  
  .oer-card-grid--4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  
  .oer-card,
  .oer-panel,
  .oer-logo-card {
    padding: 1.6rem;
  }
  
  .oer-card h3,
  .oer-panel h3 {
    margin: 0 0 0.6rem;
    font-size: 1.15rem;
  }
  
  .oer-split-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 2rem;
  }
  
  .oer-logo-stack {
    display: grid;
    gap: 1rem;
  }
  
  .oer-cta {
    background: linear-gradient(135deg, var(--oer-green), #295f48);
  }
  
  .oer-cta__title,
  .oer-cta__text,
  .oer-cta .oer-eyebrow {
    color: var(--oer-white);
  }
  
  @media (max-width: 1024px) {
    .oer-card-grid--4 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  
    .oer-hero__grid {
      grid-template-columns: 1fr;
    }
  }
  
  @media (max-width: 767px) {
    .oer-section {
      padding: 4rem 0;
    }
  
    .oer-card-grid--3,
    .oer-card-grid--4,
    .oer-split-grid,
    .oer-cta__inner {
      grid-template-columns: 1fr;
    }
  
    .oer-actions {
      flex-direction: column;
      align-items: stretch;
    }
  
    .oer-button {
      width: 100%;
    }
  }