.tab {
    cursor: pointer;
    padding: 10px;
    position: relative;
    /* Needed for the arrow positioning */
}

.tab.active::after {
    content: '';
    position: absolute;
    right: 65rem;
    width: 16px;
    height: 16px;
    /* background-image: url('{{ asset(' assets/frontend/images/polygon.png') }}'); */
    background-image: url('/images/polygon.png');
    /* Corrected path */
    background-size: contain;
    background-repeat: no-repeat;
}

.tab {
    position: static;
    padding: 10px;
    margin: 0 10px 10px 0;
    background-color: #F2F2F2;
    display: flex;
    flex-direction: row;
    justify-content: start;
    place-items: center;
    gap: 10px;
    width: 314.48px;
    height: 76.5px;
    cursor: pointer;
}

.tab.active {
    background-color: #FFC72C;
}

/* .tabs .tab.active::after {
    content: '';
    display: block;
    width: 20px;
    height: 20px;
    background-image: url('/images/Polygon 1.png');
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    left: 30.5%;
} */


.tab-label {
    font-family: Barlow;
    font-size: 19.12px;
    font-weight: 600;
    line-height: 22.95px;
    text-align: left;
    color: #051928;
}

.content {
    width: 100%;
    margin: 0 auto;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    place-items: center;
    gap: 15px;
}

.content-panel {
    display: none;
    margin: 0 50px;
}

.content-panel.active {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    place-items: flex-start;
    text-align: left;
    gap: 15px;
}

.content-panel p {
    width: 100%;
    height: 100%;
    margin-top: 10px;
    font-family: Barlow;
    font-size: 18.06px;
    font-weight: 400;
    line-height: 21.67px;
    text-align: left;
    color: #646464;
}

.content-panel h1 {
    font-family: Barlow;
    font-size: 38px;
    font-weight: 700;
    line-height: 45.6px;
    text-align: left;
    color: #051928;
}

.content-panel span {
    font-family: Barlow;
    font-size: 38px;
    font-weight: 400;
    line-height: 45.6px;
    text-align: left;
    color: #051928;
}

.content-panel .yellow-text p {
    font-family: Barlow;
    font-size: 18.06px;
    font-weight: 600;
    line-height: 21.67px;
    text-align: center;
    color: #FFC72C;
}

.blue-div {
    background-color: #F2F2F2;
    border-left: 4px solid #254E9F;
    border-top: none;
    border-right: none;
    border-bottom: none;
    margin: 45px;
    width: 100%;
    height: 100%;
}

.blue-div p {
    width: 100%;
    height: 100%;
    padding: 40px;
    text-align: left;
    font-family: Barlow;
    font-size: 18.06px;
    font-weight: 400;
    line-height: 21.67px;
    color: #646464;
}

.content-panel img {
    width: 100%;
    height: 100%;
}

.form p {
    margin: 10px 0;
    text-align: left;
}

.form-group {
    margin-bottom: 15px;
}

.form-group input[type="text"],
input[type="email"],
input[type="tel"],
textarea,
select {
    width: 100%;
    
    margin-top: 4px;
    box-sizing: border-box;
    /* border: 1px solid #ccc; */
    border-radius: 4px;
}

.book-btn {
    color: white;
    border: none;
    padding: 10px 20px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 16px;
    margin: auto;
    cursor: pointer;
    width: 163.62px;
    height: 45.68px;
    top: 1603.42px;
    left: 224.81px;
    gap: 0px;
    display: flex;
    justify-content: center;
    place-items: center;
    background-color: #254E9F;
    border-radius: 21.25px;
}

.phone-container {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
}

.phone-icon {
    width: 24px;
    height: 24px;
    margin-right: 10px;
}

.phone-numbers p {
    font-family: Barlow;
    font-size: 18.06px;
    font-weight: 600;
    line-height: 21.67px;
    text-align: left;
    color: #4686E0;
}

.bg-blue {
    width: 100%;
    background-color: #254E9F;
    padding: 100px;
}

.div-full {
    width: 100%;
    display: flex;
    flex-direction: row;
    /*grid-template-columns: repeat(3, 1fr);*/
    justify-content: center;
    place-items: center;
    margin: auto;
}

.div-white {
    gap: 0px;
    border-radius: 0px 200px 200px 0px;
    display: flex;
    flex-direction: row;
    background-color: #F2F2F2;
    padding: 30px;
}


