:root {
  --theme-font-size: 1rem;
  --theme-font-weight: 300;
  --theme-line-height: 1.5;
  --theme-font-family: 'Work Sans', sans-serif;
  --theme-font-family-alt: 'Source Serif 4', serif;
  --theme-transition-duration: 0.4s;
  --theme-color-heritage-blue: #0e2c6e;
  --theme-color-spirit-blue: #78abe1;
  --theme-color-midnight-blue: #071735;
  --theme-color-salmon: #e8927c;
  --theme-color-lavender: #9e8fb0;
  --theme-color-mint-green: #86c8bc;
  --theme-color-gold: #f1c400;
  --theme-color-tan: #ddd1bc;
  --theme-color-tan-lighter: #e2dcd0;
  --theme-color-tan-lightest: #f4f1ea;
  --theme-color-white: #fff;
  --theme-color-soft-white: #fafafa;
  --theme-color-grey: #666;
  --theme-color-grey-light: #aaa;
  --theme-color-grey-lightest: #ccc;
  --theme-color-soft-grey: #eee;
  --theme-color-black: #000;
  --theme-color-black-light: #222;
  --theme-color-black-lightest: #444;
  --theme-color-frosted-almond: #f3f0e8;
}

* {
  padding: 0;
  margin: 0;
  outline: 0;
  box-sizing: border-box;
}

*:before,
*:after {
  box-sizing: inherit;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
main {
  display: block;
}

template {
  display: none;
}

html {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  tap-highlight-color: rgba(0, 0, 0, 0);
}

body {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
  -webkit-text-size-adjust: none;
     -moz-text-size-adjust: none;
          text-size-adjust: none;
}

img,
iframe,
video,
audio,
object {
  max-width: 100%;
}

img,
iframe {
  border: 0 none;
}

img {
  height: auto;
  display: inline-block;
  vertical-align: middle;
}

b,
strong {
  font-weight: 700;
}

address {
  font-style: normal;
}

svg:not(:root) {
  overflow: hidden;
}

a,
button,
input[type=submit],
input[type=button],
input[type=reset],
input[type=file],
input[type=image],
label[for] {
  cursor: pointer;
}

button[disabled],
input[disabled],
textarea[disabled],
select[disabled] {
  cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  padding: 0;
  border: 0;
}

input[type=text],
input[type=password],
input[type=date],
input[type=datetime],
input[type=datetime-local],
input[type=month],
input[type=week],
input[type=email],
input[type=number],
input[type=search],
input[type=tel],
input[type=time],
input[type=url],
input[type=color],
textarea,
a[href^=tel] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
          appearance: none;
}

textarea {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  overflow-scrolling: touch;
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: inherit;
  color: inherit;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
}

button,
select {
  text-transform: none;
}

table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}

nav ul,
nav ol {
  list-style: none outside none;
}

input::-moz-placeholder {
  color: inherit;
  opacity: 1;
}

input::placeholder {
  color: inherit;
  opacity: 1;
}

textarea::-moz-placeholder {
  color: inherit;
  opacity: 1;
}

textarea::placeholder {
  color: inherit;
  opacity: 1;
}

input:-webkit-autofill {
  -webkit-text-fill-color: inherit;
  box-shadow: 0 0 0 1000px #fff inset;
}

input[type=text],
input[type=button],
input[type=tel],
input[type=email],
input[type=submit],
input[type=date],
input[type=search],
textarea {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

html {
  scroll-behavior: smooth;
}

body {
  --admin-bar-height: 0px;
  min-width: 320px;
  font: var(--theme-font-weight) var(--theme-font-size)/var(--theme-line-height) var(--theme-font-family);
  color: var(--theme-color-heritage-blue);
  background-color: var(--theme-color-frosted-almond);
}
body.admin-bar {
  --admin-bar-height: 32px;
}
@media (max-width: 782px) {
  body.admin-bar {
    --admin-bar-height: 46px;
  }
}

*::-webkit-scrollbar {
  width: 11px;
  height: 11px;
}
*::-webkit-scrollbar-track {
  background: var(--theme-color-frosted-almond);
  border-radius: 4px;
}
*::-webkit-scrollbar-thumb {
  background: var(--theme-color-heritage-blue);
  border-radius: 4px;
  -webkit-transition: background-color 0.2s ease;
  transition: background-color 0.2s ease;
}
*::-webkit-scrollbar-thumb:hover {
  background: var(--gray-637);
}
*::-webkit-scrollbar-corner {
  background: transparent;
}
* {
  /* Firefox scrollbar styling */
  scrollbar-width: thin;
  scrollbar-color: var(--theme-color-heritage-blue) var(--theme-color-frosted-almond);
}

a {
  color: inherit;
  text-decoration: underline;
}
@media (hover: hover) and (pointer: fine) {
  a:where(:hover, :focus-visible) {
    text-decoration: none;
  }
}
a[href^=tel] {
  text-decoration: none;
}

.h1,
h1,
.h2,
h2,
.h3,
h3,
.h4,
h4,
.h5,
h5,
.h6,
h6 {
  margin-bottom: calc(var(--theme-line-height) * 0.5em);
}
.h1:last-child,
h1:last-child,
.h2:last-child,
h2:last-child,
.h3:last-child,
h3:last-child,
.h4:last-child,
h4:last-child,
.h5:last-child,
h5:last-child,
.h6:last-child,
h6:last-child {
  margin-bottom: 0;
}

.h1,
h1 {
  font-family: var(--theme-font-family-alt);
  font-weight: 700;
  line-height: 0.9;
  font-size: 3.5rem;
}
@media (max-width: 1512px) {
  .h1,
  h1 {
    font-size: clamp(2.5rem, 1.4298480786vw + 2.1487935657rem, 3.5rem);
  }
}

.h2,
h2 {
  font-family: var(--theme-font-family-alt);
  font-weight: 700;
  line-height: 1;
  font-size: 3rem;
}
@media (max-width: 1512px) {
  .h2,
  h2 {
    font-size: clamp(2.25rem, 1.072386059vw + 1.9865951743rem, 3rem);
  }
}

.h3,
h3 {
  font-family: var(--theme-font-family-alt);
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .h3,
  h3 {
    font-size: clamp(35px, 1.3333333333vw + 21.3466666667px, 40px);
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .h3,
  h3 {
    line-height: 1.2;
  }
}

.h4,
h4 {
  font-family: var(--theme-font-family-alt);
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.3;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .h4,
  h4 {
    line-height: 1.2;
  }
}

.h5,
h5 {
  font-family: var(--theme-font-family-alt);
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.2;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .h5,
  h5 {
    font-size: clamp(20px, 1.0666666667vw + 9.0773333333px, 24px);
  }
}

.h6,
h6 {
  font-family: var(--theme-font-family-alt);
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.2;
}

p,
ul,
ol,
dl,
hr,
table,
blockquote {
  margin-bottom: calc(var(--theme-line-height) * 0.5em);
}
p:last-child,
ul:last-child,
ol:last-child,
dl:last-child,
hr:last-child,
table:last-child,
blockquote:last-child {
  margin-bottom: 0;
}

::-moz-selection {
  color: var(--theme-color-frosted-almond);
  background-color: var(--theme-color-heritage-blue);
}

::selection {
  color: var(--theme-color-frosted-almond);
  background-color: var(--theme-color-heritage-blue);
}

.clear:after {
  content: "";
  line-height: 0;
  display: table;
  clear: both;
}

.sr-only,
.sr-only-focusable:not(:focus, :focus-within) {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

.image-fit {
  pointer-events: none;
  position: absolute;
  inset: 0;
}
.image-fit img,
.image-fit video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.notext {
  white-space: nowrap;
  text-indent: 100%;
  text-shadow: none;
  overflow: hidden;
}

[disabled],
.disabled {
  cursor: default;
}

[hidden],
.hidden {
  display: none;
}

@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .hidden-xs {
    display: none !important;
  }
}
@media (min-width: 767.02px) and (max-width: 1023px) {
  .hidden-sm {
    display: none !important;
  }
}
@media (min-width: 1023.02px) and (max-width: 1199px) {
  .hidden-md {
    display: none !important;
  }
}
@media (min-width: 1199.02px) {
  .hidden-lg {
    display: none !important;
  }
}
.richtext-entry > ul:not([class]),
.richtext-entry > ol:not([class]) {
  padding-left: 30px;
}
.richtext-entry > ul:not([class]) ol,
.richtext-entry > ul:not([class]) ul,
.richtext-entry > ol:not([class]) ol,
.richtext-entry > ol:not([class]) ul {
  padding-left: 30px;
}
.richtext-entry > blockquote {
  border-left: 2px solid var(--theme-color-primary);
  margin-left: 0;
  padding: 0 0 0 16px;
}
.richtext-entry > *.alignwide {
  width: 100%;
  max-width: 100%;
  clear: both;
}
.richtext-entry > *.aligncenter {
  margin-left: auto;
  margin-right: auto;
}
.richtext-entry > *.alignfull {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  width: auto;
  padding: 0 20px;
}

.btn, div.gform_wrapper.gravity-theme.gform-theme--no-framework .gform_button_select_files, div.gform_wrapper.gravity-theme.gform-theme--no-framework .gform_footer input,
div.gform_wrapper.gravity-theme.gform-theme--no-framework .gform_footer button,
div.gform_wrapper.gravity-theme.gform-theme--no-framework .gform_page_footer input,
div.gform_wrapper.gravity-theme.gform-theme--no-framework .gform_page_footer button, .comments .comment__reply a, .comment-respond .form-submit input {
  --button-font-size: 0.75rem;
  --button-border-radius: 99em;
  --button-color: var(--theme-color-heritage-blue);
  --button-background-color: transparent;
  --button-border-color: var(--button-color);
  --button-transition-duration: var(--theme-transition-duration);
  --button-hover-color: var(--theme-color-heritage-blue);
  --button-hover-background-color: var(--theme-color-white);
  --button-hover-border-color: var(--button-hover-color);
  padding: 11px 18px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 14px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: var(--button-background-color);
  border: 1px solid var(--button-border-color);
  border-radius: var(--button-border-radius);
  box-shadow: none;
  color: var(--button-color);
  text-transform: uppercase;
  text-align: center;
  text-decoration: none;
  font-size: var(--button-font-size);
  font-weight: 500;
  letter-spacing: 0.2em;
  transition: color, background, border, gap;
  transition-duration: var(--button-transition-duration);
}
@media (hover: hover) and (pointer: fine) {
  .btn:where(:hover, :focus-visible), div.gform_wrapper.gravity-theme.gform-theme--no-framework .gform_button_select_files:where(:hover, :focus-visible), div.gform_wrapper.gravity-theme.gform-theme--no-framework .gform_footer input:where(:hover, :focus-visible),
  div.gform_wrapper.gravity-theme.gform-theme--no-framework .gform_footer button:where(:hover, :focus-visible),
  div.gform_wrapper.gravity-theme.gform-theme--no-framework .gform_page_footer input:where(:hover, :focus-visible),
  div.gform_wrapper.gravity-theme.gform-theme--no-framework .gform_page_footer button:where(:hover, :focus-visible), .comments .comment__reply a:where(:hover, :focus-visible), .comment-respond .form-submit input:where(:hover, :focus-visible) {
    color: var(--button-hover-color);
    background: var(--button-hover-background-color);
    border-color: var(--button-hover-border-color);
  }
}

.btn--on-dark-blue {
  --button-color: var(--theme-color-white);
  --button-background-color: transparent;
  --button-border-color: var(--button-color);
  --button-hover-color: var(--theme-color-white);
  --button-hover-background-color: rgba(255, 255, 255, 0.2);
  --button-hover-border-color: var(--button-hover-color);
}

.btn--on-light-blue {
  --button-color: var(--theme-color-heritage-blue);
  --button-background-color: transparent;
  --button-border-color: var(--button-color);
  --button-hover-color: var(--theme-color-heritage-blue);
  --button-hover-background-color: rgba(255, 255, 255, 0.2);
  --button-hover-border-color: var(--button-hover-color);
}

.btn--on-white {
  --button-color: var(--theme-color-heritage-blue);
  --button-background-color: transparent;
  --button-border-color: var(--button-color);
  --button-hover-color: var(--theme-color-white);
  --button-hover-background-color: var(--theme-color-heritage-blue);
  --button-hover-border-color: var(--button-hover-background-color);
}

.btn--light-blue {
  --button-color: var(--theme-color-spirit-blue);
  --button-background-color: transparent;
  --button-border-color: var(--button-color);
  --button-hover-color: var(--theme-color-spirit-blue);
  --button-hover-background-color: rgba(255, 255, 255, 0.2);
  --button-hover-border-color: var(--button-hover-color);
}

.btn--icon {
  padding: 8px;
  width: 42px;
  height: 42px;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  gap: 0;
}

.btn--large {
  padding: 14px 20px;
  padding-block: clamp(8px, 0.5361930295vw + 5.8927613941px, 14px);
  padding-inline: clamp(15px, 0.4468275246vw + 13.2439678284px, 20px);
}
.btn--large:has(svg) {
  padding: 14px 29px 14px 20px;
  padding-block: clamp(8px, 0.5361930295vw + 5.8927613941px, 14px);
  padding-left: clamp(15px, 0.4468275246vw + 13.2439678284px, 20px);
  padding-right: clamp(17px, 1.072386059vw + 12.7855227882px, 29px);
}

.btn--large.btn--icon {
  padding: 8px;
  width: 48px;
  height: 48px;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  gap: 0;
}

.btn--small {
  padding: 8px 16px;
}
.btn--small:has(svg) {
  padding: 8px 18px 8px 16px;
}

.btn--small.btn--icon {
  padding: 4px;
  width: 36px;
  height: 36px;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  gap: 0;
}

.btn-plain {
  --button-font-size: 0.75rem;
  --button-border-radius: 99em;
  --button-color: var(--theme-color-heritage-blue);
  --button-background-color: transparent;
  --button-border-color: var(--button-background-color);
  --button-transition-duration: var(--theme-transition-duration);
  --button-hover-color: var(--theme-color-white);
  --button-hover-background-color: var(--theme-color-heritage-blue);
  --button-hover-border-color: var(--button-hover-background-color);
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 14px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: var(--button-background-color);
  border: 1px solid var(--button-border-color);
  border-radius: var(--button-border-radius);
  box-shadow: none;
  color: var(--button-color);
  text-transform: uppercase;
  text-align: center;
  text-decoration: none;
  font-size: var(--button-font-size);
  font-weight: 500;
  letter-spacing: 0.2em;
  transition: color, background, border, gap;
  transition-duration: var(--button-transition-duration);
}
@media (hover: hover) and (pointer: fine) {
  .btn-plain:where(:hover, :focus-visible) {
    color: var(--button-hover-color);
    background: var(--button-hover-background-color);
    border-color: var(--button-hover-border-color);
  }
}
.btn-plain {
  position: relative;
  padding: 8px;
  gap: 0;
  min-width: 30px;
  height: 30px;
}
.btn-plain .btn-plain__text {
  overflow: hidden;
  max-width: 0;
  white-space: nowrap;
  pointer-events: none;
  transition: max-width var(--theme-transition-duration) ease;
}
.btn-plain .btn-plain__icon {
  display: block;
  width: 10px;
  height: 10px;
  flex-shrink: 0;
}
@media (hover: hover) and (pointer: fine) {
  .btn-plain:where(:hover, :focus-visible) {
    --button-hover-color: var(--theme-color-heritage-blue);
    --button-hover-background-color: transparent;
    --button-hover-border-color: transparent;
    gap: 10px;
  }
  .btn-plain:where(:hover, :focus-visible) .btn-plain__text {
    max-width: 240px;
    pointer-events: all;
  }
}

.btn-plain--on-dark-blue {
  --button-color: var(--theme-color-white);
  --button-background-color: transparent;
  --button-border-color: var(--button-background-color);
  --button-hover-color: var(--theme-color-white);
  --button-hover-background-color: transparent;
  --button-hover-border-color: var(--button-hover-background-color);
}

.btn-plain--icon {
  padding: 4px;
  width: 30px;
  height: 30px;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
  gap: 0;
}
@media (hover: hover) and (pointer: fine) {
  .btn-plain--icon:where(:hover, :focus-visible) {
    --button-hover-color: var(--theme-color-white);
    --button-hover-background-color: var(--theme-color-heritage-blue);
    --button-hover-border-color: var(--button-hover-background-color);
  }
}

.btn-plain--icon.btn-plain--on-dark-blue {
  --button-color: var(--theme-color-white);
  --button-background-color: transparent;
  --button-border-color: var(--button-background-color);
  --button-hover-color: var(--theme-color-heritage-blue);
  --button-hover-background-color: var(--theme-color-white);
  --button-hover-border-color: var(--button-hover-background-color);
}

.btn-plain--icon.btn-plain--on-light-blue {
  --button-color: var(--theme-color-heritage-blue);
  --button-background-color: transparent;
  --button-border-color: var(--button-background-color);
  --button-hover-color: var(--theme-color-spirit-blue);
  --button-hover-background-color: var(--theme-color-heritage-blue);
  --button-hover-border-color: var(--button-hover-background-color);
}

.btn-search {
  display: grid;
  grid-template-areas: "search-icon";
  place-items: center;
  width: 35px;
  height: 35px;
  background-color: transparent;
  border: 1px solid var(--theme-color-heritage-blue);
  border-radius: 50%;
  transition: border-color, background-color, transform;
  transition-duration: var(--theme-transition-duration);
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .btn-search {
    width: clamp(30px, 1.3333333333vw + 16.3466666667px, 35px);
  }
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .btn-search {
    height: clamp(30px, 1.3333333333vw + 16.3466666667px, 35px);
  }
}
@media (max-width: 1023px) {
  .btn-search {
    width: clamp(26px, 1.4285714286vw + 20.3857142857px, 35px);
  }
}
@media (max-width: 1023px) {
  .btn-search {
    height: clamp(26px, 1.4285714286vw + 20.3857142857px, 35px);
  }
}
.btn-search .btn-search__icon-close, .btn-search .btn-search__icon-open {
  grid-area: search-icon;
  transition: opacity var(--theme-transition-duration), transform var(--theme-transition-duration);
}
.btn-search .btn-search__icon-close, .btn-search.is-active .btn-search__icon-open {
  opacity: 0;
  pointer-events: none;
  transform: scale(0);
}
.btn-search.is-active {
  will-change: transform;
  border-color: transparent;
}
.btn-search.is-active .btn-search__icon-close {
  opacity: 1;
  pointer-events: all;
  transform: scale(1);
}
@media (hover: hover) and (pointer: fine) {
  .btn-search:where(:hover, :focus-visible).is-active {
    transform: scale(0.95);
  }
  .btn-search:where(:hover, :focus-visible):not(.is-active) {
    background-color: var(--theme-color-white);
  }
}

.btn-menu {
  position: relative;
  display: none;
  width: 35px;
  height: 20px;
  background-color: transparent;
  border: none;
  z-index: 110;
  transition: width var(--theme-transition-duration);
}
@media (max-width: 1199px) {
  .btn-menu {
    display: block;
  }
}
@media (max-width: 1023px) {
  .btn-menu {
    width: 40px;
  }
}
.btn-menu span {
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  height: 1px;
  width: 100%;
  background: var(--theme-color-heritage-blue);
  transform: translateX(-50%);
  transition: top 0.2s 0.25s, opacity 0.2s 0.25s, transform 0.2s 0s, background-color var(--theme-transition-duration), width var(--theme-transition-duration);
}
.btn-menu span:nth-child(1) {
  top: 0px;
}
.btn-menu span:nth-child(2) {
  top: 9px;
}
.btn-menu span:nth-child(3) {
  top: 19px;
}

body.has-open-menu .btn-menu span {
  width: 70%;
  transition: background 0.2s, top 0.2s, opacity 0.2s, transform 0.2s 0.25s;
}
body.has-open-menu .btn-menu span:nth-child(1),
body.has-open-menu .btn-menu span:nth-child(3) {
  top: 9px;
}
body.has-open-menu .btn-menu span:nth-child(1) {
  transform: translateX(-50%) rotate(45deg);
}
body.has-open-menu .btn-menu span:nth-child(2) {
  opacity: 0;
}
body.has-open-menu .btn-menu span:nth-child(3) {
  transform: translateX(-50%) rotate(-45deg);
}

.comment-respond {
  width: 100%;
  padding-top: 30px;
  border-top: 1px solid #363636;
}
.comment-respond h3 {
  position: relative;
}
.comment-respond small {
  position: absolute;
  top: 0;
  right: 0;
}
.comment-respond label {
  display: inline-block;
  padding-bottom: 4px;
}
.comment-respond input[type=text],
.comment-respond textarea {
  display: block;
  width: 100%;
  padding: 10px;
  background: transparent;
  border: 1px solid var(--theme-color-heritage-blue);
  border-radius: 10px;
  resize: none;
  transition: background var(--theme-transition-duration);
}
.comment-respond textarea {
  height: 100px;
}
.comment-respond input[type=text]:focus,
.comment-respond textarea:focus {
  background-color: rgba(255, 255, 255, 0.2);
}
@media (hover: hover) and (pointer: fine) {
  .comment-respond input[type=text]:focus:where(:hover, :focus-visible),
  .comment-respond textarea:focus:where(:hover, :focus-visible) {
    background-color: rgba(255, 255, 255, 0.2);
  }
}
.comment-respond input[type=text]::-moz-placeholder {
  color: rgba(14, 44, 110, 0.7);
}
.comment-respond input[type=text]::placeholder {
  color: rgba(14, 44, 110, 0.7);
}
.comment-respond .required {
  color: #f00;
}
.comment-respond .comment-notes {
  padding-top: 15px;
}
.comments {
  position: relative;
}
.comments .children {
  position: relative;
  padding-left: 7rem;
}
.comments .children:before, .comments .children:after {
  content: "";
  position: absolute;
  display: block;
}
.comments .children:before {
  top: 33px;
  left: 23px;
  width: 32px;
  height: 27px;
  border-left: 8px solid #c3c3c3;
  border-bottom: 8px solid #c3c3c3;
  border-radius: 0 0 0 8px;
}
.comments .children:after {
  top: -0.5rem;
  left: 8px;
  border: 20px solid transparent;
  border-width: 20px 19px;
  border-bottom-color: #c3c3c3;
}
.comments .comment {
  position: relative;
  border-top: 1px dashed #363636;
}
.comments .avatar {
  position: absolute;
  top: 28px;
  left: 0;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  border: 1px solid #ccc;
}
.comments .says {
  padding-left: 5px;
}
.comments .moderation-notice {
  display: inline-block;
  margin: 3px 0 8px;
  color: #999;
}
.comments .comment__entry {
  position: relative;
  padding: 30px 0 30px 65px;
}
.comments .comment__text p:last-child {
  padding-bottom: 0;
  margin-bottom: 0;
}
.comments .comment__meta {
  padding-bottom: 12px;
}
.comments .comment__meta a {
  color: #363636;
}
.comments .comment__reply {
  padding-top: 10px;
  text-align: right;
}
.paging .page-numbers {
  padding: 2px 5px 5px;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  margin: 0 5px;
  color: var(--theme-color-heritage-blue);
  border-bottom: 1px solid transparent;
  border-radius: 0;
  text-decoration: none;
  transition: all 0.4s;
  text-transform: uppercase;
  font-family: var(--theme-font-family);
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.2em;
  font-size: 0.875rem;
  letter-spacing: 0;
}
.paging .page-numbers.dots {
  cursor: default;
}
.paging .page-numbers:not(.dots):hover {
  border-color: rgba(14, 44, 110, 0.5);
}
.paging .page-numbers.current {
  border-color: currentColor;
}

.paging__inner {
  position: relative;
  padding-block: 81px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-inline: auto;
  border-left: 1px solid var(--theme-color-heritage-blue);
}
@media (max-width: 1023px) {
  .paging__inner {
    padding-block: 73px 100px;
    flex-wrap: wrap;
    border-left: none;
  }
}
.paging__inner:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  --dot-color: var(--theme-color-heritage-blue);
  background-image: repeating-linear-gradient(to right, var(--dot-color) 1px 2px, transparent 1px 6px);
  background-position: bottom left;
  background-repeat: repeat-x;
  background-size: auto 1px;
}
@media (max-width: 1023px) {
  .paging__inner:before {
    display: none;
  }
}

.paging__prev,
.paging__next {
  display: block;
  width: 36px;
  height: 36px;
  margin: 0 36px;
  background: transparent url("../images/icon-arrow-right-blue.svg") no-repeat 55% 50%;
  background-size: 21%;
  border: 1px solid var(--theme-color-heritage-blue);
  border-radius: 50%;
  transition: color, background, border-color;
  transition-duration: var(--theme-transition-duration);
}
@media (max-width: 374px) {
  .paging__prev,
  .paging__next {
    display: none;
  }
}
@media (hover: hover) and (pointer: fine) {
  .paging__prev:not(.disabled):where(:hover, :focus-visible),
  .paging__next:not(.disabled):where(:hover, :focus-visible) {
    background: var(--theme-color-heritage-blue) url("../images/icon-arrow-right-white.svg") no-repeat 55% 50%;
    background-size: 21%;
  }
}

.paging__prev {
  background: transparent url("../images/icon-arrow-left-blue.svg") no-repeat 45% 50%;
  background-size: 21%;
}
@media (hover: hover) and (pointer: fine) {
  .paging__prev:not(.disabled):where(:hover, :focus-visible) {
    background: var(--theme-color-heritage-blue) url("../images/icon-arrow-left-white.svg") no-repeat 45% 50%;
    background-size: 21%;
  }
}

.paging__prev.disabled,
.paging__next.disabled {
  opacity: 0.3;
  pointer-events: none;
}

.search-form {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.search-form label {
  width: 100%;
}
.search-form input {
  padding: 12px 12px 12px 49px;
  width: 100%;
  height: 50px;
  color: var(--theme-color-heritage-blue);
  background-color: transparent;
  border: 1px solid currentColor;
  border-radius: 99em;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .search-form input {
    height: clamp(40px, 2.6666666667vw + 12.6933333333px, 50px);
  }
}
.search-form input::-moz-placeholder {
  color: var(--theme-color-heritage-blue);
}
.search-form input::placeholder {
  color: var(--theme-color-heritage-blue);
}
.search-form input:focus {
  box-shadow: none !important;
}
.search-form input:focus:invalid {
  color: rgba(255, 255, 255, 0.2);
}
.search-form input:-webkit-autofill, .search-form input:-webkit-autofill:focus, .search-form input:-webkit-autofill:active {
  box-shadow: 0 0 0 30px rgba(255, 255, 255, 0.5) inset !important;
}
@media (hover: hover) and (pointer: fine) {
  .search-form input:where(:hover, :focus-visible) {
    background-color: rgba(255, 255, 255, 0.2);
    -webkit-backdrop-filter: blur(10px);
            backdrop-filter: blur(10px);
    box-shadow: none;
  }
}

.search-form__btn {
  position: absolute;
  top: 50%;
  left: 15px;
  transform: translateY(-50%);
  width: 24px;
  height: 24px;
  background-color: transparent;
  border: none;
}
.search-form__btn svg {
  display: block;
}

.section-comments {
  padding-top: 15px;
}
.section-comments a {
  text-decoration: none;
}
.section-comments p {
  padding-bottom: 18px;
}
.section-comments ol,
.section-comments ul {
  padding: 0;
  margin: 0;
  list-style: none outside none;
}
.section-comments h3 {
  position: relative;
  padding: 0 0 10px;
}
.section-comments h3 small {
  position: absolute;
  top: 0;
  right: 0;
}

.widget {
  margin-bottom: 15px;
}
.widget:last-child {
  margin-bottom: 0;
}
.widget > ul {
  list-style: none outside none;
  margin: 0;
}
.widget > ul li {
  padding: 5px;
}
.widget > ul a {
  text-decoration: none;
  border-bottom: 1px solid transparent;
  transition: color, border;
  transition-duration: var(--theme-transition-duration);
}
@media (hover: hover) and (pointer: fine) {
  .widget > ul a:where(:hover, :focus-visible) {
    border-bottom-color: var(--theme-color-primary);
    color: var(--theme-color-primary);
  }
}

.widget_nav_menu ul {
  list-style: none;
}
.widget_nav_menu ul li {
  padding: 5px;
}

.widgets {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  margin: -10px -20px;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .widgets {
    margin: 0;
  }
}
.widgets > li {
  width: 50%;
  padding: 10px 20px;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .widgets > li {
    width: 100%;
    padding: 10px 0;
  }
}

.alignnone,
.alignleft,
.alignright,
.aligncenter {
  margin: 5px 15px calc(var(--lh-base) * 0.5em);
}

.alignleft {
  margin-left: 0;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .alignleft {
    margin: 5px 0 10px;
  }
}

.alignright {
  margin-right: 0;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .alignright {
    margin: 5px 0 10px;
  }
}

.alignnone {
  margin-left: 0;
  margin-right: 0;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .alignnone {
    margin: 5px 0 10px;
  }
}

.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .aligncenter {
    margin: 5px 0 10px;
  }
}

.wp-caption {
  position: relative;
}

.wp-caption img {
  width: 100%;
}

.wp-caption-text {
  padding: 8px;
  font-size: 0.8em;
  color: inherit;
  background: transparent;
  text-align: center;
}

.nocomments {
  padding-top: 12px;
  font-weight: 700;
  font-size: r(18px);
}

.wp-block-search__input {
  border: 2px solid var(--theme-color-primary);
}

.wp-block-search__button {
  text-transform: uppercase;
  border: 2px solid var(--theme-color-primary);
  background: var(--theme-color-primary);
  color: #fff;
  padding: 8px;
  transition: color, background, border;
  transition-duration: var(--theme-transition-duration);
}
@media (hover: hover) and (pointer: fine) {
  .wp-block-search__button:where(:hover, :focus-visible) {
    background: transparent;
    color: var(--theme-color-primary);
  }
}

.article {
  display: grid;
  grid-template-columns: 1fr 4fr;
  gap: 30px;
}
@media (max-width: 575px) {
  .article {
    grid-template-columns: 100px 1fr;
    gap: 20px;
  }
}
@media (max-width: 374px) {
  .article {
    grid-template-columns: 1fr;
  }
}

.article__image img {
  aspect-ratio: 1/1;
  -o-object-fit: cover;
     object-fit: cover;
}

.article__content:only-child {
  grid-column: 1/-1;
}

.article__head,
.article__title,
.article__entry {
  margin-bottom: 10px;
}
.article__head:last-child,
.article__title:last-child,
.article__entry:last-child {
  margin-bottom: 0;
}

.article-single a {
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
  text-decoration-color: transparent;
  transition: text-decoration-color, color;
  transition-duration: var(--theme-transition-duration);
}
@media (hover: hover) and (pointer: fine) {
  .article-single a:where(:hover, :focus-visible) {
    color: var(--theme-color-spirit-blue);
    text-decoration-color: currentColor;
  }
}

.article-single__head,
.article-single__image {
  margin-bottom: 40px;
}
.article-single__head:last-child,
.article-single__image:last-child {
  margin-bottom: 0;
}

.article-single__image img {
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
  -o-object-fit: cover;
     object-fit: cover;
}

.articles {
  display: grid;
  grid-template-columns: 1fr;
  gap: 37px;
  list-style: none;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .articles {
    gap: clamp(20px, 4.5333333333vw + -26.4213333333px, 37px);
  }
}
@media (max-width: 1023px) {
  .articles {
    gap: 33px;
  }
}

.footer {
  padding-block: 48px 40px;
  width: 100%;
  color: var(--theme-color-spirit-blue);
  background: linear-gradient(180deg, #0E2C6E 0%, #071735 100%);
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .footer {
    padding-top: clamp(30px, 4.8vw + -19.152px, 48px);
  }
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .footer {
    padding-bottom: clamp(30px, 2.6666666667vw + 2.6933333333px, 40px);
  }
}
@media (max-width: 1023px) {
  .footer {
    padding-block: 20px;
  }
}

.footer__inner {
  border-top: 1px solid var(--theme-color-spirit-blue);
}

.footer__cols {
  padding-block: 21px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .footer__cols {
    padding-block: clamp(18px, 0.8vw + 9.808px, 21px);
  }
}
@media (max-width: 1023px) {
  .footer__cols {
    padding-block: 19px 48px;
    grid-template-columns: 1fr;
  }
}

.footer__col {
  position: relative;
  padding-inline: 22px;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .footer__col {
    padding-inline: clamp(15px, 1.8666666667vw + -4.1146666667px, 22px);
  }
}
@media (max-width: 1023px) {
  .footer__col {
    padding: 23px 0;
  }
}
.footer__col:before {
  content: "";
  --dot-color: currentColor;
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  height: 100%;
  background-image: repeating-linear-gradient(to bottom, var(--dot-color) 1px 2px, transparent 1px 5px);
  background-position: top left;
  background-repeat: repeat-y;
  background-size: 1px auto;
}
@media (max-width: 1023px) {
  .footer__col:before {
    --dot-color: currentColor;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-image: repeating-linear-gradient(to right, var(--dot-color) 1px 2px, transparent 1px 6px);
    background-position: bottom left;
    background-repeat: repeat-x;
    background-size: auto 1px;
  }
}
.footer__col:first-child {
  padding-left: 0;
}
@media (max-width: 1023px) {
  .footer__col:first-child {
    padding-block: 0 43px;
  }
}
.footer__col:last-child {
  padding-right: 0;
}
@media (max-width: 1023px) {
  .footer__col:last-child {
    padding-bottom: 0;
  }
}
.footer__col:first-child:before {
  display: none;
}

.footer__contacts {
  display: flex;
  flex-direction: column;
  gap: 21px;
  margin-bottom: 22px;
  list-style: none;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .footer__contacts {
    gap: clamp(18px, 0.8vw + 9.808px, 21px);
  }
}
.footer__contacts:last-child {
  margin-bottom: 0;
}
@media (max-width: 1023px) {
  .footer__contacts {
    gap: 20px;
    margin-bottom: 21px;
  }
}

.footer__email,
.footer__phone,
.footer__address {
  display: flex;
  align-items: center;
  gap: 18px;
}
.footer__email strong,
.footer__phone strong,
.footer__address strong {
  display: block;
  font-weight: 500;
}

.footer__email a,
.footer__phone a {
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-color: currentColor;
  transition: color var(--theme-transition-duration);
}
@media (hover: hover) and (pointer: fine) {
  .footer__email a:where(:hover, :focus-visible),
  .footer__phone a:where(:hover, :focus-visible) {
    color: var(--theme-color-white);
  }
}

.footer__address svg {
  flex-shrink: 0;
  align-self: flex-start;
}

.footer__newsletter {
  display: grid;
  gap: 15px;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .footer__newsletter {
    gap: clamp(13px, 0.5333333333vw + 7.5386666667px, 15px);
  }
}
.footer__newsletter strong {
  font-weight: 500;
}
.footer__newsletter a {
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-color: currentColor;
  transition: color var(--theme-transition-duration);
}
@media (hover: hover) and (pointer: fine) {
  .footer__newsletter a:where(:hover, :focus-visible) {
    color: var(--theme-color-white);
  }
}

.footer__newsletter-title {
  color: var(--theme-color-white);
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .footer__newsletter-title {
    display: none;
  }
}

@media (max-width: 1023px) {
  .footer__newsletter-entry {
    font-weight: 500;
  }
}

.footer__bar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  font-weight: 400;
}
@media (max-width: 1023px) {
  .footer__bar {
    padding-top: 24px;
    border-top: 1px solid var(--theme-color-spirit-blue);
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .footer__bar {
    flex-direction: column;
    align-items: flex-start;
  }
}

.footer__nav-utils ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 20px;
}
.footer__nav-utils a {
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-color: currentColor;
  transition: color var(--theme-transition-duration);
}
@media (hover: hover) and (pointer: fine) {
  .footer__nav-utils a:where(:hover, :focus-visible) {
    color: var(--theme-color-white);
  }
}

.footer__copyright {
  text-align: right;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .footer__copyright {
    text-align: initial;
  }
}

.footer__newsletter-form .wpforms-container.wpforms-container .wpforms-field input {
  padding: 5px 20px;
  height: 35px;
  color: var(--theme-color-spirit-blue);
  background-color: transparent;
  border: 1px solid rgba(120, 171, 225, 0.5);
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .footer__newsletter-form .wpforms-container.wpforms-container .wpforms-field input {
    padding: 5px 10px;
    height: 45px;
    border-radius: 99em;
    font-size: r(15px);
    font-weight: 400;
  }
}
.footer__newsletter-form .wpforms-container.wpforms-container .wpforms-field input::-moz-placeholder {
  color: rgba(120, 171, 225, 0.6);
}
.footer__newsletter-form .wpforms-container.wpforms-container .wpforms-field input::placeholder {
  color: rgba(120, 171, 225, 0.6);
}
.footer__newsletter-form .wpforms-container.wpforms-container .wpforms-field input:focus:invalid {
  color: var(--theme-color-spirit-blue);
}
.footer__newsletter-form .wpforms-container.wpforms-container .wpforms-field input.wpforms-error.wpforms-error {
  color: var(--theme-color-spirit-blue);
  border-color: red;
}
.footer__newsletter-form .wpforms-container.wpforms-container .wpforms-field input:-webkit-autofill, .footer__newsletter-form .wpforms-container.wpforms-container .wpforms-field input:-webkit-autofill:focus, .footer__newsletter-form .wpforms-container.wpforms-container .wpforms-field input:-webkit-autofill:active {
  box-shadow: 0 0 0 30px var(--theme-color-spirit-blue) inset !important;
}

.footer__newsletter-form .wpforms-container.wpforms-container.wpforms-container.wpforms-container .wpforms-submit {
  padding: 11px 31px 11px 15px;
  color: var(--theme-color-spirit-blue);
  background: transparent url("../images/icon-chevron-right-light.svg") no-repeat calc(100% - 16px) 50% !important;
  background-size: contain;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .footer__newsletter-form .wpforms-container.wpforms-container.wpforms-container.wpforms-container .wpforms-submit {
    padding: 11px 19px;
    background: transparent !important;
  }
}
@media (hover: hover) and (pointer: fine) {
  .footer__newsletter-form .wpforms-container.wpforms-container.wpforms-container.wpforms-container .wpforms-submit:where(:hover, :focus-visible) {
    color: var(--theme-color-spirit-blue) !important;
    background-color: rgba(255, 255, 255, 0.2) !important;
    border-color: var(--button-hover-color) !important;
  }
}

.header {
  position: fixed;
  top: 0;
  padding-block: 16px;
  width: 100%;
  border-bottom: 1px solid var(--theme-color-heritage-blue);
  z-index: 100;
  transition: background, transform;
  transition-duration: var(--theme-transition-duration);
}
.header:before {
  content: "";
  position: absolute;
  inset: 0;
  backdrop-filter: blur(25px);
  -webkit-backdrop-filter: blur(25px);
  background-color: rgba(243, 240, 232, 0.7);
  z-index: -1;
}
body.has-open-search .header {
  background-color: #f3f0e8;
}
body.has-open-menu .header {
  background-color: #f3f0e8;
}
body.is-scrolled .header {
  transform: translateY(-101%);
}

.header__inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .header__inner {
    gap: clamp(10px, 5vw + -49.95px, 20px);
  }
}

