#section-specifics
{
    --box-width: 1125px;
    --box-distance: 20px;
    --initial-padding: calc(325px + 50lvh + 100px);
    --grid-composition-height: 400px;
    --backlight-height: 400px;
    --pool-height: 300px;
    --pool-video-height: calc(var(--box-width) * 358 / 774 + 1px);
    --custom-depth-height: 550px;
    --first-column-width: 740px;
    --second-column-width: calc(var(--box-width) - var(--first-column-width) - var(--box-distance));
    --box-border-radius: 30px;
    --central-column-height: calc(var(--custom-depth-height) + var(--pool-height) + var(--box-distance) + 1px);
    --pool-render-width: 1480px;
    --pool-render-height: 900px;
    --specifics-height: calc(
        var(--backlight-height) + var(--grid-composition-height) + var(--pool-height) +
        var(--custom-depth-height) + var(--box-distance) * 3
    );
}

@media screen and (max-width: 1150px)
{
    #section-specifics
    {
        --box-width: 90vw;
        --box-distance: 20px;
        --initial-padding: calc(330px + 50lvh + 100px);
        --grid-composition-height: 300px;
        --backlight-height: 300px;
        --custom-depth-height: 400px;
        --first-column-width: 45vw;
        --second-column-width: calc(var(--box-width) - var(--first-column-width) - var(--box-distance));
        --box-border-radius: 30px;
        --central-column-height: var(--custom-depth-height);
        --pool-render-width: 1280px;
        --pool-render-height: 720px;
        --pool-height: var(--pool-video-height);
        --specifics-height: calc(
            var(--backlight-height) + var(--grid-composition-height) + var(--pool-video-height) +
            var(--custom-depth-height) + var(--box-distance) * 3
        );
    }
}

.specifics
{
    position: fixed;
    display: flex;
    flex-direction: column;
    align-items: center;
    height: calc(var(--specifics-height + var(--initial-padding) + 50lvh));
    width: 100vw;
    transform-origin:
        calc(50vw - var(--box-width) / 2 + 220px)
        calc(
            var(--initial-padding) + var(--custom-depth-height) + var(--pool-height) - 100px + var(--grid-composition-height) +
            var(--backlight-height) + var(--box-distance) * 2
        );
    transform: perspective(245px) translate3d(0px, 0px, 0px) rotateY(0deg);
    /* padding-top: var(--initial-padding); */
    padding-bottom: 100lvh;
    padding-right: 200vw;
    z-index: 2;
}

.specifics .specifics-top
{
    height: var(--initial-padding);
    width: 100%;
}
.specifics .specifics-bottom
{
    margin-top: -1px;
    height: 50lvh;
    width: 100%;
}
.specifics .specifics-center
{
    width: 100%;
    display: flex;
    flex-direction: row;
}

.specifics .central-column
{
    display: flex;
    flex-direction: column;
    align-items: center;
    width: var(--box-width);
}


.specifics .left-column, .specifics .right-column
{
    width: 50vw;
    height: calc(var(--specifics-height) + 1px);
}

.specifics .left-column
{
    margin-left: calc(- var(--box-width) / 2);
}

.specifics .box
{
    background-color: #000;
    border-radius: var(--box-border-radius);
    overflow: hidden;
    color: white;
    box-sizing: border-box;
    opacity: 0;
    position: relative;
    width: 100%;
}

.specifics .central-column > div
{
    width: var(--box-width);
    margin-top: -1px;
}

.specifics .central-column > div:nth-of-type(3)
{
    height: var(--central-column-height);
}

.specifics .wrapper
{
    width: 100%;
}

.specifics .wrapper-custom-depth
{
    padding-bottom: var(--box-distance);
}


.specifics .special
{
    color: #BFD684;
}

.specifics .column
{
    height: 100%;
}
.specifics .column:nth-of-type(1)
{
    width: var(--first-column-width);
}
.specifics .column:nth-of-type(2)
{
    width: calc(var(--second-column-width) + var(--box-distance));
    padding-left: var(--box-distance);
}

