/* L1 Plus product detail --------------------------------------------------- */

.l1-plus-product-page {
    --l1p-nav-height: 3.35rem;
    --l1p-nav-edge-gap: clamp(1.6rem, 2.8vw, 3.25rem);
    --l1p-anchor-depth: 1.5rem;
    --l1p-anchor-scroll-shift: 3.125rem;
    background: #000000;
}

.l1-plus-product-page .site-header {
    position: relative;
}

.l1p-product-nav-sentinel {
    width: 100%;
    height: 0;
}

.l1p-product-nav {
    position: sticky;
    z-index: 96;
    top: 0;
    width: 100%;
    height: var(--l1p-nav-height);
    border-bottom: 0.0625rem solid rgba(128, 128, 255, 0.26);
    background: rgba(8, 8, 18, 0.82);
    color: #f5f5fb;
    -webkit-backdrop-filter: blur(1.125rem) saturate(120%);
    backdrop-filter: blur(1.125rem) saturate(120%);
    transition:
        background-color 360ms ease,
        border-color 360ms ease;
}

.l1p-product-nav.is-stuck {
    border-bottom-color: rgba(128, 128, 255, 0.5);
    background: rgba(5, 5, 13, 0.78);
}

.l1p-product-nav__inner {
    position: relative;
    width: 100%;
    height: 100%;
    padding-inline: var(--page-gutter);
}

.l1p-product-nav__brand {
    position: absolute;
    z-index: 2;
    top: 50%;
    left: var(--page-gutter);
    display: grid;
    width: 1.95rem;
    height: 1.95rem;
    place-items: center;
    opacity: 0;
    pointer-events: none;
    text-decoration: none;
    transform: translate(-0.8rem, -50%) scale(0.82);
    visibility: hidden;
    transition:
        opacity 320ms ease,
        transform 420ms cubic-bezier(0.16, 1, 0.3, 1),
        visibility 0s linear 420ms;
}

.l1p-product-nav.is-stuck .l1p-product-nav__brand {
    opacity: 1;
    pointer-events: auto;
    transform: translate(0, -50%) scale(1);
    visibility: visible;
    transition-delay: 80ms, 80ms, 0s;
}

.l1p-product-nav__brand img {
    display: block;
    width: 100%;
    height: auto;
}

.l1p-product-nav__rail {
    display: flex;
    width: 100%;
    height: 100%;
    align-items: center;
    justify-content: center;
    justify-content: safe center;
    gap: clamp(1rem, 1.55vw, 1.75rem);
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scrollbar-width: none;
}

.l1p-product-nav__rail::-webkit-scrollbar {
    display: none;
}

.l1p-product-nav__top,
.l1p-product-nav__link,
.l1p-product-nav__purchase {
    flex: 0 0 auto;
    outline: 0;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
    transition:
        color var(--transition),
        background-color var(--transition),
        opacity var(--transition);
}

.l1p-product-nav__top {
    display: grid;
    width: 1.75rem;
    height: 2rem;
    place-items: center;
    margin-right: var(--l1p-nav-edge-gap);
    color: rgba(255, 255, 255, 0.72);
}

.l1p-product-nav__arrow {
    display: block;
    width: 0.58rem;
    height: 0.58rem;
    border-top: 0.1rem solid currentColor;
    border-left: 0.1rem solid currentColor;
    transform: translateY(0.12rem) rotate(45deg);
}

.l1p-product-nav__link {
    position: relative;
    padding-block: 0.35rem;
    color: rgba(255, 255, 255, 0.88);
    font-size: 0.68rem;
    font-weight: 600;
    letter-spacing: 0.095em;
}

.l1p-product-nav__link:hover,
.l1p-product-nav__link:focus-visible,
.l1p-product-nav__link.is-active,
.l1p-product-nav__top:hover,
.l1p-product-nav__top:focus-visible {
    color: #5da4d0;
}

.l1p-product-nav__purchase {
    display: inline-flex;
    min-height: 2.45rem;
    align-items: center;
    justify-content: center;
    margin-left: var(--l1p-nav-edge-gap);
    padding-inline: clamp(1.25rem, 2vw, 2rem);
    background: var(--color-primary);
    color: #ffffff;
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 0.105em;
}

.l1p-product-nav__purchase:hover,
.l1p-product-nav__purchase:focus-visible {
    background: var(--color-primary-hover);
    color: #ffffff;
}

@media (min-width: 75rem) {
    html[lang="en"] body.l1-plus-product-page .l1p-product-nav__purchase,
    html[lang="en"] body.l1-product-page .l1p-product-nav__purchase,
    html[lang="en"] body.v17-product-page .l1p-product-nav__purchase,
    html[lang="en"] body.v13-product-page .l1p-product-nav__purchase,
    html[lang="en"] body.klangshield-product-page .l1p-product-nav__purchase {
        min-width: 9rem;
    }
}

.l1p-page {
    overflow: clip;
    background: #000000;
}

.l1p-scroll-target {
    scroll-margin-top: calc(
        var(--l1p-nav-height) - var(--l1p-anchor-depth) - var(--l1p-anchor-scroll-shift)
    );
}

.l1p-hero {
    position: relative;
    min-height: clamp(46rem, 72vw, 61rem);
    overflow: hidden;
    background:
        linear-gradient(90deg, rgba(0, 0, 0, 0.18), transparent 25%, transparent 75%, rgba(0, 0, 0, 0.22)),
        url("../images/l1phero.jpg") center center / cover no-repeat;
    color: #ffffff;
}

.l1p-hero::after {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.08), transparent 32%, rgba(0, 0, 0, 0.32));
    content: "";
    pointer-events: none;
}

.l1p-hero__inner {
    position: relative;
    z-index: 1;
    display: flex;
    min-height: inherit;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding-block: clamp(3.25rem, 6vw, 5.75rem);
}

.l1p-hero__heading {
    display: block;
    width: 100%;
    max-width: none;
    align-self: center;
    margin-inline: 0;
    margin-bottom: clamp(2.25rem, 4vw, 3.75rem);
    text-align: center;
}

.l1p-hero__heading h1 {
    width: 100%;
    max-width: none;
    margin-inline: auto;
    margin: 0;
    color: #ffffff;
    font-size: clamp(2.2rem, 4.8vw, 4.9rem);
    font-weight: 200;
    letter-spacing: 0.015em;
    line-height: 1;
    text-align: center;
}

.l1p-hero__heading h1 strong {
    display: inline-block;
    color: #8080ff;
    font-size: 1.18em;
    font-weight: 600;
    letter-spacing: -0.035em;
}

.l1p-hero__heading p {
    width: 100%;
    max-width: none;
    margin: clamp(0.9rem, 1.6vw, 1.35rem) 0 0;
    color: rgba(255, 255, 255, 0.9);
    font-size: clamp(1rem, 1.8vw, 1.5rem);
    font-weight: 300;
    letter-spacing: 0.006em;
    text-align: center;
}

.l1p-hero__heading p strong {
    font-weight: 600;
}

.l1p-youtube {
    position: relative;
    width: min(100%, 64rem);
    aspect-ratio: 16 / 9;
    overflow: hidden;
    border: 0.0625rem solid rgba(128, 128, 255, 0.35);
    background: #030305;
}

.l1p-youtube::after {
    position: absolute;
    inset: 0;
    border: 0.0625rem solid rgba(255, 255, 255, 0.08);
    content: "";
    pointer-events: none;
}

.l1p-youtube iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
    opacity: 0;
    transition: opacity 520ms ease;
}

.l1p-youtube.is-loaded iframe {
    opacity: 1;
}

.l1p-youtube__placeholder {
    position: absolute;
    inset: 0;
    display: grid;
    align-content: center;
    justify-items: center;
    gap: 1rem;
    background:
        linear-gradient(115deg, transparent 32%, rgba(128, 128, 255, 0.08) 50%, transparent 68%),
        #030305;
    color: rgba(255, 255, 255, 0.48);
    transition: opacity 420ms ease;
}

.l1p-youtube.is-loaded .l1p-youtube__placeholder {
    opacity: 0;
    pointer-events: none;
}

.l1p-hero__mobile-visual {
    display: none;
}

.l1p-youtube__line {
    width: min(30vw, 15rem);
    height: 0.0625rem;
    overflow: hidden;
    background: rgba(128, 128, 255, 0.2);
}

.l1p-youtube__line::after {
    display: block;
    width: 45%;
    height: 100%;
    background: #8080ff;
    content: "";
    animation: l1p-film-loading 1.8s ease-in-out infinite;
}