.header__content {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex: 1;
}
@media (max-width: 1199px) {
  .header__content {
    position: absolute;
    top: calc(100% + 1px);
    left: 0;
    padding: 37px 20px 24px;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    gap: 30px;
    width: 100%;
    height: calc(100dvh - var(--theme-header-height));
    background-color: var(--theme-color-frosted-almond);
    overflow-y: auto;
    opacity: 0;
    pointer-events: none;
    transition: opacity var(--theme-transition-duration);
  }
  body.admin-bar .header__content {
    height: calc(100dvh - var(--theme-header-height) - var(--admin-bar-height));
  }
  .header__content {
    padding-inline: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
  }
}
body.has-open-menu .header__content {
  opacity: 1;
  pointer-events: all;
}

.header__utilities {
  display: flex;
  align-items: center;
  gap: 20px;
}

body.admin-bar #wpadminbar {
  position: fixed;
}
body.admin-bar .header {
  margin-top: var(--admin-bar-height);
}

.logo {
  display: block;
  width: 161px;
  text-decoration: none;
  transition: filter var(--theme-transition-duration);
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .logo {
    width: clamp(135px, 13vw + -20.87px, 161px);
  }
}
@media (max-width: 1023px) {
  .logo {
    width: clamp(125px, 1.5873015873vw + 118.7619047619px, 135px);
  }
}
.logo:focus {
  filter: drop-shadow(0 0 20px currentColor);
}
.logo > img {
  display: block;
  width: 100%;
}

.logo--large {
  width: 204px;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .logo--large {
    width: clamp(150px, 14.4vw + 2.544px, 204px);
  }
}
@media (max-width: 1023px) {
  .logo--large {
    width: 174px;
  }
}

.main {
  width: 100%;
  flex-grow: 1;
  flex-shrink: 0;
  margin-top: var(--theme-header-height);
}

body.error404 .main,
body.search-results .main,
body.search-no-results .main {
  display: flex;
  flex-wrap: wrap;
}
body.error404 .main > section,
body.search-results .main > section,
body.search-no-results .main > section {
  width: 100%;
}

