/* ── Homepage Events Section ── */
.home-events-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: var(--_spacing-system---spacing--spacing-3xl);
  gap: var(--_spacing-system---spacing--spacing-l);
}

.home-events-header-text {
  max-width: 550px;
}

.home-events-header h2 {
  margin-bottom: 0.4em;
  color: var(--titles-color);
}

.home-events-header p {
  opacity: 0.7;
  margin-bottom: 0;
  line-height: 1.6;
  color: var(--titles-color, #1c2247);
}

.home-events-view-all {
  display: inline-flex;
  align-items: center;
  gap: var(--_spacing-system---spacing--spacing-xxs);
  font-family: var(--_typography---fonts--primary);
  font-size: var(--_typography---body-text--text-xxs);
  font-weight: var(--_typography---font-weight--medium);
  letter-spacing: var(--_typography---letter-spacing--letter-spacing-l);
  text-transform: uppercase;
  color: var(--titles-color);
  text-decoration: none;
  white-space: nowrap;
  flex-shrink: 0;
}

.home-events-view-all svg {
  transition: transform 0.25s;
}

.home-events-view-all:hover svg {
  transform: translateX(4px);
}

.home-events-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--_spacing-system---spacing--spacing-l, 20px);
}

/* Featured card */
.home-event-featured {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  border-radius: var(--_spacing-system---border-radius--radius-xxs);
  overflow: hidden;
  background: var(--titles-color, #1c2247);
  min-height: 360px;
  text-decoration: none;
  color: #fff;
  transition: box-shadow 0.3s ease;
}

.home-event-featured:hover {
  box-shadow: 0 16px 48px rgba(28, 34, 71, 0.18);
}

.home-event-featured-image {
  position: relative;
  overflow: hidden;
  min-height: 360px;
}

.home-event-featured-body {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: var(--_spacing-system---spacing--spacing-4xl);
}

.home-event-featured .event-date-badge {
  display: inline-block;
  font-family: var(--_typography---fonts--primary);
  font-size: var(--_typography---body-text--text-xxs);
  font-weight: var(--_typography---font-weight--medium);
  letter-spacing: var(--_typography---letter-spacing--letter-spacing-l);
  text-transform: uppercase;
  opacity: 0.55;
  margin-bottom: var(--_spacing-system---spacing--spacing-s);
}

.home-event-featured .event-title-text {
  font-size: 1.65rem;
  font-weight: 700;
  line-height: 1.25;
  margin-bottom: var(--_spacing-system---spacing--spacing-m);
}

.home-event-featured .event-location-text {
  font-size: 0.9rem;
  opacity: 0.5;
  display: flex;
  align-items: center;
  gap: 6px;
}

.home-event-featured .event-cta {
  margin-top: auto;
  padding-top: var(--_spacing-system---spacing--spacing-l);
  font-family: var(--_typography---fonts--primary);
  font-size: var(--_typography---body-text--text-xxs);
  font-weight: var(--_typography---font-weight--medium);
  letter-spacing: var(--_typography---letter-spacing--letter-spacing-l);
  text-transform: uppercase;
  display: flex;
  align-items: center;
  gap: 6px;
  opacity: 0.6;
  transition: opacity 0.2s;
}

.home-event-featured:hover .event-cta {
  opacity: 1;
}

/* Secondary cards */
.home-event-secondary {
  display: flex;
  flex-direction: column;
  border-radius: var(--_spacing-system---border-radius--radius-xxs);
  overflow: hidden;
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.08);
  text-decoration: none;
  color: inherit;
  transition: box-shadow 0.3s ease;
}

.home-event-secondary:hover {
  box-shadow: 0 8px 28px rgba(0, 0, 0, 0.1);
}

.home-event-secondary-image {
  position: relative;
  overflow: hidden;
  height: 200px;
}

.home-event-secondary-body {
  padding: var(--_spacing-system---spacing--spacing-m) var(--_spacing-system---spacing--spacing-l);
  flex: 1;
  display: flex;
  flex-direction: column;
}

.home-event-secondary .event-date-badge {
  font-family: var(--_typography---fonts--primary);
  font-size: var(--_typography---body-text--text-xxs);
  font-weight: var(--_typography---font-weight--medium);
  letter-spacing: var(--_typography---letter-spacing--letter-spacing-l);
  text-transform: uppercase;
  color: var(--titles-color);
  opacity: 0.5;
  margin-bottom: 6px;
}

.home-event-secondary .event-title-text {
  font-size: 1.1rem;
  font-weight: 600;
  line-height: 1.35;
  margin-bottom: 6px;
  color: var(--titles-color);
}

.home-event-secondary .event-location-text {
  font-size: 0.85rem;
  opacity: 0.45;
  margin-top: auto;
  color: var(--titles-color);
}

/* Events section responsive */
@media screen and (max-width: 991px) {
  .home-events-header {
    flex-direction: column;
    align-items: flex-start;
  }

  .home-event-featured {
    grid-template-columns: 1fr;
    min-height: auto;
  }

  .home-event-featured-image {
    min-height: 260px;
  }

  .home-event-featured-body {
    padding: var(--_spacing-system---spacing--spacing-2xl);
  }

  .home-event-featured .event-title-text {
    font-size: 1.4rem;
  }
}

@media screen and (max-width: 767px) {
  .home-events-grid {
    grid-template-columns: 1fr;
  }

  .home-event-featured-image {
    min-height: 220px;
  }

  .home-event-secondary-image {
    height: 170px;
  }
}

/* Events page section headings */
.events-section-heading {
  font-size: 1.35rem;
  font-weight: 700;
  color: var(--titles-color);
  margin-bottom: var(--_spacing-system---spacing--spacing-l);
  padding-bottom: var(--_spacing-system---spacing--spacing-s);
  border-bottom: 2px solid var(--titles-color);
  display: inline-block;
}
.events-section-heading.past {
  margin-top: var(--_spacing-system---spacing--spacing-5xl);
  opacity: 0.6;
  border-bottom-color: rgba(28,34,71,0.3);
}

/* Override base img { display: inline-block } for cover images */
.event-cover,
.team-member-photo {
  display: block;
}

/* Team member cards */
.team-member-link-block {
  position: relative;
  overflow: hidden;
}

.team-member-link-block .team-member-photo {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
}

/* Carousel cards — lock aspect ratio */
.team-carousel-card a {
  position: relative;
  display: block;
  overflow: hidden;
}

/* About page avatars */
.sg-card-avatar {
  position: relative;
  overflow: hidden;
}

.sg-card-avatar img {
  position: absolute !important;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
}

/* ── End CLS Prevention ──────────────────────────────────────────── */

