:root {
  --aip-navy: oklch(30.12% .0562 276.88);
  --aip-navy-deep: oklch(24.5% .0458 277.05);
  --aip-ivory: oklch(97.08% .0086 84.57);
  --aip-teal: oklch(53.92% .1096 211.56);
  --aip-teal-soft: oklch(95.78% .0138 202.46);
  --aip-magenta: oklch(50.91% .224 8.98);
  --aip-magenta-soft: oklch(94.79% .0186 347.43);
  --aip-ember: oklch(66.28% .1809 55.65);
  --aip-muted: oklch(41.74% .0062 345.53);
  --aip-border: oklch(88.79% .0125 84.58);
  --aip-shadow: 0 24px 60px -32px oklch(30.12% .0562 276.88 / .35);
}

#main-content .ai-native-page-row.et_pb_row,
#main-content .ai-route-breadcrumbs .et_pb_row {
  margin-inline: auto !important;
  max-width: 1320px;
  padding-inline: 40px;
  width: 100% !important;
}

.ai-native-page-column,
.ai-native-group,
.ai-native-page-column > .et_pb_module_inner,
.ai-native-group > .et_pb_module_inner {
  min-width: 0;
}
.ai-native-group { gap: 0; }

.ai-native-page-section {
  background: var(--aip-ivory);
  border-bottom: 1px solid var(--aip-border);
  padding: 96px 0 !important;
}