.l1p-youtube__label {
    font-size: 0.68rem;
    font-weight: 500;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

@keyframes l1p-film-loading {
    from {
        transform: translateX(-120%);
    }

    to {
        transform: translateX(270%);
    }
}

.l1p-feature {
    position: relative;
    overflow: hidden;
    border-top: 0.0625rem solid #3b3b3b;
    background: #000000;
    color: #ffffff;
}

.l1p-feature__inner {
    display: grid;
    min-height: 0;
    grid-template-columns: minmax(0, 1.06fr) minmax(19rem, 0.72fr);
    grid-template-areas:
        "logo ."
        "details media";
    grid-template-rows: auto auto;
    align-items: stretch;
    column-gap: clamp(3rem, 7vw, 8.5rem);
    row-gap: clamp(2.25rem, 4vw, 3.75rem);
    padding-block-start: clamp(5rem, 9vw, 9rem);
    padding-block-end: 0;
}

.l1p-feature__logo {
    grid-area: logo;
    display: block;
    width: clamp(3.5rem, 4.8vw, 4.5rem);
    height: auto;
    margin: 0;
    opacity: 0;
    transform: translateY(1rem);
    transition:
        opacity 620ms ease,
        transform 700ms cubic-bezier(0.16, 1, 0.3, 1);
}

.l1p-feature__origin {
    display: none;
}

.l1p-feature__details {
    position: relative;
    z-index: 1;
    display: flex;
    min-width: 0;
    flex-direction: column;
    grid-area: details;
    justify-content: space-between;
    padding-bottom: clamp(2.5rem, 4vw, 4.5rem);
}

.l1p-feature__list {
    display: flex;
    width: min(100%, 46rem);
    flex: 1 1 auto;
    flex-direction: column;
    justify-content: space-between;
    margin: 0;
    padding: 0;
    list-style: none;
}

.l1p-feature__list li {
    width: fit-content;
    max-width: 100%;
    margin: 0;
    color: #f7f7fb;
    font-size: clamp(1.2rem, 2vw, 2.05rem);
    font-weight: 300;
    letter-spacing: 0.005em;
    line-height: 1.12;
    opacity: 0;
    transform: translateY(1.2rem);
    transition:
        color var(--transition),
        opacity 580ms ease calc(140ms + var(--feature-index) * 85ms),
        transform 720ms cubic-bezier(0.16, 1, 0.3, 1) calc(140ms + var(--feature-index) * 85ms);
}

.l1p-feature__list li:hover {
    color: #a8a8ff;
}

.l1p-feature__list i {
    display: block;
    width: 100%;
    height: 0.0625rem;
    margin-block: clamp(1rem, 1.7vw, 1.55rem);
    background: #2f2f61;
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform 900ms cubic-bezier(0.16, 1, 0.3, 1) calc(260ms + var(--feature-index) * 105ms);
}

.l1p-feature.is-visible .l1p-feature__logo,
.l1p-feature.is-visible .l1p-feature__list li {
    opacity: 1;
    transform: translateY(0);
}

.l1p-feature.is-visible .l1p-feature__list i {
    transform: scaleX(1);
}

.l1p-feature__uses {
    width: min(100%, 48rem);
    margin: clamp(2.5rem, 4vw, 4rem) 0 0;
    color: rgba(255, 255, 255, 0.54);
    font-size: clamp(0.72rem, 0.9vw, 0.84rem);
    font-weight: 300;
    letter-spacing: 0.012em;
    line-height: 1.72;
    opacity: 0;
    transform: translateY(1rem);
    transition:
        opacity 650ms ease 720ms,
        transform 750ms cubic-bezier(0.16, 1, 0.3, 1) 720ms;
}

.l1p-feature__uses strong {
    color: rgba(255, 255, 255, 0.88);
    font-weight: 600;
}

.l1p-feature.is-visible .l1p-feature__uses {
    opacity: 1;
    transform: translateY(0);
}

.l1p-feature__media {
    position: relative;
    display: grid;
    min-width: 0;
    align-self: stretch;
    grid-area: media;
    place-items: end center;
    opacity: 0;
    transform: translateX(5rem) scale(0.975);
    transition:
        opacity 850ms ease 260ms,
        transform 1050ms cubic-bezier(0.16, 1, 0.3, 1) 260ms;
}

.l1p-feature.is-visible .l1p-feature__media {
    opacity: 1;
    transform: translateX(0) scale(1);
}

.l1p-feature__video {
    position: relative;
    z-index: 1;
    display: block;
    width: min(100%, 33rem);
    height: auto;
    background: #000000;
    filter: contrast(1.16) brightness(0.95);
}

.l1p-future-anchor {
    display: block;
    width: 100%;
    height: 0;
}

.l1p-versatility {
    position: relative;
    min-height: clamp(43rem, 63vw, 61rem);
    overflow: hidden;
    border-top: 0.0625rem solid #24242c;
    background: #020203;
    color: #ffffff;
}

.l1p-versatility::after {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(0, 0, 0, 0.24), transparent 26%, rgba(0, 0, 0, 0.4)),
        linear-gradient(90deg, rgba(0, 0, 0, 0.08), rgba(0, 0, 0, 0.28));
    content: "";
    pointer-events: none;
}