@media (max-width: 1199px) {
  .nav {
    width: 100%;
    height: 100%;
  }
}
.nav::-webkit-scrollbar {
  display: none;
}
.nav::-webkit-scrollbar-track {
  display: none;
}
.nav {
  /* Firefox scrollbar styling */
  scrollbar-width: none;
}
.nav .menu {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 4px;
  color: var(--theme-color-heritage-blue);
  list-style: none;
}
@media (max-width: 1399px) {
  .nav .menu {
    gap: 10px 0;
  }
}
@media (max-width: 1199px) {
  .nav .menu {
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
    width: 100%;
  }
}
.nav .menu > .menu-item {
  position: relative;
  padding-inline: 18px 11px;
  display: flex;
  align-items: center;
  gap: 2px;
  transition: opacity var(--theme-transition-duration), padding var(--theme-transition-duration), margin var(--theme-transition-duration);
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .nav .menu > .menu-item {
    padding-left: clamp(7px, 5.5vw + -58.945px, 18px);
  }
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .nav .menu > .menu-item {
    padding-right: clamp(7px, 2vw + -16.98px, 11px);
  }
}
@media (max-width: 1199px) {
  .nav .menu > .menu-item {
    position: relative;
    flex-wrap: wrap;
    padding: 0 0 16px;
    justify-content: space-between;
    align-items: flex-start;
    gap: 0 10px;
    width: 100%;
    margin-bottom: 16px;
  }
}
@media (max-width: 1199px) {
  .nav .menu > .menu-item:after, .nav .menu > .menu-item:first-child:before {
    content: "";
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    height: 1px;
    --dot-color: var(--theme-color-heritage-blue);
    background-image: repeating-linear-gradient(to right, var(--dot-color) 1px 2px, transparent 1px 6px);
    background-position: bottom left;
    background-repeat: repeat-x;
    background-size: auto 1px;
    transition: opacity var(--theme-transition-duration);
  }
}
@media (max-width: 1199px) {
  .nav .menu > .menu-item:first-child {
    padding-top: 20px;
  }
}
@media (max-width: 1199px) {
  .nav .menu > .menu-item:first-child:before {
    top: 0;
  }
}
@media (max-width: 1199px) {
  .nav .menu > .menu-item:last-child {
    margin-bottom: 0;
  }
}
.nav .menu > .menu-item > a {
  display: block;
  text-decoration: underline;
  text-underline-offset: 2px;
  text-decoration-color: transparent;
  transition: text-decoration-color, text-shadow;
  transition-duration: var(--theme-transition-duration);
  text-transform: uppercase;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.2em;
}
@media (max-width: 1199px) {
  .nav .menu > .menu-item > a {
    width: calc(100% - 46px);
    text-transform: initial;
    font-family: var(--theme-font-family-alt);
    font-size: 1.5rem;
    font-weight: 500;
    line-height: 1.3;
    letter-spacing: 0;
  }
}
.nav .menu > .menu-item > a:focus {
  text-decoration-color: currentColor;
}
@media (hover: hover) and (pointer: fine) {
  .nav .menu > .menu-item:where(:hover, :focus-visible) > a {
    text-decoration-color: currentColor;
  }
}
@media (min-width: 1199.02px) {
  .nav .menu > .menu-item-has-children:last-child .sub-menu {
    left: auto;
    right: 0;
    text-align: right;
  }
}
.nav .menu > .menu-item-has-children:last-child .sub-menu:before {
  left: auto;
  right: 0;
}
.nav .menu > .menu-item-has-children {
  cursor: pointer;
}
@media (max-width: 1199px) {
  .nav .menu > .menu-item-has-children.is-active:after {
    opacity: 0;
    pointer-events: none;
  }
}
@media (max-width: 1199px) {
  .nav .menu > .menu-item-has-children.is-active > a {
    text-shadow: 1px 0 0 currentColor;
    text-decoration-color: currentColor;
  }
}
@media (max-width: 1199px) {
  .nav .menu > .menu-item-has-children.is-active > button.menu-item-toggle {
    color: var(--theme-color-white);
    background-color: var(--theme-color-heritage-blue);
    transform: rotate(0);
  }
}
.nav .menu > .menu-item-has-children.is-active .sub-menu {
  opacity: 1;
  pointer-events: all;
}
.nav .menu > .menu-item-has-children > .menu-item-toggle {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  background-color: transparent;
  border: none;
  will-change: transform, box-shadow;
  transition: transform, box-shadow;
  transition-duration: var(--theme-transition-duration);
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .nav .menu > .menu-item-has-children > .menu-item-toggle {
    width: clamp(16px, 4vw + -31.96px, 24px);
  }
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .nav .menu > .menu-item-has-children > .menu-item-toggle {
    height: clamp(16px, 4vw + -31.96px, 24px);
  }
}
@media (max-width: 1199px) {
  .nav .menu > .menu-item-has-children > .menu-item-toggle {
    width: 36px;
    height: 36px;
    flex-shrink: 0;
    border: 1px solid var(--theme-color-heritage-blue);
    border-radius: 50%;
    transform: rotate(-90deg);
  }
}
.nav .menu > .menu-item-has-children > .menu-item-toggle:focus {
  box-shadow: 0 0 4px currentColor;
  border-radius: 50%;
}
@media (max-width: 1199px) {
  .nav .menu > .menu-item-has-children > .menu-item-toggle:focus {
    box-shadow: none;
    background-color: var(--theme-color-white);
  }
}
@media (max-width: 1023px) {
  .nav .menu > .menu-item-has-children > .menu-item-toggle:focus {
    background-color: transparent;
  }
}
.nav .menu > .menu-item-has-children > .menu-item-toggle svg {
  display: block;
  margin-top: 1px;
}
@media (max-width: 1199px) {
  .nav .menu > .menu-item-has-children > .menu-item-toggle svg {
    width: 10px;
    height: 10px;
  }
}
.nav .sub-menu {
  position: absolute;
  top: calc(100% + 25px);
  left: 0;
  padding: 18px 20px 20px;
  width: 324px;
  background-color: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(25px);
  -webkit-backdrop-filter: blur(25px);
  border-top: 1px solid currentColor;
  opacity: 0;
  pointer-events: none;
  transition: opacity var(--theme-transition-duration), transform var(--theme-transition-duration);
}
@media (max-width: 1199px) {
  .nav .sub-menu {
    position: relative;
    top: 0;
    left: 0;
    padding: 15px 0 0;
    margin-top: 15px;
    display: none;
    width: 100%;
    height: 100%;
    border-top: none;
    background-color: var(--theme-color-frosted-almond);
    -webkit-backdrop-filter: none;
            backdrop-filter: none;
    overflow: hidden;
  }
}
.nav .sub-menu:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 1px;
  height: 200%;
  background-color: var(--theme-color-heritage-blue);
}
@media (max-width: 1199px) {
  .nav .sub-menu:before {
    top: 0;
    left: 0;
    width: 100%;
    height: 1px;
    --dot-color: var(--theme-color-heritage-blue);
    background-color: transparent;
    background-image: repeating-linear-gradient(to right, var(--dot-color) 1px 2px, transparent 1px 6px);
    background-position: bottom left;
    background-repeat: repeat-x;
    background-size: auto 1px;
  }
}
.nav .sub-menu:after {
  content: "";
  position: absolute;
  top: -30px;
  left: 0;
  width: 100%;
  height: 30px;
}
@media (max-width: 1199px) {
  .nav .sub-menu:after {
    display: none;
  }
}
.nav .sub-menu.active {
  opacity: 1;
  pointer-events: all;
}
.nav .sub-menu .menu-item {
  position: relative;
  padding-bottom: 11px;
  margin-bottom: 16px;
}
@media (max-width: 1199px) {
  .nav .sub-menu .menu-item {
    padding-bottom: 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 14px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .nav .sub-menu .menu-item:where(:hover, :focus-visible) .menu-item-toggle {
    transform: translateX(5px);
  }
}
@media (min-width: 1199.02px) {
  .nav .sub-menu .menu-item:last-child {
    padding-bottom: 0;
    margin-bottom: 0;
  }
}
@media (max-width: 1199px) {
  .nav .sub-menu .menu-item:last-child {
    margin-bottom: 1px;
  }
}
.nav .sub-menu .menu-item:after {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: 1px;
  --dot-color: var(--theme-color-heritage-blue);
  background-image: repeating-linear-gradient(to right, var(--dot-color) 1px 2px, transparent 1px 6px);
  background-position: bottom left;
  background-repeat: repeat-x;
  background-size: auto 1px;
}
@media (min-width: 1199.02px) {
  .nav .sub-menu .menu-item:last-child:after {
    display: none;
  }
}
.nav .sub-menu a {
  display: block;
  text-decoration: underline;
  text-underline-offset: 2px;
  text-decoration-color: transparent;
  font-family: var(--theme-font-family-alt);
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.4;
  transition: text-decoration-color var(--theme-transition-duration);
  font-size: 1.5rem;
}
@media (max-width: 1399px) {
  .nav .sub-menu a {
    font-size: clamp(1rem, 4vw + -1.9975rem, 1.5rem);
  }
}
@media (max-width: 1199px) {
  .nav .sub-menu a {
    text-transform: initial;
    font-family: var(--theme-font-family-alt);
    font-size: 1.5rem;
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: 0;
  }
}
@media (hover: hover) and (pointer: fine) {
  .nav .sub-menu a:where(:hover, :focus-visible) {
    text-decoration-color: currentColor;
  }
}
.nav .sub-menu .menu-item-toggle {
  display: none;
}
@media (max-width: 1199px) {
  .nav .sub-menu .menu-item-toggle {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 11px;
    height: 11px;
    margin-right: 5px;
    background-color: transparent;
    border: none;
    will-change: transform;
    transition: transform var(--theme-transition-duration);
  }
}
@media (max-width: 1023px) {
  .nav .sub-menu .menu-item-toggle {
    margin-right: 12px;
  }
}

.section-default {
  display: flex;
  width: 100%;
}
.section-default--404 {
  width: 100%;
  display: flex;
  align-items: stretch;
  text-align: center;
}
.section-default--404 .section-default__inner {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.section-default__inner {
  padding-inline: 40px;
  height: 100%;
  border-left: 1px solid var(--theme-color-heritage-blue);
  padding-block: clamp(60px, 3.5746201966vw + 45.9517426273px, 100px);
  padding-inline: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
}
@media (max-width: 1023px) {
  .section-default__inner {
    padding-inline: 0;
    border-left: none;
  }
}

.section-default__content,
.section-default__head {
  margin-bottom: 40px;
}
.section-default__content:last-child,
.section-default__head:last-child {
  margin-bottom: 0;
}

.section-default__entry {
  margin-bottom: 20px;
}
.section-default__entry:last-child {
  margin-bottom: 0;
}
.section-default--404 .section-default__entry {
  max-width: 600px;
  margin-inline: auto;
}

.shell {
  --shell-max-width: 1266px;
  max-width: calc(var(--shell-max-width) + var(--shell-gutter) * 2);
  padding-inline: var(--shell-gutter);
  margin-inline: auto;
  width: 100%;
  --shell-gutter: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
}
@media (max-width: 374px) {
  .shell {
    --shell-gutter: 15px;
  }
}
.shell--fluid {
  max-width: none;
}
.shell--large {
  --shell-max-width: 1432px;
}
.shell--small {
  --shell-max-width: 1226px;
}
.shell--xsmall {
  --shell-max-width: 1186px;
}

.wrapper {
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  min-height: 100svh;
}

body.admin-bar .wrapper {
  min-height: calc(100svh - 32px);
}
@media (max-width: 782px) {
  body.admin-bar .wrapper {
    min-height: calc(100svh - 46px);
  }
}

.body-tiny {
  font-size: 0.75rem;
}

.body-small {
  font-size: 0.875rem;
}

.body-medium {
  font-size: 1.125rem;
}

.body-large {
  font-size: 1.125rem;
}

.subheading-s1 {
  text-transform: uppercase;
  font-family: var(--theme-font-family);
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.2em;
}

.subheading-s2 {
  text-transform: uppercase;
  font-family: var(--theme-font-family);
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.2em;
  font-size: 1rem;
}

.subheading-s3 {
  text-transform: uppercase;
  font-family: var(--theme-font-family);
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.2em;
  font-size: 0.875rem;
}

.metadata {
  text-transform: uppercase;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.2em;
}

.socials ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 18px;
  list-style: none;
}
.socials a {
  display: block;
}
@media (hover: hover) and (pointer: fine) {
  .socials a:where(:hover, :focus-visible) img {
    transform: scale(1.1);
  }
}
.socials a img {
  display: block;
  width: 19px;
  height: 19px;
  -o-object-fit: contain;
     object-fit: contain;
  will-change: transform;
  transition: transform var(--theme-transition-duration);
}

.wpforms-container.wpforms-container.wpforms-container-full {
  margin: 0;
}

.wpforms-container.wpforms-container .wpforms-form {
  display: flex;
  align-items: center;
  gap: 16px;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .wpforms-container.wpforms-container .wpforms-form {
    gap: clamp(10px, 1.6vw + -6.384px, 16px);
  }
}
@media (max-width: 1199px) {
  .wpforms-container.wpforms-container .wpforms-form {
    flex-wrap: wrap;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .wpforms-container.wpforms-container .wpforms-form {
    flex-direction: column;
    align-items: flex-start;
    gap: 15px;
  }
}

.wpforms-container.wpforms-container .wpforms-field-container {
  flex: 1;
}
@media (max-width: 1023px) {
  .wpforms-container.wpforms-container .wpforms-field-container {
    width: 100%;
  }
}

.wpforms-container.wpforms-container .wpforms-field {
  padding: 0;
}

.wpforms-container.wpforms-container .wpforms-field-label {
  display: none;
}

.wpforms-container.wpforms-container .wpforms-field input {
  padding: 5px 18px;
  min-width: 200px;
  width: 100%;
  max-width: 100%;
  height: 36px;
  color: var(--theme-color-heritage-blue);
  background-color: transparent;
  border: 1px solid rgba(14, 44, 110, 0.6);
  border-radius: 10px;
  font-size: 0.875rem;
  font-weight: 300;
}
.wpforms-container.wpforms-container .wpforms-field input::-moz-placeholder {
  color: rgba(14, 44, 110, 0.8);
}
.wpforms-container.wpforms-container .wpforms-field input::placeholder {
  color: rgba(14, 44, 110, 0.8);
}
.wpforms-container.wpforms-container .wpforms-field input:focus {
  box-shadow: none !important;
}
.wpforms-container.wpforms-container .wpforms-field input:focus:invalid {
  color: var(--theme-color-heritage-blue);
}
.wpforms-container.wpforms-container .wpforms-field input.wpforms-error.wpforms-error {
  color: var(--theme-color-heritage-blue);
  border-color: red;
}
.wpforms-container.wpforms-container .wpforms-field input:-webkit-autofill, .wpforms-container.wpforms-container .wpforms-field input:-webkit-autofill:focus, .wpforms-container.wpforms-container .wpforms-field input:-webkit-autofill:active {
  box-shadow: 0 0 0 30px var(--theme-color-heritage-blue) inset !important;
}
@media (hover: hover) and (pointer: fine) {
  .wpforms-container.wpforms-container .wpforms-field input:where(:hover, :focus-visible) {
    background-color: rgba(255, 255, 255, 0.2);
    -webkit-backdrop-filter: blur(10px);
            backdrop-filter: blur(10px);
    box-shadow: none;
  }
}

.wpforms-container .wpforms-submit-container.wpforms-submit-container.wpforms-submit-container {
  margin: 0;
}

.wpforms-container.wpforms-container.wpforms-container.wpforms-container .wpforms-submit {
  padding: 11px 31px 11px 15px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  height: auto;
  color: var(--theme-color-heritage-blue);
  background: transparent url("../images/icon-chevron-right.svg") no-repeat calc(100% - 16px) 50% !important;
  background-size: contain;
  border: 1px solid currentColor;
  border-radius: 99em;
  transition: color var(--theme-transition-duration), background var(--theme-transition-duration);
  text-transform: uppercase;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.2em;
}
.wpforms-container.wpforms-container.wpforms-container.wpforms-container .wpforms-submit:focus:after {
  display: none;
}
@media (hover: hover) and (pointer: fine) {
  .wpforms-container.wpforms-container.wpforms-container.wpforms-container .wpforms-submit:where(:hover, :focus-visible) {
    color: var(--theme-color-heritage-blue) !important;
    background-color: rgba(255, 255, 255, 0.4) !important;
    -webkit-backdrop-filter: blur(10px);
            backdrop-filter: blur(10px);
  }
}

.wpforms-container.wpforms-container em.wpforms-error {
  display: none !important;
}

.newsletter {
  display: grid;
  gap: 15px;
  width: 100%;
  color: var(--theme-color-heritage-blue);
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .newsletter {
    gap: clamp(13px, 0.5333333333vw + 7.5386666667px, 15px);
  }
}
.newsletter strong {
  font-weight: 500;
}
.newsletter a {
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-color: currentColor;
  transition: color var(--theme-transition-duration);
}
@media (hover: hover) and (pointer: fine) {
  .newsletter a:where(:hover, :focus-visible) {
    color: var(--theme-color-white);
  }
}

.newsletter__title {
  color: var(--theme-color-heritage-blue);
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .newsletter__title {
    display: none;
  }
}

@media (max-width: 1023px) {
  .newsletter__entry {
    font-weight: 500;
  }
}

@media (max-width: 1023px) {
  .newsletter__form .wpforms-container.wpforms-container.wpforms-container.wpforms-container .wpforms-submit:after {
    display: none;
  }
}

.modal-container {
  position: fixed;
  inset: 0;
  padding: 40px;
  display: grid;
  background-color: rgba(0, 0, 0, 0.7);
  opacity: 0;
  pointer-events: none;
  z-index: 105;
  transition: opacity var(--theme-transition-duration);
  padding: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
}
.modal-container.is-visible {
  opacity: 1;
  pointer-events: all;
}

.modal-container__inner {
  padding: 40px;
  margin: auto;
  width: 100%;
  max-width: 449px;
  background-color: var(--theme-color-frosted-almond);
  border-radius: 20px;
  padding: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
}

.modal-container__newsletter {
  display: grid;
  gap: 17px;
  width: 100%;
  color: var(--theme-color-heritage-blue);
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .modal-container__newsletter {
    gap: clamp(13px, 0.5333333333vw + 7.5386666667px, 15px);
  }
}
.modal-container__newsletter strong {
  font-weight: 500;
}
.modal-container__newsletter a {
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-color: currentColor;
  transition: color var(--theme-transition-duration);
}
@media (hover: hover) and (pointer: fine) {
  .modal-container__newsletter a:where(:hover, :focus-visible) {
    color: var(--theme-color-spirit-blue);
  }
}

.modal-container__newsletter-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}

.modal-container__newsletter-close {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: transparent;
  border: none;
  will-change: transform;
  transition: transform var(--theme-transition-duration);
}
@media (hover: hover) and (pointer: fine) {
  .modal-container__newsletter-close:where(:hover, :focus-visible) {
    transform: rotate(180deg);
  }
}

.modal-container__newsletter-entry {
  font-weight: 500;
}

.modal-container__newsletter-form .wpforms-container.wpforms-container .wpforms-field-container,
.modal-container__newsletter-form .wpforms-container.wpforms-container .wpforms-submit-container {
  width: 100%;
}

.modal-container__newsletter-form .wpforms-container.wpforms-container .wpforms-field input {
  width: 100%;
  height: 46px;
  border-radius: 99em;
}

.modal-container__newsletter-form .wpforms-container.wpforms-container .wpforms-form {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
}

.modal-container__newsletter-form .wpforms-container.wpforms-container.wpforms-container.wpforms-container .wpforms-submit {
  color: var(--theme-color-white);
  background: var(--theme-color-heritage-blue) url("../images/icon-chevron-right-white.svg") no-repeat calc(100% - 16px) 50% !important;
  background-size: contain;
}
@media (hover: hover) and (pointer: fine) {
  .modal-container__newsletter-form .wpforms-container.wpforms-container.wpforms-container.wpforms-container .wpforms-submit:where(:hover, :focus-visible) {
    color: var(--theme-color-heritage-blue) !important;
    background: rgba(255, 255, 255, 0.2) url("../images/icon-chevron-right.svg") no-repeat calc(100% - 16px) 50% !important;
    background-size: contain;
    -webkit-backdrop-filter: blur(10px);
            backdrop-filter: blur(10px);
  }
}

.modal-search {
  position: fixed;
  top: var(--theme-header-height);
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 100;
  opacity: 0;
  pointer-events: none;
  transition: opacity, top;
  transition-duration: var(--theme-transition-duration);
}
body.is-scrolled .modal-search {
  top: 0;
}
body.admin-bar .modal-search {
  top: calc(var(--theme-header-height) + var(--admin-bar-height));
}
body.admin-bar.is-scrolled .modal-search {
  top: var(--admin-bar-height);
}
.modal-search.is-visible {
  opacity: 1;
  pointer-events: all;
}

.modal-search__overlay {
  position: fixed;
  inset: 0;
  -webkit-backdrop-filter: blur(25px);
          backdrop-filter: blur(25px);
  background-color: rgba(0, 0, 0, 0.5);
}
body.admin-bar .modal-search__overlay {
  top: var(--admin-bar-height);
}

.list-info {
  color: var(--theme-color-heritage-blue);
}

.list-info__title {
  padding-bottom: 9px;
  margin-bottom: 0;
  border-bottom: 1px solid currentColor;
}

.list-info__items {
  font-weight: 500;
  list-style: none;
}

.list-info__item {
  position: relative;
  padding-block: 10px;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .list-info__item {
    padding-block: clamp(7px, 0.8vw + -1.192px, 10px);
  }
}
.list-info__item:after {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: 1px;
  --dot-color: var(--theme-color-heritage-blue);
  background-image: repeating-linear-gradient(to right, var(--dot-color) 1px 2px, transparent 1px 6px);
  background-position: bottom left;
  background-repeat: repeat-x;
  background-size: auto 1px;
}
.list-info__item:last-child:after {
  display: none;
}
.list-info__item a {
  text-decoration: underline;
  text-decoration-color: transparent;
  text-underline-offset: 2px;
  transition: text-decoration-color, text-shadow;
  transition-duration: var(--theme-transition-duration);
}
@media (hover: hover) and (pointer: fine) {
  .list-info__item a:where(:hover, :focus-visible) {
    text-shadow: 1px 0 0 currentColor;
    text-decoration-color: currentColor;
  }
}

.article-featured {
  display: grid;
  grid-template-areas: "article-featured";
  align-items: end;
  color: var(--theme-color-white);
}
.article-featured h2 {
  font-family: var(--theme-font-family-alt);
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.3;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .article-featured h2 {
    line-height: 1.2;
  }
}
.article-featured h2 {
  line-height: 1;
}

.article-featured__media {
  position: relative;
  grid-area: article-featured;
  height: 100%;
  border-radius: 20px;
  overflow: hidden;
}
.article-featured__media:after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.4);
}
.article-featured__media img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.article-featured__content {
  position: relative;
  padding: 32px;
  grid-area: article-featured;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .article-featured__content {
    padding: clamp(23px, 2.4vw + -1.576px, 32px);
  }
}

