/*** STYLESHEET FOR PRODUCT 상세 PAGE ***/

/* PRODUCT INTRO */

.product-intro {
    width: 100%;
    height: 100vh;
}
.product-intro > .inner {
    height: 100%;
    position: relative;
}

.product-hero-wrap {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 2;
    transform: translateY(0px);
    pointer-events: none;
}
.product-hero-wrap img,
.ie-product-hero {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    object-fit: contain;
    max-width: 35vw;
    max-height: 75vh;
    z-index: 2;
}
.isIE11 .product-hero-wrap img {
    display: none;
}
.ie-product-hero {
    display: none;
    background-size: contain;
}
.isIE11 .ie-product-hero {
    display: block;
}
.single-line-mobile-wrap {
    display: none;
}
.product-intro .text-stack-set {
    position: absolute;
    top: 50%;
    left: 0%;
    transform: translate(0, -50%);
    width: 100%;
}
.product-intro .single-line {
    display: flex;
}
.product-intro .single-line-1 .line-text-wrap {
    margin-left: auto;
    /* margin-right: 0; */
    display: block;
}
.product-meta-wrap {
    position: absolute;
    left: 0;
    bottom: -45px;
    transform: translateY(100%);
    width: calc(var(--single-grid) * 2);
    z-index: 2;
}
.meta-title {
    display: block;
    margin-bottom: 10px;
}
.meta-cta-wrap {
    display: flex;
    align-items: center;
    margin-top: 25px;
}
.meta-cta-wrap a {
    transition: 0.3s opacity ease-in-out;
}
.meta-cta-wrap a:hover {
    opacity: 0.5 !important;
}
.meta-cta-wrap img {
    margin-right: 10px;
}

/* PRODUCT SECTION - HOW TO */

.section-product-howto {
    margin-top: 500px;
}

.howto-images {
    display: flex;
}
.howto-image {
    overflow: hidden;
}
.howto-image > img {
    width: 100%;
}
.howto-image-0 {
    width: calc(var(--single-grid) * 6);
    margin-left: calc(var(--side-gutter) * -1);
}
.isIE11 .howto-image-0 {
    width: 55%;
}
.howto-image-1 {
    width: calc(var(--single-grid) * 4);
    margin-left: var(--side-gutter);
    margin-top: 150px;
}
.isIE11 .howto-image-1 {
    width: 40%;
    margin-left: 5%;
}
.howto-signature-wrap {
    margin-top: 65px;
}
.single-signature {
    margin-bottom: 60px;
}
.signature-wrap {
    position: relative;
    margin-bottom: 10px;
}
.signature-wrap img {
    clip-path: inset(0 100% 0 0);
    transition: clip-path 0.8s cubic-bezier(0.65, 0, 0.35, 1);
}
.signature-wrap.show img {
    clip-path: inset(0 0 0 0);
}
.signature-wrap .line {
    position: absolute;
    width: 100%;
    height: 1px;
    bottom: 7px;
    left: 0;
    background-color: black;
    transform-origin: left;
}
.how-to-text {
    display: block;
}
.howto-image .tdb-set {
    margin-top: 73px;
}

/* PRODUCT SECTION - FEATURE */

.feature-wrap {
    display: flex;
    flex-direction: column;
    margin-top: 75px;
}
.single-feature {
    display: flex;
    margin-bottom: 55px;
}
.feature-title-wrap {
    display: flex;
    align-items: center;
    transform: translateX(-27px);
}
.feature-icon {
    position: relative;
    top: -3px;
    margin-right: 5px;
    overflow: hidden;
}
.feature-icon .icon-mask {
    position: absolute;
    width: 300%;
    height: 100%;
    background: linear-gradient(-45deg, rgba(255, 255, 255, 1) 30%, rgba(255, 255, 255, 0.01) 80%);
    top: 0;
    right: 0;
}
.feature-text-wrap {
    display: flex;
    flex-direction: column;
}

.wrap-product .section-rollingtext {
    margin-bottom: 60px;
}

.section-product-features .number-title {
    margin-bottom: 10px;
    display: block;
}

/* PRODUCT SECTION - RECOMMENDED */

.section-product-recommended .grid-item-title {
    margin-left: 0;
    margin-bottom: 30px;
}
.section-product-recommended .grid-item-product {
    width: calc(var(--single-grid) * 2);
    margin-right: calc(var(--single-grid) * 0.5);
    margin-bottom: 50px;
}
.section-product-recommended .grid-item-product:nth-child(4n + 4) {
    margin-right: 0 !important;
}
.isIE11 .section-product-recommended .grid-item-product {
    width: 18.75%;
    margin-right: 5%;
    /* margin-bottom: 50px; */
}
.isIE11 .section-product-recommended > .inner {
    justify-content: space-between;
}

