.hero-winter {

    --hero-color-primary: #DB0A40;
    --hero-color-secondary: rgba(0, 17, 54, 0.85);

    --hero-container-padding-x: 20px;
    --hero-content-width: 1344px;

    --hero-content-padding-x: calc(130px - var(--hero-container-padding-x) - ((1440px - (var(--hero-container-padding-x) * 2) - var(--hero-content-width)) / 2));

    /* --hero-animation-timing-function: cubic-bezier(0.4, 0.0, 0.2, 1); */
    /* --hero-animation-timing-function: cubic-bezier(0.370, 0.010, 0.080, 0.995); */
    --hero-animation-timing-function: cubic-bezier(.18,.8,.28,.99);

    height: auto;
    padding: 0 var(--hero-container-padding-x);
    padding-bottom: 35px;
    box-sizing: border-box;

    /*background: transparent;*/
    background: #011237;
    /*background-size: cover;*/
    /*background-position-y: calc(50% - 20px);*/

    overflow: hidden;
    position: relative;

}

.hero-winter .hero-winter--bg--layer1 {
    position: absolute;
    right: 0;
    /*left: calc(50% - min(240px, 16.666666vw));*/
    left: 0;
    top: 65%;
    bottom: 0;
    background: url('../img/hero-winter-bg.jpg') no-repeat center center;
    background-size: cover;
}

.hero-winter .hero-winter--bg--layer2 {
    display: none;
    position: absolute;
    left: 0;
    right: 0;
    /*right: calc(50% + min(240px, 16.666666vw));*/
    top: 0;
    bottom: calc(35% - 1px);
    background: #011237;

}

