.background-container {
    display: flex;
    flex-direction: column;
    width: 100%;
    background: #C3D0EE;
    position: relative;
    padding-top: 20px;
    align-items: center;
    overflow:hidden;
    z-index:2;
}

.phones-title {
    width: 50%;
    margin-top: 3%;
    font-family: 'Poppins', sans-serif;
    font-size: 3.5vw;
    font-weight: 400;
    line-height: 1.3; 
    text-align: center;
    color: #1E4EBB;
}

.phones-subtitle {
    width: 25%;
    margin: 12px auto; 
    font-family: 'Poppins', sans-serif;
    font-size: 1.3vw; 
    font-weight: 400;
    line-height: 1.2; 
    text-align: center;
    color: #1E4EBB;
    padding-bottom: 9%;
}

.rounded-bottom-section {
    position: relative;
    width: 100%;
    height: 150px; 
    overflow: hidden;
    background: var(--c-240, #C3D0EE);
    z-index: 1; 
    margin-bottom: 62px; 
    border-bottom-left-radius: 50%;
    border-bottom-right-radius: 50%;
}

.rounded-bottom-section::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    height: 200px; 
    background: var(--c-240, #C3D0EE);
    border-radius: 0 0 50% 50%; 
    z-index: -1; 
}

.square-element {
    width: 58%;
    height: auto;
    aspect-ratio: 1029 / 250;
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px;
    position: relative; 
    overflow: visible;
    background: var(--c-160, #FED07A);
}

.square-element-2 {
    background: var(--c-360, #FFAE8B);
    margin-top: 20vw;
}

.square-element-3 {
    background: var(--c-460, #68C7BC);
    margin-top: 20vw; 
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px;
    position: relative;
    border-radius: 20px;
    overflow: visible;
}

.square-element-4 {
    background: var(--C-2, #698AD4);
    margin-top: 20vw;
    margin-bottom: 15vw;
}

.square-element .phone-text,
.square-element-2 .phone-text,
.square-element-3 .phone-text,
.square-element-4 .phone-text {
    flex: 1;
    z-index: 1;
    font-family: 'Poppins', sans-serif;
    font-size: 1.3vw;
    font-weight: 400;
    line-height: 1.2;
    text-align: left;
    padding-left: 3vw;
    color: black;
}

.square-element .phone-image,
.square-element-2 .phone-image,
.square-element-4 .phone-image {
    flex: 1;
    position: absolute; 
    right: 45px; 
    z-index: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%; 
}

.square-element-3 .phone-image {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding: 0 15px;
}

.square-element .phone-image img,
.square-element-2 .phone-image img,
.square-element-3 .phone-image img,
.square-element-4 .phone-image img {
    width: auto;
    height: 30vw; 
    max-height: 250%;
}

.square-element .phone-text,
.square-element-3 .phone-text {
    margin-right: 25vw;
}

.square-element-2 .phone-text,
.square-element-4 .phone-text {
    text-align: left;
    padding-left: 1vw;
    margin-left: 20vw;
    margin-right: 5vw;
}

.square-element-2 .phone-image,
.square-element-4 .phone-image {
    right: auto;
    left: 45px; 
}

.phone-shape-1 {
    position: absolute;
    top: 0.5%;
    right: 10.5%;
    transform: translateX(-50%);
    width: 8%;
    height: auto;
}

.phone-shape-1 img {
    width: 100%;
    height: auto;
    border-radius: inherit;
}

.phone-shape-2 {
    position: absolute;
    top: 6.5%;
    left: 20.6vw;
    width: 6.4%;
    height: auto;
}

.phone-shape-2 img {
    width: 100%;
    height: auto;
    border-radius: inherit;
}

.phone-shape-3 {
    position: absolute;
    top: 8.2%;
    right: 11%;
    transform: translateX(-50%);
    width: 6%;
    height: auto;
}

.phone-shape-3 img {
    width: 100%;
    height: auto;
    border-radius: inherit;
}

.phone-shape-4 {
    position: absolute;
    top: 128%;
    left: -12%;
    width: 17%;
    height: auto;
}

.phone-shape-4 img {
    width: 100%;
    height: auto;
    border-radius: inherit; 
}

.phone-shape-5 {
    position: absolute;
    top: 65%;
    right: -14.5%;
    transform: translateX(-50%);
    width: 13%;
    height: auto;
}

.phone-shape-5 img {
    width: 100%;
    height: auto;
    border-radius: inherit;
}

.phone-shape-6 {
    position: absolute;
    top: 141%;
    left: 0.2%;
    transform: translateX(-50%);
    width: 11%;
    height: auto;
}

.phone-shape-6 img {
    width: 65%;
    height: auto;
    border-radius: inherit; 
}

.phone-shape-7 {
    position: absolute;
    top: 160%;
    right: -5%;
    width: 20%;
    height: auto;
}

.phone-shape-7 img {
    width: 100%;
    height: auto;
    border-radius: inherit;
}

.phone-shape-8 {
    position: absolute;
    top: 133%;
    left: 29%;
    width: 14.5%;
    height: auto;
}

.phone-shape-8 img {
    width: 100%;
    height: auto;
    border-radius: inherit; 
}

@media only screen and (max-width: 770px) {
    p {
        margin: 0;
        padding: 10px 20px;
    }

    .phones-title {
        font-size: 8vw;
        line-height: 1;
        width: 75%;
        margin-top: 10%;
    }

    .phones-subtitle {
        font-size: 4vw;
        width: 75%;
        padding-bottom: 2rem;
    }

    .background-container {
        flex-direction: column;
        justify-content: space-between;
        align-items: center;
        overflow:hidden;
        gap: 0;
    }


    .square-element,
    .square-element-2,
    .square-element-3,
    .square-element-4 {
        flex-direction: column;
        justify-content: space-between;
        align-items: center;
        position: relative;
        padding-bottom: 15rem;
        margin-top: 0;
        margin-bottom: 40rem
    }

        .square-element .phone-text,
        .square-element-2 .phone-text,
        .square-element-3 .phone-text,
        .square-element-4 .phone-text {
            text-align: center;
            font-size: 3vw;
            line-height: 1.5;
            order: 1;
            padding-left: 0;
            margin-right: 0;
            width: 100%;
            z-index: 2
        }
        .square-element .phone-image,
        .square-element-2 .phone-image,
        .square-element-3 .phone-image,
        .square-element-4 .phone-image {
            position: absolute;
            width: 100%;
            display: flex;
            align-items: flex-end; 
            justify-content: center;
            order: 2;
            margin-top: 0;
            padding: 0;
            z-index: 1;
        }
            .square-element .phone-image img,
            .square-element-2 .phone-image img,
            .square-element-3 .phone-image img,
            .square-element-4 .phone-image img {
                width: 45vw;
                align-items: center;
                height: auto;
                margin-top: 0;
                max-height: none;
                object-fit: cover;
                transform: translateY(70%);
            }
    .square-element-2 .phone-image,
    .square-element-4 .phone-image {
        right: 0;
        left: 0px;
    }
    .square-element .phone-image,
    .square-element-3 .phone-image {
        right: 0;
        left: 0px;
    }
    .phone-shape-1,
    .phone-shape-2,
    .phone-shape-3,
    .phone-shape-4,
    .phone-shape-5,
    .phone-shape-6,
    .phone-shape-7 {
        width: 20%;
        height: auto;
        transform: translateX(0);
    }
    .phone-shape-1{
        display:none;
    }
    .phone-shape-2{
        display: none;
    }
    .phone-shape-3{
        overflow: hidden;
        right: -18%;
        width: 32vw;
        top: 0;
        z-index: 2;
    }
    .phone-shape-4{
        transform: rotate(-90deg);
        left: -45%;
        top: -28%;
        width: 50%;
    }
    .phone-shape-5 {
        right: -50%;
        overflow: hidden;
        top: -50%;
        width: 50%;
    }
    .phone-shape-6 {
        display: none;
    }
    .phone-shape-7 {
        position: absolute;
        width: 45%;
        left: -43%;
        top: -45%;
        transform: rotate(-90deg);
        overflow: hidden;
    }
    .phone-shape-8 {
        top: -52%;
        right: -50%;
        left: auto;
        width: 52%;
    }
    .freedom-text-title {
        padding: 20px 15px !important;
        font-size: 3.25vw;
    }
    .square-element-2 .phone-text, .square-element-4 .phone-text {
        margin-left: 0vw;
    }
}

@media only screen and (max-width: 450px) {
    
    p {
        margin: 0;
        padding: 10px 20px; 
    }

    .phones-title {
        font-size: 8vw;
        line-height: 1;
        width: 75%;
        margin-top: 10%;
    }

    .phones-subtitle {
        font-size: 4vw;
        width: 75%;
        padding-bottom: 2rem;
    }

    .background-container {
        flex-direction: column;
        justify-content: space-between;
        align-items: center;
        overflow:hidden;
        gap: 0;
    }

    .square-element,
    .square-element-2,
    .square-element-3,
    .square-element-4 {
        flex-direction: column;
        justify-content: space-between;
        align-items: center;
        position: relative;
        padding-bottom: 11.5rem;
        margin-top: 0;
        margin-bottom: 16rem
    }

        .square-element .phone-text,
        .square-element-2 .phone-text,
        .square-element-3 .phone-text,
        .square-element-4 .phone-text {
            text-align: center;
            font-size: 3vw;
            line-height: 1.5;
            order: 1;
            padding-left: 0;
            margin-right: 0;
            width: 100%;
            z-index: 2
        }
        .square-element .phone-image,
        .square-element-2 .phone-image,
        .square-element-3 .phone-image,
        .square-element-4 .phone-image {
            position: absolute;
            width: 100%;
            display: flex;
            align-items: flex-end; 
            justify-content: center;
            order: 2;
            margin-top: 0;
            padding: 0;
            z-index: 1;
        }
            .square-element .phone-image img,
            .square-element-2 .phone-image img,
            .square-element-3 .phone-image img,
            .square-element-4 .phone-image img {
                width: 45vw;
                align-items: center;
                height: auto;
                margin-top: 0;
                max-height: none;
                object-fit: cover;
                transform: translateY(50%);
            }
    .square-element-2 .phone-image,
    .square-element-4 .phone-image {
        right: 0;
        left: 0px;
    }
    .square-element .phone-image,
    .square-element-3 .phone-image {
        right: 0;
        left: 0px;
    }
    .phone-shape-1,
    .phone-shape-2,
    .phone-shape-3,
    .phone-shape-4,
    .phone-shape-5,
    .phone-shape-6,
    .phone-shape-7 {
        width: 20%;
        height: auto;
        transform: translateX(0);
    }
    .phone-shape-1{
        display:none;
    }
    .phone-shape-2{
        display: none;
    }
    .phone-shape-3{
        overflow: hidden;
        right: -18%;
        width: 32vw;
        top: 0;
        z-index: 2;
    }
    .phone-shape-4{
        transform: rotate(-90deg);
        left: -40%;
        top: -28%;
        width: 50%;
    }
    .phone-shape-5 {
        right: -47%;
        overflow: hidden;
        top: -50%;
        width: 50%;
    }
    .phone-shape-6 {
        display: none;
    }
    .phone-shape-7 {
        position: absolute;
        width: 45%;
        left: -38%;
        top: -45%;
        transform: rotate(-90deg);
        overflow: hidden;
    }
    .phone-shape-8 {
        top: -52%;
        right: -48%;
        left: auto;
        width: 52%;
    }
    .freedom-text-title {
        padding-bottom: 2vw;
        font-size: 3.25vw;
    }
    .square-element-2 .phone-text, .square-element-4 .phone-text {
        margin-left: 0vw;
    }
}