.grid-composition, .backlight
{
    background-position: top left;
    background-size: cover;
    margin-bottom: var(--box-distance);
}

.grid-composition
{
    height: calc(var(--grid-composition-height) + 1px);
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    padding-bottom: 30px;
    padding-right: 50px;
}
.backlight
{
    height: calc(var(--backlight-height) + 1px);
    display: flex;
    align-items: center;
    padding-left: 150px;
}

.custom-depth img
{
    position: absolute;
    top: 0;
    left: 65%;
    width: auto;
    height: 100%;
    /* margin-left: calc(50% - 25px); */
    transform: translateX(-50%) scaleX(-1);
}

.flexy-technology img
{
    margin-left: 50%;
    transform: translateX(-50%);
    height: 95%;
    width: auto;
    margin-top: 60px;
}

.custom-depth
{
    /* margin-bottom: var(--box-distance); */
    height: calc(var(--custom-depth-height) + 1px);
    width: 100%;
    padding-top: 30px;
    padding-left: 50px;
}
.specifics.desktop .custom-depth .measures span:nth-of-type(1)
{
    top: 245px;
    left: 175px;
}
.specifics.desktop .custom-depth .measures span:nth-of-type(2)
{
    top: 350px;
    left: 175px;
}
.specifics.desktop .custom-depth .measures hr:nth-of-type(1)
{
    position: absolute;
    top: 228px;
    left: 233px;
    height: 2px;
    background: white;
    border: none;
    width: 94px;
}
.specifics.desktop .custom-depth .measures hr:nth-of-type(2)
{
    position: absolute;
    top: 332px;
    left: 233px;
    height: 2px;
    background: white;
    border: none;
    width: 163px;
}


.specifics .water-resistant
{
    width: 100%;
    height: calc(var(--pool-height) + 1px);
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: transparent !important;
    opacity: 1;
    border-radius: unset;
}
.specifics .water-resistant .border
{
    height: var(--box-border-radius);
    width: var(--box-border-radius);
    position: absolute;
}
.specifics .water-resistant .border:nth-of-type(1)
{
    top: -1px;
    left: -1px;
}
.specifics .water-resistant .border:nth-of-type(2)
{
    top: -1px;
    right: -1px;
    transform: rotate(90deg);
}
.specifics .water-resistant .border:nth-of-type(3)
{
    bottom: -1px;
    left: -1px;
    transform: rotate(-90deg);
}
.specifics .water-resistant .border:nth-of-type(4)
{
    bottom: -1px;
    right: -1px;
    transform: rotate(180deg);
}

.flexy-technology
{
    width: 100%;
    height: 100%; 
    padding-top: 30px;
    padding-left: 0;
    text-align: center;
}

.water-resistant-outside-container
{
    height: var(--pool-height);
    width: var(--first-column-width);
    align-items: center;
    justify-content: center;
    background-color: transparent !important;
    position: fixed;
    left: calc(50vw - var(--box-width) / 2);
    margin-top: calc(var(--initial-padding) + var(--custom-depth-height) + var(--box-distance) * 3 + var(--backlight-height) + var(--grid-composition-height));
    top: 0;
    z-index: 3;
}

.pool-fill
{
    position: absolute;
    filter: brightness(0.7);
}
.pool-fill
{
    width: var(--first-column-width);
    height: var(--pool-height);
    width: 100%;
    height: auto;
    z-index: -1;
    background-image: url("/assets/renders/full/POOL_FILL/crop/0.jpg");
    background-position: center center;
    background-size: contain;
}
#pool-render
{
    position: absolute;
    left: 50vw;
    top: 50lvh;
    transform: translate(-50%, -50%);
    margin-left: -19.2688px;
    margin-top: calc((100lvh - 927px) / 2 + 250px);
    z-index: -1;
}

