:root {
  --side-padding: 40px;
}

/* Editorial New — Thin Italic */
@font-face {
  font-family: "EditorialNew";
  src:
    url("fonts/PPEditorialNew-ThinItalic.woff2") format("woff2"),
    url("fonts/PPEditorialNew-ThinItalic.woff") format("woff");
  font-weight: 100;
  font-style: italic;
  font-display: swap;
}

/* DM Sans — Variable (Normal) */
@font-face {
  font-family: "DMSans";
  src: url("fonts/DM_Sans-VariableFont_opsz,wght.ttf") format("truetype");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

/* DM Sans — Variable (Italic) */
@font-face {
  font-family: "DMSans";
  src: url("fonts/DMSans-Italic-VariableFont_opsz,wght.ttf") format("truetype");
  font-weight: 100 900;
  font-style: italic;
  font-display: swap;
}

html, body {
  overflow-x: hidden;
}

.contact-link {
  font-size: 30px; /* try 24–32px */
  letter-spacing: 0em;
  font-weight: 400;
}

body {
  margin: 0;
  font-family: "DMSans", sans-serif;
  background-color: #d8e5e8;
  color: #1f2a44;
}

a {
  color: inherit;
  text-decoration: none;
}

.container {
  width: 100%;
  max-width: 920px;
  margin: 0 auto;
  /* padding-left: var(--side-padding); */
  padding-right: var(--side-padding);
}

.hero,
.band,
.bio {
  position: relative;
  overflow: visible;
}

/*band section start*/
.seal-window-2 {
  position: absolute;
  top: 80px;
  width: 100px;
  height: 220px;
  overflow: hidden;
  pointer-events: none;
  z-index: 2;
}

.seal-window-2 img {
  width: 200px;
  height: auto;
  display: block;
}

.seal-right {
  right: 0;
}

.seal-right img {
  transform: translateX(-130px);
}

.seal-content {
  top: auto;
}
/*band section end*/

.site-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 40px var(--side-padding);
  position: relative;
  z-index: 5;
}

.logo img {
  width: 220px;
  height: auto;
  display: block;
}

.hero {
  padding: 100px 0 135px;
  text-align: center;
}

.hero-ethos {
  max-width: 900px;
  margin: 0 auto;
  /* font-family: "YourSerif", sans-serif;
  font-size: 52px;
  line-height: 1.1;
  text-align: center;
  color: #1f2a44;
  letter-spacing: 0.1em; */
}

.ethos-strong {
  font-weight: 500;
  font-size: 52px;
  color: #1f2a44;
  /* font-family: "DM Serif Display", serif; */
  font-style: normal;
  letter-spacing: 0em;
  text-transform: uppercase;
}

.ethos-italic {
  font-size: 53px;
  font-style: italic;
  font-weight: 100;
  font-family: "EditorialNew", serif;
  letter-spacing: 0em;
  color: #1f2a44;
}

.band {
  padding: 120px var(--side-padding);
  background-color: #2e3558;
  color: #ffffff;
  text-align: center;
}

.band .text-styling {
  max-width: 493px;
  margin: 0 auto;
  font-size: 25px;
  line-height: 1.6;
  font-family: "DMSans", sans-serif;
  font-weight: 400;
  text-align: center;
  letter-spacing: 0em;
  color: #ffffff;
}
/*bio section start*/
.bio {
  display: flex;
  align-items: center;
  padding: 120px 0 140px;
  background-color: #cbdae1;
}

.content-container {
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
  /* padding-left: 40px; */
  padding-left: var(--side-padding);
  padding-right: var(--side-padding);
}

.bio-layout {
  display: flex !important;
  flex-direction: row;
  justify-content: space-between;
  gap: 60px;
  align-items: flex-start;
  padding-left: 40px;
  /* padding: 40x 0px 40px 0px; */
}
.bio-image {
  align-self: stretch;
  /* flex: 2.4; */
  width: 44%;
}

.bio-image img {
  width: 100%;
  /* height: 100%; */
  object-position: center;
  height: 600px;
  display: block;
  object-fit: contain;
}

.bio-text {
  width: 56%;
}

.bio p {
  font-size: 18px;
  line-height: 1.6;
  margin-bottom: 16px;
  letter-spacing: 0em;
  font-family: "DMSans", sans-serif;
  font-weight: 400;
  color: #1f2a44;
}

.bio p.bio-lead {
  font-size: 30px;
  line-height: 1.15;
  margin-bottom: 18px;
  /* font-family: "DMSans", sans-serif; */
  font-weight: 400;
  font-style: normal;
  padding-right: 21px;
  color: #1f2a44;
  margin-top: 0;
}

.bio-note {
  font-size: 15px;
  line-height: 1.6;
  margin-bottom: 16px;
  letter-spacing: 0em;
  /* font-family: "DMSans", sans-serif; */
  font-weight: 400;
  color: #1f2a44;
}

.seal-window {
  position: absolute;
  top: 245px;
  width: 100px;
  height: 220px;
  overflow: hidden;
  pointer-events: none;
  z-index: 2;
}

.seal-window img {
  width: 200px;
  height: auto;
  display: block;
}

.seal-left {
  left: 0;
}

.seal-left img {
  transform: translateX(-130px);
}

.seal-right-band {
  right: 0px;
}

.seal-right-band img {
  transform: translateX(0px) rotate(180deg);
  filter: hue-rotate(180deg) brightness(10);
}

.seal-hero {
  top: 80px;
}

.seal-bio {
  left: 0;
}

/*bio section end*/

/*footer start*/
.site-footer {
  padding: 60px var(--side-padding);
  background-color: #cbdae1;
  display: flex;
  align-items: center;
  justify-content: center;
}

/*footer end*/

.site-footer p {
  text-align: center;
  font-size: 13px;
  letter-spacing: 0.12em;
  font-family: "DMSans", sans-serif;
  font-weight: 400;
  text-decoration: underline;
  text-decoration-color: #1f2a44;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
}

@media screen and (max-width: 768px) {
  :root {
    --side-padding: 24px;
  }

  .seal-window {
    /* display: none; */
  }

  .hero-ethos {
    font-size: 40px;
    line-height: 1.1;
  }

  .band {
  }
  .container {
    width: 100%;
    max-width: 100%;
  }

  .band .text-styling {
    font-size: 20px;
  }

  .bio {
    padding: 80px 0 100px;
  }

  .bio-layout {
    grid-template-columns: 1fr;
    row-gap: 32px;
    padding: 0;
    flex-direction: column;
  }

  .bio-image,
  .bio-text {
    width: 100%;
  }

  .ethos-italic,
  .ethos-strong {
    font-size: 40px;
  }

  .bio p.bio-lead {
    font-size: 24px;
  }

  .contact-link {
    font-size: 20px;
  }

  .logo img {
    width: 150px;
  }

  .bio p {
    font-size: 16px;
  }

  .seal-window-2 img {
    width: 110px;
  }

  .seal-right-band {
    right: -40px;
}
.seal-content {
    top: 10px;
}
.seal-left img {
    transform: translateX(-70px);
}
.seal-window img {
    width: 120px;
    height: auto;
    display: block;
}
.seal-hero {
    top: -10px;
}
.bio-image img {
  height: auto;
}
}