.ai-native-page-section.ai-section--white { background: #fff; }
.ai-native-page-section.ai-section--teal-soft { background: var(--aip-teal-soft); }
.ai-native-page-section.ai-section--magenta-soft { background: var(--aip-magenta-soft); }
.ai-native-page-section.ai-section--navy,
.ai-surface--navy { background: var(--aip-navy); color: var(--aip-ivory); }

.ai-route-breadcrumbs {
  background: var(--aip-ivory);
  padding: 24px 0 0 !important;
}

.ai-breadcrumbs p {
  color: var(--aip-muted);
  font: 400 12px/18px Manrope, sans-serif;
  margin: 0;
}

.ai-breadcrumbs a { color: var(--aip-muted); }
.ai-breadcrumbs__separator {
  background: currentColor;
  display: inline-block;
  height: 12px;
  margin-inline: 8px;
  -webkit-mask: url("../icons/chevron-right.svg") center / contain no-repeat;
  mask: url("../icons/chevron-right.svg") center / contain no-repeat;
  vertical-align: -2px;
  width: 12px;
}
.ai-breadcrumbs p > span:last-child:not(.ai-breadcrumbs__separator) { color: var(--aip-navy); font-weight: 600; }

.ai-page-hero {
  padding-block: 64px !important;
}

.ai-page-hero .ai-container.ai-layout-grid,
.ai-page-hero > .et_pb_row > .ai-column > .ai-layout-grid {
  align-items: center;
  gap: 64px;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
}

.ai-heading h1,
.ai-heading h2,
.ai-heading h3,
.ai-heading h4 {
  color: var(--aip-navy);
  font-family: Newsreader, Georgia, serif;
  letter-spacing: -.015em;
  margin: 0;
  padding: 0;
  text-wrap: balance;
}

.ai-heading--h1 h1 {
  font-size: 54.4px;
  font-weight: 500;
  line-height: 1.08;
}

.ai-heading--h2 h2 {
  font-size: 44px;
  font-weight: 500;
  line-height: 1.15;
}

.ai-heading--h3 h3 {
  font-size: 24px;
  font-weight: 500;
  line-height: 1.3;
}

.ai-heading--h4 h4 {
  font-size: 18px;
  font-weight: 600;
  line-height: 1.4;
}

.ai-heading.ai-type--lg h3,
.ai-heading.ai-type--lg h4 { font-size: 18px; line-height: 1.4; }
.ai-heading.ai-type--xl h3,
.ai-heading.ai-type--xl h4 { font-size: 20px; line-height: 1.375; }
.ai-heading.ai-type--2xl h3 { font-size: 24px; line-height: 1.375; }
.ai-heading.ai-type--3xl h3 { font-size: 30px; line-height: 1.2; }
.ai-heading.ai-type--4xl h3 { font-size: 36px; line-height: 1.1111; }
.ai-heading.ai-type--26rem h2 { font-size: 41.6px; line-height: 1.15; }

.ai-copy p,
.ai-list,
.ai-list li,
.ai-dt p,
.ai-dd p,
.ai-figcaption p,
.ai-caption p {
  color: var(--aip-muted);
  font: 400 16px/1.625 Manrope, sans-serif;
  margin: 0;
}

.ai-copy + .ai-copy,
.ai-heading + .ai-copy,
.ai-copy + .ai-list,
.ai-heading + .ai-layout-flex,
.ai-heading + .ai-layout-grid,
.ai-heading + .ai-card { margin-top: 18px; }

.ai-page-hero .ai-heading--h1 + .ai-copy { margin-top: 24px; }
.ai-page-hero .ai-copy p { font-size: 18px; }
.ai-eyebrow p {
  color: var(--aip-muted);
  font: 700 12px/18px Manrope, sans-serif;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.ai-accent--teal .ai-eyebrow p { color: var(--aip-teal); }
.ai-accent--magenta .ai-eyebrow p { color: var(--aip-magenta); }
.ai-lead p { font-size: 18px; }
.ai-small p { font-size: 14px; }
.ai-inline-label p { color: var(--aip-navy); font: 600 14px/1.4 Manrope, sans-serif; margin: 0; }
.ai-badge { border: 1px solid var(--aip-border); border-radius: 999px; padding: 6px 12px; width: max-content; }
.ai-display-label p { font-family: Newsreader, Georgia, serif; font-weight: 500; }
.ai-dt p { font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.ai-dt--display-xl p { color: var(--aip-navy); font: 500 20px/28px Newsreader, Georgia, serif; letter-spacing: 0; text-transform: none; }
.ai-dd--small p { font-size: 14px; line-height: 22.75px; }

.ai-native-page .ai-text:first-child p:not(:only-child),
.ai-native-page .ai-copy:first-child p {
  max-width: 68ch;
}

.ai-container { width: 100%; }
.ai-measure { max-width: 68ch; }
.ai-align-center { margin-inline: auto; text-align: center; }

.ai-layout-grid {
  display: grid !important;
  gap: 32px;
  width: 100%;
}

.ai-gap--2 { gap: 8px; }
.ai-gap--3 { gap: 12px; }
.ai-gap--4 { gap: 16px; }
.ai-gap--5 { gap: 20px; }
.ai-gap--6 { gap: 24px; }
.ai-gap--8 { gap: 32px; }
.ai-gap--10 { gap: 40px; }
.ai-gap--12 { gap: 48px; }
.ai-gap--16 { gap: 64px; }
.ai-mt--2 { margin-top: 8px !important; }
.ai-mt--3 { margin-top: 12px !important; }
.ai-mt--4 { margin-top: 16px !important; }
.ai-mt--5 { margin-top: 20px !important; }
.ai-mt--6 { margin-top: 24px !important; }
.ai-mt--8 { margin-top: 32px !important; }
.ai-mt--10 { margin-top: 40px !important; }
.ai-mt--12 { margin-top: 48px !important; }
.ai-mt--16 { margin-top: 64px !important; }
.ai-p--4 { padding: 16px; }
.ai-p--5 { padding: 20px; }
.ai-p--7 { padding: 28px; }
.ai-p--10 { padding: 40px; }
.ai-px--4 { padding-left: 16px; padding-right: 16px; }
.ai-px--5 { padding-left: 20px; padding-right: 20px; }
.ai-px--7 { padding-left: 28px; padding-right: 28px; }
.ai-py--4 { padding-bottom: 16px; padding-top: 16px; }
.ai-py--5 { padding-bottom: 20px; padding-top: 20px; }
.ai-py--7 { padding-bottom: 28px; padding-top: 28px; }

.ai-grid--1 { grid-template-columns: minmax(0, 1fr); }
.ai-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ai-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ai-grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.ai-grid-ratio--1-1 { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.ai-grid-ratio--1-11 { grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); }
.ai-grid-ratio--105-1 { grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); }
.ai-grid-ratio--11-1 { grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); }
.ai-grid-ratio--12-1 { grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); }
.ai-grid-ratio--08-12 { grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); }

.ai-layout-flex {
  align-items: center;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap;
  gap: 12px;
}
.ai-flex-column { display: flex !important; flex-direction: column; gap: 0; }

