:root {
  --cedaw-primary: #9361f7;
  --cedaw-primary-dark: #844cf6;
  --cedaw-green: #003f27;
  --cedaw-lime: #b5d372;
  --cedaw-lavender: #dcdcfb;
  --cedaw-cream: #fafaf0;
  --cedaw-white: #fff;
  --cedaw-font-regular: "Gilroy-Regular", "DM Sans", Arial, sans-serif;
  --cedaw-font-medium: "Gilroy-Medium", "DM Sans", Arial, sans-serif;
  --cedaw-font-bold: "Gilroy-Bold", "Manrope", Arial, sans-serif;
  --cedaw-container: 1180px;
  --cedaw-wide: 1280px;
  --cedaw-page-edge: 80px;
  --cedaw-gutter: clamp(1rem, 4vw, 2rem);
  --cedaw-section-space: 100px;
  --cedaw-radius: 20px;
  --cedaw-transition: .3s ease;
}

.cedaw-block { color: var(--cedaw-green); font-family: var(--cedaw-font-regular); font-size: 16px; line-height: 27px; }
.cedaw-block *, .cedaw-block *::before, .cedaw-block *::after { box-sizing: border-box; }
:where(.cedaw-block) img { display: block; max-width: 100%; height: auto; }
:where(.cedaw-block) a { color: inherit; text-decoration: none; }
.cedaw-container { width: min(calc(100% - (var(--cedaw-gutter) * 2)), var(--cedaw-container)); margin-inline: auto; }
.cedaw-container--wide { width: calc(100% - (var(--cedaw-page-edge) * 2)); max-width: var(--cedaw-wide); margin-inline: auto; }
.cedaw-section { position: relative; overflow: hidden; padding-block: var(--cedaw-section-space); }
.cedaw-section--cream { background: var(--cedaw-cream); }
.cedaw-section--lavender { background: rgb(196 196 251 / .6); }
.cedaw-section--green { background: var(--cedaw-green); color: var(--cedaw-white); }
.cedaw-section--purple { background: var(--cedaw-primary-dark); color: var(--cedaw-white); }
.cedaw-eyebrow { margin: 0 0 .8rem; font-family: var(--cedaw-font-bold); font-size: 14px; font-weight: 400; line-height: 1; letter-spacing: 2px; text-transform: uppercase; }
.cedaw-eyebrow--purple { color: var(--cedaw-primary-dark); }
.cedaw-eyebrow--green { color: var(--cedaw-green); }
.cedaw-eyebrow--lime { color: var(--cedaw-lime); }
.cedaw-title { margin: 0 0 1.5rem; font-family: var(--cedaw-font-bold); font-size: 50px; font-weight: 400; line-height: 56px; text-wrap: balance; }
.cedaw-lead { margin: 0 0 1.25rem; font-family: var(--cedaw-font-bold); font-size: 20px; font-weight: 400; line-height: 28px; }
.cedaw-copy > :last-child { margin-bottom: 0; }
.cedaw-copy--large { font-family: var(--cedaw-font-medium); font-size: 21.6px; line-height: 33.48px; }
.cedaw-copy--large p { font: inherit; letter-spacing: inherit; }
.cedaw-button { display: inline-flex; min-height: 44px; align-items: center; justify-content: center; gap: .65rem; padding: 13px 34px; border: 2px solid transparent; border-radius: 100px; font-family: var(--cedaw-font-medium); font-size: 16px; line-height: 1; transition: color var(--cedaw-transition), background-color var(--cedaw-transition), border-color var(--cedaw-transition); }
.cedaw-block .cedaw-button--white { border-color: var(--cedaw-white); background: var(--cedaw-white); color: var(--cedaw-green); }
.cedaw-block .cedaw-button--white:hover, .cedaw-block .cedaw-button--white:focus-visible { background: transparent; color: var(--cedaw-white); }
.cedaw-block .cedaw-button--purple { border-color: var(--cedaw-primary-dark); background: var(--cedaw-primary-dark); color: var(--cedaw-white); }
.cedaw-block .cedaw-button--purple:hover, .cedaw-block .cedaw-button--purple:focus-visible { background: transparent; color: var(--cedaw-green); }
.cedaw-block .cedaw-button--lime { border-color: var(--cedaw-lime); background: var(--cedaw-lime); color: var(--cedaw-green); }
.cedaw-block .cedaw-button--lime:hover, .cedaw-block .cedaw-button--lime:focus-visible { border-color: var(--cedaw-white); background: transparent; color: var(--cedaw-white); }
.cedaw-button--download::after { content: ""; width: 20px; height: 20px; flex: 0 0 20px; background: currentColor; -webkit-mask: url('../icons/download.webp') center/contain no-repeat; mask: url('../icons/download.webp') center/contain no-repeat; }
.cedaw-decoration { position: absolute; z-index: 1; width: auto; pointer-events: none; }
.cedaw-sr-only { position: absolute !important; width: 1px; height: 1px; padding: 0; border: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; }
.cedaw-block :focus-visible { outline: 3px solid #ffca28; outline-offset: 3px; }

@media (max-width: 48rem) {
  :root { --cedaw-section-space: 70px; }
  .cedaw-container--wide { width: calc(100% - (var(--cedaw-gutter) * 2)); }
  .cedaw-title { font-size: clamp(2rem, 10vw, 3.125rem); line-height: 1.12; }
}

@media (prefers-reduced-motion: reduce) {
  .cedaw-block *, .cedaw-block *::before, .cedaw-block *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