/* PRODUCT SECTION - PRODUCT SPEC */
.section-product-specs {
    display: flex;
    flex-direction: column;
    margin-top: 180px;
    position: relative;
    padding-top: 20px;
    margin-bottom: 180px;
}
.section-product-specs .line {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: black;
}
.spec-subsection {
    margin-bottom: 30px;
    max-width: calc(var(--single-grid) * 7);
}
.spec-title {
    margin-bottom: 17px;
}
.spec-title span {
    display: block;
    padding: 20px 0 0px;
}

.spec-text span {
    word-break: break-all;
}
.spec-list li {
    display: flex;
}
.spec-list .label {
    min-width: 190px;
    /* min-width: calc(var(--single-grid) * 1.2); */
    margin-right: 20px;
}

@media screen and (max-width: 1780px) {
    .product-intro .single-line {
        height: 130px;
    }
    .product-intro .single-line .line-text-wrap {
        font-size: 130px;
    }
}

@media screen and (max-width: 1600px) {
    .product-hero-wrap img {
        max-width: 40vw;
        max-height: 70vh;
    }
}

@media screen and (max-width: 1480px) {
    .product-intro .single-line .line-text-wrap {
        font-size: 120px;
    }
    .product-intro .single-line {
        height: 120px;
    }
}

@media screen and (max-width: 1280px) {
    .product-intro .single-line .line-text-wrap {
        font-size: 100px;
    }
    .product-intro .single-line {
        height: 100px;
    }
    .product-hero-wrap img {
        max-width: 45vw;
    }
}
@media screen and (max-width: 1080px) {
    .product-intro .single-line .line-text-wrap {
        font-size: 80px;
    }
    .product-intro .single-line {
        height: 9vw;
    }
    .product-hero-wrap img {
        max-width: 55vw;
    }

    .product-intro .single-line-1 .line-text-wrap {
        margin-left: 0;
    }
    .product-meta-wrap {
        width: calc(var(--single-grid) * 4);
    }
    .product-intro .single-line .line-text-wrap {
        font-size: 9vw;
    }

    .section-product-recommended .grid-item-product {
        width: calc(var(--single-grid) * 4);
        margin-right: 0;
    }

    .spec-subsection {
        max-width: 100%;
    }
}

@media screen and (max-width: 768px) {
    .single-line .line-underline {
        opacity: 0.15;
    }

    .product-hero-wrap img {
        max-width: 75vw;
        max-height: 80vh;
    }
}

@media screen and (max-width: 570px) {
    .product-intro .single-line .line-text-wrap {
        font-size: 50px;
    }
    .feature-title-wrap {
        transform: none;
    }
    .feature-icon {
        display: none;
    }
    .tdb-title {
        margin-bottom: 25px;
        line-height: 0.95;
    }
    .feature-title {
        margin-bottom: 13px;
        font-weight: 700;
    }

    .single-line-desktop-wrap {
        display: none;
    }
    .single-line-mobile-wrap {
        display: block;
        /* padding-top: 100vh; */
        /* padding-bottom: 100px; */
        /* transform: translateY(calc(-50%)); */
    }

    .product-intro {
        height: 105vh;
    }

    .product-intro .single-line {
        height: 52px;
    }
    .product-intro .text-stack-set {
        /* position: relative; */
        /* top: auto; */
        /* left: auto; */
        /* transform: none; */
        /* padding-top: 50vh; */
        /* transform: translateY(-50%); */
    }
    .product-hero-wrap {
        position: absolute;
        top: 50vh;
        left: 50%;
        transform: translate(-50%, -50%);
    }
    .product-meta-wrap {
        width: 100%;
        /* bottom: auto; */
        /* top: 100vh; */
        /* transform: translateY(0%); */
    }

    .section-product-howto {
        margin-top: 140px;
    }
    .howto-images {
        display: flex;
        flex-direction: column;
    }
    .howto-image {
        width: calc(var(--single-grid) * 10 + var(--side-gutter));
        transform: none !important;
    }
    .howto-image-1 {
        margin-top: 40px;
        margin-left: 0;
    }

    .signature-wrap {
        margin-bottom: 15px;
    }

    .wrap-product .product-grid-only-wrap {
        margin-top: 0;
    }

    .grid-item-product {
        width: 100% !important;
    }
    .section-product-recommended .grid-item-product {
        margin-bottom: 30px;
    }

    .section-product-specs {
        padding-top: 18px;
        margin-bottom: 80px;
    }
    .spec-title span {
        padding-top: 0;
    }
    .spec-list li {
        flex-direction: column;
        margin-bottom: 8px;
    }
    .spec-list .label {
        font-weight: 500;
    }
}