.ai-stack { display: flex !important; flex-direction: column; gap: 16px; }
.ai-stack.ai-gap--5 { gap: 20px; }
.ai-actions { align-items: flex-start; display: flex !important; flex-flow: row wrap !important; gap: 12px; justify-content: flex-start; }

.ai-linked-card {
  background: #fff;
  border: 1px solid var(--aip-border);
  border-radius: 16px;
  height: 100%;
  overflow: hidden;
}

.ai-linked-card > :not(.ai-media):not(.ai-native-image) { margin-inline: 24px; }
.ai-linked-card > :last-child { margin-bottom: 24px; }
.ai-gallery-trigger { background: transparent; border: 0; border-radius: 16px; padding: 0; text-align: left; width: 100%; }
.ai-gallery-trigger > :not(.ai-media):not(.ai-native-image) { margin-inline: 0; }
.ai-gallery-trigger > :last-child { margin-bottom: 0; }
.ai-lg-col-span--2 .ai-gallery-trigger .ai-native-image img { aspect-ratio: 16 / 9; }

.ai-button-composite {
  display: inline-flex !important;
  max-width: 100%;
  position: relative;
  width: fit-content;
}

.ai-button-composite .et_pb_button_module_wrapper { max-width: 100%; }

.ai-button-composite .ai-button { padding-right: 46px !important; }
.ai-button-composite .ai-icon {
  pointer-events: none;
  position: absolute;
  right: 18px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
}
.ai-text-link-composite .ai-button { padding: 0 22px 0 0 !important; }
.ai-text-link-composite .ai-icon { height: 16px; right: 0; width: 16px; }
.ai-text-link-composite .ai-icon .et_pb_image_wrap,
.ai-text-link-composite .ai-icon img { height: 16px; width: 16px; }

.ai-card,
.ai-article {
  background: #fff;
  border: 1px solid var(--aip-border);
  border-radius: 16px;
  box-shadow: 0 12px 30px -18px oklch(30.12% .0562 276.88 / .28);
  padding: 24px;
}