.article-featured__tags {
  margin-bottom: 24px;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .article-featured__tags {
    margin-bottom: clamp(10px, 3.7333333333vw + -28.2293333333px, 24px);
  }
}
.article-featured__tags:last-child {
  margin-bottom: 0;
}

.article-featured__title {
  display: block;
  margin-bottom: 24px;
  text-decoration: none;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .article-featured__title {
    margin-bottom: clamp(15px, 2.4vw + -9.576px, 24px);
  }
}
.article-featured__title:last-child {
  margin-bottom: 0;
}

a.article-featured__title {
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 0.1em;
  text-decoration-color: transparent;
  transition: text-decoration-color var(--theme-transition-duration);
}
@media (hover: hover) and (pointer: fine) {
  a.article-featured__title:where(:hover, :focus-visible) {
    text-decoration-color: currentColor;
  }
}

.article-featured__entry {
  margin-bottom: 32px;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .article-featured__entry {
    margin-bottom: clamp(25px, 1.8666666667vw + 5.8853333333px, 32px);
  }
}
.article-featured__entry:last-child {
  margin-bottom: 0;
}

.article-featured__meta {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 10px 20px;
}

.article-featured__date {
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.2em;
}

.tags {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  list-style: none;
}

.tag {
  padding: 3px 6px;
  color: var(--theme-color-heritage-blue);
  background-color: rgba(120, 171, 225, 0.3);
  border: 1px solid var(--theme-color-spirit-blue);
  border-radius: 99em;
  text-transform: uppercase;
  text-decoration: none;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.5;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .tag {
    padding-inline: clamp(4px, 0.5333333333vw + -1.4613333333px, 6px);
  }
}
@media (max-width: 1023px) {
  .tag {
    padding: 3px 6px;
  }
}

a.tag {
  transition: background-color var(--theme-transition-duration);
}
@media (hover: hover) and (pointer: fine) {
  a.tag:where(:hover, :focus-visible) {
    background-color: rgba(120, 171, 225, 0.7);
  }
}

.tag--light {
  padding: 3px 8px;
  color: var(--theme-color-white);
  background-color: rgba(120, 171, 225, 0.3);
  border: 1px solid currentColor;
  border-radius: 99em;
  text-transform: uppercase;
  text-decoration: none;
  font-size: 0.75rem;
  font-weight: 500;
}

a.tag--light {
  transition: background-color var(--theme-transition-duration);
}
@media (hover: hover) and (pointer: fine) {
  a.tag--light:where(:hover, :focus-visible) {
    background-color: rgba(120, 171, 225, 0.8);
  }
}

.article-basic {
  display: grid;
  grid-template-columns: auto 14.93%;
  justify-content: space-between;
  align-items: flex-start;
  gap: 20px;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .article-basic {
    grid-template-columns: 1fr;
  }
}

.article-basic__content:only-child {
  grid-column: -1/1;
}

.article-basic__tags {
  margin-bottom: 10px;
}
.article-basic__tags:last-child {
  margin-bottom: 0;
}
@media (max-width: 1023px) {
  .article-basic__tags {
    margin-bottom: 11px;
  }
}

.article-basic__title {
  margin-bottom: 8px;
  color: var(--theme-color-heritage-blue);
  font-family: var(--theme-font-family-alt);
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.2;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .article-basic__title {
    font-size: clamp(20px, 1.0666666667vw + 9.0773333333px, 24px);
  }
}
.article-basic__title:last-child {
  margin-bottom: 0;
}
@media (max-width: 1199px) {
  .article-basic__title {
    line-height: 1.2;
  }
}
@media (max-width: 1023px) {
  .article-basic__title {
    margin-bottom: 8px;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .article-basic__title {
    font-family: var(--theme-font-family-alt);
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.2;
  }
}
.article-basic__title a {
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 0.1em;
  text-decoration-color: transparent;
  transition: text-decoration-color var(--theme-transition-duration);
}
@media (hover: hover) and (pointer: fine) {
  .article-basic__title a:where(:hover, :focus-visible) {
    text-decoration-color: currentColor;
  }
}

.article-basic__entry {
  display: flex;
  align-items: center;
  gap: 10px 16px;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .article-basic__entry {
    font-size: 0.875rem;
  }
}

.article-basic__media {
  border-radius: 10px;
  overflow: hidden;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .article-basic__media {
    display: none;
  }
}
.article-basic__media img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 122/117;
  will-change: transform;
  transition: transform var(--theme-transition-duration);
}
@media (hover: hover) and (pointer: fine) {
  .article-basic__media a:where(:hover, :focus-visible) img {
    transform: scale(1.05);
  }
}

.select {
  width: 100%;
  color: var(--theme-color-heritage-blue);
}
.select select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  padding: 10px 16px;
  width: 100%;
  height: 40px;
  background: var(--theme-color-white) url("../images/icon-arrow-down-blue.svg") no-repeat calc(100% - 10px) 50%;
  background-size: 15px;
  border: 1px solid var(--theme-color-heritage-blue);
  border-radius: 10px;
  cursor: pointer;
  text-transform: uppercase;
  font-family: var(--theme-font-family);
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.2em;
  font-size: 0.875rem;
}

@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .content-search:has(+ .paging) .content-search__wrapper {
    padding-bottom: 0;
  }
}

.content-search__wrapper {
  position: relative;
  padding: 78px 40px;
  width: 100%;
  border-left: 1px solid var(--theme-color-heritage-blue);
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .content-search__wrapper {
    padding-block: clamp(40px, 10.1333333333vw + -63.7653333333px, 78px);
  }
}
.content-search__wrapper {
  padding-inline: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
}
@media (max-width: 1023px) {
  .content-search__wrapper {
    padding: 64px 0;
    border-left: none;
  }
}

.content-search__wrapper--modal {
  height: 87.2%;
  background-color: var(--theme-color-frosted-almond);
  border: none;
  border-radius: 0 0 40px 40px;
  overflow: hidden auto;
  padding-inline: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
}
@media (max-width: 1199px) {
  .content-search__wrapper--modal {
    height: 85%;
  }
}
@media (max-width: 1023px) {
  .content-search__wrapper--modal {
    padding-block: 64px;
    height: 100%;
    border-radius: 0;
  }
}
@media (max-width: 374px) {
  .content-search__wrapper--modal {
    padding-inline: 15px;
  }
}
body.admin-bar .content-search__wrapper--modal {
  height: calc(95.3% - var(--theme-header-height) - var(--admin-bar-height));
}
@media (max-width: 1199px) {
  body.admin-bar .content-search__wrapper--modal {
    height: calc(94% - var(--theme-header-height) - var(--admin-bar-height));
  }
}
@media (max-width: 1023px) {
  body.admin-bar .content-search__wrapper--modal {
    height: calc(100% - var(--theme-header-height) - var(--admin-bar-height));
  }
}

.content-search__inner {
  display: grid;
  grid-template-columns: 48.39% 38%;
  justify-content: space-between;
  gap: 20px;
  width: 100%;
  max-width: 1185px;
  margin-inline: auto;
}
@media (max-width: 1199px) {
  .content-search__inner {
    grid-template-columns: 53% 38%;
  }
}
@media (max-width: 1023px) {
  .content-search__inner {
    grid-template-columns: 1fr;
  }
}

.content-search__content:only-child {
  grid-column: -1/1;
}

.content-search__content-body {
  display: flex;
  flex-wrap: wrap;
  gap: 80px;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .content-search__content-body {
    gap: clamp(60px, 5.3333333333vw + 5.3866666667px, 80px);
  }
}

@media (max-width: 1023px) {
  .content-search__content-body--small-gap {
    gap: 43px;
  }
}

