.t-banner {
    position: relative;
}
@media (min-width: 83.4375em) {
    .t-banner {
        padding-top: 2.3125rem;
    }
}
@media (min-width: 23.4375em) and (max-width: 83.4375em) {
    @supports (padding-top: clamp(1.625rem, 1.3564453125rem + 1.1458333333vw, 2.3125rem)) {
        .t-banner {
            padding-top: clamp(1.625rem, 1.3564453125rem + 1.1458333333vw, 2.3125rem);
        }
    }
    @supports not (padding-top: clamp(1.625rem, 1.3564453125rem + 1.1458333333vw, 2.3125rem)) {
        .t-banner {
            padding-top: calc(1.625rem + 0.6875 * (100vw - 23.4375rem) / 60);
        }
    }
}
@media (max-width: 23.4375em) {
    .t-banner {
        padding-top: 1.625rem;
    }
}
@media (min-width: 83.4375em) {
    .t-banner {
        padding-inline: 2.75rem;
    }
}
@media (min-width: 23.4375em) and (max-width: 83.4375em) {
    @supports (padding-inline: clamp(1.25rem, 0.6640625rem + 2.5vw, 2.75rem)) {
        .t-banner {
            padding-inline: clamp(1.25rem, 0.6640625rem + 2.5vw, 2.75rem);
        }
    }
    @supports not (padding-inline: clamp(1.25rem, 0.6640625rem + 2.5vw, 2.75rem)) {
        .t-banner {
            padding-inline: calc(1.25rem + 1.5 * (100vw - 23.4375rem) / 60);
        }
    }
}
@media (max-width: 23.4375em) {
    .t-banner {
        padding-inline: 1.25rem;
    }
}
@media (min-width: 83.4375em) {
    .t-banner {
        padding-bottom: 2.75rem;
    }
}
@media (min-width: 23.4375em) and (max-width: 83.4375em) {
    @supports (padding-bottom: clamp(1.125rem, 0.490234375rem + 2.7083333333vw, 2.75rem)) {
        .t-banner {
            padding-bottom: clamp(1.125rem, 0.490234375rem + 2.7083333333vw, 2.75rem);
        }
    }
    @supports not (padding-bottom: clamp(1.125rem, 0.490234375rem + 2.7083333333vw, 2.75rem)) {
        .t-banner {
            padding-bottom: calc(1.125rem + 1.625 * (100vw - 23.4375rem) / 60);
        }
    }
}
@media (max-width: 23.4375em) {
    .t-banner {
        padding-bottom: 1.125rem;
    }
}
@media (max-width: 29.99875em) {
    .t-banner {
        margin-inline: -1.25rem;
    }
}
.t-banner__background {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}
.t-banner__header {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 1.375rem;
}
@media (min-width: 83.4375em) {
    .t-banner__header {
        gap: 2.5rem;
    }
}
@media (min-width: 23.4375em) and (max-width: 83.4375em) {
    @supports (gap: clamp(1.25rem, 0.76171875rem + 2.0833333333vw, 2.5rem)) {
        .t-banner__header {
            gap: clamp(1.25rem, 0.76171875rem + 2.0833333333vw, 2.5rem);
        }
    }
    @supports not (gap: clamp(1.25rem, 0.76171875rem + 2.0833333333vw, 2.5rem)) {
        .t-banner__header {
            gap: calc(1.25rem + 1.25 * (100vw - 23.4375rem) / 60);
        }
    }
}
@media (max-width: 23.4375em) {
    .t-banner__header {
        gap: 1.25rem;
    }
}
@media (max-width: 61.99875em) {
    .t-banner__header {
        display: grid;
        -webkit-box-pack: unset;
        -ms-flex-pack: unset;
        justify-content: unset;
        justify-items: center;
    }
}
.t-banner__logo {
    width: auto;
}
@media (min-width: 83.4375em) {
    .t-banner__logo {
        height: 2.1875rem;
    }
}
@media (min-width: 23.4375em) and (max-width: 83.4375em) {
    @supports (height: clamp(1.5625rem, 1.318359375rem + 1.0416666667vw, 2.1875rem)) {
        .t-banner__logo {
            height: clamp(1.5625rem, 1.318359375rem + 1.0416666667vw, 2.1875rem);
        }
    }
    @supports not (height: clamp(1.5625rem, 1.318359375rem + 1.0416666667vw, 2.1875rem)) {
        .t-banner__logo {
            height: calc(1.5625rem + 0.625 * (100vw - 23.4375rem) / 60);
        }
    }
}
@media (max-width: 23.4375em) {
    .t-banner__logo {
        height: 1.5625rem;
    }
}
.t-banner__action {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #bc2247;
    -webkit-transition: color 0.3s ease-in-out;
    transition: color 0.3s ease-in-out;
}
@media (min-width: 83.4375em) {
    .t-banner__action {
        gap: 0.8125rem;
    }
}
@media (min-width: 23.4375em) and (max-width: 83.4375em) {
    @supports (gap: clamp(0.375rem, 0.2041015625rem + 0.7291666667vw, 0.8125rem)) {
        .t-banner__action {
            gap: clamp(0.375rem, 0.2041015625rem + 0.7291666667vw, 0.8125rem);
        }
    }
    @supports not (gap: clamp(0.375rem, 0.2041015625rem + 0.7291666667vw, 0.8125rem)) {
        .t-banner__action {
            gap: calc(0.375rem + 0.4375 * (100vw - 23.4375rem) / 60);
        }
    }
}
@media (max-width: 23.4375em) {
    .t-banner__action {
        gap: 0.375rem;
    }
}
@media (any-hover: hover) {
    .t-banner__action:hover {
        color: #971332;
    }
    .t-banner__action:hover .t-banner__icon {
        border-color: #971332;
    }
}
.t-banner__text {
    font-family: Ubuntu, sans-serif;
    font-weight: 700;
}
@media (min-width: 83.4375em) {
    .t-banner__text {
        font-size: 1.5rem;
    }
}
@media (min-width: 23.4375em) and (max-width: 83.4375em) {
    @supports (font-size: clamp(1rem, 0.8046875rem + 0.8333333333vw, 1.5rem)) {
        .t-banner__text {
            font-size: clamp(1rem, 0.8046875rem + 0.8333333333vw, 1.5rem);
        }
    }
    @supports not (font-size: clamp(1rem, 0.8046875rem + 0.8333333333vw, 1.5rem)) {
        .t-banner__text {
            font-size: calc(1rem + 0.5 * (100vw - 23.4375rem) / 60);
        }
    }
}
@media (max-width: 23.4375em) {
    .t-banner__text {
        font-size: 1rem;
    }
}
.t-banner__icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    aspect-ratio: 1;
    border: 1px solid #bc2247;
    border-radius: 50%;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
