/* CET brand update: DBA typographic language within the existing Ember Executive system. */
:root {
  --cet-orange: #D69F50;
  --cet-orange-rgb: 214 159 80;
  --cet-orange-light: #E8C58F;
  --cet-orange-light-rgb: 232 197 143;
  --cet-orange-deep: #94652C;
  --cet-orange-deep-rgb: 148 101 44;
  --orange: var(--cet-orange);
}

body,
input,
select,
textarea,
button {
  font-family: Montserrat, Arial, sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6,
.hero h1,
.problem-section h2,
.philosophy-section h2,
.resources-section h2,
.contact-section h2,
.resource-grid h3,
.belief-list h3 {
  font-family: "Libre Caslon Display", Georgia, serif !important;
  font-weight: 400 !important;
  text-transform: none !important;
  letter-spacing: -0.025em;
}

h3,
h4,
h5,
h6,
.resource-grid h3,
.belief-list h3 {
  letter-spacing: 0;
}

.eyebrow,
.site-header nav a,
.button,
button,
label,
input,
select,
textarea,
footer {
  font-family: Montserrat, Arial, sans-serif !important;
}

.site-header nav a {
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.eyebrow {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.25em;
  text-transform: uppercase;
}

.button,
button {
  font-weight: 700;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

/* The supplied transparent artwork remains unmodified inside the established logo crop. */
.wordmark-window img {
  image-rendering: auto;
  top: -44px !important;
}

.footer-brand .wordmark-window img { top: -29px !important; }

/* Homepage hero: the supplied image provides the dark text field; masking only joins its edges to the page. */
body.home-page:not(.resources-page):not(.approach-page) .hero {
  background: #080a0c;
}

body.home-page:not(.resources-page):not(.approach-page) .hero:before {
  background:
    linear-gradient(90deg, #080a0cf5 0%, #080a0cbd 29%, #080a0c36 51%, transparent 69%),
    linear-gradient(0deg, #080a0c 0%, transparent 22%, #080a0c1c 100%);
}

body.home-page:not(.resources-page):not(.approach-page) .hero-copy {
  width: min(760px, 52vw);
  max-width: 760px;
}

body.home-page:not(.resources-page):not(.approach-page) .hero h1 {
  width: 100%;
  max-width: 760px;
  font-size: clamp(46px, 4.15vw, 64px);
  line-height: 1.065;
  letter-spacing: -0.02em;
  margin: 25px 0 28px;
}

body.home-page:not(.resources-page):not(.approach-page) .hero h1 > span,
body.home-page:not(.resources-page):not(.approach-page) .hero h1 em span {
  display: block;
  white-space: nowrap;
}

body.home-page:not(.resources-page):not(.approach-page) .hero h1 > span > em {
  display: inline;
}

body.home-page:not(.resources-page):not(.approach-page) .hero-visual img {
  object-fit: contain;
  object-position: right center;
  transform: translateY(var(--parallax, 0px));
}

@media (max-width: 1100px) {
  body.home-page:not(.resources-page):not(.approach-page) .hero-copy {
    width: min(650px, 58vw);
  }

  body.home-page:not(.resources-page):not(.approach-page) .hero h1 {
    font-size: clamp(39px, 5vw, 55px);
  }

  body.home-page:not(.resources-page):not(.approach-page) .hero-visual img {
    object-position: right center;
  }

  .wordmark-window img { top: -42px !important; }
  .footer-brand .wordmark-window img { top: -29px !important; }
}

@media (max-width: 900px) {
  .site-header nav a { font-size: 14px; }

  body.home-page:not(.resources-page):not(.approach-page) .hero-copy {
    width: min(560px, 72vw);
  }

  body.home-page:not(.resources-page):not(.approach-page) .hero h1 > span,
  body.home-page:not(.resources-page):not(.approach-page) .hero h1 em span {
    white-space: normal;
  }

  body.home-page:not(.resources-page):not(.approach-page) .hero-visual img {
    object-position: right center;
  }

  .wordmark-window img { top: -39px !important; }
  .footer-brand .wordmark-window img { top: -29px !important; }
}

@media (max-width: 640px) {
  body.home-page:not(.resources-page):not(.approach-page) .hero:before {
    background:
      linear-gradient(0deg, #080a0c 0%, #080a0cf8 40%, #080a0c73 64%, transparent 88%),
      linear-gradient(90deg, #080a0c52, transparent 62%);
  }

  body.home-page:not(.resources-page):not(.approach-page) .hero-copy {
    width: 100%;
  }

  body.home-page:not(.resources-page):not(.approach-page) .hero h1 {
    max-width: none;
    font-size: clamp(34px, 10.5vw, 45px);
    line-height: 1.02;
  }

  body.home-page:not(.resources-page):not(.approach-page) .hero-visual img {
    width: 145%;
    max-width: none;
    margin-left: -45%;
    object-fit: contain;
    object-position: right 42%;
  }

  .wordmark-window img { top: -37px !important; }
  .footer-brand .wordmark-window img { top: -29px !important; }
}

@media (prefers-reduced-motion: reduce) {
  body.home-page:not(.resources-page):not(.approach-page) .hero-visual img {
    transform: none !important;
  }
}
