/* The letters are part of the banner design and scale with its actual width. */
@media (min-width: 701px) {
    #sp24-home .hero.hero-full .facade {
        isolation: auto;
    }
    #sp24-home .hero-full .billboard {
        container-type: inline-size;
        mix-blend-mode: normal;
        z-index: 3;
    }
    #sp24-home .hero-full .billboard .print {
        color: #fff;
        padding-inline-start: 53%;
        padding-inline-end: 4%;
    }
    #sp24-home .hero-full .billboard .print::after {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(90deg, rgba(8, 25, 36, .76), rgba(8, 25, 36, .56) 52%, rgba(8, 25, 36, .64));
        pointer-events: none;
        z-index: 1;
    }
    #sp24-home .hero-full .billboard .white-print::after {
        background: linear-gradient(90deg, rgba(8, 25, 36, .78), rgba(8, 25, 36, .70));
    }
    #sp24-home .hero-full .billboard .print > :is(small, strong, span) {
        position: relative;
        z-index: 2;
        color: #fff;
        max-width: 100%;
    }
    #sp24-home .hero-full .billboard .print > strong {
        font-size: clamp(24px, 5.8cqw, 104px);
        line-height: 1;
        letter-spacing: -.05em;
        margin-block: .23em .28em;
        white-space: nowrap;
    }
    #sp24-home .hero-full .billboard .print > small {
        font-size: clamp(11px, 1.9cqw, 27px);
        line-height: 1.3;
        letter-spacing: .045em;
    }
    #sp24-home .hero-full .billboard .print > span {
        font-size: clamp(12px, 2cqw, 28px);
        line-height: 1.35;
    }
}

/* Give the text beside the images the same readable scale throughout the home page. */
#sp24-home {
    --sp24-feature-copy: clamp(18px, calc(13px + .53vw), 26px);
    --sp24-feature-label: clamp(16px, calc(13px + .31vw), 22px);
}
#sp24-home .hero.hero-full .hero-intro > p,
#sp24-home section .section-head > p,
#sp24-home .moment-section .moment-layout > div > p:not(.eyebrow),
#sp24-home .designer #mode-copy,
#sp24-home .material .material-info > p:not(.caption),
#sp24-home .material .material-explainer > p,
#sp24-home .sp24-wide-opener .application-copy > p,
#sp24-home .sp24-process .sp24-process__text > p {
    font-size: var(--sp24-feature-copy);
    line-height: 1.52;
}
#sp24-home section .section-head > p {
    max-width: 36ch;
}
#sp24-home .moment-section #moment-open,
#sp24-home .designer .modes button p,
#sp24-home .designer .designer-preview > .caption,
#sp24-home .material .material-info > .caption,
#sp24-home .products .product-meta p,
#sp24-home .sp24-wide-opener .application-copy > .button {
    font-size: var(--sp24-feature-label);
    line-height: 1.42;
}
#sp24-home .material .material-tabs button > span {
    font-size: var(--sp24-feature-copy);
    font-weight: 650;
    line-height: 1.26;
    overflow-wrap: anywhere;
}
#sp24-home .material .material-tabs button small {
    font-size: clamp(15px, calc(11px + .36vw), 20px);
    color: #465c69;
    line-height: 1.4;
}
#sp24-home .material .material-kicker,
#sp24-home .material .material-explainer > span,
#sp24-home .material .quality-trust > span,
#sp24-home .material .material-tools button,
#sp24-home .material .material-explainer > .button {
    font-size: var(--sp24-feature-label);
}
#sp24-home .material .material-info > p:not(.caption),
#sp24-home .material .material-explainer > p,
#sp24-home .sp24-wide-opener .application-copy > p {
    color: #40535d;
    max-width: 46ch;
}
#sp24-home .material .material-explainer > .button {
    margin-top: 16px;
}
#sp24-home .designer .tour-steps button,
#sp24-home .material .material-tools > span,
#sp24-home .sp24-wide-opener .application-playback > span,
#sp24-home .sp24-wide-opener .application-playback button {
    font-size: clamp(14px, calc(11px + .22vw), 18px);
}
#sp24-home .moment-section .moment-options button {
    min-height: 50px;
    font-size: var(--sp24-feature-copy);
    line-height: 1.35;
    text-align: start;
}
#sp24-home .moment-section .moment-layout > div > p:not(.eyebrow) {
    color: #e2edf2;
}
#sp24-home .moment-section #moment-caption {
    font-size: clamp(13px, calc(10px + .25vw), 17px);
    letter-spacing: .09em;
}
#sp24-home .products .product-card {
    --card-inset: clamp(15px, calc(12px + .65vw), 34px);
    overflow: hidden;
}
#sp24-home .products .product-card > .category-tag {
    margin: 0;
    padding: var(--card-inset) var(--card-inset) 0;
    font-size: clamp(12px, calc(10px + .22vw), 17px);
    line-height: 1.4;
    letter-spacing: .085em;
}
#sp24-home .products .product-card > .product-meta {
    padding: 12px var(--card-inset) var(--card-inset);
}
#sp24-home .products .product-card .product-meta > span {
    padding: 7px 11px;
    font-size: clamp(13px, calc(11px + .22vw), 17px);
}
@media (min-width: 701px) and (max-width: 1050px) {
    #sp24-home .products .product-card > .product-meta {
        align-items: flex-start;
        flex-direction: column;
    }
}
@media (max-width: 390px) {
    #sp24-home .moment-section .moment-options {
        column-gap: 12px;
    }
    #sp24-home .moment-section #moment-open {
        max-width: 100%;
        white-space: normal;
    }
}