.pool-fill,
#animated-pool {
    transform: scale(-1.06, 1.06) translateY(4px);
}
#animated-pool {
    /* width: 100vw;
    height: 100lvh; */
    position: absolute;
    top: 0;
    opacity: 0;
}

#section-specifics
{
    top: 0;
    left: 0;
    color: white;
    display: none;
    overflow: hidden;
}
#section-specifics #swimming-pool
{
    top: 0;
    left: 0;
}
#section-specifics .special
{
    color: transparent;
    -webkit-text-stroke: 2px white;
}
#section-specifics .text p:nth-child(2)
{
    margin-top: 15px;
}

#section-specifics .full-screen-text {
    z-index: 2;
}

.sht-080 {
    width: 290px;
    height: 550px;
    left: 40%;
}
.sht-081 {
    width: 306px;
    height: 850px;
    left: 50%;
    transform: translateX(-50%);
}
.sht-082 {    
    width: 821px;
    height: 462px;
    top: -31px;
    left: -110px;
}
.sht-083 {
    width: 768px;
    height: 400px;
    left: 300px;
}

.specifics.mobile .custom-depth video {
    left: 50%;
    transform: translateY(40px) translateX(-50%);
}
.specifics.mobile .measures {
    display: flex;
    position: absolute;
    z-index: 1;
    top: 80px;
    left: 45%;
    gap: 15px;
    transform: translateX(-50%);
}
.specifics.mobile .measures > div:nth-child(2) {
    margin-top: 25px;
}
.specifics.mobile .measures hr {
    width: 0.5px;
    height: 60px;
    background-color: white;
    margin: 0 0 0 5px;
}
.specifics.mobile .measures > div:nth-child(2) hr {
    height: 100px;
}

@media screen and (max-width: 1150px)
{
    .backlight, .grid-composition, .custom-depth, .flexy-technology
    {
        padding: 30px 0 0 30px;
        opacity: 1;
    }
    .grid-composition {
        padding: 30px;
    }
    .backlight {
        align-items: start;
        justify-content: start;
    }
    .flexy-technology {
        text-align: left;
    }
    .custom-depth {
        margin-top: -1px;
    }

    .sht-080 {
        width: auto;
        height: 100%;
        left: 0;
        transform: translateY(40px);
    }
    .sht-081 {
        width: 100%;
        height: 100%;
        left: 0;
        transform: translateY(100px);
    }
    .sht-082 {
        width: 100%;
        height: 100%;
        left: 0;
    }
    .sht-083 {
        width: auto;
        height: 100%;
        object-fit: contain;
        right: 0;
        top: auto;
        bottom: 0;
        left: auto;
    }

    .specifics .central-column > div:nth-of-type(3) {
        height: calc(var(--central-column-height) + var(--box-distance));
    }
    .specifics .column {
        height: var(--central-column-height);
        padding-bottom: var(--box-distance);
    }

    .specifics .water-resistant {
        width: var(--box-width);
    }

    .specifics .left-column,
    .specifics .right-column {
        height: auto;
    }
    
    #section-specifics .full-screen-text {
        width: 90%;
    }
    #section-specifics .text p:nth-child(2) {
        margin-top: 35px;
    }

    #pool-end {
        width: 100vw;
        height: 100lvh;
        position: fixed;
        transform: translateY(100lvh);
        left: 0;
        object-fit: cover;
    }

    .text-water-proof {
        opacity: 1;
        transform: translate(-50%, -50%) translateY(100lvh);
    }
}

@media screen and (max-width: 750px)
{
    .backlight, .grid-composition, .custom-depth, .flexy-technology
    {
        padding: 15px 0 0 15px;
        font-size: 27px;
    }
    .grid-composition {
        padding: 15px;
    }
    .water-resistant .text
    {
        font-size: 45px;
    }

    .text-water-proof p:nth-child(2){
        font-size: 25px;
    }
}