.ai-card .ai-card { box-shadow: none; }
.ai-card:has(> .ai-native-image),
.ai-card:has(> .ai-media) { padding: 0; }
.ai-placeholder { border-style: dashed; }
.ai-surface--teal { background: var(--aip-teal-soft); }
.ai-surface--magenta { background: var(--aip-magenta-soft); }
.ai-surface--white { background: #fff; }
.ai-segmented-grid { background: var(--aip-border); border: 1px solid var(--aip-border); box-shadow: none; gap: 1px; padding: 0; }
.ai-segmented-grid > .ai-list-item { background: #fff; padding: 28px; }

.ai-surface--navy .ai-heading h2,
.ai-surface--navy .ai-heading h3,
.ai-surface--navy .ai-copy p,
.ai-section--navy .ai-heading h2,
.ai-section--navy .ai-heading h3,
.ai-section--navy .ai-copy p,
.ai-section--navy .ai-list li { color: var(--aip-ivory); }

.ai-accent--teal .ai-list li::marker { color: var(--aip-teal); }
.ai-accent--magenta .ai-list li::marker { color: var(--aip-magenta); }

.ai-list ul,
.ai-list ol {
  margin: 0;
  padding-left: 1.25rem;
}
.ai-list li + li { margin-top: 10px; }

.ai-rule-item {
  border-top: 1px solid var(--aip-border);
  padding-top: 20px;
}

.ai-media {
  display: flex !important;
  flex-direction: column;
  gap: 10px;
}

.ai-native-image .et_pb_image_wrap {
  border: 1px solid var(--aip-border);
  border-radius: 16px;
  display: block;
  overflow: hidden;
  width: 100%;
}

.ai-native-image img {
  aspect-ratio: 4 / 3;
  display: block;
  object-fit: cover;
  width: 100%;
}

.ai-page-hero .ai-native-image img { aspect-ratio: 5 / 4; }
.ai-programme-detail-media--portrait .ai-native-image img { aspect-ratio: 4 / 5; }
.ai-ratio--5-4 .ai-native-image img { aspect-ratio: 5 / 4; }
.ai-ratio--4-3 .ai-native-image img { aspect-ratio: 4 / 3; }
.ai-ratio--4-5 .ai-native-image img { aspect-ratio: 4 / 5; }
.ai-ratio--16-9 .ai-native-image img { aspect-ratio: 16 / 9; }
.ai-ratio--16-10 .ai-native-image img { aspect-ratio: 16 / 10; }
.ai-ratio--1-1 .ai-native-image img { aspect-ratio: 1 / 1; }
.ai-figcaption p,
.ai-caption p { font-size: 12px; line-height: 1.5; }

.ai-icon { flex: 0 0 20px; margin: 0; width: 20px; }
.ai-icon .et_pb_image_wrap,
.ai-icon img { border: 0; border-radius: 0; height: 20px; width: 20px; }

#main-content .ai-button.et_pb_button {
  align-items: center;
  border-style: solid;
  border-width: 0;
  border-radius: 999px;
  display: inline-flex;
  font: 600 14px/20px Manrope, sans-serif !important;
  justify-content: center;
  letter-spacing: 0;
  margin: 0 !important;
  min-height: 44px;
  max-width: 100%;
  padding: 12px 24px;
  text-transform: none;
  white-space: normal;
  opacity: 1;
  transform: none;
  visibility: visible;
}

#main-content .ai-button.et_pb_button:hover { border-radius: 999px; padding: 12px 24px; transform: none; }
#main-content .ai-button-composite .ai-button.et_pb_button:hover { padding-right: 46px; }
#main-content .ai-button--primary.et_pb_button { background: var(--aip-magenta); border-color: var(--aip-magenta); color: #fff !important; }
#main-content .ai-button--teal.et_pb_button { background: var(--aip-teal); border-color: var(--aip-teal); color: #fff !important; }
#main-content .ai-button--navy.et_pb_button { background: var(--aip-navy); border-color: var(--aip-navy); color: #fff !important; }
#main-content .ai-button--outline.et_pb_button { background: transparent; border-color: oklch(30.12% .0562 276.88 / .25); border-width: 1px; color: var(--aip-navy) !important; }
#main-content .ai-button--primary.et_pb_button:hover { background: oklch(50.91% .224 8.98 / .9); color: #fff !important; }
#main-content .ai-button--teal.et_pb_button:hover { background: oklch(53.92% .1096 211.56 / .9); color: #fff !important; }
#main-content .ai-button--navy.et_pb_button:hover { background: var(--aip-navy-deep); color: #fff !important; }
#main-content .ai-button--outline.et_pb_button:hover { background: oklch(30.12% .0562 276.88 / .05); border-color: oklch(30.12% .0562 276.88 / .25); color: var(--aip-navy) !important; }
#main-content .ai-text-link.et_pb_button,
#main-content .ai-text-link.et_pb_button:hover {
  background: transparent;
  border: 0;
  border-radius: 0;
  font: 600 14px/20px Manrope, sans-serif !important;
  min-height: 20px;
  padding: 0 22px 0 0;
  text-decoration: none;
}
#main-content .ai-text-link.et_pb_button:hover { text-decoration: underline; text-underline-offset: 4px; }
#main-content .ai-text-link--teal.et_pb_button { color: var(--aip-teal) !important; }
#main-content .ai-text-link--magenta.et_pb_button { color: var(--aip-magenta) !important; }
#main-content .ai-text-link--navy.et_pb_button { color: var(--aip-navy) !important; }
#main-content .ai-text-link-composite .ai-text-link.et_pb_button:hover { padding-right: 22px; }
#main-content .ai-filter-button.et_pb_button,
#main-content .ai-filter-button.et_pb_button:hover { min-height: 38px; padding: 8px 16px; }

.ai-data-table { overflow-x: auto; }
.ai-data-table table { border-collapse: collapse; min-width: 620px; width: 100%; }
.ai-data-table caption { color: var(--aip-navy); font: 500 24px/1.3 Newsreader, serif; padding-bottom: 18px; text-align: left; }
.ai-data-table th,
.ai-data-table td { border-bottom: 1px solid var(--aip-border); color: var(--aip-muted); font: 400 14px/1.5 Manrope, sans-serif; padding: 14px 12px; text-align: left; }
.ai-data-table th { color: var(--aip-navy); font-weight: 700; }