@font-face {
  font-family: "Fa 400";
  src: url('../fonts/fa-regular-400.woff2') format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Fa Solid 900";
  src: url('../fonts/fa-solid-900.woff2') format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Fa Brands 400";
  src: url('../fonts/fa-brands-400.woff2') format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

:root {
  --_typography---fonts--primary: Inter, sans-serif;
  --titles-color: #1c2247;
  --_typography---body-text--text-xs: 16px;
  --_typography---line-height--line-height-xl: 1.5em;
  --_typography---font-weight--regular: 400;
  --_spacing-system---spacing--spacing-none: 0px;
  --_typography---fonts--title: Inter, sans-serif;
  --_typography---typography--h1: 56px;
  --_typography---line-height--line-height-xxs: 1em;
  --_typography---letter-spacing--letter-spacing-m: -1.5px;
  --_typography---line-height--line-height-s: 1.2em;
  --_typography---typography--h2: 46px;
  --_typography---letter-spacing--letter-spacing-xxs: -1px;
  --_typography---typography--h3: 34px;
  --_typography---font-weight--medium: 500;
  --_typography---typography--h4: 26px;
  --_typography---typography--h5: 22px;
  --_typography---body-text--text-s: 18px;
  --_typography---letter-spacing--letter-spacing-s: .5px;
  --paragraph-color: #f4f4f4;
  --_typography---line-height--line-height-l: 1.4em;
  --_spacing-system---spacing--spacing-xs: 6px;
  --_spacing-system---spacing--spacing-l: 20px;
  --_spacing-system---spacing--spacing-3xl: 30px;
  --_spacing-system---spacing--spacing-2xl: 24px;
  --primary-color: #c9a84c;
  --light-gray: #f4f4f4;
  --_typography---body-text--text-m: 20px;
  --_spacing-system---spacing--spacing-ml: 15px;
  --_spacing-system---containers--full-width: 100%;
  --transparent: #fff0;
  --_spacing-system---spacing--section-spacing: 80px;
  --white: #fff;
  --_spacing-system---spacing--spacing-6xl: 60px;
  --background: #1c2247;
  --_spacing-system---containers--base-container: 1200px;
  --_typography---letter-spacing--letter-spacing-l: 1.1px;
  --_typography---body-text--text-xxs: 14px;
  --_spacing-system---spacing--spacing-4xl: 40px;
  --_spacing-system---border-radius--radius-xxs: 2px;
  --overlay-70: #1c2247b3;
  --_spacing-system---border-radius--radius-xs: 4px;
  --_spacing-system---spacing--spacing-8xl: 130px;
  --_spacing-system---spacing--spacing-7xl: 100px;
  --_typography---body-text--text-l: 22px;
  --_typography---font-weight--semi-bold: 600;
  --_spacing-system---spacing--spacing-5xl: 50px;
  --_spacing-system---spacing--spacing-m: 12px;
  --_spacing-system---spacing--spacing-sm: 10px;
  --_spacing-system---spacing--spacing-s: 8px;
  --stroke: #c9a84c;
  --_typography---fonts--font-awesome-02: "Fa Brands 400", Arial, sans-serif;
  --_typography---body-text--text-xl: 24px;
  --_typography---line-height--line-height-m: 1.3em;
  --_typography---fonts--font-awesome-03: "Fa Solid 900", Arial, sans-serif;
  --white-15: #ffffff26;
  --dark-paragraph-color: #0b0c0c;
  --_spacing-system---spacing--spacing-xxs: 4px;
  --white-50: #ffffff80;
  --_typography---typography--h6: 20px;
  --_typography---letter-spacing--letter-spacing-xs: .15px;
  --white-30: #ffffff4d;
  --_spacing-system---border-radius--radius-l: 100px;
  --_spacing-system---spacing--spacing-xl: 22px;
  --_typography---line-height--line-height-xs: 1.1em;
  --accent-2: #788aa3;
  --accent: #c792df;
  --_typography---fonts--font-awesome-01: "Fa 400", Arial, sans-serif;
  --_typography---typography--display-01: 0px;
  --_typography---typography--display-02: 0px;
  --_typography---typography--display-03: 0px;
  --_typography---font-weight--light: 300;
  --_spacing-system---border-radius--radius-s: 6px;
  --_spacing-system---border-radius--radius-m: 8px;
  --_typography---font-weight--bold: 700;
  --_typography---font-weight--extra-bold: 800;
}

.w-layout-blockcontainer {
  max-width: 940px;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

.w-pagination-wrapper {
  flex-wrap: wrap;
  justify-content: center;
  display: flex;
}

.w-pagination-previous {
  color: #333;
  background-color: #fafafa;
  border: 1px solid #ccc;
  border-radius: 2px;
  margin-left: 10px;
  margin-right: 10px;
  padding: 9px 20px;
  font-size: 14px;
  display: block;
}

.w-pagination-previous-icon {
  margin-right: 4px;
}

.w-pagination-next {
  color: #333;
  background-color: #fafafa;
  border: 1px solid #ccc;
  border-radius: 2px;
  margin-left: 10px;
  margin-right: 10px;
  padding: 9px 20px;
  font-size: 14px;
  display: block;
}

.w-pagination-next-icon {
  margin-left: 4px;
}

.w-layout-grid {
  grid-row-gap: 16px;
  grid-column-gap: 16px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

@media screen and (max-width: 991px) {
  .w-layout-blockcontainer {
    max-width: 728px;
  }
}

@media screen and (max-width: 767px) {
  .w-layout-blockcontainer {
    max-width: none;
  }
}

body {
  font-family: var(--_typography---fonts--primary);
  color: var(--titles-color);
  font-size: var(--_typography---body-text--text-xs);
  line-height: var(--_typography---line-height--line-height-xl);
  font-weight: var(--_typography---font-weight--regular);
}

h1 {
  margin-top: var(--_spacing-system---spacing--spacing-none);
  margin-bottom: var(--_spacing-system---spacing--spacing-none);
  font-family: var(--_typography---fonts--title);
  font-size: var(--_typography---typography--h1);
  line-height: var(--_typography---line-height--line-height-xxs);
  font-weight: var(--_typography---font-weight--regular);
  letter-spacing: var(--_typography---letter-spacing--letter-spacing-m);
}

h2 {
  margin-top: var(--_spacing-system---spacing--spacing-none);
  margin-bottom: var(--_spacing-system---spacing--spacing-none);
  font-family: var(--_typography---fonts--title);
  color: var(--titles-color);
  font-size: clamp(26px, 3.5vw, 36px);
  line-height: 1.2;
  font-weight: var(--_typography---font-weight--regular);
  letter-spacing: -0.02em;
}

h3 {
  margin-top: var(--_spacing-system---spacing--spacing-none);
  margin-bottom: var(--_spacing-system---spacing--spacing-none);
  font-family: var(--_typography---fonts--title);
  font-size: clamp(20px, 2.5vw, 28px);
  line-height: 1.25;
  font-weight: var(--_typography---font-weight--medium);
  letter-spacing: -0.01em;
}

h4 {
  margin-top: var(--_spacing-system---spacing--spacing-none);
  margin-bottom: var(--_spacing-system---spacing--spacing-none);
  font-family: var(--_typography---fonts--title);
  color: var(--titles-color);
  font-size: var(--_typography---typography--h4);
  line-height: var(--_typography---line-height--line-height-s);
  font-weight: var(--_typography---font-weight--medium);
}

h5 {
  margin-top: var(--_spacing-system---spacing--spacing-none);
  margin-bottom: var(--_spacing-system---spacing--spacing-none);
  font-family: var(--_typography---fonts--title);
  font-size: var(--_typography---typography--h5);
  line-height: var(--_typography---line-height--line-height-s);
  font-weight: var(--_typography---font-weight--regular);
}

h6 {
  margin-top: var(--_spacing-system---spacing--spacing-none);
  margin-bottom: var(--_spacing-system---spacing--spacing-none);
  font-size: var(--_typography---body-text--text-s);
  line-height: var(--_typography---line-height--line-height-s);
  font-weight: var(--_typography---font-weight--medium);
  letter-spacing: var(--_typography---letter-spacing--letter-spacing-s);
  text-transform: uppercase;
}

p {
  margin-top: var(--_spacing-system---spacing--spacing-none);
  margin-bottom: var(--_spacing-system---spacing--spacing-none);
  font-family: var(--_typography---fonts--primary);
  color: var(--paragraph-color);
  font-size: var(--_typography---body-text--text-xs);
  line-height: var(--_typography---line-height--line-height-l);
  font-weight: var(--_typography---font-weight--regular);
  text-transform: none;
}

a {
  color: var(--titles-color);
  font-size: var(--_typography---body-text--text-xs);
  font-weight: var(--_typography---font-weight--medium);
  text-transform: uppercase;
  text-decoration: none;
  transition: all .35s;
  display: inline-block;
}

a:hover {
  color: var(--paragraph-color);
}

ul {
  margin-top: var(--_spacing-system---spacing--spacing-none);
  margin-bottom: var(--_spacing-system---spacing--spacing-xs);
  padding-left: var(--_spacing-system---spacing--spacing-l);
  grid-column-gap: var(--_spacing-system---spacing--spacing-xs);
  grid-row-gap: var(--_spacing-system---spacing--spacing-xs);
  color: #1c2247;
  font-weight: var(--_typography---font-weight--regular);
  flex-flow: column;
  display: flex;
}

li {
  color: #1c2247;
}

img {
  max-width: 100%;
  display: inline-block;
}

blockquote {
  margin-bottom: var(--_spacing-system---spacing--spacing-none);
  padding: var(--_spacing-system---spacing--spacing-3xl) var(--_spacing-system---spacing--spacing-l) var(--_spacing-system---spacing--spacing-3xl) var(--_spacing-system---spacing--spacing-2xl);
  border-left: 3px solid var(--primary-color);
  background-color: var(--light-gray);
  font-family: var(--_typography---fonts--title);
  font-size: var(--_typography---body-text--text-m);
  line-height: var(--_typography---line-height--line-height-xl);
  font-weight: var(--_typography---font-weight--medium);
  max-width: 750px;
}

figure {
  margin-bottom: 10px;
}

.section {
  padding-top: var(--_spacing-system---spacing--section-spacing);
  padding-bottom: var(--_spacing-system---spacing--section-spacing);
  background-color: var(--white);
  position: relative;
  z-index: 2;
}

.section.without-top-spacing {
  padding-top: 0;
}

.section.licensing-fonts {
  padding-top: 0;
  padding-bottom: 0;
}

.section.home-services-section {
  padding-top: var(--_spacing-system---spacing--spacing-none);
  padding-bottom: var(--_spacing-system---spacing--spacing-none);
  background-color: var(--light-gray);
  display: flex;
  position: relative;
}

.section.no-space {
  padding-top: var(--_spacing-system---spacing--spacing-none);
  padding-bottom: var(--_spacing-system---spacing--spacing-none);
}

.section.video-section {
  padding-top: 60px;
  padding-bottom: var(--_spacing-system---spacing--spacing-6xl);
  justify-content: flex-start;
  align-items: flex-end;
  height: 600px;
  display: flex;
  position: relative;
}

.section.dark-bg-no-bottom-space {
  padding-top: 100px;
  padding-bottom: 60px;
  background-color: var(--background);
  overflow: hidden;
}

.section.light-bg {
  background-color: var(--light-gray);
  overflow: hidden;
  padding-top: 40px;
}

.section.without-bottom-space {
  padding-bottom: var(--_spacing-system---spacing--spacing-none);
}

.section.about-photo-section {
  padding-top: var(--_spacing-system---spacing--spacing-6xl);
  padding-bottom: var(--_spacing-system---spacing--spacing-6xl);
  background-image: linear-gradient(103deg, #12191de0, #25343b00), url('../images/2152001198_12152001198.webp');
  background-position: 0 0, 50% 100%;
  background-size: auto, cover;
  justify-content: flex-start;
  align-items: flex-end;
  display: flex;
  position: relative;
}

.section.service-banner-section {
  padding-top: 150px;
  padding-bottom: var(--_spacing-system---spacing--spacing-6xl);
  position: sticky;
  top: 0;
  left: 0;
  right: 0;
}

.section.contacts-banner-section {
  padding-top: 180px;
  padding-bottom: var(--_spacing-system---spacing--spacing-6xl);
}

.base-container {
  max-width: var(--_spacing-system---containers--base-container);
  flex-direction: column;
  align-items: center;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 15px;
  padding-right: 15px;
}

.base-container.full-width {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}

.style-guide-tab-link.w--current {
  background-color: var(--titles-color);
  color: var(--white);
}

.rich-text-style {
  color: var(--titles-color);
}

.rich-text-style h2 {
  margin-bottom: var(--_spacing-system---spacing--spacing-ml);
}

.rich-text-style h3 {
  margin-top: var(--_spacing-system---spacing--spacing-3xl);
  margin-bottom: var(--_spacing-system---spacing--spacing-ml);
}

.rich-text-style img {
  border-radius: var(--_spacing-system---border-radius--radius-xxs);
  object-fit: cover;
  width: 100%;
}

.rich-text-style figure {
  margin-top: var(--_spacing-system---spacing--spacing-4xl);
  margin-bottom: var(--_spacing-system---spacing--spacing-4xl);
  flex-flow: column;
  display: flex;
}

.rich-text-style h4 {
  margin-top: var(--_spacing-system---spacing--spacing-3xl);
  margin-bottom: var(--_spacing-system---spacing--spacing-ml);
}

.rich-text-style h5,
.rich-text-style h6 {
  margin-top: 30px;
  margin-bottom: 15px;
}

.rich-text-style ul {
  margin-top: var(--_spacing-system---spacing--spacing-ml);
  margin-bottom: var(--_spacing-system---spacing--spacing-3xl);
}

.rich-text-style.blog {
  color: var(--overlay-70);
}

.paragraph-large {
  font-size: var(--_typography---body-text--text-s);
}

.inner-banner {
  padding-top: var(--_spacing-system---spacing--spacing-8xl);
  padding-bottom: var(--_spacing-system---spacing--spacing-7xl);
  background-image: linear-gradient(to bottom, var(--overlay-70), var(--overlay-70)), url('../images/pexels-jacobyclarkephoto-956952_1pexels-jacobyclarkephoto-956952.webp');
  background-position: 0 0, 50%;
  background-size: auto, cover;
  justify-content: center;
  align-items: center;
  min-height: 280px;
  display: flex;
}

.banner-title {
  text-align: center;
}

.licensing-icons-wrapper {
  padding-top: var(--_spacing-system---spacing--spacing-3xl);
  padding-bottom: var(--_spacing-system---spacing--spacing-l);
}

.license-title-space {
  width: var(--_spacing-system---containers--full-width);
  padding-bottom: var(--_spacing-system---spacing--spacing-3xl);
}

.licensing-subtitle {
  font-size: var(--_typography---body-text--text-l);
  line-height: var(--_typography---line-height--line-height-s);
  font-weight: var(--_typography---font-weight--semi-bold);
  text-transform: capitalize;
}

.licensing-image {
  width: var(--_spacing-system---containers--full-width);
  max-width: var(--_spacing-system---containers--full-width);
  object-fit: cover;
  height: 100%;
}

.licensing-grid {
  width: var(--_spacing-system---containers--full-width);
  grid-column-gap: var(--_spacing-system---spacing--spacing-l);
  grid-row-gap: var(--_spacing-system---spacing--spacing-l);
  border-bottom: 1px #5e5e5e80;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
}

.image-resources {
  grid-column-gap: var(--_spacing-system---spacing--spacing-5xl);
  grid-row-gap: var(--_spacing-system---spacing--spacing-5xl);
  flex-flow: column;
  display: flex;
}

.licensing-images-wrapper {
  width: var(--_spacing-system---containers--full-width);
  padding-top: var(--_spacing-system---spacing--spacing-4xl);
  position: relative;
}

.license-link-wrapper {
  grid-column-gap: var(--_spacing-system---spacing--spacing-5xl);
  grid-row-gap: var(--_spacing-system---spacing--spacing-5xl);
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.licensing-intro {
  grid-column-gap: var(--_spacing-system---spacing--spacing-sm);
  grid-row-gap: var(--_spacing-system---spacing--spacing-sm);
  flex-flow: column;
  display: flex;
}

.resource-title {
  text-transform: uppercase;
}

.licensing-icon-link-wrapper {
  margin-right: 25px;
  transition: none;
}

.licensing-title-wrapper {
  margin-bottom: var(--_spacing-system---spacing--spacing-4xl);
  grid-column-gap: var(--_spacing-system---spacing--spacing-3xl);
  grid-row-gap: var(--_spacing-system---spacing--spacing-s);
  border-bottom: 1px #5e5e5e80;
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.intro-grid {
  grid-column-gap: 40px;
  grid-row-gap: 40px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.top-licensing-wrap {
  width: var(--_spacing-system---containers--full-width);
  padding-bottom: var(--_spacing-system---spacing--spacing-4xl);
  grid-column-gap: var(--_spacing-system---spacing--spacing-ml);
  grid-row-gap: var(--_spacing-system---spacing--spacing-ml);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.line {
  background-color: var(--stroke);
  width: 100%;
  height: 1px;
  position: absolute;
  inset: 0% auto auto 0%;
}

.icon-style-guide {
  font-family: var(--_typography---fonts--font-awesome-02);
  font-size: var(--_typography---body-text--text-xl);
  line-height: var(--_typography---line-height--line-height-m);
  transition: all .45s;
}

.icon-style-guide.dribble {
  font-family: var(--_typography---fonts--font-awesome-03);
}

.h3-mobile {
  font-size: 30px;
}

.system-space {
  width: var(--_spacing-system---containers--full-width);
  padding-top: var(--_spacing-system---spacing--spacing-4xl);
  padding-bottom: var(--_spacing-system---spacing--spacing-3xl);
}

.primary-style-guide {
  border: 1px solid var(--stroke);
  border-radius: var(--_spacing-system---border-radius--radius-xxs);
  background-color: var(--primary-color);
  width: 75px;
  height: 75px;
}

.grid-title {
  margin-top: var(--_spacing-system---spacing--spacing-none);
  margin-bottom: var(--_spacing-system---spacing--spacing-none);
  padding: var(--_spacing-system---spacing--spacing-l) var(--_spacing-system---spacing--spacing-sm);
  border-right: 1px solid var(--white-15);
  border-left: 1px none var(--white-15);
  background-color: var(--titles-color);
  color: var(--white);
  justify-content: center;
  width: 19%;
  display: flex;
}

.grid-title.first-grid {
  border-left-style: solid;
  border-left-color: var(--white-15);
  width: 24%;
  height: 100%;
  margin-top: 0;
}

.link-wrapper {
  flex: none;
}

.heading-column {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.intro-box {
  grid-column-gap: var(--_spacing-system---spacing--spacing-l);
  grid-row-gap: var(--_spacing-system---spacing--spacing-l);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.intro-box.large-gap {
  grid-column-gap: var(--_spacing-system---spacing--spacing-3xl);
  grid-row-gap: var(--_spacing-system---spacing--spacing-3xl);
  border-radius: var(--_spacing-system---border-radius--radius-xxs);
  background-color: var(--light-gray);
  padding: 40px;
}

.intro-box.large-gap.dark {
  background-color: var(--titles-color);
}

.grid-system {
  border-top: 1px solid var(--white-15);
  justify-content: space-between;
  width: 80%;
  display: flex;
}

.h3-tablet {
  font-size: 32px;
}

.color-wrapper {
  grid-column-gap: var(--_spacing-system---spacing--spacing-sm);
  grid-row-gap: var(--_spacing-system---spacing--spacing-sm);
  flex-flow: column;
  display: flex;
}

.bottom-space {
  width: var(--_spacing-system---containers--full-width);
  padding-bottom: var(--_spacing-system---spacing--spacing-4xl);
}

.bottom-space.space-small {
  padding-bottom: 20px;
}

.style-guide-intro {
  grid-row-gap: 60px;
  flex-direction: column;
  justify-content: space-between;
  align-items: stretch;
  width: 100%;
}

.color-container {
  grid-column-gap: var(--_spacing-system---spacing--spacing-3xl);
  grid-row-gap: var(--_spacing-system---spacing--spacing-l);
  flex-wrap: wrap;
  justify-content: flex-start;
  display: flex;
}

.spacing-wrapper {
  width: var(--_spacing-system---containers--full-width);
  margin-top: var(--_spacing-system---spacing--spacing-3xl);
  margin-bottom: var(--_spacing-system---spacing--spacing-3xl);
  position: relative;
}

.link-with-icon {
  grid-column-gap: 4px;
  grid-row-gap: 4px;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.link-with-icon:hover {
  grid-column-gap: 8px;
  grid-row-gap: 8px;
}

.text-button-icon-2 {
  padding-top: 3px;
  font-family: "Fa Solid 900", Arial, sans-serif;
  font-size: 13px;
  line-height: 1;
}

.typography-hero-wrapper {
  grid-row-gap: 60px;
  flex-direction: column;
  justify-content: space-between;
  display: flex;
}

.spacing-grid {
  grid-column-gap: var(--_spacing-system---spacing--spacing-3xl);
  grid-row-gap: var(--_spacing-system---spacing--spacing-3xl);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.colors-wrapper {
  grid-column-gap: var(--_spacing-system---spacing--spacing-3xl);
  grid-row-gap: var(--_spacing-system---spacing--spacing-3xl);
  flex-flow: column;
  display: flex;
}

.light-gray-style-guide {
  border: 1px solid var(--stroke);
  border-radius: var(--_spacing-system---border-radius--radius-xxs);
  background-color: var(--light-gray);
  width: 75px;
  height: 75px;
}

.style-guide-subtitle {
  font-family: var(--_typography---fonts--title);
  font-size: var(--_typography---body-text--text-xl);
  line-height: var(--_typography---line-height--line-height-s);
}

.style-guide-content {
  grid-column-gap: 40px;
  grid-row-gap: 30px;
  flex-flow: row;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.style-guide-content.quote-grid {
  grid-template-columns: 1fr;
}

.style-guide-content.button-grid {
  grid-column-gap: var(--_spacing-system---spacing--spacing-l);
  grid-row-gap: var(--_spacing-system---spacing--spacing-l);
}

.grid-description {
  margin-top: var(--_spacing-system---spacing--spacing-none);
  margin-bottom: var(--_spacing-system---spacing--spacing-none);
  padding: var(--_spacing-system---spacing--spacing-l) var(--_spacing-system---spacing--spacing-sm);
  border-right: 1px solid var(--stroke);
  border-bottom: 1px solid var(--stroke);
  justify-content: center;
  align-items: center;
  width: 19%;
  display: flex;
}

.grid-description.first-description {
  border-left: 1px solid var(--stroke);
  width: 24%;
}

.grid-description.last-description {
  border-right-style: solid;
  border-right-width: 1px;
}

.button-wrapper-sg {
  flex: none;
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.paragraph-gray-style-guide {
  border: 1px none var(--stroke);
  border-radius: var(--_spacing-system---border-radius--radius-xxs);
  background-color: var(--paragraph-color);
  width: 75px;
  height: 75px;
}

.primary-titles-style-guide {
  border: 1px none var(--stroke);
  border-radius: var(--_spacing-system---border-radius--radius-xxs);
  background-color: var(--titles-color);
  width: 75px;
  height: 75px;
}

.headings-container {
  grid-column-gap: 40px;
  grid-row-gap: 40px;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
  display: flex;
}

.heading-wrap {
  width: 100%;
}

.white-style-guide {
  border: 1px solid var(--stroke);
  border-radius: var(--_spacing-system---border-radius--radius-xxs);
  background-color: #fff;
  width: 75px;
  height: 75px;
}

.colors-container {
  grid-column-gap: 60px;
  grid-row-gap: 30px;
  justify-content: flex-start;
  display: flex;
}

.changelog-content {
  grid-column-gap: var(--_spacing-system---spacing--spacing-ml);
  grid-row-gap: var(--_spacing-system---spacing--spacing-ml);
  flex-flow: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

._404-logo-wrapper {
  left: 0%;
  top: var(--_spacing-system---spacing--spacing-4xl);
  justify-content: center;
  display: flex;
  position: absolute;
  bottom: auto;
  right: 0%;
}

._404-content-wrapper {
  width: var(--_spacing-system---containers--full-width);
  grid-column-gap: var(--_spacing-system---spacing--spacing-4xl);
  grid-row-gap: var(--_spacing-system---spacing--spacing-4xl);
  flex-direction: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.brand-logo {
  object-fit: cover;
  height: 72px;
  width: auto;
}

.nav-dropdown-list.w--open {
  padding-top: 20px;
  padding-bottom: 20px;
  box-shadow: 0 0 10px #0000000a;
}

.nav-dropdown-list.megamenu.w--open {
  border-color: var(--stroke);
  border-radius: var(--_spacing-system---border-radius--radius-xxs);
  width: 450px;
  display: flex;
  left: -180px;
}

.nav-dropdown-toggle.dark {
  color: var(--titles-color);
}

.nav-dropdown-link.w--current {
  color: var(--dark-paragraph-color);
}

.brand-tablet {
  display: none;
}

.nav-menu-wrapper {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width: 100%;
  padding-top: 10px;
  justify-content: space-between;
}

.nav-button-wrap {
  order: 2;
  flex: 0 0 auto;
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 12px;
}

.auth-nav-link {
  color: var(--white);
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  text-decoration: none;
  background-color: transparent;
  /* Removed solid background */
  border: 1.5px solid var(--white);
  /* Added subtle border */
  padding: 5px 14px;
  border-radius: 4px;
  transition: all 0.3s ease;
  white-space: nowrap;
  letter-spacing: 0.5px;
  opacity: 0.8;
}

.auth-nav-link:hover {
  background-color: var(--white);
  color: #1c2247;
  /* Match background blue */
  opacity: 1;
}

.auth-nav-link:hover {
  background-color: var(--titles-color);
  color: var(--white);
}

/* Auth State Visibility */
.auth-link-logout,
.auth-link-admin {
  display: none !important;
}

.user-logged-in .auth-link-logout {
  display: flex !important;
}

.user-logged-in .auth-link-login {
  display: none !important;
}

.user-is-admin .auth-link-admin {
  display: flex !important;
}

.nav-item-title.dark {
  color: var(--titles-color);
}

.nav-menu {
  order: 4;
  flex: 0 0 100%;
  width: 100%;
  text-align: left;
  justify-content: flex-start;
  align-items: center;
  border-top: 1px solid rgba(255, 255, 255, 0.18);
  padding: 0;
  display: flex;
}

.menu-wrap {
  display: flex !important;
  align-items: center;
  width: 100% !important;
  flex: 1 1 100% !important;
  justify-content: space-between !important;
  gap: 4px; /* even spacing between all nav items */
}

.nav-link {
  color: var(--white);
  font-size: 14px;
  line-height: var(--_typography---line-height--line-height-s);
  font-weight: 600;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  padding: 10px 15px;
  transition: all 0.3s ease;
  white-space: nowrap;
  text-align: center;
}

.nav-link:hover,
.nav-link.w--current {
  color: var(--primary-color);
}

.nav-link.dark {
  color: var(--titles-color);
}

.nav-link.dark:hover {
  color: var(--paragraph-color);
}

/* Consolidated navbar styles moved to end of file */


/* Obsolete white-bg styles removed */


.footer-wrapper {
  margin-top: var(--_spacing-system---spacing--spacing-3xl);
  justify-content: space-between;
  width: 100%;
  margin-bottom: 70px;
  display: flex;
}

.footer-intro-title {
  color: var(--white);
  font-size: var(--_typography---body-text--text-xxs);
  line-height: var(--_typography---line-height--line-height-xxs);
  font-weight: var(--_typography---font-weight--semi-bold);
  letter-spacing: 2px;
  text-transform: uppercase;
}

.footer-link {
  opacity: .6;
  color: var(--white);
  line-height: var(--_typography---line-height--line-height-l);
  font-weight: var(--_typography---font-weight--regular);
  text-transform: none;
}

.footer-link:hover {
  opacity: 1;
  color: var(--white);
}

.footer {
  padding-top: var(--_spacing-system---spacing--spacing-6xl);
  padding-bottom: var(--_spacing-system---spacing--spacing-4xl);
  background-color: var(--titles-color);
  align-items: flex-start;
  position: relative;
  z-index: 2;
}

.links-column {
  grid-column-gap: var(--_spacing-system---spacing--spacing-m);
  grid-row-gap: var(--_spacing-system---spacing--spacing-m);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.pass-page-content {
  margin-bottom: var(--_spacing-system---spacing--spacing-none);
  text-align: center;
  flex-direction: column;
  width: 320px;
  display: flex;
}

.password-page-wrap {
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 100%;
  height: 100vh;
  max-height: 100%;
  padding: 40px 15px;
  display: flex;
}

.error-message {
  background-color: var(--transparent);
  margin-top: 15px;
  padding: 0;
}

.text-white {
  color: var(--white);
}

.home-banner-section {
  justify-content: flex-start;
  align-items: flex-end;
  min-height: 80vh;
  padding-top: 200px;
  padding-bottom: 80px;
  display: flex;
  position: sticky;
  top: 0;
  left: 0;
  right: 0;
  box-sizing: border-box;
  overflow: hidden;
  z-index: 1;
}

.background-video {
  z-index: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.banner-text-wrap {
  z-index: 3;
  grid-column-gap: var(--_spacing-system---spacing--spacing-5xl);
  grid-row-gap: var(--_spacing-system---spacing--spacing-5xl);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  max-width: 700px;
  display: flex;
  position: relative;
}

.banner-text-wrap.event-page-banner {
  max-width: 500px;
}

.banner-title-wrapper {
  grid-column-gap: var(--_spacing-system---spacing--spacing-l);
  grid-row-gap: var(--_spacing-system---spacing--spacing-l);
  flex-flow: column;
  display: flex;
}

.banner-title-wrapper.blog-page {
  max-width: 600px;
}

.banner-title-wrapper.blog-post-page {
  max-width: 730px;
}

.home-h1 {
  color: var(--white);
  font-size: clamp(26px, 3vw, 38px);
  line-height: 1.25;
}

.home-banner-text {
  color: var(--white);
  max-width: 600px;
}

.banner-overlay {
  z-index: 1;
  background-color: var(--overlay-70);
  position: absolute;
  inset: 0%;
}

.link-button {
  grid-column-gap: var(--_spacing-system---spacing--spacing-xxs);
  grid-row-gap: var(--_spacing-system---spacing--spacing-xxs);
  font-family: var(--_typography---fonts--primary);
  color: var(--white);
  font-size: var(--_typography---body-text--text-xxs);
  line-height: var(--_typography---line-height--line-height-xxs);
  font-weight: var(--_typography---font-weight--medium);
  letter-spacing: var(--_typography---letter-spacing--letter-spacing-l);
  text-transform: uppercase;
  flex-flow: column;
  display: flex;
}

.link-button:hover {
  color: var(--white);
}

.link-button.dark {
  color: var(--titles-color);
}

.button-line {
  background-color: var(--white);
  width: 100%;
  height: 1px;
}

.button-line.dark {
  background-color: var(--titles-color);
}

.dark-paragraph {
  color: var(--dark-paragraph-color);
  font-weight: var(--_typography---font-weight--medium);
}

.center-title-wrap {
  text-align: center;
  max-width: 580px;
  margin-left: auto;
  margin-right: auto;
}

.center-title-wrap.mobile-left {
  max-width: 400px;
}

.level-number-wrap {
  grid-column-gap: var(--_spacing-system---spacing--spacing-s);
  grid-row-gap: var(--_spacing-system---spacing--spacing-s);
  display: flex;
}

.level-number {
  opacity: .4;
  color: var(--dark-paragraph-color);
  letter-spacing: -.6px;
}

.level-title {
  font-family: var(--_typography---fonts--primary);
  font-size: var(--_typography---typography--h6);
  line-height: var(--_typography---line-height--line-height-s);
  font-weight: var(--_typography---font-weight--semi-bold);
  letter-spacing: var(--_typography---letter-spacing--letter-spacing-xs);
}

.level-title.mobile {
  font-size: var(--_typography---body-text--text-xxs);
  font-weight: var(--_typography---font-weight--medium);
  text-transform: uppercase;
  display: none;
}

.level-title.price-compare-title {
  font-size: var(--_typography---body-text--text-s);
}

.service-cover {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.service-link {
  color: var(--paragraph-color);
  font-size: var(--_typography---typography--h6);
  line-height: var(--_typography---line-height--line-height-s);
  font-weight: var(--_typography---font-weight--semi-bold);
  letter-spacing: var(--_typography---letter-spacing--letter-spacing-xs);
}

.service-link:hover {
  opacity: .8;
}

.service-link.services-page:hover {
  opacity: 1;
  color: var(--dark-paragraph-color);
}

.service-description-wrap {
  max-width: 550px;
}

.team-slider-title {
  grid-column-gap: var(--_spacing-system---spacing--spacing-3xl);
  grid-row-gap: var(--_spacing-system---spacing--spacing-3xl);
  flex-flow: column;
  max-width: 800px;
  display: flex;
}

.team-slider-label-wrap {
  grid-column-gap: var(--_spacing-system---spacing--spacing-m);
  grid-row-gap: var(--_spacing-system---spacing--spacing-m);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.image-4 {
  height: 17px;
}

.hidden-nav {
  display: none;
}

.team-member-link-block {
  border-top: 2px solid var(--primary-color);
  border-radius: var(--_spacing-system---border-radius--radius-xxs);
  flex-flow: column;
  justify-content: flex-end;
  align-items: stretch;
  width: 100%;
  height: 500px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.team-member-photo {
  object-fit: cover;
  object-position: 50% 0%;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0%;
}

.team-member-overlay {
  z-index: 1;
  background-image: linear-gradient(0deg, rgba(28, 34, 71, 0.7) 0%, transparent 60%);
  background-color: transparent;
  justify-content: flex-start;
  align-items: flex-end;
  display: flex;
  position: absolute;
  inset: 0%;
}

.team-member-overlay.team-page {
  background-image: linear-gradient(355deg, #25343b80, var(--transparent) 55%);
}

.team-member-card-text-wrap {
  z-index: 2;
  padding-top: var(--_spacing-system---spacing--spacing-l);
  padding-right: var(--_spacing-system---spacing--spacing-l);
  padding-bottom: var(--_spacing-system---spacing--spacing-3xl);
  padding-left: var(--_spacing-system---spacing--spacing-l);
  grid-column-gap: 14px;
  grid-row-gap: 14px;
  flex-flow: column;
  display: flex;
  position: relative;
}

.team-member-name {
  font-family: var(--_typography---fonts--primary);
  color: var(--white);
  line-height: var(--_typography---line-height--line-height-s);
  font-weight: var(--_typography---font-weight--semi-bold);
  letter-spacing: 2px;
  text-transform: uppercase;
}

.empty-state {
  background-color: var(--transparent);
}

._500px-title-wrap {
  flex-flow: column;
  max-width: 500px;
}

.icon-title-wrap {
  grid-column-gap: var(--_spacing-system---spacing--spacing-l);
  grid-row-gap: var(--_spacing-system---spacing--spacing-l);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  max-width: 650px;
  display: flex;
}

.icon-title-wrap.blog-section-title {
  max-width: 750px;
}

.title-icon {
  height: 18px;
}

.mobile-hidden-button-wrap {
  justify-content: center;
  align-items: flex-end;
}

.horizontal-title-wrap {
  grid-column-gap: var(--_spacing-system---spacing--spacing-4xl);
  grid-row-gap: var(--_spacing-system---spacing--spacing-4xl);
  flex-flow: row;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  align-items: flex-end;
  display: flex;
}

.events-collection-list {
  grid-column-gap: var(--_spacing-system---spacing--spacing-l);
  grid-row-gap: var(--_spacing-system---spacing--spacing-l);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.events-collection-list.events-page {
  grid-row-gap: var(--_spacing-system---spacing--spacing-4xl);
}

.event-link-block {
  border-radius: var(--_spacing-system---border-radius--radius-xxs);
  width: 100%;
  height: 350px;
  position: relative;
  overflow: hidden;
}

.event-cover {
  display: block;
  position: absolute;
  inset: 0;
  z-index: 1;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.event-overlay {
  z-index: 2;
  background-color: #0003;
  position: absolute;
  inset: 0%;
}

.event-cover-decoration-wrap {
  z-index: 3;
  width: 100px;
  height: 100%;
  position: absolute;
  inset: 0% 0% 0% auto;
}

.event-cover-decoration {
  object-fit: cover;
  object-position: 0% 50%;
  width: 100%;
  height: 100%;
}

.event-cover-decoration-primary {
  opacity: 0;
  object-fit: cover;
  object-position: 0% 50%;
  width: 100%;
  height: 100%;
  transition: all .1s;
  position: absolute;
  inset: 0%;
}

.events-collection-item {
  flex-flow: column;
  display: flex;
}

.event-card {
  padding: var(--_spacing-system---spacing--spacing-l) var(--_spacing-system---spacing--spacing-ml) var(--_spacing-system---spacing--spacing-2xl);
  grid-column-gap: var(--_spacing-system---spacing--spacing-s);
  grid-row-gap: var(--_spacing-system---spacing--spacing-s);
  border-bottom: 1px solid var(--stroke);
  flex-flow: column;
  min-height: 124px;
  display: flex;
}

.event-card.photo-card {
  padding-top: var(--_spacing-system---spacing--spacing-2xl);
  padding-right: var(--_spacing-system---spacing--spacing-2xl);
  padding-left: var(--_spacing-system---spacing--spacing-2xl);
  grid-column-gap: var(--_spacing-system---spacing--spacing-m);
  grid-row-gap: var(--_spacing-system---spacing--spacing-m);
  border-bottom-style: solid;
  min-height: auto;
}

.event-text-link {
  color: var(--titles-color);
  font-size: var(--_typography---body-text--text-m);
  letter-spacing: var(--_typography---letter-spacing--letter-spacing-xs);
  text-transform: none;
}

.event-text-link:hover {
  color: var(--paragraph-color);
}

.event-text-link.large {
  font-size: var(--_typography---body-text--text-l);
}

.event-text-link.large:hover {
  color: var(--overlay-70);
}

.event-card-info-wrap {
  grid-column-gap: var(--_spacing-system---spacing--spacing-m);
  grid-row-gap: var(--_spacing-system---spacing--spacing-m);
  display: flex;
}

.numbers-dropdown-content.w--open {
  height: 326px;
  display: flex;
}

.cta-section {
  background-image: linear-gradient(98deg, #000, #0000 58%), url('../images/pexels-jacobyclarkephoto-956952_1pexels-jacobyclarkephoto-956952.webp');
  background-position: 0 0, 50%;
  background-size: auto, cover;
  position: relative;
}

.cta-text-wrapper {
  padding-top: var(--_spacing-system---spacing--spacing-6xl);
  padding-bottom: var(--_spacing-system---spacing--spacing-6xl);
  grid-column-gap: 200px;
  grid-row-gap: 200px;
  flex-flow: column;
  max-width: 650px;
  display: flex;
}

.cta-text {
  color: var(--white);
  font-size: 56px;
  line-height: var(--_typography---line-height--line-height-xxs);
}

.cta-paragraph-wrap {
  grid-column-gap: var(--_spacing-system---spacing--spacing-l);
  grid-row-gap: var(--_spacing-system---spacing--spacing-l);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  max-width: 500px;
  display: flex;
}

.cta-text-wrap {
  grid-column-gap: var(--_spacing-system---spacing--spacing-5xl);
  grid-row-gap: var(--_spacing-system---spacing--spacing-5xl);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.cta-paragraph {
  color: var(--white);
  font-weight: var(--_typography---font-weight--medium);
}

/* Blog card: explicit dark text at rest (global p is near-white) */
.blog-card-link .blog-card-title,
.blog-card-link .blog-post-date,
.blog-card-link:hover .blog-card-title,
.blog-card-link:hover .blog-post-date,
.top-footer-wrap {
  padding-bottom: var(--_spacing-system---spacing--spacing-6xl);
  border-bottom: 1px solid var(--white-15);
}

.footer-large-text {
  color: var(--white);
  font-size: 68px;
  line-height: var(--_typography---line-height--line-height-xxs);
  font-weight: var(--_typography---font-weight--semi-bold);
  text-align: center;
  letter-spacing: 3px;
  text-transform: uppercase;
}

.footer-left-wrap {
  padding-top: var(--_spacing-system---spacing--spacing-6xl);
  padding-right: var(--_spacing-system---spacing--spacing-4xl);
  grid-column-gap: 20px;
  grid-row-gap: 70px;
  border-right: 1px solid var(--white-15);
  flex: 1;
  grid-template-rows: auto;
  grid-template-columns: .5fr 1fr;
  grid-auto-columns: 1fr;
  max-width: 45%;
  display: grid;
}

.footer-links-wrap {
  grid-column-gap: var(--_spacing-system---spacing--spacing-xl);
  grid-row-gap: var(--_spacing-system---spacing--spacing-xl);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.footer-collection-list {
  grid-column-gap: var(--_spacing-system---spacing--spacing-m);
  grid-row-gap: var(--_spacing-system---spacing--spacing-m);
  flex-flow: column;
  display: flex;
}

.success-message.dark {
  color: var(--titles-color);
}

.mobile-button-wrap {
  justify-content: center;
  align-items: flex-end;
  display: none;
}

.dark-paragraph-style-guide {
  border: 1px none var(--stroke);
  border-radius: var(--_spacing-system---border-radius--radius-xxs);
  background-color: var(--dark-paragraph-color);
  width: 75px;
  height: 75px;
}

.stroke-style-guide {
  border: 1px solid var(--stroke);
  border-radius: var(--_spacing-system---border-radius--radius-xxs);
  background-color: var(--stroke);
  width: 75px;
  height: 75px;
}

.dark-bg-style-guide {
  border: 1px none var(--stroke);
  border-radius: var(--_spacing-system---border-radius--radius-xxs);
  background-color: var(--background);
  width: 75px;
  height: 75px;
}

.inner-banner-section {
  background-color: var(--titles-color);
  padding-top: 150px;
  padding-bottom: 80px;
  position: sticky;
  top: 0;
  left: 0;
  right: 0;
}

.inner-banner-section.photo-section {
  padding-bottom: var(--_spacing-system---spacing--section-spacing);
  background-image: linear-gradient(to bottom, var(--overlay-70), var(--overlay-70)), url('../images/490_1490.webp');
  background-position: 0 0, 50% 55%;
  background-size: auto, cover;
}

.inner-banner-section.events-photo-section {
  padding-bottom: var(--_spacing-system---spacing--section-spacing);
  background-image: url('../images/2150960336.webp');
  background-position: 0 45%;
  background-size: cover;
  overflow: hidden;
}

.inner-banner-section.events-photo-section::before {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(28, 34, 71, 0.78);
  z-index: 0;
}

.inner-banner-section.events-photo-section .w-container {
  position: relative;
  z-index: 1;
}

.inner-banner-section.pricing-photo-section {
  padding-bottom: var(--_spacing-system---spacing--section-spacing);
  background-image: linear-gradient(to bottom, var(--overlay-70), var(--overlay-70)), url('../images/2826-1_12826 (1).webp');
  background-position: 0 0, 0 45%;
  background-size: auto, cover;
}

.inner-banner-section.faq-photo-section {
  padding-bottom: var(--_spacing-system---spacing--section-spacing);
  background-image: linear-gradient(to bottom, var(--overlay-70), var(--overlay-70)), url('../images/886_1886.webp');
  background-position: 0 0, 0 45%;
  background-size: auto, cover;
}

.inner-banner-section.testimonials-photo-section {
  padding-bottom: var(--_spacing-system---spacing--section-spacing);
  background-image: linear-gradient(to bottom, var(--overlay-70), var(--overlay-70)), url('../images/15462-1.webp');
  background-position: 0 0, 50% 100%;
  background-size: auto, cover;
}

.inner-banner-decoration {
  opacity: .3;
  background-image: url('../images/Globe.png');
  background-position: 29%;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: 0;
  width: 250px;
  height: 100%;
  display: inline-flex;
  position: absolute;
  inset: 0% 0% 0% auto;
}

.inner-banner-decoration.primary-color {
  background-image: url('../images/Frame-2085663304-yellow.svg');
}

.inner-banner-decoration-gradient {
  background-image: linear-gradient(180deg, var(--titles-color), #25343b00);
  width: 100%;
  height: 120px;
}

.inner-banner-decoration-gradient.white {
  background-image: linear-gradient(180deg, var(--white), var(--transparent));
  height: 250px;
}

.inner-banner-image {
  object-fit: cover;
  width: 100%;
  height: 110%;
}

.subtitle {
  color: var(--titles-color);
  font-size: var(--_typography---body-text--text-m);
  font-weight: var(--_typography---font-weight--medium);
}

.number-large-text {
  font-family: var(--_typography---fonts--title);
  font-size: 72px;
  line-height: var(--_typography---line-height--line-height-xxs);
}

.testimonials-mask {
  width: 100%;
  margin-right: auto;
  overflow: visible;
}

.testimonials-slider {
  margin-top: var(--_spacing-system---spacing--spacing-5xl);
  background-color: var(--transparent);
  justify-content: center;
  align-items: flex-start;
  height: auto;
  margin-left: auto;
  margin-right: auto;
  padding-top: 104px;
  padding-left: 15px;
  padding-right: 15px;
  display: flex;
}

.testimonials-slider-right-arrow {
  border-radius: var(--_spacing-system---border-radius--radius-xxs);
  background-color: var(--titles-color);
  justify-content: center;
  align-items: center;
  width: 64px;
  height: 64px;
  margin-left: 5px;
  transition: all .2s;
  display: flex;
  inset: 0 auto auto 50%;
}

.testimonials-slider-right-arrow:hover {
  background-color: var(--dark-paragraph-color);
}

.testimonials-slider-left-arrow {
  border-radius: var(--_spacing-system---border-radius--radius-xxs);
  background-color: var(--titles-color);
  justify-content: center;
  align-items: center;
  width: 64px;
  height: 64px;
  margin-right: 5px;
  transition: all .2s;
  display: flex;
  inset: 0 50% auto auto;
}

.testimonials-slider-left-arrow:hover {
  background-color: var(--dark-paragraph-color);
}

.testimonials-slide {
  width: 100%;
  margin-right: 20px;
}

.testimonial-card {
  padding: var(--_spacing-system---spacing--spacing-3xl);
  border-radius: var(--_spacing-system---border-radius--radius-xs);
  background-color: var(--white);
  width: 100%;
  min-height: 340px;
  display: flex;
}

.testimonial-card.gray {
  background-color: var(--light-gray);
}

.testimonial-card-left-card {
  padding-right: var(--_spacing-system---spacing--spacing-3xl);
  grid-column-gap: var(--_spacing-system---spacing--spacing-5xl);
  grid-row-gap: var(--_spacing-system---spacing--spacing-5xl);
  border-right: 1px solid var(--stroke);
  flex-flow: column;
  width: 62%;
  display: flex;
}

.client-info {
  grid-column-gap: var(--_spacing-system---spacing--spacing-l);
  grid-row-gap: var(--_spacing-system---spacing--spacing-l);
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.client-photo {
  border-radius: var(--_spacing-system---border-radius--radius-xxs);
  object-fit: cover;
  width: 72px;
  height: 72px;
}

.client-name-wrap {
  grid-column-gap: var(--_spacing-system---spacing--spacing-s);
  grid-row-gap: var(--_spacing-system---spacing--spacing-s);
  flex-flow: column;
  display: flex;
}

.testimonial-content-wrap {
  grid-column-gap: var(--_spacing-system---spacing--spacing-m);
  grid-row-gap: var(--_spacing-system---spacing--spacing-m);
  flex-flow: column;
  margin-top: auto;
  display: flex;
}

.testimonial-card-right-card {
  padding-left: var(--_spacing-system---spacing--spacing-3xl);
  grid-column-gap: var(--_spacing-system---spacing--spacing-3xl);
  grid-row-gap: var(--_spacing-system---spacing--spacing-3xl);
  flex-flow: column;
  flex: 1;
  justify-content: space-between;
  align-items: stretch;
  display: flex;
}

.testimonial-subtitle-wrap {
  max-width: 400px;
}

.testimonials-slider-wrapper {
  width: 100%;
  max-width: 1024px;
  margin-left: auto;
  margin-right: auto;
}

.inner-banner-image-wrap {
  background-color: var(--titles-color);
  justify-content: center;
  align-items: center;
  height: 450px;
  display: flex;
  overflow: hidden;
}

.inner-banner-image-wrap.white-bg {
  background-color: var(--white);
}

.photo-banner-wrap {
  grid-column-gap: var(--_spacing-system---spacing--spacing-4xl);
  grid-row-gap: var(--_spacing-system---spacing--spacing-4xl);
  justify-content: space-between;
  display: flex;
}

.photo-banner-title-wrapper {
  grid-column-gap: var(--_spacing-system---spacing--spacing-l);
  grid-row-gap: var(--_spacing-system---spacing--spacing-l);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  max-width: 650px;
  display: flex;
}

.team-collection-list {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.inner-title-wrap {
  grid-column-gap: var(--_spacing-system---spacing--spacing-4xl);
  grid-row-gap: var(--_spacing-system---spacing--spacing-4xl);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.scroll-button-wrap {
  justify-content: flex-end;
  align-items: flex-end;
  display: flex;
}

.scroll-link-button {
  grid-column-gap: var(--_spacing-system---spacing--spacing-s);
  grid-row-gap: var(--_spacing-system---spacing--spacing-s);
  color: var(--white);
  line-height: var(--_typography---line-height--line-height-xxs);
  flex-flow: row;
  justify-content: flex-start;
  align-items: center;
  transition-property: none;
  display: flex;
}

.scroll-link-button:hover {
  color: var(--white);
}

.scroll-icon {
  width: 20px;
  height: 20px;
  transform: rotate(45deg);
}

.scroll-icons-wrap {
  position: relative;
}

.scroll-icon-primary {
  opacity: 0;
  width: 20px;
  height: 20px;
  position: absolute;
  inset: 0%;
  transform: rotate(45deg);
}

.services-collection-list {
  grid-column-gap: var(--_spacing-system---spacing--spacing-l);
  grid-row-gap: var(--_spacing-system---spacing--spacing-4xl);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.pagination-button {
  margin-top: var(--_spacing-system---spacing--spacing-4xl);
  background-color: var(--transparent);
  color: var(--titles-color);
  border-style: none;
  padding: 0;
}

.pagination-button:hover {
  color: var(--stroke);
}

.services-page-collection-item {
  flex-flow: column;
  width: 100%;
  display: flex;
}

.services-page-link-block {
  border-radius: var(--_spacing-system---border-radius--radius-xxs);
  width: 100%;
  height: 400px;
  overflow: hidden;
}

.services-page-card {
  margin-top: var(--_spacing-system---spacing--spacing-2xl);
  padding-bottom: var(--_spacing-system---spacing--spacing-3xl);
  grid-column-gap: var(--_spacing-system---spacing--spacing-m);
  grid-row-gap: var(--_spacing-system---spacing--spacing-m);
  border-bottom: 1px solid #25343b33;
  flex-flow: column;
  flex: 1;
  display: flex;
}

.services-collection-list-wrapper {
  margin-top: var(--_spacing-system---spacing--spacing-4xl);
}

.team-member-banner-section {
  padding-top: 150px;
}

.team-member-banner {
  grid-column-gap: var(--_spacing-system---spacing--spacing-5xl);
  grid-row-gap: var(--_spacing-system---spacing--spacing-5xl);
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.team-member-page-photo {
  border-radius: var(--_spacing-system---border-radius--radius-xs);
  object-fit: cover;
  width: 100%;
  height: 450px;
}

.team-member-page-card {
  flex-flow: column;
  flex: 1;
  justify-content: center;
  align-items: stretch;
  display: flex;
}

.team-member-position {
  color: var(--paragraph-color);
  font-size: var(--_typography---body-text--text-xs);
  font-weight: var(--_typography---font-weight--regular);
  letter-spacing: var(--_typography---letter-spacing--letter-spacing-l);
  text-transform: uppercase;
}

.team-member-name-wrap {
  padding-bottom: var(--_spacing-system---spacing--spacing-8xl);
  grid-column-gap: var(--_spacing-system---spacing--spacing-3xl);
  grid-row-gap: var(--_spacing-system---spacing--spacing-3xl);
  border-bottom: 1px solid var(--stroke);
  flex-flow: column;
  display: flex;
}

.team-member-short-description-wrap {
  padding-top: var(--_spacing-system---spacing--spacing-4xl);
  grid-column-gap: var(--_spacing-system---spacing--spacing-l);
  grid-row-gap: var(--_spacing-system---spacing--spacing-l);
  flex-flow: column;
  flex: 1;
  justify-content: space-between;
  max-width: 555px;
  display: flex;
}

.education-wrap {
  margin-top: var(--_spacing-system---spacing--spacing-sm);
  grid-column-gap: var(--_spacing-system---spacing--spacing-s);
  grid-row-gap: var(--_spacing-system---spacing--spacing-s);
  display: flex;
}

.team-member-details-wrap {
  grid-column-gap: var(--_spacing-system---spacing--section-spacing);
  grid-row-gap: var(--_spacing-system---spacing--section-spacing);
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: -30px;
  display: flex;
}

.team-member-details {
  grid-column-gap: var(--_spacing-system---spacing--spacing-4xl);
  grid-row-gap: var(--_spacing-system---spacing--spacing-4xl);
  flex-flow: column;
  max-width: 60%;
  display: flex;
}

.team-member-details-top-wrap {
  grid-column-gap: var(--_spacing-system---spacing--spacing-l);
  grid-row-gap: var(--_spacing-system---spacing--spacing-l);
  flex-flow: column;
  display: flex;
}

.team-member-details-bottom-wrap {
  flex-flow: column;
  display: flex;
}

.team-member-right-sidebar {
  grid-column-gap: var(--_spacing-system---spacing--spacing-ml);
  grid-row-gap: var(--_spacing-system---spacing--spacing-ml);
  flex-flow: column;
  flex: 1;
  margin-bottom: 30px;
  display: flex;
  position: sticky;
  top: 130px;
  right: 0;
}

.team-member-right-sidebar-card {
  padding: var(--_spacing-system---spacing--spacing-l) var(--_spacing-system---spacing--spacing-7xl) var(--_spacing-system---spacing--spacing-8xl) var(--_spacing-system---spacing--spacing-l);
  border-radius: var(--_spacing-system---border-radius--radius-xs);
  background-color: var(--titles-color);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
  position: relative;
}

.team-member-right-sidebar-text {
  font-family: var(--_typography---fonts--title);
  color: var(--white);
  font-size: var(--_typography---typography--h4);
  line-height: var(--_typography---line-height--line-height-m);
  font-weight: var(--_typography---font-weight--medium);
}

.team-member-right-sidebar-decoration {
  object-fit: cover;
  width: 100px;
  height: 100%;
  position: absolute;
  inset: auto 0% 0% auto;
}

.team-member-right-sidebar-button {
  padding: var(--_spacing-system---spacing--spacing-l);
  grid-column-gap: var(--_spacing-system---spacing--spacing-l);
  grid-row-gap: var(--_spacing-system---spacing--spacing-l);
  border-radius: var(--_spacing-system---border-radius--radius-xs);
  background-color: var(--primary-color);
  color: var(--titles-color);
  justify-content: space-between;
  display: flex;
}

.team-member-right-sidebar-button:hover {
  padding-right: var(--_spacing-system---spacing--spacing-3xl);
  padding-left: var(--_spacing-system---spacing--spacing-3xl);
  color: var(--titles-color);
}

.team-member-photo-wrap {
  border-radius: var(--_spacing-system---border-radius--radius-xs);
  width: 45%;
  position: relative;
  overflow: hidden;
}

.team-member-photo-decoration {
  height: 100%;
  position: absolute;
  inset: 0% auto 0% 0%;
  transform: rotate(180deg);
}

.team-member-page-name {
  grid-column-gap: var(--_spacing-system---spacing--spacing-l);
  grid-row-gap: var(--_spacing-system---spacing--spacing-l);
  flex-flow: column;
  display: flex;
}

.team-member-name-wrapper {
  grid-column-gap: var(--_spacing-system---spacing--spacing-l);
  grid-row-gap: var(--_spacing-system---spacing--spacing-l);
  justify-content: space-between;
  align-items: flex-end;
  display: flex;
}

.team-member-social-link {
  border-radius: var(--_spacing-system---border-radius--radius-xs);
  background-color: var(--titles-color);
  color: var(--white);
  justify-content: center;
  align-items: center;
  width: 48px;
  height: 48px;
  transition: all .35s;
  display: flex;
}

.team-member-social-link:hover {
  background-color: var(--dark-paragraph-color);
  color: var(--white);
}

.team-member-social-icon {
  font-family: var(--_typography---fonts--font-awesome-02);
  font-size: var(--_typography---body-text--text-s);
  line-height: var(--_typography---line-height--line-height-m);
  transition: all .45s;
}

.service-banner-title-wrapper {
  grid-column-gap: var(--_spacing-system---spacing--spacing-l);
  grid-row-gap: var(--_spacing-system---spacing--spacing-l);
  flex-flow: column;
  max-width: 650px;
  display: flex;
}

.service-banner-wrap {
  grid-column-gap: var(--_spacing-system---spacing--spacing-4xl);
  grid-row-gap: var(--_spacing-system---spacing--spacing-4xl);
  flex-flow: row;
  justify-content: space-between;
  align-items: flex-end;
  display: flex;
}

.service-details-wrap {
  grid-column-gap: var(--_spacing-system---spacing--spacing-7xl);
  grid-row-gap: var(--_spacing-system---spacing--spacing-7xl);
  justify-content: space-between;
  display: flex;
  position: relative;
}

.service-details-wrapper {
  grid-column-gap: var(--_spacing-system---spacing--spacing-4xl);
  grid-row-gap: var(--_spacing-system---spacing--spacing-4xl);
  flex-flow: column;
  width: 65%;
  margin-bottom: -30px;
  display: flex;
}

.service-details-text-wrap {
  grid-column-gap: var(--_spacing-system---spacing--spacing-l);
  grid-row-gap: var(--_spacing-system---spacing--spacing-l);
  flex-flow: column;
  display: flex;
}

.how-we-work-wrap {
  grid-column-gap: var(--_spacing-system---spacing--spacing-3xl);
  grid-row-gap: var(--_spacing-system---spacing--spacing-3xl);
  flex-flow: column;
  display: flex;
}

.how-we-work-list {
  grid-column-gap: var(--_spacing-system---spacing--spacing-l);
  grid-row-gap: var(--_spacing-system---spacing--spacing-l);
  grid-template-rows: auto auto;
  grid-template-columns: 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.how-we-work-list-item {
  padding-bottom: var(--_spacing-system---spacing--spacing-l);
  grid-column-gap: var(--_spacing-system---spacing--spacing-l);
  grid-row-gap: var(--_spacing-system---spacing--spacing-l);
  border-bottom: 1px solid var(--stroke);
  flex-flow: column;
  display: flex;
}

.how-we-work-text-wrap {
  grid-column-gap: var(--_spacing-system---spacing--spacing-sm);
  grid-row-gap: var(--_spacing-system---spacing--spacing-sm);
  flex-flow: column;
  display: flex;
}

.event-banner {
  grid-column-gap: var(--_spacing-system---spacing--spacing-7xl);
  grid-row-gap: var(--_spacing-system---spacing--spacing-7xl);
  justify-content: space-between;
  align-items: flex-start;
  display: flex;
}

.pricing-grid {
  grid-column-gap: var(--_spacing-system---spacing--spacing-l);
  grid-row-gap: var(--_spacing-system---spacing--spacing-l);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.pricing-card {
  padding: var(--_spacing-system---spacing--spacing-4xl) var(--_spacing-system---spacing--spacing-3xl);
  border-radius: var(--_spacing-system---border-radius--radius-xs);
  background-color: var(--light-gray);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.pricing-card.primary {
  background-color: var(--background);
}

.pricing-card-title {
  font-family: var(--_typography---fonts--title);
  color: var(--titles-color);
  font-size: var(--_typography---typography--h4);
  line-height: var(--_typography---line-height--line-height-s);
  font-weight: var(--_typography---font-weight--medium);
  text-transform: none;
}

.pricing-card-title.text-white {
  color: var(--white);
}

.pricing-card-title-wrap {
  margin-top: var(--_spacing-system---spacing--spacing-l);
  margin-bottom: var(--_spacing-system---spacing--spacing-6xl);
  grid-column-gap: var(--_spacing-system---spacing--spacing-sm);
  grid-row-gap: var(--_spacing-system---spacing--spacing-sm);
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  min-height: 118px;
  display: flex;
}

.price-wrap {
  margin-bottom: var(--_spacing-system---spacing--spacing-4xl);
  grid-column-gap: var(--_spacing-system---spacing--spacing-m);
  grid-row-gap: var(--_spacing-system---spacing--spacing-m);
  flex-flow: column;
  display: flex;
}

.price-text-span {
  font-family: var(--_typography---fonts--title);
  color: var(--titles-color);
  font-size: var(--_typography---typography--h3);
  font-weight: var(--_typography---font-weight--medium);
}

.price-text-span.text-white {
  color: var(--white);
}

.price-text {
  font-size: var(--_typography---body-text--text-l);
  line-height: var(--_typography---line-height--line-height-m);
  display: flex;
}

.price-bottom-wrap {
  padding-top: var(--_spacing-system---spacing--spacing-4xl);
  grid-column-gap: var(--_spacing-system---spacing--spacing-4xl);
  grid-row-gap: var(--_spacing-system---spacing--spacing-4xl);
  border-top: 1px solid var(--stroke);
  flex-flow: column;
  flex: 1;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
  display: flex;
}

.price-bottom-wrap.primary-bg {
  border-top-color: var(--white-50);
}

.pricing-card-decoration {
  height: 20px;
}

.price-list-line {
  grid-column-gap: var(--_spacing-system---spacing--spacing-xs);
  grid-row-gap: var(--_spacing-system---spacing--spacing-xs);
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.price-card-list {
  grid-column-gap: var(--_spacing-system---spacing--spacing-m);
  grid-row-gap: var(--_spacing-system---spacing--spacing-m);
  flex-flow: column;
  display: flex;
}

.comparing-wrapper {
  margin-top: var(--_spacing-system---spacing--spacing-6xl);
  flex-flow: column;
  display: flex;
}

.comparing-titles-wrapper {
  padding-top: var(--_spacing-system---spacing--spacing-l);
  padding-bottom: var(--_spacing-system---spacing--spacing-l);
  grid-column-gap: var(--_spacing-system---spacing--spacing-3xl);
  grid-row-gap: var(--_spacing-system---spacing--spacing-3xl);
  border-bottom: 1px solid var(--stroke);
  background-color: var(--light-gray);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  place-items: center start;
  width: 100%;
  display: grid;
}

.comparing-line {
  padding-top: var(--_spacing-system---spacing--spacing-l);
  padding-bottom: var(--_spacing-system---spacing--spacing-l);
  grid-column-gap: var(--_spacing-system---spacing--spacing-3xl);
  grid-row-gap: var(--_spacing-system---spacing--spacing-3xl);
  border-bottom: 1px solid var(--stroke);
  background-color: var(--white);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  place-items: center start;
  width: 100%;
  display: grid;
}

.comparing-line.last {
  padding-top: var(--_spacing-system---spacing--spacing-4xl);
  padding-bottom: var(--_spacing-system---spacing--spacing-none);
  border-bottom-style: none;
}

.comparing-cell {
  grid-column-gap: var(--_spacing-system---spacing--spacing-m);
  grid-row-gap: var(--_spacing-system---spacing--spacing-m);
  flex-flow: column;
  display: flex;
}

.faq-wrap {
  grid-column-gap: var(--_spacing-system---spacing--spacing-4xl);
  grid-row-gap: var(--_spacing-system---spacing--spacing-4xl);
  display: flex;
}

.faq-column {
  grid-column-gap: var(--_spacing-system---spacing--spacing-l);
  grid-row-gap: var(--_spacing-system---spacing--spacing-l);
  flex-flow: column;
  width: 50%;
  display: flex;
}

.faq-dropdown {
  border-bottom: 1px solid var(--stroke);
  flex-flow: column;
  width: 100%;
  display: flex;
}

.faq-dropdown-toggle {
  padding: 0px 0px var(--_spacing-system---spacing--spacing-l);
  grid-column-gap: var(--_spacing-system---spacing--spacing-l);
  grid-row-gap: var(--_spacing-system---spacing--spacing-l);
  justify-content: space-between;
  align-items: center;
  width: 100%;
  min-height: 72px;
  display: flex;
}

.faq-dropdown-toggle.w--open {
  background-color: var(--white);
}

.faq-dropdown-list {
  padding-bottom: 20px;
  position: relative;
}

.faq-dropdown-list.w--open {
  background-color: var(--white);
  flex-flow: column;
  padding-bottom: 20px;
  display: flex;
}

.faq-title {
  color: var(--titles-color);
  font-size: var(--_typography---body-text--text-m);
  line-height: var(--_typography---line-height--line-height-m);
  font-weight: var(--_typography---font-weight--semi-bold);
  white-space: normal;
}

.faq-paragraph {
  color: var(--overlay-70);
  display: inline-flex;
}

.level-title-last-wrapper {
  margin-right: 20px;
}

.testimonials-collection-list {
  grid-column-gap: var(--_spacing-system---spacing--spacing-l);
  grid-row-gap: var(--_spacing-system---spacing--spacing-l);
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}

.testimonials-collection-list.testimonial-page {
  margin-top: var(--_spacing-system---spacing--spacing-6xl);
  grid-template-rows: auto;
}

.testimonial-small-card {
  padding: var(--_spacing-system---spacing--spacing-l);
  grid-column-gap: var(--_spacing-system---spacing--spacing-6xl);
  grid-row-gap: var(--_spacing-system---spacing--spacing-6xl);
  border-top: 2px solid var(--primary-color);
  background-color: var(--light-gray);
  flex-flow: column;
  justify-content: space-between;
  align-items: flex-start;
  height: 100%;
  display: flex;
}

.quote-icon {
  height: 32px;
}

.testimonial-text-wrap {
  grid-column-gap: var(--_spacing-system---spacing--spacing-4xl);
  grid-row-gap: var(--_spacing-system---spacing--spacing-4xl);
  flex-flow: column;
  display: flex;
}

.testimonial-banner-section {
  padding-top: 180px;
  padding-bottom: 0;
}

.testimonial-banner-wrap {
  grid-column-gap: var(--_spacing-system---spacing--spacing-6xl);
  grid-row-gap: var(--_spacing-system---spacing--spacing-6xl);
  flex-flow: column;
  justify-content: space-between;
  align-items: center;
  display: flex;
}

.testimonial-card-wrap {
  width: 100%;
  max-width: 1024px;
  margin-left: auto;
  margin-right: auto;
}

.testimonials-photo-banner-title-wrapper {
  grid-column-gap: var(--_spacing-system---spacing--spacing-l);
  grid-row-gap: var(--_spacing-system---spacing--spacing-l);
  text-align: center;
  flex-flow: column;
  justify-content: flex-start;
  align-items: center;
  max-width: 650px;
  display: flex;
}

.testimonial-page-banner-paragraph {
  max-width: 550px;
}

.licensing-background-video {
  z-index: 0;
  width: 100%;
  height: 100%;
}

.license-icons-link {
  text-transform: capitalize;
}

.hidden-text {
  display: none;
}

.about-tab.w--current {
  background-color: var(--transparent);
  color: var(--primary-color);
}

.about-tab-block-large-image.last {
  object-position: 50% 25%;
}

.promotion-labels-wrapper-to-remove {
  z-index: 9999;
  justify-content: space-between;
  align-items: flex-end;
  width: 100%;
  display: flex;
  position: fixed;
  bottom: 5px;
  left: 5px;
  right: 5px;
}

.paragraph-2,
.paragraph-3,
.paragraph-4,
.paragraph-5,
.paragraph-6,
.paragraph-9,
.paragraph-10,
.paragraph-11,
.paragraph-12,
.paragraph-13,
.paragraph-14,
.paragraph-15 {
  color: var(--dark-paragraph-color);
}

.paragraph-16 {
  color: var(--primary-color);
}

.image-5,
.image-6,
.image-7 {
  max-width: 40%;
}

.paragraph-19 {
  color: var(--primary-color);
}

.paragraph-20 {
  color: var(--stroke);
}

.paragraph-21 {
  color: var(--overlay-70);
}

.paragraph-24,
.paragraph-25 {
  color: var(--overlay-70);
}

@media screen and (min-width: 1280px) {
  body {
    --_typography---typography--h3: 36px;
    --_spacing-system---spacing--section-spacing: 160px;
  }

  .section.about-photo-section {
    background-position: 50% 75%;
  }

  .inner-banner {
    min-height: 350px;
  }

  .nav-dropdown-list.megamenu.w--open {
    left: -50px;
  }

  .footer {
    padding-top: var(--_spacing-system---spacing--spacing-8xl);
  }

  .home-banner-section {
    min-height: 80vh;
    height: auto;
    padding-top: 240px;
    padding-bottom: 80px;
  }

  .banner-text-wrap.event-page-banner {
    max-width: 550px;
  }

  .level-title.price-compare-title {
    font-size: var(--_typography---typography--h6);
  }

  .team-slider-title {
    max-width: 890px;
  }

  .event-card {
    padding-top: var(--_spacing-system---spacing--spacing-2xl);
    min-height: auto;
  }

  .event-card.events-page {
    min-height: auto;
  }

  .cta-text {
    font-size: 66px;
  }

  .footer-large-text {
    font-size: 80px;
  }

  .footer-left-wrap {
    padding-right: var(--_spacing-system---spacing--spacing-6xl);
  }

  .inner-banner-section.photo-section,
  .inner-banner-section.events-photo-section,
  .inner-banner-section.pricing-photo-section,
  .inner-banner-section.faq-photo-section,
  .inner-banner-section.testimonials-photo-section {
    padding-top: 250px;
  }

  .testimonial-card {
    padding: var(--_spacing-system---spacing--spacing-4xl);
    min-height: 360px;
  }

  .testimonial-card-left-card {
    padding-right: var(--_spacing-system---spacing--spacing-5xl);
  }

  .testimonial-card-right-card {
    padding-left: var(--_spacing-system---spacing--spacing-5xl);
  }

  .inner-banner-image-wrap {
    height: 500px;
  }

  .team-collection-list {
    grid-template-columns: 1fr 1fr 1fr;
  }

  .services-page-link-block {
    height: 350px;
  }

  .services-page-card {
    min-height: 135px;
  }

  .team-member-page-photo {
    height: 500px;
  }

  .team-member-details {
    max-width: 60%;
  }

  .comparing-titles-wrapper,
  .comparing-line {
    grid-column-gap: var(--_spacing-system---spacing--spacing-4xl);
    grid-row-gap: var(--_spacing-system---spacing--spacing-4xl);
  }

}

@media screen and (min-width: 1440px) {
  body {
    --_typography---typography--h3: 36px;
    --_spacing-system---spacing--section-spacing: 160px;
    --_spacing-system---containers--base-container: 1320px;
  }

  .section.video-section {
    height: 650px;
  }

  .nav-dropdown-list.megamenu.w--open {
    left: 0;
  }

  .banner-text-wrap.event-page-banner {
    max-width: 650px;
  }

  .team-member-link-block {
    height: 444px;
  }

  .event-link-block {
    height: 410px;
  }

  .event-card {
    min-height: auto;
  }

  .cta-text-wrapper {
    grid-column-gap: 300px;
    grid-row-gap: 300px;
  }

  .footer-large-text {
    letter-spacing: 5px;
    font-size: 86px;
  }

  .footer-left-wrap {
    grid-column-gap: 70px;
  }

  .inner-banner-image-wrap.service-page {
    height: 550px;
  }

  .inner-banner-image-wrap.white-bg {
    height: 600px;
  }

  .services-page-link-block {
    height: 400px;
  }

  .services-page-card {
    min-height: auto;
  }

  .team-member-banner {
    grid-column-gap: var(--_spacing-system---spacing--spacing-7xl);
    grid-row-gap: var(--_spacing-system---spacing--spacing-7xl);
  }

  .team-member-page-photo {
    height: 550px;
  }

  .service-details-wrap {
    grid-column-gap: var(--_spacing-system---spacing--spacing-8xl);
    grid-row-gap: var(--_spacing-system---spacing--spacing-8xl);
  }

  .pricing-card-title-wrap {
    min-height: 86px;
  }

  .faq-dropdown-toggle {
    min-height: auto;
  }

  .testimonial-small-card {
    padding: var(--_spacing-system---spacing--spacing-3xl);
  }

}

@media screen and (min-width: 1920px) {
  body {
    --_typography---typography--h3: 36px;
    --_spacing-system---spacing--section-spacing: 160px;
    --_spacing-system---containers--base-container: 1680px;
  }

  .section.video-section {
    height: 880px;
  }

  .base-container.style-guide-container {
    max-width: 1200px;
  }

  .inner-banner {
    min-height: 400px;
  }

  .nav-dropdown-list.megamenu.w--open {
    left: 0;
  }

  .home-banner-section {
    position: sticky;
    inset: 0% 0% auto;
    min-height: 80vh;
    height: auto;
    padding-top: 280px;
    padding-bottom: 100px;
  }

  .event-link-block {
    height: 440px;
  }

  .footer-large-text {
    font-size: 113px;
  }

  .footer-left-wrap {
    flex: 1;
  }

  .inner-banner-section.events-photo-section,
  .inner-banner-section.pricing-photo-section,
  .inner-banner-section.faq-photo-section {
    background-position: 0 0, 0 35%;
  }

  .inner-banner-section.testimonials-photo-section {
    background-position: 0 0, 50% 100%;
  }

  .inner-banner-decoration {
    width: 360px;
  }

  .inner-banner-image-wrap {
    height: 550px;
  }

  .inner-banner-image-wrap.service-page,
  .inner-banner-image-wrap.white-bg {
    height: 700px;
  }

  .services-page-link-block {
    height: 500px;
  }

  .team-member-banner {
    grid-column-gap: var(--_spacing-system---spacing--spacing-8xl);
    grid-row-gap: var(--_spacing-system---spacing--spacing-8xl);
  }

  .team-member-page-photo {
    height: 700px;
  }

  .team-member-short-description-wrap {
    flex: 1;
    max-width: 750px;
  }

  .team-member-details-wrap {
    flex-flow: row;
    display: flex;
  }

  .team-member-details {
    max-width: 65%;
  }

  .team-member-right-sidebar-card {
    padding-right: var(--_spacing-system---spacing--section-spacing);
  }

  .team-member-photo-wrap {
    width: 48%;
  }

  .service-details-wrapper {
    width: 55%;
  }

  .pricing-card {
    padding-right: var(--_spacing-system---spacing--spacing-4xl);
    padding-left: var(--_spacing-system---spacing--spacing-4xl);
  }

  .pricing-card-title-wrap,
  .pricing-card-title-wrap.primary-card {
    min-height: auto;
  }

  .comparing-titles-wrapper,
  .comparing-line {
    grid-column-gap: var(--_spacing-system---spacing--spacing-sm);
    grid-row-gap: var(--_spacing-system---spacing--spacing-sm);
  }

  .level-title-last-wrapper {
    margin-right: 30px;
  }

  .testimonial-small-card {
    padding-right: var(--_spacing-system---spacing--spacing-4xl);
    padding-bottom: var(--_spacing-system---spacing--spacing-4xl);
    padding-left: var(--_spacing-system---spacing--spacing-4xl);
  }

  .contact-wrap,
}

@media screen and (max-width: 991px) {
  body {
    --_typography---typography--h2: 44px;
    --_typography---typography--h3: 32px;
  }

  blockquote {
    padding-top: var(--_spacing-system---spacing--spacing-2xl);
    padding-bottom: var(--_spacing-system---spacing--spacing-2xl);
    font-size: var(--_typography---body-text--text-m);
  }

  .section.home-services-section,
  .section.video-section,
  .section.about-photo-section {
    height: auto;
  }

  .section.service-banner-section {
    padding-top: 130px;
    position: relative;
  }

  .section.contacts-banner-section {
    padding-top: 130px;
  }

  .licensing-grid {
    grid-column-gap: var(--_spacing-system---spacing--spacing-ml);
    grid-row-gap: var(--_spacing-system---spacing--spacing-ml);
    grid-template-columns: 1fr 1fr;
  }

  .intro-grid {
    grid-column-gap: var(--_spacing-system---spacing--spacing-3xl);
    grid-row-gap: var(--_spacing-system---spacing--spacing-3xl);
    grid-template-columns: 1fr;
  }

  .grid-system {
    width: 100%;
  }

  .style-guide-content {
    flex-flow: wrap;
    grid-template-columns: 1fr;
  }

  .style-guide-content.links-grid,
  .style-guide-content.button-grid {
    grid-template-columns: 1fr 1fr;
  }

  .grid-description.first-description {
    text-align: center;
  }

  .headings-container,
  .colors-container {
    flex-wrap: wrap;
  }

  .nav-dropdown-list.w--open {
    box-shadow: none;
    padding-top: 0;
    padding-bottom: 0;
    display: flex;
    position: static;
  }

  .nav-button-wrap {
    display: none;
  }

  .brand-tablet {
    display: block;
  }

  .nav-menu {
    background-color: #fff;
    flex-direction: column;
    width: 320px;
    inset: 0% auto 0% 0%;
  }

  .nav-dropdown {
    flex-direction: column;
    justify-content: center;
    align-items: stretch;
    width: 100%;
    transition: opacity .5s;
    display: flex;
    overflow: hidden;
  }

  .tablet-menu {
    justify-content: space-between;
    align-items: center;
    padding-top: 15px;
    padding-bottom: 15px;
    padding-left: 15px;
    display: flex;
  }

  .image-burger {
    filter: invert();
    margin-bottom: 2px;
  }

  .image-burger.dark {
    filter: none;
  }

  .menu-wrap {
    background-color: #fff;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    padding: 20px;
    display: flex;
  }

  .nav-link {
    color: var(--titles-color);
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    padding: 10px 0;
    display: flex;
  }

  .nav-link:hover,
  .nav-link.w--current {
    color: var(--titles-color);
  }

  .close-menu-button,
  .close-menu-button.w--open {
    background-color: #0000;
    padding: 0 20px 0 0;
  }

  .nav-button-tablet {
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
    width: 100%;
    margin-top: 40px;
    display: flex;
  }

  .nav-close-icon {
    z-index: 15;
    align-self: stretch;
  }

  .nav-container {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    padding-left: 15px;
    padding-right: 15px;
  }

  .navbar {
    justify-content: space-between;
    align-items: center;
    padding-top: 15px;
    padding-bottom: 15px;
    display: flex;
  }

  .menu-button {
    text-align: right;
    background-color: #0000;
    padding: 0;
  }

  .menu-button.w--open {
    background-color: #0000;
  }

  .footer-wrapper {
    margin-top: var(--_spacing-system---spacing--spacing-6xl);
    margin-bottom: var(--_spacing-system---spacing--spacing-6xl);
    flex-flow: column;
  }

  .text-white {
    letter-spacing: var(--_typography---letter-spacing--letter-spacing-xxs);
  }

  .home-banner-section {
    position: relative !important;
    padding-top: 140px;
    padding-bottom: 50px;
    min-height: auto;
    height: auto;
  }

  .banner-text-wrap.inner-page {
    max-width: 600px;
  }

  .banner-text-wrap.event-page-banner {
    max-width: 350px;
  }

  .banner-title-wrapper.blog-page {
    max-width: 550px;
  }

  .banner-title-wrapper.blog-post-page {
    max-width: 500px;
  }

  .level-title.price-compare-title {
    font-size: var(--_typography---body-text--text-xs);
  }

  .left-arrow,
  ._500px-title-wrap,
  .icon-title-wrap {
    max-width: 450px;
  }

  .icon-title-wrap.blog-section-title {
    max-width: 500px;
  }

  .icon-title-wrap._550px,
  .icon-title-wrap.events-title {
    max-width: 550px;
  }

  .horizontal-title-wrap.right-text,
  .horizontal-title-wrap.events-block {
    grid-column-gap: var(--_spacing-system---spacing--spacing-l);
    grid-row-gap: var(--_spacing-system---spacing--spacing-l);
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
  }

  .events-collection-list {
    grid-column-gap: var(--_spacing-system---spacing--spacing-3xl);
    grid-row-gap: var(--_spacing-system---spacing--spacing-3xl);
    grid-template-columns: 1fr;
  }

  .event-link-block {
    height: 450px;
  }

  .event-card,
  .event-card.events-page {
    min-height: auto;
  }

  .event-card.photo-card {
    background-color: var(--light-gray);
    border-bottom-style: none;
  }

  .cta-text-wrapper {
    grid-column-gap: 120px;
    grid-row-gap: 120px;
  }

  .cta-text {
    letter-spacing: var(--_typography---letter-spacing--letter-spacing-xxs);
    font-size: 52px;
  }

  .top-footer-wrap {
    padding-bottom: var(--_spacing-system---spacing--spacing-4xl);
  }

  .footer-large-text {
    letter-spacing: 2px;
    font-size: 50px;
  }

  .footer-left-wrap {
    padding-top: var(--_spacing-system---spacing--spacing-none);
    padding-right: var(--_spacing-system---spacing--spacing-none);
    border-right-style: none;
    grid-template-rows: auto;
    grid-template-columns: .5fr 1fr .5fr .5fr;
    max-width: none;
    margin-left: auto;
    margin-right: auto;
  }

  .inner-banner-section.events-photo-section {
    background-position: 0 100%;
    background-size: 115%;
  }

  .inner-banner-decoration {
    width: 150px;
  }

  .testimonials-slider-right-arrow {
    border-radius: var(--_spacing-system---border-radius--radius-xs);
    background-color: var(--titles-color);
    justify-content: center;
    align-items: center;
    width: 64px;
    height: 64px;
    margin-left: 10px;
    display: flex;
  }

  .testimonials-slider-left-arrow {
    border-radius: var(--_spacing-system---border-radius--radius-xs);
    background-color: var(--background);
    justify-content: center;
    align-items: center;
    width: 64px;
    height: 64px;
    margin-right: 10px;
    display: flex;
  }

  .photo-banner-wrap {
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
  }

  .services-collection-list {
    grid-template-columns: 1fr;
  }

  .services-page-link-block {
    width: 100%;
    height: 450px;
  }

  .team-member-banner-section {
    padding-top: 130px;
  }

  .team-member-banner {
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
  }

  .team-member-page-photo {
    height: 550px;
  }

  .team-member-page-card {
    order: -9999;
  }

  .team-member-name-wrap {
    padding-bottom: var(--_spacing-system---spacing--spacing-4xl);
  }

  .team-member-short-description-wrap {
    padding-top: var(--_spacing-system---spacing--spacing-3xl);
    max-width: none;
  }

  .team-member-details-wrap {
    grid-column-gap: var(--_spacing-system---spacing--spacing-4xl);
    grid-row-gap: var(--_spacing-system---spacing--spacing-4xl);
  }

  .team-member-details {
    max-width: 55%;
  }

  .team-member-photo-wrap {
    width: 100%;
  }

  .service-banner-wrap {
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
  }

  .service-details-wrap {
    grid-column-gap: var(--_spacing-system---spacing--spacing-6xl);
    grid-row-gap: var(--_spacing-system---spacing--spacing-6xl);
    flex-flow: column;
  }

  .service-details-wrapper {
    width: 100%;
  }

  .event-banner {
    grid-column-gap: var(--_spacing-system---spacing--spacing-6xl);
    grid-row-gap: var(--_spacing-system---spacing--spacing-6xl);
    flex-flow: row;
  }

  .pricing-grid {
    grid-template-columns: 1fr 1fr;
  }

  .pricing-card-title-wrap,
  .pricing-card-title-wrap.primary-card {
    min-height: auto;
  }

  .comparing-titles-wrapper,
  .comparing-line {
    grid-column-gap: var(--_spacing-system---spacing--spacing-l);
    grid-row-gap: var(--_spacing-system---spacing--spacing-l);
  }

  .faq-wrap {
    grid-column-gap: var(--_spacing-system---spacing--spacing-l);
    grid-row-gap: var(--_spacing-system---spacing--spacing-l);
    flex-flow: column;
  }

  .faq-column {
    width: 100%;
  }

  .faq-dropdown-toggle {
    min-height: auto;
  }

  .level-title-last-wrapper {
    margin-right: 10px;
  }

  .testimonials-collection-list {
    grid-template-columns: 1fr 1fr;
  }

  .testimonials-collection-list.testimonial-page {
    margin-top: var(--_spacing-system---spacing--spacing-5xl);
    grid-template-columns: 1fr;
  }

  .testimonial-banner-section {
    padding-top: 130px;
  }

  .testimonial-banner-wrap {
    flex-flow: column;
    justify-content: space-between;
    align-items: center;
  }

  .contacts-page-title-wrap,
  .promotion-label-holder,
  .promotion-labels-wrapper-to-remove {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  body {
    --_typography---typography--h1: 50px;
    --_typography---typography--h2: 40px;
    --_typography---typography--h3: 30px;
    --_spacing-system---spacing--section-spacing: 60px;
  }

  blockquote {
    font-size: var(--_typography---body-text--text-s);
  }

  .section.without-top-spacing {
    padding-top: 0;
  }

  .licensing-icons-wrapper {
    padding-top: var(--_spacing-system---spacing--spacing-l);
  }

  .licensing-grid {
    grid-template-columns: 1fr 1fr;
  }

  .image-resources {
    grid-column-gap: var(--_spacing-system---spacing--spacing-4xl);
    grid-row-gap: var(--_spacing-system---spacing--spacing-4xl);
  }

  .licensing-images-wrapper {
    padding-top: var(--_spacing-system---spacing--spacing-3xl);
  }

  .license-link-wrapper {
    grid-column-gap: var(--_spacing-system---spacing--spacing-3xl);
    grid-row-gap: var(--_spacing-system---spacing--spacing-3xl);
  }

  .licensing-title-wrapper {
    margin-bottom: var(--_spacing-system---spacing--spacing-3xl);
  }

  .top-licensing-wrap {
    padding-bottom: var(--_spacing-system---spacing--spacing-3xl);
  }

  .system-space {
    padding-top: var(--_spacing-system---spacing--spacing-3xl);
    padding-bottom: var(--_spacing-system---spacing--spacing-l);
  }

  .grid-title {
    width: var(--_spacing-system---containers--full-width);
    border-bottom: 1px solid var(--white-15);
    border-right-style: none;
  }

  .grid-title.first-grid {
    border-left-style: none;
    border-right-style: none;
    width: 100%;
  }

  .grid-system {
    border-top-style: none;
    flex-direction: column;
  }

  .bottom-space {
    padding-bottom: var(--_spacing-system---spacing--spacing-3xl);
  }

  .bottom-space.space-small {
    padding-bottom: 15px;
  }

  .style-guide-intro {
    grid-row-gap: 40px;
  }

  .spacing-wrapper {
    margin-top: var(--_spacing-system---spacing--spacing-l);
    margin-bottom: var(--_spacing-system---spacing--spacing-l);
  }

  .typography-hero-wrapper {
    grid-row-gap: 40px;
  }

  .spacing-grid {
    grid-column-gap: var(--_spacing-system---spacing--spacing-4xl);
    grid-row-gap: var(--_spacing-system---spacing--spacing-4xl);
    grid-template-columns: 1fr;
  }

  .colors-wrapper {
    grid-column-gap: var(--_spacing-system---spacing--spacing-l);
    grid-row-gap: var(--_spacing-system---spacing--spacing-l);
  }

  .style-guide-content.button-grid {
    grid-template-columns: 1fr;
  }

  .grid-description {
    width: var(--_spacing-system---containers--full-width);
    border-top: 1px solid var(--stroke);
    border-bottom-style: none;
    align-items: center;
  }

  .grid-description.first-description {
    border-top-style: solid;
    border-bottom-style: none;
    border-left-style: none;
    width: 100%;
  }

  .grid-description.last-description {
    border-bottom-style: solid;
  }

  .heading-wrap {
    width: 100%;
  }

  .brand {
    padding-left: 0;
  }

  .style-guide-hero-wrap,
  .brand-tablet {
    justify-content: flex-start;
    padding-left: 0;
  }

  .nav-link {
    margin-left: 0;
  }

  .footer-wrapper {
    margin-top: var(--_spacing-system---spacing--spacing-4xl);
    margin-bottom: var(--_spacing-system---spacing--spacing-4xl);
    justify-content: center;
  }

  .footer-link {
    justify-content: center;
    align-items: center;
  }

  .pass-page-content {
    width: 80%;
  }

  .banner-text-wrap {
    grid-column-gap: var(--_spacing-system---spacing--spacing-4xl);
    grid-row-gap: var(--_spacing-system---spacing--spacing-4xl);
  }

  .banner-text-wrap.event-page-banner {
    max-width: none;
  }

  .banner-title-wrapper.blog-post-page {
    max-width: none;
    margin-bottom: 60px;
  }

  .center-title-wrap.mobile-left {
    text-align: left;
    justify-content: flex-start;
    align-items: center;
    margin-left: 0;
    display: flex;
  }

  .level-number {
    order: -9999;
  }

  .level-title.mobile {
    display: flex;
  }

  .level-title.price-compare-title {
    font-size: var(--_typography---typography--h5);
  }

  .content-types-wrap,
  .team-mask,
  ._500px-title-wrap {
    max-width: 280px;
  }

  .icon-title-wrap {
    max-width: none;
  }

  .mobile-hidden-button-wrap {
    display: none;
  }

  .event-link-block {
    height: 400px;
  }

  .event-card.photo-card {
    background-color: var(--light-gray);
    border-bottom-style: none;
  }

  .cta-section {
    background-image: linear-gradient(90deg, #000, #07070700), url('../images/pexels-jacobyclarkephoto-956952_1pexels-jacobyclarkephoto-956952.webp');
    background-position: 0 0, 0%;
    background-size: auto, cover;
  }

  .cta-text {
    letter-spacing: -.5px;
    font-size: 48px;
  }

  .cta-text-wrap {
    grid-column-gap: var(--_spacing-system---spacing--spacing-4xl);
    grid-row-gap: var(--_spacing-system---spacing--spacing-4xl);
  }

  .footer-large-text {
    font-size: 32px;
  }

  .footer-left-wrap {
    grid-template-columns: .5fr 1fr;
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
  }

  .mobile-button-wrap {
    margin-top: var(--_spacing-system---spacing--spacing-4xl);
    display: flex;
  }

  .mobile-button-wrap.bottom-spacing {
    margin-bottom: var(--_spacing-system---spacing--section-spacing);
  }

  .inner-banner-section {
    padding-bottom: 120px;
    position: relative;
  }

  .inner-banner-section.events-photo-section {
    background-size: auto, cover;
  }

  .inner-banner-decoration {
    background-size: cover;
    width: 100%;
    height: 100px;
    top: auto;
    left: 0;
  }

  .number-large-text {
    font-size: 42px;
  }

  .testimonials-slider {
    margin-top: var(--_spacing-system---spacing--spacing-4xl);
    padding-top: 0;
    padding-bottom: 104px;
  }

  .testimonials-slider-right-arrow,
  .testimonials-slider-left-arrow {
    top: auto;
    bottom: 0;
  }

  .testimonial-card {
    flex-flow: column;
  }

  .testimonial-card-left-card {
    padding-right: var(--_spacing-system---spacing--spacing-none);
    padding-bottom: var(--_spacing-system---spacing--spacing-3xl);
    border-bottom: 1px solid var(--stroke);
    border-right-style: none;
    width: 100%;
  }

  .testimonial-card-right-card {
    padding-top: var(--_spacing-system---spacing--spacing-3xl);
    padding-left: var(--_spacing-system---spacing--spacing-none);
  }

  .team-collection-list {
    grid-template-columns: 1fr;
  }

  .services-page-collection-item {
    flex-flow: column;
    width: auto;
    min-height: 565px;
    display: flex;
  }

  .services-page-link-block {
    width: 100%;
    height: 400px;
  }

  .services-page-card {
    flex: 1;
  }

  .team-member-banner {
    grid-column-gap: var(--_spacing-system---spacing--spacing-4xl);
    grid-row-gap: var(--_spacing-system---spacing--spacing-4xl);
  }

  .team-member-name-wrap {
    padding-bottom: var(--_spacing-system---spacing--spacing-3xl);
  }

  .team-member-details-wrap {
    grid-column-gap: var(--_spacing-system---spacing--spacing-l);
    grid-row-gap: var(--_spacing-system---spacing--spacing-l);
    flex-flow: column;
    margin-bottom: 0;
  }

  .team-member-details {
    max-width: 100%;
  }

  .team-member-right-sidebar {
    width: 100%;
    margin-bottom: 0;
  }

  .team-member-right-sidebar-text {
    max-width: 300px;
  }

  .event-banner {
    grid-column-gap: var(--_spacing-system---spacing--spacing-5xl);
    grid-row-gap: var(--_spacing-system---spacing--spacing-5xl);
    flex-flow: column;
    justify-content: space-between;
    align-items: flex-start;
  }

  .pricing-grid {
    grid-template-columns: 1fr;
  }

  .pricing-card-title-wrap {
    min-height: auto;
  }

  .comparing-wrapper {
    margin-top: var(--_spacing-system---spacing--spacing-none);
  }

  .comparing-titles-wrapper {
    display: none;
  }

  .comparing-line {
    padding-top: var(--_spacing-system---spacing--spacing-4xl);
    padding-bottom: var(--_spacing-system---spacing--spacing-4xl);
    grid-column-gap: var(--_spacing-system---spacing--spacing-3xl);
    grid-row-gap: var(--_spacing-system---spacing--spacing-3xl);
    flex-flow: column;
    grid-template-columns: 1fr 1fr 1fr;
    justify-content: flex-start;
    align-items: flex-start;
    display: flex;
  }

  .comparing-line.last {
    display: none;
  }

  .blog-page-collection-list,
  .testimonials-collection-list {
    grid-template-columns: 1fr;
  }

  .testimonials-collection-list.testimonial-page {
    margin-top: var(--_spacing-system---spacing--spacing-4xl);
  }

  .testimonial-banner-wrap,
}

@media screen and (max-width: 479px) {
  body {
    --_typography---typography--h1: 50px;
    --_typography---typography--h2: 40px;
    --_typography---typography--h3: 30px;
    --_spacing-system---spacing--section-spacing: 60px;
  }

  h1 {
    line-height: var(--_typography---line-height--line-height-s);
  }

  blockquote {
    padding-right: var(--_spacing-system---spacing--spacing-ml);
    padding-left: var(--_spacing-system---spacing--spacing-l);
  }

  .section.about-photo-section {
    background-color: var(--titles-color);
    background-image: url('../images/2152001198_12152001198.webp');
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: auto 350px;
  }

  .section.service-banner-section {
    position: relative;
  }

  .licensing-grid {
    grid-template-columns: 1fr;
  }

  .license-link-wrapper {
    grid-column-gap: var(--_spacing-system---spacing--spacing-m);
    grid-row-gap: var(--_spacing-system---spacing--spacing-m);
  }

  .licensing-title-wrapper {
    flex-flow: row;
    justify-content: space-between;
    align-items: center;
  }

  .grid-title {
    align-items: center;
  }

  .grid-title.first-grid {
    text-align: center;
    flex: 1;
    width: 100%;
  }

  .intro-box.large-gap {
    padding-left: 15px;
    padding-right: 15px;
  }

  .grid-system {
    flex-direction: column;
    width: 50%;
  }

  .style-guide-content.links-grid {
    grid-template-columns: 1fr;
  }

  .grid-description.first-description {
    border-bottom: 1px #fff3;
    border-left-style: none;
    border-right-style: solid;
  }

  .brand-tablet {
    padding-left: 0;
  }

  .nav-link {
    width: 99%;
  }

  .footer-wrapper {
    grid-row-gap: 30px;
  }

  .footer {
    text-align: left;
  }

  .pass-page-content {
    width: 100%;
  }

  .text-white.team-section-text {
    font-size: 28px;
    line-height: var(--_typography---line-height--line-height-m);
  }

  .home-banner-section {
    position: relative;
    padding-top: 100px;
    padding-bottom: 50px;
    min-height: auto;
    height: auto;
  }

  .banner-title-wrapper {
    width: 100%;
  }

  .level-number {
    display: none;
  }

  .level-number.mobile-visible {
    display: block;
  }

  ._500px-title-wrap {
    max-width: none;
  }

  .event-link-block {
    height: 300px;
  }

  .event-card {
    padding-right: var(--_spacing-system---spacing--spacing-none);
    padding-left: var(--_spacing-system---spacing--spacing-none);
  }

  .event-card.photo-card {
    padding-right: var(--_spacing-system---spacing--spacing-ml);
    padding-left: var(--_spacing-system---spacing--spacing-ml);
  }

  .event-text-link.large {
    font-size: var(--_typography---body-text--text-s);
  }

  .numbers-dropdown-content.w--open,
  .cta-section {
    background-position: 0 0, 50%;
  }

  .cta-text-wrapper {
    grid-column-gap: 80px;
    grid-row-gap: 80px;
  }

  .cta-text {
    font-size: 36px;
    line-height: var(--_typography---line-height--line-height-s);
  }

  .footer-large-text {
    text-align: left;
  }

  .inner-banner-section {
    padding-top: 130px;
    padding-bottom: 130px;
  }

  .inner-banner-section.events-photo-section {
    background-position: 55% 100%;
  }

  .inner-banner-decoration {
    background-position: 50%;
    background-repeat: repeat;
    background-size: 100%;
  }

  .testimonial-card {
    padding-right: var(--_spacing-system---spacing--spacing-ml);
    padding-left: var(--_spacing-system---spacing--spacing-ml);
    height: 584.586px;
    min-height: 584px;
  }

  .testimonial-card-left-card {
    flex: 1;
  }

  .testimonial-content-wrap {
    width: 100%;
  }

  .testimonial-card-right-card {
    flex: 0 auto;
    justify-content: flex-end;
  }

  .inner-banner-image-wrap {
    height: 350px;
  }

  .photo-banner-title-wrapper {
    width: 100%;
  }

  .services-page-collection-item {
    min-height: 605px;
  }

  .services-page-collection-item.services-page {
    min-height: auto;
  }

  .services-page-card {
    padding-bottom: var(--_spacing-system---spacing--spacing-3xl);
  }

  .team-member-banner {
    grid-column-gap: var(--_spacing-system---spacing--spacing-4xl);
    grid-row-gap: var(--_spacing-system---spacing--spacing-4xl);
  }

  .team-member-page-photo {
    height: 400px;
  }

  .team-member-short-description-wrap {
    padding-top: var(--_spacing-system---spacing--spacing-l);
  }

  .education-wrap {
    flex-flow: column;
  }

  .team-member-name-wrapper {
    grid-column-gap: var(--_spacing-system---spacing--spacing-l);
    grid-row-gap: var(--_spacing-system---spacing--spacing-l);
    grid-template-rows: auto;
    grid-template-columns: 1fr 48px;
    grid-auto-columns: 1fr;
    display: grid;
  }

  .service-banner-title-wrapper {
    width: 100%;
  }

  .event-banner {
    grid-column-gap: var(--_spacing-system---spacing--spacing-5xl);
    grid-row-gap: var(--_spacing-system---spacing--spacing-5xl);
  }

  .event-details-card,
  .pricing-card,
  .testimonial-small-card {
    padding-right: var(--_spacing-system---spacing--spacing-ml);
    padding-left: var(--_spacing-system---spacing--spacing-ml);
  }

  .testimonials-photo-banner-title-wrapper {
    width: 100%;
  }

  .contact-form-field-wrap,
}

#w-node-_5890d49b-b2f8-3580-cb23-cedfc7d3b03c-c7d3b035,
#w-node-_5890d49b-b2f8-3580-cb23-cedfc7d3b048-c7d3b035 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

#w-node-d202e1db-2c98-a756-d117-2e985f01bba3-edaca6b2,
#w-node-_571ef60b-99a2-a359-0dd2-bb5c253712fe-edaca6b2 {
  grid-area: 1 / 2 / 2 / 3;
}

#w-node-_7f710b0a-f206-2f4e-6328-da7e04fc6bb1-edaca6b2 {
  grid-area: 1 / 3 / 2 / 4;
}

#w-node-_7f710b0a-f206-2f4e-6328-da7e04fc6bb2-edaca6b2 {
  grid-area: 1 / 2 / 2 / 3;
}

#w-node-_84a2c33e-7bec-8022-1a97-13de8ac53211-edaca6b2 {
  grid-area: 1 / 4 / 2 / 5;
}

#w-node-_84a2c33e-7bec-8022-1a97-13de8ac53212-edaca6b2,
#w-node-_92186c8c-b07e-44e9-3a5e-74470c2a8d45-edaca6b2,
#w-node-_1a5cca4f-41c8-2ff3-332a-74f31cb54332-edaca6b2,
#w-node-df0405e3-2296-b282-8562-4a83c9301d7b-edaca6b2,
#w-node-_88cda2aa-c2b9-5ccf-8e0e-1625f421d723-edaca6b2,
#w-node-_1984dccb-ce5e-772c-4945-dd5fe61ecafc-edaca6b2,
#w-node-_51924aa9-abe5-17ba-be0b-23e46970a11a-edaca6b2,
#w-node-_79bd0993-64bc-8f88-6881-ef6b38496425-edaca6b2,
#w-node-f11c76d9-fb45-cb46-0fee-3d33b15c6f3c-edaca6b2,
#w-node-cdeaf7cd-e496-7a49-84bf-232fb2216e23-edaca6b2,
#w-node-ad0828b7-c48e-42a2-f490-adf248d66a36-edaca6b2,
#w-node-e93c3ba7-f8a2-f8f1-f5dc-a02b4c8c665f-edaca6b2,
#w-node-f61a91b4-dafa-e528-be06-d9d883dafdb7-edaca6b2 {
  grid-area: 1 / 2 / 2 / 3;
}

#w-node-af854564-918a-7f97-c75d-b40df9a99b26-edaca6b2 {
  grid-area: 1 / 3 / 2 / 4;
}

#w-node-cc975b55-016a-9381-8aa3-e7fc8db2d863-edaca6b2 {
  grid-area: 1 / 4 / 2 / 5;
}

#w-node-_98105c52-4f4c-1de2-e9f2-703e192973a7-edaca6ce,
#w-node-_98105c52-4f4c-1de2-e9f2-703e192973a9-edaca6ce,
#w-node-_98105c52-4f4c-1de2-e9f2-703e192973ab-edaca6ce,
#w-node-_98105c52-4f4c-1de2-e9f2-703e192973ad-edaca6ce,
#w-node-_98105c52-4f4c-1de2-e9f2-703e192973af-edaca6ce,
#w-node-_98105c52-4f4c-1de2-e9f2-703e192973b2-edaca6ce,
#w-node-_98105c52-4f4c-1de2-e9f2-703e192973b4-edaca6ce,
#w-node-_98105c52-4f4c-1de2-e9f2-703e192973b6-edaca6ce,
#w-node-_98105c52-4f4c-1de2-e9f2-703e192973b8-edaca6ce,
#w-node-_98105c52-4f4c-1de2-e9f2-703e192973ba-edaca6ce,
#w-node-e53df4b9-4e35-3ba8-fc27-7b5d554d74ca-edaca6cf,
#w-node-e53df4b9-4e35-3ba8-fc27-7b5d554d74cc-edaca6cf,
#w-node-e53df4b9-4e35-3ba8-fc27-7b5d554d74ce-edaca6cf,
#w-node-e53df4b9-4e35-3ba8-fc27-7b5d554d74d0-edaca6cf,
#w-node-_49637a2f-fa28-2da9-10a0-23ad4998e8d9-edaca6cf,
#w-node-_888fc09f-70d9-b15d-5ec0-cb07365a417b-edaca6cf,
#w-node-b0a3bc52-534d-73b9-2b08-e5b0200d28e9-edaca6cf,
#w-node-_3bf9462a-f7c8-68ae-6eb9-23039c814d3f-edaca6cf,
#w-node-d0c35218-538a-6968-a216-76fe6a590eba-edaca6cf,
#w-node-b4c4d3f2-cf10-511b-f81a-27ae5a07584c-edaca6cf,
#w-node-_9a918d21-d1e3-a70d-23ca-db87f98441e5-edaca6cf,
#w-node-_29b88601-52fd-aecb-e63b-95c7052aac61-edaca6cf,
#w-node-d1f8875c-9419-2719-3daf-ed60a51830d6-edaca6cf,
#w-node-f4132c06-0c51-249a-ebf2-681c8d2b0e26-edaca6cf,
#w-node-_2ddc0118-a0e4-11ff-b02c-cd442e58d00c-edaca6cf,
#w-node-_9be92801-0146-e85c-9727-21cd0e860576-edaca6cf,
#w-node-a76c2816-be3b-1a02-e507-e2222388fa6b-edaca6cf,
#w-node-cfa4fc46-2407-4f8f-8398-423604e09358-04e09351,
#w-node-cfa4fc46-2407-4f8f-8398-423604e09364-04e09351,
#w-node-cfa4fc46-2407-4f8f-8398-423604e09370-04e09351,
#w-node-cfa4fc46-2407-4f8f-8398-423604e0937c-04e09351 {
  grid-area: span 1 / span 1 / span 1 / span 1;
}

@media screen and (min-width: 1280px) {

  #w-node-_5890d49b-b2f8-3580-cb23-cedfc7d3b03c-c7d3b035,
  #w-node-cfa4fc46-2407-4f8f-8398-423604e09358-04e09351,
  #w-node-cfa4fc46-2407-4f8f-8398-423604e09370-04e09351,
  #w-node-cfa4fc46-2407-4f8f-8398-423604e0937c-04e09351 {
    grid-area: span 1 / span 1 / span 1 / span 1;
  }
}

@media screen and (max-width: 991px) {

  #w-node-a192b2af-915c-152e-3c25-c84525668cca-edaca630,
  #w-node-_67efdcb3-e467-09fc-de31-25c201e83584-edaca630,
  #w-node-c1aed4b5-201c-4730-4ca8-28145731a6b4-edaca630,
  #w-node-b2776fd8-6540-22c9-b084-8010cbfc8708-edaca630,
  #w-node-_8d35d235-a7e5-b3e5-0c93-5ab4b79b94b7-edaca630,
  #w-node-_7bf1509c-948c-2500-c768-de8221cfdb5f-edaca630 {
    order: 9999;
  }

  #w-node-_783dbe6e-c5e9-d873-65bd-4962675e8fee-edaca6b2,
  #w-node-_20e9ce78-e712-61af-75e9-39bfde87a58c-edaca6cc {
    order: 9999;
    grid-area: span 1 / span 2 / span 1 / span 2;
  }
}

@media screen and (max-width: 767px) {
  #w-node-_783dbe6e-c5e9-d873-65bd-4962675e8fee-edaca6b2 {
    grid-column: span 1 / span 1;
  }

  #w-node-f933c7d3-00d9-b5b1-c7ac-acb01e9bbf3a-edaca6b2 {
    order: 9999;
  }

  #w-node-_92186c8c-b07e-44e9-3a5e-74470c2a8d44-edaca6b2,
  #w-node-_1a5cca4f-41c8-2ff3-332a-74f31cb54331-edaca6b2 {
    grid-area: span 1 / span 3 / span 1 / span 3;
  }
}

@media screen and (max-width: 479px) {
  #w-node-_20e9ce78-e712-61af-75e9-39bfde87a58c-edaca6cc {
    order: -9999;
    grid-column: span 1 / span 1;
  }

  #w-node-e53df4b9-4e35-3ba8-fc27-7b5d554d74ca-edaca6cf,
  #w-node-e53df4b9-4e35-3ba8-fc27-7b5d554d74cc-edaca6cf,
  #w-node-e53df4b9-4e35-3ba8-fc27-7b5d554d74ce-edaca6cf,
  #w-node-e53df4b9-4e35-3ba8-fc27-7b5d554d74d0-edaca6cf,
  #w-node-_49637a2f-fa28-2da9-10a0-23ad4998e8d9-edaca6cf,
  #w-node-_888fc09f-70d9-b15d-5ec0-cb07365a417b-edaca6cf,
  #w-node-b0a3bc52-534d-73b9-2b08-e5b0200d28e9-edaca6cf,
  #w-node-_3bf9462a-f7c8-68ae-6eb9-23039c814d3f-edaca6cf,
  #w-node-d0c35218-538a-6968-a216-76fe6a590eba-edaca6cf,
  #w-node-b4c4d3f2-cf10-511b-f81a-27ae5a07584c-edaca6cf,
  #w-node-_9a918d21-d1e3-a70d-23ca-db87f98441e5-edaca6cf,
  #w-node-_29b88601-52fd-aecb-e63b-95c7052aac61-edaca6cf,
  #w-node-d1f8875c-9419-2719-3daf-ed60a51830d6-edaca6cf,
  #w-node-f4132c06-0c51-249a-ebf2-681c8d2b0e26-edaca6cf,
  #w-node-_2ddc0118-a0e4-11ff-b02c-cd442e58d00c-edaca6cf,
  #w-node-_9be92801-0146-e85c-9727-21cd0e860576-edaca6cf,
  #w-node-a76c2816-be3b-1a02-e507-e2222388fa6b-edaca6cf {
    grid-area: span 1 / span 2 / span 1 / span 2;
  }
}


@font-face {
  font-family: 'Fa 400';
  src: url('../fonts/fa-regular-400.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Fa Solid 900';
  src: url('../fonts/fa-solid-900.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Fa Brands 400';
  src: url('../fonts/fa-brands-400.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* ── Navbar layout & theming ── */

.navbar {
  padding-top: 0;
  padding-bottom: 0;
  position: fixed;
  inset: 0% 0% auto;
  width: 100%;
  z-index: 1000;
}

/* Interior pages are always Solid Navy */
.navbar.interior-nav {
  background-color: #1c2247 !important;
}

/* Homepage starts transparent; fills on scroll */
.navbar.home-nav {
  background-color: transparent;
  transition: background-color 0.3s ease;
}

.navbar.home-nav.scrolled {
  background-color: #1c2247;
}

/* Homepage menu row: full-width navy stripe via pseudo-element */
.navbar.home-nav .nav-menu {
  position: relative;
  border-top: none;
}

.navbar.home-nav .nav-menu::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100vw;
  background-color: #1c2247;
  z-index: 0;
}

.navbar.home-nav .menu-wrap {
  position: relative;
  z-index: 1;
}

.navbar.interior-nav .nav-menu,
.navbar.interior-nav .menu-wrap {
  background-color: transparent !important;
}

.nav-container {
  max-width: var(--_spacing-system---containers--base-container);
  padding-left: 15px;
  padding-right: 15px;
  display: block;
}

/* Logo: row 1 left */
.brand.w-nav-brand {
  order: 1;
  flex: 0 0 auto;
}

/* Dropdown wrapper sits inline like a nav-link */
.menu-wrap > .nav-dropdown {
  display: inline-flex;
  align-items: center;
  align-self: stretch;
}

/* No first/last-child overrides needed — gap on .menu-wrap handles spacing uniformly */

/* ── Kill Webflow's auto margin on nav links ──────────────────────────
   base.css sets margin-left:auto; margin-right:auto on .w-nav-link.
   Inside a flex container, margin:auto absorbs ALL free space before
   justify-content:space-between can distribute it. This caused the plain
   <a> nav links to silently consume all extra space while the
   .nav-dropdown wrappers (no auto margin) appeared crushed together.
   Zeroing these out lets space-between distribute gaps evenly. */
.menu-wrap > .nav-link,
.menu-wrap > .nav-dropdown > .nav-link {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

@media screen and (max-width: 991px) {
  .nav-menu {
    order: unset;
    flex: unset;
    width: 320px;
    border-top: none;
  }

  .navbar.interior-nav .nav-menu,
  .navbar.home-nav.w--open .nav-menu {
    background-color: #1c2247 !important;
  }

  .nav-button-wrap {
    order: unset;
    margin-left: unset;
  }

  .brand.w-nav-brand {
    order: unset;
  }

  .nav-menu-wrapper {
    flex-wrap: nowrap;
    align-items: center;
    padding-top: 0;
  }
}

/* ── Member Portal (Login) Modernization ── */

.portal-overlay {
  position: fixed;
  inset: 0;
  background-image: url('../images/judicial_portal_background_1773313721995.png');
  background-size: cover;
  background-position: center;
  z-index: 1;
}

.portal-overlay::after {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(11, 17, 38, 0.7);
  /* Deep brand overlay */
}

.auth-card {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 90%;
  max-width: 440px;
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(10px);
  padding: 40px;
  border-radius: 16px;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
  text-align: center;
  z-index: 10;
}

.brand-logo-portal {
  height: 80px;
  margin-bottom: 24px;
}

.auth-title {
  font-family: Inter, sans-serif;
  font-size: 28px;
  color: #1c2247;
  margin-bottom: 8px;
}

.auth-subtitle {
  font-size: 15px;
  color: #64748b;
  margin-bottom: 32px;
  line-height: 1.5;
}

.auth-input-group {
  text-align: left;
  margin-bottom: 20px;
}

.auth-label {
  display: block;
  font-size: 13px;
  font-weight: 600;
  color: #1c2247;
  margin-bottom: 8px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.auth-input {
  width: 100%;
  padding: 12px 16px;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  font-size: 16px;
  transition: border-color 0.2s;
}

.auth-input:focus {
  outline: none;
  border-color: #1c2247;
  box-shadow: 0 0 0 3px rgba(28, 34, 71, 0.1);
}

.auth-btn {
  width: 100%;
  padding: 14px;
  background-color: #1c2247;
  /* SIFoCC Navy */
  color: white;
  border: none;
  border-radius: 8px;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  transition: background-color 0.2s, transform 0.1s;
  margin-top: 10px;
}

.auth-btn:hover {
  background-color: #0b1126;
}

.auth-btn:active {
  transform: scale(0.98);
}

.error-msg {
  display: none;
  margin-top: 16px;
  color: #ef4444;
  font-size: 14px;
  font-weight: 500;
}

/* ── Hero: landscape short-viewport fix ──────────────────────────── */
@media (max-height: 750px) {
  .home-banner-section {
    position: relative !important;
    padding-top: 120px !important;
    padding-bottom: 60px !important;
    min-height: auto !important;
    height: auto !important;
  }
}

.back-link {
  display: inline-block;
  margin-top: 32px;
  color: #64748b;
  text-decoration: none;
  font-size: 14px;
  font-weight: 500;
  transition: color 0.2s;
}

.back-link:hover {
  color: #1c2247;
}

/* ═══════════════════════════════════════════════════
   SIFoCC BRAND TYPE SYSTEM
   Consistent heading + text scale across all pages
   ═══════════════════════════════════════════════════ */

/* Keep hero / banner titles large */
/* ── Eyebrow labels (small ALL-CAPS gold bar) ── */
.sifocc-eyebrow.dark { color: #c9a84c; }
.sifocc-eyebrow.dark::before { background: #c9a84c; }

/* ── Section heading (used in all interior page sections) ── */
/* ── Section subtext ── */
/* ── Body copy ── */
/* ── Inner page banner headings — keep large ── */
.inner-banner-section h1,
.inner-banner-section h2 {
  font-size: clamp(32px, 5vw, 56px);
  line-height: 1.1;
}

/* ── Responsive fine-tuning ── */
@media (max-width: 767px) {
  h2 { font-size: clamp(22px, 5.5vw, 28px); }
  h3 { font-size: clamp(18px, 4.5vw, 22px); }
}
/* ── Footer width: match base-container at all breakpoints ── */
footer > div:nth-child(2) {
  max-width: var(--_spacing-system---containers--base-container) !important;
  padding-left: 40px !important;
  padding-right: 40px !important;
  box-sizing: border-box !important;
}
footer > div:nth-child(3) > div {
  max-width: var(--_spacing-system---containers--base-container) !important;
  padding-left: 40px !important;
  padding-right: 40px !important;
  box-sizing: border-box !important;
}
@media (max-width: 560px) {
  footer > div:nth-child(2) {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
  footer > div:nth-child(3) > div {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
}