@media (min-width: 83.4375em) {
    .t-banner__icon {
        width: 3.375rem;
    }
}
@media (min-width: 23.4375em) and (max-width: 83.4375em) {
    @supports (width: clamp(2.375rem, 1.984375rem + 1.6666666667vw, 3.375rem)) {
        .t-banner__icon {
            width: clamp(2.375rem, 1.984375rem + 1.6666666667vw, 3.375rem);
        }
    }
    @supports not (width: clamp(2.375rem, 1.984375rem + 1.6666666667vw, 3.375rem)) {
        .t-banner__icon {
            width: calc(2.375rem + 1 * (100vw - 23.4375rem) / 60);
        }
    }
}
@media (max-width: 23.4375em) {
    .t-banner__icon {
        width: 2.375rem;
    }
}
.t-banner__icon svg {
    height: auto;
}
@media (min-width: 83.4375em) {
    .t-banner__icon svg {
        max-width: 1.8125rem;
    }
}
@media (min-width: 23.4375em) and (max-width: 83.4375em) {
    @supports (max-width: clamp(1.25rem, 1.0302734375rem + 0.9375vw, 1.8125rem)) {
        .t-banner__icon svg {
            max-width: clamp(1.25rem, 1.0302734375rem + 0.9375vw, 1.8125rem);
        }
    }
    @supports not (max-width: clamp(1.25rem, 1.0302734375rem + 0.9375vw, 1.8125rem)) {
        .t-banner__icon svg {
            max-width: calc(1.25rem + 0.5625 * (100vw - 23.4375rem) / 60);
        }
    }
}
@media (max-width: 23.4375em) {
    .t-banner__icon svg {
        max-width: 1.25rem;
    }
}
.t-banner__body {
    position: relative;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}