.div-white-in {
    display: flex;
    flex-direction: column;
    justify-content: center;
    place-items: center;
    gap: 20px;
}

.div-white-in h1 {
    width: 100%;
    height: 100%;
    margin: auto;
    font-family: Barlow;
    font-size: 32px;
    font-weight: 600;
    line-height: 38.4px;
    text-align: left;
    color: #FFFFFF;
}

.div-white-in span {
    font-family: Barlow;
    font-size: 30px;
    font-weight: 400;
    line-height: 36px;
    text-align: left;
    color: #FFFFFF;
}

.div-white-inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    place-items: start;
    text-align: left;
    margin: auto;
    width: 187px;
    height: 180px;
    gap: 20px;
    padding-right: 20px;
}

.div-white-inner p {
    width: 100%;
    height: 100%;
    text-align: left;
    font-family: Barlow;
    font-size: 17px;
    font-weight: 400;
    line-height: 20.4px;
    text-align: left;
    color: #000000;
}

.div-white-inner h2 {
    width: 100%;
    height: 100%;
    text-align: left;
    font-family: Barlow;
    font-size: 18px;
    font-weight: 600;
    line-height: 21.6px;
    text-align: left;
    color: #4A89E1;
}

.blue-round-div {
    border-radius: 50%;
    background-color: #3D50B1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    place-items: center;
    width: 280px;
    height: 280px;
    gap: 20px;
}

.blue-round-div h2 {
    font-family: Barlow;
    font-size: 19px;
    font-weight: 600;
    line-height: 22.8px;
    text-align: center;
    color: #FFFFFF;
    width: 50%;
}

.p-div p {
    font-family: Barlow;
    font-size: 16px;
    font-weight: 400;
    line-height: 19.2px;
    text-align: left;
    color: #FFFFFF;
}

.p-div {
    display: flex;
    justify-content: center;
    place-items: start;
    flex-direction: column;
    gap: 15px;
    width: 530px;
}

.middle-div {
    width: 150px;
    margin: 0 0 0 -50px;
    height: fit-content;
}

.last-dev {
    .step-1 {
        background-color: #F2F2F2;
        border-top-left-radius: 50px;
        border-bottom-left-radius: 50px;
        margin-left: -110px;
        margin-top: 50px;
        display: flex;
        align-items: center;
        padding: 20px;
        width: 400px;

    }

    .step-1:target {
        background-color: yellow;
    }

    .step-2 {
        background-color: #F2F2F2;
        border-top-left-radius: 50px;
        border-bottom-left-radius: 50px;
        margin-left: -10px;
        display: flex;
        align-items: center;
        padding: 20px;
        width: 300px;
    }

    .step-3 {
        background-color: #F2F2F2;
        border-top-left-radius: 50px;
        border-bottom-left-radius: 50px;
        margin-left: -10px;
        display: flex;
        align-items: center;
        padding: 20px;
        width: 300px;
    }

    .step-4 {
        background-color: #F2F2F2;
        border-top-left-radius: 50px;
        border-bottom-left-radius: 50px;
        margin-left: -100px;
        margin-bottom: -50px;
        display: flex;
        align-items: center;
        padding: 20px;
        width: 400px;
    }

    .step-number {
        width: 60px;
        height: 60px;
        background-color: #3D50B1;
        color: white;
        border-radius: 50%;
        display: flex;
        justify-content: center;
        align-items: center;
        font-weight: bold;
        margin-right: 10px;
    }

    .step p {
        width: 100%;
        height: 100%;
        font-family: Barlow;
        font-size: 18px;
        font-weight: 600;
        line-height: 21.6px;
        text-align: left;
        color: #000000;
    }

    .step-content {
        flex: 1;
        width: 100%;
        height: 100%;
    }

    .step-content p {
        width: 100%;
        height: 100%;
        text-align: left;
        font-family: Barlow;
        font-size: 18px;
        font-weight: 600;
        line-height: 21.6px;
        color: #000000;
    }
}

.last-dev {
    display: flex;
    flex-direction: column;
    justify-content: center;
    place-items: center;
    gap: 70px;
    margin-bottom: 100px;
}

.step {
    transition: background-color 0.3s;
    cursor: pointer;
}

.m-partner-logos {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    width: 75%;
    justify-content: space-around;
    align-items: center;
    padding: 20px 0;
}

.about-student-visa {
    font-family: Barlow;
    font-size: 31.87px;
    font-weight: 700;
    line-height: 38.25px;
    text-align: left;
    color: #051928;
    width: 100%;
    height: 100%;
    margin: 45px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    place-items: start;
    gap: 20px;
}