.ai-form-shell {
  background: #fff;
  border: 1px solid var(--aip-border);
  border-radius: 24px;
  padding: 32px;
}
.ai-form-status { background: var(--aip-magenta-soft); border-radius: 12px; margin-bottom: 20px; padding: 14px; }
.ai-form-status p { color: var(--aip-muted); font: 500 13px/1.5 Manrope, sans-serif; margin: 0; }
.ai-form-field + .ai-form-field { margin-top: 16px; }
.ai-form-field__label p { color: var(--aip-navy); font: 600 13px/1.5 Manrope, sans-serif; margin: 0 0 7px; }
.ai-form-field__control { background: #fff; border: 1px solid oklch(84.79% .0125 84.58); border-radius: 12px; min-height: 48px; }
.ai-form-submit { margin-top: 20px !important; }

.ai-cf7-form {
  background: #fff;
  border: 1px solid var(--aip-border);
  border-radius: 24px;
  padding: 32px;
}
.ai-cf7-form .wpcf7-form { display: flex; flex-direction: column; gap: 24px; }
.ai-cf7-form .wpcf7-form > p,
.ai-cf7-form .ai-cf7-grid > p { display: contents; }
.ai-cf7-form .wpcf7-form > br,
.ai-cf7-form .ai-cf7-grid > br,
.ai-cf7-form .wpcf7-form > p > br,
.ai-cf7-form .ai-cf7-grid > p > br { display: none; }
.ai-cf7-form .wpcf7-spinner { position: absolute; }
.ai-cf7-form .ai-cf7-grid { display: grid; gap: 24px; }
.ai-cf7-form .ai-cf7-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ai-cf7-form label { color: var(--aip-navy); display: block; font: 600 14px/1.5 Manrope, sans-serif; }
.ai-cf7-form label > br { display: none; }
.ai-cf7-form small,
.ai-cf7-form .ai-cf7-optional { color: var(--aip-muted); display: block; font: 400 12px/1.5 Manrope, sans-serif; margin: 3px 0 7px; }
.ai-cf7-form .wpcf7-form-control-wrap { display: block; margin-top: 7px; }
.ai-cf7-form input:not([type="checkbox"]):not([type="submit"]),
.ai-cf7-form select,
.ai-cf7-form textarea {
  background: #fff;
  border: 1px solid oklch(84.79% .0125 84.58);
  border-radius: 12px;
  box-shadow: none;
  color: var(--aip-navy);
  font: 400 14px/1.5 Manrope, sans-serif;
  min-height: 48px;
  padding: 12px 14px;
  width: 100%;
}
.ai-cf7-form textarea { height: 128px; min-height: 128px; resize: vertical; }
.ai-cf7-form input:focus,
.ai-cf7-form select:focus,
.ai-cf7-form textarea:focus {
  border-color: var(--aip-teal) !important;
  box-shadow: 0 0 0 3px rgba(13, 128, 120, .22) !important;
  outline: 2px solid var(--aip-teal) !important;
  outline-offset: 2px;
}
.ai-cf7-form .wpcf7-acceptance .wpcf7-list-item { margin: 0; }
.ai-cf7-form .wpcf7-acceptance label { align-items: flex-start; display: flex; font-weight: 400; gap: 10px; }
.ai-cf7-form .wpcf7-acceptance input { accent-color: var(--aip-teal); flex: 0 0 auto; margin-top: 4px; }
.ai-cf7-form input[type="submit"] {
  align-self: flex-start;
  background: var(--aip-navy);
  border: 1px solid var(--aip-navy);
  border-radius: 999px;
  color: #fff;
  cursor: pointer;
  font: 700 14px/1.2 Manrope, sans-serif;
  min-height: 44px;
  padding: 12px 24px;
}
.ai-cf7-form input[type="submit"]:hover { background: oklch(30.12% .0562 276.88 / .9); border-color: var(--aip-navy); }
.ai-cf7-form input[type="submit"]:disabled { cursor: wait; opacity: .65; }
.ai-cf7-form .wpcf7-not-valid-tip { color: var(--aip-magenta); font: 600 12px/1.4 Manrope, sans-serif; margin-top: 5px; }
.ai-cf7-form .wpcf7-response-output { border: 1px solid var(--aip-border) !important; border-radius: 12px; color: var(--aip-muted); font: 500 13px/1.5 Manrope, sans-serif; margin: 0 !important; padding: 12px 14px !important; }
.ai-cf7-form form.sent .wpcf7-response-output { background: var(--aip-teal-soft); border-color: var(--aip-teal) !important; }
.ai-cf7-form form.invalid .wpcf7-response-output,
.ai-cf7-form form.unaccepted .wpcf7-response-output { background: var(--aip-magenta-soft); border-color: var(--aip-magenta) !important; }

.ai-page-faq { border-bottom: 1px solid var(--aip-border); border-top: 1px solid var(--aip-border); }
.ai-page-faq__item.et_pb_toggle { background: transparent; border: 0; border-bottom: 1px solid var(--aip-border); gap: 0 !important; margin: 0; padding: 20px 0; }
.ai-page-faq__item .et_pb_toggle_title { color: var(--aip-navy); font: 500 18px/28px Newsreader, Georgia, serif; padding: 0 36px 0 0; }
.ai-page-faq__item .et_pb_toggle_content { color: var(--aip-muted); font: 400 16px/26px Manrope, sans-serif; max-width: 68ch; padding: 16px 36px 4px 0; }
.ai-page-faq__item.et_pb_toggle_close .et_pb_toggle_content { display: none !important; }
.ai-page-faq__item .et_pb_toggle_title::before,
.ai-faq__item .et_pb_toggle_title::before {
  background: currentColor;
  content: "" !important;
  display: block !important;
  height: 20px;
  -webkit-mask: url("../icons/plus.svg") center / contain no-repeat;
  mask: url("../icons/plus.svg") center / contain no-repeat;
  margin-top: -10px;
  right: 0;
  width: 20px;
}
.ai-page-faq__item.et_pb_toggle_open .et_pb_toggle_title::before,
.ai-faq__item.et_pb_toggle_open .et_pb_toggle_title::before { -webkit-mask-image: url("../icons/minus.svg"); mask-image: url("../icons/minus.svg"); }

@media (max-width: 1279px) {
  #main-content .ai-native-page-row.et_pb_row,
  #main-content .ai-route-breadcrumbs .et_pb_row { padding-inline: 32px; }
  .ai-native-page-section { padding-block: 88px !important; }
}

@media (min-width: 1024px) {
  .ai-lg-col-span--2 { grid-column: span 2; }
  .ai-lg-gap--2 { gap: 8px; }
  .ai-lg-gap--3 { gap: 12px; }
  .ai-lg-gap--4 { gap: 16px; }
  .ai-lg-gap--5 { gap: 20px; }
  .ai-lg-gap--6 { gap: 24px; }
  .ai-lg-gap--8 { gap: 32px; }
  .ai-lg-gap--10 { gap: 40px; }
  .ai-lg-gap--12 { gap: 48px; }
  .ai-lg-gap--16 { gap: 64px; }
}

@media (max-width: 1023px) {
  .ai-grid-at--lg { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 767px) {
  .ai-grid-at--md { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 639px) {
  .ai-grid-at--sm { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 980px) {
  .ai-page-hero .ai-container.ai-layout-grid,
  .ai-page-hero > .et_pb_row > .ai-column > .ai-layout-grid,
  .ai-grid--3,
  .ai-grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ai-heading--h1 h1 { font-size: 48px; }
  .ai-heading--h2 h2 { font-size: 36px; }
  .ai-cf7-form .ai-cf7-grid--2 { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 600px) {
  #main-content .ai-native-page-row.et_pb_row,
  #main-content .ai-route-breadcrumbs .et_pb_row { padding-inline: 20px; }
  .ai-native-page-section { padding-block: 64px !important; }
  .ai-page-hero { padding-block: 48px !important; }
  .ai-page-hero .ai-container.ai-layout-grid,
  .ai-page-hero > .et_pb_row > .ai-column > .ai-layout-grid,
  .ai-grid--2,
  .ai-grid--3,
  .ai-grid--4 { grid-template-columns: minmax(0, 1fr); }
  .ai-heading--h1 h1 { font-size: 36px; }
  .ai-heading--h2 h2 { font-size: 30px; }
  .ai-heading--h3 h3 { font-size: 21px; }
  .ai-page-hero .ai-copy p,
  .ai-copy p,
  .ai-list,
  .ai-list li { font-size: 15px; }
  .ai-card,
  .ai-article,
  .ai-form-shell,
  .ai-cf7-form { padding: 22px; }
  .ai-cf7-form .ai-cf7-grid--2 { grid-template-columns: minmax(0, 1fr); }
}