.l1p-versatility__background {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.l1p-versatility__inner {
    position: relative;
    z-index: 1;
    display: flex;
    min-height: inherit;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding-block: clamp(5rem, 8vw, 8rem);
}

.l1p-versatility__heading {
    width: 100%;
    margin-bottom: clamp(3rem, 5.5vw, 5.25rem);
    text-align: center;
}

.l1p-versatility__heading h2 {
    max-width: none;
    margin: 0;
    color: rgba(255, 255, 255, 0.9);
    font-size: clamp(1.35rem, 2.3vw, 2.25rem);
    font-weight: 300;
    letter-spacing: -0.02em;
    line-height: 1.2;
    text-align: center;
}

.l1p-versatility__formula {
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: clamp(0.65rem, 1.4vw, 1.35rem);
    margin: clamp(1.15rem, 2vw, 1.75rem) 0 0;
    background: linear-gradient(
        96deg,
        #eb667c 0%,
        #b485bf 28%,
        #71c9ad 54%,
        #66aee8 76%,
        #8e88ff 100%
    );
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    font-size: clamp(3.1rem, 7.2vw, 7.5rem);
    letter-spacing: -0.065em;
    line-height: 0.95;
    text-align: center;
}

.l1p-versatility__formula span {
    font-weight: 200;
}

.l1p-versatility__formula strong {
    font-weight: 700;
}

.l1p-versatility__gallery {
    display: grid;
    width: min(100%, 82rem);
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(0.45rem, 1.25vw, 1.25rem);
}

.l1p-versatility__gallery figure {
    position: relative;
    min-width: 0;
    overflow: hidden;
    margin: 0;
    opacity: 0;
    transform: translateY(2.25rem);
    transition:
        opacity 700ms ease calc(100ms + var(--l1p-gallery-index) * 130ms),
        transform 900ms cubic-bezier(0.16, 1, 0.3, 1) calc(100ms + var(--l1p-gallery-index) * 130ms);
}

.l1p-versatility.is-visible .l1p-versatility__gallery figure {
    opacity: 1;
    transform: translateY(0);
}

.l1p-versatility__gallery figure::after {
    position: absolute;
    inset: 0;
    border: 0.0625rem solid rgba(255, 255, 255, 0.08);
    content: "";
    pointer-events: none;
    transition: border-color var(--transition);
}

.l1p-versatility__gallery figure:hover::after {
    border-color: rgba(128, 128, 255, 0.34);
}

.l1p-versatility__gallery img {
    display: block;
    width: 100%;
    height: auto;
    filter: brightness(0.92) saturate(0.92);
    transition: filter var(--transition);
}

.l1p-versatility__gallery figure:hover img {
    filter: brightness(1.06) saturate(1.05);
}

.l1p-story-group {
    background: #000000;
}

.l1p-story__picture {
    display: contents;
}

.l1p-story {
    position: relative;
    min-height: 48rem;
    overflow: hidden;
    border-top: 0.0625rem solid rgba(232, 232, 232, 0.16);
}

.l1p-story::after {
    position: absolute;
    inset: 0;
    content: "";
    pointer-events: none;
}

.l1p-story--light::after {
    background: linear-gradient(
        90deg,
        rgba(255, 255, 255, 0.99) 0%,
        rgba(255, 255, 255, 0.96) 42%,
        rgba(255, 255, 255, 0.64) 57%,
        rgba(255, 255, 255, 0) 76%
    );
}

.l1p-story--dark.l1p-story--left::after {
    background: linear-gradient(
        90deg,
        rgba(1, 3, 8, 0.95) 0%,
        rgba(1, 3, 8, 0.9) 42%,
        rgba(1, 3, 8, 0.52) 60%,
        rgba(1, 3, 8, 0) 78%
    );
}

.l1p-story--dark.l1p-story--right::after {
    background: linear-gradient(
        270deg,
        rgba(0, 0, 0, 0.97) 0%,
        rgba(0, 0, 0, 0.92) 43%,
        rgba(0, 0, 0, 0.54) 61%,
        rgba(0, 0, 0, 0) 79%
    );
}

.l1p-story__background {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.88;
    transition: opacity 1100ms ease;
}

.l1p-story.is-visible .l1p-story__background {
    opacity: 1;
}

.l1p-story--one .l1p-story__background {
    inset: auto 0 0 auto;
    width: auto;
    height: auto;
    max-width: 86%;
    max-height: 86%;
    object-fit: contain;
    object-position: right center;
    background: #ffffff;
    transform: none;
}

.l1p-story--two .l1p-story__background {
    object-position: left center;
}

.l1p-story--three .l1p-story__background,
.l1p-story--five .l1p-story__background {
    object-position: right center;
}

.l1p-story--four .l1p-story__background,
.l1p-story--six .l1p-story__background {
    object-position: left center;
}

.l1p-story--six .l1p-story__background {
    inset: auto auto 0 0;
    width: auto;
    height: auto;
    max-width: 86%;
    max-height: 86%;
    object-fit: contain;
    background: #000000;
    transform: none;
}

.l1p-story--one {
    min-height: clamp(48rem, 63vw, 61rem);
    background: #ffffff;
}

.l1p-story--two {
    min-height: clamp(52rem, 65vw, 64rem);
}

.l1p-story--three {
    min-height: clamp(43rem, 56vw, 54rem);
}

.l1p-story--four {
    min-height: clamp(48rem, 61vw, 59rem);
}

.l1p-story--five {
    min-height: clamp(56rem, 70vw, 68rem);
}

.l1p-story--six {
    min-height: clamp(43rem, 54vw, 53rem);
    background: #000000;
}

.l1p-story__inner {
    position: relative;
    z-index: 1;
    display: grid;
    min-height: inherit;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: center;
    column-gap: clamp(3rem, 8vw, 9rem);
    padding-block: clamp(5rem, 8vw, 8rem);
}

.l1p-story--left .l1p-story__content {
    grid-column: 1;
}

.l1p-story--right .l1p-story__content {
    grid-column: 2;
}

.l1p-story__content {
    width: min(100%, 40rem);
    opacity: 0;
    transform: translateX(-2.25rem);
    transition:
        opacity 720ms ease 100ms,
        transform 920ms cubic-bezier(0.16, 1, 0.3, 1) 100ms;
}

.l1p-story--right .l1p-story__content {
    justify-self: end;
    transform: translateX(2.25rem);
}

.l1p-story.is-visible .l1p-story__content {
    opacity: 1;
    transform: translateX(0);
}

.l1p-story__content h2 {
    max-width: 15ch;
    margin: 0 0 clamp(2rem, 3.5vw, 3.25rem);
    padding-bottom: 0.1em;
    font-size: clamp(2.15rem, 3.7vw, 4.25rem);
    font-weight: 200;
    letter-spacing: -0.015em;
    line-height: 1.06;
}

.l1p-story__content h2 span,
.l1p-story__content h2 strong,
.l1p-story__content h2 b {
    display: block;
}

.l1p-story__content h2 span {
    font-weight: 200;
}

.l1p-story__content h2 strong,
.l1p-story__content h2 b {
    font-weight: 650;
}

.l1p-story--light {
    color: #202329;
}

.l1p-story--dark {
    color: #ffffff;
}

.l1p-story--one h2 strong {
    background: linear-gradient(96deg, #583576 0%, #6e68c9 45%, #5998c9 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.l1p-story--two h2 strong {
    background: linear-gradient(96deg, #7678ff 0%, #9d83ef 52%, #6ec1e4 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.l1p-story--two h2 {
    max-width: none;
    white-space: nowrap;
}

.l1p-story--two h2 span,
.l1p-story--two h2 strong {
    display: inline;
}

.l1p-story--three h2 strong,
.l1p-story--three h2 b {
    background: linear-gradient(96deg, #5db9dc 0%, #737bf2 52%, #9d72d3 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.l1p-story--three h2 .l1p-story__title-line {
    white-space: nowrap;
}

.l1p-story--three h2 .l1p-story__title-line strong {
    display: inline;
}

.l1p-story--four h2 strong {
    background: linear-gradient(96deg, #e1d9d3 0%, #bfa6ae 38%, #927da8 68%, #7482ad 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.l1p-story--five h2 strong {
    background: linear-gradient(96deg, #b7dcf2 0%, #72b7df 46%, #8080ff 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    line-height: 1.18;
    padding-bottom: 0.2em;
}

.l1p-story--six h2 strong {
    background: linear-gradient(96deg, #d8c0a0 0%, #b49ee2 48%, #7888dc 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.l1p-story__content > p {
    margin: 0;
    font-size: clamp(0.94rem, 1.08vw, 1.075rem);
    font-weight: 400;
    letter-spacing: 0.002em;
    line-height: 1.72;
}

.l1p-story--light .l1p-story__content > p {
    color: rgba(24, 28, 34, 0.82);
}

.l1p-story--dark .l1p-story__content > p {
    color: rgba(255, 255, 255, 0.76);
}

.l1p-story__content > p + p {
    margin-top: clamp(1rem, 1.5vw, 1.45rem);
}

.l1p-story__emphasis {
    display: grid;
    gap: 0.55rem;
    padding-block: clamp(0.5rem, 1vw, 0.9rem);
}

.l1p-story__emphasis span {
    color: rgba(255, 255, 255, 0.76);
    font-size: 0.72rem;
    font-weight: 500;
    letter-spacing: 0.105em;
    text-transform: uppercase;
}

.l1p-story__emphasis strong {
    width: fit-content;
    background: linear-gradient(92deg, #8a87ff, #6ec1e4);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    font-size: clamp(1.25rem, 1.8vw, 1.75rem);
    font-weight: 600;
    letter-spacing: -0.02em;
    line-height: 1.15;
}

.l1p-story__metric {
    color: #82c9ec;
    font-weight: 600;
    white-space: nowrap;
}

.l1p-review {
    position: relative;
    min-height: clamp(20rem, 30vw, 27rem);
    overflow: hidden;
    border-top: 0.0625rem solid rgba(128, 128, 255, 0.28);
    background: #080815;
    color: #ffffff;
}

.l1p-review::after {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(3, 6, 16, 0.82), rgba(7, 5, 24, 0.38) 58%, rgba(3, 4, 12, 0.68)),
        rgba(5, 5, 15, 0.18);
    content: "";
    pointer-events: none;
}

.l1p-review__background {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 54%;
}

.l1p-review__inner {
    position: relative;
    z-index: 1;
    display: grid;
    min-height: inherit;
    grid-template-columns: minmax(0, 1fr) minmax(9rem, 14rem);
    align-items: center;
    gap: clamp(3rem, 8vw, 8rem);
    padding-block: clamp(3.5rem, 5vw, 5rem);
}

.l1p-review__quotes {
    opacity: 0;
    transform: translateX(-2rem);
    transition:
        opacity 720ms ease 100ms,
        transform 900ms cubic-bezier(0.16, 1, 0.3, 1) 100ms;
}

.l1p-review.is-visible .l1p-review__quotes {
    opacity: 1;
    transform: translateX(0);
}

.l1p-review__source {
    margin: 0 0 1.25rem;
    color: rgba(255, 255, 255, 0.58);
    font-size: 0.7rem;
    font-weight: 500;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.l1p-review blockquote {
    margin: 0;
}

.l1p-review blockquote p {
    margin: 0;
    color: rgba(255, 255, 255, 0.72);
    font-size: clamp(1.6rem, 3.2vw, 3.35rem);
    font-weight: 200;
    letter-spacing: -0.038em;
    line-height: 1.08;
}

.l1p-review blockquote p + p {
    margin-top: clamp(0.8rem, 1.6vw, 1.4rem);
}

.l1p-review blockquote strong {
    background: linear-gradient(96deg, #ffffff 0%, #b8c5ff 46%, #bc86f2 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    font-weight: 600;
}

.l1p-review__quote-part {
    display: inline;
}

.l1p-review__seal {
    display: block;
    width: min(100%, 13.25rem);
    justify-self: end;
    outline: 0;
    opacity: 0;
    text-decoration: none;
    transform: translateX(2rem);
    transition:
        opacity 720ms ease 220ms,
        transform 900ms cubic-bezier(0.16, 1, 0.3, 1) 220ms,
        filter var(--transition);
}

.l1p-review.is-visible .l1p-review__seal {
    opacity: 1;
    transform: translateX(0);
}

.l1p-review__seal:hover,
.l1p-review__seal:focus-visible {
    filter: brightness(1.08);
}

.l1p-review__seal img {
    display: block;
    width: 100%;
    height: auto;
}

.l1p-technical {
    --l1p-polar-cardioid: #6652b7;
    --l1p-polar-omni: #c31573;
    --l1p-polar-eight: #20a83b;
    position: relative;
    overflow: hidden;
    border-top: 0.0625rem solid #dfe2e6;
    background:
        radial-gradient(circle at 8% 4%, rgba(110, 193, 228, 0.12), transparent 25rem),
        radial-gradient(circle at 92% 8%, rgba(128, 128, 255, 0.1), transparent 27rem),
        #f5f6f7;
    color: #171a1f;
}

.l1p-technical::before {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(23, 26, 31, 0.025) 0.0625rem, transparent 0.0625rem),
        linear-gradient(90deg, rgba(23, 26, 31, 0.025) 0.0625rem, transparent 0.0625rem);
    background-size: 2.5rem 2.5rem;
    content: "";
    pointer-events: none;
}

.l1p-technical__inner {
    position: relative;
    z-index: 1;
    padding-block: clamp(6rem, 10vw, 10rem);
}

.l1p-technical__heading {
    margin-bottom: clamp(3.75rem, 6vw, 6.5rem);
    opacity: 0;
    transform: translateY(1.5rem);
    transition:
        opacity 680ms ease,
        transform 850ms cubic-bezier(0.16, 1, 0.3, 1);
}

.l1p-technical.is-visible .l1p-technical__heading {
    opacity: 1;
    transform: translateY(0);
}

.l1p-technical__heading h2 {
    display: flex;
    max-width: none;
    flex-wrap: wrap;
    gap: 0 0.25em;
    margin: 0;
    font-size: clamp(2.35rem, 4.2vw, 4.75rem);
    letter-spacing: -0.015em;
    line-height: 1.06;
    text-transform: uppercase;
}

.l1p-technical__heading h2 span {
    font-weight: 300;
}

.l1p-technical__heading h2 strong {
    background: linear-gradient(96deg, #565e91 0%, #7158b1 48%, #477fa9 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    font-weight: 700;
}

.l1p-technical__heading p {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.24em;
    margin: clamp(1.15rem, 2vw, 1.65rem) 0 0;
    color: #49515c;
    font-size: clamp(1.05rem, 1.5vw, 1.35rem);
    font-weight: 500;
    letter-spacing: 0.012em;
    line-height: 1.35;
}

.l1p-technical__heading p::before,
.l1p-technical__heading p::after {
    display: none;
    content: none;
}

.l1p-technical__heading p strong {
    background: linear-gradient(96deg, #517fa2, #7158b1 55%, #5d5fbd);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    font-weight: 700;
}

.l1p-spec-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin: 0;
    border-top: 0.0625rem solid #d8dce1;
    border-left: 0.0625rem solid #d8dce1;
    background: rgba(255, 255, 255, 0.58);
}

.l1p-spec {
    display: flex;
    min-width: 0;
    min-height: 10rem;
    align-items: flex-start;
    flex-direction: column;
    justify-content: center;
    border-right: 0.0625rem solid #d8dce1;
    border-bottom: 0.0625rem solid #d8dce1;
    padding: clamp(1.35rem, 2vw, 2rem);
    opacity: 0;
    text-align: left;
    transform: translateY(1rem);
    transition:
        background-color var(--transition),
        opacity 520ms ease calc(80ms + var(--l1p-spec-index) * 45ms),
        transform 680ms cubic-bezier(0.16, 1, 0.3, 1) calc(80ms + var(--l1p-spec-index) * 45ms);
}

.l1p-technical.is-visible .l1p-spec {
    opacity: 1;
    transform: translateY(0);
}

.l1p-spec:hover {
    background: rgba(255, 255, 255, 0.88);
}

.l1p-spec dt {
    color: #69717b;
    font-size: clamp(0.69rem, 0.78vw, 0.78rem);
    font-weight: 500;
    letter-spacing: 0.075em;
    line-height: 1.4;
    text-transform: uppercase;
}

.l1p-spec dt span {
    display: block;
    margin-top: 0.15rem;
    color: #89909a;
    font-size: 0.9em;
    letter-spacing: 0.045em;
}

.l1p-spec--polar-values dt {
    display: inline-flex;
    max-width: 100%;
    align-items: baseline;
    gap: 0.45em;
    font-size: clamp(0.62rem, 0.72vw, 0.72rem);
    letter-spacing: 0.055em;
    white-space: nowrap;
}

.l1p-spec--polar-values dt span {
    display: inline;
    margin-top: 0;
    font-size: 0.76em;
    letter-spacing: 0.025em;
}

.l1p-spec dd {
    margin: clamp(0.8rem, 1.2vw, 1.15rem) 0 0;
    color: #171a1f;
    font-size: clamp(1.05rem, 1.35vw, 1.35rem);
    font-weight: 650;
    letter-spacing: -0.018em;
    line-height: 1.2;
}

.l1p-spec dd small {
    display: inline;
    margin-left: 0.45rem;
    color: #707780;
    font-size: 0.56em;
    font-weight: 400;
    letter-spacing: 0;
    line-height: 1;
    vertical-align: 0.12em;
    white-space: nowrap;
}

.l1p-spec--inline-detail dd {
    display: inline-flex;
    flex-wrap: nowrap;
    align-items: baseline;
    justify-content: flex-start;
    gap: 0.45rem;
    white-space: nowrap;
}

.l1p-spec--inline-detail dd small {
    margin-left: 0;
    vertical-align: baseline;
}

.l1p-spec__primary {
    font: inherit;
    white-space: nowrap;
}

.l1p-spec--polar-values dd {
    display: grid;
    width: 100%;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: center;
    gap: 0.55rem;
}

.l1p-spec--polar-values .l1p-polar-value {
    justify-self: start;
}

.l1p-polar-value {
    display: inline-flex;
    min-width: 0;
    align-self: center;
    align-items: center;
    gap: 0.45rem;
    color: var(--l1p-polar-color);
    line-height: 1;
}

.l1p-polar-value--cardioid {
    --l1p-polar-color: var(--l1p-polar-cardioid);
    --l1p-polar-icon: url("../icons/cardioid.svg");
}

.l1p-polar-value--omni {
    --l1p-polar-color: var(--l1p-polar-omni);
    --l1p-polar-icon: url("../icons/omni.svg");
}

.l1p-polar-value--eight {
    --l1p-polar-color: var(--l1p-polar-eight);
    --l1p-polar-icon: url("../icons/eight.svg");
}

.l1p-polar-icon {
    display: inline-block;
    width: 1.05rem;
    height: 1.05rem;
    flex: 0 0 auto;
    background: currentColor;
    -webkit-mask: var(--l1p-polar-icon) center / contain no-repeat;
    mask: var(--l1p-polar-icon) center / contain no-repeat;
}

.l1p-polar-value--eight .l1p-polar-icon {
    width: 0.59rem;
}

.l1p-spec .l1p-polar-value strong {
    display: block;
    overflow: hidden;
    color: #1b1e23;
    font-size: clamp(0.9rem, 1.1vw, 1.1rem);
    font-weight: 650;
    line-height: 1;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.l1p-measurements {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(17rem, 0.65fr);
    margin-top: clamp(5rem, 8vw, 8rem);
    border-top: 0.0625rem solid #d8dce1;
    border-left: 0.0625rem solid #d8dce1;
}

.l1p-measurement {
    position: relative;
    min-width: 0;
    overflow: hidden;
    border-right: 0.0625rem solid #d8dce1;
    border-bottom: 0.0625rem solid #d8dce1;
    padding: clamp(2rem, 4vw, 4rem);
    background: #ffffff;
    opacity: 0;
    transform: translateY(1.5rem);
    transition:
        opacity 680ms ease 320ms,
        transform 880ms cubic-bezier(0.16, 1, 0.3, 1) 320ms;
}

.l1p-technical.is-visible .l1p-measurement {
    opacity: 1;
    transform: translateY(0);
}

.l1p-measurement::before {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 0.125rem;
    background: linear-gradient(90deg, var(--l1p-polar-cardioid), var(--l1p-polar-omni), var(--l1p-polar-eight));
    content: "";
    opacity: 0.65;
}

.l1p-measurement--frequency {
    grid-column: 1 / -1;
    transition-delay: 460ms;
}

.l1p-measurement__heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    margin-bottom: clamp(2.25rem, 4vw, 4rem);
}

.l1p-measurement__heading h3 {
    max-width: none;
    margin: 0;
    color: #171a1f;
    font-size: clamp(1.25rem, 1.85vw, 1.9rem);
    font-weight: 600;
    letter-spacing: -0.035em;
    line-height: 1.05;
}

.l1p-measurement__heading h3 span {
    color: #7a818b;
    font-weight: 300;
}

.l1p-measurement__heading > p {
    margin: 0.55rem 0 0;
    color: #7b828c;
    font-size: 0.76rem;
    font-weight: 500;
    letter-spacing: 0.11em;
    text-transform: uppercase;
}

.l1p-polar-legend {
    display: flex;
    flex: 0 0 auto;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.75rem 1.25rem;
}

.l1p-polar-legend .l1p-polar-value {
    border-bottom: 0.125rem solid currentColor;
    padding-bottom: 0.38rem;
}

.l1p-polar-legend .l1p-polar-value strong {
    color: currentColor;
    font-size: 0.72rem;
    font-weight: 600;
    letter-spacing: 0.075em;
    text-transform: uppercase;
}

.l1p-polar-legend .l1p-polar-icon {
    width: 0.95rem;
    height: 0.95rem;
}

.l1p-polar-legend .l1p-polar-value--eight .l1p-polar-icon {
    width: 0.53rem;
}

.l1p-measurement > img {
    display: block;
    max-width: 100%;
    height: auto;
    margin-inline: auto;
}

.l1p-measurement--polar > img {
    width: min(100%, 34rem);
}

.l1p-measurement--dimensions {
    display: flex;
    flex-direction: column;
}

.l1p-measurement--dimensions .l1p-measurement__heading {
    display: block;
}

.l1p-measurement--dimensions > img {
    width: min(100%, 15.5rem);
    margin-block: auto 0;
}

.l1p-frequency-chart {
    position: relative;
    isolation: isolate;
    width: 100%;
    aspect-ratio: 27 / 10;
    overflow: hidden;
    background: #ffffff;
}

.l1p-frequency-chart img {
    display: block;
    width: 100%;
    height: 100%;
}

.l1p-frequency-chart__base {
    position: relative;
    z-index: 0;
}

.l1p-frequency-chart__curves {
    position: absolute;
    z-index: 1;
    inset: 0;
    -webkit-clip-path: inset(0 100% 0 0);
    clip-path: inset(0 100% 0 0);
    transition:
        -webkit-clip-path 1900ms cubic-bezier(0.45, 0, 0.2, 1),
        clip-path 1900ms cubic-bezier(0.45, 0, 0.2, 1);
}

.l1p-frequency-chart.is-drawing .l1p-frequency-chart__curves {
    will-change: clip-path;
}

.l1p-frequency-chart.is-drawn .l1p-frequency-chart__curves {
    -webkit-clip-path: inset(0);
    clip-path: inset(0);
}

.l1p-audio-showcase {
    position: relative;
    overflow: hidden;
    border-top: 0.0625rem solid #1f2028;
    background: #000000;
    color: #ffffff;
}

.l1p-audio-intro {
    display: grid;
    min-height: clamp(38rem, 58vw, 52rem);
    grid-template-columns: minmax(0, 0.9fr) minmax(22rem, 1.1fr);
    align-items: center;
    gap: clamp(3rem, 7vw, 8rem);
    padding-block: clamp(6rem, 10vw, 10rem);
}

.l1p-audio-intro__content {
    position: relative;
    z-index: 1;
    opacity: 0;
    transform: translateY(1.5rem);
    transition:
        opacity 720ms ease,
        transform 920ms cubic-bezier(0.16, 1, 0.3, 1);
}

.l1p-audio-intro.is-visible .l1p-audio-intro__content {
    opacity: 1;
    transform: translateY(0);
}

.l1p-audio-intro h2 {
    max-width: 14ch;
    margin: 0;
    font-size: clamp(2.05rem, 3.85vw, 4.35rem);
    letter-spacing: -0.015em;
    line-height: 0.98;
    text-transform: uppercase;
}

.l1p-audio-intro h2 span,
.l1p-audio-intro h2 strong {
    display: block;
}

.l1p-audio-intro h2 span {
    color: #f5f5f7;
    font-weight: 200;
}

.l1p-audio-intro h2 strong {
    background: linear-gradient(96deg, #ffffff 0%, #8e8cff 48%, #6ec1e4 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    font-weight: 700;
    white-space: nowrap;
}

.l1p-audio-intro__question {
    margin: clamp(1.5rem, 2.8vw, 2.4rem) 0 0;
    color: #a7a6ff;
    font-size: clamp(1.15rem, 1.8vw, 1.55rem);
    font-weight: 500;
    letter-spacing: -0.02em;
}

.l1p-audio-intro__copy {
    max-width: 41rem;
    margin: 1.15rem 0 0;
    color: #c6c9d0;
    font-size: clamp(0.95rem, 1.25vw, 1.08rem);
    line-height: 1.7;
}

.l1p-audio-intro__note {
    max-width: 42rem;
    margin: 1.35rem 0 0;
    color: #747984;
    font-size: clamp(0.66rem, 0.78vw, 0.75rem);
    line-height: 1.55;
}

.l1p-audio-intro__visual {
    width: 100%;
    margin: 0;
    opacity: 0;
    transform: translateX(2.5rem);
    transition:
        opacity 820ms ease 150ms,
        transform 1050ms cubic-bezier(0.16, 1, 0.3, 1) 150ms;
}

.l1p-audio-intro.is-visible .l1p-audio-intro__visual {
    opacity: 1;
    transform: translateX(0);
}

.l1p-audio-intro__visual img {
    display: block;
    width: 100%;
    height: auto;
    -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000000 18%, #000000 100%);
    mask-image: linear-gradient(90deg, transparent 0%, #000000 18%, #000000 100%);
}

.l1p-audio-comparison {
    border-top: 0.0625rem solid #20212a;
    background: linear-gradient(
        90deg,
        #000000 0%,
        #000000 34%,
        #141333 64%,
        #0a091c 82%,
        #040406 100%
    );
}

.l1p-audio-comparison:nth-child(2) {
    background: linear-gradient(
        90deg,
        #000000 0%,
        #000000 34%,
        #0a2632 64%,
        #071219 82%,
        #040406 100%
    );
}

.l1p-audio-comparison:nth-child(3) {
    background: linear-gradient(
        90deg,
        #000000 0%,
        #000000 34%,
        #28112d 64%,
        #100912 82%,
        #040406 100%
    );
}

.l1p-audio-comparison__inner {
    display: grid;
    grid-template-columns: minmax(17rem, 0.48fr) minmax(0, 1fr);
    grid-template-areas:
        "visual info"
        "samples samples";
    align-items: center;
    gap: clamp(4rem, 7vw, 8rem) clamp(3rem, 8vw, 9rem);
    padding-block: clamp(6rem, 9vw, 9rem);
}

.l1p-audio-comparison__info {
    grid-area: info;
    opacity: 0;
    transform: translateY(1.5rem);
    transition:
        opacity 680ms ease,
        transform 880ms cubic-bezier(0.16, 1, 0.3, 1);
}

.l1p-audio-comparison.is-visible .l1p-audio-comparison__info {
    opacity: 1;
    transform: translateY(0);
}

.l1p-audio-comparison__info h3 {
    max-width: 19ch;
    margin: 0;
    font-size: clamp(1.52rem, 2.45vw, 2.9rem);
    letter-spacing: -0.015em;
    line-height: 1.04;
}

.l1p-audio-comparison__info h3 span,
.l1p-audio-comparison__info h3 strong {
    display: block;
}

.l1p-audio-comparison__info h3 span {
    color: #7776c7;
    font-weight: 300;
}

.l1p-audio-comparison__info h3 strong {
    margin-top: 0.12em;
    color: #ffffff;
    font-weight: 650;
}

.l1p-audio-comparison__facts {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin: clamp(2.25rem, 4vw, 3.75rem) 0 0;
    border-top: 0.0625rem solid #2b2d36;
    border-bottom: 0.0625rem solid #2b2d36;
}

.l1p-audio-comparison__facts > div {
    min-width: 0;
    padding: 1.15rem 1rem 1.15rem 0;
}

.l1p-audio-comparison__facts > div + div {
    border-left: 0.0625rem solid #2b2d36;
    padding-left: 1rem;
}

.l1p-audio-comparison__facts dt {
    color: #747984;
    font-size: 0.66rem;
    font-weight: 500;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.l1p-audio-comparison__facts dd {
    margin: 0.45rem 0 0;
    color: #f1f2f4;
    font-size: clamp(0.82rem, 1vw, 0.94rem);
    font-weight: 500;
    line-height: 1.35;
}

.l1p-audio-comparison__facts dd span {
    display: block;
    margin-top: 0.15rem;
    color: #878c96;
    font-size: 0.78em;
    font-weight: 400;
}

.l1p-audio-comparison__visual {
    width: min(100%, 23rem);
    grid-area: visual;
    justify-self: start;
    margin: 0;
    opacity: 0;
    transform: translateX(-2rem);
    transition:
        opacity 760ms ease 100ms,
        transform 980ms cubic-bezier(0.16, 1, 0.3, 1) 100ms;
}

.l1p-audio-comparison.is-visible .l1p-audio-comparison__visual {
    opacity: 1;
    transform: translateX(0);
}

.l1p-audio-comparison__visual img {
    display: block;
    width: 100%;
    height: auto;
}

.l1p-audio-comparison__samples {
    display: grid;
    grid-area: samples;
    gap: 2rem;
}

.l1p-audio-voice {
    border-top: 0.0625rem solid #292b34;
    padding-top: 1.5rem;
}

.l1p-audio-voice__heading {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 1.5rem;
    margin-bottom: 0.85rem;
}

.l1p-audio-voice__heading h4 {
    margin: 0;
    color: #ffffff;
    font-size: clamp(0.95rem, 1.3vw, 1.12rem);
    font-weight: 600;
    letter-spacing: 0.02em;
}

.l1p-audio-voice__heading p {
    margin: 0;
    color: #777d88;
    font-size: 0.73rem;
    letter-spacing: 0.04em;
}

.l1p-audio-voice__heading p strong {
    color: #bec2ca;
    font-weight: 500;
}

.l1p-audio-pair {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.85rem;
}

.l1p-audio-player {
    --l1p-player-accent: #9ca3af;
    min-width: 0;
    border: 0.0625rem solid #292c35;
    border-top-color: var(--l1p-player-accent);
    padding: 1rem;
    background: #0b0c10;
    opacity: 0;
    transform: translateY(0.9rem);
    transition:
        border-color var(--transition),
        background-color var(--transition),
        opacity 560ms ease calc(180ms + var(--l1p-player-index) * 65ms),
        transform 720ms cubic-bezier(0.16, 1, 0.3, 1) calc(180ms + var(--l1p-player-index) * 65ms);
}

.l1p-audio-player--l1 {
    --l1p-player-accent: #8584ff;
}

.l1p-audio-comparison.is-visible .l1p-audio-player {
    opacity: 1;
    transform: translateY(0);
}

.l1p-audio-player.is-playing {
    border-color: var(--l1p-player-accent);
    background: #101118;
}

.l1p-audio-player.is-unavailable {
    opacity: 0.42;
}

.l1p-audio-comparison.is-visible .l1p-audio-player.is-unavailable {
    opacity: 0.42;
}

.l1p-audio-player__meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 0.8rem;
}

.l1p-audio-player__meta strong {
    overflow: hidden;
    color: #f3f4f7;
    font-size: 0.72rem;
    font-weight: 600;
    letter-spacing: 0.075em;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.l1p-audio-player--l1 .l1p-audio-player__meta strong {
    color: #aeadff;
}

.l1p-audio-player--comparison .l1p-audio-player__meta strong {
    font-weight: 300;
}

.l1p-audio-player__meta > span {
    flex: 0 0 auto;
    color: #6f7580;
    font-size: 0.63rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.l1p-audio-player.is-playing .l1p-audio-player__meta > span {
    color: var(--l1p-player-accent);
}

.l1p-audio-player__controls {
    display: grid;
    grid-template-columns: 2.85rem minmax(4rem, 1fr) auto;
    align-items: center;
    gap: 0.8rem;
}

.l1p-audio-player__toggle {
    display: grid;
    width: 2.85rem;
    height: 2.85rem;
    place-items: center;
    border: 0.0625rem solid #3a3e49;
    padding: 0;
    background: transparent;
    color: var(--l1p-player-accent);
    cursor: pointer;
    transition:
        border-color var(--transition),
        background-color var(--transition),
        color var(--transition);
}

.l1p-audio-player__toggle:hover,
.l1p-audio-player__toggle:focus-visible,
.l1p-audio-player.is-playing .l1p-audio-player__toggle {
    border-color: var(--l1p-player-accent);
    background: var(--l1p-player-accent);
    color: #08090c;
}

.l1p-audio-player__toggle:disabled {
    border-color: #2a2c33;
    color: #555a64;
    cursor: default;
}

.l1p-audio-player__icon {
    position: relative;
    display: block;
    width: 1rem;
    height: 1rem;
}

.l1p-audio-player__icon::before {
    position: absolute;
    top: 50%;
    left: 55%;
    width: 0;
    height: 0;
    border-top: 0.38rem solid transparent;
    border-bottom: 0.38rem solid transparent;
    border-left: 0.58rem solid currentColor;
    content: "";
    transform: translate(-50%, -50%);
}

.l1p-audio-player__icon::after {
    display: none;
    position: absolute;
    top: 0.12rem;
    right: 0.16rem;
    width: 0.18rem;
    height: 0.76rem;
    background: currentColor;
    content: "";
}

.l1p-audio-player.is-playing .l1p-audio-player__icon::before {
    top: 0.12rem;
    left: 0.16rem;
    width: 0.18rem;
    height: 0.76rem;
    border: 0;
    background: currentColor;
    transform: none;
}

.l1p-audio-player.is-playing .l1p-audio-player__icon::after {
    display: block;
}

.l1p-audio-player__timeline {
    position: relative;
    display: block;
    width: 100%;
    height: 2.25rem;
    overflow: hidden;
    border: 0;
    padding: 0;
    background: transparent;
    color: var(--l1p-player-accent);
    cursor: pointer;
}

.l1p-audio-player__timeline > span,
.l1p-audio-player__timeline::after {
    position: absolute;
    top: 50%;
    left: 0;
    height: 0.9rem;
    transform: translateY(-50%);
}

.l1p-audio-player__timeline > span {
    right: 0;
    background: repeating-linear-gradient(
        90deg,
        rgba(181, 186, 198, 0.28) 0 0.0625rem,
        transparent 0.0625rem 0.3rem
    );
}

.l1p-audio-player__timeline::after {
    width: var(--l1p-audio-progress);
    background: repeating-linear-gradient(
        90deg,
        currentColor 0 0.0625rem,
        transparent 0.0625rem 0.3rem
    );
    content: "";
    pointer-events: none;
    transition: width 80ms linear;
}

.l1p-audio-player__timeline:disabled {
    cursor: default;
}

.l1p-audio-player__timeline:focus-visible {
    outline: 0.0625rem solid var(--l1p-player-accent);
    outline-offset: 0.15rem;
}

.l1p-audio-player__time {
    display: inline-flex;
    min-width: 5.6rem;
    justify-content: flex-end;
    gap: 0.35rem;
    color: #8c919b;
    font-size: 0.66rem;
    font-variant-numeric: tabular-nums;
    letter-spacing: 0.035em;
    white-space: nowrap;
}

.l1p-audio-player__time i {
    color: #4f535d;
    font-style: normal;
}

.l1p-purchase-stage {
    position: relative;
    overflow: hidden;
    border-top: 0.0625rem solid #e8e8e8;
    background: #ffffff;
    color: #111318;
}

.l1p-purchase-stage__inner {
    display: grid;
    min-height: clamp(38rem, 52vw, 48rem);
    grid-template-columns: minmax(0, 1.08fr) minmax(18rem, 0.92fr);
    align-items: stretch;
    gap: clamp(3rem, 8vw, 9rem);
    padding-block: clamp(2.25rem, 4vw, 4rem) clamp(3.25rem, 5vw, 5rem);
}

.l1p-purchase-stage__visual {
    width: min(100%, 34rem);
    align-self: end;
    justify-self: center;
    margin: 0;
    opacity: 0;
    transform: translateX(-2.5rem);
    transition:
        opacity 760ms ease,
        transform 980ms cubic-bezier(0.16, 1, 0.3, 1);
}

.l1p-purchase-stage.is-visible .l1p-purchase-stage__visual {
    opacity: 1;
    transform: translateX(0);
}

.l1p-purchase-stage__visual img {
    display: block;
    width: 100%;
    height: auto;
}

.l1p-purchase-stage__details {
    display: flex;
    align-self: stretch;
    width: 100%;
    align-items: flex-start;
    justify-content: center;
    justify-self: start;
    flex-direction: column;
    padding-block: clamp(2.5rem, 6vw, 6rem);
    text-align: left;
    opacity: 0;
    transform: translateX(2.5rem);
    transition:
        opacity 760ms ease 100ms,
        transform 980ms cubic-bezier(0.16, 1, 0.3, 1) 100ms;
}

.l1p-purchase-stage__summary {
    display: contents;
}

.l1p-purchase-stage.is-visible .l1p-purchase-stage__details {
    opacity: 1;
    transform: translateX(0);
}

.l1p-purchase-stage__logo {
    display: block;
    width: clamp(5.8rem, 8vw, 7.5rem);
    height: auto;
}

.l1p-purchase-stage__price {
    margin: clamp(1.9rem, 3vw, 2.7rem) 0 0;
    color: #111318;
    font-size: clamp(3.15rem, 5vw, 5.4rem);
    font-weight: 700;
    letter-spacing: 0.015em;
    line-height: 0.95;
}

.l1p-purchase-stage__tax {
    margin: 0.65rem 0 0;
    color: #545a63;
    font-size: clamp(0.72rem, 0.9vw, 0.82rem);
    line-height: 1.5;
}

.l1p-purchase-stage__tax span {
    display: block;
    margin-top: 0.12rem;
    color: #858a91;
    font-size: 0.88em;
}

.button.l1p-purchase-stage__button {
    min-width: clamp(11.5rem, 15vw, 13rem);
    margin-top: clamp(1.9rem, 3vw, 2.5rem);
    gap: 1.35rem;
    font-weight: 500;
}

.l1p-purchase-stage__button img {
    width: 1.1rem;
    height: 1.1rem;
    filter: brightness(0) invert(1);
    transition: transform var(--transition);
}

.l1p-purchase-stage__button:hover img,
.l1p-purchase-stage__button:focus-visible img {
    transform: translateX(0.22rem);
}

@media (max-width: 75rem) {
    .l1p-product-nav__rail {
        justify-content: safe center;
    }

    .l1p-feature__inner {
        grid-template-columns: minmax(0, 1fr) minmax(16rem, 0.62fr);
    }

    .l1p-story__inner {
        grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
        column-gap: 3rem;
    }

    .l1p-story--right .l1p-story__inner {
        grid-template-columns: minmax(0, 1.08fr) minmax(0, 0.92fr);
    }

    .l1p-spec-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 63.999rem) {
    .l1-plus-product-page {
        --l1p-nav-height: 3.15rem;
        --l1p-nav-edge-gap: 1.35rem;
    }

    .l1p-product-nav__inner {
        padding-inline: 1rem;
    }

    .l1p-product-nav__brand {
        left: 1rem;
        width: 1.8rem;
        height: 1.8rem;
    }

    .l1p-product-nav__rail {
        gap: 1.05rem;
    }

    .l1p-product-nav__link {
        font-size: 0.66rem;
    }

    .l1p-product-nav__purchase {
        min-height: 2.3rem;
        padding-inline: 1.25rem;
        font-size: 0.65rem;
    }

    .l1p-hero {
        min-height: clamp(43rem, 98vw, 54rem);
    }

    .l1p-feature__inner {
        min-height: 0;
        grid-template-columns: minmax(0, 1fr) minmax(14rem, 0.52fr);
        column-gap: 3rem;
    }

    .l1p-story__content {
        width: 100%;
    }

    .l1p-story__content h2 {
        font-size: clamp(2.15rem, 5vw, 3.4rem);
    }

    .l1p-story__content > p {
        font-size: 0.92rem;
        line-height: 1.65;
    }

    .l1p-review__inner {
        grid-template-columns: minmax(0, 1fr) minmax(8rem, 11rem);
        gap: 3rem;
    }

    .l1p-technical__heading h2 {
        font-size: clamp(2.1rem, 5.8vw, 3.75rem);
    }

    .l1p-measurements {
        grid-template-columns: minmax(0, 1.15fr) minmax(15rem, 0.85fr);
    }

    .l1p-measurement__heading {
        display: block;
    }

    .l1p-polar-legend {
        justify-content: flex-start;
        margin-top: 1.5rem;
    }
}

@media (min-width: 48rem) and (max-width: 63.999rem),
    (min-width: 64rem) and (max-width: 74.999rem) and (hover: none) and (pointer: coarse) {
    :is(
        .l1-plus-product-page,
        .l1-product-page,
        .v17-product-page,
        .v13-product-page,
        .klangformer-product-page,
        .klangshield-product-page
    ) {
        --l1p-nav-height: 0rem;
    }

    :is(
        .l1-plus-product-page,
        .l1-product-page,
        .v17-product-page,
        .v13-product-page,
        .klangformer-product-page,
        .klangshield-product-page
    ) .site-header {
        position: sticky;
        top: 0;
    }

    :is(
        .l1-plus-product-page,
        .l1-product-page,
        .v17-product-page,
        .v13-product-page,
        .klangformer-product-page,
        .klangshield-product-page
    ) .l1p-product-nav-sentinel,
    :is(
        .l1-plus-product-page,
        .l1-product-page,
        .v17-product-page,
        .v13-product-page,
        .klangformer-product-page,
        .klangshield-product-page
    ) .l1p-product-nav {
        display: none;
    }

    :is(
        .l1-plus-product-page,
        .l1-product-page,
        .v17-product-page,
        .v13-product-page,
        .klangformer-product-page,
        .klangshield-product-page
    ) .l1p-scroll-target {
        scroll-margin-top: calc(var(--header-height) + 1rem);
    }

    :is(
        .l1-plus-product-page,
        .l1-product-page,
        .v17-product-page,
        .v13-product-page
    ) .l1p-spec {
        min-height: 7.25rem;
        padding-block: 1rem;
    }

    .l1-plus-product-page .l1p-hero__heading h1 {
        font-size: clamp(3.25rem, 7vw, 4.5rem);
    }

    .l1-plus-product-page .l1p-hero__heading p {
        font-size: clamp(1.35rem, 2.8vw, 1.75rem);
    }

    .l1-plus-product-page .l1p-feature__video {
        width: 108%;
        max-width: 35rem;
        justify-self: center;
    }

    .l1-plus-product-page .l1p-story--six .l1p-story__background {
        width: auto;
        height: 78%;
        max-width: none;
        max-height: none;
    }

    .l1-product-page .l1-hero__heading h1 {
        font-size: clamp(3.5rem, 7.5vw, 5rem);
    }

    .l1-product-page .l1p-feature__video {
        width: 108%;
        max-width: 35rem;
        justify-self: center;
    }

    .l1-product-page .l1-story__tablet-break {
        display: inline;
    }

    .l1-product-page .l1-story--one .l1p-story__content h2 {
        display: block;
        white-space: normal;
    }

    .l1-product-page .l1-story--one .l1p-story__background {
        transform: translateX(-8%) scale(0.8);
    }

    .l1-product-page .l1-story--four .l1p-story__background {
        object-position: right center;
    }

    .l1-product-page .l1-story--five .l1p-story__background {
        object-position: 15% center;
    }
}

@media (max-width: 47.999rem) {
    .l1-plus-product-page {
        --l1p-nav-height: 0rem;
        --l1p-nav-edge-gap: 1rem;
    }

    .l1-plus-product-page .site-header {
        position: sticky;
        top: 0;
    }

    .l1p-product-nav-sentinel,
    .l1p-product-nav {
        display: none;
    }

    .l1p-scroll-target {
        scroll-margin-top: calc(var(--header-height) + 1rem);
    }

    .l1p-hero {
        min-height: 0;
        background-position: 34% center;
    }

    .l1p-hero__inner {
        min-height: 39rem;
        justify-content: flex-start;
        padding-block: clamp(3rem, 12vw, 4.5rem);
    }

    .l1p-hero__heading {
        margin-bottom: clamp(2rem, 8vw, 3rem);
    }

    .l1p-hero__heading h1 {
        font-size: clamp(2.25rem, 11vw, 3.7rem);
    }

    .l1p-hero__heading p {
        max-width: 27rem;
        margin-inline: auto;
        font-size: clamp(0.94rem, 4vw, 1.15rem);
        line-height: 1.45;
    }

    .l1p-youtube {
        width: 100%;
    }

    .l1p-hero__inner {
        padding-bottom: 0;
    }

    .l1p-hero__mobile-visual {
        display: block;
        width: 100vw;
        max-width: none;
        height: auto;
        margin-top: clamp(1.5rem, 6vw, 2.5rem);
        margin-inline: calc(50% - 50vw);
    }

    .l1p-feature__inner {
        grid-template-columns: minmax(0, 1fr) auto;
        grid-template-areas:
            "logo origin"
            "details details"
            "media media";
        grid-template-rows: auto auto auto;
        row-gap: 3.25rem;
        padding-block-start: clamp(4.5rem, 16vw, 6.5rem);
        padding-block-end: 0;
    }

    .l1p-feature__logo {
        width: 3.6rem;
        margin: 0;
    }

    .l1p-feature__origin {
        display: block;
        width: clamp(4.15rem, 19.5vw, 5.6rem);
        height: auto;
        align-self: center;
        grid-area: origin;
        justify-self: end;
        opacity: 0;
        transform: translateY(1rem);
        transition:
            opacity 650ms ease 160ms,
            transform 760ms cubic-bezier(0.16, 1, 0.3, 1) 160ms;
    }

    .l1p-feature.is-visible .l1p-feature__origin {
        opacity: 0.9;
        transform: translateY(0);
    }

    .l1p-feature__list li {
        width: 100%;
        font-size: clamp(1.2rem, 5.7vw, 1.75rem);
    }

    .l1p-feature__list i {
        margin-block: 1.35rem;
    }

    .l1p-feature__uses {
        margin-top: 3.25rem;
        font-size: 0.73rem;
        line-height: 1.68;
    }

    .l1p-feature__media {
        min-height: 32rem;
        opacity: 1;
        transform: none;
    }

    .l1p-feature__video {
        width: min(85%, 24rem);
        opacity: 0;
        transform: translate3d(4.5rem, 0, 0) scale(0.975);
        transition:
            opacity 850ms ease 220ms,
            transform 1100ms cubic-bezier(0.16, 1, 0.3, 1) 220ms;
    }

    .l1p-feature.is-visible.is-video-ready .l1p-feature__video {
        opacity: 1;
        transform: translate3d(0, 0, 0) scale(1);
    }

    .l1p-versatility {
        min-height: 0;
    }

    .l1p-versatility__inner {
        min-height: 38rem;
        padding-block: clamp(4.25rem, 14vw, 6rem);
    }

    .l1p-versatility__heading {
        margin-bottom: clamp(2.5rem, 9vw, 3.75rem);
    }

    .l1p-versatility__heading h2 {
        font-size: clamp(1.2rem, 5.3vw, 1.6rem);
    }

    .l1p-versatility__formula {
        flex-wrap: nowrap;
        gap: 0.55rem;
        font-size: clamp(2.7rem, 14vw, 4.5rem);
    }

    .l1p-versatility__gallery {
        width: min(78vw, 22rem);
        grid-template-columns: minmax(0, 1fr);
        gap: clamp(1.4rem, 6vw, 2.2rem);
    }

    .l1-plus-product-page .l1p-versatility__inner {
        min-height: 0;
        padding-block: clamp(5.25rem, 18vw, 7rem);
    }

    .l1-plus-product-page .l1p-versatility__heading {
        margin-bottom: clamp(3.25rem, 12vw, 4.5rem);
    }

    .l1-plus-product-page .l1p-versatility__gallery {
        width: min(82vw, 22rem);
        gap: clamp(2rem, 8vw, 3rem);
    }

    .l1-plus-product-page .l1p-versatility__gallery figure {
        height: clamp(8.25rem, 38vw, 10rem);
    }

    .l1-plus-product-page .l1p-versatility__gallery img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
    }

    .l1p-story,
    .l1p-story--one,
    .l1p-story--two,
    .l1p-story--three,
    .l1p-story--four,
    .l1p-story--five,
    .l1p-story--six {
        display: flex;
        min-height: 0;
        flex-direction: column;
        border-top: 0;
        background: #08080c;
    }

    .l1p-story--light::after,
    .l1p-story--dark.l1p-story--left::after,
    .l1p-story--dark.l1p-story--right::after {
        display: none;
    }

    .l1p-story__background,
    .l1p-story--one .l1p-story__background,
    .l1p-story--two .l1p-story__background,
    .l1p-story--three .l1p-story__background,
    .l1p-story--four .l1p-story__background,
    .l1p-story--five .l1p-story__background,
    .l1p-story--six .l1p-story__background {
        position: relative;
        inset: auto;
        display: block;
        width: 100%;
        height: clamp(19rem, 92vw, 34rem);
        max-width: none;
        max-height: none;
        flex: 0 0 auto;
        object-fit: cover;
        object-position: center;
        background: transparent;
        opacity: 1;
        transform: none;
    }

    .l1p-story__inner,
    .l1p-story--right .l1p-story__inner {
        width: 100%;
        max-width: none;
        min-height: 0;
        grid-template-columns: minmax(0, 1fr);
        margin: 0;
        padding: clamp(4.75rem, 16vw, 6.75rem) var(--page-gutter) clamp(5.5rem, 19vw, 8rem);
    }

    .l1p-story--one .l1p-story__inner {
        background: #ffffff;
    }

    .l1p-story--one {
        padding-top: clamp(2.25rem, 9vw, 3.75rem);
        background: #ffffff;
    }

    .l1p-story--two .l1p-story__inner {
        background: linear-gradient(180deg, #000000 0%, #07080d 38%, #07101b 74%, #08111e 100%);
    }

    .l1p-story--three .l1p-story__inner {
        background: linear-gradient(180deg, #08111e 0%, #0b111c 45%, #100b0e 100%);
    }

    .l1p-story--four .l1p-story__inner {
        background: linear-gradient(180deg, #100b0e 0%, #0d0d13 50%, #0a1c2a 100%);
    }

    .l1p-story--five .l1p-story__inner {
        background: linear-gradient(180deg, #091c2a 0%, #08111b 50%, #090808 100%);
    }

    .l1p-story--six .l1p-story__inner {
        background: linear-gradient(180deg, #090808 0%, #0a0b13 48%, #10162d 78%, #17234a 100%);
    }

    .l1p-story--one .l1p-story__background {
        height: auto;
        object-fit: contain;
        object-position: center;
        background: #ffffff;
    }

    .l1p-story--two .l1p-story__background {
        object-position: 26% center;
    }

    .l1p-story--three .l1p-story__background {
        object-position: 84% center;
    }

    .l1p-story--four .l1p-story__background {
        object-position: 19% center;
    }

    .l1p-story--five .l1p-story__background {
        object-position: 87% center;
    }

    .l1p-story--six .l1p-story__background {
        object-position: 7% center;
    }

    .l1p-story--left .l1p-story__content,
    .l1p-story--right .l1p-story__content {
        width: min(100%, 38rem);
        grid-column: 1;
        justify-self: start;
        transform: translateY(1.75rem);
    }

    .l1p-story--light,
    .l1p-story--dark {
        color: #ffffff;
    }

    .l1p-story--one {
        color: #202329;
    }

    .l1p-story--light .l1p-story__content > p,
    .l1p-story--dark .l1p-story__content > p {
        color: rgba(255, 255, 255, 0.78);
    }

    .l1p-story--one .l1p-story__content > p {
        color: rgba(24, 28, 34, 0.82);
    }

    .l1p-story.is-visible .l1p-story__content {
        transform: translateY(0);
    }

    .l1p-story__content h2 {
        max-width: 13ch;
        margin-bottom: clamp(1.75rem, 7vw, 2.75rem);
        font-size: clamp(2.2rem, 10vw, 3.35rem);
    }

    .l1p-story--four .l1p-story__content h2 {
        max-width: 100%;
        font-size: clamp(1.78rem, 8.3vw, 2.7rem);
    }

    .l1p-story--four .l1p-story__content h2 span,
    .l1p-story--four .l1p-story__content h2 strong {
        display: block;
        white-space: nowrap;
    }

    .l1p-story__content > p {
        font-size: clamp(0.92rem, 3.85vw, 1rem);
        line-height: 1.64;
    }

    .l1p-story__content > p + p {
        margin-top: 1.15rem;
    }

    .l1p-story__emphasis strong {
        font-size: clamp(1.18rem, 5vw, 1.5rem);
    }

    .l1p-review {
        min-height: 0;
    }

    .l1p-review__inner {
        min-height: 30rem;
        grid-template-columns: minmax(0, 1fr);
        gap: 2.75rem;
        padding-block: 4.5rem;
    }

    .l1p-review__quotes {
        justify-self: center;
        text-align: center;
    }

    .l1p-review blockquote p {
        font-size: clamp(1.55rem, 7.3vw, 2.4rem);
    }

    .l1p-review blockquote p {
        display: grid;
        width: min(100%, 29rem);
        margin-inline: auto;
        gap: 0.18em;
    }

    .l1p-review__quote-part--left {
        justify-self: start;
        text-align: left;
        transform: translateX(clamp(-0.8rem, -3vw, -0.35rem));
    }

    .l1p-review__quote-part--right {
        justify-self: end;
        text-align: right;
        transform: translateX(clamp(0.35rem, 3vw, 0.8rem));
    }

    .l1p-review__seal {
        width: min(42vw, 10.5rem);
        justify-self: center;
        transform: translateY(1.5rem);
    }

    .l1p-review.is-visible .l1p-review__seal {
        transform: translateY(0);
    }

    .l1p-technical__inner {
        padding-block: clamp(5rem, 16vw, 7rem);
    }

    .l1p-technical__heading {
        margin-bottom: 3.5rem;
    }

    .l1p-technical__heading h2 {
        display: block;
        font-size: clamp(1.95rem, 9vw, 3.05rem);
        line-height: 1.06;
    }

    .l1p-technical__heading h2 span,
    .l1p-technical__heading h2 strong {
        display: block;
    }

    .l1p-spec-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .l1p-spec {
        min-height: 8rem;
        padding: 1.35rem 1.5rem;
    }

    .l1p-spec dt {
        font-size: 0.7rem;
    }

    .l1p-spec--polar-values dt {
        font-size: clamp(0.58rem, 2.8vw, 0.7rem);
    }

    .l1p-spec dd {
        font-size: clamp(1.05rem, 5vw, 1.25rem);
    }

    .l1p-spec .l1p-polar-value strong {
        font-size: clamp(1.05rem, 5vw, 1.25rem);
    }

    .l1p-polar-icon {
        width: 1rem;
        height: 1rem;
    }

    .l1p-measurements {
        grid-template-columns: minmax(0, 1fr);
        margin-top: 4.5rem;
    }

    .l1p-measurement,
    .l1p-measurement--frequency {
        grid-column: 1;
        padding: clamp(1.5rem, 7vw, 2.5rem);
    }

    .l1p-measurement__heading {
        margin-bottom: 2.5rem;
    }

    .l1p-measurement--polar .l1p-measurement__heading {
        margin-bottom: 1rem;
    }

    .l1p-measurement__heading h3 {
        font-size: clamp(1.2rem, 5.4vw, 1.6rem);
    }

    .l1p-polar-legend {
        gap: 0.75rem 1rem;
    }

    .l1p-measurement--polar .l1p-polar-legend {
        display: grid;
        width: 100%;
        grid-template-columns: repeat(3, max-content);
        justify-content: center;
        gap: 0 clamp(0.9rem, 6vw, 1.75rem);
        margin-top: 2.65rem;
    }

    .l1p-measurement--frequency .l1p-measurement__heading {
        display: block;
    }

    .l1p-measurement--frequency .l1p-polar-legend {
        display: grid;
        width: 100%;
        grid-template-columns: repeat(3, max-content);
        justify-content: center;
        gap: 0 clamp(0.9rem, 6vw, 1.75rem);
        margin-top: 2.65rem;
    }

    .l1p-measurement--dimensions > img {
        width: min(72%, 13.5rem);
    }

    .l1p-measurement--frequency {
        overflow: hidden;
    }

    .l1p-frequency-chart {
        width: 100%;
        max-width: 100%;
    }
}

@media (max-width: 25rem) {
    .l1p-product-nav__rail {
        gap: 0.95rem;
    }

    .l1p-product-nav__link {
        font-size: 0.59rem;
    }

    .l1p-product-nav__purchase {
        padding-inline: 0.85rem;
    }

    .l1p-hero__inner {
        min-height: 35rem;
    }

    .l1p-story__inner {
        padding-block: 4rem;
    }

    .l1p-story__content h2 {
        font-size: clamp(2rem, 10.5vw, 2.75rem);
    }

    .l1p-review__inner {
        padding-block: 4rem;
    }

    .l1p-spec--polar-values dd {
        gap: 0.35rem;
    }

    .l1p-polar-value {
        gap: 0.3rem;
    }

    .l1p-spec .l1p-polar-value strong {
        font-size: clamp(1.05rem, 5vw, 1.25rem);
    }

    .l1p-polar-legend .l1p-polar-value strong {
        font-size: 0.66rem;
    }
}

@media (max-width: 63.999rem) {
    .l1p-audio-intro {
        min-height: clamp(34rem, 70vw, 44rem);
        grid-template-columns: minmax(0, 0.88fr) minmax(18rem, 1.12fr);
        gap: clamp(2.5rem, 5vw, 4.5rem);
        padding-block: clamp(5rem, 9vw, 7rem);
    }

    .l1p-audio-intro h2 {
        max-width: 14ch;
        font-size: clamp(2rem, 4.45vw, 3.35rem);
    }

    .l1p-audio-comparison__inner {
        grid-template-columns: minmax(14rem, 0.42fr) minmax(0, 1fr);
        grid-template-areas:
            "visual info"
            "samples samples";
        gap: clamp(3rem, 6vw, 5rem);
        padding-block: clamp(5rem, 8vw, 7rem);
    }

    .l1p-audio-comparison__info h3 {
        font-size: clamp(1.48rem, 3.3vw, 2.4rem);
    }

    .l1p-audio-comparison__visual {
        width: min(100%, 18rem);
    }

    .l1p-purchase-stage__inner {
        min-height: clamp(34rem, 64vw, 42rem);
        grid-template-columns: minmax(0, 1fr) minmax(17rem, 0.78fr);
        gap: clamp(2.5rem, 5vw, 4.5rem);
        padding-block: clamp(2rem, 4vw, 3.25rem) clamp(2.75rem, 5vw, 4rem);
    }

    .l1p-purchase-stage__visual {
        width: min(100%, 28rem);
    }

    .l1p-purchase-stage__details {
        padding-block: clamp(2.5rem, 5vw, 4.5rem);
    }
}

@media (max-width: 47.999rem) {
    .l1p-audio-comparison {
        background: linear-gradient(
            180deg,
            #000000 0%,
            #000000 34%,
            #141333 68%,
            #0a091c 84%,
            #040406 100%
        );
    }

    .l1p-audio-comparison:nth-child(2) {
        background: linear-gradient(
            180deg,
            #000000 0%,
            #000000 34%,
            #0a2632 68%,
            #071219 84%,
            #040406 100%
        );
    }

    .l1p-audio-comparison:nth-child(3) {
        background: linear-gradient(
            180deg,
            #000000 0%,
            #000000 34%,
            #28112d 68%,
            #100912 84%,
            #040406 100%
        );
    }

    .l1p-audio-intro {
        min-height: 0;
        grid-template-columns: minmax(0, 1fr);
        gap: 3.25rem;
        padding-block: clamp(4.5rem, 15vw, 6.5rem);
    }

    .l1p-audio-intro h2 {
        max-width: 100%;
        font-size: clamp(1.95rem, 8.5vw, 2.85rem);
    }

    .l1p-audio-intro__question {
        margin-top: 1.35rem;
        font-size: clamp(1.05rem, 5vw, 1.3rem);
    }

    .l1p-audio-intro__copy {
        font-size: clamp(0.9rem, 3.8vw, 1rem);
    }

    .l1p-audio-intro__note {
        max-width: 34rem;
        font-size: 0.65rem;
    }

    .l1p-audio-intro__visual {
        width: calc(100% + 1.9rem);
        margin-right: -1.9rem;
        transform: translateX(1.5rem);
    }

    .l1p-audio-intro__visual img {
        -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000000 14%, #000000 100%);
        mask-image: linear-gradient(180deg, transparent 0%, #000000 14%, #000000 100%);
    }

    .l1p-audio-comparison__inner {
        grid-template-columns: minmax(0, 1fr);
        grid-template-areas:
            "visual"
            "info"
            "samples";
        gap: 3.25rem;
        padding-block: clamp(4.5rem, 15vw, 6.5rem);
    }

    .l1p-audio-comparison__info h3 {
        max-width: 18ch;
        font-size: clamp(1.48rem, 6.6vw, 2.12rem);
    }

    .l1p-audio-comparison__facts {
        margin-top: 2.25rem;
    }

    .l1p-audio-comparison__facts > div {
        padding: 1rem 0.65rem 1rem 0;
    }

    .l1p-audio-comparison__facts > div + div {
        padding-left: 0.65rem;
    }

    .l1p-audio-comparison__visual {
        width: min(64vw, 16rem);
        justify-self: center;
        transform: translateY(1.5rem);
    }

    .l1p-audio-comparison.is-visible .l1p-audio-comparison__visual {
        transform: translateY(0);
    }

    .l1p-audio-comparison__samples {
        gap: 2.35rem;
    }

    .l1p-audio-voice__heading {
        align-items: flex-start;
        flex-direction: column;
        gap: 0.3rem;
    }

    .l1p-audio-pair {
        grid-template-columns: minmax(0, 1fr);
        gap: 0.65rem;
    }

    .l1p-audio-player {
        padding: 0.9rem;
    }

    .l1p-purchase-stage__inner {
        min-height: 0;
        grid-template-columns: minmax(0, 1fr);
        gap: 2.75rem;
        padding-block: clamp(2.5rem, 8vw, 3.5rem) 0;
    }

    .l1p-purchase-stage__visual {
        width: min(78vw, 20rem);
        transform: translateY(1.75rem);
    }

    .l1p-purchase-stage.is-visible .l1p-purchase-stage__visual {
        transform: translateY(0);
    }

    .l1p-purchase-stage__details {
        width: min(100%, 25rem);
        align-items: stretch;
        justify-self: center;
        padding-block: 0 clamp(5rem, 16vw, 7rem);
        transform: translateY(1.75rem);
    }

    .l1p-purchase-stage__summary {
        display: flex;
        width: max-content;
        max-width: calc(100% - 1rem);
        align-self: center;
        align-items: flex-start;
        flex-direction: column;
        transform: translateX(0.5rem);
    }

    .button.l1p-purchase-stage__button {
        min-width: clamp(13rem, 60vw, 15rem);
        min-height: 3.2rem;
        align-self: center;
        padding-block: 0.82rem;
    }

    .l1p-purchase-stage.is-visible .l1p-purchase-stage__details {
        transform: translateY(0);
    }

    .l1p-purchase-stage__logo {
        width: clamp(5.4rem, 24vw, 6.5rem);
    }

    .l1p-purchase-stage__price {
        margin-top: 1.8rem;
        font-size: clamp(3.1rem, 15vw, 4.5rem);
    }

    .l1p-purchase-stage__tax {
        max-width: 25rem;
        font-size: clamp(0.7rem, 3.3vw, 0.8rem);
    }
}

@media (max-width: 25rem) {
    .l1p-audio-intro__visual {
        width: calc(100% + 1rem);
        margin-right: -1rem;
    }

    .l1p-audio-comparison__facts {
        grid-template-columns: minmax(0, 1fr);
    }

    .l1p-audio-comparison__facts > div {
        padding: 0.85rem 0;
    }

    .l1p-audio-comparison__facts > div + div {
        border-top: 0.0625rem solid #2b2d36;
        border-left: 0;
        padding-left: 0;
    }

    .l1p-audio-player__controls {
        grid-template-columns: 2.7rem minmax(0, 1fr);
        gap: 0.7rem;
    }

    .l1p-audio-player__toggle {
        width: 2.7rem;
        height: 2.7rem;
    }

    .l1p-audio-player__time {
        grid-column: 2;
        min-width: 0;
        justify-content: flex-start;
        margin-top: -0.45rem;
    }

    .l1p-purchase-stage__visual {
        width: min(80vw, 17rem);
    }

    .l1p-purchase-stage__details {
        padding-bottom: 4.75rem;
    }

    .l1p-purchase-stage__price {
        font-size: clamp(2.85rem, 14vw, 3.65rem);
    }
}

/* Desktop: keep the complete L1 and L1 Plus introductions inside the viewport. */
@media (min-width: 64rem) and (hover: hover) and (pointer: fine) {
    :is(.l1-plus-product-page, .l1-product-page) .l1p-hero {
        height: calc(100svh - var(--header-height) - var(--l1p-nav-height));
        min-height: 0;
    }

    :is(.l1-plus-product-page, .l1-product-page) .l1p-hero__inner {
        height: 100%;
        min-height: 0;
        padding-block: clamp(1.25rem, 3svh, 2.25rem);
    }

    :is(.l1-plus-product-page, .l1-product-page) .l1p-hero__heading {
        margin-bottom: clamp(1rem, 2.5svh, 1.75rem);
    }

    :is(.l1-plus-product-page, .l1-product-page) .l1p-hero__heading h1 {
        font-size: clamp(2rem, min(4.2vw, 7svh), 4.4rem);
    }

    :is(.l1-plus-product-page, .l1-product-page) .l1p-hero__heading p {
        margin-top: clamp(0.55rem, 1.3svh, 0.9rem);
        font-size: clamp(0.9rem, min(1.4vw, 2.6svh), 1.3rem);
    }

    :is(.l1-plus-product-page, .l1-product-page) .l1p-hero .l1p-youtube {
        width: min(100%, 64rem, 97.778svh);
    }
}

@media (prefers-reduced-motion: reduce) {
    .l1p-product-nav,
    .l1p-product-nav__brand,
    .l1p-youtube iframe,
    .l1p-youtube__placeholder,
    .l1p-feature__logo,
    .l1p-feature__origin,
    .l1p-feature__list li,
    .l1p-feature__list i,
    .l1p-feature__uses,
    .l1p-feature__media,
    .l1p-feature__video,
    .l1p-versatility__gallery figure,
    .l1p-versatility__gallery img,
    .l1p-versatility__gallery figure::after,
    .l1p-story__background,
    .l1p-story__content,
    .l1p-review__quotes,
    .l1p-review__seal,
    .l1p-technical__heading,
    .l1p-spec,
    .l1p-measurement,
    .l1p-audio-intro__content,
    .l1p-audio-intro__visual,
    .l1p-audio-comparison__info,
    .l1p-audio-comparison__visual,
    .l1p-audio-player,
    .l1p-purchase-stage__visual,
    .l1p-purchase-stage__details,
    .l1p-purchase-stage__button img {
        transition: none;
    }

    .l1p-frequency-chart__curves {
        transition: none;
    }

    .l1p-youtube__line::after {
        animation: none;
    }

    .l1p-feature__logo,
    .l1p-feature__origin,
    .l1p-feature__list li,
    .l1p-feature__uses,
    .l1p-feature__media,
    .l1p-feature__video {
        opacity: 1;
        transform: none;
    }

    .l1p-feature__origin {
        opacity: 0.9;
    }

    .l1p-versatility__gallery figure {
        opacity: 1;
        transform: none;
    }

    .l1p-story__background,
    .l1p-story__content,
    .l1p-review__quotes,
    .l1p-review__seal {
        opacity: 1;
        transform: none;
    }

    .l1p-technical__heading,
    .l1p-spec,
    .l1p-measurement,
    .l1p-audio-intro__content,
    .l1p-audio-intro__visual,
    .l1p-audio-comparison__info,
    .l1p-audio-comparison__visual,
    .l1p-audio-player,
    .l1p-purchase-stage__visual,
    .l1p-purchase-stage__details {
        opacity: 1;
        transform: none;
    }

    .l1p-feature__list i {
        transform: scaleX(1);
    }
}