.about-student-visa img {
    width: 100%;
    height: 100%;
}

.about-student-visa p {
    width: 100%;
    height: 100%;
    text-align: left;
    margin-top: 10px;
}

.about-student-visa-img {
    width: 100%;
    height: 100%;
}

.how-grid-container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    width: 100%;
    height: 100%;
}

.how-grid-container-heading {
    border-bottom: 1px solid #ccc;
}

.grid-item h2 {
    margin-bottom: 10px;
    font-family: Barlow;
    font-size: 19.12px;
    font-weight: 500;
    line-height: 22.95px;
    text-align: left;
    color: #051928;
}


.options .document-option {
    background-color: #F2F2F2;
    display: flex;
    flex-direction: row;
    justify-content: start;
    place-items: center;
    padding: 30px;
    gap: 15px;
    margin: auto;
}

.options .document-option:hover {
    background-color: #FFC72C;
}

.options .document-option p {
    font-family: Barlow;
    font-size: 19.12px;
    font-weight: 600;
    line-height: 22.95px;
    color: #000000;
    width: 100%;
}

/* Extra small devices (phones, less than 576px) */
@media (max-width: 575.98px) {
    .migrate-container {
        display: block;
        width: 100%;
        margin: auto;
    }

    .left-container {
        display: block;
    }

    .tabs {
        flex: 1;
    }

    .tabs {
        height: 100%;
        display: flex;
        gap: 10px;
        flex-direction: column;
        width: 100%;
        justify-content: center;
        place-items: center;
        margin: 20px auto;
    }


    .form {
        flex: 1;
    }

    .form {
        width: 314.48px;
        padding: 20px;
        background-color: #F2F2F2;
        box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
        margin: auto;
    }

    .content {
        padding: 20px;
    }

    .tab {
        margin: 0;
    }
}

/* Small devices (phones, 576px and up) */
@media (min-width: 576px) {
    .migrate-container {
        display: block;
        width: 100%;
        margin: auto;
    }

    .left-container {
        display: block;
    }

    .tabs {
        height: 100%;
        display: flex;
        gap: 10px;
        flex-direction: column;
        width: 100%;
        justify-content: center;
        place-items: center;
        margin: 20px auto;
    }

    .tabs {
        flex: 1;
    }

    .form {
        flex: 1;
    }

    .form {
        width: 314.48px;
        padding: 20px;
        background-color: #F2F2F2;
        box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
        margin: auto;
    }

    .content {
        padding: 20px;
    }

    .tab {
        margin: 0;
    }
}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {
    .migrate-container {
        display: block;
        width: 100%;
        margin: auto;
    }

    .left-container {
        display: flex;
        flex-direction: row;
        align-items: flex-start;
    }

    .tabs {
        height: 100%;
        display: flex;
        gap: 10px;
        flex-direction: column;
        width: 100%;
        margin: 35px;
    }

    .tabs {
        flex: 1;
    }

    .form {
        flex: 1;
    }

    .form {
        width: 314.48px;
        margin: 20px 20px 0 0;
        padding: 20px;
        background-color: #F2F2F2;
        box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    }

    .content {
        padding: 20px;
    }

    .tav {
        margin: 0 10px 10px 0;
    }
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {
    .migrate-container {
        display: flex;
        width: 80%;
        margin: 50px auto;
    }

    .left-container {
        display: block;
    }

    .form {
        width: 314.48px;
        margin: 50px 20px 0 0;
        padding: 20px;
        background-color: #F2F2F2;
        box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    }

    .tabs {
        display: flex;
        gap: 10px;
        flex-direction: column;
        width: 100%;
        height: fit-content;
        margin: 0;
    }

    .content {
        padding: 0px;
    }

    .tav {
        margin: 0 10px 10px 0;
    }
}

/* Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {
    .migrate-container {
        display: flex;
        width: 80%;
        margin: 50px auto;
    }

    .left-container {
        display: block;
    }

    .form {
        width: 314.48px;
        margin: 50px 20px 0 0;
        padding: 20px;
        background-color: #F2F2F2;
        box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    }

    .tabs {
        display: flex;
        gap: 10px;
        flex-direction: column;
        width: 100%;
        height: fit-content;
        margin: 0;
    }

    .content {
        padding: 0px;
    }

    .tav {
        margin: 0 10px 10px 0;
    }
}