.content-search__title {
  margin-bottom: 66px;
  color: var(--theme-color-heritage-blue);
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .content-search__title {
    margin-bottom: clamp(40px, 6.9333333333vw + -30.9973333333px, 66px);
  }
}
.content-search__title:last-child {
  margin-bottom: 0;
}
@media (max-width: 1023px) {
  .content-search__title {
    margin-bottom: 41px;
  }
}
.content-search__title h2 {
  font-family: var(--theme-font-family-alt);
  font-weight: 700;
  line-height: 0.9;
  font-size: 3.5rem;
}
@media (max-width: 1512px) {
  .content-search__title h2 {
    font-size: clamp(2.5rem, 1.4298480786vw + 2.1487935657rem, 3.5rem);
  }
}
@media (max-width: 767px) {
  .content-search__title h2 {
    font-size: clamp(24px, 5.614973262vw + 1.9331550802px, 45px);
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .content-search__title h2 {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0 5px;
  }
}
.content-search__title em {
  font-weight: 400;
}
@media (max-width: 767px) {
  .content-search__title em {
    font-size: clamp(35px, 2.6737967914vw + 24.4919786096px, 45px);
  }
}

.content-search__title--small-margin {
  margin-bottom: 17px;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .content-search__title--small-margin {
    margin-bottom: 19px;
  }
}

.content-search__subtitle {
  margin-bottom: 28px;
  color: var(--theme-color-heritage-blue);
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .content-search__subtitle {
    margin-bottom: clamp(18px, 2.6666666667vw + -9.3066666667px, 28px);
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .content-search__subtitle {
    margin-bottom: 39px;
    font-size: 0.75rem;
  }
}

.content-search__field {
  width: 100%;
  max-width: 575px;
  margin-bottom: 76px;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .content-search__field {
    margin-bottom: clamp(60px, 4.2666666667vw + 16.3093333333px, 76px);
  }
}
.content-search__field:last-child {
  margin-bottom: 0;
}
@media (max-width: 1023px) {
  .content-search__field {
    max-width: 100%;
    margin-bottom: 61px;
  }
}

@media (max-width: 1023px) {
  .content-search__field--small-margin {
    margin-bottom: 47px;
  }
}

.content-search__suggestions,
.content-search__filter {
  width: 100%;
  max-width: 289px;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .content-search__suggestions,
  .content-search__filter {
    max-width: clamp(250px, 10.4vw + 143.504px, 289px);
  }
}

@media (max-width: 1023px) {
  .content-search__suggestions {
    max-width: 79%;
  }
}
@media (max-width: 374px) {
  .content-search__suggestions {
    max-width: 100%;
  }
}

@media (max-width: 1023px) {
  .content-search__filter {
    max-width: 100%;
  }
}

.content-search__results {
  flex: 1;
}

.content-search__results-title {
  padding-bottom: 9px;
  margin-bottom: 34px;
  color: var(--theme-color-heritage-blue);
  border-bottom: 1px solid currentColor;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .content-search__results-title {
    margin-bottom: clamp(25px, 2.4vw + 0.424px, 34px);
  }
}
.content-search__results-title {
  text-transform: uppercase;
  font-family: var(--theme-font-family);
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.2em;
  font-size: 1rem;
}
.content-search__results-title:last-child {
  margin-bottom: 0;
}
@media (max-width: 1023px) {
  .content-search__results-title {
    margin-bottom: 33px;
  }
}

.hero-slider {
  padding-bottom: 43px;
}
.hero-slider h1,
.hero-slider h2 {
  white-space: pre-line;
  font-family: var(--theme-font-family-alt);
  font-weight: 700;
  line-height: 0.8;
  font-size: 6rem;
}
@media (max-width: 1512px) {
  .hero-slider h1,
  .hero-slider h2 {
    font-size: clamp(2.5rem, 5.0044682752vw + 1.2707774799rem, 6rem);
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .hero-slider h1,
  .hero-slider h2 {
    line-height: 0.9;
  }
}
.hero-slider:has(.hero-slider__content:only-child) {
  padding-bottom: 63px;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .hero-slider:has(.hero-slider__content:only-child) {
    padding-bottom: 43px;
  }
}

.hero-slider__inner {
  padding-top: 37px;
  max-width: 1266px;
  margin: 0 auto 63px;
  border-left: 1px solid var(--theme-color-heritage-blue);
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .hero-slider__inner {
    padding-top: clamp(30px, 1.8666666667vw + 10.8853333333px, 37px);
  }
}
.hero-slider__inner:last-child {
  margin-bottom: 0;
}
@media (max-width: 1023px) {
  .hero-slider__inner {
    padding: 40px 0 0 20px;
    margin: 0 auto 63px;
  }
}

.hero-slider__content {
  display: grid;
  grid-template-columns: 57.81% 42.18%;
}
@media (max-width: 1023px) {
  .hero-slider__content {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}

.hero-slider__title {
  padding-inline: 40px;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .hero-slider__title {
    padding-inline: clamp(30px, 2.6666666667vw + 2.6933333333px, 40px);
  }
}
@media (max-width: 1023px) {
  .hero-slider__title {
    padding-inline: 0;
  }
}
.hero-slider__title h2 {
  max-width: 580px;
}

.hero-slider__entry {
  padding-inline: 40px;
  display: flex;
  flex-direction: column;
  align-self: end;
  border: solid var(--theme-color-heritage-blue);
  border-width: 0 1px;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .hero-slider__entry {
    padding-inline: clamp(30px, 2.6666666667vw + 2.6933333333px, 40px);
  }
}
.hero-slider__entry {
  font-family: var(--theme-font-family-alt);
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.2;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .hero-slider__entry {
    font-size: clamp(20px, 1.0666666667vw + 9.0773333333px, 24px);
  }
}
.hero-slider__entry {
  font-weight: 500;
}
@media (max-width: 1023px) {
  .hero-slider__entry {
    padding-inline: 0;
    border: none;
    font-size: 1.125rem;
    font-weight: 400;
  }
}

.full-media {
  position: relative;
}
.full-media img,
.full-media video {
  display: block;
  width: 100%;
  height: 100%;
}
@media (hover: hover) and (pointer: fine) {
  .full-media:where(:hover, :focus-visible) .play-btn:before {
    opacity: 1;
    pointer-events: all;
  }
}

.full-media--has-overlay {
  position: relative;
}
.full-media--has-overlay:after {
  content: "";
  position: absolute;
  inset: 0;
  background: transparent url("../images/full-media-overlay.webp") no-repeat center;
  background-size: 100% 100%;
}

.introduction {
  position: relative;
}

.introduction__background {
  opacity: 0.5;
}

.introduction__inner {
  position: relative;
  display: grid;
  grid-template-columns: 30.9% 61.33%;
  justify-content: space-between;
  gap: 20px;
  min-height: 100vh;
}
@media (max-width: 1199px) {
  .introduction__inner {
    grid-template-columns: 38.9% 59%;
  }
}
@media (max-width: 1023px) {
  .introduction__inner {
    padding: 110px 0 189px 20px;
    grid-template-columns: 1fr;
    gap: 20px;
    min-height: initial;
  }
}
.introduction__inner:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  border-left: 1px solid var(--theme-color-heritage-blue);
}

.introduction__aside,
.introduction__content {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.introduction__aside {
  padding: 246px 40px;
  justify-content: flex-start;
}
@media (min-width: 1200px) and (max-width: 1399px) {
  .introduction__aside {
    padding-block: clamp(130px, 58.2914572864vw + -569.4974874372px, 246px);
  }
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .introduction__aside {
    padding-inline: clamp(30px, 2.6666666667vw + 2.6933333333px, 40px);
  }
}
@media (max-width: 1199px) {
  .introduction__aside {
    padding-block: 160px;
  }
}
@media (max-width: 1023px) {
  .introduction__aside {
    padding: 0;
    display: contents;
  }
}
.introduction__aside h2 {
  font-family: var(--theme-font-family-alt);
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .introduction__aside h2 {
    font-size: clamp(35px, 1.3333333333vw + 21.3466666667px, 40px);
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .introduction__aside h2 {
    line-height: 1.2;
  }
}
@media (max-width: 1023px) {
  .introduction__aside h2 {
    font-family: var(--theme-font-family-alt);
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.2;
  }
}
@media (max-width: 1023px) and (min-width: 1024px) and (max-width: 1399px) {
  .introduction__aside h2 {
    font-size: clamp(20px, 1.0666666667vw + 9.0773333333px, 24px);
  }
}

.introduction__content {
  position: relative;
  padding: 238px 55px;
  margin-right: 40px;
  justify-content: center;
  gap: 138px;
}
@media (min-width: 1200px) and (max-width: 1399px) {
  .introduction__content {
    padding-block: clamp(130px, 54.2713567839vw + -521.256281407px, 238px);
  }
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .introduction__content {
    padding-inline: clamp(40px, 4vw + -0.96px, 55px);
  }
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .introduction__content {
    margin-right: clamp(1px, 10.4vw + -105.496px, 40px);
  }
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .introduction__content {
    gap: clamp(60px, 20.8vw + -152.992px, 138px);
  }
}
@media (max-width: 1199px) {
  .introduction__content {
    padding-block: 160px;
  }
}
@media (max-width: 1023px) {
  .introduction__content {
    padding: 0;
    margin-right: 0;
    gap: 200px;
  }
}
.introduction__content:after {
  content: "";
  --dot-color: currentColor;
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  height: 100%;
  background-image: repeating-linear-gradient(to bottom, var(--dot-color) 1px 2px, transparent 1px 5px);
  background-position: top left;
  background-repeat: repeat-y;
  background-size: 1px auto;
  left: 100%;
}
@media (max-width: 1023px) {
  .introduction__content:after {
    display: none;
  }
}

.introduction__title h2 {
  font-family: var(--theme-font-family-alt);
  font-weight: 700;
  line-height: 0.8;
  font-size: 6rem;
}
@media (max-width: 1512px) {
  .introduction__title h2 {
    font-size: clamp(2.5rem, 5.0044682752vw + 1.2707774799rem, 6rem);
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .introduction__title h2 {
    line-height: 0.9;
  }
}
@media (max-width: 1023px) {
  .introduction__title h2 {
    font-size: 5rem;
    line-height: 0.8;
  }
}
@media (max-width: 374px) {
  .introduction__title h2 {
    font-size: 3.75rem;
  }
}

.introduction__entry {
  max-width: 451px;
  font-size: 1.125rem;
}
@media (max-width: 1023px) {
  .introduction__entry {
    max-width: initial;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .introduction__entry {
    font-size: 0.875rem;
  }
}

.dotted-line {
  --dot-color: currentColor;
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  height: 100%;
  background-image: repeating-linear-gradient(to bottom, var(--dot-color) 1px 2px, transparent 1px 5px);
  background-position: top left;
  background-repeat: repeat-y;
  background-size: 1px auto;
}

.dotted-line--right {
  --dot-color: currentColor;
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  height: 100%;
  background-image: repeating-linear-gradient(to bottom, var(--dot-color) 1px 2px, transparent 1px 5px);
  background-position: top left;
  background-repeat: repeat-y;
  background-size: 1px auto;
  left: 100%;
}

.dotted-line-horizontal {
  --dot-color: currentColor;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-image: repeating-linear-gradient(to right, var(--dot-color) 1px 2px, transparent 1px 6px);
  background-position: bottom left;
  background-repeat: repeat-x;
  background-size: auto 1px;
}

.dotted-line-horizontal--bottom {
  --dot-color: currentColor;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-image: repeating-linear-gradient(to right, var(--dot-color) 1px 2px, transparent 1px 6px);
  background-position: bottom left;
  background-repeat: repeat-x;
  background-size: auto 1px;
  top: auto;
  bottom: 0;
}

.dotted-line-horizontal--wide {
  --dot-color: currentColor;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-image: repeating-linear-gradient(to right, var(--dot-color) 1px 2px, transparent 1px 6px);
  background-position: bottom left;
  background-repeat: repeat-x;
  background-size: auto 1px;
  top: auto;
  bottom: 0;
}

.dotted-line-horizontal--bottom-wide {
  --dot-color: currentColor;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-image: repeating-linear-gradient(to right, var(--dot-color) 1px 2px, transparent 1px 6px);
  background-position: bottom left;
  background-repeat: repeat-x;
  background-size: auto 1px;
  top: auto;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 150%;
}

.content-image-animation {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, 50%);
  overflow: hidden;
}
@media (max-width: 1023px) {
  .content-image-animation {
    grid-template-columns: 1fr;
  }
}
.content-image-animation h2 {
  font-family: var(--theme-font-family-alt);
  font-weight: 700;
  line-height: 0.9;
  font-size: 3.5rem;
}
@media (max-width: 1512px) {
  .content-image-animation h2 {
    font-size: clamp(2.5rem, 1.4298480786vw + 2.1487935657rem, 3.5rem);
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .content-image-animation h2 {
    font-size: 2rem;
    line-height: 1;
  }
}
.content-image-animation p {
  margin-bottom: 24px;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .content-image-animation p {
    margin-bottom: clamp(15px, 2.4vw + -9.576px, 24px);
  }
}
.content-image-animation p:last-child {
  margin-bottom: 0;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .content-image-animation p {
    margin-bottom: 18px;
  }
}

.content-image-animation__list {
  margin-bottom: 0;
  list-style: none;
}
@media (max-width: 1023px) {
  .content-image-animation__list {
    display: contents;
  }
}
.content-image-animation__list li {
  position: relative;
  display: grid;
}
.content-image-animation__list:not(.content-image-animation__list--media) {
  display: flex;
  flex-direction: column;
}
.content-image-animation__list:not(.content-image-animation__list--media) li {
  min-height: 100vh;
}
@media (max-width: 1023px) {
  .content-image-animation__list:not(.content-image-animation__list--media) li {
    min-height: initial;
  }
}

.content-image-animation__list--media {
  position: relative;
  z-index: -1;
}
.content-image-animation__list--media li {
  position: absolute;
  inset: 0;
  height: 102vh;
}
@media (max-width: 1023px) {
  .content-image-animation__list--media li {
    position: initial;
    height: initial;
  }
}

.content-image-animation__container {
  padding: 100px 141px 100px 40px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin-left: calc((var(--theme-body-width) - 1266px) / 2);
  border-left: 1px solid var(--theme-color-heritage-blue);
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .content-image-animation__container {
    padding-block: clamp(60px, 10.6666666667vw + -49.2266666667px, 100px);
  }
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .content-image-animation__container {
    padding-right: clamp(50px, 24.2666666667vw + -198.4906666667px, 141px);
  }
}
.content-image-animation__container {
  padding-left: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
}
@media (width <= 1337px) {
  .content-image-animation__container {
    margin-left: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
  }
}
@media (max-width: 1023px) {
  .content-image-animation__container {
    padding: 57px 0 105px 20px;
    padding-right: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
  }
}

.content-image-animation__title {
  margin-bottom: 22px;
}
.content-image-animation__title:last-child {
  margin-bottom: 0;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .content-image-animation__title {
    margin-bottom: 20px;
  }
}

.content-image-animation__entry {
  margin-bottom: 64px;
  margin-bottom: clamp(30px, 3.0384271671vw + 18.0589812332px, 64px);
}
.content-image-animation__entry:last-child {
  margin-bottom: 0;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .content-image-animation__entry {
    margin-bottom: 40px;
    font-size: 0.75rem;
  }
}

.content-image-animation__media img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.content-image {
  position: relative;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .content-image h2 {
    font-size: 2rem;
    line-height: 1;
  }
}
.content-image p {
  margin-bottom: 24px;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .content-image p {
    margin-bottom: clamp(15px, 2.4vw + -9.576px, 24px);
  }
}
.content-image p:last-child {
  margin-bottom: 0;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .content-image p {
    margin-bottom: 18px;
  }
}

.content-image__inner {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  align-items: center;
}
@media (max-width: 1023px) {
  .content-image__inner {
    grid-template-columns: 1fr;
  }
}

.content-image__content {
  padding: 100px 141px 100px 40px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
  margin-left: calc((var(--theme-body-width) - 1266px) / 2);
  border-left: 1px solid var(--theme-color-heritage-blue);
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .content-image__content {
    padding-block: clamp(60px, 10.6666666667vw + -49.2266666667px, 100px);
  }
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .content-image__content {
    padding-right: clamp(50px, 24.2666666667vw + -198.4906666667px, 141px);
  }
}
.content-image__content {
  padding-left: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
}
@media (width <= 1350px) {
  .content-image__content {
    margin-left: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
  }
}
@media (max-width: 1023px) {
  .content-image__content {
    padding: 57px 0 105px 20px;
    margin-inline: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
  }
}
@media (max-width: 374px) {
  .content-image__content {
    padding: 57px 15px 105px;
    margin-left: 15px;
  }
}

.content-image__content--justify-start {
  justify-content: flex-start;
}

.content-image__subtitle {
  margin-bottom: 16px;
}
.content-image__subtitle:last-child {
  margin-bottom: 0;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .content-image__subtitle {
    margin-bottom: 21px;
    font-size: 0.75rem;
  }
}

.content-image__title {
  margin-bottom: 24px;
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .content-image__title {
    margin-bottom: clamp(15px, 4.5vw + -38.955px, 24px);
  }
}
.content-image__title:last-child {
  margin-bottom: 0;
}
@media (max-width: 1199px) {
  .content-image__title {
    margin-bottom: 15px;
  }
}
@media (max-width: 1023px) {
  .content-image__title {
    margin-bottom: 20px;
  }
}

.content-image__entry {
  margin-bottom: 64px;
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .content-image__entry {
    margin-bottom: clamp(50px, 7vw + -33.93px, 64px);
  }
}
.content-image__entry:last-child {
  margin-bottom: 0;
}
@media (max-width: 1199px) {
  .content-image__entry {
    margin-bottom: 50px;
    font-size: 0.875rem;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .content-image__entry {
    margin-bottom: 40px;
    font-size: 0.75rem;
  }
}

.content-image__actions {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px 15px;
}

.content-image__media {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
}
@media (max-width: 1023px) {
  .content-image__media {
    order: -1;
  }
}
.content-image__media img,
.content-image__media video {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (hover: hover) and (pointer: fine) {
  .content-image__media:where(:hover, :focus-visible) .play-btn:before {
    opacity: 1;
    pointer-events: all;
  }
}

.content-image__media--align-start {
  align-items: flex-start;
}

.content-image--reversed .content-image__content {
  padding: 100px 20px 100px 165px;
  margin-inline: 0 calc((var(--theme-body-width) - 1266px) / 2);
  border-left: none;
  order: 1;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .content-image--reversed .content-image__content {
    padding-block: clamp(60px, 10.6666666667vw + -49.2266666667px, 100px);
  }
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .content-image--reversed .content-image__content {
    padding-left: clamp(50px, 30.6666666667vw + -264.0266666667px, 165px);
  }
}
@media (width <= 1350px) {
  .content-image--reversed .content-image__content {
    margin-right: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
  }
}
@media (max-width: 1023px) {
  .content-image--reversed .content-image__content {
    padding: 57px 0 105px 20px;
    border-left: 1px solid var(--theme-color-heritage-blue);
    margin-inline: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
  }
}
@media (max-width: 374px) {
  .content-image--reversed .content-image__content {
    padding: 57px 15px 105px;
    margin-left: 15px;
  }
}
.content-image--reversed .content-image__media {
  order: -1;
}

.content-image--small h2 {
  font-family: var(--theme-font-family-alt);
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .content-image--small h2 {
    font-size: clamp(35px, 1.3333333333vw + 21.3466666667px, 40px);
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .content-image--small h2 {
    line-height: 1.2;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .content-image--small h2 {
    font-size: 2rem;
    line-height: 1;
  }
}
.content-image--small .content-image__inner {
  padding: 135px 50px 135px 40px;
  grid-template-columns: 39% 48.6%;
  justify-content: space-between;
  border-left: 1px solid var(--theme-color-heritage-blue);
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .content-image--small .content-image__inner {
    padding-block: clamp(64px, 35.5vw + -361.645px, 135px);
  }
}
.content-image--small .content-image__inner {
  padding-left: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
  padding-right: clamp(20px, 2.6809651475vw + 9.4638069705px, 50px);
}
@media (max-width: 1199px) {
  .content-image--small .content-image__inner {
    padding-block: 64px;
  }
}
@media (max-width: 1023px) {
  .content-image--small .content-image__inner {
    padding: 64px 0;
    grid-template-columns: 1fr;
    gap: 48px;
    border-left: none;
  }
}
.content-image--small .content-image__content {
  padding: 0;
  margin-left: 0;
  border-left: none;
}
.content-image--small .content-image__media img,
.content-image--small .content-image__media video {
  height: auto;
  border-radius: 20px;
}

.content-image--small.content-image--reversed .content-image__inner {
  grid-template-columns: 48.6% 38.2%;
}
@media (max-width: 1023px) {
  .content-image--small.content-image--reversed .content-image__inner {
    grid-template-columns: 1fr;
  }
}
.content-image--small.content-image--reversed .content-image__content {
  margin-right: 0;
}

.content-image--large h2 {
  font-family: var(--theme-font-family-alt);
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .content-image--large h2 {
    font-size: clamp(35px, 1.3333333333vw + 21.3466666667px, 40px);
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .content-image--large h2 {
    line-height: 1.2;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .content-image--large h2 {
    font-size: 2rem;
    line-height: 1;
  }
}
.content-image--large .content-image__inner {
  padding-block: 80px;
  grid-template-columns: auto 70.55%;
  justify-content: space-between;
  margin-left: calc((var(--theme-body-width) - 1266px) / 2);
  border-left: 1px solid var(--theme-color-heritage-blue);
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .content-image--large .content-image__inner {
    padding-block: clamp(64px, 8vw + -31.92px, 80px);
  }
}
@media (width <= 1350px) {
  .content-image--large .content-image__inner {
    margin-left: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
  }
}
@media (max-width: 1399px) {
  .content-image--large .content-image__inner {
    grid-template-columns: auto 63%;
  }
}
@media (max-width: 1199px) {
  .content-image--large .content-image__inner {
    padding-block: 64px;
    grid-template-columns: auto 60%;
  }
}
@media (max-width: 1023px) {
  .content-image--large .content-image__inner {
    grid-template-columns: 1fr;
    gap: 48px;
    border-left: none;
    margin-inline: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
  }
}
.content-image--large .content-image__content {
  padding: 0 40px;
  margin-left: 0;
  border-left: none;
  padding-inline: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
}
@media (max-width: 1023px) {
  .content-image--large .content-image__content {
    padding: 0;
    margin-inline: 0;
  }
}
.content-image--large .content-image__media img,
.content-image--large .content-image__media video {
  border-radius: 20px 0 0 20px;
}
@media (max-width: 1023px) {
  .content-image--large .content-image__media img,
  .content-image--large .content-image__media video {
    border-radius: 20px;
  }
}

.content-image--large.content-image--reversed .content-image__inner {
  grid-template-columns: 70.45% auto;
  margin-inline: 0 calc((var(--theme-body-width) - 1266px) / 2);
  border-left: none;
}
@media (width <= 1350px) {
  .content-image--large.content-image--reversed .content-image__inner {
    margin-right: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
  }
}
@media (max-width: 1399px) {
  .content-image--large.content-image--reversed .content-image__inner {
    grid-template-columns: 63% auto;
  }
}
@media (max-width: 1199px) {
  .content-image--large.content-image--reversed .content-image__inner {
    grid-template-columns: 60% auto;
  }
}
@media (max-width: 1023px) {
  .content-image--large.content-image--reversed .content-image__inner {
    grid-template-columns: 1fr;
    margin-inline: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
  }
}
.content-image--large.content-image--reversed .content-image__inner:after {
  content: "";
  position: absolute;
  top: 0;
  left: calc((var(--theme-body-width) - 1266px) / 2);
  width: 1px;
  height: 100%;
  border-left: 1px solid var(--theme-color-heritage-blue);
}
@media (width <= 1350px) {
  .content-image--large.content-image--reversed .content-image__inner:after {
    left: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
  }
}
@media (max-width: 1023px) {
  .content-image--large.content-image--reversed .content-image__inner:after {
    display: none;
  }
}
.content-image--large.content-image--reversed .content-image__content {
  padding: 0 0 0 40px;
  margin-right: 0;
  padding-left: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
}
@media (max-width: 1023px) {
  .content-image--large.content-image--reversed .content-image__content {
    padding: 0;
  }
}
.content-image--large.content-image--reversed .content-image__media img,
.content-image--large.content-image--reversed .content-image__media video {
  border-radius: 0 20px 20px 0;
}
@media (max-width: 1023px) {
  .content-image--large.content-image--reversed .content-image__media img,
  .content-image--large.content-image--reversed .content-image__media video {
    border-radius: 20px;
  }
}

.content-image-rows {
  position: relative;
}
.content-image-rows h2 {
  font-family: var(--theme-font-family-alt);
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .content-image-rows h2 {
    font-size: clamp(35px, 1.3333333333vw + 21.3466666667px, 40px);
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .content-image-rows h2 {
    line-height: 1.2;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .content-image-rows h2 {
    font-size: 2rem;
    line-height: 1;
  }
}

.content-image-rows__inner {
  padding: 123px 40px;
  border-left: 1px solid var(--theme-color-heritage-blue);
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .content-image-rows__inner {
    padding-block: clamp(60px, 31.5vw + -317.685px, 123px);
  }
}
.content-image-rows__inner {
  padding-inline: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
}
@media (max-width: 1199px) {
  .content-image-rows__inner {
    padding-block: 60px;
  }
}
@media (max-width: 1023px) {
  .content-image-rows__inner {
    padding: 65px 0;
    border-left: none;
  }
}

.content-image-rows__row {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  align-items: center;
  gap: 40px;
  margin-bottom: 123px;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .content-image-rows__row {
    margin-bottom: clamp(60px, 16.8vw + -112.032px, 123px);
  }
}
.content-image-rows__row:last-child {
  margin-bottom: 0;
}
@media (max-width: 1199px) {
  .content-image-rows__row {
    margin-bottom: 60px;
  }
}
@media (max-width: 1023px) {
  .content-image-rows__row {
    grid-template-columns: 1fr;
    gap: 48px;
    margin-bottom: 90px;
  }
}

.content-image-rows__content--order-1 {
  order: -1;
}

.content-image-rows__subtitle {
  margin-bottom: 16px;
}
.content-image-rows__subtitle:last-child {
  margin-bottom: 0;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .content-image-rows__subtitle {
    margin-bottom: 21px;
    font-size: 0.75rem;
  }
}

.content-image-rows__title {
  margin-bottom: 24px;
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .content-image-rows__title {
    margin-bottom: clamp(15px, 4.5vw + -38.955px, 24px);
  }
}
.content-image-rows__title:last-child {
  margin-bottom: 0;
}
@media (max-width: 1199px) {
  .content-image-rows__title {
    margin-bottom: 15px;
  }
}
@media (max-width: 1023px) {
  .content-image-rows__title {
    margin-bottom: 20px;
  }
}

.content-image-rows__entry {
  margin-bottom: 40px;
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .content-image-rows__entry {
    margin-bottom: clamp(30px, 5vw + -29.95px, 40px);
  }
}
.content-image-rows__entry:last-child {
  margin-bottom: 0;
}
@media (max-width: 1199px) {
  .content-image-rows__entry {
    margin-bottom: 30px;
    font-size: 0.875rem;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .content-image-rows__entry {
    margin-bottom: 40px;
    font-size: 0.75rem;
  }
}

.content-image-rows__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 20px 15px;
}

.content-image-rows__media {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
}
@media (max-width: 1023px) {
  .content-image-rows__media {
    order: -1;
  }
}
.content-image-rows__media img {
  display: block;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 20px;
}

.media-text-vertical {
  position: relative;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .media-text-vertical h2 {
    font-size: 1.5rem;
    line-height: 1.2;
  }
}
.media-text-vertical h3 {
  font-family: var(--theme-font-family-alt);
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.3;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .media-text-vertical h3 {
    line-height: 1.2;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .media-text-vertical h3 {
    font-size: 1.25rem;
    line-height: 1.2;
  }
}

.media-text-vertical__wrapper {
  padding: 120px 40px;
  border-left: 1px solid var(--theme-color-heritage-blue);
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .media-text-vertical__wrapper {
    padding-block: clamp(90px, 8vw + 8.08px, 120px);
  }
}
.media-text-vertical__wrapper {
  padding-inline: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
}
@media (max-width: 1023px) {
  .media-text-vertical__wrapper {
    padding: 64px 0;
    border-left: none;
  }
}

.media-text-vertical__media {
  position: relative;
  margin-bottom: 40px;
}
.media-text-vertical__media:last-child {
  margin-bottom: 0;
}
@media (max-width: 1023px) {
  .media-text-vertical__media {
    margin-bottom: 49px;
  }
}
.media-text-vertical__media img,
.media-text-vertical__media video {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 20px;
}
@media (hover: hover) and (pointer: fine) {
  .media-text-vertical__media:where(:hover, :focus-visible) .play-btn:before {
    opacity: 1;
    pointer-events: all;
  }
}

.media-text-vertical__inner {
  display: grid;
  grid-template-columns: 49.1% 48.31%;
  gap: 30px;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .media-text-vertical__inner {
    gap: clamp(20px, 2.6666666667vw + -7.3066666667px, 30px);
  }
}
@media (max-width: 1023px) {
  .media-text-vertical__inner {
    grid-template-columns: 1fr;
    gap: 0;
  }
}

.media-text-vertical__content {
  position: relative;
}
@media (max-width: 1023px) {
  .media-text-vertical__content {
    padding-bottom: 83px;
    margin-bottom: 64px;
  }
}
@media (max-width: 1023px) {
  .media-text-vertical__content:last-child {
    margin-bottom: 0;
  }
}

.media-text-vertical__subtitle {
  margin-bottom: 16px;
}
.media-text-vertical__subtitle:last-child {
  margin-bottom: 0;
}

.media-text-vertical__title {
  margin-bottom: 24px;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .media-text-vertical__title {
    margin-bottom: clamp(15px, 2.4vw + -9.576px, 24px);
  }
}
.media-text-vertical__title:last-child {
  margin-bottom: 0;
}
@media (max-width: 1023px) {
  .media-text-vertical__title {
    margin-bottom: 20px;
  }
}

.media-text-vertical__entry {
  margin-bottom: 64px;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .media-text-vertical__entry {
    margin-bottom: clamp(50px, 3.7333333333vw + 11.7706666667px, 64px);
  }
}
.media-text-vertical__entry:last-child {
  margin-bottom: 0;
}
@media (max-width: 1023px) {
  .media-text-vertical__entry {
    margin-bottom: 20px;
    font-size: 0.875rem;
  }
}

.media-text-vertical__actions {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 24px 15px;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .media-text-vertical__actions {
    row-gap: clamp(15px, 2.4vw + -9.576px, 24px);
  }
}
@media (max-width: 1023px) {
  .media-text-vertical__actions {
    gap: 20px 15px;
  }
}

.media-text-vertical__aside {
  position: relative;
  padding-left: 40px;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .media-text-vertical__aside {
    padding-left: clamp(30px, 2.6666666667vw + 2.6933333333px, 40px);
  }
}
@media (max-width: 1023px) {
  .media-text-vertical__aside {
    padding-left: 0;
  }
}
.media-text-vertical__aside:before {
  content: "";
  --dot-color: currentColor;
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  height: 100%;
  background-image: repeating-linear-gradient(to bottom, var(--dot-color) 1px 2px, transparent 1px 5px);
  background-position: top left;
  background-repeat: repeat-y;
  background-size: 1px auto;
}
@media (max-width: 1023px) {
  .media-text-vertical__aside:before {
    display: none;
  }
}

.media-text-vertical__aside .media-text-vertical__media {
  margin-bottom: 36px;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .media-text-vertical__aside .media-text-vertical__media {
    margin-bottom: clamp(25px, 2.9333333333vw + -5.0373333333px, 36px);
  }
}
.media-text-vertical__aside .media-text-vertical__media:last-child {
  margin-bottom: 0;
}
@media (max-width: 1023px) {
  .media-text-vertical__aside .media-text-vertical__media {
    margin-bottom: 48px;
  }
}

.media-text-vertical__aside .media-text-vertical__title {
  margin-bottom: 19px;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .media-text-vertical__aside .media-text-vertical__title {
    margin-bottom: clamp(10px, 2.4vw + -14.576px, 19px);
  }
}
.media-text-vertical__aside .media-text-vertical__title:last-child {
  margin-bottom: 0;
}

.tabs-articles__wrapper {
  padding: 141px 40px 118px;
  border-left: 1px solid var(--theme-color-heritage-blue);
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .tabs-articles__wrapper {
    padding-top: clamp(90px, 13.6vw + -49.264px, 141px);
  }
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .tabs-articles__wrapper {
    padding-bottom: clamp(90px, 7.4666666667vw + 13.5413333333px, 118px);
  }
}
.tabs-articles__wrapper {
  padding-inline: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
}
@media (max-width: 1023px) {
  .tabs-articles__wrapper {
    padding: 65px 0 71px;
    border-left: none;
  }
}

.tabs-articles__title {
  margin-bottom: 40px;
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .tabs-articles__title {
    margin-bottom: clamp(30px, 5vw + -29.95px, 40px);
  }
}
.tabs-articles__title:last-child {
  margin-bottom: 0;
}
@media (max-width: 1199px) {
  .tabs-articles__title {
    margin-bottom: 30px;
  }
}
@media (max-width: 1023px) {
  .tabs-articles__title {
    margin-bottom: 22px;
  }
}

.tabs-articles__inner {
  padding-top: 39px;
  display: grid;
  grid-template-columns: repeat(2, 50%);
  margin-bottom: 78px;
  border-top: 1px solid var(--theme-color-heritage-blue);
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .tabs-articles__inner {
    padding-top: clamp(30px, 4.5vw + -23.955px, 39px);
  }
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .tabs-articles__inner {
    margin-bottom: clamp(60px, 4.8vw + 10.848px, 78px);
  }
}
.tabs-articles__inner:last-child {
  margin-bottom: 0;
}
@media (max-width: 1199px) {
  .tabs-articles__inner {
    padding-top: 30px;
  }
}
@media (max-width: 1023px) {
  .tabs-articles__inner {
    padding-top: 48px;
    grid-template-columns: 100%;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .tabs-articles__inner {
    margin-bottom: 48px;
  }
}

.tabs-articles__content {
  position: relative;
  margin-right: 20px;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .tabs-articles__content {
    margin-right: clamp(15px, 1.3333333333vw + 1.3466666667px, 20px);
  }
}
@media (max-width: 1023px) {
  .tabs-articles__content {
    margin: 0 0 24px;
    aspect-ratio: 353/233;
  }
}

.tabs-articles__nav {
  position: relative;
  padding-left: 20px;
  margin-top: -2px;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .tabs-articles__nav {
    padding-left: clamp(15px, 1.3333333333vw + 1.3466666667px, 20px);
  }
}
@media (max-width: 1023px) {
  .tabs-articles__nav {
    padding-left: 0;
  }
}
.tabs-articles__nav:before {
  content: "";
  --dot-color: currentColor;
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  height: 100%;
  background-image: repeating-linear-gradient(to bottom, var(--dot-color) 1px 2px, transparent 1px 5px);
  background-position: top left;
  background-repeat: repeat-y;
  background-size: 1px auto;
}
@media (max-width: 1023px) {
  .tabs-articles__nav:before {
    display: none;
  }
}
.tabs-articles__nav > ul {
  list-style: none;
}
.tabs-articles__nav > ul > li {
  position: relative;
  padding-bottom: 18px;
  margin-bottom: 20px;
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .tabs-articles__nav > ul > li {
    padding-bottom: clamp(15px, 1.5vw + -2.985px, 18px);
  }
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .tabs-articles__nav > ul > li {
    margin-bottom: clamp(15px, 2.5vw + -14.975px, 20px);
  }
}
@media (max-width: 1199px) {
  .tabs-articles__nav > ul > li {
    padding-bottom: 15px;
    margin-bottom: 15px;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .tabs-articles__nav > ul > li {
    padding-bottom: 20px;
    margin-bottom: 18px;
  }
}
.tabs-articles__nav > ul > li.is-active .tabs-articles__article-entry {
  grid-template-rows: 1fr;
  margin-bottom: 16px;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .tabs-articles__nav > ul > li.is-active .tabs-articles__article-entry {
    margin-bottom: 24px;
  }
}
.tabs-articles__nav > ul > li.is-active .tabs-articles__article-btn {
  padding: 8px 15px 8px 5px;
  gap: 5px;
  border-radius: 99em;
}
.tabs-articles__nav > ul > li.is-active .tabs-articles__article-btn span {
  padding: 8px 9px;
  max-width: 240px;
  pointer-events: all;
}
.tabs-articles__nav > ul > li:after {
  content: "";
  --dot-color: currentColor;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-image: repeating-linear-gradient(to right, var(--dot-color) 1px 2px, transparent 1px 6px);
  background-position: bottom left;
  background-repeat: repeat-x;
  background-size: auto 1px;
  top: auto;
  bottom: 0;
}
.tabs-articles__nav > ul > li:last-child {
  padding-bottom: 0;
  margin-bottom: 0;
}
.tabs-articles__nav > ul > li:last-child:after {
  display: none;
}

.tabs-articles__article {
  position: relative;
}
.tabs-articles__article h3 {
  white-space: pre-line;
  font-family: var(--theme-font-family-alt);
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.2;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .tabs-articles__article h3 {
    font-size: clamp(22px, 0.5333333333vw + 16.5386666667px, 24px);
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .tabs-articles__article h3 {
    font-size: 1.25rem;
  }
}

.tabs-articles__article-bar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 18px;
  margin-bottom: 16px;
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .tabs-articles__article-bar {
    margin-bottom: clamp(5px, 5.5vw + -60.945px, 16px);
  }
}
.tabs-articles__article-bar:last-child {
  margin-bottom: 0;
}
@media (max-width: 1199px) {
  .tabs-articles__article-bar {
    margin-bottom: 5px;
  }
}
@media (max-width: 1023px) {
  .tabs-articles__article-bar {
    flex-direction: column-reverse;
    align-items: flex-start;
    margin-bottom: 19px;
  }
}

.tabs-articles__article-faculty-info {
  text-transform: uppercase;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.2em;
}

.tabs-articles__article-title {
  margin-bottom: 15px;
  transition: margin var(--theme-transition-duration);
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .tabs-articles__article-title {
    margin-bottom: clamp(10px, 1.3333333333vw + -3.6533333333px, 15px);
  }
}
.tabs-articles__article-title:last-child {
  margin-bottom: 0;
}
@media (max-width: 1023px) {
  .tabs-articles__article-title {
    margin-bottom: 8px;
  }
}
.tabs-articles__article-title a {
  text-decoration: none;
}

.tabs-articles__article-entry {
  display: grid;
  grid-template-rows: 0fr;
  margin-bottom: 0;
  transition: opacity, grid-template-rows, margin;
  transition-duration: var(--theme-transition-duration);
}
.tabs-articles__article-entry:last-child {
  margin-bottom: 0;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .tabs-articles__article-entry {
    margin-bottom: 16px;
  }
}

.tabs-articles__article-entry-inner {
  overflow: hidden;
}

.tabs-articles__article-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 15px;
}

.tabs-articles__article-btn {
  --button-font-size: 0.75rem;
  --button-border-radius: 50%;
  --button-color: var(--theme-color-heritage-blue);
  --button-background-color: transparent;
  --button-border-color: var(--button-color);
  --button-transition-duration: 0.5s;
  --button-hover-color: var(--theme-color-heritage-blue);
  --button-hover-background-color: transparent;
  --button-hover-border-color: var(--button-hover-color);
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 14px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: var(--button-background-color);
  border: 1px solid var(--button-border-color);
  border-radius: var(--button-border-radius);
  box-shadow: none;
  color: var(--button-color);
  text-transform: uppercase;
  text-align: center;
  text-decoration: none;
  font-size: var(--button-font-size);
  font-weight: 500;
  letter-spacing: 0.2em;
  transition: color, background, border, gap;
  transition-duration: var(--button-transition-duration);
}
@media (hover: hover) and (pointer: fine) {
  .tabs-articles__article-btn:where(:hover, :focus-visible) {
    color: var(--button-hover-color);
    background: var(--button-hover-background-color);
    border-color: var(--button-hover-border-color);
  }
}
.tabs-articles__article-btn {
  padding: 8px;
  gap: 0;
  min-width: 36px;
  height: 36px;
  transition: color, background, border, gap, border-radius, padding;
  transition-duration: var(--button-transition-duration);
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .tabs-articles__article-btn {
    min-width: clamp(30px, 1.6vw + 13.616px, 36px);
  }
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .tabs-articles__article-btn {
    height: clamp(30px, 1.6vw + 13.616px, 36px);
  }
}
.tabs-articles__article-btn span {
  display: block;
  padding: 0;
  overflow: hidden;
  max-width: 0;
  white-space: nowrap;
  pointer-events: none;
  transition: max-width var(--button-transition-duration), padding var(--button-transition-duration);
}
.tabs-articles__article-btn svg {
  display: block;
  width: 10px;
  height: 10px;
  flex-shrink: 0;
}
.tabs-articles__article-btn:after {
  content: "";
  position: absolute;
  inset: 0;
}

.tabs-articles__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}

.tab-posts {
  position: absolute;
  inset: 0;
  opacity: 0;
  pointer-events: none;
  transition: opacity var(--theme-transition-duration);
}
.tab-posts.is-active {
  position: relative;
  opacity: 1;
  pointer-events: all;
}

.tab-posts__media img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 572/513;
  border-radius: 10px;
}
@media (max-width: 1023px) {
  .tab-posts__media img {
    aspect-ratio: 353/233;
  }
}

.boxes {
  position: relative;
  padding-block: 80px 115px;
  color: var(--theme-color-spirit-blue);
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .boxes {
    padding-top: clamp(70px, 2.6666666667vw + 42.6933333333px, 80px);
  }
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .boxes {
    padding-bottom: clamp(80px, 9.3333333333vw + -15.5733333333px, 115px);
  }
}
@media (max-width: 1023px) {
  .boxes {
    padding-block: 80px;
  }
}

.boxes__inner {
  position: relative;
  max-width: 1190px;
  margin-inline: auto;
}

.boxes__head {
  margin-bottom: 128px;
  text-align: center;
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .boxes__head {
    margin-bottom: clamp(90px, 19vw + -137.81px, 128px);
  }
}
.boxes__head:last-child {
  margin-bottom: 0;
}
@media (max-width: 1199px) {
  .boxes__head {
    margin-bottom: 80px;
  }
}

.boxes__subtitle {
  display: block;
  margin-bottom: 16px;
}
.boxes__subtitle:last-child {
  margin-bottom: 0;
}

.boxes__title {
  margin-bottom: 16px;
}
.boxes__title:last-child {
  margin-bottom: 0;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .boxes__title {
    font-size: 2.5rem;
  }
}

.boxes__body {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
}
@media (max-width: 1023px) {
  .boxes__body {
    grid-template-columns: repeat(2, calc(50% - 20px));
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .boxes__body {
    grid-template-columns: 1fr;
  }
}

.box {
  padding: 55px 32px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 405px;
  border: 1px solid currentColor;
  border-radius: 20px;
  text-align: center;
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .box {
    padding-block: clamp(30px, 12.5vw + -119.875px, 55px);
  }
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .box {
    padding-inline: clamp(15px, 8.5vw + -86.915px, 32px);
  }
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .box {
    min-height: clamp(380px, 12.5vw + 230.125px, 405px);
  }
}
@media (max-width: 1199px) {
  .box {
    padding: 20px 15px;
    min-height: 380px;
  }
}
@media (max-width: 1023px) {
  .box {
    min-height: 280px;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .box {
    padding: 30px 31px;
    min-height: 196px;
  }
}
@media (max-width: 1023px) {
  .box:first-child {
    grid-column: -1/1;
  }
}
@media (max-width: 1023px) {
  .box:first-child .box__entry {
    max-width: 50%;
    margin-inline: auto;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .box:first-child .box__entry {
    max-width: 100%;
  }
}
.box h3 {
  will-change: transform;
  transition: transform 0.6s;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .box h3 {
    font-size: 2rem;
    line-height: 1;
  }
}
@media (hover: hover) and (pointer: fine) {
  .box:where(:hover, :focus-visible) h3 {
    transform: scale(0.81);
  }
}
@media (hover: hover) and (pointer: fine) and (max-width: 767px), screen and (hover: hover) and (pointer: fine) and (max-width: 812px) and (orientation: landscape) {
  .box:where(:hover, :focus-visible) h3 {
    transform: scale(1);
  }
}
@media (hover: hover) and (pointer: fine) {
  .box:where(:hover, :focus-visible) .box__subtitle {
    margin-bottom: 27px;
  }
}
@media (hover: hover) and (pointer: fine) and (min-width: 1199px) and (max-width: 1399px) {
  .box:where(:hover, :focus-visible) .box__subtitle {
    margin-bottom: clamp(20px, 3.5vw + -21.965px, 27px);
  }
}
@media (hover: hover) and (pointer: fine) and (max-width: 1199px) {
  .box:where(:hover, :focus-visible) .box__subtitle {
    margin-bottom: 20px;
  }
}
@media (hover: hover) and (pointer: fine) and (max-width: 767px), screen and (hover: hover) and (pointer: fine) and (max-width: 812px) and (orientation: landscape) {
  .box:where(:hover, :focus-visible) .box__subtitle {
    margin-bottom: 33px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .box:where(:hover, :focus-visible) .box__title {
    margin-bottom: 24px;
  }
}
@media (hover: hover) and (pointer: fine) and (min-width: 1199px) and (max-width: 1399px) {
  .box:where(:hover, :focus-visible) .box__title {
    margin-bottom: clamp(20px, 2vw + -3.98px, 24px);
  }
}
@media (hover: hover) and (pointer: fine) and (max-width: 767px), screen and (hover: hover) and (pointer: fine) and (max-width: 812px) and (orientation: landscape) {
  .box:where(:hover, :focus-visible) .box__title {
    margin-bottom: 32px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .box:where(:hover, :focus-visible) .box__entry {
    grid-template-rows: 1fr;
    opacity: 1;
    transform: translateY(0);
  }
}
@media (max-width: 1023px) {
  .box.is-active h3 {
    transform: scale(0.81);
  }
}
@media (max-width: 1023px) and (max-width: 767px), screen and (max-width: 1023px) and (max-width: 812px) and (orientation: landscape) {
  .box.is-active h3 {
    transform: scale(1);
  }
}
@media (max-width: 1023px) {
  .box.is-active .box__subtitle {
    margin-bottom: 27px;
  }
}
@media (max-width: 1023px) and (min-width: 1199px) and (max-width: 1399px) {
  .box.is-active .box__subtitle {
    margin-bottom: clamp(20px, 3.5vw + -21.965px, 27px);
  }
}
@media (max-width: 1023px) and (max-width: 1199px) {
  .box.is-active .box__subtitle {
    margin-bottom: 20px;
  }
}
@media (max-width: 1023px) and (max-width: 767px), screen and (max-width: 1023px) and (max-width: 812px) and (orientation: landscape) {
  .box.is-active .box__subtitle {
    margin-bottom: 33px;
  }
}
@media (max-width: 1023px) {
  .box.is-active .box__title {
    margin-bottom: 24px;
  }
}
@media (max-width: 1023px) and (min-width: 1199px) and (max-width: 1399px) {
  .box.is-active .box__title {
    margin-bottom: clamp(20px, 2vw + -3.98px, 24px);
  }
}
@media (max-width: 1023px) and (max-width: 767px), screen and (max-width: 1023px) and (max-width: 812px) and (orientation: landscape) {
  .box.is-active .box__title {
    margin-bottom: 32px;
  }
}
@media (max-width: 1023px) {
  .box.is-active .box__entry {
    grid-template-rows: 1fr;
    opacity: 1;
    transform: translateY(0);
  }
}

.box__subtitle {
  margin-bottom: 35px;
  transition: margin 0.6s;
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .box__subtitle {
    margin-bottom: clamp(25px, 5vw + -34.95px, 35px);
  }
}
.box__subtitle:last-child {
  margin-bottom: 0;
}
@media (max-width: 1199px) {
  .box__subtitle {
    margin-bottom: 25px;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .box__subtitle {
    width: 60%;
    margin: 0 auto 32px;
    line-height: 1.5;
  }
}

.box__title {
  padding-inline: 10px;
  transition: margin 0.6s;
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .box__title {
    padding-inline: clamp(1px, 4.5vw + -52.955px, 10px);
  }
}
.box__title:last-child {
  margin-bottom: 0;
}
@media (max-width: 1199px) {
  .box__title {
    padding-inline: 0;
  }
}

.box__entry {
  display: grid;
  grid-template-rows: 0fr;
  opacity: 0;
  transform: translateY(50%);
  transition: grid-template-rows 0.6s, opacity 0.6s, transform 0.4s;
}

.box__entry-inner {
  overflow: hidden;
}

.highlights {
  position: relative;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .highlights {
    border-bottom: 1px solid var(--theme-color-heritage-blue);
  }
}
.highlights h2 {
  font-family: var(--theme-font-family-alt);
  font-weight: 700;
  line-height: 0.9;
  font-size: 3.5rem;
}
@media (max-width: 1512px) {
  .highlights h2 {
    font-size: clamp(2.5rem, 1.4298480786vw + 2.1487935657rem, 3.5rem);
  }
}
.highlights h2 {
  margin-bottom: 8px;
}
.highlights h2:last-child {
  margin-bottom: 0;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .highlights h2 {
    font-family: var(--theme-font-family-alt);
    font-weight: 700;
    line-height: 1;
    font-size: 3rem;
    margin-bottom: 22px;
  }
}
@media (max-width: 767px) and (max-width: 1512px), screen and (max-width: 812px) and (orientation: landscape) and (max-width: 1512px) {
  .highlights h2 {
    font-size: clamp(2.25rem, 1.072386059vw + 1.9865951743rem, 3rem);
  }
}

.highlights__inner {
  padding: 58px 40px 80px;
  border-left: 1px solid var(--theme-color-heritage-blue);
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .highlights__inner {
    padding-top: clamp(50px, 2.6666666667vw + 22.6933333333px, 60px);
  }
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .highlights__inner {
    padding-bottom: clamp(50px, 8vw + -31.92px, 80px);
  }
}
.highlights__inner {
  padding-inline: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
}
@media (max-width: 1023px) {
  .highlights__inner {
    padding: 59px 0 64px;
    border-left: none;
  }
}

.highlights__intro {
  display: grid;
  grid-template-columns: 37.22% 58.44%;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 112px;
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .highlights__intro {
    margin-bottom: clamp(80px, 16vw + -111.84px, 112px);
  }
}
.highlights__intro:last-child {
  margin-bottom: 0;
}
@media (max-width: 1199px) {
  .highlights__intro {
    margin-bottom: 80px;
  }
}
@media (max-width: 1023px) {
  .highlights__intro {
    grid-template-columns: 30% 60%;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .highlights__intro {
    grid-template-columns: 1fr;
    gap: 12px;
    margin-bottom: 23px;
  }
}

@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .highlights__subtitle {
    font-size: 0.75rem;
  }
}

@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .highlights__title {
    font-size: 0.75rem;
  }
}

.highlights__intro-content {
  padding-top: 3px;
}
@media (max-width: 1199px) {
  .highlights__intro-content {
    padding-top: 0;
  }
}

.highlights__body {
  padding-top: 32px;
  display: grid;
  grid-template-columns: auto 32.47%;
  justify-content: space-between;
  gap: 52px;
  border-top: 1px solid var(--theme-color-heritage-blue);
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .highlights__body {
    padding-top: clamp(25px, 3.5vw + -16.965px, 32px);
  }
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .highlights__body {
    gap: clamp(25px, 13.5vw + -136.865px, 52px);
  }
}
@media (max-width: 1199px) {
  .highlights__body {
    padding-top: 25px;
    grid-template-columns: auto 35.47%;
    gap: 25px;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .highlights__body {
    padding-top: 42px;
    grid-template-columns: 1fr;
    gap: 40px;
  }
}

.articles-highlights {
  padding-top: 6px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  align-content: start;
  gap: 40px;
  margin-bottom: 0;
  list-style: none;
}
@media (max-width: 1399px) {
  .articles-highlights {
    gap: 30px;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .articles-highlights {
    grid-template-columns: 1fr;
    gap: 40px;
  }
}
.articles-highlights li {
  position: relative;
}
.articles-highlights li:before {
  --dot-color: currentColor;
  content: "";
  position: absolute;
  top: 0;
  left: -20px;
  width: 1px;
  height: 100%;
  background-image: repeating-linear-gradient(to bottom, var(--dot-color) 1px 2px, transparent 1px 5px);
  background-position: top left;
  background-repeat: repeat-y;
  background-size: 1px auto;
}
@media (max-width: 1399px) {
  .articles-highlights li:before {
    left: -15px;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .articles-highlights li:before {
    top: calc(100% + 20px);
    left: 0;
    width: 100%;
    height: 1px;
    background-image: repeating-linear-gradient(to right, var(--dot-color) 1px 2px, transparent 1px 6px);
    background-position: bottom left;
    background-repeat: repeat-x;
    background-size: auto 1px;
  }
}
@media (min-width: 767.02px) {
  .articles-highlights li:first-child:before {
    display: none;
  }
}

.articles-highlights--small {
  position: relative;
  padding: 0 0 0 32px;
  grid-template-columns: 1fr;
  gap: 65px;
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .articles-highlights--small {
    padding-left: clamp(20px, 6vw + -51.94px, 32px);
  }
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .articles-highlights--small {
    gap: clamp(34px, 15.5vw + -151.845px, 65px);
  }
}
@media (max-width: 1199px) {
  .articles-highlights--small {
    padding: 0 0 0 20px;
    gap: 34px;
  }
}
@media (max-width: 1023px) {
  .articles-highlights--small {
    padding: 0 0 0 15px;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .articles-highlights--small {
    padding: 0;
    gap: 40px;
  }
}
.articles-highlights--small:before {
  content: "";
  --dot-color: currentColor;
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  height: 100%;
  background-image: repeating-linear-gradient(to bottom, var(--dot-color) 1px 2px, transparent 1px 5px);
  background-position: top left;
  background-repeat: repeat-y;
  background-size: 1px auto;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .articles-highlights--small:before {
    display: none;
  }
}
.articles-highlights--small li:before {
  --dotted-line-top: 33px;
  top: calc(-1 * var(--dotted-line-top));
  left: 0;
  width: 100%;
  height: 1px;
  background-image: repeating-linear-gradient(to right, var(--dot-color) 1px 2px, transparent 1px 6px);
  background-position: bottom left;
  background-repeat: repeat-x;
  background-size: auto 1px;
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .articles-highlights--small li:before {
    --dotted-line-top: clamp(17px, 8vw + -78.92px, 33px);
  }
}
@media (max-width: 1199px) {
  .articles-highlights--small li:before {
    --dotted-line-top: 17px;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .articles-highlights--small li:before {
    --dotted-line-top: 20px;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .articles-highlights--small li:first-child:before {
    display: none;
  }
}

.articles-highlights--small .article-highlight {
  gap: 15px;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .articles-highlights--small .article-highlight {
    gap: 0;
  }
}

@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .articles-highlights--small .article-highlight__btn {
    padding: 0;
    min-width: 24px;
    height: 24px;
  }
}

.article-highlight {
  display: flex;
  flex-direction: column;
  gap: 25px;
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .article-highlight {
    gap: clamp(20px, 2.5vw + -9.975px, 25px);
  }
}
@media (max-width: 1199px) {
  .article-highlight {
    gap: 20px;
  }
}
@media (max-width: 1023px) {
  .article-highlight {
    gap: 15px;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .article-highlight {
    gap: 0;
  }
}
@media (hover: hover) and (pointer: fine) {
  .article-highlight:where(:hover, :focus-visible) .article-highlight__media img {
    transform: scale(1.05);
  }
  .article-highlight:where(:hover, :focus-visible) .article-highlight__title a {
    text-decoration-color: currentColor;
  }
  .article-highlight:where(:hover, :focus-visible) .article-highlight__btn {
    padding: 8px 15px 8px 5px;
    gap: 5px;
    border-radius: 99em;
  }
  .article-highlight:where(:hover, :focus-visible) .article-highlight__btn span {
    padding: 8px 9px;
    max-width: 240px;
    pointer-events: all;
  }
}
.article-highlight h3 {
  font-family: var(--theme-font-family-alt);
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.3;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .article-highlight h3 {
    line-height: 1.2;
  }
}
.article-highlight h3 {
  line-height: 1;
}
@media (max-width: 1023px) {
  .article-highlight h3 {
    font-size: 1.75rem;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .article-highlight h3 {
    font-size: 1.5rem;
  }
}
.article-highlight h4 {
  font-family: var(--theme-font-family-alt);
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.2;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .article-highlight h4 {
    font-size: clamp(20px, 1.0666666667vw + 9.0773333333px, 24px);
  }
}
@media (max-width: 1023px) {
  .article-highlight h4 {
    font-size: 1.375rem;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .article-highlight h4 {
    font-size: 1.25rem;
  }
}

.article-highlight__media {
  margin-bottom: 11px;
  border-radius: 10px;
  overflow: hidden;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .article-highlight__media {
    margin-bottom: 26px;
  }
}
.article-highlight__media img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 355/240;
  transition: transform var(--theme-transition-duration);
}

@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .article-highlight__tagline {
    margin-bottom: 19px;
  }
}

@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .article-highlight__title {
    margin-bottom: 8px;
  }
}
.article-highlight__title a {
  text-decoration: underline;
  text-underline-offset: 4px;
  text-decoration-thickness: 0.1em;
  text-decoration-color: transparent;
  transition: text-decoration-color var(--theme-transition-duration);
}

@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .article-highlight__entry {
    margin-bottom: 24px;
    font-size: 0.75rem;
  }
}

.article-highlight__meta {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
}

.article-highlight__date {
  margin-bottom: 0;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.2em;
}

.article-highlight__btn {
  --button-font-size: 0.75rem;
  --button-border-radius: 50%;
  --button-color: var(--theme-color-heritage-blue);
  --button-background-color: transparent;
  --button-border-color: var(--button-color);
  --button-transition-duration: 0.5s;
  --button-hover-color: var(--theme-color-heritage-blue);
  --button-hover-background-color: transparent;
  --button-hover-border-color: var(--button-hover-color);
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 14px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: var(--button-background-color);
  border: 1px solid var(--button-border-color);
  border-radius: var(--button-border-radius);
  box-shadow: none;
  color: var(--button-color);
  text-transform: uppercase;
  text-align: center;
  text-decoration: none;
  font-size: var(--button-font-size);
  font-weight: 500;
  letter-spacing: 0.2em;
  transition: color, background, border, gap;
  transition-duration: var(--button-transition-duration);
}
@media (hover: hover) and (pointer: fine) {
  .article-highlight__btn:where(:hover, :focus-visible) {
    color: var(--button-hover-color);
    background: var(--button-hover-background-color);
    border-color: var(--button-hover-border-color);
  }
}
.article-highlight__btn {
  padding: 8px;
  gap: 0;
  min-width: 36px;
  height: 36px;
  transition: color, background, border, gap, border-radius, padding;
  transition-duration: var(--button-transition-duration);
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .article-highlight__btn {
    min-width: clamp(30px, 1.6vw + 13.616px, 36px);
  }
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .article-highlight__btn {
    height: clamp(30px, 1.6vw + 13.616px, 36px);
  }
}
.article-highlight__btn span {
  display: block;
  padding: 0;
  overflow: hidden;
  max-width: 0;
  white-space: nowrap;
  pointer-events: none;
  transition: max-width var(--button-transition-duration), padding var(--button-transition-duration);
}
.article-highlight__btn svg {
  display: block;
  width: 10px;
  height: 10px;
  flex-shrink: 0;
}
.article-highlight__btn:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.cta-links__inner {
  padding: 82px 40px;
  border-left: 1px solid var(--theme-color-heritage-blue);
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .cta-links__inner {
    padding-block: clamp(60px, 5.8666666667vw + -0.0746666667px, 82px);
  }
}
.cta-links__inner {
  padding-inline: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
}
@media (max-width: 1023px) {
  .cta-links__inner {
    padding: 62px 0 90px;
    border-left: none;
  }
}

.cta-links__list {
  list-style: none;
}
.cta-links__list li {
  position: relative;
}
.cta-links__list li:first-child:before {
  content: "";
  --dot-color: currentColor;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-image: repeating-linear-gradient(to right, var(--dot-color) 1px 2px, transparent 1px 6px);
  background-position: bottom left;
  background-repeat: repeat-x;
  background-size: auto 1px;
}
.cta-links__list li:after {
  content: "";
  --dot-color: currentColor;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-image: repeating-linear-gradient(to right, var(--dot-color) 1px 2px, transparent 1px 6px);
  background-position: bottom left;
  background-repeat: repeat-x;
  background-size: auto 1px;
  top: auto;
  bottom: 0;
}
.cta-links__list a {
  position: relative;
  padding: 20px 40px;
  display: block;
  text-decoration: underline;
  text-underline-offset: 4px;
  text-decoration-thickness: 0.05em;
  text-decoration-color: transparent;
  will-change: text-decoration-color;
  transition: text-decoration-color, transform;
  transition-duration: var(--theme-transition-duration);
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .cta-links__list a {
    padding-block: clamp(15px, 1.3333333333vw + 1.3466666667px, 20px);
  }
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .cta-links__list a {
    padding-inline: clamp(30px, 2.6666666667vw + 2.6933333333px, 40px);
  }
}
.cta-links__list a {
  font-family: var(--theme-font-family-alt);
  font-weight: 700;
  line-height: 0.9;
  font-size: 3.5rem;
}
@media (max-width: 1512px) {
  .cta-links__list a {
    font-size: clamp(2.5rem, 1.4298480786vw + 2.1487935657rem, 3.5rem);
  }
}
.cta-links__list a {
  font-size: 3.5rem;
}
@media (max-width: 1512px) {
  .cta-links__list a {
    font-size: clamp(2rem, 2.144772118vw + 1.4731903485rem, 3.5rem);
  }
}
@media (max-width: 1023px) {
  .cta-links__list a {
    padding: 20px 60px 20px 0;
    line-height: 1;
  }
}
.cta-links__list a:before, .cta-links__list a:after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.cta-links__list a:before {
  right: 0;
  width: 36px;
  height: 36px;
  border: 1px solid currentColor;
  border-radius: 50px;
}
.cta-links__list a:after {
  right: 12px;
  width: 11px;
  height: 11px;
  background: transparent url("../images/icon-arrow-right-blue.svg") no-repeat center;
  background-size: contain;
}
@media (hover: hover) and (pointer: fine) {
  .cta-links__list a:where(:hover, :focus-visible) {
    text-decoration-color: currentColor;
    transform: translateX(5px);
  }
}

.hero {
  position: relative;
}
.hero h2 {
  font-family: var(--theme-font-family-alt);
  font-weight: 700;
  line-height: 0.9;
  font-size: 3.5rem;
}
@media (max-width: 1512px) {
  .hero h2 {
    font-size: clamp(2.5rem, 1.4298480786vw + 2.1487935657rem, 3.5rem);
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .hero h2 {
    font-size: 3rem;
    line-height: 1;
  }
}

.hero__head-inner {
  padding: 0 0 54px 40px;
  display: grid;
  grid-template-columns: auto 43.62%;
  justify-content: space-between;
  gap: 60px;
  margin-top: 125px;
  border-left: 1px solid var(--theme-color-heritage-blue);
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .hero__head-inner {
    margin-top: clamp(60px, 32.5vw + -329.675px, 125px);
  }
}
.hero__head-inner {
  padding-left: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
}
@media (max-width: 1199px) {
  .hero__head-inner {
    margin-top: 60px;
    grid-template-columns: auto 55%;
  }
}
@media (max-width: 1023px) {
  .hero__head-inner {
    grid-template-columns: 1fr;
    align-content: start;
    min-height: 323px;
    gap: 42px;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .hero__head-inner {
    padding: 0 0 50px 20px;
    margin-top: 40px;
  }
}
@media (max-width: 374px) {
  .hero__head-inner {
    padding: 0 0 50px 15px;
  }
}

.hero__content {
  padding-left: 40px;
  border-left: 1px solid var(--theme-color-heritage-blue);
  padding-left: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
}
@media (max-width: 1023px) {
  .hero__content {
    padding-left: 0;
    border-left: none;
  }
}
.hero__entry {
  padding-right: 40px;
  margin-bottom: 33px;
  border-right: 1px solid var(--theme-color-heritage-blue);
  font-family: var(--theme-font-family-alt);
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.2;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .hero__entry {
    font-size: clamp(20px, 1.0666666667vw + 9.0773333333px, 24px);
  }
}
.hero__entry {
  font-weight: 500;
  padding-right: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
}
@media (max-width: 1023px) {
  .hero__entry {
    max-width: 623px;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .hero__entry {
    margin-right: 3%;
  }
}
@media (max-width: 374px) {
  .hero__entry {
    margin-right: 0;
    border-right: none;
    font-size: 1.25rem;
  }
}

.hero__body {
  display: grid;
  grid-template-areas: "hero-body-image";
}

.hero__media {
  grid-area: hero-body-image;
}
.hero__media img {
  display: block;
  width: 100%;
}

.hero__body-inner {
  margin-left: calc((var(--theme-body-width) - 1266px) / 2);
  grid-area: hero-body-image;
  border-left: 1px solid var(--theme-color-heritage-blue);
}
@media (width <= 1350px) {
  .hero__body-inner {
    margin-left: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
  }
}
@media (max-width: 1023px) {
  .hero__body-inner {
    display: none;
  }
}

.hero__info-list {
  padding: 20px calc((var(--theme-body-width) - 1266px) / 2) 20px 40px;
  display: grid;
  grid-template-columns: repeat(2, auto);
  justify-content: start;
  gap: 18px;
  margin-left: 40px;
  color: var(--theme-color-white);
  background-color: var(--theme-color-spirit-blue);
  border-radius: 0 0 0 12px;
  list-style: none;
  font-family: var(--theme-font-family-alt);
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.2;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .hero__info-list {
    font-size: clamp(20px, 1.0666666667vw + 9.0773333333px, 24px);
  }
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .hero__info-list {
    padding-block: clamp(13px, 1.8666666667vw + -6.1146666667px, 20px);
  }
}
.hero__info-list {
  padding-left: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
  margin-left: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
}
@media (width <= 1350px) {
  .hero__info-list {
    padding-right: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
  }
}
.hero__info-list li {
  position: relative;
}
.hero__info-list li:before {
  content: "";
  position: absolute;
  top: 50%;
  left: -10px;
  transform: translateY(-50%);
  width: 2px;
  height: 70%;
  background-color: currentColor;
}
.hero__info-list li:first-child:before {
  display: none;
}

.hero-background {
  position: relative;
}
.hero-background h2 {
  font-family: var(--theme-font-family-alt);
  font-weight: 700;
  line-height: 0.8;
  font-size: 6rem;
}
@media (max-width: 1512px) {
  .hero-background h2 {
    font-size: clamp(2.5rem, 5.0044682752vw + 1.2707774799rem, 6rem);
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .hero-background h2 {
    line-height: 0.9;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .hero-background h2 {
    font-size: 3.5rem;
  }
}
.hero-background:first-child {
  margin-top: calc(-1 * var(--theme-header-height));
}

.hero-background__head {
  position: relative;
  padding-top: 40px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-height: 518px;
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .hero-background__head {
    min-height: clamp(300px, 109vw + -1006.91px, 518px);
  }
}
@media (max-width: 1199px) {
  .hero-background__head {
    min-height: 300px;
  }
}
@media (max-width: 1023px) {
  .hero-background__head {
    min-height: 589px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .hero-background__head:where(:hover, :focus-visible) .play-btn:before {
    opacity: 1;
    pointer-events: all;
  }
}

.hero-background__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.hero-background__head-inner {
  position: relative;
  padding-inline: 40px;
  max-width: 732px;
  color: var(--theme-color-heritage-blue);
  border-left: 1px solid currentColor;
  padding-inline: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
}
@media (max-width: 374px) {
  .hero-background__head-inner {
    padding-inline: 15px;
  }
}

.hero-background__head-inner--color-white {
  color: var(--theme-color-white);
}

.hero-background__content {
  position: relative;
  padding: 42px 0 42px 40px;
  max-width: 653px;
  border-left: 1px solid var(--theme-color-heritage-blue);
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .hero-background__content {
    padding-block: clamp(25px, 8.5vw + -76.915px, 42px);
  }
}
.hero-background__content {
  padding-left: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
}
@media (max-width: 1199px) {
  .hero-background__content {
    padding-block: 25px;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .hero-background__content {
    padding-block: 20px 46px;
  }
}
@media (max-width: 374px) {
  .hero-background__content {
    padding-left: 15px;
  }
}

.hero-background__subtitle,
.hero-background__title {
  padding-bottom: 40px;
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .hero-background__subtitle,
  .hero-background__title {
    padding-bottom: clamp(30px, 5vw + -29.95px, 40px);
  }
}
@media (max-width: 1199px) {
  .hero-background__subtitle,
  .hero-background__title {
    padding-bottom: 30px;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .hero-background__subtitle,
  .hero-background__title {
    padding-bottom: 13px;
  }
}

@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .hero-background__title {
    padding-bottom: 19px;
  }
}

.hero-background__entry {
  padding-right: 38px;
  margin-bottom: 32px;
  border-right: 1px solid var(--theme-color-heritage-blue);
  font-family: var(--theme-font-family-alt);
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.2;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .hero-background__entry {
    font-size: clamp(20px, 1.0666666667vw + 9.0773333333px, 24px);
  }
}
.hero-background__entry {
  font-weight: 500;
  padding-right: clamp(20px, 1.6085790885vw + 13.6782841823px, 38px);
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .hero-background__entry {
    margin-bottom: clamp(25px, 3.5vw + -16.965px, 32px);
  }
}
.hero-background__entry:last-child {
  margin-bottom: 0;
}
@media (max-width: 1199px) {
  .hero-background__entry {
    margin-bottom: 25px;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .hero-background__entry {
    padding-right: 10px;
    border-right: none;
    font-size: 1rem;
  }
}
@media (max-width: 374px) {
  .hero-background__entry {
    padding-right: 0;
  }
}

.cards {
  position: relative;
}

.cards__inner {
  padding: 120px 40px;
  border-left: 1px solid var(--theme-color-heritage-blue);
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .cards__inner {
    padding-block: clamp(60px, 30vw + -299.7px, 120px);
  }
}
.cards__inner {
  padding-inline: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
}
@media (max-width: 1199px) {
  .cards__inner {
    padding-block: 60px;
  }
}
@media (max-width: 1023px) {
  .cards__inner {
    padding: 65px 0;
    border-left: none;
  }
}

.cards__head {
  margin-bottom: 40px;
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .cards__head {
    margin-bottom: clamp(30px, 5vw + -29.95px, 40px);
  }
}
.cards__head:last-child {
  margin-bottom: 0;
}
@media (max-width: 1199px) {
  .cards__head {
    margin-bottom: 30px;
  }
}

.cards__body {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 40px;
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .cards__body {
    gap: clamp(30px, 5vw + -29.95px, 40px);
  }
}
@media (max-width: 1199px) {
  .cards__body {
    gap: 30px;
  }
}
@media (max-width: 1023px) {
  .cards__body {
    grid-template-columns: 1fr;
    gap: 64px;
  }
}

.cards--narrow .cards__head {
  margin-bottom: 17px;
}
.cards--narrow .cards__head:last-child {
  margin-bottom: 0;
}
@media (max-width: 1023px) {
  .cards--narrow .cards__head {
    margin-bottom: 50px;
  }
}
.cards--narrow .cards__body {
  grid-template-columns: 1fr;
  gap: 0;
  max-width: 69%;
  margin-left: auto;
}
@media (max-width: 1023px) {
  .cards--narrow .cards__body {
    max-width: initial;
    margin-left: initial;
  }
}
.cards--narrow .cards__body-inner {
  --negative-margin: 40px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  row-gap: 80px;
  margin-inline: calc(-1 * var(--negative-margin));
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .cards--narrow .cards__body-inner {
    row-gap: clamp(50px, 15vw + -129.85px, 80px);
  }
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .cards--narrow .cards__body-inner {
    --negative-margin: clamp(20px, 10vw + -99.9px, 40px);
  }
}
@media (max-width: 1199px) {
  .cards--narrow .cards__body-inner {
    --negative-margin: 20px;
    row-gap: 50px;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .cards--narrow .cards__body-inner {
    margin-inline: 0;
    grid-template-columns: 1fr;
    gap: 0;
  }
}

.card h2 {
  font-family: var(--theme-font-family-alt);
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.3;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .card h2 {
    line-height: 1.2;
  }
}
.card h2 {
  line-height: 1;
}
@media (max-width: 1023px) {
  .card h2 {
    font-size: 2.25rem;
  }
}

.card__media {
  margin-bottom: 41px;
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .card__media {
    margin-bottom: clamp(30px, 5.5vw + -35.945px, 41px);
  }
}
.card__media:last-child {
  margin-bottom: 0;
}
@media (max-width: 1199px) {
  .card__media {
    margin-bottom: 30px;
  }
}
@media (max-width: 1023px) {
  .card__media {
    margin-bottom: 49px;
  }
}
.card__media img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 573/400;
  border-radius: 20px;
}
@media (max-width: 1399px) {
  .card__media img {
    aspect-ratio: 573/350;
  }
}
@media (max-width: 1023px) {
  .card__media img {
    aspect-ratio: 353/367;
  }
}

.card__subtitle {
  margin-bottom: 16px;
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .card__subtitle {
    margin-bottom: clamp(8px, 4vw + -39.96px, 16px);
  }
}
.card__subtitle:last-child {
  margin-bottom: 0;
}
@media (max-width: 1199px) {
  .card__subtitle {
    margin-bottom: 8px;
  }
}

.card__title {
  margin-bottom: 24px;
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .card__title {
    margin-bottom: clamp(19px, 2.5vw + -10.975px, 24px);
  }
}
.card__title:last-child {
  margin-bottom: 0;
}
@media (max-width: 1199px) {
  .card__title {
    margin-bottom: 19px;
  }
}

.card__entry {
  margin-bottom: 64px;
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .card__entry {
    margin-bottom: clamp(50px, 7vw + -33.93px, 64px);
  }
}
.card__entry:last-child {
  margin-bottom: 0;
}
@media (max-width: 1199px) {
  .card__entry {
    margin-bottom: 50px;
  }
}
@media (max-width: 1023px) {
  .card__entry {
    margin-bottom: 20px;
  }
}

.card__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 15px;
}

.card--small {
  position: relative;
  padding-inline: 40px;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .card--small {
    padding-inline: clamp(20px, 5.3333333333vw + -34.6133333333px, 40px);
  }
}
@media (max-width: 1199px) {
  .card--small {
    padding-inline: 20px;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .card--small {
    padding: 0 0 34px;
    margin-bottom: 34px;
  }
}
.card--small:after {
  content: "";
  --dot-color: currentColor;
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  height: 100%;
  background-image: repeating-linear-gradient(to bottom, var(--dot-color) 1px 2px, transparent 1px 5px);
  background-position: top left;
  background-repeat: repeat-y;
  background-size: 1px auto;
  left: 100%;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .card--small:after {
    --dot-color: currentColor;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-image: repeating-linear-gradient(to right, var(--dot-color) 1px 2px, transparent 1px 6px);
    background-position: bottom left;
    background-repeat: repeat-x;
    background-size: auto 1px;
    top: auto;
    bottom: 0;
  }
}
@media (min-width: 767.02px) {
  .card--small:nth-child(2n):after {
    display: none;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .card--small:last-child {
    padding-bottom: 0;
    margin-bottom: 0;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .card--small:last-child:after {
    display: none;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .card--small h2 {
    font-size: 1.5rem;
  }
}
.card--small .card__media {
  margin-bottom: 25px;
}
.card--small .card__media:last-child {
  margin-bottom: 0;
}
.card--small .card__media img {
  border-radius: 10px;
  aspect-ratio: 368/338;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .card--small .card__media img {
    aspect-ratio: 353/233;
  }
}
.card--small .card__title {
  margin-bottom: 10px;
}
.card--small .card__title:last-child {
  margin-bottom: 0;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .card--small .card__title {
    margin-bottom: 8px;
  }
}
.card--small .card__entry {
  margin-bottom: 24px;
}
.card--small .card__entry:last-child {
  margin-bottom: 0;
}

.image-text-columns {
  position: relative;
}
.image-text-columns h2 {
  font-weight: 500;
  line-height: 1.3;
  font-size: 2rem;
}
@media (max-width: 1512px) {
  .image-text-columns h2 {
    font-size: clamp(1.5rem, 0.7149240393vw + 1.3243967828rem, 2rem);
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .image-text-columns h2 {
    line-height: 1.4;
  }
}
.image-text-columns h2 {
  line-height: 1.2;
}

.image-text-columns__inner {
  padding: 80px 40px;
  border-left: 1px solid var(--theme-color-heritage-blue);
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .image-text-columns__inner {
    padding-block: clamp(60px, 10vw + -59.9px, 80px);
  }
}
.image-text-columns__inner {
  padding-inline: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
}
@media (max-width: 1199px) {
  .image-text-columns__inner {
    padding-block: 60px;
  }
}
@media (max-width: 1023px) {
  .image-text-columns__inner {
    padding: 65px 0;
    border-left: none;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .image-text-columns__inner {
    padding: 20px 0;
  }
}

.image-text-columns__head {
  display: grid;
  grid-template-columns: 38.37% auto;
  justify-content: space-between;
  gap: 40px;
  margin-bottom: 38px;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .image-text-columns__head {
    gap: clamp(30px, 2.6666666667vw + 2.6933333333px, 40px);
  }
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .image-text-columns__head {
    margin-bottom: clamp(30px, 4vw + -17.96px, 38px);
  }
}
.image-text-columns__head:last-child {
  margin-bottom: 0;
}
@media (max-width: 1199px) {
  .image-text-columns__head {
    margin-bottom: 30px;
  }
}
@media (max-width: 1023px) {
  .image-text-columns__head {
    grid-template-columns: 1fr;
    gap: 25px;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .image-text-columns__head {
    margin-bottom: 40px;
  }
}

.image-text-columns__body {
  padding-top: 39px;
  border-top: 1px solid var(--theme-color-heritage-blue);
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .image-text-columns__body {
    padding-top: clamp(30px, 4.5vw + -23.955px, 39px);
  }
}
@media (max-width: 1199px) {
  .image-text-columns__body {
    padding-top: 30px;
  }
}

.image-text-columns__body--no-border {
  padding: 0;
  border-top: 0;
}

.professionals {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
  list-style: none;
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .professionals {
    gap: clamp(30px, 5vw + -29.95px, 40px);
  }
}
@media (max-width: 1199px) {
  .professionals {
    gap: 30px;
  }
}
@media (max-width: 1023px) {
  .professionals {
    gap: 20px;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .professionals {
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
  }
}
@media (max-width: 374px) {
  .professionals {
    gap: 20px;
  }
}
.professionals li {
  position: relative;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .professionals:not(.professionals--four-column) li:before {
    --dot-color: var(--theme-color-heritage-blue);
    content: "";
    position: absolute;
    bottom: -20px;
    left: 0;
    width: calc(100% + 20px);
    height: 1px;
    background-image: repeating-linear-gradient(to right, var(--dot-color) 1px 2px, transparent 1px 6px);
    background-position: bottom left;
    background-repeat: repeat-x;
    background-size: auto 1px;
  }
}
@media (max-width: 374px) {
  .professionals:not(.professionals--four-column) li:before {
    bottom: -10px;
    width: calc(100% + 10px);
  }
}
.professionals li:after {
  --dot-color: var(--theme-color-heritage-blue);
  --position-right: 20px;
  content: "";
  position: absolute;
  top: 0;
  right: calc(-1 * var(--position-right));
  width: 1px;
  height: 100%;
  background-image: repeating-linear-gradient(to bottom, var(--dot-color) 1px 2px, transparent 1px 5px);
  background-position: top left;
  background-repeat: repeat-y;
  background-size: 1px auto;
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .professionals li:after {
    --position-right: clamp(15px, 2.5vw + -14.975px, 20px);
  }
}
@media (max-width: 1199px) {
  .professionals li:after {
    --position-right: 15px;
  }
}
@media (max-width: 1023px) {
  .professionals li:after {
    --position-right: 10px;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .professionals li:after {
    --position-right: 20px;
  }
}
@media (max-width: 374px) {
  .professionals li:after {
    --position-right: 10px;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .professionals:not(.professionals--four-column) li:nth-child(2n):before {
    left: -18px;
  }
}
@media (max-width: 374px) {
  .professionals:not(.professionals--four-column) li:nth-child(2n):before {
    left: -11px;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .professionals:not(.professionals--four-column) li:last-child:nth-child(2n-1):before, .professionals:not(.professionals--four-column) li:nth-last-child(2):nth-child(2n-1):before, .professionals:not(.professionals--four-column) li:last-child:nth-child(2n):before {
    display: none;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .professionals:not(.professionals--four-column) li:nth-child(2n):after {
    display: none;
  }
}
@media (min-width: 767.02px) {
  .professionals:not(.professionals--four-column) li:only-child:after, .professionals:not(.professionals--four-column) li:nth-child(3n):after {
    display: none;
  }
}

.professionals--four-column {
  grid-template-columns: repeat(4, 1fr);
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .professionals--four-column {
    gap: clamp(20px, 10vw + -99.9px, 40px);
  }
}
@media (max-width: 1199px) {
  .professionals--four-column {
    gap: 20px;
  }
}
@media (max-width: 1023px) {
  .professionals--four-column {
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
  }
}
@media (max-width: 374px) {
  .professionals--four-column {
    gap: 20px;
  }
}
@media (max-width: 1023px) {
  .professionals--four-column li:before {
    --dot-color: var(--theme-color-heritage-blue);
    content: "";
    position: absolute;
    bottom: -20px;
    left: 0;
    width: calc(100% + 20px);
    height: 1px;
    background-image: repeating-linear-gradient(to right, var(--dot-color) 1px 2px, transparent 1px 6px);
    background-position: bottom left;
    background-repeat: repeat-x;
    background-size: auto 1px;
  }
}
@media (max-width: 374px) {
  .professionals--four-column li:before {
    bottom: -10px;
    width: calc(100% + 10px);
  }
}
.professionals--four-column li:after {
  --position-right: 20px;
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .professionals--four-column li:after {
    --position-right: clamp(10px, 5vw + -49.95px, 20px);
  }
}
@media (max-width: 1199px) {
  .professionals--four-column li:after {
    --position-right: 10px;
  }
}
@media (max-width: 1023px) {
  .professionals--four-column li:after {
    --position-right: 20px;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .professionals--four-column li:after {
    --position-right: 20px;
  }
}
@media (max-width: 374px) {
  .professionals--four-column li:after {
    --position-right: 10px;
  }
}
@media (max-width: 1023px) {
  .professionals--four-column li:nth-child(2n):before {
    left: -18px;
  }
}
@media (max-width: 374px) {
  .professionals--four-column li:nth-child(2n):before {
    left: -11px;
  }
}
@media (max-width: 1023px) {
  .professionals--four-column li:last-child:nth-child(2n-1):before,
  .professionals--four-column li:nth-last-child(2):nth-child(2n-1):before,
  .professionals--four-column li:last-child:nth-child(2n):before {
    display: none;
  }
}
@media (max-width: 1023px) {
  .professionals--four-column li:nth-child(2n):after {
    display: none;
  }
}
@media (min-width: 767.02px) {
  .professionals--four-column li:only-child,
  .professionals--four-column li:nth-child(4n):after {
    display: none;
  }
}

.professional {
  position: relative;
}
.professional h2 {
  font-family: var(--theme-font-family-alt);
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.2;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .professional h2 {
    font-size: clamp(20px, 1.0666666667vw + 9.0773333333px, 24px);
  }
}
@media (max-width: 1023px) {
  .professional h2 {
    font-size: 1.375rem;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .professional h2 {
    font-size: 1.25rem;
  }
}
@media (hover: hover) and (pointer: fine) {
  .professional:where(:hover, :focus-visible) .professional__image img {
    transform: scale(1.05);
  }
  .professional:where(:hover, :focus-visible) .professional__name {
    text-decoration-color: currentColor;
  }
}

.professional__image {
  margin-bottom: 34px;
  border-radius: 10px;
  overflow: hidden;
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .professional__image {
    margin-bottom: clamp(22px, 6vw + -49.94px, 34px);
  }
}
.professional__image:last-child {
  margin-bottom: 0;
}
@media (max-width: 1199px) {
  .professional__image {
    margin-bottom: 22px;
  }
}
@media (max-width: 1023px) {
  .professional__image {
    margin-bottom: 30px;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .professional__image {
    margin-bottom: 20px;
    border-radius: 20px;
  }
}
.professional__image img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 369/305;
  will-change: transform;
  transition: transform;
  transition-duration: var(--theme-transition-duration);
}
@media (max-width: 1399px) {
  .professional__image img {
    aspect-ratio: 369/280;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .professional__image img {
    aspect-ratio: 157/163;
  }
}

.professional__image--long img {
  aspect-ratio: 267/239;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .professional__image--long img {
    aspect-ratio: 157/160;
  }
}

.professional__name {
  margin-bottom: 14px;
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 0.1em;
  text-decoration-color: transparent;
  transition: text-decoration-color var(--theme-transition-duration);
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .professional__name {
    margin-bottom: clamp(10px, 2vw + -13.98px, 14px);
  }
}
.professional__name:last-child {
  margin-bottom: 0;
}
@media (max-width: 1199px) {
  .professional__name {
    margin-bottom: 10px;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .professional__name {
    margin-bottom: 13px;
  }
}

.professional__title {
  margin-bottom: 6px;
}
.professional__title:last-child {
  margin-bottom: 0;
}
.professional__title h3 {
  text-transform: uppercase;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.2em;
}

.professional__meta {
  margin-bottom: 27px;
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .professional__meta {
    margin-bottom: clamp(22px, 2.5vw + -7.975px, 27px);
  }
}
.professional__meta:last-child {
  margin-bottom: 0;
}
@media (max-width: 1199px) {
  .professional__meta {
    margin-bottom: 22px;
  }
}
@media (max-width: 1023px) {
  .professional__meta {
    margin-bottom: 30px;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .professional__meta {
    margin-bottom: 12px;
  }
}

.professional__btn {
  --button-font-size: 0.75rem;
  --button-border-radius: 99em;
  --button-color: var(--theme-color-heritage-blue);
  --button-background-color: transparent;
  --button-border-color: var(--button-color);
  --button-transition-duration: var(--theme-transition-duration);
  --button-hover-color: var(--theme-color-heritage-blue);
  --button-hover-background-color: var(--theme-color-white);
  --button-hover-border-color: var(--button-hover-color);
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 14px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: var(--button-background-color);
  border: 1px solid var(--button-border-color);
  border-radius: var(--button-border-radius);
  box-shadow: none;
  color: var(--button-color);
  text-transform: uppercase;
  text-align: center;
  text-decoration: none;
  font-size: var(--button-font-size);
  font-weight: 500;
  letter-spacing: 0.2em;
  transition: color, background, border, gap;
  transition-duration: var(--button-transition-duration);
}
@media (hover: hover) and (pointer: fine) {
  .professional__btn:where(:hover, :focus-visible) {
    color: var(--button-hover-color);
    background: var(--button-hover-background-color);
    border-color: var(--button-hover-border-color);
  }
}
.professional__btn {
  padding: 8px 16px;
  gap: 7px;
}
@media (max-width: 1023px) {
  .professional__btn {
    padding: 4px;
    width: 24px;
    height: 24px;
    text-indent: -9999px;
    overflow: hidden;
    white-space: nowrap;
    gap: 0;
  }
}
.professional__btn:after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 10px;
}

.cta {
  color: var(--theme-color-spirit-blue);
  background-color: var(--theme-color-heritage-blue);
}

.cta__inner {
  position: relative;
  padding: 43px;
  text-align: center;
  padding-inline: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
}
@media (max-width: 1023px) {
  .cta__inner {
    padding: 43px 0;
  }
}
.cta__inner:before {
  content: "";
  --dot-color: currentColor;
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  height: 100%;
  background-image: repeating-linear-gradient(to bottom, var(--dot-color) 1px 2px, transparent 1px 5px);
  background-position: top left;
  background-repeat: repeat-y;
  background-size: 1px auto;
}
@media (max-width: 1023px) {
  .cta__inner:before {
    display: none;
  }
}
.cta__inner:after {
  content: "";
  --dot-color: currentColor;
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  height: 100%;
  background-image: repeating-linear-gradient(to bottom, var(--dot-color) 1px 2px, transparent 1px 5px);
  background-position: top left;
  background-repeat: repeat-y;
  background-size: 1px auto;
  left: 100%;
}
@media (max-width: 1023px) {
  .cta__inner:after {
    display: none;
  }
}

.cta__title {
  margin-bottom: 30px;
  text-transform: uppercase;
  font-family: var(--theme-font-family);
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.2em;
  font-size: 1.125rem;
}
@media (max-width: 1512px) {
  .cta__title {
    font-size: clamp(0.875rem, 0.3574620197vw + 0.7871983914rem, 1.125rem);
  }
}
.cta__title:last-child {
  margin-bottom: 0;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .cta__title {
    margin-bottom: 40px;
  }
}

.quote-pullout {
  position: relative;
  color: var(--theme-color-heritage-blue);
  background-color: var(--theme-color-spirit-blue);
}
.quote-pullout blockquote {
  position: relative;
  padding: 100px 40px;
  display: flex;
  flex-direction: column;
  gap: 80px;
  text-align: center;
  font-family: var(--theme-font-family-alt);
  font-weight: 700;
  line-height: 1;
  font-size: 3rem;
}
@media (max-width: 1512px) {
  .quote-pullout blockquote {
    font-size: clamp(2.25rem, 1.072386059vw + 1.9865951743rem, 3rem);
  }
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .quote-pullout blockquote {
    padding-block: clamp(60px, 20vw + -179.8px, 100px);
  }
}
.quote-pullout blockquote {
  padding-inline: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
}
@media (max-width: 1199px) {
  .quote-pullout blockquote {
    padding-block: 60px;
  }
}
@media (max-width: 1023px) {
  .quote-pullout blockquote {
    padding: 60px 0;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .quote-pullout blockquote {
    font-size: 1.875rem;
  }
}
@media (max-width: 374px) {
  .quote-pullout blockquote {
    font-size: 1.625rem;
  }
}
.quote-pullout blockquote:before {
  content: "";
  --dot-color: currentColor;
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  height: 100%;
  background-image: repeating-linear-gradient(to bottom, var(--dot-color) 1px 2px, transparent 1px 5px);
  background-position: top left;
  background-repeat: repeat-y;
  background-size: 1px auto;
}
@media (max-width: 1023px) {
  .quote-pullout blockquote:before {
    display: none;
  }
}
.quote-pullout blockquote:after {
  content: "";
  --dot-color: currentColor;
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  height: 100%;
  background-image: repeating-linear-gradient(to bottom, var(--dot-color) 1px 2px, transparent 1px 5px);
  background-position: top left;
  background-repeat: repeat-y;
  background-size: 1px auto;
  left: 100%;
}
@media (max-width: 1023px) {
  .quote-pullout blockquote:after {
    display: none;
  }
}
.quote-pullout blockquote p {
  margin-bottom: 0;
}
.quote-pullout cite {
  text-transform: uppercase;
  font-family: var(--theme-font-family);
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.2em;
  font-size: 0.875rem;
  font-style: normal;
}

.text-columns {
  position: relative;
}
.text-columns h2 {
  font-family: var(--theme-font-family-alt);
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1;
}
@media (min-width: 1024px) and (max-width: 1399px) {
  .text-columns h2 {
    font-size: clamp(30px, 2.6666666667vw + 2.6933333333px, 40px);
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .text-columns h2 {
    font-size: 2rem;
    line-height: 1;
  }
}

.text-columns__inner {
  padding: 80px 40px;
  display: grid;
  grid-template-areas: "text-columns";
  min-height: 100vh;
  border-left: 1px solid var(--theme-color-heritage-blue);
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .text-columns__inner {
    padding-block: clamp(60px, 10vw + -59.9px, 80px);
  }
}
.text-columns__inner {
  padding-inline: clamp(20px, 1.7873100983vw + 12.9758713137px, 40px);
}
@media (max-width: 1199px) {
  .text-columns__inner {
    padding-block: 60px;
  }
}
@media (max-width: 1023px) {
  .text-columns__inner {
    padding: 65px 0;
    grid-template-columns: 1fr;
    min-height: initial;
    border-left: none;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .text-columns__inner {
    padding: 40px 0;
  }
}

.text-columns__head {
  grid-area: text-columns;
}
@media (max-width: 1023px) {
  .text-columns__head {
    grid-area: initial;
    margin-bottom: 48px;
  }
}
.text-columns__head:last-child {
  margin-bottom: 0;
}

@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .text-columns__subtitle {
    font-size: 0.75rem;
  }
}

.text-columns__body {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
  grid-area: text-columns;
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .text-columns__body {
    gap: clamp(20px, 10vw + -99.9px, 40px);
  }
}
@media (max-width: 1199px) {
  .text-columns__body {
    gap: 20px;
  }
}
@media (max-width: 1023px) {
  .text-columns__body {
    grid-template-columns: 1fr;
    gap: 48px;
    grid-area: initial;
  }
}

.text-columns__column-title {
  padding-bottom: 22px;
  margin-bottom: 23px;
  border-bottom: 1px solid currentColor;
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .text-columns__column-title {
    padding-bottom: clamp(18px, 2vw + -5.98px, 22px);
  }
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .text-columns__column-title {
    margin-bottom: clamp(18px, 2.5vw + -11.975px, 23px);
  }
}
.text-columns__column-title:last-child {
  margin-bottom: 0;
}
@media (max-width: 1199px) {
  .text-columns__column-title {
    padding-bottom: 18px;
    margin-bottom: 18px;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .text-columns__column-title {
    padding-bottom: 9px;
    margin-bottom: 9px;
  }
}

.text-columns__column-subtitle {
  margin-bottom: 25px;
  font-size: 1.125rem;
  font-weight: 500;
}
.text-columns__column-subtitle:last-child {
  margin-bottom: 0;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .text-columns__column-subtitle {
    font-size: 0.875rem;
  }
}

.text-columns__column-entry {
  font-size: 0.875rem;
}
@media (min-width: 1199px) and (max-width: 1399px) {
  .text-columns__column-entry {
    font-size: clamp(14px, 1vw + 2.01px, 16px);
  }
}
@media (max-width: 1199px) {
  .text-columns__column-entry {
    font-size: 0.875rem;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .text-columns__column-entry {
    font-size: 0.75rem;
  }
}

.play-btn {
  position: absolute;
  bottom: 30px;
  right: 30px;
  background-color: transparent;
  border: none;
  width: 30px;
  aspect-ratio: 1/1;
  border-radius: 50%;
  opacity: 0;
  pointer-events: none;
  z-index: 1;
}
.play-btn.visible {
  opacity: 1;
  pointer-events: all;
}
.play-btn:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  color: var(--theme-color-white);
  background: transparent url("../images/icon-play.svg") no-repeat 55% 50%;
  background-size: 10px;
  border: 2px solid currentColor;
  border-radius: 50%;
  opacity: 0;
  pointer-events: none;
  will-change: transform, opacity;
  transition: background, opacity, transform;
  transition-duration: var(--theme-transition-duration);
}
@media (hover: hover) and (pointer: fine) {
  .play-btn:where(:hover, :focus-visible):before {
    opacity: 1;
    pointer-events: all;
  }
}
body.is-touch .play-btn {
  top: 0;
  left: 0;
  width: 100%;
  max-width: initial;
  height: 100%;
  border-radius: 0;
}
body.is-touch .play-btn:before {
  width: 30px;
  height: initial;
  aspect-ratio: 1/1;
  opacity: 1;
  pointer-events: all;
}
@media (max-width: 1023px) {
  body.is-touch .play-btn:before {
    width: 40px;
  }
}

.play-btn--playing:before {
  background: transparent url("../images/icon-pause.svg") no-repeat 50% 50%;
  background-size: 10px;
}
body.is-touch .play-btn--playing:before {
  opacity: 0;
  pointer-events: none;
}

div.gform_wrapper.gravity-theme.gform-theme--no-framework .gform_required_legend {
  display: none;
}
div.gform_wrapper.gravity-theme.gform-theme--no-framework input[type=color],
div.gform_wrapper.gravity-theme.gform-theme--no-framework input[type=date],
div.gform_wrapper.gravity-theme.gform-theme--no-framework input[type=datetime-local],
div.gform_wrapper.gravity-theme.gform-theme--no-framework input[type=datetime],
div.gform_wrapper.gravity-theme.gform-theme--no-framework input[type=email],
div.gform_wrapper.gravity-theme.gform-theme--no-framework input[type=month],
div.gform_wrapper.gravity-theme.gform-theme--no-framework input[type=number],
div.gform_wrapper.gravity-theme.gform-theme--no-framework input[type=password],
div.gform_wrapper.gravity-theme.gform-theme--no-framework input[type=search],
div.gform_wrapper.gravity-theme.gform-theme--no-framework input[type=tel],
div.gform_wrapper.gravity-theme.gform-theme--no-framework input[type=text],
div.gform_wrapper.gravity-theme.gform-theme--no-framework input[type=time],
div.gform_wrapper.gravity-theme.gform-theme--no-framework input[type=url],
div.gform_wrapper.gravity-theme.gform-theme--no-framework input[type=week],
div.gform_wrapper.gravity-theme.gform-theme--no-framework select,
div.gform_wrapper.gravity-theme.gform-theme--no-framework textarea {
  display: block;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 1px solid;
  border-radius: 0;
  box-shadow: none;
  height: 40px;
  background: #fff;
  color: #000;
  padding-inline: 8px;
  font-size: inherit;
}
div.gform_wrapper.gravity-theme.gform-theme--no-framework textarea {
  resize: vertical;
}
div.gform_wrapper.gravity-theme.gform-theme--no-framework textarea.large {
  height: 140px;
}
div.gform_wrapper.gravity-theme.gform-theme--no-framework .gform_validation_errors {
  display: none;
}
div.gform_wrapper.gravity-theme.gform-theme--no-framework .gfield_validation_message {
  padding: 0;
  border: 0;
  background: transparent;
  color: #c02b0a;
}
div.gform_wrapper.gravity-theme.gform-theme--no-framework .gform_footer,
div.gform_wrapper.gravity-theme.gform-theme--no-framework .gform_page_footer {
  position: relative;
  padding: 0;
  margin: 27px 0 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
div.gform_wrapper.gravity-theme.gform-theme--no-framework .gform_footer input,
div.gform_wrapper.gravity-theme.gform-theme--no-framework .gform_footer button,
div.gform_wrapper.gravity-theme.gform-theme--no-framework .gform_page_footer input,
div.gform_wrapper.gravity-theme.gform-theme--no-framework .gform_page_footer button {
  margin: 0;
  line-height: 1.2 !important;
}
div.gform_wrapper.gravity-theme.gform-theme--no-framework .gform_ajax_spinner {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  width: 50px;
}
/*# sourceMappingURL=style.css.map */