/* DRE Design System · Spacing & Layout */
:root {
  --dre-maxw-content: 1400px;
  --dre-maxw-hero:    1500px;

  --dre-section-py:   7.5rem;   /* 120px */
  --dre-section-px:   2.25rem;
  --dre-section-py-m: 5rem;
  --dre-section-px-m: 1.25rem;

  --dre-card-p:       2.25rem;
  --dre-grid-gap:     1.5rem;
  --dre-hero-gap:     5rem;

  --dre-stack-block:  1.25rem;
  --dre-stack-micro:  0.625rem;
}

/* Layout helpers */
.dre-container      {width:100%;max-width:var(--dre-maxw-content);margin:0 auto;padding-left:var(--dre-section-px);padding-right:var(--dre-section-px);}
.dre-container--hero{max-width:var(--dre-maxw-hero);}
.dre-section        {padding-top:var(--dre-section-py);padding-bottom:var(--dre-section-py);}
.dre-grid-12        {display:grid;grid-template-columns:repeat(12,1fr);gap:var(--dre-grid-gap);}
.dre-grid-3         {display:grid;grid-template-columns:repeat(3,1fr);gap:var(--dre-grid-gap);}
.dre-grid-2         {display:grid;grid-template-columns:repeat(2,1fr);gap:var(--dre-hero-gap);}