@media (min-width: 83.4375em) {
    .t-banner__body {
        gap: 1.125rem;
    }
}
@media (min-width: 23.4375em) and (max-width: 83.4375em) {
    @supports (gap: clamp(0.625rem, 0.4296875rem + 0.8333333333vw, 1.125rem)) {
        .t-banner__body {
            gap: clamp(0.625rem, 0.4296875rem + 0.8333333333vw, 1.125rem);
        }
    }
    @supports not (gap: clamp(0.625rem, 0.4296875rem + 0.8333333333vw, 1.125rem)) {
        .t-banner__body {
            gap: calc(0.625rem + 0.5 * (100vw - 23.4375rem) / 60);
        }
    }
}
@media (max-width: 23.4375em) {
    .t-banner__body {
        gap: 0.625rem;
    }
}
@media (max-width: 61.99875em) {
    .t-banner__body {
        grid-template-columns: repeat(2, 1fr);
    }
}

.t-banner-card {
    background-color: #fff;
}
.t-banner-card__image {
    position: relative;
    aspect-ratio: 288/304;
}
.t-banner-card__image img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}
@media (max-width: 29.99875em) {
    .t-banner-card__image {
        aspect-ratio: 155/165;
    }
}
.t-banner-card__content {
    display: grid;
}
@media (min-width: 83.4375em) {
    .t-banner-card__content {
        gap: 0.375rem;
    }
}
@media (min-width: 23.4375em) and (max-width: 83.4375em) {
    @supports (gap: clamp(0.0625rem, -0.0595703125rem + 0.5208333333vw, 0.375rem)) {
        .t-banner-card__content {
            gap: clamp(0.0625rem, -0.0595703125rem + 0.5208333333vw, 0.375rem);
        }
    }
    @supports not (gap: clamp(0.0625rem, -0.0595703125rem + 0.5208333333vw, 0.375rem)) {
        .t-banner-card__content {
            gap: calc(0.0625rem + 0.3125 * (100vw - 23.4375rem) / 60);
        }
    }
}
@media (max-width: 23.4375em) {
    .t-banner-card__content {
        gap: 0.0625rem;
    }
}
@media (min-width: 83.4375em) {
    .t-banner-card__content {
        padding-inline: 0.8125rem;
    }
}
@media (min-width: 23.4375em) and (max-width: 83.4375em) {
    @supports (padding-inline: clamp(0.4375rem, 0.291015625rem + 0.625vw, 0.8125rem)) {
        .t-banner-card__content {
            padding-inline: clamp(0.4375rem, 0.291015625rem + 0.625vw, 0.8125rem);
        }
    }
    @supports not (padding-inline: clamp(0.4375rem, 0.291015625rem + 0.625vw, 0.8125rem)) {
        .t-banner-card__content {
            padding-inline: calc(0.4375rem + 0.375 * (100vw - 23.4375rem) / 60);
        }
    }
}
@media (max-width: 23.4375em) {
    .t-banner-card__content {
        padding-inline: 0.4375rem;
    }
}
@media (min-width: 83.4375em) {
    .t-banner-card__content {
        padding-top: 0.75rem;
    }
}
@media (min-width: 23.4375em) and (max-width: 83.4375em) {
    @supports (padding-top: clamp(0.375rem, 0.228515625rem + 0.625vw, 0.75rem)) {
        .t-banner-card__content {
            padding-top: clamp(0.375rem, 0.228515625rem + 0.625vw, 0.75rem);
        }
    }
    @supports not (padding-top: clamp(0.375rem, 0.228515625rem + 0.625vw, 0.75rem)) {
        .t-banner-card__content {
            padding-top: calc(0.375rem + 0.375 * (100vw - 23.4375rem) / 60);
        }
    }
}
@media (max-width: 23.4375em) {
    .t-banner-card__content {
        padding-top: 0.375rem;
    }
}
@media (min-width: 83.4375em) {
    .t-banner-card__content {
        padding-bottom: 1.1875rem;
    }
}
@media (min-width: 23.4375em) and (max-width: 83.4375em) {
    @supports (padding-bottom: clamp(0.375rem, 0.0576171875rem + 1.3541666667vw, 1.1875rem)) {
        .t-banner-card__content {
            padding-bottom: clamp(0.375rem, 0.0576171875rem + 1.3541666667vw, 1.1875rem);
        }
    }
    @supports not (padding-bottom: clamp(0.375rem, 0.0576171875rem + 1.3541666667vw, 1.1875rem)) {
        .t-banner-card__content {
            padding-bottom: calc(0.375rem + 0.8125 * (100vw - 23.4375rem) / 60);
        }
    }
}
@media (max-width: 23.4375em) {
    .t-banner-card__content {
        padding-bottom: 0.375rem;
    }
}
.t-banner-card__title {
    display: grid;
    font-family: 'Cera Pro', sans-serif;
    font-weight: 500;
    color: #373737;
}
@media (min-width: 83.4375em) {
    .t-banner-card__title {
        font-size: 1.25rem;
    }
}
@media (min-width: 23.4375em) and (max-width: 83.4375em) {
    @supports (font-size: clamp(0.875rem, 0.728515625rem + 0.625vw, 1.25rem)) {
        .t-banner-card__title {
            font-size: clamp(0.875rem, 0.728515625rem + 0.625vw, 1.25rem);
        }
    }
    @supports not (font-size: clamp(0.875rem, 0.728515625rem + 0.625vw, 1.25rem)) {
        .t-banner-card__title {
            font-size: calc(0.875rem + 0.375 * (100vw - 23.4375rem) / 60);
        }
    }
}
@media (max-width: 23.4375em) {
    .t-banner-card__title {
        font-size: 0.875rem;
    }
}
.t-banner-card__title span {
    font-weight: 400;
}
@media (min-width: 83.4375em) {
    .t-banner-card__title span {
        font-size: 1rem;
    }
}
@media (min-width: 23.4375em) and (max-width: 83.4375em) {
    @supports (font-size: clamp(0.75rem, 0.65234375rem + 0.4166666667vw, 1rem)) {
        .t-banner-card__title span {
            font-size: clamp(0.75rem, 0.65234375rem + 0.4166666667vw, 1rem);
        }
    }
    @supports not (font-size: clamp(0.75rem, 0.65234375rem + 0.4166666667vw, 1rem)) {
        .t-banner-card__title span {
            font-size: calc(0.75rem + 0.25 * (100vw - 23.4375rem) / 60);
        }
    }
}
@media (max-width: 23.4375em) {
    .t-banner-card__title span {
        font-size: 0.75rem;
    }
}
.t-banner-card__size {
    font-family: 'Cera Pro', sans-serif;
    font-weight: 400;
    color: #a8a8a7;
}
@media (min-width: 83.4375em) {
    .t-banner-card__size {
        font-size: 1rem;
    }
}
@media (min-width: 23.4375em) and (max-width: 83.4375em) {
    @supports (font-size: clamp(0.75rem, 0.65234375rem + 0.4166666667vw, 1rem)) {
        .t-banner-card__size {
            font-size: clamp(0.75rem, 0.65234375rem + 0.4166666667vw, 1rem);
        }
    }
    @supports not (font-size: clamp(0.75rem, 0.65234375rem + 0.4166666667vw, 1rem)) {
        .t-banner-card__size {
            font-size: calc(0.75rem + 0.25 * (100vw - 23.4375rem) / 60);
        }
    }
}
@media (max-width: 23.4375em) {
    .t-banner-card__size {
        font-size: 0.75rem;
    }
}