.hero-winter .hero-winter--bg--layer3 {
    position: absolute;
    right: 0;
    /*left: calc(50% - min(240px, 16.666666vw) - 1px);*/
    left: 0;
    top: 65%;
    bottom: 10%;
    background: linear-gradient(0, rgba(1, 18, 55, 0) 0%, #011237 100%);

}

.hero-winter .hero-winter--bg--pattern {
    width: 3000px;
    height: 1000px;
    position: absolute;
    right: calc(50% - 1540px);
    bottom: -420px;
    /* We no longer animate right/bottom, start at neutral */
    transform: rotate(-6deg) translate(0, 0);
    /*background: linear-gradient(270deg, rgba(1, 18, 55, 0) 0%, #011237 100%);*/

    animation: hero-winter-bg-pattern-move 12s ease-in-out infinite alternate;
}

@keyframes hero-winter-bg-pattern-move {
    0% {
        /* At rest: no translation, always apply the rotation */
        transform: rotate(-6deg) translate(0, 0);
    }
    100% {
        /* Translate horizontally and vertically, rotation always present */
        transform: rotate(-20deg) translate(600px, -420px);
    }
}

@media (min-width: 768px) {

    .hero-winter .hero-winter--bg--layer1 {
        position: absolute;
        right: 0;
        left: calc(50% - min(240px, 16.666666vw));
        top: 0;
        bottom: 0;
        background: url('../img/hero-winter-bg.jpg') no-repeat center center;
        background-size: cover;
    }

    .hero-winter .hero-winter--bg--layer2 {
        display: none;
        position: absolute;
        left: 0;
        right: calc(50% + min(240px, 16.666666vw));
        top: 0;
        bottom: 0;
        background: #011237;

    }

    .hero-winter .hero-winter--bg--layer3 {
        position: absolute;
        right: 0;
        left: calc(50% - min(240px, 16.666666vw) - 1px);
        top: 0;
        bottom: 0;
        background: linear-gradient(270deg, rgba(1, 18, 55, 0) 0%, rgba(1, 18, 55, 0) 60%, #011237 100%);

    }

    .hero-winter .hero-winter--bg--pattern {
        width: 3000px;
        height: 1000px;
        position: absolute;
        right: calc(50% - 1540px);
        bottom: -420px;
        /* We no longer animate right/bottom, start at neutral */
        transform: rotate(-6deg) translate(0, 0);
        /*background: linear-gradient(270deg, rgba(1, 18, 55, 0) 0%, #011237 100%);*/

        animation: hero-winter-bg-pattern-move 12s ease-in-out infinite alternate;
    }

    @keyframes hero-winter-bg-pattern-move {
        0% {
            /* At rest: no translation, always apply the rotation */
            transform: rotate(-6deg) translate(0, 0);
        }
        100% {
            /* Translate horizontally and vertically, rotation always present */
            transform: rotate(-20deg) translate(600px, -420px);
        }
    }


}

.hero-winter .hero-winter--bg--bolid {
    --size-factor: 0.6;
    position: absolute;
    width: calc(294px * var(--size-factor));
    /*max-width: 540px;*/
    height: calc(490px * var(--size-factor));
    right: 30%;
    left: auto;
    top: auto;
    bottom: 20px;
    background: url('../img/hero-winter-bolid.png') no-repeat center center;
    background-size: contain;

    opacity: 0;
    animation: reveal-cl 1.5s forwards;
    animation-timing-function: var(--hero-animation-timing-function);
    animation-delay: 1s;

}

@media (min-width: 768px) {

    .hero-winter .hero-winter--bg--bolid {
        --size-factor: 0.8;
        /*top: 290px;*/
        right: 10%;
        left: auto;
        top: 100px;
    }

}

@media (min-width: 1180px) {

    .hero-winter .hero-winter--bg--bolid {
        /*top: 290px;*/
        /*width: max(min(56.466666vw, 847px), 300px);*/
        /*left: calc(50% - min(200px, 13.33333vw));*/
        /*right: auto;*/
        /*max-width: 100%;*/
        /*width: min(56.466666vw, 847px);*/
        /*left: calc(50% - 200px);*/

        /*width: 294px;*/
        /*height: 490px;*/
        --size-factor: 1;

        right: 15%;
        left: auto;
        top: 25px;

    }

}

.hero-winter .hero-winter--content {

    /*margin: 0 auto;*/
    /*width: min(100%, calc(var(--hero-content-width) - (var(--hero-content-padding-x) * 2)));*/
    /*height: 100%;*/
    /*padding: 95px 0 0;*/

    /*position: relative;*/
    max-width: 1160px;
    margin: 0 auto;
    padding: 100px 0 300px 0;

}

@media (min-width: 768px) {

    .hero-winter .hero-winter--content {
        /*padding: 112px 0 0;*/
        padding: 120px 0 0 0;
    }

}

@media (min-width: 1024px) {

    .hero-winter .hero-winter--content {
        /*padding: 112px 0 0;*/
        padding: 140px 0 0 0;
    }

}

@media (min-width: 1260px) {

    .hero-winter .hero-winter--content {
        padding: 140px 0 0 0;
    }

}

.hero-winter .hero-winter--title {


    /*font-size: 80px;*/
    /*line-height: 80px;*/
    /*letter-spacing: 0%;*/
    /*color: white;*/
    /*font-weight: 700;*/
    /*font-family: 'Bull', sans-serif;*/

    margin-block-start: 0;
    margin-block-end: 0;

    max-width: 1160px;
    margin: 0 auto 0 0;

    text-align: left;

    /*opacity: 0;*/
    /*animation: reveal-cl 1.5s forwards;*/
    /*animation-timing-function: var(--hero-animation-timing-function);*/

}

.hero-winter .hero-winter--title .hero-winter--title-main {

    display: block;
    font-size: 45px;
    line-height: 45px;
    color: white;
    font-weight: 700;
    font-family: 'Bull', sans-serif;

    margin-block-start: 0;
    margin-block-end: 0;

    opacity: 0;
    animation: reveal-cl 1.5s forwards;
    animation-timing-function: var(--hero-animation-timing-function);

}

.hero-winter .hero-winter--title .hero-winter--subtitle {

    display: block;
    font-weight: 400;
    font-size: 18px;
    line-height: 120%;

    color: white;
    font-family: 'Bull', sans-serif;

    margin-block-start: 0;
    margin-block-end: 0;

    opacity: 0;
    animation: reveal-cl 1.5s forwards;
    animation-timing-function: var(--hero-animation-timing-function);
    animation-delay: 0.5s;

}

@media (min-width: 640px) {

    .hero-winter .hero-winter--title .hero-winter--title-main {

        font-size: 60px;
        line-height: 60px;

    }

    .hero-winter .hero-winter--title .hero-winter--subtitle {

        font-size: 21px;

    }

}

@media (min-width: 1180px) {

    .hero-winter .hero-winter--title .hero-winter--title-main {

        font-size: 80px;
        line-height: 80px;

    }

    .hero-winter .hero-winter--title .hero-winter--subtitle {

        font-size: 28px;

    }

}

.hero-winter .hero-winter--logo-cover {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 40;
    pointer-events: none;
    display: none;
}

.hero-winter .hero-winter--logo-cover--bg {
    position: absolute;
    left: 0;
    top: 0;
    width: 702px;
    height: 126px;
    transform-origin: 0 0;
    transform: scale(0.8);
}

.hero-winter .hero-winter--logo-cover--bg svg {
    display: block;
    width: 100%;
    height: 100%;
}

.hero-winter .hero-winter--logo-cover--logo {
    width: 151px;
    /*height:*/
    position: absolute;
    left: 24px;
    top: 24px;
}

@media (min-width: 768px) {

    .hero-winter .hero-winter--logo-cover {
        display: block;
    }

}

@media (min-width: 1024px) {

    .hero-winter .hero-winter--logo-cover--bg {
        width: 702px;
        height: 126px;
        transform: scale(1);
    }

    .hero-winter .hero-winter--logo-cover--logo {
        width: 177px;
        left: 48px;

    }


}


.hero-winter .hero-winter--title {

    font-size: 32px;
    line-height: 32px;
    color: white;
    font-weight: 700;
    font-family: 'Bull', sans-serif;

    margin-block-start: 0;
    margin-block-end: 0;

    opacity: 0;
    animation: reveal-cl 1.5s forwards;
    animation-timing-function: var(--hero-animation-timing-function);

}

@media (min-width: 1180px) {

    .hero-winter .hero-winter--title {

        font-size: 70px;
        line-height: 70px;
        max-width: 630px;

    }

}

.hero-winter .hero-winter--boxes {

    --hero-box-size-factor: min(1px, calc((100vw - 40px) / 409.16));

    display: flex;
    gap: calc(25 * var(--hero-box-size-factor));
    /*margin-top: calc(31 * var(--hero-box-size-factor));*/
    margin-top: 31px;

}

.hero-winter .hero-winter--box {

    --hero-winter-box-base-width: 193.08;
    --hero-winter-box-base-height: 282.69;

    width: calc(var(--hero-winter-box-base-width) * var(--hero-box-size-factor));
    height: calc(var(--hero-winter-box-base-height) * var(--hero-box-size-factor));

    position: relative;

    opacity: 0;
    animation: reveal-bc 1.5s forwards;
    animation-delay: 0.35s;
    animation-timing-function: var(--hero-animation-timing-function);

}

.hero-winter .hero-winter--box.hero-winter--box--v2  {
    --hero-winter-box-base-width: 193.08;
    --hero-winter-box-base-height: 324.06;
}

.hero-winter .hero-winter--box .hero-winter--box--hover {
    transition: transform .4s;
    transition-timing-function: cubic-bezier(0.370, 0.010, 0.080, 0.995);
}

.hero-winter .hero-winter--box:hover .hero-winter--box--hover {
    transform: translateY(calc(-20 * var(--hero-box-size-factor)));
}

.hero-winter .hero-winter--box:hover .hero-winter--box--shaker {
    animation: jump-shaking 1s;
}

.hero-winter .hero-winter--box:hover .hero-winter--box--chevron {
    transform: rotate(720deg);
}

@media (min-width: 768px) {
    .hero-winter .hero-winter--box.hero-winter--box--v2:hover .hero-winter--box--cta {
        background-color: #001136;
    }
}

.hero-winter .hero-winter--box--bg {

    width: calc(var(--hero-winter-box-base-width) * var(--hero-box-size-factor));
    height: calc((var(--hero-winter-box-base-height)) * var(--hero-box-size-factor));

    /*overflow: hidden;*/
    position: absolute;
    /*top: calc(33 * var(--hero-box-size-factor));*/
    top: 0;
    left: 0;

}

.hero-winter .hero-winter--box.hero-winter--box--v2 .hero-winter--box--bg {
    width: calc(var(--hero-winter-box-base-width) * var(--hero-box-size-factor));
    height: calc((var(--hero-winter-box-base-height) - 64.42) * var(--hero-box-size-factor));
}

.hero-winter .hero-winter--box--bg svg {

    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;

    width: calc(var(--hero-winter-box-base-width) * var(--hero-box-size-factor));
    height: calc((var(--hero-winter-box-base-height) - 33) * var(--hero-box-size-factor));

}

.hero-winter .hero-winter--box.hero-winter--box--v2 .hero-winter--box--bg svg {
    width: calc(var(--hero-winter-box-base-width) * var(--hero-box-size-factor));
    height: calc((var(--hero-winter-box-base-height) - 64.42) * var(--hero-box-size-factor));
}

.hero-winter .hero-winter--box-right {

    animation-delay: 0.7s;

}

.hero-winter .hero-winter--box--esim {

    /*background-color: #ffffff;*/
    color: var(--hero-color-primary);
    border-radius: calc(12 * var(--hero-box-size-factor)) calc(12 * var(--hero-box-size-factor)) 0 0;
    font-size: calc(20 * var(--hero-box-size-factor));
    font-family: 'Bull', sans-serif;
    font-weight: 700;
    line-height: calc(30 * var(--hero-box-size-factor));
    text-align: center;
    padding-top: calc(3 * var(--hero-box-size-factor));
    /*width: calc(100% - 1px);*/

    position: relative;

}

.hero-winter .hero-winter--box--v2 .hero-winter--box--esim {
    padding-left: calc(18 * var(--hero-box-size-factor));
    padding-bottom: calc(3 * var(--hero-box-size-factor));
    font-size: calc(14 * var(--hero-box-size-factor));
    line-height: calc(37 * var(--hero-box-size-factor));
    text-align: left;
}

.hero-winter .hero-winter--box-left .hero-winter--box--esim {



}

.hero-winter .hero-winter--box-right .hero-winter--box--esim {

    /*background-color: var(--hero-color-primary);*/
    color: #ffffff;

}

.hero-winter .hero-winter--box-right .hero-winter--box--price {

    color: var(--hero-color-primary);

}

.hero-winter .hero-winter--box--content {

    color: #ffffff;
    font-size: calc(30 * var(--hero-box-size-factor));
    font-family: 'Bull', sans-serif;
    font-weight: 700;
    line-height: calc(30 * var(--hero-box-size-factor));
    text-align: left;

    padding-top: calc(17 * var(--hero-box-size-factor));
    padding-left: calc(18 * var(--hero-box-size-factor));
    padding-bottom: calc(12 * var(--hero-box-size-factor));
    height: calc((var(--hero-winter-box-base-height) - 33) * var(--hero-box-size-factor));

    position: relative;

    display: flex;
    flex-direction: column;

}

.hero-winter .hero-winter--box--v2 .hero-winter--box--content {
    height: calc((var(--hero-winter-box-base-height) - 109) * var(--hero-box-size-factor));
}

.hero-winter .hero-winter--box--content-space {

    flex-grow: 1;

}

.hero-winter .hero-winter--box--title {

    color: #ffffff;
    font-size: calc(30 * var(--hero-box-size-factor));
    font-family: 'Bull', sans-serif;
    font-weight: 700;
    line-height: calc(30 * var(--hero-box-size-factor));
    text-align: left;
    text-transform: uppercase;

}

.hero-winter .hero-winter--box--price {

    color: #ffffff;
    font-size: calc(50 * var(--hero-box-size-factor));
    font-family: 'Bull', sans-serif;
    font-weight: 700;
    line-height: calc(48 * var(--hero-box-size-factor));
    word-spacing: calc(-5 * var(--hero-box-size-factor));

    margin-top: calc(12 * var(--hero-box-size-factor));
}
.hero-winter .hero-winter--box--price--digit {

    font-size: calc(72 * var(--hero-box-size-factor));
}

.hero-winter .hero-winter--box--disclaimer {

    color: #ffffff;
    font-size: calc(14 * var(--hero-box-size-factor));
    font-family: 'Bull', sans-serif;
    font-weight: 400;
    line-height: calc(18 * var(--hero-box-size-factor));

    margin-top: calc(3 * var(--hero-box-size-factor));

}

.hero-winter .hero-winter--box--disclaimer strong {

    font-weight: 700;

}

.hero-winter .hero-winter--box--cta {

    color: #ffffff;
    font-size: calc(21.5 * var(--hero-box-size-factor));
    font-family: 'Bull', sans-serif;
    font-weight: 700;
    line-height: calc(30 * var(--hero-box-size-factor));
    text-align: left;
    text-transform: uppercase;

    /*margin-top: calc(26 * var(--hero-box-size-factor));*/

    flex-grow: 0;

}

.hero-winter .hero-winter--box--v2 .hero-winter--box--cta {
    margin-top: calc(26 * var(--hero-box-size-factor));
    line-height: calc(38 * var(--hero-box-size-factor));
    text-align: center;
    background-color: var(--hero-color-primary);
    border-radius: 9999px;
    font-size: calc(16.7 * var(--hero-box-size-factor));
    transition: background-color .3s ease;
}

.hero-winter .hero-winter--box--chevron {

    position: absolute;
    /*bottom: calc(16 * var(--hero-box-size-factor));*/
    /*right: calc(8 * var(--hero-box-size-factor));*/

    top: calc(250 * var(--hero-box-size-factor));
    left: calc(173 * var(--hero-box-size-factor));

    transform: rotate(0deg);
    transition: transform .7s;
    transition-timing-function: cubic-bezier(0.370, 0.010, 0.080, 0.995);
}

.hero-winter .hero-winter--box--v2 .hero-winter--box--chevron {
    position: static;
    margin-left: 5px;
}

.hero-winter .hero-winter--marketing-consent {

    color: #ffffff;
    font-family: 'Bull', sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 17px;

    width: min(384px, 100%);
    margin-top: 20px;

    display: flex;
    flex-direction: row;
    gap: 7px;
    align-items: center;
    justify-content: center;

    opacity: 0;
    animation: reveal-bc 1.5s forwards;
    animation-delay: 0.85s;
    animation-timing-function: var(--hero-animation-timing-function);

}

.hero-winter .hero-winter--marketing-consent--dot {

    height: 24px;
    width: 24px;
    text-align: center;
    line-height: 24px;
    vertical-align: middle;
    background-color: var(--hero-color-primary);
    border-radius: 9999px;

}

.hero-winter .hero-winter--marketing-consent--text {

    /*margin-top: 2px;*/

}

.hero-winter .hero-winter--marketing-consent strong {

    font-weight: 700;

}
