
.o-hp-section-1 {
    background: #fff;
}
@media (min-width: 1024px) {
    .o-hp-section-1__wrapper {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}
.o-hp-section-1__left {
    position: relative;
    padding-top: 100%;
}
@media (min-width: 1024px) {
    .o-hp-section-1__left {
        width: 50%;
        padding-top: 0;
        max-width: 808px;
    }
}

@media (min-width: 1700px) {
    .o-hp-section-1__left {
        width: 808px;
        -ms-flex-negative: 0;
        flex-shrink: 0;
    }
}
.o-hp-section-1__left img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -webkit-transition: 0.15s ease-in-out;
    transition: 0.15s ease-in-out;
}
.o-hp-section-1__right {
    padding: 25px;
}
@media (min-width: 1024px) {
    .o-hp-section-1__right {
        width: 50%;
    }
}
@media (min-width: 1700px) {
    .o-hp-section-1__right {
        width: 100%;
        padding:4rem;
    }
}
.o-hp-section-1__title {
    margin-bottom: 0.625rem;
}
@media (min-width: 1024px) {
    .o-hp-section-1__title {
        margin-bottom: 1.8125rem;
    }
}
.o-hp-section-1__description {
    margin-bottom: 1.875rem;
}
@media (min-width: 1024px) {
    .o-hp-section-1__description {
        margin-bottom: 3.75rem;
    }
}
.o-hp-section-1__box {
    padding: 30px;
    background-color: #fed67b;
}
@media (min-width: 1024px) {
    .o-hp-section-1__box {
        padding: 2.5rem 3.125rem 3.125rem;
    }
}
.o-hp-section-1__box-title {
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 1.33;
    margin-bottom: 1.25rem;
}
.div1,
.div2 {
    height: 100vh;
}
.div1 {
    background-color: pink;
}
.square {
    width: 150px;
    height: 20vh;
    background-color: #f0f;
}
.o-hp-section-2 {
    background: #1e1e1e;
    position: relative;
    padding-top: 3.25rem;
    padding-bottom: 2.5rem;
    overflow: hidden;
}
@media (min-width: 1024px) {
    .o-hp-section-2 {
        padding-bottom: 2.75rem;
    }
}
.o-hp-section-2__logo-bg {
    width: 150%;
    padding: 25px;
    z-index: 0;
    -webkit-filter: brightness(1.5);
    filter: brightness(1.5);
}
.o-hp-section-2__image-wrapper {
    top: 350px !important;
    right: 250px !important;
    left: auto !important;
    position: absolute !important;
}
.o-hp-section-2__image-wrapper,
.o-hp-section-2__image-wrapper .js-image-wrapper {
    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;
}
.o-hp-section-2__image-wrapper .js-image-wrapper {
    position: absolute;
    z-index: 1;
    width: 100%;
}
.o-hp-section-2__image-wrapper .js-image-wrapper--after .curtain {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    background: transparent;
}
.o-hp-section-2__image-wrapper .js-image-wrapper .js-image {
    width: 350px;
    height: 100%;
    z-index: 1;
    position: relative;
}

@media (min-width: 768px) {
    .o-hp-section-2__image-wrapper .js-image-wrapper .js-image {
        width: 530px;
    }

    .o-hp-section-2__image-wrapper {
        right: 150px !important;
    }
}
@media (min-width: 1367px) {
    .o-hp-section-2__image-wrapper .js-image-wrapper .js-image {
        width: 730px;
    }

    .o-hp-section-2__image-wrapper {
        right: 250px !important;
    }
}
.o-hp-section-2__image-wrapper .js-image-wrapper .js-image.after {
    opacity: 0;
}
@media (min-width: 1024px) {
    .o-hp-section-2__wrapper {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
}
@media (max-width: 1025px) {
    .o-hp-section-2__image-wrapper {
        top: 0 !important;
        right: 0 !important;
    }

    .o-hp-section-2__wrapper .pin-spacer {
        position: relative !important;
        left: 50% !important;
        height: auto !important;
        padding: 0 !important;
        min-height: 200px;
        margin-top: 200px !important;
    }
}
.o-hp-section-2__content {
    color: #fff;
    padding: 25px 0;
}
@media (min-width: 1024px) {
    .o-hp-section-2__content {
        width: 50%;
    }
}
.o-hp-section-2 .shoe {
    position: relative;
    padding: 20px;
}
.o-hp-section-2 .piece:not(.outsole) {
    position: absolute;
    bottom: 7vw;
}
.o-hp-section-2 .midsole {
    width: 89%;
    left: 5%;
}
.o-hp-section-2 .heel {
    width: 41.8013857%;
    left: 6%;
}
.o-hp-section-2 .outsole {
    width: 100%;
    position: relative;
}
.o-hp-section-2 h1,
.o-hp-section-2 h2,
.o-hp-section-2 li,
.o-hp-section-2 p {
    max-width: none;
}
.o-hp-section-3 {
    background: #ececec;
}
.o-hp-section-3__top-wrapper {
    padding: 1.875rem 0 1.875rem 25px;
}
@media (min-width: 1500px) {
    .o-hp-section-3__top-wrapper {
        padding: 4rem;
    }
}
.o-hp-section-3__top-wrapper h2 {
    margin-bottom: 0.625rem;
    max-width: 780px;
}
@media (min-width: 1024px) {
    .o-hp-section-3__top-wrapper h2 {
        margin-bottom: 1.875rem;
    }
}
.o-hp-section-3__top-wrapper p {
    margin-bottom: 1.125rem;
}
@media (min-width: 768px) {
    .o-hp-section-3__products-wrapper {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-align: stretch;
        -ms-flex-align: stretch;
        align-items: stretch;
        margin: 0 -4px;
    }
}
.o-hp-section-3__related {
    padding-top: 1.875rem;
}
@media (min-width: 768px) {
    .o-hp-section-3__related {
        padding-top: 3.75rem;
    }
}
@media (min-width: 1024px) {
    .o-hp-section-3__related {
        padding-top: 6.25rem;
    }
}
@media (min-width: 1500px) {
    .o-hp-section-3__related {
        padding-top: 9.25rem;
    }
}
.o-hp-section-3__bottom-wrapper {
    padding-top: 1.6875rem;
    padding-bottom: 1.5625rem;
    position: relative;
}
@media (min-width: 1024px) {
    .o-hp-section-3__bottom-wrapper {
        padding-top: 4rem;
        padding-bottom: 4rem;
    }
}
.o-hp-section-3__bottom-wrapper h2 {
    margin-bottom: 1.25rem;
}
.o-hp-section-3__bottom-wrapper .a-description {
    padding-bottom: 0;
}

.o-hp-section-3__description-wrapper {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
    gap: 30px;
    margin-top: 2rem;
}

@media (min-width: 1024px) {
    .o-hp-section-3__description-wrapper {
        flex-direction: row;
        align-items: flex-start;
        justify-content: space-between;
    }
}

.o-hp-section-3__bottom-wrapper .a-button:after {
    border-bottom: 15px solid #ececec;
}