/*! tailwindcss v4.3.5 | MIT License | https://tailwindcss.com */
/*!
Theme Name: Kingfisher Child
Author: iClicks
Author URI: https://www.iclicks.nl/
Version: 5.5.022
Template: kingfisher
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: kfi-child
*/
:root, :host {
  --font-sans: 'Inter', Arial, sans-serif;
  --font-heading: 'Inter', Arial, sans-serif;
  --font-display: Impact, 'Anton', 'Arial Narrow', 'Franklin Gothic Heavy', sans-serif;
  --breakpoint-xl: 1340px;
  --color-primary: #c28aff;
  --color-primary-50: #f8f1ff;
  --color-primary-100: #efe0ff;
  --color-primary-200: #e2c8ff;
  --color-primary-300: #d2a9ff;
  --color-primary-400: #c28aff;
  --color-primary-500: #a96ef0;
  --color-primary-600: #8e52d6;
  --color-primary-700: #6f3bb0;
  --color-primary-800: #52298a;
  --color-primary-900: #401369;
  --color-primary-950: #21102e;
  --color-dd-bg: #08080b;
  --color-dd-panel: #15121a;
  --color-dd-panel-2: #100e14;
  --color-dd-line: #33283e;
  --color-dd-white: #faf8fc;
  --color-dd-muted: #c1bacb;
  --color-dd-ink: #17101f;
  --color-dd-input: #0b0a0e;
  --color-dd-input-line: #4a3b55;
  --color-body: #c1bacb;
  --color-body-hover: #faf8fc;
}
@layer dd {
  :root {
    --bg: #08080b;
    --panel: #15121a;
    --panel2: #100e14;
    --lav: #c28aff;
    --lav2: #d2a9ff;
    --white: #faf8fc;
    --muted: #c1bacb;
    --line: #33283e;
    --ink: #17101f;
    --input: #0b0a0e;
    --inputline: #4a3b55;
  }
  html {
    scroll-behavior: smooth;
    scroll-padding-top: 90px;
  }
  body, body.bg-white {
    background: var(--color-dd-bg);
    color: var(--color-dd-white);
    font-family: var(--font-sans);
    line-height: 1.55;
  }
  ::selection {
    background: var(--color-primary);
    color: var(--color-dd-ink);
  }
  :focus-visible {
    outline: 3px solid var(--color-primary);
    outline-offset: 3px;
  }
  h1, h2, h3, h4, h5, h6 {
    color: var(--color-dd-white);
    font-family: var(--font-heading);
  }
  .skip-link:focus {
    z-index: 100;
    background: var(--color-primary);
    color: var(--color-dd-ink);
  }
  .dd2-wrap {
    width: min(1160px, 92%);
    margin-inline: auto;
  }
  .dd2-section {
    padding: 76px 0;
  }
  .dd2-eyebrow {
    margin: 0;
    color: var(--color-primary);
    font-size: 0.78rem;
    font-weight: 900;
    letter-spacing: 0.3em;
    text-transform: uppercase;
  }
  .dd2-h2 {
    margin: 9px 0 14px;
    color: var(--color-dd-white);
    font-size: clamp(2rem, 5vw, 3.8rem);
    font-weight: 800;
    line-height: 0.97;
    letter-spacing: -0.05em;
    text-transform: uppercase;
  }
  .dd2-h2 span, .dd2-hero__title span {
    color: var(--color-primary);
  }
  .dd2-muted {
    max-width: 570px;
    margin: 0 0 14px;
    color: var(--color-dd-muted);
  }
  .dd2-small {
    margin: 0;
    font-size: 0.82rem;
  }
  .dd2-tag {
    margin: 0 0 10px;
    color: var(--color-primary);
    font-size: 0.75rem;
    font-weight: 900;
    letter-spacing: 0.13em;
    text-transform: uppercase;
  }
  .dd2-head {
    display: flex;
    gap: 22px;
    align-items: end;
    justify-content: space-between;
    margin-bottom: 28px;
  }
  .dd2-head__intro {
    margin-bottom: 18px;
  }
  .dd2-two {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 38px;
    align-items: center;
  }
  .dd2-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 28px;
  }
  .dd2-btn, .btn, .btn.btn-primary, .btn.btn-white, .btn.btn-black {
    display: inline-flex;
    gap: 6px;
    align-items: center;
    justify-content: center;
    min-height: 0;
    padding: 12px 19px;
    border: 1px solid var(--color-primary);
    border-radius: 999px;
    background: var(--color-primary);
    color: var(--color-dd-ink);
    cursor: pointer;
    font-family: var(--font-sans);
    font-size: 0.85rem;
    font-weight: 900;
    line-height: 1.2;
    text-decoration: none;
    text-transform: none;
    transition: transform 0.2s, background-color 0.2s, border-color 0.2s;
  }
  .dd2-btn:hover, .dd2-btn:focus-visible, .btn:hover, .btn:focus-visible {
    transform: translateY(-2px);
    border-color: var(--color-primary-300);
    background: var(--color-primary-300);
    color: var(--color-dd-ink);
  }
  .btn::before, .btn::after {
    content: none;
  }
  .btn > span {
    color: inherit;
  }
  .dd2-btn--white {
    border-color: #fff;
    background: #fff;
    color: #21102e;
    white-space: nowrap;
  }
  .dd2-btn--white:hover, .dd2-btn--white:focus-visible {
    border-color: var(--color-primary-100);
    background: var(--color-primary-100);
    color: #21102e;
  }
  .dd2-textlink, .btn.btn-primary-text {
    padding: 0;
    border: 0;
    border-radius: 0;
    background: none;
    color: var(--color-primary);
    font-weight: 900;
  }
  .dd2-textlink::after, .btn.btn-primary-text > span:first-child::after {
    content: ' →';
  }
  .dd2-textlink:hover, .dd2-textlink:focus-visible, .btn.btn-primary-text:hover, .btn.btn-primary-text:focus-visible {
    transform: none;
    border: 0;
    background: none;
    color: var(--color-primary-200);
    text-decoration: underline;
  }
  .dd-pagebanner {
    position: relative;
    height: clamp(180px, 22vw, 320px);
    overflow: hidden;
  }
  .dd-pagebanner::after {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgb(8 8 11 / 0.2), rgb(8 8 11 / 0.95));
    content: '';
  }
  .dd-pagebanner__image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .dd-crumbs {
    padding: 22px 0 0;
  }
  .dd-crumbs__list {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 0;
    padding: 0;
    color: var(--color-dd-muted);
    font-size: 0.82rem;
    list-style: none;
  }
  .dd-crumbs__list li + li::before {
    margin-right: 6px;
    content: '›';
  }
  .dd-crumbs__list a {
    color: var(--color-dd-white);
    text-decoration: none;
  }
  .dd-crumbs__list a:hover {
    color: var(--color-primary);
  }
  .dd-page {
    padding: 28px 0 76px;
  }
  .dd-page__inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 40px;
  }
  @media (min-width: 1024px) {
    .dd-page__inner {
      grid-template-columns: 300px minmax(0, 1fr);
      gap: 56px;
    }
    .dd-page__sidebar {
      grid-row: 1;
      grid-column: 1;
    }
    .dd-page__content {
      grid-row: 1;
      grid-column: 2;
    }
    .dd-page--full .dd-page__inner {
      grid-template-columns: minmax(0, 1fr);
    }
    .dd-page--full .dd-page__content {
      grid-column: 1;
    }
  }
  .dd-page__title {
    margin: 0 0 22px;
    color: var(--color-dd-white);
    font-size: clamp(2rem, 4.5vw, 3.2rem);
    font-weight: 800;
    line-height: 1;
    letter-spacing: -0.04em;
    text-transform: uppercase;
  }
  .dd-submenu, .dd-sidebar-contact {
    margin-bottom: 16px;
    padding: 22px;
    border: 1px solid var(--color-dd-line);
    border-radius: 15px;
    background: var(--color-dd-panel);
  }
  .dd-submenu ul {
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .dd-submenu ul ul {
    margin: 4px 0 6px 12px;
  }
  .dd-submenu a {
    display: block;
    padding: 7px 0;
    color: var(--color-dd-white);
    font-weight: 700;
    text-decoration: none;
  }
  .dd-submenu ul ul a {
    font-weight: 500;
  }
  .dd-submenu a:hover, .dd-submenu .is-current > a, .dd-submenu .is-ancestor > a {
    color: var(--color-primary);
  }
  .dd-sidebar-contact__title {
    margin: 0 0 10px;
    font-size: 1.1rem;
    font-weight: 800;
  }
  .dd-sidebar-contact__text {
    color: var(--color-dd-muted);
  }
  .dd-sidebar-contact__text a {
    color: var(--color-primary);
  }
  .dd-content {
    color: var(--color-dd-muted);
  }
  .dd-content > :first-child {
    margin-top: 0;
  }
  .dd-content h2, .dd-content h3, .dd-content h4 {
    margin: 1.6em 0 0.5em;
    color: var(--color-dd-white);
    font-weight: 800;
    line-height: 1.15;
  }
  .dd-content h2 {
    font-size: clamp(1.5rem, 3vw, 2rem);
  }
  .dd-content h3 {
    font-size: 1.25rem;
  }
  .dd-content p, .dd-content ul, .dd-content ol {
    margin: 0 0 1em;
  }
  .dd-content ul {
    padding-left: 1.2em;
    list-style: none;
  }
  .dd-content ul > li {
    position: relative;
    margin-bottom: 0.3em;
  }
  .dd-content ul > li::before {
    position: absolute;
    left: -1.1em;
    color: var(--color-primary);
    content: '✦';
    font-size: 0.75em;
    line-height: 2;
  }
  .dd-content ol {
    padding-left: 1.3em;
  }
  .dd-content a:not(.btn):not(.dd2-btn) {
    color: var(--color-primary);
    text-decoration: underline;
  }
  .dd-content strong {
    color: var(--color-dd-white);
  }
  .dd-content img {
    max-width: 100%;
    height: auto;
    border-radius: 12px;
  }
  .dd-content .alignleft {
    float: left;
    margin: 0 20px 12px 0;
  }
  .dd-content .alignright {
    float: right;
    margin: 0 0 12px 20px;
  }
  .dd-content .aligncenter {
    display: block;
    margin: 0 auto 16px;
  }
  :is(.dd-content, .dd2-prose) iframe {
    max-width: 100%;
  }
  .dd-content table {
    width: 100%;
    margin: 0 0 24px;
    border-collapse: collapse;
    font-size: 15px;
  }
  .dd-content th, .dd-content td {
    padding: 10px 12px;
    border-bottom: 1px solid var(--color-dd-line);
    text-align: left;
    vertical-align: top;
  }
  .dd-content th {
    color: var(--color-dd-white);
    font-weight: 800;
  }
  .dd-content tbody tr:nth-child(odd) td {
    background: rgb(255 255 255 / 0.03);
  }
  :is(.dd-content, .dd2-prose) .dd-table {
    margin: 0 0 24px;
    overflow-x: auto;
  }
  :is(.dd-content, .dd2-prose) .dd-table table {
    min-width: 520px;
    margin: 0;
  }
  :is(.dd-content, .dd2-prose) .gallery {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin: 0 0 28px;
  }
  :is(.dd-content, .dd2-prose) .gallery-item {
    width: auto !important;
    margin: 0 !important;
  }
  :is(.dd-content, .dd2-prose) .gallery img {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    border: 0 !important;
  }
  :is(.dd-content, .dd2-prose) .dd-logo-row {
    display: flex;
    flex-wrap: wrap;
    gap: 20px 32px;
    align-items: center;
    margin: 8px 0 28px;
  }
  :is(.dd-content, .dd2-prose) .dd-logo-row img {
    width: auto;
    max-height: 120px;
    border-radius: 8px;
  }
  .dd-video {
    position: relative;
    margin: 0 0 24px;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    border-radius: 14px;
  }
  .dd-video iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
  }
  .dd-cta {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: 28px 0 0;
  }
  .dd-cta .dd-btn-outline {
    border-color: var(--color-primary);
    background: transparent;
    color: var(--color-primary);
  }
  .dd-notice {
    margin: 0 0 24px;
    padding: 14px 18px;
    border: 1px solid var(--color-primary);
    border-radius: 10px;
    color: #f0eaf7;
  }
  .dd-teamgrid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 16px;
    margin-top: 28px;
  }
  .dd-teamcard {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid var(--color-dd-line);
    border-radius: 15px;
    background: var(--color-dd-panel);
  }
  .dd-teamcard__photo {
    display: block;
    aspect-ratio: 8 / 7;
    overflow: hidden;
  }
  .dd-teamcard__photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 0;
  }
  .dd-teamcard > :not(.dd-teamcard__photo) {
    margin-inline: 19px;
  }
  .dd-teamcard__name {
    margin: 16px 0 4px;
    font-size: 1.2rem;
    font-weight: 800;
    text-transform: uppercase;
  }
  .dd-teamcard__name a {
    color: var(--color-dd-white);
    text-decoration: none;
  }
  .dd-teamcard__role {
    margin: 0 0 4px;
    color: var(--color-primary);
    font-weight: 700;
  }
  .dd-teamcard__subjects, .dd-teamcard__teaser {
    margin: 0 0 8px;
    color: var(--color-dd-muted);
    font-size: 0.92rem;
  }
  .dd-teamcard__more {
    align-self: flex-start;
    margin-top: auto;
    margin-bottom: 19px;
  }
  .dd-docent__inner {
    max-width: 760px;
  }
  .dd-docent__photo img {
    max-width: 420px;
    width: 100%;
    height: auto;
    border-radius: 15px;
  }
  .dd-docent__role {
    color: var(--color-primary);
    font-weight: 700;
  }
  .dd-map {
    position: relative;
    width: 100%;
    margin: 0 0 32px;
    overflow: hidden;
    border: 1px solid var(--color-dd-line);
    border-radius: 15px;
    background: var(--color-dd-panel);
  }
  .dd-map__placeholder {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: center;
    justify-content: center;
    padding: 20px;
    background: repeating-linear-gradient(0deg, transparent 0 38px, #221b2b 38px 40px), repeating-linear-gradient(90deg, transparent 0 38px, #221b2b 38px 40px), var(--color-dd-panel);
    text-align: center;
  }
  .dd-map__note {
    max-width: 420px;
    margin: 0;
    color: var(--color-dd-muted);
    font-size: 14px;
    line-height: 20px;
  }
  .dd-map__note a {
    color: var(--color-primary);
    text-decoration: underline;
  }
  .dd-map iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
  }
  .dd-map.is-loaded .dd-map__placeholder {
    display: none;
  }
  .dd-search {
    display: flex;
    max-width: 448px;
    overflow: hidden;
    border: 1px solid var(--color-dd-input-line);
    border-radius: 999px;
    background: var(--color-dd-input);
  }
  .dd-search__input {
    flex: 1;
    min-width: 0;
    padding: 11px 16px;
    border: 0;
    background: transparent;
    color: var(--color-dd-white);
  }
  .dd-search__button {
    padding: 0 16px;
    border: 0;
    background: transparent;
    color: var(--color-primary);
    cursor: pointer;
  }
  .dd-search-page__count {
    margin: -8px 0 16px;
    color: var(--color-dd-muted);
  }
  .dd-search-page__form {
    margin: 0 0 40px;
  }
  .dd-results {
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .dd-result {
    padding: 22px 0;
    border-bottom: 1px solid var(--color-dd-line);
  }
  .dd-result:first-child {
    padding-top: 0;
  }
  .dd-result__title {
    margin: 0 0 4px;
    font-size: 1.35rem;
    font-weight: 800;
  }
  .dd-result__title a {
    color: var(--color-dd-white);
    text-decoration: none;
  }
  .dd-result__title a:hover {
    color: var(--color-primary);
  }
  .dd-result__trail {
    margin: 0 0 8px;
    color: #8f879b;
    font-size: 0.82rem;
  }
  .dd-result__excerpt {
    margin: 0 0 10px;
    color: var(--color-dd-muted);
  }
  .dd-result mark {
    padding: 0 2px;
    border-radius: 3px;
    background: rgb(194 138 255 / 0.25);
    color: var(--color-dd-white);
  }
  .dd-pagination ul {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 32px 0 0;
    padding: 0;
    list-style: none;
  }
  .dd-pagination .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    height: 40px;
    padding: 0 12px;
    border: 1px solid var(--color-dd-line);
    border-radius: 999px;
    color: var(--color-dd-white);
    font-weight: 800;
    text-decoration: none;
  }
  .dd-pagination .page-numbers.current {
    border-color: var(--color-primary);
    background: var(--color-primary);
    color: var(--color-dd-ink);
  }
  .dd2-wrap {
    width: min(1160px,92%);
    margin-inline: auto;
  }
  .dd2-section {
    padding: 76px 0;
  }
  .dd2-eyebrow {
    margin: 0;
    color: var(--lav);
    font-size: .78rem;
    font-weight: 900;
    letter-spacing: .3em;
    text-transform: uppercase;
  }
  .dd2-h2 {
    margin: 9px 0 14px;
    font-size: clamp(2rem,5vw,3.8rem);
    font-weight: 800;
    line-height: .97;
    letter-spacing: -.05em;
    text-transform: uppercase;
  }
  .dd2-h2 span,.dd2-pagehero__title span,.dd2-hero__title span {
    color: var(--lav);
  }
  .dd2-muted {
    max-width: 570px;
    margin: 0 0 14px;
    color: var(--muted);
  }
  .dd2-small {
    margin: 0;
    font-size: .82rem;
  }
  .dd2-tag {
    margin: 0 0 10px;
    color: var(--lav);
    font-size: .75rem;
    font-weight: 900;
    letter-spacing: .13em;
    text-transform: uppercase;
  }
  .dd2-head {
    display: flex;
    gap: 22px;
    align-items: end;
    justify-content: space-between;
    margin-bottom: 28px;
  }
  .dd2-two {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 38px;
    align-items: center;
  }
  .dd2-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 28px;
  }
  .dd2-btn {
    display: inline-flex;
    gap: 6px;
    align-items: center;
    justify-content: center;
    padding: 12px 19px;
    border: 1px solid var(--lav);
    border-radius: 999px;
    background: var(--lav);
    color: var(--ink);
    cursor: pointer;
    font-size: .85rem;
    font-weight: 900;
    line-height: 1.2;
    transition: transform .2s,background-color .2s;
  }
  .dd2-btn:hover,.dd2-btn:focus-visible {
    transform: translateY(-2px);
    background: var(--lav2);
    border-color: var(--lav2);
  }
  .dd2-btn--ghost {
    background: rgb(8 8 11/.5);
    color: var(--white);
    backdrop-filter: blur(5px);
  }
  .dd2-btn--ghost:hover {
    color: var(--ink);
  }
  .dd2-btn--white {
    background: #fff;
    border-color: #fff;
    color: #21102e;
    white-space: nowrap;
  }
  .dd2-textlink {
    color: var(--lav);
    font-weight: 900;
  }
  .dd2-textlink::after {
    content: none;
  }
  .dd2-textlink:hover {
    color: var(--lav2);
    text-decoration: underline;
  }
  .dd2-header {
    position: relative;
    border-bottom: 1px solid #2c2434;
    background: rgb(9 8 13/.93);
    backdrop-filter: blur(12px);
  }
  .dd2-header__bar {
    display: flex;
    gap: 14px;
    align-items: center;
    justify-content: space-between;
    min-height: 76px;
  }
  .dd2-header__logo img {
    width: clamp(165px,19vw,245px);
    max-height: 68px;
    height: auto;
    object-fit: contain;
  }
  .dd2-nav__list {
    display: flex;
    gap: clamp(9px,1.3vw,22px);
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .dd2-nav__list a {
    color: var(--white);
    font-size: .78rem;
    font-weight: 900;
    text-transform: uppercase;
  }
  .dd2-nav__list a:hover,.dd2-nav__list a[aria-current] {
    color: var(--lav);
  }
  .dd2-header__toggle {
    display: none;
  }
  .dd2-pagehero {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    padding: 70px 0 64px;
    border-bottom: 1px solid var(--line);
  }
  .dd2-pagehero__bg {
    position: absolute;
    inset: 0;
    z-index: -2;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 40%;
  }
  .dd2-pagehero::before {
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(90deg,rgb(8 8 11/.93),rgb(8 8 11/.7) 60%,rgb(8 8 11/.45));
    content: '';
  }
  .dd2-crumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 0 0 26px;
    padding: 0;
    color: var(--muted);
    font-size: .8rem;
    list-style: none;
  }
  .dd2-crumbs li+li::before {
    margin-right: 6px;
    content: '›';
  }
  .dd2-crumbs a:hover {
    color: var(--lav);
  }
  .dd2-pagehero__title {
    margin: 12px 0 18px;
    font-family: Impact,'Anton','Arial Narrow',sans-serif;
    font-size: clamp(3rem,8vw,6.2rem);
    font-stretch: condensed;
    font-weight: 900;
    line-height: .91;
    letter-spacing: .015em;
    text-transform: uppercase;
    text-shadow: 0 3px 22px rgb(0 0 0/.65);
  }
  .dd2-pagehero__lead {
    max-width: 600px;
    margin: 0;
    color: #e1dbe8;
    font-size: clamp(1.02rem,1.8vw,1.2rem);
  }
  .dd2-facts {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 26px 0 0;
    padding: 0;
    list-style: none;
  }
  .dd2-fact {
    display: flex;
    gap: 10px;
    align-items: center;
    padding: 10px 14px;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: rgb(21 18 26/.75);
    backdrop-filter: blur(6px);
  }
  .dd2-fact b {
    display: block;
    font-size: .7rem;
    color: var(--lav);
    letter-spacing: .12em;
    text-transform: uppercase;
  }
  .dd2-fact span {
    font-weight: 800;
    font-size: .92rem;
  }
  .dd2-fact__icon {
    color: var(--lav);
    font-size: 1.25rem;
  }
  .dd2-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 24px;
    padding: 0;
    list-style: none;
  }
  .dd2-filter {
    padding: 8px 14px;
    border: 1px solid var(--lav);
    border-radius: 99px;
    background: transparent;
    color: #eae4f3;
    cursor: pointer;
    font-size: .82rem;
    font-weight: 800;
  }
  .dd2-filter[aria-pressed=true] {
    background: var(--lav);
    color: var(--ink);
  }
  .dd2-filter:hover {
    border-color: var(--lav2);
  }
  .dd2-cards {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 16px;
  }
  .dd2-cards--4 {
    grid-template-columns: repeat(4,1fr);
  }
  .dd2-card {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 15px;
    background: var(--panel);
    transition: transform .2s,border-color .2s;
  }
  .dd2-card:hover {
    transform: translateY(-2px);
    border-color: var(--lav);
  }
  .dd2-card[hidden] {
    display: none;
  }
  .dd2-card__photo {
    position: relative;
    aspect-ratio: 3/2;
    overflow: hidden;
    background: #120c1b;
  }
  .dd2-card__photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .dd2-card__photo--empty {
    display: flex;
    align-items: center;
    justify-content: center;
    background: radial-gradient(circle at 75% 20%,#7b4bb466,transparent 45%),linear-gradient(140deg,#30283e,#0d0b12 70%);
  }
  .dd2-card__ph {
    font-family: Impact,'Anton',sans-serif;
    font-size: 2.4rem;
    letter-spacing: .04em;
    color: #c28aff33;
    text-transform: uppercase;
  }
  .dd2-card__badge {
    position: absolute;
    left: 12px;
    top: 12px;
    padding: 4px 10px;
    border-radius: 99px;
    background: rgb(8 8 11/.75);
    color: #f0eaf7;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .06em;
  }
  .dd2-card__body {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 19px;
  }
  .dd2-card__title {
    margin: 0 0 7px;
    font-size: 1.3rem;
    font-weight: 800;
    text-transform: uppercase;
  }
  .dd2-card__text {
    margin: 0 0 14px;
    color: var(--muted);
  }
  .dd2-card__body .dd2-textlink {
    margin-top: auto;
  }
  .dd2-card__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 0 0 14px;
    padding: 0;
    list-style: none;
  }
  .dd2-card__meta li {
    padding: 3px 9px;
    border: 1px solid var(--line);
    border-radius: 99px;
    color: var(--muted);
    font-size: .74rem;
    font-weight: 700;
  }
  .dd2-panel {
    padding: 30px;
    border: 1px solid var(--line);
    border-radius: 18px;
    background: linear-gradient(135deg,#21132e,#100e14);
  }
  .dd2-panel h3 {
    margin: 10px 0 8px;
    font-size: 1.2rem;
  }
  .dd2-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 6px;
    padding: 0;
    list-style: none;
  }
  .dd2-pill {
    padding: 6px 11px;
    border: 1px solid var(--lav);
    border-radius: 99px;
    color: #eae4f3;
    font-size: .8rem;
    font-weight: 800;
  }
  .dd2-levels {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 16px;
  }
  .dd2-level {
    display: flex;
    flex-direction: column;
    padding: 24px;
    border: 1px solid var(--line);
    border-radius: 15px;
    background: var(--panel);
  }
  .dd2-level__num {
    color: var(--lav);
    font-size: 1.8rem;
    font-weight: 900;
    line-height: 1;
  }
  .dd2-level h3 {
    margin: 12px 0 6px;
    font-size: 1.15rem;
    text-transform: uppercase;
  }
  .dd2-level p {
    margin: 0 0 14px;
    color: var(--muted);
    font-size: .93rem;
  }
  .dd2-level .dd2-textlink {
    margin-top: auto;
    font-size: .9rem;
  }
  .dd2-level--hi {
    border-color: var(--lav);
    background: linear-gradient(160deg,#2b1640,#15121a 70%);
  }
  .dd2-steps {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 14px;
    margin: 0;
    padding: 0;
    list-style: none;
    counter-reset: s;
  }
  .dd2-step {
    padding: 22px;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: #111015;
    counter-increment: s;
  }
  .dd2-step::before {
    display: block;
    color: var(--lav);
    font-size: 1.8rem;
    font-weight: 900;
    content: '0' counter(s);
  }
  .dd2-step h3 {
    margin: 4px 0;
  }
  .dd2-step p {
    margin: 0;
    color: var(--muted);
  }
  .dd2-info {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
  }
  .dd2-info__card {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 26px;
    border: 1px solid var(--line);
    border-radius: 15px;
    background: var(--panel);
  }
  .dd2-info__big {
    font-size: 2.2rem;
    font-weight: 900;
    letter-spacing: -.03em;
  }
  .dd2-info__big small {
    font-size: .9rem;
    color: var(--muted);
    font-weight: 600;
  }
  .dd2-detail {
    display: grid;
    grid-template-columns: minmax(0,1fr) 360px;
    gap: 48px;
    align-items: start;
  }
  .dd2-prose {
    color: var(--muted);
    font-size: 1.02rem;
  }
  .dd2-prose h2 {
    margin: 0 0 14px;
    color: var(--white);
    font-size: clamp(1.6rem,3vw,2.2rem);
    font-weight: 800;
    line-height: 1.05;
    letter-spacing: -.03em;
    text-transform: uppercase;
  }
  .dd2-prose h2 span {
    color: var(--lav);
  }
  .dd2-prose p {
    margin: 0 0 1em;
  }
  .dd2-prose strong {
    color: var(--white);
  }
  .dd2-sidecard {
    position: sticky;
    top: 100px;
    padding: 24px;
    border: 1px solid var(--line);
    border-radius: 18px;
    background: linear-gradient(160deg,#21132e,#100e14 70%);
  }
  .dd2-sidecard h3 {
    margin: 8px 0 14px;
    font-size: 1.25rem;
  }
  .dd2-times {
    margin: 0 0 18px;
    padding: 0;
    list-style: none;
  }
  .dd2-times li {
    display: grid;
    grid-template-columns: 42px 1fr auto;
    gap: 10px;
    align-items: center;
    padding: 11px 0;
    border-bottom: 1px solid var(--line);
  }
  .dd2-times li:last-child {
    border-bottom: 0;
  }
  .dd2-times__day {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 10px;
    background: var(--lav);
    color: var(--ink);
    font-size: .8rem;
    font-weight: 900;
    text-transform: uppercase;
  }
  .dd2-times__time {
    font-weight: 800;
  }
  .dd2-times__group {
    display: block;
    color: var(--muted);
    font-size: .82rem;
    font-weight: 500;
  }
  .dd2-times__age {
    padding: 3px 9px;
    border: 1px solid var(--lav);
    border-radius: 99px;
    font-size: .74rem;
    font-weight: 800;
    white-space: nowrap;
  }
  .dd2-sidecard .dd2-btn {
    width: 100%;
    margin-top: 8px;
  }
  .dd2-sidecard__price {
    display: flex;
    justify-content: space-between;
    margin: 16px 0 0;
    padding-top: 14px;
    border-top: 1px solid var(--line);
    color: var(--muted);
    font-size: .88rem;
  }
  .dd2-sidecard__price b {
    color: var(--white);
  }
  .dd2-learn {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 14px;
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .dd2-learn li {
    padding: 22px;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: #111015;
  }
  .dd2-learn__icon {
    display: block;
    margin-bottom: 10px;
    color: var(--lav);
    font-size: 1.6rem;
    line-height: 1;
  }
  .dd2-learn h3 {
    margin: 0 0 6px;
    font-size: 1.02rem;
  }
  .dd2-learn p {
    margin: 0;
    color: var(--muted);
    font-size: .92rem;
  }
  .dd2-teacher {
    display: grid;
    grid-template-columns: 150px 1fr;
    gap: 24px;
    align-items: center;
  }
  .dd2-teacher__photo {
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 1;
    border-radius: 50%;
    background: linear-gradient(140deg,#7b4bb4,#21132e);
    font-size: 2.6rem;
    font-weight: 900;
    color: #fff;
    border: 3px solid var(--lav);
  }
  .dd2-teacher h3 {
    margin: 8px 0 4px;
    font-size: 1.4rem;
    text-transform: uppercase;
  }
  .dd2-teacher__role {
    margin: 0 0 10px;
    color: var(--lav);
    font-weight: 700;
  }
  .dd2-faq {
    border-top: 1px solid var(--line);
  }
  .dd2-faq details {
    border-bottom: 1px solid var(--line);
  }
  .dd2-faq summary {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    padding: 20px 0;
    cursor: pointer;
    font-weight: 800;
    font-size: 1.05rem;
    list-style: none;
  }
  .dd2-faq summary::-webkit-details-marker {
    display: none;
  }
  .dd2-faq summary::after {
    flex: none;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border: 1px solid var(--lav);
    border-radius: 50%;
    color: var(--lav);
    content: '+';
    transition: transform .2s;
  }
  .dd2-faq details[open] summary::after {
    transform: rotate(45deg);
  }
  .dd2-faq details p {
    margin: 0 0 20px;
    max-width: 760px;
    color: var(--muted);
  }
  .dd2-formbox {
    padding: 25px;
    border: 1px solid var(--line);
    border-radius: 16px;
    background: #141119;
  }
  .dd2-fieldgrid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 13px;
  }
  .dd2-field {
    display: flex;
    flex-direction: column;
    gap: 6px;
  }
  .dd2-field--full {
    grid-column: 1/-1;
  }
  .dd2-field label {
    font-size: .84rem;
    font-weight: 800;
  }
  .dd2-field input,.dd2-field select,.dd2-field textarea {
    width: 100%;
    padding: 12px;
    border: 1px solid var(--inputline);
    border-radius: 8px;
    background: var(--input);
    color: #fff;
  }
  .dd2-field textarea {
    min-height: 92px;
    resize: vertical;
  }
  .dd2-formbox .dd2-btn {
    width: 100%;
  }
  .dd2-cta {
    display: flex;
    gap: 24px;
    align-items: center;
    justify-content: space-between;
    padding: 42px;
    border-radius: 20px;
    background: linear-gradient(110deg,#401369,#c28aff);
  }
  .dd2-cta .dd2-eyebrow {
    color: #f0dfff;
  }
  .dd2-cta .dd2-h2 {
    max-width: 700px;
    margin-bottom: 8px;
  }
  .dd2-cta .dd2-h2 span {
    color: #e9d3ff;
  }
  .dd2-cta p {
    margin: 0;
  }
  .dd2-footer {
    padding: 32px 0;
    border-top: 1px solid var(--line);
    color: var(--muted);
  }
  .dd2-footer__inner {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: space-between;
  }
  .dd2-footer__name {
    margin: 0;
    color: #fff;
    font-weight: 700;
  }
  .dd2-footer a:hover {
    color: var(--lav);
  }
  .dd2-note {
    margin: 0 0 0;
    padding: 10px 14px;
    border: 1px dashed var(--lav);
    border-radius: 10px;
    color: #e9d3ff;
    font-size: .8rem;
  }
  @media (max-width:1050px) {
    .dd2-levels,.dd2-learn,.dd2-cards--4 {
      grid-template-columns: 1fr 1fr;
    }
    .dd2-detail {
      grid-template-columns: 1fr;
    }
    .dd2-sidecard {
      position: static;
    }
  }
  @media (max-width:800px) {
    .dd2-nav,.dd2-header__cta {
      display: none;
    }
    .dd2-header__toggle {
      display: inline-flex;
    }
    .dd2-cards {
      grid-template-columns: 1fr 1fr;
    }
    .dd2-two,.dd2-info {
      grid-template-columns: 1fr;
    }
    .dd2-cta {
      display: block;
    }
    .dd2-cta .dd2-btn {
      margin-top: 18px;
    }
    .dd2-steps {
      grid-template-columns: 1fr;
    }
  }
  @media (max-width:520px) {
    .dd2-section {
      padding: 55px 0;
    }
    .dd2-head {
      display: block;
    }
    .dd2-cards,.dd2-cards--4,.dd2-levels,.dd2-learn,.dd2-fieldgrid {
      grid-template-columns: 1fr;
    }
    .dd2-header__logo img {
      width: 150px;
    }
    .dd2-cta {
      padding: 26px;
    }
    .dd2-teacher {
      grid-template-columns: 1fr;
    }
    .dd2-teacher__photo {
      width: 120px;
    }
    .dd2-pagehero {
      padding: 44px 0 40px;
    }
  }
  @media (prefers-reduced-motion:reduce) {
    html {
      scroll-behavior: auto;
    }
    * {
      transition: none !important;
    }
  }
  .dd2-toolbar {
    position: sticky;
    top: 77px;
    z-index: 20;
    margin: 0 0 28px;
    padding: 14px;
    border: 1px solid var(--line);
    border-radius: 16px;
    background: rgb(20 17 25/.94);
    backdrop-filter: blur(10px);
  }
  .dd2-days {
    display: flex;
    gap: 6px;
    margin: 0 0 12px;
    padding: 0;
    list-style: none;
    overflow-x: auto;
    scrollbar-width: none;
  }
  .dd2-days::-webkit-scrollbar {
    display: none;
  }
  .dd2-day {
    position: relative;
    flex: none;
    min-width: 64px;
    padding: 10px 14px;
    border: 1px solid var(--line);
    border-radius: 10px;
    background: #1c1523;
    color: var(--white);
    cursor: pointer;
    font-weight: 800;
    font-size: .85rem;
    white-space: nowrap;
  }
  .dd2-day[aria-pressed=true] {
    border-color: var(--lav);
    background: var(--lav);
    color: var(--ink);
  }
  .dd2-day.is-today::after {
    position: absolute;
    top: 6px;
    right: 6px;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #7be3a5;
    content: '';
  }
  .dd2-toolbar__row {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
  }
  .dd2-toolbar select,.dd2-toolbar input {
    padding: 10px 12px;
    border: 1px solid var(--inputline);
    border-radius: 999px;
    background: var(--input);
    color: #fff;
    font-size: .85rem;
  }
  .dd2-toolbar input {
    flex: 1;
    min-width: 180px;
  }
  .dd2-toolbar__count {
    margin-left: auto;
    color: var(--muted);
    font-size: .85rem;
    font-weight: 700;
  }
  .dd2-levelchips {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .dd2-levelchip {
    padding: 8px 12px;
    border: 1px solid var(--lav);
    border-radius: 99px;
    background: transparent;
    color: #eae4f3;
    cursor: pointer;
    font-size: .8rem;
    font-weight: 800;
  }
  .dd2-levelchip[aria-pressed=true] {
    background: var(--lav);
    color: var(--ink);
  }
  .dd2-dayblock {
    margin: 0 0 34px;
  }
  .dd2-dayblock[hidden] {
    display: none;
  }
  .dd2-dayblock__head {
    display: flex;
    align-items: baseline;
    gap: 12px;
    margin: 0 0 12px;
  }
  .dd2-dayblock__head h2 {
    margin: 0;
    font-size: 1.6rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: -.02em;
  }
  .dd2-dayblock__head span {
    color: var(--muted);
    font-size: .85rem;
    font-weight: 700;
  }
  .dd2-today {
    padding: 3px 9px;
    border-radius: 99px;
    background: #7be3a5;
    color: #0b2416 !important;
    font-size: .72rem !important;
    font-weight: 900 !important;
    letter-spacing: .06em;
    text-transform: uppercase;
  }
  .dd2-lessons {
    margin: 0;
    padding: 0;
    list-style: none;
    border: 1px solid var(--line);
    border-radius: 15px;
    overflow: hidden;
    background: var(--panel);
  }
  .dd2-lesson {
    display: grid;
    grid-template-columns: 120px minmax(0,1.6fr) 130px 1.2fr 130px;
    gap: 14px;
    align-items: center;
    padding: 14px 18px;
    border-top: 1px solid var(--line);
  }
  .dd2-lesson:first-child {
    border-top: 0;
  }
  .dd2-lesson[hidden] {
    display: none;
  }
  .dd2-lesson:hover {
    background: #1b1622;
  }
  .dd2-lesson__time {
    font-weight: 600;
    font-variant-numeric: tabular-nums;
  }
  .dd2-lesson__time small {
    display: block;
    color: var(--muted);
    font-size: .75rem;
    font-weight: 600;
  }
  .dd2-lesson__title {
    font-weight: 500;
    font-size: 1.02rem;
  }
  .dd2-lesson__title a:hover {
    color: var(--lav);
  }
  .dd2-lesson__age {
    display: block;
    color: var(--muted);
    font-size: .82rem;
  }
  .dd2-badge {
    justify-self: start;
    padding: 4px 10px;
    border-radius: 99px;
    font-size: .74rem;
    font-weight: 800;
    border: 1px solid var(--line);
  }
  .dd2-badge--recreatie {
    border-color: #c28aff;
    color: #e9d3ff;
  }
  .dd2-badge--selectie {
    border-color: #7fb3ff;
    color: #cfe2ff;
  }
  .dd2-badge--topselectie {
    border-color: #ffcf6e;
    color: #ffe8b8;
  }
  .dd2-badge--wedstrijdteam {
    border-color: #7be3a5;
    color: #c9f5da;
  }
  .dd2-badge--overig {
    color: var(--muted);
  }
  .dd2-lesson__teacher {
    color: var(--muted);
    font-size: .88rem;
  }
  .dd2-lesson__cta {
    justify-self: end;
    font-size: .85rem;
  }
  .dd2-lesson__cta--muted {
    color: var(--muted);
    font-size: .8rem;
    font-weight: 600;
  }
  .dd2-empty {
    padding: 28px;
    border: 1px dashed var(--line);
    border-radius: 15px;
    color: var(--muted);
    text-align: center;
  }
  .dd2-legend {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 16px;
    align-items: center;
    margin: 0 0 6px;
    color: var(--muted);
    font-size: .82rem;
  }
  @media (max-width:900px) {
    .dd2-lesson {
      grid-template-columns: 96px 1fr auto;
      grid-template-areas: 'time title badge' 'time teacher cta';
    }
    .dd2-lesson__time {
      grid-area: time;
    }
    .dd2-lesson__main {
      grid-area: title;
    }
    .dd2-badge {
      grid-area: badge;
      justify-self: end;
    }
    .dd2-lesson__teacher {
      grid-area: teacher;
    }
    .dd2-lesson__cta {
      grid-area: cta;
    }
  }
  @media (max-width:520px) {
    .dd2-toolbar {
      top: 71px;
      padding: 10px;
    }
    .dd2-toolbar__row {
      gap: 8px;
    }
    .dd2-toolbar__count {
      margin-left: 0;
      width: 100%;
    }
    .dd2-lesson {
      grid-template-columns: 1fr auto;
      grid-template-areas: 'time badge' 'title title' 'teacher cta';
      gap: 6px 10px;
      padding: 14px;
    }
  }
  @media print {
    .dd2-header,.dd2-toolbar,.dd2-pagehero .dd2-actions,#proefles,.dd2-cta,.dd2-footer {
      display: none !important;
    }
    body {
      background: #fff;
      color: #000;
    }
    .dd2-lessons {
      background: #fff;
    }
    .dd2-lesson {
      border-color: #ccc;
    }
  }
  .dd2-team {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 18px;
  }
  .dd2-tcard {
    position: relative;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 16px;
    background: var(--panel);
    transition: border-color .25s,transform .25s;
  }
  .dd2-tcard:hover,.dd2-tcard:focus-within {
    border-color: var(--lav);
    transform: translateY(-3px);
  }
  .dd2-tcard[hidden],.dd2-crew__item[hidden] {
    display: none;
  }
  .dd2-tcard__photo {
    position: relative;
    isolation: isolate;
    aspect-ratio: 4/5;
    overflow: hidden;
    background: #120c1b;
  }
  .dd2-tcard__photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 20%;
    filter: grayscale(1) contrast(1.1);
    transition: filter .45s,transform .7s;
  }
  .dd2-tcard:hover .dd2-tcard__photo img,.dd2-tcard:focus-within .dd2-tcard__photo img {
    filter: none;
    transform: scale(1.035);
  }
  .dd2-tcard__photo::before {
    position: absolute;
    inset: 0;
    background: linear-gradient(0deg,#3a0f6e 0%,#8a4fd6 55%,#c28aff 100%);
    mix-blend-mode: color;
    transition: opacity .45s;
    content: '';
  }
  .dd2-tcard__photo::after {
    position: absolute;
    inset: 0;
    background: linear-gradient(0deg,rgb(30 6 58/.95) 0%,rgb(74 28 130/.55) 35%,rgb(194 138 255/.28) 100%);
    transition: background .45s;
    content: '';
  }
  .dd2-tcard:hover .dd2-tcard__photo::before,.dd2-tcard:focus-within .dd2-tcard__photo::before {
    opacity: 0;
  }
  .dd2-tcard:hover .dd2-tcard__photo::after,.dd2-tcard:focus-within .dd2-tcard__photo::after {
    background: linear-gradient(0deg,rgb(30 6 58/.92) 0%,rgb(30 6 58/.2) 40%,transparent 60%);
  }
  .dd2-tcard__photo--ph::before {
    content: none;
  }
  .dd2-tcard__badge {
    position: absolute;
    z-index: 1;
    left: 14px;
    top: 14px;
    padding: 5px 11px;
    border-radius: 99px;
    background: var(--lav);
    color: var(--ink);
    font-size: .7rem;
    font-weight: 900;
    letter-spacing: .05em;
    text-transform: uppercase;
  }
  .dd2-tcard__id {
    position: absolute;
    z-index: 1;
    right: 18px;
    bottom: 16px;
    left: 18px;
  }
  .dd2-tcard__name {
    margin: 0;
    font-family: Impact,'Anton','Arial Narrow',sans-serif;
    font-size: clamp(1.8rem,2.6vw,2.3rem);
    font-weight: 400;
    line-height: .95;
    letter-spacing: .02em;
    text-transform: uppercase;
  }
  .dd2-tcard__name a::after {
    position: absolute;
    inset: -100vh -100vw;
    content: '';
  }
  .dd2-tcard__name a {
    position: static;
  }
  .dd2-tcard__role {
    margin: 6px 0 0;
    color: var(--lav2);
    font-size: .82rem;
    font-weight: 800;
  }
  .dd2-tcard__body {
    position: relative;
    z-index: 2;
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: 12px;
    padding: 18px;
  }
  .dd2-tcard__styles {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .dd2-tcard__styles li {
    padding: 3px 9px;
    border: 1px solid #5a4370;
    border-radius: 99px;
    color: #eae4f3;
    font-size: .74rem;
    font-weight: 800;
  }
  .dd2-tcard__teaser {
    display: -webkit-box;
    margin: 0;
    overflow: hidden;
    color: var(--muted);
    font-size: .93rem;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
  }
  .dd2-tcard__foot {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 16px;
    align-items: center;
    justify-content: space-between;
    margin-top: auto;
    padding-top: 12px;
    border-top: 1px solid var(--line);
    font-size: .85rem;
  }
  .dd2-tcard__days {
    color: var(--muted);
    font-weight: 700;
  }
  .dd2-tcard__days b {
    color: var(--white);
  }
  .dd2-tcard__foot .dd2-textlink {
    position: relative;
    z-index: 3;
  }
  .dd2-tcard__more {
    position: relative;
    z-index: 3;
    align-self: flex-start;
  }
  .dd2-crew {
    display: grid;
    grid-template-columns: repeat(auto-fill,minmax(205px,1fr));
    gap: 12px;
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .dd2-crew__item {
    display: flex;
    gap: 13px;
    align-items: center;
    padding: 14px;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: #111015;
  }
  .dd2-crew__avatar {
    display: grid;
    flex: none;
    place-items: center;
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: linear-gradient(140deg,#c28aff,#401369);
    color: var(--ink);
    font-family: Impact,'Anton',sans-serif;
    font-size: 1.45rem;
    text-transform: uppercase;
  }
  .dd2-crew__item h3 {
    margin: 0;
    font-size: 1rem;
    font-weight: 800;
  }
  .dd2-crew__item p {
    margin: 2px 0 0;
    color: var(--muted);
    font-size: .8rem;
    line-height: 1.35;
  }
  .dd2-traits {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 16px;
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .dd2-trait {
    padding: 24px;
    border: 1px solid var(--line);
    border-radius: 15px;
    background: linear-gradient(160deg,#1b1424,#0f0d13);
  }
  .dd2-trait__icon {
    display: grid;
    place-items: center;
    width: 46px;
    height: 46px;
    margin-bottom: 16px;
    border: 1px solid var(--lav);
    border-radius: 12px;
    color: var(--lav);
    font-size: 1.3rem;
  }
  .dd2-trait h3 {
    margin: 0 0 6px;
    font-size: 1.1rem;
    font-weight: 800;
  }
  .dd2-trait p {
    margin: 0;
    color: var(--muted);
    font-size: .93rem;
  }
  .dd2-filterbar {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 22px;
  }
  .dd2-filterbar .dd2-filters {
    margin: 0;
  }
  @media (max-width:960px) {
    .dd2-team {
      grid-template-columns: 1fr 1fr;
    }
    .dd2-traits {
      grid-template-columns: 1fr;
    }
  }
  @media (max-width:560px) {
    .dd2-team {
      grid-template-columns: 1fr;
    }
    .dd2-filterbar .dd2-filters {
      flex-wrap: nowrap;
      overflow-x: auto;
      width: 100%;
      padding-bottom: 4px;
      scrollbar-width: none;
    }
    .dd2-filterbar .dd2-filter {
      white-space: nowrap;
    }
  }
  @media (prefers-reduced-motion:reduce) {
    .dd2-tcard,.dd2-tcard__photo img {
      transition: none;
    }
    .dd2-tcard:hover .dd2-tcard__photo img {
      transform: none;
    }
  }
  .dd2-page {
    display: grid;
    grid-template-columns: minmax(0,1fr) 320px;
    gap: 56px;
    align-items: start;
  }
  .dd2-prose {
    max-width: 760px;
    color: #ddd6e5;
    font-size: 1.04rem;
    line-height: 1.7;
  }
  .dd2-prose>*:first-child {
    margin-top: 0;
  }
  .dd2-prose p {
    margin: 0 0 1.15em;
  }
  .dd2-prose .is-lead {
    color: var(--white);
    font-size: 1.2rem;
    line-height: 1.6;
  }
  .dd2-prose h2 {
    margin: 2.1em 0 .6em;
    color: var(--white);
    font-size: clamp(1.6rem,3vw,2.2rem);
    font-weight: 800;
    line-height: 1.05;
    letter-spacing: -.03em;
    text-transform: uppercase;
  }
  .dd2-prose h2::before {
    display: block;
    width: 38px;
    height: 4px;
    margin-bottom: 14px;
    border-radius: 4px;
    background: var(--lav);
    content: '';
  }
  .dd2-prose h3 {
    margin: 1.8em 0 .5em;
    color: var(--lav);
    font-size: 1.15rem;
    font-weight: 800;
  }
  .dd2-prose h4 {
    margin: 1.5em 0 .4em;
    color: var(--white);
    font-size: 1rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
  }
  .dd2-prose strong {
    color: var(--white);
  }
  .dd2-prose a:not(.dd2-btn,.btn) {
    color: var(--lav);
    font-weight: 700;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
  }
  .dd2-prose a:not(.dd2-btn,.btn):hover {
    color: var(--lav2);
  }
  .dd2-prose ul,.dd2-prose ol {
    margin: 0 0 1.3em;
    padding: 0;
    list-style: none;
  }
  .dd2-prose li {
    position: relative;
    margin: 0 0 .5em;
    padding-left: 28px;
  }
  .dd2-prose ul li::before {
    position: absolute;
    left: 4px;
    top: .62em;
    width: 8px;
    height: 8px;
    border-radius: 2px;
    background: var(--lav);
    transform: rotate(45deg);
    content: '';
  }
  .dd2-prose ol {
    counter-reset: li;
  }
  .dd2-prose ol li {
    counter-increment: li;
  }
  .dd2-prose ol li::before {
    position: absolute;
    left: 0;
    top: .1em;
    color: var(--lav);
    font-weight: 900;
    content: counter(li,decimal-leading-zero);
  }
  .dd2-prose blockquote {
    margin: 1.6em 0;
    padding: 4px 0 4px 22px;
    border-left: 4px solid var(--lav);
    color: var(--white);
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.5;
  }
  .dd2-prose blockquote cite {
    display: block;
    margin-top: 8px;
    color: var(--muted);
    font-size: .85rem;
    font-style: normal;
    font-weight: 600;
  }
  .dd2-prose figure {
    margin: 1.8em 0;
  }
  .dd2-prose figure img {
    width: 100%;
    border-radius: 14px;
  }
  .dd2-prose figcaption {
    margin-top: 8px;
    color: var(--muted);
    font-size: .85rem;
  }
  .dd2-prose hr {
    height: 1px;
    margin: 2.4em 0;
    border: 0;
    background: var(--line);
  }
  .dd2-prose .wp-block-table {
    margin: 1.4em 0 1.8em;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 14px;
  }
  .dd2-prose table {
    width: 100%;
    border-collapse: collapse;
    font-size: .95rem;
  }
  .dd2-prose th {
    padding: 14px 18px;
    background: #1c1523;
    color: var(--lav);
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .12em;
    text-align: left;
    text-transform: uppercase;
  }
  .dd2-prose td {
    padding: 14px 18px;
    border-top: 1px solid var(--line);
    vertical-align: top;
  }
  .dd2-prose tbody tr:nth-child(even) {
    background: #100e14;
  }
  .dd2-prose tbody tr:hover {
    background: #1a1421;
  }
  .dd2-prose td:first-child {
    color: var(--muted);
    font-size: .85rem;
    font-weight: 700;
  }
  .dd2-prose th:last-child {
    text-align: right;
  }
  .dd2-about__photo {
    margin: 0 0 26px;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 18px;
    aspect-ratio: 16/10;
    background: #120c1b;
  }
  .dd2-about__photo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 30%;
  }
  .dd2-header__cta {
    display: inline-flex;
    gap: 7px;
    align-items: center;
    white-space: nowrap;
  }
  .dd2-header__cta .dd2-arrow {
    flex: none;
    width: 1em;
    height: 1em;
  }
  .dd2-hero__play[hidden] {
    display: none;
  }
  .dd2-hero__play svg {
    flex: none;
  }
  .dd2-hero__slide[data-orient=portrait] {
    object-position: center 35%;
  }
  .dd2-prose .dd2-wear th:last-child {
    text-align: left;
  }
  .dd2-prose .dd2-wear td,.dd2-prose .dd2-wear td:last-child {
    color: #ddd6e5;
    font-weight: 400;
    text-align: left;
    white-space: normal;
  }
  .dd2-prose .dd2-wear td:first-child {
    color: var(--white);
    font-size: .95rem;
    font-weight: 700;
  }
  @media (min-width:601px) {
    .dd2-prose .dd2-wear td {
      width: 40%;
    }
    .dd2-prose .dd2-wear td:first-child {
      width: 20%;
    }
  }
  @media (max-width:600px) {
    .dd2-prose .dd2-wear tbody tr {
      grid-template-columns: 1fr;
      gap: 6px;
    }
    .dd2-prose .dd2-wear td[data-label]::before {
      color: var(--white);
      font-weight: 700;
      content: attr(data-label) ': ';
    }
  }
  .dd2-prose td:last-child {
    color: var(--white);
    font-weight: 800;
    text-align: right;
    white-space: nowrap;
  }
  .dd2-prose td small {
    display: block;
    color: var(--muted);
    font-size: .78rem;
    font-weight: 600;
    white-space: normal;
  }
  .dd2-prose figcaption.wp-element-caption {
    padding: 10px 18px;
    border-top: 1px solid var(--line);
    margin: 0;
  }
  .dd2-prose .wp-block-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: 1.6em 0;
  }
  .dd2-callout {
    margin: 1.6em 0;
    padding: 22px 24px;
    border: 1px solid #5a4370;
    border-radius: 14px;
    background: linear-gradient(135deg,#21132e,#120f17);
  }
  .dd2-callout>:last-child {
    margin-bottom: 0;
  }
  .dd2-callout h3 {
    margin-top: 0;
  }
  .dd2-funds {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 12px;
    margin: 1.2em 0 1.6em;
    padding: 0 !important;
    list-style: none;
  }
  .dd2-funds li {
    margin: 0;
    padding: 0 !important;
  }
  .dd2-funds li::before {
    display: none;
  }
  .dd2-funds a {
    display: flex !important;
    flex-direction: column;
    gap: 4px;
    height: 100%;
    padding: 16px;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: #111015;
    color: var(--white) !important;
    text-decoration: none !important;
    transition: border-color .2s;
  }
  .dd2-funds a:hover {
    border-color: var(--lav);
  }
  .dd2-funds span {
    color: var(--muted);
    font-size: .8rem;
    font-weight: 600;
  }
  .dd2-aside {
    position: sticky;
    top: 100px;
    display: grid;
    gap: 16px;
  }
  .dd2-aside__box {
    padding: 22px;
    border: 1px solid var(--line);
    border-radius: 16px;
    background: var(--panel);
  }
  .dd2-aside__title {
    margin: 0 0 12px;
    color: var(--lav);
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .2em;
    text-transform: uppercase;
  }
  .dd2-subnav {
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .dd2-subnav a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 12px;
    border-radius: 9px;
    color: #e6dfee;
    font-size: .92rem;
    font-weight: 700;
  }
  .dd2-subnav a::after {
    content: none;
  }
  .dd2-subnav a:hover {
    background: #1f1828;
    color: var(--white);
  }
  .dd2-subnav a[aria-current] {
    background: var(--lav);
    color: var(--ink);
  }
  .dd2-subnav a[aria-current]::after {
    color: var(--ink);
  }
  .dd2-aside address {
    color: var(--muted);
    font-size: .9rem;
    font-style: normal;
    line-height: 1.7;
  }
  .dd2-aside address a {
    color: var(--white);
    font-weight: 700;
  }
  .dd2-aside address a:hover {
    color: var(--lav);
  }
  .dd2-aside__cta {
    padding: 24px;
    border-radius: 16px;
    background: linear-gradient(140deg,#401369,#8f52d6);
  }
  .dd2-aside__cta h3 {
    margin: 0 0 6px;
    font-size: 1.25rem;
    font-weight: 800;
    text-transform: uppercase;
  }
  .dd2-aside__cta p {
    margin: 0 0 16px;
    color: #f0e4ff;
    font-size: .9rem;
  }
  .dd2-pagehero--simple {
    padding: 56px 0 50px;
  }
  @media (max-width:960px) {
    .dd2-page {
      grid-template-columns: 1fr;
      gap: 40px;
    }
    .dd2-aside {
      position: static;
      grid-template-columns: 1fr 1fr;
    }
    .dd2-aside__box--nav {
      grid-column: 1/-1;
    }
  }
  @media (max-width:600px) {
    .dd2-aside {
      grid-template-columns: 1fr;
    }
    .dd2-funds {
      grid-template-columns: 1fr;
    }
    .dd2-prose thead {
      display: none;
    }
    .dd2-prose table,.dd2-prose tbody,.dd2-prose tr,.dd2-prose td {
      display: block;
    }
    .dd2-prose tbody tr {
      display: grid;
      grid-template-columns: 1fr auto;
      gap: 2px 14px;
      padding: 13px 16px;
      border-top: 1px solid var(--line);
    }
    .dd2-prose tbody tr:first-child {
      border-top: 0;
    }
    .dd2-prose td {
      padding: 0;
      border: 0;
    }
    .dd2-prose td:first-child {
      grid-column: 1/-1;
      font-size: .7rem;
      letter-spacing: .1em;
      text-transform: uppercase;
      color: var(--lav);
    }
    .dd2-prose td:first-child:empty {
      display: none;
    }
    .dd2-prose td:last-child {
      white-space: nowrap;
    }
    .dd2-prose td:last-child small {
      max-width: 150px;
      margin-left: auto;
    }
  }
  @media print {
    .dd2-aside {
      display: none;
    }
    .dd2-page {
      display: block;
    }
  }
  .dd2-prose .alignright {
    float: right;
    width: min(44%,340px);
    margin: .3em 0 1.2em 1.8em;
  }
  .dd2-prose .alignleft {
    float: left;
    width: min(44%,340px);
    margin: .3em 1.8em 1.2em 0;
  }
  .dd2-prose h2 {
    clear: both;
  }
  @media (max-width:600px) {
    .dd2-prose .alignright,.dd2-prose .alignleft {
      float: none;
      width: 100%;
      margin: 1.4em 0;
    }
  }
  .dd2-header__end {
    display: flex;
    gap: 10px;
    align-items: center;
  }
  .dd2-header__toggle {
    display: none;
    place-items: center;
    width: 42px;
    height: 42px;
    padding: 0;
    border: 1px solid #4a3b55;
    border-radius: 12px;
    background: #15121a;
    cursor: pointer;
  }
  .dd2-burger i {
    display: block;
    width: 18px;
    height: 2px;
    margin: 4px 0;
    border-radius: 2px;
    background: #fff;
    transition: transform .2s,opacity .2s;
  }
  .dd2-header__toggle[aria-expanded=true] .dd2-burger i:nth-child(1) {
    transform: translateY(6px) rotate(45deg);
  }
  .dd2-header__toggle[aria-expanded=true] .dd2-burger i:nth-child(2) {
    opacity: 0;
  }
  .dd2-header__toggle[aria-expanded=true] .dd2-burger i:nth-child(3) {
    transform: translateY(-6px) rotate(-45deg);
  }
  .dd2-mobilenav {
    border-top: 1px solid var(--line);
    background: #09080d;
  }
  .dd2-mobilenav ul {
    margin: 0;
    padding: 6px 4% 14px;
    list-style: none;
  }
  .dd2-mobilenav a {
    display: block;
    padding: 13px 4px;
    border-bottom: 1px solid #1f1828;
    font-size: .88rem;
    font-weight: 900;
    text-transform: uppercase;
  }
  .dd2-mobilenav a[aria-current] {
    color: var(--lav);
  }
  @media (min-width:801px) {
    .dd2-mobilenav {
      display: none !important;
    }
  }
  @media (max-width:800px) {
    .dd2-nav {
      display: none;
    }
    .dd2-header__cta {
      display: inline-flex !important;
      padding: 8px 13px;
      font-size: .74rem;
    }
    .dd2-header__toggle {
      display: grid;
    }
  }
  @media (max-width:420px) {
    .dd2-header__logo img {
      width: 124px;
    }
    .dd2-header__cta {
      padding: 7px 11px;
      font-size: .7rem;
    }
    .dd2-header__bar {
      gap: 8px;
    }
  }
  .dd2-social {
    display: flex;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .dd2-social a {
    display: grid;
    place-items: center;
    width: 38px;
    height: 38px;
    border: 1px solid var(--line);
    border-radius: 50%;
    color: #eae4f3;
    transition: border-color .2s,color .2s;
  }
  .dd2-social a:hover {
    border-color: var(--lav);
    color: var(--lav);
  }
  .dd2-social svg {
    width: 18px;
    height: 18px;
  }
  .dd2-bueno {
    display: grid;
    grid-template-columns: 1.25fr 1fr;
    gap: 16px;
    align-items: stretch;
  }
  .dd2-bueno__steps {
    display: grid;
    gap: 12px;
    margin: 0;
    padding: 0;
    list-style: none;
    counter-reset: b;
  }
  .dd2-bueno__steps li {
    display: grid;
    grid-template-columns: 44px 1fr;
    gap: 4px 14px;
    padding: 18px 20px;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: #111015;
    counter-increment: b;
  }
  .dd2-bueno__steps li::before {
    grid-row: span 2;
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    border: 1px solid var(--lav);
    border-radius: 50%;
    color: var(--lav);
    font-weight: 900;
    content: counter(b);
  }
  .dd2-bueno__steps b {
    font-size: 1.02rem;
  }
  .dd2-bueno__steps span {
    color: var(--muted);
    font-size: .92rem;
  }
  .dd2-bueno__steps a {
    color: var(--lav);
    font-weight: 800;
    text-decoration: underline;
  }
  .dd2-bueno__cta {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    padding: 32px;
    border-radius: 18px;
    background: linear-gradient(140deg,#401369,#8f52d6);
  }
  .dd2-bueno__cta .dd2-tag {
    color: #f0dfff;
  }
  .dd2-bueno__cta h3 {
    margin: 0 0 8px;
    font-size: 1.6rem;
    font-weight: 800;
    line-height: 1.05;
    text-transform: uppercase;
  }
  .dd2-bueno__cta p {
    margin: 0 0 20px;
    color: #f0e4ff;
  }
  @media (max-width:800px) {
    .dd2-bueno {
      grid-template-columns: 1fr;
    }
  }
  .dd2-hero {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 620px;
    overflow: hidden;
    isolation: isolate;
    background: var(--bg);
  }
  .dd2-hero__media {
    position: absolute;
    inset: 0;
    z-index: 0;
  }
  .dd2-hero__slide {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 42%;
    opacity: 0;
    transition: opacity 1.2s ease;
  }
  .dd2-hero__slide.is-active {
    opacity: 1;
  }
  img.dd2-hero__slide.is-active {
    animation: dd2-kb 9s ease-out both;
  }
  @keyframes dd2-kb {
    from {
      transform: scale(1.12);
    }
    to {
      transform: scale(1);
    }
  }
  .dd2-hero::before {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(90deg,rgb(8 8 11/.87),rgb(8 8 11/.58) 65%,rgb(8 8 11/.38));
    content: '';
    pointer-events: none;
  }
  .dd2-hero>.dd2-wrap {
    position: relative;
    z-index: 2;
  }
  .dd2-hero__copy {
    max-width: 720px;
    padding: 75px 0;
  }
  .dd2-hero__title {
    margin: 0 0 25px;
    font-family: Impact,'Anton','Arial Narrow',sans-serif;
    font-size: clamp(3.4rem,9vw,7.4rem);
    font-stretch: condensed;
    font-weight: 900;
    line-height: .91;
    letter-spacing: .015em;
    text-shadow: 0 3px 22px rgb(0 0 0/.65);
    text-transform: uppercase;
  }
  .dd2-hero__lead {
    max-width: 530px;
    margin: 0;
    color: #e1dbe8;
    font-size: clamp(1.05rem,2vw,1.3rem);
    text-shadow: 0 2px 12px rgb(0 0 0/.85);
  }
  .dd2-hero__dots {
    position: absolute;
    z-index: 3;
    right: 4%;
    bottom: 22px;
    display: flex;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .dd2-hero__dots button {
    width: 28px;
    height: 4px;
    padding: 0;
    border: 0;
    border-radius: 4px;
    background: rgb(255 255 255/.35);
    cursor: pointer;
  }
  .dd2-hero__dots button[aria-current=true] {
    background: var(--lav);
  }
  @media (max-width:600px) {
    .dd2-hero::before {
      background: rgb(8 8 11/.72);
    }
    .dd2-hero {
      min-height: 560px;
    }
    .dd2-hero__copy {
      padding: 72px 0 60px;
    }
    .dd2-hero__title {
      font-size: clamp(3.1rem,13vw,5rem);
      letter-spacing: 0;
    }
  }
  @media (prefers-reduced-motion:reduce) {
    img.dd2-hero__slide.is-active {
      animation: none;
    }
    .dd2-hero__slide {
      transition: none;
    }
  }
  .dd2-benefits {
    border-block: 1px solid var(--line);
    background: var(--panel2);
  }
  .dd2-benefits__grid {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 18px;
    margin: 0 auto;
    padding: 24px 0;
    list-style: none;
  }
  .dd2-benefits__item {
    display: flex;
    gap: 13px;
    align-items: center;
    font-weight: 800;
    line-height: 1.3;
  }
  .dd2-benefits__icon {
    display: grid;
    flex: none;
    place-items: center;
    width: 46px;
    height: 46px;
    border: 1px solid #5a4370;
    border-radius: 13px;
    background: #1a1322;
    color: var(--lav);
  }
  .dd2-benefits__icon svg {
    width: 24px;
    height: 24px;
  }
  @media (max-width:900px) {
    .dd2-benefits__grid {
      grid-template-columns: 1fr 1fr;
    }
  }
  @media (max-width:480px) {
    .dd2-benefits__grid {
      grid-template-columns: 1fr;
      gap: 12px;
    }
  }
  .dd2-pills--links a {
    display: inline-flex;
    gap: 6px;
    align-items: center;
    transition: background .2s,color .2s;
  }
  .dd2-pills--links a::after {
    content: none;
  }
  .dd2-pills--links a:hover,.dd2-pills--links a:focus-visible {
    background: var(--lav);
    color: var(--ink);
  }
  .dd2-panel--photo {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    min-height: 320px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
  }
  .dd2-panel__bg {
    position: absolute;
    inset: 0;
    z-index: -2;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .dd2-panel--photo::before {
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(90deg,rgb(33 19 46/.91),rgb(16 14 20/.6));
    content: '';
  }
  .dd2-news {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 16px;
  }
  .dd2-news article {
    display: flex;
    flex-direction: column;
    padding: 24px;
    border: 1px solid var(--line);
    border-radius: 15px;
    background: var(--panel);
  }
  .dd2-news h3 {
    margin: 4px 0 8px;
    font-size: 1.25rem;
    font-weight: 800;
  }
  .dd2-news p {
    margin: 0 0 16px;
    color: var(--muted);
  }
  .dd2-news .dd2-textlink,.dd2-news .dd2-social {
    margin-top: auto;
  }
  .dd2-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 18px;
  }
  .dd2-tabs button {
    padding: 11px 18px;
    border: 1px solid var(--lav);
    border-radius: 99px;
    background: transparent;
    color: #eae4f3;
    cursor: pointer;
    font-weight: 800;
  }
  .dd2-tabs button[aria-selected=true] {
    background: var(--lav);
    color: var(--ink);
  }
  @media (max-width:800px) {
    .dd2-news {
      grid-template-columns: 1fr;
    }
  }
  .dd2-teamband {
    display: flex;
    flex-wrap: wrap;
    gap: 22px;
    align-items: center;
    justify-content: space-between;
    margin-top: 16px;
  }
  .dd2-teamband__title {
    max-width: 640px;
    margin: 10px 0 0;
    font-size: clamp(1.6rem,3.4vw,2.5rem) !important;
    font-weight: 800;
    line-height: 1.05;
    letter-spacing: -.03em;
    text-transform: uppercase;
  }
  .dd2-teamband__title span {
    color: var(--lav);
  }
  .dd2-story {
    display: grid;
    grid-template-columns: minmax(0,1.25fr) minmax(0,1fr);
    gap: 48px;
    align-items: center;
  }
  .dd2-story__title {
    margin: 9px 0 18px !important;
    font-size: clamp(2rem,4.4vw,3.4rem) !important;
    line-height: .97 !important;
    letter-spacing: -.05em !important;
  }
  .dd2-story__title::before {
    display: none !important;
  }
  .dd2-story__title span {
    color: var(--lav);
  }
  .dd2-story__photo {
    margin: 0;
  }
  .dd2-story__photo img {
    width: 100%;
    border-radius: 18px;
    border: 1px solid var(--line);
  }
  .dd2-story__photo figcaption {
    margin-top: 8px;
    color: var(--muted);
    font-size: .85rem;
  }
  .dd2-tcard__photo--ph {
    display: grid;
    place-items: center;
    background: radial-gradient(circle at 70% 18%,#7b4bb455,transparent 50%),linear-gradient(150deg,#2a2036,#0d0b12 75%);
  }
  .dd2-tcard__ph {
    margin-bottom: 40px;
    font-family: Impact,'Anton',sans-serif;
    font-size: 7rem;
    line-height: 1;
    color: #c28aff2e;
    text-transform: uppercase;
  }
  .dd2-tcard__soon {
    position: absolute;
    z-index: 1;
    right: 14px;
    top: 14px;
    padding: 5px 11px;
    border: 1px dashed #6b5a7c;
    border-radius: 99px;
    color: var(--muted);
    font-size: .7rem;
    font-weight: 800;
  }
  .dd2-volunteers {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 14px;
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .dd2-volunteers li {
    padding: 22px;
    border: 1px solid var(--line);
    border-radius: 15px;
    background: #111015;
  }
  .dd2-volunteers__icon {
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    margin-bottom: 14px;
    border: 1px solid var(--lav);
    border-radius: 12px;
    color: var(--lav);
  }
  .dd2-volunteers__icon svg {
    width: 22px;
    height: 22px;
  }
  .dd2-volunteers h3 {
    margin: 0 0 6px;
    font-size: 1.08rem;
    font-weight: 800;
  }
  .dd2-volunteers p {
    margin: 0;
    color: var(--muted);
    font-size: .92rem;
  }
  @media (max-width:900px) {
    .dd2-story {
      grid-template-columns: 1fr;
    }
    .dd2-volunteers {
      grid-template-columns: 1fr 1fr;
    }
  }
  @media (max-width:520px) {
    .dd2-volunteers {
      grid-template-columns: 1fr;
    }
  }
  .dd2-lead {
    max-width: 720px;
    margin: 0 0 26px;
    color: var(--white);
    font-size: 1.2rem;
    line-height: 1.6;
  }
  .dd2-contactgrid {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 14px;
  }
  .dd2-contactcard {
    padding: 22px;
    border: 1px solid var(--line);
    border-radius: 15px;
    background: var(--panel);
  }
  .dd2-contactcard--wide {
    grid-column: 1/-1;
  }
  .dd2-contactcard__icon {
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    margin-bottom: 14px;
    border: 1px solid var(--lav);
    border-radius: 12px;
    color: var(--lav);
  }
  .dd2-contactcard__icon svg {
    width: 22px;
    height: 22px;
  }
  .dd2-contactcard h2 {
    margin: 0 0 8px;
    color: var(--lav);
    font-size: .75rem;
    font-weight: 900;
    letter-spacing: .16em;
    text-transform: uppercase;
  }
  .dd2-contactcard p {
    margin: 0 0 10px;
    color: #ddd6e5;
    line-height: 1.6;
  }
  .dd2-contactcard a:not(.dd2-textlink) {
    color: var(--white);
    font-weight: 700;
  }
  .dd2-contactcard a:not(.dd2-textlink):hover {
    color: var(--lav);
  }
  .dd2-maillist {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 12px 20px;
    margin: 0;
  }
  .dd2-maillist dt {
    color: var(--muted);
    font-size: .8rem;
    font-weight: 700;
  }
  .dd2-maillist dd {
    margin: 2px 0 0;
    overflow-wrap: anywhere;
  }
  .dd2-booking {
    margin-top: 56px;
  }
  .dd2-contactphoto {
    margin: 40px 0 0;
  }
  .dd2-contactphoto img {
    width: 100%;
    border-radius: 16px;
  }
  .dd2-contactphoto figcaption {
    margin-top: 8px;
    color: var(--muted);
    font-size: .85rem;
  }
  @media (max-width:600px) {
    .dd2-contactgrid,.dd2-maillist {
      grid-template-columns: 1fr;
    }
  }
  .dd2-page--single {
    grid-template-columns: minmax(0,1fr);
  }
  .dd2-page--single .dd2-prose {
    width: 100%;
    max-width: 880px;
    margin-inline: auto;
  }
  .dd2-grouptitle {
    margin: 36px 0 6px;
    font-size: 1.5rem;
    font-weight: 800;
    text-transform: uppercase;
  }
  .dd2-groups {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 16px;
    margin-top: 18px;
  }
  .dd2-group {
    display: flex;
    flex-direction: column;
    padding: 24px;
    border: 1px solid var(--line);
    border-radius: 16px;
    background: var(--panel);
    scroll-margin-top: 100px;
    transition: border-color .3s,box-shadow .3s;
  }
  .dd2-group.is-target {
    border-color: var(--lav);
    box-shadow: 0 0 0 3px #c28aff33;
  }
  .dd2-group__head {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 14px;
    align-items: baseline;
    justify-content: space-between;
  }
  .dd2-group h4 {
    margin: 0;
    font-family: Impact,'Anton','Arial Narrow',sans-serif;
    font-size: 2rem;
    font-weight: 400;
    letter-spacing: .02em;
    text-transform: uppercase;
  }
  .dd2-group__age {
    color: var(--lav2);
    font-size: .85rem;
    font-weight: 800;
  }
  .dd2-group p {
    margin: 8px 0 14px;
    color: var(--muted);
  }
  .dd2-group__lessons {
    display: grid;
    gap: 6px;
    margin: 0 0 18px;
    padding: 0;
    list-style: none;
  }
  .dd2-group__lessons li {
    display: grid;
    grid-template-columns: 38px 108px 1fr;
    gap: 10px;
    align-items: center;
    padding: 9px 12px;
    border-radius: 10px;
    background: #100e14;
    font-size: .9rem;
  }
  .dd2-group__lessons b {
    color: var(--lav);
    font-weight: 900;
  }
  .dd2-group__lessons time {
    font-variant-numeric: tabular-nums;
    font-weight: 600;
  }
  .dd2-group__lessons small {
    display: block;
    color: var(--muted);
    font-size: .78rem;
  }
  .dd2-group .dd2-btn {
    align-self: flex-start;
    margin-top: auto;
  }
  @media (max-width:800px) {
    .dd2-groups {
      grid-template-columns: 1fr;
    }
  }
  @media (max-width:420px) {
    .dd2-group__lessons li {
      grid-template-columns: 32px 1fr;
    }
    .dd2-group__lessons li span {
      grid-column: 2;
    }
  }
  .dd2-calbar {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 20px;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 10px;
  }
  .dd2-calbar .dd2-filters {
    margin: 0;
  }
  .dd2-check {
    display: inline-flex;
    gap: 8px;
    align-items: center;
    color: var(--muted);
    font-size: .88rem;
    font-weight: 700;
    cursor: pointer;
  }
  .dd2-check input {
    width: 18px;
    height: 18px;
    accent-color: var(--lav);
  }
  .dd2-cal {
    display: grid;
    gap: 30px;
    margin-top: 20px;
  }
  .dd2-cal__month h2 {
    margin: 0 0 12px;
    color: var(--lav);
    font-size: .8rem;
    font-weight: 900;
    letter-spacing: .2em;
    text-transform: uppercase;
  }
  .dd2-cal__list {
    display: grid;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .dd2-event {
    display: grid;
    grid-template-columns: 76px minmax(0,1fr) auto;
    gap: 18px;
    align-items: center;
    padding: 14px 18px;
    border: 1px solid var(--line);
    border-left: 4px solid var(--c,var(--lav));
    border-radius: 14px;
    background: var(--panel);
  }
  .dd2-event[hidden] {
    display: none;
  }
  .dd2-event.is-past {
    opacity: .5;
  }
  .dd2-event__date {
    display: grid;
    place-items: center;
    min-height: 62px;
    border-radius: 11px;
    background: #1c1523;
    text-align: center;
    line-height: 1.05;
  }
  .dd2-event__date b {
    font-size: 1.5rem;
    font-weight: 900;
  }
  .dd2-event__date span {
    color: var(--muted);
    font-size: .72rem;
    font-weight: 800;
    text-transform: uppercase;
  }
  .dd2-event__date--tbd b {
    font-size: .9rem;
  }
  .dd2-event h3 {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 800;
  }
  .dd2-event p {
    margin: 3px 0 0;
    color: var(--muted);
    font-size: .9rem;
  }
  .dd2-event__type {
    padding: 4px 10px;
    border: 1px solid var(--c,var(--lav));
    border-radius: 99px;
    color: var(--c,var(--lav));
    font-size: .72rem;
    font-weight: 900;
    white-space: nowrap;
  }
  .dd2-event--vrij {
    --c: #7dd3a8;
  }
  .dd2-event--show {
    --c: #c28aff;
  }
  .dd2-event--auditie {
    --c: #f5c86b;
  }
  @media (max-width:600px) {
    .dd2-event {
      grid-template-columns: 64px minmax(0,1fr);
      gap: 12px;
    }
    .dd2-event__type {
      grid-column: 2;
      justify-self: start;
    }
  }
  .dd2-storycols {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 32px 56px;
    margin-top: 34px;
  }
  .dd2-storycols__col {
    display: flex;
    flex-direction: column;
    gap: 30px;
  }
  .dd2-storycols__block h3 {
    margin: 0 0 10px;
    font-size: 1.2rem;
    line-height: 1.35;
    font-weight: 800;
  }
  .dd2-storycols__block p {
    margin: 0;
    color: var(--muted);
  }
  .dd2-tcard__tag {
    margin: 0;
    color: var(--lav);
    font-size: .7rem;
    font-weight: 900;
    letter-spacing: .1em;
    text-transform: uppercase;
  }
  .dd2-crewgrid {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: 16px;
    margin: 28px 0 0;
    padding: 0;
    list-style: none;
  }
  .dd2-crewcard {
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 15px;
    background: var(--panel);
  }
  .dd2-crewcard__photo {
    aspect-ratio: 1/1;
    overflow: hidden;
    background: #120c1b;
  }
  .dd2-crewcard__photo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 25%;
  }
  .dd2-crewcard__photo--ph {
    display: grid;
    place-items: center;
    background: radial-gradient(circle at 70% 18%,#7b4bb455,transparent 50%),linear-gradient(150deg,#2a2036,#0d0b12 75%);
  }
  .dd2-crewcard__photo--ph span {
    font-family: Impact,'Anton',sans-serif;
    font-size: 4.5rem;
    line-height: 1;
    color: #c28aff40;
    text-transform: uppercase;
  }
  .dd2-crewcard__body {
    padding: 18px 20px 20px;
  }
  .dd2-crewcard__body .dd2-tcard__tag {
    margin-bottom: 8px;
  }
  .dd2-crewcard__body h3 {
    margin: 0;
    font-size: 1.08rem;
    line-height: 1.25;
    overflow-wrap: anywhere;
  }
  .dd2-crewcard {
    display: flex;
    flex-direction: column;
  }
  .dd2-crewcard__body {
    display: flex;
    flex: 1;
    flex-direction: column;
  }
  .dd2-crewcard__body .dd2-tcard__tag {
    min-height: 2.7em;
    line-height: 1.35;
  }
  .dd2-crewcard__story {
    margin-top: auto;
    padding-top: 12px;
    font-size: .9rem;
    line-height: 1.6;
    color: var(--muted);
  }
  .dd2-crewcard__story summary {
    display: inline-flex;
    gap: 6px;
    align-items: center;
    color: var(--lav);
    font-weight: 700;
    cursor: pointer;
    list-style: none;
  }
  .dd2-crewcard__story summary::-webkit-details-marker {
    display: none;
  }
  .dd2-crewcard__story summary::after {
    font-size: .8em;
    transition: transform .2s;
    content: '+';
  }
  .dd2-crewcard__story[open] summary::after {
    content: '–';
  }
  .dd2-crewcard__story summary:focus-visible {
    outline: 2px solid var(--lav);
    outline-offset: 3px;
    border-radius: 4px;
  }
  .dd2-crewcard__story p {
    margin: 10px 0 0;
  }
  .dd2-thanks {
    margin-top: 24px;
  }
  .dd2-thanks h3 {
    margin: 8px 0;
    text-transform: uppercase;
  }
  .dd2-crewgrid+.dd2-teamband,.dd2-thanks+.dd2-teamband {
    margin-top: 24px;
  }
  .dd2-member {
    display: grid;
    grid-template-columns: minmax(0,380px) minmax(0,1fr);
    gap: 56px;
    align-items: start;
  }
  .dd2-member__side {
    display: flex;
    flex-direction: column;
    gap: 18px;
  }
  .dd2-member__photo {
    position: relative;
    display: grid;
    place-items: center;
    aspect-ratio: 4/5;
    margin: 0;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 18px;
    background: #120c1b;
  }
  .dd2-member__photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 20%;
  }
  .dd2-member .dd2-sidecard {
    position: static;
  }
  .dd2-sidecard__title {
    margin: 8px 0 14px;
    font-size: 1.25rem;
  }
  .dd2-member__lessons {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: .92rem;
  }
  .dd2-member__lessons li {
    display: grid;
    grid-template-columns: 38px 96px minmax(0,1fr);
    gap: 10px;
    align-items: baseline;
  }
  .dd2-member__time {
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
  }
  .dd2-member__what {
    min-width: 0;
  }
  .dd2-member__lessons small {
    color: var(--muted);
  }
  .dd2-member__day {
    flex: none;
    box-sizing: border-box;
    width: 38px;
    padding: 2px 7px;
    border-radius: 7px;
    background: #2a1d38;
    color: var(--lav);
    font-size: .75rem;
    font-weight: 900;
    text-align: center;
    text-transform: uppercase;
  }
  .dd2-member__main .dd2-actions {
    margin-top: 30px;
  }
  @media (max-width:960px) {
    .dd2-crewgrid {
      grid-template-columns: repeat(3,minmax(0,1fr));
    }
    .dd2-member {
      grid-template-columns: 1fr;
      gap: 32px;
    }
    .dd2-member__side {
      max-width: 440px;
    }
  }
  @media (max-width:700px) {
    .dd2-storycols {
      grid-template-columns: 1fr;
      gap: 28px;
    }
    .dd2-crewgrid {
      grid-template-columns: 1fr 1fr;
    }
  }
  @media (max-width:420px) {
    .dd2-crewgrid {
      grid-template-columns: 1fr;
    }
  }
  .dd2-h2 {
    font-size: clamp(1.7rem,3.4vw,2.6rem);
    line-height: 1.02;
    letter-spacing: -.035em;
  }
  .dd2-pagehero__title {
    font-size: clamp(2.5rem,5.4vw,4.3rem);
  }
  .dd2-hero__title {
    font-size: clamp(3rem,6.6vw,5.4rem);
  }
  .dd2-prose h2 {
    font-size: clamp(1.3rem,2.1vw,1.65rem);
    letter-spacing: -.02em;
  }
  .dd2-teamband__title {
    font-size: clamp(1.3rem,2.3vw,1.8rem) !important;
  }
  .dd2-cta .dd2-h2 {
    font-size: clamp(1.6rem,2.8vw,2.2rem);
  }
  .dd2-booking__title {
    font-size: clamp(1.6rem,2.8vw,2.2rem);
  }
  .dd2-group h4 {
    font-size: 1.45rem;
  }
  .dd2-dayblock__head h2 {
    font-size: 1.3rem;
  }
  .dd2-level__num,.dd2-step::before {
    font-size: 1.3rem;
  }
  .dd2-info__big {
    font-size: 1.8rem;
  }
  .dd2-bueno__cta h3 {
    font-size: 1.35rem;
  }
  .dd2-pagehero__lead,.dd2-hero__lead {
    font-size: clamp(1rem,1.5vw,1.12rem);
  }
  .dd2-learn__num {
    display: block;
    margin-bottom: 10px;
    color: var(--lav);
    font-size: 1.3rem;
    font-weight: 900;
    line-height: 1;
  }
  .dd2-fact {
    padding: 9px 14px;
  }
  .dd2-benefits__item {
    gap: 12px;
    font-weight: 700;
  }
  .dd2-mark {
    display: inline-flex;
    flex: none;
    color: var(--lav);
  }
  .dd2-mark svg {
    display: block;
    width: 1em;
    height: 1em;
    fill: currentColor;
  }
  .dd2-benefits__mark {
    font-size: 16px;
  }
  .dd2-learn__mark {
    margin-bottom: 12px;
    font-size: 20px;
  }
  .dd2-contactcard__icon {
    width: auto;
    height: auto;
    margin-bottom: 12px;
    border: 0;
    border-radius: 0;
    place-items: start;
  }
  .dd2-contactcard__icon svg {
    width: 22px;
    height: 22px;
  }
  @media (max-width:600px) {
    .dd2-hero__title {
      font-size: clamp(2.6rem,11vw,3.8rem);
    }
    .dd2-pagehero__title {
      font-size: clamp(2.2rem,10vw,3rem);
    }
  }
  .dd2-teamfeature {
    position: relative;
    margin: 30px 0;
    padding: 72px 0;
    overflow: hidden;
    background: radial-gradient(circle at 85% 20%,rgb(194 138 255/.28),transparent 45%),linear-gradient(120deg,#2a1240 0%,#170d22 55%,#0f0b14 100%);
    border-block: 1px solid #4b2f69;
  }
  .dd2-teamfeature__inner {
    display: grid;
    grid-template-columns: minmax(0,1.05fr) minmax(0,1fr);
    gap: 48px;
    align-items: center;
  }
  .dd2-teamfeature__title {
    margin: 10px 0 14px;
    font-size: clamp(1.45rem,2.3vw,1.9rem);
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -.02em;
  }
  .dd2-teamfeature__title span {
    color: var(--lav);
  }
  .dd2-teamfeature__copy p:not(.dd2-eyebrow) {
    max-width: 520px;
    margin: 0 0 22px;
    color: #ddd3ea;
  }
  .dd2-teamfeature__teams {
    display: grid;
    gap: 12px;
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .dd2-teamfeature__teams a {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 2px 16px;
    align-items: center;
    padding: 18px 22px;
    border: 1px solid rgb(194 138 255/.35);
    border-radius: 16px;
    background: rgb(8 8 11/.45);
    color: inherit;
    text-decoration: none;
    transition: border-color .2s,transform .2s,background .2s;
  }
  .dd2-teamfeature__teams a:hover,.dd2-teamfeature__teams a:focus-visible {
    border-color: var(--lav);
    background: rgb(8 8 11/.65);
    transform: translateX(4px);
  }
  .dd2-teamfeature__name {
    font-size: 1.1rem;
    font-weight: 900;
    text-transform: uppercase;
  }
  .dd2-teamfeature__coach {
    grid-column: 2;
    grid-row: 1;
    color: var(--lav);
    font-size: .8rem;
    font-weight: 800;
  }
  .dd2-teamfeature__time {
    grid-column: 1/-1;
    color: var(--muted);
    font-size: .85rem;
  }
  .dd2-teachers {
    display: grid;
    grid-template-columns: repeat(auto-fit,minmax(320px,1fr));
    gap: 16px;
    margin-top: 26px;
  }
  .dd2-teachers .dd2-teacher {
    grid-template-columns: 96px 1fr;
    gap: 20px;
    align-items: start;
  }
  .dd2-teachers .dd2-teacher__photo {
    width: 96px;
    font-size: 1.6rem;
  }
  .dd2-teachers .dd2-teacher h3 {
    margin: 4px 0 2px;
    font-size: 1.1rem;
  }
  .dd2-teachers .dd2-teacher__role {
    margin: 0 0 8px;
    font-size: .85rem;
  }
  .dd2-teacher__lessons {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin: 0 0 10px;
    padding: 0;
    list-style: none;
    color: var(--muted);
    font-size: .88rem;
  }
  .dd2-teacher__lessons b {
    display: inline-block;
    min-width: 26px;
    color: var(--white);
  }
  @media (max-width:860px) {
    .dd2-teamfeature {
      padding: 56px 0;
    }
    .dd2-teamfeature__inner {
      grid-template-columns: 1fr;
      gap: 28px;
    }
  }
  @media (max-width:420px) {
    .dd2-teachers {
      grid-template-columns: 1fr;
    }
    .dd2-teachers .dd2-teacher {
      grid-template-columns: 72px 1fr;
    }
    .dd2-teachers .dd2-teacher__photo {
      width: 72px;
    }
  }
  .dd2-volopts {
    display: grid;
    flex-basis: 100%;
    grid-template-columns: repeat(auto-fit,minmax(260px,1fr));
    gap: 14px;
    margin: 6px 0 0;
    padding: 0;
    list-style: none;
  }
  .dd2-volopt {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    padding: 22px;
    border: 1px solid rgb(194 138 255/.35);
    border-radius: 16px;
    background: rgb(8 8 11/.4);
  }
  .dd2-volopt h4 {
    margin: 0;
    font-size: 1.1rem;
    font-weight: 800;
    text-transform: uppercase;
  }
  .dd2-volopt p {
    flex: 1;
    margin: 0;
    color: var(--muted);
    font-size: .93rem;
  }
  .dd2-volopt .dd2-btn {
    margin-top: 6px;
  }
  .dd2-volopt__mark {
    font-size: 18px;
  }
  :where(.dd2-header,.dd2-pagehero,.dd2-section,.dd2-hero,.dd2-footer,.dd2-benefits,.dd2-aside) a {
    color: inherit;
    text-decoration: none;
  }
  :where(.dd2-header,.dd2-section,.dd2-hero,.dd2-footer,.dd2-pagehero,.dd2-aside) :is(button,input,select,textarea) {
    font: inherit;
  }
  :where(.dd2-header,.dd2-pagehero,.dd2-section,.dd2-hero,.dd2-footer,.dd2-benefits,.dd2-aside,.dd2-detail,.dd2-page) :where(h1,h2,h3,h4,h5,h6,strong,b,th) {
    font-weight: 700;
  }
  :is(.dd2-fact__icon,.dd2-learn__icon) svg {
    display: block;
    width: 1em;
    height: 1em;
  }
  :is(.dd2-card__photo,.dd2-tcard__photo,.dd2-hero__media,.dd2-panel--photo,.dd2-story__photo,.dd2-contactphoto,.dd2-teacher__photo,.dd2-header__logo) img {
    display: block;
    max-width: 100%;
  }
  [hidden] {
    display: none;
  }
  body>header {
    position: sticky;
    top: 0;
    z-index: 40;
  }
  .admin-bar>header {
    top: var(--wp-admin--admin-bar--height,32px);
  }
  .dd2-header__logo {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    line-height: 0;
  }
  .dd2-header__name {
    font-size: 1.45rem;
    font-weight: 900;
    letter-spacing: -1px;
  }
  .dd2-mobilenav {
    display: none;
  }
  .dd2-mobilenav.is-open {
    display: block;
    border-top: 1px solid var(--line);
    background: #09080d;
  }
  .dd2-mobilenav__list {
    margin: 0;
    padding: 6px 4% 14px;
    list-style: none;
  }
  .dd2-mobilenav__list a {
    display: block;
    padding: 13px 4px;
    border-bottom: 1px solid #1f1828;
    font-size: .88rem;
    font-weight: 900;
    text-transform: uppercase;
  }
  @media (min-width:801px) {
    .dd2-mobilenav.is-open {
      display: none;
    }
  }
  @media (min-width:801px) and (max-width:1050px) {
    .dd2-nav__list a {
      font-size: .72rem;
    }
    .dd2-header__logo img {
      width: 185px;
    }
  }
  .screen-reader-text {
    position: absolute !important;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0,0,0,0);
    white-space: nowrap;
    border: 0;
  }
  .dd2-linkbutton {
    padding: 0;
    border: 0;
    background: none;
    cursor: pointer;
    font: inherit;
  }
  .dd2-teacher__photo {
    overflow: hidden;
  }
  .dd2-teacher__photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .dd2-hero__play {
    position: absolute;
    z-index: 5;
    left: max(16px,4%);
    bottom: 14px;
    display: inline-flex;
    gap: 8px;
    align-items: center;
    width: auto;
    padding: 9px 16px;
    border: 2px solid #fff;
    border-radius: 30px;
    background: var(--lav);
    color: var(--ink);
    font-size: .85rem;
    font-weight: 800;
    line-height: 1;
    cursor: pointer;
  }
  .dd2-hero__play[hidden] {
    display: none;
  }
  .dd2-card__social {
    margin: 0 0 14px;
  }
  .dd2-cards--text .dd2-card {
    padding: 3px;
    border-radius: 14px;
  }
  .dd2-cards--text .dd2-card__title {
    margin: 0 0 10px;
    font-size: 1.17rem;
    text-transform: none;
  }
  .dd2-panel__title {
    margin: 12px 0 14px;
    font-size: 1.17rem;
    font-weight: 700;
  }
  .dd2-panel__group {
    margin: 22px 0 10px;
    font-size: 18px;
    font-weight: 700;
  }
  .dd2-panel__bigtitle {
    margin-bottom: 14px;
  }
  .dd2-panel__inner {
    position: relative;
  }
  .dd2-head__intro {
    margin-bottom: 18px;
  }
  .dd2-cta__text p {
    margin: 0;
  }
  .dd2-bueno__enroll {
    display: inline-block;
    margin-top: 14px;
    color: #fff;
  }
  .dd2-aud-choice {
    margin: -6px 0 14px;
    color: var(--muted);
  }
  .dd2-aud-choice b {
    color: var(--lav);
  }
  .dd2-aud-intro {
    max-width: 820px;
    margin-bottom: 10px;
  }
  .dd2-group__extra {
    margin: -6px 0 16px;
  }
  .dd2-booking__title {
    font-size: clamp(1.8rem,3.6vw,2.8rem);
  }
  .dd2-faq__a {
    max-width: 760px;
    margin: 0 0 20px;
    color: var(--muted);
  }
  .dd2-faq__a p {
    margin: 0 0 .8em;
  }
  .dd2-story--text {
    grid-template-columns: minmax(0,1fr);
  }
  .dd2-story--text .dd2-prose {
    max-width: 820px;
  }
  .dd2-prose > .dd2-eyebrow {
    margin-bottom: 0;
  }
  .dd2-event__link {
    display: inline-block;
    margin-top: 6px;
    font-size: .88rem;
  }
  .dd2-footer__links {
    display: flex;
    flex-wrap: wrap;
    gap: 0 6px;
    align-items: center;
  }
  .dd2-footer__links>*+*::before {
    margin-right: 6px;
    content: '·';
  }
  .dd2-footer__links nav {
    display: flex;
    align-items: center;
  }
  .dd2-footer__menu {
    display: flex;
    flex-wrap: wrap;
    gap: 0 6px;
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .dd2-footer__menu li+li::before {
    margin-right: 6px;
    content: '·';
  }
  .dd2-footer a {
    color: var(--muted);
  }
  .dd2-footer-cta {
    padding-top: 20px;
  }
  .dd2-formbox .dd-form input[type='submit'] {
    width: 100%;
  }
}
@layer menu {
  .dd2-header .dd2-nav__list .menu-item > a, .dd2-header .dd2-mobilenav__list .menu-item > a, .dd2-footer .dd2-footer__menu .menu-item > a {
    color: inherit !important;
  }
  .dd2-header .dd2-nav__list .menu-item > a {
    color: var(--color-dd-white) !important;
  }
  .dd2-header .dd2-nav__list .menu-item > a:hover, .dd2-header .dd2-nav__list .menu-item > a:focus-visible, .dd2-header .dd2-nav__list .current-menu-item:not(.menu-item-type-custom) > a, .dd2-header .dd2-mobilenav__list .current-menu-item:not(.menu-item-type-custom) > a, .dd2-header .dd2-nav__list .current-page-ancestor > a, .dd2-header .dd2-mobilenav__list .current-page-ancestor > a, .dd2-footer .dd2-footer__menu .menu-item > a:hover {
    color: var(--color-primary) !important;
  }
}
.dd-form {
  margin: 0;
  color: var(--color-dd-white);
  font-size: 15px;
}
.dd-form__title {
  margin: 26px 0 12px;
  color: var(--color-dd-white);
  font-size: 1.15rem;
  font-weight: 800;
}
.dd-form > .dd-form__title:first-child {
  margin-top: 0;
}
.dd-form__intro {
  margin: 0 0 14px;
  color: var(--color-dd-muted);
  font-size: 0.85rem;
}
.dd-form__intro a {
  color: var(--color-primary);
}
.dd-form__row {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin: 0 0 13px;
}
@media (min-width: 521px) {
  .dd-form--grid, .dd-form--horizontal, .dd-form--stacked {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 13px;
  }
  .dd-form--grid > :is(.dd-form__title, .dd-form__intro, .dd-form__row--full, .dd-form__submit, .dd-form__row:has(textarea)), .dd-form--horizontal > :is(.dd-form__title, .dd-form__intro, .dd-form__row--full, .dd-form__submit, .dd-form__row:has(textarea)), .dd-form--stacked > :is(.dd-form__title, .dd-form__intro, .dd-form__row--full, .dd-form__submit, .dd-form__row:has(textarea)) {
    grid-column: 1 / -1;
  }
}
.dd-form__label {
  display: block;
  color: var(--color-dd-white);
  font-size: 0.84rem;
  font-weight: 800;
}
.dd-form__req {
  margin-left: 2px;
  color: var(--color-primary);
}
.dd-form__hint {
  display: block;
  margin-top: 4px;
  color: var(--color-dd-muted);
  font-size: 0.78rem;
}
.dd-form .wpcf7-form-control-wrap {
  display: block;
}
.dd-form input[type='text'], .dd-form input[type='email'], .dd-form input[type='tel'], .dd-form input[type='url'], .dd-form input[type='number'], .dd-form input[type='date'], .dd-form select, .dd-form textarea {
  display: block;
  width: 100%;
  margin: 0;
  padding: 12px;
  border: 1px solid var(--color-dd-input-line);
  border-radius: 8px;
  background-color: var(--color-dd-input);
  box-shadow: none;
  color: #fff;
  font-family: var(--font-sans);
  font-size: 15px;
  line-height: 1.4;
}
.dd-form ::placeholder {
  color: #8f879b;
}
.dd-form select {
  padding-right: 36px;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='none' stroke='%23C28AFF' stroke-width='1.6' d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 12px 8px;
}
.dd-form select option {
  background: var(--color-dd-panel);
  color: #fff;
}
.dd-form textarea {
  min-height: 92px;
  resize: vertical;
}
.dd-form input:focus, .dd-form select:focus, .dd-form textarea:focus {
  border-color: var(--color-primary);
  outline: 0;
  box-shadow: 0 0 0 3px rgb(194 138 255 / 0.25);
}
.dd-form__inline {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}
.dd-form .wpcf7-checkbox, .dd-form .wpcf7-radio, .dd-form .wpcf7-acceptance {
  display: block;
}
.dd-form .wpcf7-list-item {
  display: block;
  margin: 0 0 6px;
}
.dd-form .wpcf7-list-item label {
  display: inline-flex;
  gap: 10px;
  align-items: flex-start;
  cursor: pointer;
  color: var(--color-dd-muted);
  font-size: 0.9rem;
  font-weight: 500;
  line-height: 1.45;
}
.dd-form input[type='checkbox'], .dd-form input[type='radio'] {
  flex: none;
  width: 16px;
  height: 16px;
  margin: 2px 0 0;
  accent-color: var(--color-primary);
}
.dd-form .wpcf7-list-item-label a {
  color: var(--color-primary);
  text-decoration: underline;
}
.dd-form__checks {
  margin: 0 0 13px;
}
@media (min-width: 768px) {
  .dd-form__checks--cols .wpcf7-checkbox {
    columns: 2 240px;
    column-gap: 24px;
  }
  .dd-form__checks--cols .wpcf7-list-item {
    break-inside: avoid;
  }
}
.wpcf7-form .wpcf7-turnstile {
  grid-column: 1 / -1;
  min-height: 65px;
  margin: 8px 0 4px;
}
.wpcf7-form .wpcf7-turnstile iframe {
  max-width: 100%;
}
.dd-form__submit {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
  margin-top: 6px;
}
.dd-form input[type='submit'] {
  width: 100%;
  padding: 12px 19px;
  border: 1px solid var(--color-primary);
  border-radius: 999px;
  background: var(--color-primary);
  color: var(--color-dd-ink);
  cursor: pointer;
  font-family: var(--font-sans);
  font-size: 0.85rem;
  font-weight: 900;
  transition: background-color 0.2s;
}
.dd-form input[type='submit']:hover, .dd-form input[type='submit']:focus-visible {
  border-color: var(--color-primary-300);
  background: var(--color-primary-300);
}
.dd-form input[type='submit']:disabled {
  cursor: not-allowed;
  opacity: 0.6;
}
.dd-form .wpcf7-spinner {
  margin: 0;
}
.dd-form .wpcf7-not-valid {
  border-color: #ff7b8a !important;
}
.dd-form .wpcf7-not-valid-tip {
  display: block;
  margin-top: 4px;
  color: #ff9aa6;
  font-size: 0.8rem;
}
body .wpcf7 form .wpcf7-response-output {
  margin: 14px 0 0;
  padding: 13px;
  border: 1px solid var(--color-primary);
  border-radius: 10px;
  color: #f0eaf7;
  font-size: 0.9rem;
}
body .wpcf7 form.invalid .wpcf7-response-output, body .wpcf7 form.unaccepted .wpcf7-response-output, body .wpcf7 form.failed .wpcf7-response-output, body .wpcf7 form.spam .wpcf7-response-output {
  border-color: #ff7b8a;
}
body .wpcf7 form.sent .wpcf7-response-output {
  border-color: #7be3a5;
}
body.dd2-nav-open .wcc-btn-revisit-wrapper {
  display: none !important;
}
.wcc-overlay {
  background: rgb(8 8 11/.72) !important;
}
.wcc-modal {
  border: 0 !important;
  border-radius: 20px !important;
  background: transparent !important;
  box-shadow: none !important;
}
.wcc-consent-container .wcc-consent-bar,.wcc-modal .wcc-preference-center {
  border: 1px solid #2d2238 !important;
  border-radius: 20px !important;
  background: #120d18 !important;
  box-shadow: 0 30px 80px rgb(0 0 0/.55) !important;
  color: #ddd6e5 !important;
  font-family: Inter,ui-sans-serif,system-ui,sans-serif !important;
}
.wcc-consent-container .wcc-consent-bar {
  position: relative;
  overflow: hidden;
  padding: 30px 30px 26px !important;
}
.wcc-consent-container .wcc-consent-bar::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 4px;
  background: #c28aff;
  content: '';
}
.wcc-consent-container .wcc-title,.wcc-modal .wcc-preference-title {
  margin: 0 0 12px !important;
  color: #faf8fc !important;
  font-family: Impact,'Anton','Arial Narrow',sans-serif !important;
  font-size: 1.7rem !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  letter-spacing: .02em !important;
  text-transform: uppercase !important;
}
.wcc-consent-container .wcc-notice-des,.wcc-consent-container .wcc-notice-des *,.wcc-modal .wcc-preference-content-wrapper,.wcc-modal .wcc-preference-content-wrapper *,.wcc-modal .wcc-accordion-header-des,.wcc-modal .wcc-accordion-header-des * {
  color: #c1bacb !important;
  font-size: .92rem !important;
  line-height: 1.6 !important;
}
.wcc-consent-container a,.wcc-modal a,.wcc-consent-container .wcc-show-desc-btn,.wcc-modal .wcc-show-desc-btn {
  color: #c28aff !important;
  font-weight: 700 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}
.wcc-consent-container .wcc-notice-btn-wrapper,.wcc-modal .wcc-prefrence-btn-wrapper,.wcc-modal .wcc-preference-footer .wcc-btn-wrapper {
  gap: 10px !important;
}
.wcc-consent-container .wcc-btn,.wcc-modal .wcc-btn {
  margin: 0 !important;
  padding: 12px 22px !important;
  border: 2px solid #c28aff !important;
  border-radius: 999px !important;
  background: transparent !important;
  color: #faf8fc !important;
  font-family: Inter,ui-sans-serif,system-ui,sans-serif !important;
  font-size: .88rem !important;
  font-weight: 800 !important;
  line-height: 1.1 !important;
  text-transform: none !important;
  transition: background .2s,color .2s,transform .2s;
  cursor: pointer;
}
.wcc-consent-container .wcc-btn:hover,.wcc-modal .wcc-btn:hover {
  background: rgb(194 138 255/.15) !important;
  transform: translateY(-1px);
}
.wcc-consent-container .wcc-btn-accept,.wcc-modal .wcc-btn-accept,.wcc-modal .wcc-btn-preferences {
  background: #c28aff !important;
  color: #08080b !important;
}
.wcc-consent-container .wcc-btn-accept:hover,.wcc-modal .wcc-btn-accept:hover,.wcc-modal .wcc-btn-preferences:hover {
  background: #d4adff !important;
  border-color: #d4adff !important;
}
.wcc-consent-container .wcc-btn:focus-visible,.wcc-modal .wcc-btn:focus-visible,.wcc-modal button:focus-visible,.wcc-btn-revisit-wrapper:focus-within {
  outline: 3px solid #faf8fc !important;
  outline-offset: 3px;
}
.wcc-consent-container .wcc-banner-btn-close img,.wcc-modal .wcc-btn-close img {
  filter: invert(1) brightness(1.4);
}
.wcc-modal .wcc-preference-header {
  padding: 22px 26px !important;
  border-bottom: 1px solid #2d2238 !important;
}
.wcc-modal .wcc-preference-header .wcc-preference-title {
  margin: 0 !important;
  font-size: 1.45rem !important;
}
.wcc-modal .wcc-preference-body-wrapper {
  padding: 20px 26px !important;
}
.wcc-modal .wcc-accordion {
  border-bottom: 1px solid #2d2238 !important;
}
.wcc-modal .wcc-accordion-btn,.wcc-modal .wcc-accordion-header .wcc-accordion-btn {
  color: #faf8fc !important;
  font-size: .98rem !important;
  font-weight: 800 !important;
}
.wcc-modal .wcc-always-active {
  color: #c28aff !important;
  font-weight: 800 !important;
}
.wcc-modal .wcc-chevron-right {
  border-color: #c28aff !important;
}
.wcc-modal .wcc-chevron-right::before {
  border-color: #c28aff !important;
}
.wcc-modal .wcc-switch input[type=checkbox] {
  background: #3a2f47 !important;
}
.wcc-modal .wcc-switch input[type=checkbox]:checked {
  background: #c28aff !important;
}
.wcc-modal .wcc-switch input[type=checkbox]::before {
  background: #faf8fc !important;
}
.wcc-modal .wcc-accordion-body,.wcc-modal .wcc-audit-table,.wcc-modal .wcc-cookie-audit-table {
  border-radius: 12px !important;
  background: #1a1322 !important;
  color: #c1bacb !important;
}
.wcc-modal .wcc-cookie-audit-table *,.wcc-modal .wcc-audit-table * {
  border-color: #2d2238 !important;
  color: #c1bacb !important;
}
.wcc-modal .wcc-footer-wrapper,.wcc-modal .wcc-preference-footer,.wcc-modal .wcc-prefrence-btn-wrapper {
  border-top: 1px solid #2d2238 !important;
  background: #120d18 !important;
}
.wcc-modal .wcc-footer-shadow {
  display: none !important;
}
.wcc-modal .wcc-google-privacy-policy,.wcc-modal .wcc-google-privacy-policy * {
  color: #c1bacb !important;
}
.wcc-btn-revisit-wrapper {
  border: 2px solid #faf8fc !important;
  background: #c28aff !important;
  box-shadow: 0 8px 24px rgb(0 0 0/.45) !important;
}
.wcc-btn-revisit-wrapper img {
  filter: brightness(0);
}
.wcc-consent-container [class*=powered],.wcc-modal [class*=powered] {
  background: #0d0911 !important;
  color: #8b8494 !important;
}
@media (max-width:600px) {
  .wcc-consent-container .wcc-consent-bar {
    padding: 24px 20px 20px !important;
    border-radius: 18px 18px 0 0 !important;
  }
  .wcc-consent-container .wcc-title {
    font-size: 1.45rem !important;
  }
  .wcc-consent-container .wcc-notice-btn-wrapper {
    flex-direction: column-reverse !important;
  }
  .wcc-consent-container .wcc-notice-btn-wrapper .wcc-btn {
    width: 100% !important;
  }
}
.dd2-header__search {
  display: grid;
  flex: none;
  place-items: center;
  width: 42px;
  height: 42px;
  padding: 0;
  border: 1px solid #4a3b55;
  border-radius: 12px;
  background: #15121a;
  color: #faf8fc;
  cursor: pointer;
  transition: border-color .2s,background .2s;
}
.dd2-header__search:hover,.dd2-header__search[aria-expanded=true] {
  border-color: #c28aff;
  background: #211a2a;
}
.dd2-header__search:focus-visible {
  outline: 2px solid #c28aff;
  outline-offset: 2px;
}
.dd2-header__search-close {
  display: none;
}
.dd2-header__search[aria-expanded=true] .dd2-header__search-open {
  display: none;
}
.dd2-header__search[aria-expanded=true] .dd2-header__search-close {
  display: block;
}
.dd2-searchbar {
  position: absolute;
  top: 100%;
  right: 0;
  left: 0;
  z-index: 40;
  padding: 18px 0 20px;
  border-bottom: 1px solid #2c2434;
  background: rgb(9 8 13/.97);
  box-shadow: 0 22px 40px rgb(0 0 0/.45);
  backdrop-filter: blur(12px);
}
.dd2-searchbar[hidden] {
  display: none;
}
.dd2-searchform {
  position: relative;
  display: flex;
  gap: 10px;
  align-items: center;
  max-width: 760px;
  margin: 0 auto;
}
.dd2-searchform__icon {
  position: absolute;
  top: 50%;
  left: 18px;
  color: #c28aff;
  transform: translateY(-50%);
  pointer-events: none;
}
.dd2-searchform__input {
  flex: 1;
  min-width: 0;
  height: 52px;
  padding: 0 18px 0 50px;
  border: 1px solid #4a3b55;
  border-radius: 999px;
  background: #0b0a0e;
  color: #faf8fc;
  font: inherit;
  font-size: 1rem;
  -webkit-appearance: none;
  appearance: none;
}
.dd2-searchform__input::placeholder {
  color: #8b8494;
}
.dd2-searchform__input:focus {
  border-color: #c28aff;
  outline: 0;
  box-shadow: 0 0 0 3px rgb(194 138 255/.25);
}
.dd2-searchform__input::-webkit-search-cancel-button {
  filter: invert(1) brightness(1.4);
}
.dd2-searchform .dd2-searchform__submit {
  flex: none;
  width: auto;
  height: 52px;
  margin: 0;
  padding: 0 24px;
}
.dd2-searchform--page {
  max-width: none;
  margin: 0 0 30px;
}
@media (max-width:600px) {
  .dd2-searchbar {
    padding: 14px 0 16px;
  }
  .dd2-searchform__input {
    height: 48px;
    padding-left: 44px;
    font-size: 16px;
  }
  .dd2-searchform__icon {
    left: 15px;
  }
  .dd2-searchform .dd2-searchform__submit {
    height: 48px;
    padding: 0 16px;
  }
  .dd2-searchform--header .dd2-searchform__submit {
    position: absolute;
    top: 4px;
    right: 4px;
    height: 40px;
    padding: 0 14px;
    font-size: .8rem;
  }
  .dd2-searchform--header .dd2-searchform__input {
    padding-right: 96px;
    text-overflow: ellipsis;
  }
}
@media (max-width:420px) {
  .dd2-header__search {
    width: 38px;
    height: 38px;
    border-radius: 11px;
  }
  .dd2-header__end {
    gap: 6px;
  }
  .dd2-header__toggle {
    width: 38px !important;
    height: 38px !important;
    border-radius: 11px;
  }
}
@media (max-width:400px) {
  .dd2-header__logo img {
    width: 108px !important;
  }
  .dd2-header__cta {
    padding: 7px 9px !important;
    font-size: .68rem !important;
    gap: 5px !important;
  }
}
@media (max-width:360px) {
  .dd2-header__logo img {
    width: 96px !important;
  }
  .dd2-header__bar {
    gap: 6px !important;
  }
  .dd2-header__cta {
    padding: 7px 9px !important;
    font-size: .66rem !important;
  }
  .dd2-header__cta .dd2-arrow {
    display: none;
  }
}
.dd2-searchpage {
  padding-top: 44px;
}
.dd2-results {
  display: grid;
  gap: 14px;
  margin: 0;
  padding: 0;
  list-style: none;
  counter-reset: none;
}
.dd2-result {
  position: relative;
  display: grid;
  grid-template-columns: 120px minmax(0,1fr);
  gap: 20px;
  align-items: center;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: var(--panel);
  transition: border-color .2s,transform .2s;
}
.dd2-result:hover,.dd2-result:focus-within {
  border-color: var(--lav);
  transform: translateY(-2px);
}
.dd2-result__media {
  aspect-ratio: 4/3;
  overflow: hidden;
  border-radius: 11px;
  background: #1c1523;
}
.dd2-result__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 25%;
}
.dd2-result__media--empty {
  display: grid;
  place-items: center;
}
.dd2-result__media--empty .dd2-result__mark {
  width: 30px;
  height: 30px;
  color: var(--lav);
}
.dd2-result__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 12px;
  align-items: center;
  margin: 0 0 6px;
  font-size: .75rem;
}
.dd2-result__type {
  padding: 3px 9px;
  border-radius: 99px;
  background: #2a1d38;
  color: var(--lav);
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.dd2-result__trail {
  color: #8b8494;
}
.dd2-result__title {
  margin: 0 0 6px;
  font-size: 1.15rem;
  font-weight: 800;
  line-height: 1.25;
}
.dd2-result__title a {
  color: var(--white);
  text-decoration: none;
}
.dd2-result__title a::after {
  position: absolute;
  inset: 0;
  border-radius: 16px;
  content: '';
}
.dd2-result__title a:focus-visible {
  outline: 0;
}
.dd2-result:focus-within {
  outline: 2px solid var(--lav);
  outline-offset: 2px;
}
.dd2-result__excerpt {
  display: -webkit-box;
  margin: 0;
  overflow: hidden;
  color: var(--muted);
  font-size: .92rem;
  line-height: 1.55;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.dd2-results mark,.dd2-result mark {
  padding: 0 2px;
  border-radius: 3px;
  background: rgb(194 138 255/.28);
  color: var(--white);
}
.dd2-searchpage__empty {
  padding: 28px;
}
.dd2-searchpage__empty h2 {
  margin: 0 0 8px;
  font-size: 1.3rem;
  font-weight: 800;
}
.dd2-searchpage__empty .dd2-pills {
  margin-top: 16px;
}
.dd2-pagination {
  margin-top: 28px;
}
.dd2-pagination ul {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.dd2-pagination a,.dd2-pagination span {
  display: grid;
  place-items: center;
  min-width: 42px;
  height: 42px;
  padding: 0 14px;
  border: 1px solid var(--line);
  border-radius: 999px;
  color: var(--white);
  font-size: .88rem;
  font-weight: 800;
  text-decoration: none;
}
.dd2-pagination a:hover {
  border-color: var(--lav);
}
.dd2-pagination .current {
  border-color: var(--lav);
  background: var(--lav);
  color: var(--ink);
}
@media (max-width:560px) {
  .dd2-result {
    grid-template-columns: 76px minmax(0,1fr);
    gap: 14px;
    padding: 12px;
  }
  .dd2-result__title {
    font-size: 1.02rem;
  }
}
.dd2-slidernav {
  display: none;
}
@media (max-width:700px) {
  .dd2-cards--slider {
    display: flex !important;
    gap: 14px;
    margin-right: -16px;
    padding-right: 16px;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    scroll-padding-left: 0;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }
  .dd2-cards--slider::-webkit-scrollbar {
    display: none;
  }
  .dd2-cards--slider>.dd2-card {
    flex: 0 0 calc((100% - 14px)/1.5);
    scroll-snap-align: start;
  }
  .dd2-cards--slider>.dd2-card:hover {
    transform: none;
  }
  .dd2-slidernav {
    display: flex;
    gap: 10px;
    justify-content: center;
    margin-top: 18px;
  }
  .dd2-slidernav__btn {
    display: grid;
    place-items: center;
    width: 46px;
    height: 46px;
    padding: 0;
    border: 1px solid var(--lav);
    border-radius: 999px;
    background: transparent;
    color: var(--white);
    cursor: pointer;
    transition: background .2s,opacity .2s;
  }
  .dd2-slidernav__btn:hover,.dd2-slidernav__btn:focus-visible {
    background: var(--lav);
    color: var(--ink);
  }
  .dd2-slidernav__btn:disabled {
    opacity: .35;
    cursor: default;
    background: transparent;
    color: var(--white);
  }
}
@media (max-width:800px) {
  .dd2-header__logo {
    flex: 1 1 auto !important;
    min-width: 72px;
  }
  .dd2-header__logo img {
    width: 100% !important;
    max-width: 150px;
    height: auto;
  }
  .dd2-header__end {
    flex: none;
  }
}
.dd2-filterbar--lessen {
  margin-bottom: 12px;
}
.dd2-filterbar__link {
  flex: none;
  width: auto !important;
  margin: 0 !important;
  white-space: nowrap;
}
@media (min-width:801px) {
  .dd2-filterbar--lessen {
    flex-wrap: nowrap;
  }
  .dd2-filterbar--lessen .dd2-filters {
    flex-wrap: wrap;
  }
}
.dd2-pagehero--full {
  display: block;
  height: auto;
  min-height: 0;
  padding: 0;
}
.dd2-pagehero--full .dd2-pagehero__bg {
  display: none;
}
.dd2-pagehero--full .dd2-pagehero__photo {
  position: relative;
  z-index: -2;
  margin: 0;
}
.dd2-pagehero--full .dd2-pagehero__photo img {
  display: block;
  width: 100%;
  height: auto;
}
.dd2-pagehero--full::before {
  background: linear-gradient(180deg,rgb(8 8 11/.35) 0%,transparent 22%,transparent 45%,rgb(8 8 11/.6) 68%,rgb(8 8 11/.95) 100%);
}
.dd2-pagehero--full>.dd2-wrap {
  position: absolute;
  right: 0;
  bottom: clamp(28px,4vw,56px);
  left: 0;
  z-index: 1;
}
.dd2-pagehero--full>.dd2-wrap>* {
  max-width: 760px;
}
.dd2-pagehero--full .dd2-crumbs {
  margin-bottom: 6px;
}
.dd2-pagehero--full .dd2-pagehero__title {
  font-size: clamp(2.4rem,5vw,4.6rem);
}
@media (max-width:800px) {
  .dd2-pagehero--full {
    padding: 0 0 32px;
  }
  .dd2-pagehero--full::before {
    content: none;
  }
  .dd2-pagehero--full>.dd2-wrap {
    position: relative;
    bottom: auto;
    padding-top: 22px;
  }
  .dd2-pagehero--full>.dd2-wrap>* {
    max-width: none;
  }
}
.dd2-crewcard__photo {
  position: relative;
  isolation: isolate;
}
.dd2-crewcard__photo img {
  filter: grayscale(1) contrast(1.1);
  transition: filter .45s,transform .7s;
}
.dd2-crewcard__photo:not(.dd2-crewcard__photo--ph)::before {
  position: absolute;
  inset: 0;
  background: linear-gradient(0deg,#3a0f6e 0%,#8a4fd6 55%,#c28aff 100%);
  mix-blend-mode: color;
  transition: opacity .45s;
  content: '';
  pointer-events: none;
}
.dd2-crewcard__photo:not(.dd2-crewcard__photo--ph)::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(0deg,rgb(30 6 58/.95) 0%,rgb(74 28 130/.55) 35%,rgb(194 138 255/.28) 100%);
  transition: background .45s;
  content: '';
  pointer-events: none;
}
.dd2-crewcard:hover .dd2-crewcard__photo img,.dd2-crewcard:focus-within .dd2-crewcard__photo img {
  filter: none;
  transform: scale(1.035);
}
.dd2-crewcard:hover .dd2-crewcard__photo::before,.dd2-crewcard:focus-within .dd2-crewcard__photo::before {
  opacity: 0;
}
.dd2-crewcard:hover .dd2-crewcard__photo::after,.dd2-crewcard:focus-within .dd2-crewcard__photo::after {
  background: linear-gradient(0deg,rgb(30 6 58/.92) 0%,rgb(30 6 58/.2) 40%,transparent 60%);
}
.dd2-crewcard {
  transition: border-color .25s,transform .25s;
}
.dd2-crewcard:hover,.dd2-crewcard:focus-within {
  border-color: var(--lav);
  transform: translateY(-3px);
}
@media (prefers-reduced-motion:reduce) {
  .dd2-crewcard,.dd2-crewcard__photo img {
    transition: none;
  }
  .dd2-crewcard:hover,.dd2-crewcard:hover .dd2-crewcard__photo img {
    transform: none;
  }
}
