
body.idk-v7-public {
    margin:0;
    width:100%;
    max-width:100%;
    overflow-x:hidden !important;
}


/* -------------------------------------------------------------
   Hide old dynamic content.
   We keep its API/data, but not the old renderer.
   ------------------------------------------------------------- */

body.idk-v7-public
#idkPublicDynamicModules {
    display:none !important;
}


/* -------------------------------------------------------------
   Remove the second ImmigrantDesk + Sign in row inside Home.
   ------------------------------------------------------------- */

body.idk-v7-public
.idk-v7-duplicate-header {
    display:none !important;
}


/* -------------------------------------------------------------
   New clean page viewport
   ------------------------------------------------------------- */

#idkPublicV7Viewport {
    display:none;

    width:100%;
    max-width:100%;

    min-height:calc(100vh - 110px);

    box-sizing:border-box;

    background:#f7f9fc;
}


#idkPublicV7Viewport.visible {
    display:block !important;
}


.idk-v7-page {
    width:100%;
    max-width:1220px;

    margin:0 auto;

    padding:58px 30px 75px;

    box-sizing:border-box;
}


.idk-v7-eyebrow {
    margin-bottom:13px;

    color:#315bdd;

    font-size:13px;
    font-weight:850;

    letter-spacing:.13em;

    text-transform:uppercase;
}


.idk-v7-title {
    max-width:850px;

    margin:0 0 18px;

    color:#142039;

    font-size:clamp(
        38px,
        4.5vw,
        58px
    );

    line-height:1.06;

    letter-spacing:-.03em;
}


.idk-v7-description {
    max-width:780px;

    margin:0 0 38px;

    color:#65758b;

    font-size:19px;
    line-height:1.65;
}


/* -------------------------------------------------------------
   Cards
   ------------------------------------------------------------- */

.idk-v7-cards {
    width:100%;

    display:grid;

    grid-template-columns:
        repeat(
            3,
            minmax(0,1fr)
        );

    gap:20px;
}


.idk-v7-card {
    min-width:0;
    min-height:190px;

    padding:27px;

    box-sizing:border-box;

    border:1px solid #dbe3ee;
    border-radius:15px;

    background:#fff;

    box-shadow:
        0 7px 25px
        rgba(15,35,70,.04);
}


.idk-v7-card h3 {
    margin:0 0 12px;

    color:#142039;

    font-size:21px;
    line-height:1.3;
}


.idk-v7-card p {
    margin:0;

    color:#65758b;

    font-size:16px;
    line-height:1.65;
}


/* -------------------------------------------------------------
   CTA
   ------------------------------------------------------------- */

.idk-v7-actions {
    display:flex;
    flex-wrap:wrap;

    gap:11px;

    margin-top:35px;
}


.idk-v7-primary,
.idk-v7-secondary {
    min-height:46px;

    display:inline-flex;

    align-items:center;
    justify-content:center;

    padding:0 19px;

    border-radius:9px;

    text-decoration:none;

    font-size:14px;
    font-weight:800;
}


.idk-v7-primary {
    border:1px solid #315bdd;

    background:#315bdd;

    color:#fff;
}


.idk-v7-secondary {
    border:1px solid #315bdd;

    background:#fff;

    color:#315bdd;
}


/* -------------------------------------------------------------
   Contact / Enquiry
   ------------------------------------------------------------- */

.idk-v7-contact-box {
    max-width:850px;

    padding:30px;

    box-sizing:border-box;

    border:1px solid #dbe3ee;
    border-radius:15px;

    background:#fff;
}


.idk-v7-contact-box h3 {
    margin:0 0 9px;

    font-size:23px;
}


.idk-v7-contact-box p {
    margin:0;

    color:#65758b;

    font-size:16px;
    line-height:1.65;
}


/* -------------------------------------------------------------
   Navigation active state
   ------------------------------------------------------------- */

body.idk-v7-public
.idk-public-links
a.idk-v7-active {

    color:#315bdd !important;

    border-bottom-color:#315bdd !important;
}


/* Remove duplicate Create account text in desktop link row */
@media(min-width:761px) {

    body.idk-v7-public
    .idk-public-links
    .idk-v5-mobile-register {

        display:none !important;
    }
}


/* -------------------------------------------------------------
   Tablet
   ------------------------------------------------------------- */

@media(max-width:900px) {

    .idk-v7-cards {
        grid-template-columns:
            repeat(
                2,
                minmax(0,1fr)
            );
    }
}


/* -------------------------------------------------------------
   Mobile
   ------------------------------------------------------------- */

@media(max-width:650px) {

    #idkPublicV7Viewport {
        min-height:
            calc(100vh - 62px);
    }


    .idk-v7-page {
        padding:
            38px 17px 55px;
    }


    .idk-v7-title {
        font-size:
            clamp(
                32px,
                10vw,
                42px
            );
    }


    .idk-v7-description {
        font-size:16px;
    }


    .idk-v7-cards {
        grid-template-columns:1fr;
    }


    .idk-v7-card {
        min-height:auto;
    }


    .idk-v7-contact-box {
        padding:23px;
    }
}

