/*
 * Visa editorial architectures — four distinct page systems in one Shrey language.
 * Flat surfaces, strong hierarchy, readable type and no decorative shadows.
 */
body.visa-detail-page {
    --ve-navy:#0E1C3C; --ve-ink:#0E1C3C; --ve-teal:#134BC3; --ve-teal-light:#779EF2;
    --ve-line:#F1F5FE; --ve-muted:#505F7E; --ve-paper:#FAFBFD; --ve-warm:#F8F1E2; --ve-wash:#E9EFFD;
}

/* Visa suite: compact editorial switcher aligned to the shared 1280px rail. */
@media (min-width:576px) {
    body.visa-detail-page .visa-detail-switcher {
        position:relative!important;
        top:auto!important;
        left:auto!important;
        width:auto!important;
        padding:20px 0 4px!important;
        border:0!important;
        background:#fff!important;
    }
    body.visa-detail-page .visa-detail-switcher>.container {
        display:grid!important;
        width:min(1280px,calc(100% - 48px))!important;
        max-width:1280px!important;
        margin:0 auto!important;
        padding:8px!important;
        grid-template-columns:repeat(4,minmax(0,1fr))!important;
        gap:8px!important;
        overflow:visible!important;
        border:1px solid #DDE1EA!important;
        border-radius:16px!important;
        background:#E9EFFD!important;
    }
    body.visa-detail-page .visa-detail-switcher a {
        position:relative!important;
        display:flex!important;
        width:auto!important;
        min-width:0!important;
        min-height:56px!important;
        padding:0 16px!important;
        gap:10px!important;
        align-items:center!important;
        justify-content:flex-start!important;
        border:1px solid transparent!important;
        border-radius:11px!important;
        color:#505F7E!important;
        background:transparent!important;
        font-size:13px!important;
        font-weight:750!important;
        line-height:1.2!important;
        text-align:left!important;
    }
    body.visa-detail-page .visa-detail-switcher a::after { display:none!important; }
    body.visa-detail-page .visa-detail-switcher a span {
        display:grid!important;
        width:30px!important;
        height:30px!important;
        margin:0!important;
        flex:0 0 30px!important;
        place-items:center!important;
        border:1px solid #ABB5C9!important;
        border-radius:50%!important;
        color:#134BC3!important;
        background:#fff!important;
        font-size:9px!important;
        font-weight:900!important;
        letter-spacing:.06em!important;
    }
    body.visa-detail-page .visa-detail-switcher a:hover {
        border-color:#CFD5E0!important;
        color:var(--ve-navy)!important;
        background:#fff!important;
    }
    body.visa-detail-page .visa-detail-switcher a.active {
        border-color:var(--ve-navy)!important;
        color:#fff!important;
        background:var(--ve-navy)!important;
    }
    body.visa-detail-page .visa-detail-switcher a.active span {
        border-color:rgba(255,255,255,.35)!important;
        color:#fff!important;
        background:rgba(255,255,255,.1)!important;
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-switcher a.active {
        border-color:#8f594d!important;
        background:#8f594d!important;
    }
    body.parent-visa-page .visa-detail-switcher a.active {
        border-color:#8C6E36!important;
        background:#8C6E36!important;
    }
    body.visitor-visa-page .visa-detail-switcher a.active {
        border-color:#103FA3!important;
        background:#103FA3!important;
    }
}

@media (min-width:576px) and (max-width:991px) {
    body.visa-detail-page .visa-detail-switcher>.container {
        display:flex!important;
        width:calc(100% - 32px)!important;
        overflow-x:auto!important;
        scroll-snap-type:x proximity;
        scrollbar-width:none;
    }
    body.visa-detail-page .visa-detail-switcher>.container::-webkit-scrollbar { display:none; }
    body.visa-detail-page .visa-detail-switcher a {
        min-width:180px!important;
        flex:1 0 180px!important;
        scroll-snap-align:start;
    }
}

/* Visa heroes: quieter CTAs and premium three-point summary cards. */
body.visa-detail-page .visa-primary-action>span { display:none!important; }
body.visa-detail-page .visa-detail-facts {
    display:grid!important;
    padding-top:0!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:10px!important;
    border-top:0!important;
}
body.visa-detail-page .visa-detail-facts>div,
body.visa-detail-page .visa-detail-facts>div:first-child,
body.visa-detail-page .visa-detail-facts>div:last-child {
    position:relative;
    display:grid!important;
    min-height:78px!important;
    padding:14px 15px!important;
    grid-template-columns:34px minmax(0,1fr)!important;
    gap:11px!important;
    align-items:center!important;
    overflow:hidden;
    border:1px solid #CFD5E0!important;
    border-radius:12px!important;
    background:rgba(255,255,255,.62)!important;
}
body.visa-detail-page .visa-detail-facts>div::before {
    content:""!important;
    position:absolute!important;
    top:0!important;
    left:14px!important;
    display:block!important;
    width:34px!important;
    height:2px!important;
    background:var(--ve-teal)!important;
}
body.visa-detail-page .visa-detail-facts strong {
    display:grid!important;
    width:32px!important;
    height:32px!important;
    margin:0!important;
    place-items:center;
    border:1px solid #BED1F9!important;
    border-radius:50%!important;
    color:var(--ve-teal)!important;
    font-size:9px!important;
    line-height:1!important;
}
body.visa-detail-page .visa-detail-facts span {
    display:block!important;
    color:var(--ve-ink)!important;
    font-size:12px!important;
    font-weight:750!important;
    line-height:1.38!important;
}
body.parent-visa-page .visa-detail-facts>div,
body.parent-visa-page .visa-detail-facts>div:first-child,
body.parent-visa-page .visa-detail-facts>div:last-child {
    border-color:rgba(255,255,255,.18)!important;
    background:rgba(255,255,255,.045)!important;
}
body.parent-visa-page .visa-detail-facts>div::before { background:#DBBC80!important; }
body.parent-visa-page .visa-detail-facts strong {
    border-color:rgba(219, 188, 128,.55)!important;
    color:#DBBC80!important;
}
body.parent-visa-page .visa-detail-facts span { color:#fff!important; }
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-facts>div::before {
    background:#a66353!important;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-facts strong {
    border-color:#d5b7ae!important;
    color:#925849!important;
}
body.visitor-visa-page .visa-detail-facts>div::before { background:var(--visitor-deep)!important; }
body.visitor-visa-page .visa-detail-facts strong {
    border-color:#BED1F9!important;
    color:var(--visitor-deep)!important;
}

@media (max-width:575px) {
    body.visa-detail-page .visa-detail-facts {
        grid-template-columns:1fr!important;
        gap:8px!important;
    }
    body.visa-detail-page .visa-detail-facts>div,
    body.visa-detail-page .visa-detail-facts>div:first-child,
    body.visa-detail-page .visa-detail-facts>div:last-child {
        min-height:68px!important;
        padding:11px 13px!important;
        grid-template-columns:34px minmax(0,1fr)!important;
        border:1px solid #CFD5E0!important;
        border-radius:10px!important;
    }
    body.parent-visa-page .visa-detail-facts>div,
    body.parent-visa-page .visa-detail-facts>div:first-child,
    body.parent-visa-page .visa-detail-facts>div:last-child {
        border-color:rgba(255,255,255,.18)!important;
    }
}
body.visa-detail-page .visa-detail-hero>.container,
body.visa-detail-page .partner-process-section>.container,
body.visa-detail-page .student-trust-section>.container,
body.visa-detail-page .partner-trust-section>.container,
body.visa-detail-page .parent-country-section>.container,
body.visa-detail-page .home01-immigration-and-services-section>.container,
body.visa-detail-page .contact-us-contact-form-section>.container {
    width:min(1420px,calc(100% - 48px)); max-width:1420px;
}
body.visa-detail-page .visa-detail-hero-grid,
body.visa-detail-page .student-process-shell,
body.visa-detail-page .student-support-panel,
body.visa-detail-page .student-trust-grid,
body.visa-detail-page .partner-process-shell,
body.visa-detail-page .partner-support-panel,
body.visa-detail-page .partner-trust-grid,
body.visa-detail-page .contact-us-contact-form-section>.container>.row { box-shadow:none!important; }
body.visa-detail-page .student-section-label,
body.visa-detail-page .partner-section-label,
body.visa-detail-page .visa-detail-eyebrow { font-size:11px; font-weight:800; letter-spacing:.14em; }
body.visa-detail-page .home01-immigration-and-services-section>.container[data-aos] {
    opacity:1!important; transform:none!important;
}
body.visa-detail-page p { text-wrap:pretty; }
body.visa-detail-page h1,body.visa-detail-page h2,body.visa-detail-page h3 { text-wrap:balance; }
body.visa-detail-page .visa-primary-action,
body.visa-detail-page .visa-secondary-action { min-height:52px; border-radius:8px; font-size:13px; }
body.visa-detail-page a:focus-visible,
body.visa-detail-page button:focus-visible,
body.visa-detail-page input:focus-visible,
body.visa-detail-page select:focus-visible,
body.visa-detail-page textarea:focus-visible { outline:3px solid var(--ve-teal-light); outline-offset:3px; }

/* 01 — Student: guided roadmap, then a preparation desk. */
body.student-visa-page .student-support-panel {
    display:grid; margin-top:34px; overflow:hidden;
    grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);
    border:1px solid var(--ve-line); border-radius:28px; background:#fff;
}
body.student-visa-page .student-support-intro {
    position:relative; z-index:0; display:flex; padding:64px 54px; overflow:hidden;
    grid-column:2; grid-row:1; flex-direction:column; justify-content:center;
    color:#fff; background:var(--ve-teal);
}
body.student-visa-page .student-support-intro:after {
    position:absolute; right:-20px; bottom:-18px; z-index:-1; content:"STUDY";
    color:rgba(255,255,255,.065); font-size:clamp(72px,8vw,130px);
    font-weight:800; line-height:.8; letter-spacing:-.08em;
}
body.student-visa-page .student-support-intro .student-section-label { color:#F1F5FE; }
body.student-visa-page .student-support-intro h2 {
    max-width:520px; margin:26px 0 0; color:#fff;
    font-size:clamp(40px,3.8vw,58px); line-height:1.02; letter-spacing:-.045em;
}
body.student-visa-page .student-support-intro h2 em {
    display:block; color:#F1F5FE; font-family:Georgia,serif; font-weight:500;
}
body.student-visa-page .student-support-intro p {
    max-width:520px; margin:26px 0 30px; color:rgba(255,255,255,.8);
    font-size:15px; line-height:1.75;
}
body.student-visa-page .student-text-link { color:#fff; font-size:13px; }
body.student-visa-page .student-text-link span { border:1px solid rgba(255,255,255,.34); background:transparent; }
body.student-visa-page .student-support-list {
    display:block; padding:22px 48px; grid-column:1; grid-row:1; background:var(--ve-paper);
}
body.student-visa-page .student-support-list article {
    display:grid; min-height:0; padding:27px 0;
    grid-template-columns:42px minmax(0,1fr); gap:18px; border-bottom:1px solid var(--ve-line);
}
body.student-visa-page .student-support-list article:last-child { border-bottom:0; }
body.student-visa-page .student-support-list article>span {
    color:var(--ve-teal); font-size:11px; font-weight:850; letter-spacing:.08em;
}
body.student-visa-page .student-support-list article>div {
    display:grid; grid-template-columns:minmax(190px,.85fr) minmax(0,1.15fr); gap:28px;
}
body.student-visa-page .student-support-list h3 { margin:0; color:var(--ve-ink); font-size:18px; line-height:1.32; }
body.student-visa-page .student-support-list p { margin:0; color:var(--ve-muted); font-size:14px; line-height:1.65; }

body.student-visa-page .student-trust-section { padding:74px 0!important; }
body.student-visa-page .student-trust-grid {
    display:grid; overflow:hidden; grid-template-columns:minmax(350px,.84fr) minmax(0,1.16fr);
    gap:0; align-items:stretch; border:1px solid var(--ve-line); border-radius:28px; background:#fff;
}
body.student-visa-page .student-trust-heading {
    display:flex; padding:58px 50px; flex-direction:column; justify-content:center; background:var(--ve-warm);
}
body.student-visa-page .student-trust-heading h2 {
    margin:22px 0 0; color:var(--ve-ink); font-size:clamp(40px,3.7vw,56px);
    line-height:1.02; letter-spacing:-.045em;
}
body.student-visa-page .student-trust-heading h2 em {
    display:block; color:var(--ve-teal); font-family:Georgia,serif; font-weight:500;
}
body.student-visa-page .student-trust-heading>p {
    max-width:470px; margin:24px 0 0; color:var(--ve-muted); font-size:15px; line-height:1.7;
}
body.student-visa-page .student-trust-points { display:block; border:0; }
body.student-visa-page .student-trust-points article {
    display:grid; min-height:0; padding:31px 38px;
    grid-template-columns:48px minmax(190px,.75fr) minmax(0,1.25fr);
    gap:24px; align-items:start; border:0; border-bottom:1px solid var(--ve-line);
}
body.student-visa-page .student-trust-points article:last-child { border-bottom:0; }
body.student-visa-page .student-trust-points strong { margin:4px 0 0; color:var(--ve-teal); font-size:11px; letter-spacing:.1em; }
body.student-visa-page .student-trust-points h3 { margin:0; color:var(--ve-ink); font-size:19px; line-height:1.35; }
body.student-visa-page .student-trust-points p { margin:0; color:var(--ve-muted); font-size:14px; line-height:1.65; }

body.student-visa-page #study-destinations .row:first-child>[class*="col-"] { flex:0 0 100%; max-width:100%; }
body.student-visa-page #study-destinations .section-title { margin-bottom:38px; text-align:left; }
body.student-visa-page #study-destinations .title-header {
    display:grid; grid-template-columns:.36fr .9fr 1fr; gap:42px; align-items:end;
}
body.student-visa-page #study-destinations .title-header h3,
body.student-visa-page #study-destinations .title-header h2,
body.student-visa-page #study-destinations .student-destination-intro { margin:0; }
body.student-visa-page #study-destinations .title-header h2 { font-size:clamp(38px,3.7vw,56px); line-height:1.02; }
body.student-visa-page #study-destinations .student-destination-intro { font-size:15px; line-height:1.7; }
body.student-visa-page #study-destinations .row.mt_15 {
    display:grid; margin:0; overflow:hidden; grid-template-columns:repeat(4,minmax(0,1fr));
    gap:1px; border:1px solid var(--ve-line); border-radius:24px; background:var(--ve-line);
}
body.student-visa-page #study-destinations .row.mt_15>[class*="col-"] { width:auto; max-width:none; padding:0; }
body.student-visa-page #study-destinations .featured-imagebox {
    height:100%; margin:0; border:0; border-radius:0; background:#fff;
}
body.student-visa-page #study-destinations .featured-imagebox-wrapper { height:100%; }
body.student-visa-page #study-destinations .featured-thumbnail { height:210px; overflow:hidden; }
body.student-visa-page #study-destinations .featured-thumbnail img { width:100%; height:100%; object-fit:cover; }
body.student-visa-page #study-destinations .featured-content { position:static; padding:20px 22px 22px; background:#fff; }
body.student-visa-page #study-destinations .featured-title h3,
body.student-visa-page #study-destinations .featured-title h3 a {
    margin:0; color:var(--ve-ink); font-size:18px;
}

/* 02 — Partner: image-led opening and a relationship evidence archive. */
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) {
    --ve-accent:#8b5e54; --ve-accent-soft:#F8F1E2;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-hero { padding:54px 0 68px; }
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-hero-grid {
    display:grid; min-height:690px; overflow:hidden;
    grid-template-columns:minmax(0,1.08fr) minmax(430px,.92fr);
    border:1px solid #CFD5E0; border-radius:32px; background:var(--ve-accent-soft);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-visual {
    min-height:690px; grid-column:1; grid-row:1;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-visual img {
    width:100%; height:100%; object-fit:cover; object-position:center;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-hero-copy {
    position:relative; z-index:0; display:flex; padding:70px 62px 56px; overflow:hidden;
    grid-column:2; grid-row:1; flex-direction:column; justify-content:center; background:var(--ve-accent-soft);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-hero-copy:before {
    position:absolute; top:-35px; right:-10px; z-index:-1; content:"02";
    color:rgba(139,94,84,.09); font-size:210px; font-weight:800; line-height:1; letter-spacing:-.1em;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-eyebrow { color:var(--ve-accent); }
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-hero h1 {
    max-width:620px; margin:30px 0 0; color:var(--ve-ink);
    font-size:clamp(54px,5vw,76px); line-height:.96; letter-spacing:-.055em;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-hero h1 em {
    display:block; margin-top:8px; color:var(--ve-accent); font-family:Georgia,serif; font-weight:500;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-hero-copy>p {
    max-width:560px; margin:28px 0 0; color:#47546E; font-size:16px; line-height:1.72;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-actions { margin-top:30px; }
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-facts {
    display:grid; margin-top:38px; padding:0; grid-template-columns:1fr; gap:0; border-top:1px solid #d6c9c3;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-facts div,
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-facts div:first-child,
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-facts div:last-child {
    display:grid; min-height:0; padding:13px 0; grid-template-columns:46px 1fr;
    align-items:center; border:0; border-bottom:1px solid #d6c9c3;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-facts div:before { display:none; }
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-facts strong {
    margin:0; color:var(--ve-accent); font-size:11px;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-facts span {
    color:var(--ve-ink); font-size:13px;
}

body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-section {
    padding:62px 0 72px!important;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-shell {
    overflow:hidden; border:1px solid var(--ve-line); border-radius:28px; background:#fff;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-heading {
    display:grid; grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-title {
    padding:56px 54px; background:var(--ve-navy);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-title .partner-section-label {
    color:#d9aaa0;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-title h2 {
    max-width:690px; margin:24px 0 0; font-size:clamp(42px,4.1vw,62px); line-height:1.02;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-title h2 em {
    display:inline; color:#d9aaa0;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-summary {
    display:flex; padding:54px 50px; flex-direction:column; justify-content:center; background:var(--ve-accent-soft);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-summary .partner-section-label {
    color:var(--ve-accent);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-summary p {
    margin:22px 0 0; color:#47546E; font-size:15px; line-height:1.75;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-roadmap-list {
    display:grid; padding:0; grid-template-columns:repeat(3,minmax(0,1fr));
    gap:1px; border-top:1px solid var(--ve-line); background:var(--ve-line);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-roadmap-list article {
    display:block; min-height:255px; padding:38px 34px; border:0; background:#fff;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-roadmap-list article:nth-child(even) {
    background:#F2F5FB;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-roadmap-list article>span {
    display:block; width:auto; height:auto; margin:0 0 50px; border-radius:0;
    color:var(--ve-accent); background:transparent; font-size:11px; letter-spacing:.11em;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-roadmap-list h3 {
    margin:0 0 12px; font-size:20px; line-height:1.3;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-roadmap-list p {
    color:var(--ve-muted); font-size:14px; line-height:1.65;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-note {
    margin:0; padding:19px 34px; border:0; border-top:1px solid var(--ve-line);
    border-radius:0; color:#505F7E; background:#E5EBF6; font-size:12px; line-height:1.6;
}

body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-panel {
    display:block; margin-top:34px; overflow:hidden;
    border:1px solid var(--ve-line); border-radius:28px; background:var(--ve-paper);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-intro {
    display:grid; padding:50px 54px; grid-template-columns:minmax(0,1fr) minmax(340px,.7fr);
    column-gap:70px; background:var(--ve-accent-soft);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-intro .partner-section-label {
    grid-column:1/-1; color:var(--ve-accent);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-intro h2 {
    margin:24px 0 0; color:var(--ve-ink); font-size:clamp(40px,3.8vw,58px); line-height:1.02;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-intro h2 em {
    color:var(--ve-accent);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-intro p {
    margin:28px 0 18px; color:#47546E; font-size:15px; line-height:1.72;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-text-link {
    grid-column:2; color:var(--ve-ink); font-size:13px;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-text-link span {
    border-radius:50%; background:var(--ve-accent);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-list {
    display:grid; padding:0; grid-template-columns:repeat(3,minmax(0,1fr));
    gap:1px; border-top:1px solid var(--ve-line); background:var(--ve-line);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-list article {
    display:block; min-height:205px; padding:32px; border:0; background:#fff;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-list article>span {
    display:block; margin-bottom:34px; color:var(--ve-accent); font-size:11px;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-list h3 {
    margin:0 0 10px; font-size:18px;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-list p {
    color:var(--ve-muted); font-size:14px; line-height:1.62;
}

body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-section {
    padding:72px 0!important;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-grid {
    display:grid; overflow:hidden; grid-template-columns:1fr; gap:0;
    border-top:1px solid var(--ve-line); border-bottom:1px solid var(--ve-line);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-heading {
    display:grid; padding:0 0 46px; grid-template-columns:minmax(0,1fr) minmax(340px,.7fr);
    gap:70px; align-items:end;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-heading .partner-section-label {
    grid-column:1/-1; color:var(--ve-accent);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-heading h2 {
    margin:0; font-size:clamp(40px,3.8vw,58px);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-heading h2 em {
    display:inline; color:var(--ve-accent);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-heading>p {
    margin:0; font-size:15px; line-height:1.7;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-points {
    display:grid; grid-template-columns:repeat(3,1fr); border:0; border-top:1px solid var(--ve-line);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-points article {
    min-height:225px; padding:34px; border:0; border-right:1px solid var(--ve-line);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-points article:last-child { border-right:0; }
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-points strong {
    margin-bottom:42px; color:var(--ve-accent);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-points h3 { font-size:19px; }
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-points p {
    font-size:14px; line-height:1.65;
}

body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .row:first-child>[class*="col-"] {
    flex:0 0 100%; max-width:100%;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .section-title { margin-bottom:38px; }
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .title-header h2 {
    font-size:clamp(40px,3.7vw,58px); line-height:1.02;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .partner-destination-intro {
    max-width:760px; font-size:15px; line-height:1.7;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .row.mt_15 {
    display:grid; margin:0; overflow:hidden; grid-template-columns:repeat(4,minmax(0,1fr));
    grid-auto-rows:220px; gap:1px; border:1px solid var(--ve-line);
    border-radius:24px; background:var(--ve-line);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .row.mt_15>[class*="col-"] {
    width:auto; max-width:none; padding:0;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .row.mt_15>[class*="col-"]:first-child {
    grid-column:span 2; grid-row:span 2;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .featured-imagebox,
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .featured-imagebox-wrapper,
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .featured-thumbnail {
    width:100%; height:100%; margin:0; border:0; border-radius:0;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .featured-imagebox-wrapper {
    position:relative; overflow:hidden;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .featured-thumbnail img {
    width:100%; height:100%; object-fit:cover;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .featured-content {
    position:absolute; right:0; bottom:0; left:0; padding:17px 20px; background:rgba(10, 20, 43, .9);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .featured-title h3,
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .featured-title h3 a {
    margin:0; color:#fff; font-size:17px;
}

/* 03 — Parent: a policy dossier and eligibility matrix. */
body.parent-visa-page { --ve-parent:#B28D47; --ve-parent-soft:#F8F1E2; }
body.parent-visa-page .visa-detail-hero { padding:54px 0 70px; }
body.parent-visa-page .visa-detail-hero-grid {
    display:grid; min-height:690px; overflow:hidden;
    grid-template-columns:minmax(0,1.18fr) minmax(420px,.82fr);
    border:1px solid #12244E; border-radius:28px; background:var(--ve-navy);
}
body.parent-visa-page .visa-detail-hero-copy {
    position:relative; z-index:0; display:flex; padding:72px 64px 56px; overflow:hidden;
    flex-direction:column; justify-content:center; background:var(--ve-navy);
}
body.parent-visa-page .visa-detail-hero-copy:before {
    position:absolute; right:-18px; bottom:-45px; z-index:-1; content:"103";
    color:rgba(255,255,255,.045); font-size:clamp(170px,19vw,310px);
    font-weight:800; line-height:.8; letter-spacing:-.1em;
}
body.parent-visa-page .visa-detail-eyebrow { color:#DBBC80; }
body.parent-visa-page .visa-detail-hero h1 {
    max-width:760px; margin:30px 0 0; color:#fff;
    font-size:clamp(54px,5vw,76px); line-height:.96; letter-spacing:-.055em;
}
body.parent-visa-page .visa-detail-hero h1 em {
    display:block; margin-top:8px; color:#DBBC80; font-family:Georgia,serif; font-weight:500;
}
body.parent-visa-page .visa-detail-hero-copy>p {
    max-width:680px; margin:28px 0 0; color:rgba(255,255,255,.74); font-size:16px; line-height:1.75;
}
body.parent-visa-page .visa-detail-actions { margin-top:30px; }
body.parent-visa-page .visa-primary-action { color:var(--ve-navy)!important; background:#DBBC80; }
body.parent-visa-page .visa-secondary-action {
    border-color:rgba(255,255,255,.38); color:#fff!important; background:transparent;
}
body.parent-visa-page .visa-detail-facts {
    margin-top:42px; padding-top:22px; border-top:1px solid rgba(255,255,255,.16);
}
body.parent-visa-page .visa-detail-facts div,
body.parent-visa-page .visa-detail-facts div:first-child,
body.parent-visa-page .visa-detail-facts div:last-child {
    border-color:rgba(255,255,255,.18);
    background:#12244E!important;
}
body.parent-visa-page .visa-detail-facts div:before { background:#DBBC80; }
body.parent-visa-page .visa-detail-facts strong { color:#DBBC80; }
body.parent-visa-page .visa-detail-facts span { color:#fff; font-size:13px; }
body.parent-visa-page .visa-detail-visual { min-height:690px; }
body.parent-visa-page .visa-detail-visual img {
    width:100%; height:100%; object-fit:cover; object-position:center 35%;
}

body.parent-visa-page .partner-process-section { padding:64px 0 74px!important; }
body.parent-visa-page .partner-process-shell {
    overflow:hidden; border:1px solid var(--ve-line); border-radius:28px; background:#fff;
}
body.parent-visa-page .partner-process-heading {
    display:grid; grid-template-columns:minmax(0,1.14fr) minmax(380px,.86fr);
}
body.parent-visa-page .partner-process-title {
    padding:58px 56px; color:var(--ve-ink); background:var(--ve-parent-soft);
}
body.parent-visa-page .partner-process-title .partner-section-label { color:#8C6E36; }
body.parent-visa-page .partner-process-title h2 {
    max-width:700px; margin:24px 0 0; color:var(--ve-ink);
    font-size:clamp(44px,4.1vw,62px); line-height:1.02;
}
body.parent-visa-page .partner-process-title h2 em { display:inline; color:#8C6E36; }
body.parent-visa-page .partner-process-summary {
    display:flex; padding:54px 50px; flex-direction:column; justify-content:center; background:#fff;
}
body.parent-visa-page .partner-process-summary .partner-section-label { color:#8C6E36; }
body.parent-visa-page .partner-process-summary p {
    margin:22px 0 0; color:var(--ve-muted); font-size:15px; line-height:1.75;
}
body.parent-visa-page .partner-roadmap-list {
    display:grid; padding:0; grid-template-columns:repeat(2,minmax(0,1fr));
    gap:1px; border-top:1px solid var(--ve-line); background:var(--ve-line);
}
body.parent-visa-page .partner-roadmap-list article {
    display:grid; min-height:210px; padding:34px;
    grid-template-columns:56px minmax(0,1fr); gap:20px; border:0; background:#fff;
}
body.parent-visa-page .partner-roadmap-list article:nth-child(3n+1) { background:#FAF7F0; }
body.parent-visa-page .partner-roadmap-list article>span {
    display:grid; width:44px; height:44px; place-items:center;
    border:1px solid #DBBC80; border-radius:6px; color:#8C6E36;
    background:transparent; font-size:11px;
}
body.parent-visa-page .partner-roadmap-list h3 { margin:0 0 11px; font-size:20px; }
body.parent-visa-page .partner-roadmap-list p { color:var(--ve-muted); font-size:14px; line-height:1.66; }
body.parent-visa-page .partner-process-note {
    margin:0; padding:19px 34px; border:0; border-top:1px solid var(--ve-line);
    border-radius:0; background:var(--ve-parent-soft); font-size:12px;
}

body.parent-visa-page .partner-support-panel {
    display:grid; margin-top:34px; overflow:hidden;
    grid-template-columns:minmax(360px,.78fr) minmax(0,1.22fr);
    border:1px solid var(--ve-line); border-radius:28px; background:#fff;
}
body.parent-visa-page .partner-support-intro {
    display:flex; padding:56px 48px; flex-direction:column; justify-content:center; background:var(--ve-navy);
}
body.parent-visa-page .partner-support-intro .partner-section-label { color:#DBBC80; }
body.parent-visa-page .partner-support-intro h2 {
    margin:24px 0 0; color:#fff; font-size:clamp(40px,3.6vw,56px); line-height:1.02;
}
body.parent-visa-page .partner-support-intro h2 em { color:#DBBC80; }
body.parent-visa-page .partner-support-intro p {
    margin:26px 0 30px; color:rgba(255,255,255,.74); font-size:15px; line-height:1.72;
}
body.parent-visa-page .partner-text-link { color:#fff; font-size:13px; }
body.parent-visa-page .partner-text-link span { background:#8C6E36; }
body.parent-visa-page .partner-support-list {
    display:grid; padding:0; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; background:var(--ve-line);
}
body.parent-visa-page .partner-support-list article {
    display:block; min-height:190px; padding:30px; border:0; background:#fff;
}
body.parent-visa-page .partner-support-list article>span {
    display:block; margin-bottom:30px; color:#8C6E36; font-size:11px;
}
body.parent-visa-page .partner-support-list h3 { margin:0 0 9px; font-size:18px; }
body.parent-visa-page .partner-support-list p { color:var(--ve-muted); font-size:14px; line-height:1.62; }

body.parent-visa-page .partner-trust-section { padding:70px 0 54px!important; }
body.parent-visa-page .partner-trust-grid {
    display:grid; overflow:hidden; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);
    gap:0; border:1px solid var(--ve-line); border-radius:24px;
}
body.parent-visa-page .partner-trust-heading { padding:48px; background:var(--ve-parent-soft); }
body.parent-visa-page .partner-trust-heading .partner-section-label { color:#8C6E36; }
body.parent-visa-page .partner-trust-heading h2 {
    margin-top:22px; font-size:clamp(38px,3.5vw,52px);
}
body.parent-visa-page .partner-trust-heading h2 em { display:inline; color:#8C6E36; }
body.parent-visa-page .partner-trust-heading>p { margin-top:22px; font-size:15px; line-height:1.7; }
body.parent-visa-page .partner-trust-points { display:block; border:0; }
body.parent-visa-page .partner-trust-points article {
    display:grid; min-height:0; padding:28px 34px;
    grid-template-columns:46px 190px 1fr; gap:20px;
    border:0; border-bottom:1px solid var(--ve-line);
}
body.parent-visa-page .partner-trust-points article:last-child { border-bottom:0; }
body.parent-visa-page .partner-trust-points strong { margin:4px 0 0; color:#8C6E36; }
body.parent-visa-page .partner-trust-points h3 { margin:0; font-size:18px; }
body.parent-visa-page .partner-trust-points p { margin:0; font-size:14px; line-height:1.62; }

body.parent-visa-page .parent-country-section { padding:70px 0 78px!important; }
body.parent-visa-page .parent-country-heading {
    grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr); gap:70px; margin-bottom:38px;
}
body.parent-visa-page .parent-country-heading .partner-section-label {
    margin:0 0 -48px; color:#8C6E36;
}
body.parent-visa-page .parent-country-heading h2 { font-size:clamp(44px,4.3vw,64px); }
body.parent-visa-page .parent-country-heading h2 em { color:#8C6E36; }
body.parent-visa-page .parent-country-heading>p { font-size:15px; line-height:1.72; }
body.parent-visa-page .parent-country-grid {
    grid-template-columns:minmax(0,1.28fr) minmax(340px,.72fr); gap:18px; align-items:stretch;
}
body.parent-visa-page .parent-country-card {
    padding:42px; border-radius:22px; box-shadow:none;
}
body.parent-visa-page .parent-country-card--primary {
    border-color:var(--ve-navy); background:var(--ve-navy);
}
body.parent-visa-page .parent-country-card-top { margin-bottom:42px; }
body.parent-visa-page .parent-country-code { border-radius:6px; background:#8C6E36; }
body.parent-visa-page .parent-country-status { color:#8C6E36; }
body.parent-visa-page .parent-country-card--primary .parent-country-status { color:#DBBC80; }
body.parent-visa-page .parent-country-card h3 { font-size:26px; }
body.parent-visa-page .parent-country-card p,
body.parent-visa-page .parent-country-card li { font-size:14px; line-height:1.65; }
body.parent-visa-page .parent-country-card li:before { background:#8C6E36; }
body.parent-visa-page .parent-country-note {
    padding:18px 22px; border-left-color:#8C6E36; border-radius:0; font-size:12px;
}

/* 04 — Visitor: photographic travel journal and a three-phase trip planner. */
body.visitor-visa-page {
    --ve-visitor:#134BC3; --ve-visitor-soft:#E9EFFD; --ve-sand:#DBBC80;
}
body.visitor-visa-page .visa-detail-hero { padding:54px 0 70px; }
body.visitor-visa-page .visa-detail-hero-grid {
    display:grid; overflow:hidden; grid-template-columns:1fr;
    grid-template-rows:minmax(470px,54vw) auto;
    border:1px solid var(--ve-line); border-radius:32px; background:var(--ve-visitor-soft);
}
body.visitor-visa-page .visa-detail-visual {
    min-height:470px; grid-column:1; grid-row:1;
}
body.visitor-visa-page .visa-detail-visual img {
    width:100%; height:100%; object-fit:cover; object-position:center 43%;
}
body.visitor-visa-page .visa-detail-hero-copy {
    display:grid; padding:54px 58px; grid-column:1; grid-row:2;
    grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr);
    column-gap:76px; background:var(--ve-visitor-soft);
}
body.visitor-visa-page .visa-detail-eyebrow { grid-column:1; color:var(--ve-visitor); }
body.visitor-visa-page .visa-detail-hero h1 {
    max-width:760px; margin:26px 0 0; grid-column:1; grid-row:2/span 3;
    color:var(--ve-ink); font-size:clamp(54px,5vw,76px); line-height:.96; letter-spacing:-.055em;
}
body.visitor-visa-page .visa-detail-hero h1 em {
    display:block; margin-top:8px; color:var(--ve-visitor); font-family:Georgia,serif; font-weight:500;
}
body.visitor-visa-page .visa-detail-hero-copy>p {
    margin:0; grid-column:2; grid-row:1; color:var(--ve-muted); font-size:16px; line-height:1.75;
}
body.visitor-visa-page .visa-detail-actions {
    margin-top:24px; grid-column:2; grid-row:2;
}
body.visitor-visa-page .visa-detail-facts {
    margin-top:30px; padding-top:20px; grid-column:2; grid-row:3; border-top:1px solid #BED1F9;
}
body.visitor-visa-page .visa-detail-facts div,
body.visitor-visa-page .visa-detail-facts div:first-child,
body.visitor-visa-page .visa-detail-facts div:last-child {
    padding:0 14px; border-color:#BED1F9;
}
body.visitor-visa-page .visa-detail-facts div:first-child { padding-left:0; }
body.visitor-visa-page .visa-detail-facts div:before { background:var(--ve-sand); }
body.visitor-visa-page .visa-detail-facts strong { color:var(--ve-visitor); }
body.visitor-visa-page .visa-detail-facts span { font-size:13px; }

body.visitor-visa-page .partner-process-section { padding:64px 0 74px!important; }
body.visitor-visa-page .partner-process-shell {
    overflow:hidden; border:1px solid var(--ve-line); border-radius:28px; background:#fff;
}
body.visitor-visa-page .partner-process-heading {
    display:grid; grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);
}
body.visitor-visa-page .partner-process-title { padding:54px 52px; background:var(--ve-visitor); }
body.visitor-visa-page .partner-process-title .partner-section-label { color:#F1F5FE; }
body.visitor-visa-page .partner-process-title h2 {
    margin:24px 0 0; color:#fff; font-size:clamp(42px,3.9vw,58px); line-height:1.02;
}
body.visitor-visa-page .partner-process-title h2 em { color:#F1F5FE; }
body.visitor-visa-page .partner-process-summary {
    display:flex; padding:52px; flex-direction:column; justify-content:center; background:var(--ve-visitor-soft);
}
body.visitor-visa-page .partner-process-summary .partner-section-label { color:var(--ve-visitor); }
body.visitor-visa-page .partner-process-summary p {
    margin:22px 0 0; color:var(--ve-muted); font-size:15px; line-height:1.75;
}
body.visitor-visa-page .partner-roadmap-list {
    display:grid; padding:0; grid-template-columns:repeat(3,minmax(0,1fr));
    grid-template-rows:auto auto; gap:0; border-top:1px solid var(--ve-line);
}
body.visitor-visa-page .partner-roadmap-list article {
    position:relative; display:grid; min-height:185px; padding:30px 30px 30px 34px;
    grid-template-columns:42px minmax(0,1fr); gap:15px; border:0;
    border-right:1px solid var(--ve-line); border-bottom:1px solid var(--ve-line); background:#fff;
}
body.visitor-visa-page .partner-roadmap-list article:nth-child(1) { grid-column:1; grid-row:1; padding-top:76px; }
body.visitor-visa-page .partner-roadmap-list article:nth-child(2) { grid-column:1; grid-row:2; }
body.visitor-visa-page .partner-roadmap-list article:nth-child(3) { grid-column:2; grid-row:1; padding-top:76px; }
body.visitor-visa-page .partner-roadmap-list article:nth-child(4) { grid-column:2; grid-row:2; }
body.visitor-visa-page .partner-roadmap-list article:nth-child(5) {
    grid-column:3; grid-row:1; padding-top:76px; border-right:0;
}
body.visitor-visa-page .partner-roadmap-list article:nth-child(6) {
    grid-column:3; grid-row:2; border-right:0;
}
body.visitor-visa-page .partner-roadmap-list article:nth-child(1):before,
body.visitor-visa-page .partner-roadmap-list article:nth-child(3):before,
body.visitor-visa-page .partner-roadmap-list article:nth-child(5):before {
    position:absolute; top:28px; left:34px; color:var(--ve-visitor);
    font-size:10px; font-weight:850; letter-spacing:.16em; text-transform:uppercase;
}
body.visitor-visa-page .partner-roadmap-list article:nth-child(1):before { content:"Plan"; }
body.visitor-visa-page .partner-roadmap-list article:nth-child(3):before { content:"Prove"; }
body.visitor-visa-page .partner-roadmap-list article:nth-child(5):before { content:"Prepare"; }
body.visitor-visa-page .partner-roadmap-list article>span {
    display:block; width:auto; height:auto; margin:3px 0 0;
    border-radius:0; color:var(--ve-visitor); background:transparent; font-size:10px;
}
body.visitor-visa-page .partner-roadmap-list h3 { margin:0 0 9px; font-size:18px; }
body.visitor-visa-page .partner-roadmap-list p { color:var(--ve-muted); font-size:14px; line-height:1.62; }
body.visitor-visa-page .partner-process-note {
    margin:0; padding:19px 34px; border:0; border-radius:0;
    background:var(--ve-visitor-soft); font-size:12px;
}

body.visitor-visa-page .partner-support-panel {
    display:grid; margin-top:34px; overflow:hidden;
    grid-template-columns:minmax(360px,.86fr) minmax(0,1.14fr);
    border:1px solid var(--ve-line); border-radius:28px; background:#fff;
}
body.visitor-visa-page .partner-support-intro {
    display:flex; padding:56px 50px; flex-direction:column; justify-content:center;
    color:var(--ve-ink); background:#F8F1E2;
}
body.visitor-visa-page .partner-support-intro .partner-section-label { color:var(--ve-visitor); }
body.visitor-visa-page .partner-support-intro h2 {
    margin:24px 0 0; color:var(--ve-ink); font-size:clamp(40px,3.6vw,55px); line-height:1.02;
}
body.visitor-visa-page .partner-support-intro h2 em { color:var(--ve-visitor); }
body.visitor-visa-page .partner-support-intro p {
    margin:26px 0 30px; color:var(--ve-muted); font-size:15px; line-height:1.72;
}
body.visitor-visa-page .partner-text-link { color:var(--ve-ink); font-size:13px; }
body.visitor-visa-page .partner-text-link span { background:var(--ve-visitor); }
body.visitor-visa-page .partner-support-list {
    display:grid; padding:0; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; background:var(--ve-line);
}
body.visitor-visa-page .partner-support-list article {
    display:grid; min-height:185px; padding:30px;
    grid-template-columns:36px 1fr; gap:14px; border:0; background:#fff;
}
body.visitor-visa-page .partner-support-list article>span { color:var(--ve-visitor); font-size:11px; }
body.visitor-visa-page .partner-support-list h3 { margin:0 0 9px; font-size:18px; }
body.visitor-visa-page .partner-support-list p { color:var(--ve-muted); font-size:14px; line-height:1.62; }

body.visitor-visa-page .partner-trust-section { padding:72px 0!important; }
body.visitor-visa-page .partner-trust-grid {
    display:grid; overflow:hidden; grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);
    gap:0; border:1px solid #0E368D; border-radius:26px; background:var(--ve-visitor);
}
body.visitor-visa-page .partner-trust-heading { padding:52px; }
body.visitor-visa-page .partner-trust-heading .partner-section-label { color:#F1F5FE; }
body.visitor-visa-page .partner-trust-heading h2 {
    margin-top:22px; color:#fff; font-size:clamp(40px,3.7vw,56px);
}
body.visitor-visa-page .partner-trust-heading h2 em { color:#F1F5FE; }
body.visitor-visa-page .partner-trust-heading>p {
    margin-top:22px; color:rgba(255,255,255,.76); font-size:15px; line-height:1.7;
}
body.visitor-visa-page .partner-trust-points {
    display:block; border:0; border-left:1px solid rgba(255,255,255,.2);
}
body.visitor-visa-page .partner-trust-points article {
    display:grid; min-height:0; padding:28px 34px;
    grid-template-columns:44px 180px 1fr; gap:18px;
    border:0; border-bottom:1px solid rgba(255,255,255,.2);
}
body.visitor-visa-page .partner-trust-points article:last-child { border-bottom:0; }
body.visitor-visa-page .partner-trust-points strong { margin:3px 0 0; color:#F1F5FE; }
body.visitor-visa-page .partner-trust-points h3 { margin:0; color:#fff; font-size:18px; }
body.visitor-visa-page .partner-trust-points p {
    margin:0; color:rgba(255,255,255,.72); font-size:14px; line-height:1.6;
}

body.visitor-visa-page #partner-destinations .row:first-child>[class*="col-"] {
    flex:0 0 100%; max-width:100%;
}
body.visitor-visa-page #partner-destinations .section-title { margin-bottom:38px; text-align:left; }
body.visitor-visa-page #partner-destinations .title-header {
    display:grid; grid-template-columns:minmax(0,1fr) minmax(360px,.8fr);
    gap:70px; align-items:end;
}
body.visitor-visa-page #partner-destinations .title-header h3 {
    grid-column:1/-1; margin:0 0 -48px;
}
body.visitor-visa-page #partner-destinations .title-header h2 {
    margin:0; font-size:clamp(42px,3.8vw,58px); line-height:1.02;
}
body.visitor-visa-page #partner-destinations .partner-destination-intro {
    margin:0; font-size:15px; line-height:1.7;
}
body.visitor-visa-page #partner-destinations .row.mt_15 {
    display:grid; margin:0; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px;
}
body.visitor-visa-page #partner-destinations .row.mt_15>[class*="col-"] {
    width:auto; max-width:none; padding:0;
}
body.visitor-visa-page #partner-destinations .featured-imagebox {
    height:100%; margin:0; overflow:hidden; border:1px solid var(--ve-line);
    border-radius:14px; background:#fff;
}
body.visitor-visa-page #partner-destinations .featured-imagebox-wrapper {
    display:grid; height:100%; grid-template-columns:170px 1fr;
}
body.visitor-visa-page #partner-destinations .featured-thumbnail { height:128px; }
body.visitor-visa-page #partner-destinations .featured-thumbnail img {
    width:100%; height:100%; object-fit:cover;
}
body.visitor-visa-page #partner-destinations .featured-content {
    position:static; display:flex; padding:22px; align-items:center; background:#fff;
}
body.visitor-visa-page #partner-destinations .featured-title h3,
body.visitor-visa-page #partner-destinations .featured-title h3 a {
    margin:0; color:var(--ve-ink); font-size:18px;
}

/* Shared final conversation panel: calm, functional and clearly separated. */
body.visa-detail-page .contact-us-contact-form-section { padding:70px 0 80px!important; }
body.visa-detail-page .contact-us-contact-form-section>.container>.row {
    overflow:hidden; border:1px solid var(--ve-line); border-radius:26px; background:#fff;
}
body.visa-detail-page .contact-us-contact-form-section .spacing-25 {
    padding:48px 46px!important; background:var(--ve-wash)!important;
}
body.parent-visa-page .contact-us-contact-form-section .spacing-25 {
    background:var(--ve-parent-soft)!important;
}
body.visitor-visa-page .contact-us-contact-form-section .spacing-25 {
    background:var(--ve-visitor-soft)!important;
}
body.visa-detail-page .contact-us-contact-form-section .section-title h2 {
    font-size:clamp(40px,3.8vw,56px); line-height:1.02;
}
body.visa-detail-page .student-enquiry-copy,
body.visa-detail-page .partner-enquiry-copy {
    max-width:600px; font-size:15px; line-height:1.7;
}
body.visa-detail-page .contact_form input,
body.visa-detail-page .contact_form select,
body.visa-detail-page .contact_form textarea {
    border:1px solid #F1F5FE!important; border-radius:8px!important;
    color:var(--ve-ink)!important; background:rgba(255,255,255,.78)!important; font-size:14px;
}
body.visa-detail-page .contact_form input,
body.visa-detail-page .contact_form select { height:56px!important; }
body.visa-detail-page .contact_form textarea { min-height:128px; }
body.visa-detail-page .contact-us-contact-form-section .g-map { border-radius:0; }
body.visa-detail-page .student-map-card,
body.visa-detail-page .partner-map-card {
    border:1px solid #CFD5E0; border-radius:10px; background:rgba(255,255,255,.96); backdrop-filter:none;
}

@media (max-width:1199px) {
    body.visa-detail-page .visa-detail-hero>.container,
    body.visa-detail-page .partner-process-section>.container,
    body.visa-detail-page .student-trust-section>.container,
    body.visa-detail-page .partner-trust-section>.container,
    body.visa-detail-page .parent-country-section>.container,
    body.visa-detail-page .home01-immigration-and-services-section>.container,
    body.visa-detail-page .contact-us-contact-form-section>.container {
        width:min(calc(100% - 36px),1120px);
    }
    body.student-visa-page .student-support-list article>div { grid-template-columns:1fr; gap:7px; }
    body.student-visa-page .student-trust-points article { grid-template-columns:42px 1fr; }
    body.student-visa-page .student-trust-points p { grid-column:2; }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-hero-grid {
        grid-template-columns:minmax(0,1fr) minmax(390px,.9fr);
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-hero-copy {
        padding:58px 44px 48px;
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-roadmap-list article {
        min-height:275px; padding:34px 26px;
    }
    body.parent-visa-page .partner-trust-points article,
    body.visitor-visa-page .partner-trust-points article { grid-template-columns:42px 1fr; }
    body.parent-visa-page .partner-trust-points p,
    body.visitor-visa-page .partner-trust-points p { grid-column:2; }
    body.visitor-visa-page .visa-detail-hero-copy { column-gap:50px; }
    body.visitor-visa-page .partner-roadmap-list article {
        min-height:210px; padding-right:24px; padding-left:26px;
    }
}

@media (max-width:991px) {
    body.student-visa-page .student-support-panel,
    body.student-visa-page .student-trust-grid,
    body.parent-visa-page .partner-support-panel,
    body.parent-visa-page .partner-trust-grid,
    body.visitor-visa-page .partner-support-panel,
    body.visitor-visa-page .partner-trust-grid { grid-template-columns:1fr; }
    body.student-visa-page .student-support-intro { grid-column:1; grid-row:1; }
    body.student-visa-page .student-support-list { grid-column:1; grid-row:2; }
    body.student-visa-page #study-destinations .title-header {
        grid-template-columns:1fr 1fr; gap:18px 36px;
    }
    body.student-visa-page #study-destinations .title-header h3 { grid-column:1/-1; }
    body.student-visa-page #study-destinations .student-destination-intro { align-self:end; }
    body.student-visa-page #study-destinations .row.mt_15 { grid-template-columns:repeat(2,1fr); }

    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-hero-grid {
        min-height:0; grid-template-columns:1fr;
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-visual {
        min-height:510px; grid-column:1; grid-row:1;
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-hero-copy {
        grid-column:1; grid-row:2;
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-heading,
    body.parent-visa-page .partner-process-heading,
    body.visitor-visa-page .partner-process-heading { grid-template-columns:1fr; }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-roadmap-list,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-list {
        grid-template-columns:repeat(2,1fr);
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-intro,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-heading {
        grid-template-columns:1fr; gap:0;
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-text-link {
        grid-column:1;
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .row.mt_15 {
        grid-template-columns:repeat(2,1fr);
    }

    body.parent-visa-page .visa-detail-hero-grid { min-height:0; grid-template-columns:1fr; }
    body.parent-visa-page .visa-detail-visual { min-height:500px; }
    body.parent-visa-page .parent-country-heading { grid-template-columns:1fr; gap:16px; }
    body.parent-visa-page .parent-country-heading .partner-section-label { margin:0 0 4px; }
    body.parent-visa-page .parent-country-grid { grid-template-columns:1fr; }

    body.visitor-visa-page .visa-detail-hero-grid { grid-template-rows:470px auto; }
    body.visitor-visa-page .visa-detail-hero-copy { grid-template-columns:1fr; }
    body.visitor-visa-page .visa-detail-hero h1,
    body.visitor-visa-page .visa-detail-hero-copy>p,
    body.visitor-visa-page .visa-detail-actions,
    body.visitor-visa-page .visa-detail-facts { grid-column:1; grid-row:auto; }
    body.visitor-visa-page .visa-detail-hero-copy>p { margin-top:24px; }
    body.visitor-visa-page .partner-roadmap-list { grid-template-columns:repeat(2,1fr); }
    body.visitor-visa-page .partner-roadmap-list article:nth-child(n) {
        grid-column:auto; grid-row:auto; padding-top:66px; border-right:1px solid var(--ve-line);
    }
    body.visitor-visa-page .partner-roadmap-list article:nth-child(odd):before { display:block; }
    body.visitor-visa-page .partner-roadmap-list article:nth-child(2):before,
    body.visitor-visa-page .partner-roadmap-list article:nth-child(4):before,
    body.visitor-visa-page .partner-roadmap-list article:nth-child(6):before { display:none; }
    body.visitor-visa-page #partner-destinations .title-header {
        grid-template-columns:1fr; gap:18px;
    }
    body.visitor-visa-page #partner-destinations .title-header h3 { margin:0; }
}

@media (max-width:767px) {
    body.visa-detail-page { padding-bottom:0!important; }
    body.visa-detail-page .shrey-mobile-nav { display:none!important; }
    body.visa-detail-page .visa-detail-hero>.container,
    body.visa-detail-page .partner-process-section>.container,
    body.visa-detail-page .student-trust-section>.container,
    body.visa-detail-page .partner-trust-section>.container,
    body.visa-detail-page .parent-country-section>.container,
    body.visa-detail-page .home01-immigration-and-services-section>.container,
    body.visa-detail-page .contact-us-contact-form-section>.container { width:calc(100% - 24px); }

    body.student-visa-page .student-support-panel,
    body.student-visa-page .student-trust-grid,
    body.spouse-visa-page .partner-process-shell,
    body.spouse-visa-page .partner-support-panel,
    body.spouse-visa-page .partner-trust-grid,
    body.visa-detail-page .contact-us-contact-form-section>.container>.row { border-radius:20px; }
    body.student-visa-page .student-support-intro,
    body.student-visa-page .student-trust-heading,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-title,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-summary,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-intro,
    body.parent-visa-page .partner-process-title,
    body.parent-visa-page .partner-process-summary,
    body.parent-visa-page .partner-support-intro,
    body.parent-visa-page .partner-trust-heading,
    body.visitor-visa-page .partner-process-title,
    body.visitor-visa-page .partner-process-summary,
    body.visitor-visa-page .partner-support-intro,
    body.visitor-visa-page .partner-trust-heading { padding:40px 30px; }

    body.student-visa-page .student-support-list { padding:10px 28px; }
    body.student-visa-page .student-support-list article>div { grid-template-columns:1fr; }
    body.student-visa-page .student-trust-points article { padding:26px 28px; }
    body.student-visa-page #study-destinations .title-header { grid-template-columns:1fr; }
    body.student-visa-page #study-destinations .title-header h3 { grid-column:auto; }

    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-hero,
    body.parent-visa-page .visa-detail-hero,
    body.visitor-visa-page .visa-detail-hero { padding:32px 0 46px; }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-hero-grid,
    body.parent-visa-page .visa-detail-hero-grid,
    body.visitor-visa-page .visa-detail-hero-grid { border-radius:20px; }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-visual,
    body.parent-visa-page .visa-detail-visual,
    body.visitor-visa-page .visa-detail-visual { min-height:390px; }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-hero-copy,
    body.parent-visa-page .visa-detail-hero-copy,
    body.visitor-visa-page .visa-detail-hero-copy { padding:40px 30px; }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-hero h1,
    body.parent-visa-page .visa-detail-hero h1,
    body.visitor-visa-page .visa-detail-hero h1 { font-size:clamp(44px,12vw,58px); }

    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-roadmap-list,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-list,
    body.parent-visa-page .partner-roadmap-list,
    body.parent-visa-page .partner-support-list,
    body.visitor-visa-page .partner-roadmap-list,
    body.visitor-visa-page .partner-support-list { grid-template-columns:1fr; }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-roadmap-list article,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-list article,
    body.parent-visa-page .partner-roadmap-list article,
    body.parent-visa-page .partner-support-list article,
    body.visitor-visa-page .partner-roadmap-list article,
    body.visitor-visa-page .partner-support-list article { min-height:0; }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-points {
        grid-template-columns:1fr;
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-points article {
        min-height:0; border-right:0; border-bottom:1px solid var(--ve-line);
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .row.mt_15>[class*="col-"]:first-child {
        grid-column:auto; grid-row:auto;
    }
    body.visitor-visa-page .visa-detail-hero-grid { grid-template-rows:390px auto; }
    body.visitor-visa-page .partner-roadmap-list article:nth-child(n) { padding-top:62px; }
    body.visitor-visa-page #partner-destinations .row.mt_15 { grid-template-columns:1fr; }

    body.visa-detail-page .contact-us-contact-form-section { padding:50px 0 58px!important; }
    body.visa-detail-page .contact-us-contact-form-section .spacing-25 { padding:36px 28px!important; }
}

@media (max-width:575px) {
    body.visa-detail-page .visa-detail-hero>.container,
    body.visa-detail-page .partner-process-section>.container,
    body.visa-detail-page .student-trust-section>.container,
    body.visa-detail-page .partner-trust-section>.container,
    body.visa-detail-page .parent-country-section>.container,
    body.visa-detail-page .home01-immigration-and-services-section>.container,
    body.visa-detail-page .contact-us-contact-form-section>.container {
        width:calc(100% - 20px); padding-right:0; padding-left:0;
    }
    body.visa-detail-page .student-section-label,
    body.visa-detail-page .partner-section-label,
    body.visa-detail-page .visa-detail-eyebrow { font-size:9px; }
    body.visa-detail-page .visa-primary-action,
    body.visa-detail-page .visa-secondary-action { min-height:46px; font-size:11px; }

    body.student-visa-page .student-support-intro,
    body.student-visa-page .student-trust-heading { padding:34px 24px; }
    body.student-visa-page .student-support-intro h2,
    body.student-visa-page .student-trust-heading h2 { margin-top:18px; font-size:36px; }
    body.student-visa-page .student-support-intro p,
    body.student-visa-page .student-trust-heading>p { margin-top:18px; font-size:14px; }
    body.student-visa-page .student-support-list { padding:6px 20px; }
    body.student-visa-page .student-support-list article {
        padding:22px 0; grid-template-columns:34px 1fr; gap:12px;
    }
    body.student-visa-page .student-support-list h3 { font-size:16px; }
    body.student-visa-page .student-support-list p { font-size:13px; }
    body.student-visa-page .student-trust-points article {
        padding:23px 22px; grid-template-columns:34px 1fr; gap:12px;
    }
    body.student-visa-page .student-trust-points h3 { font-size:16px; }
    body.student-visa-page .student-trust-points p { font-size:13px; }
    body.student-visa-page #study-destinations .row.mt_15 { grid-template-columns:1fr; }
    body.student-visa-page #study-destinations .featured-thumbnail { height:240px; }

    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-visual,
    body.parent-visa-page .visa-detail-visual,
    body.visitor-visa-page .visa-detail-visual { min-height:310px; }
    body.visitor-visa-page .visa-detail-hero-grid { grid-template-rows:310px auto; }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-hero-copy,
    body.parent-visa-page .visa-detail-hero-copy,
    body.visitor-visa-page .visa-detail-hero-copy { padding:34px 24px; }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-hero h1,
    body.parent-visa-page .visa-detail-hero h1,
    body.visitor-visa-page .visa-detail-hero h1 { margin-top:22px; font-size:42px; }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-hero-copy>p,
    body.parent-visa-page .visa-detail-hero-copy>p,
    body.visitor-visa-page .visa-detail-hero-copy>p { font-size:14px; line-height:1.66; }
    body.parent-visa-page .visa-detail-facts,
    body.visitor-visa-page .visa-detail-facts { grid-template-columns:1fr; }
    body.parent-visa-page .visa-detail-facts div,
    body.parent-visa-page .visa-detail-facts div:first-child,
    body.parent-visa-page .visa-detail-facts div:last-child {
        padding:14px; border:1px solid rgba(255,255,255,.18);
    }
    body.visitor-visa-page .visa-detail-facts div,
    body.visitor-visa-page .visa-detail-facts div:first-child,
    body.visitor-visa-page .visa-detail-facts div:last-child {
        padding:14px; border:1px solid #BED1F9;
    }

    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-title,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-summary,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-intro,
    body.parent-visa-page .partner-process-title,
    body.parent-visa-page .partner-process-summary,
    body.parent-visa-page .partner-support-intro,
    body.parent-visa-page .partner-trust-heading,
    body.visitor-visa-page .partner-process-title,
    body.visitor-visa-page .partner-process-summary,
    body.visitor-visa-page .partner-support-intro,
    body.visitor-visa-page .partner-trust-heading { padding:34px 24px; }
    body.spouse-visa-page .partner-process-title h2,
    body.spouse-visa-page .partner-support-intro h2,
    body.spouse-visa-page .partner-trust-heading h2 { font-size:35px; }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-roadmap-list article,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-list article,
    body.parent-visa-page .partner-roadmap-list article,
    body.parent-visa-page .partner-support-list article,
    body.visitor-visa-page .partner-roadmap-list article,
    body.visitor-visa-page .partner-support-list article { padding:25px 22px; }
    body.visitor-visa-page .partner-roadmap-list article:nth-child(n) { padding-top:58px; }
    body.spouse-visa-page .partner-roadmap-list h3,
    body.spouse-visa-page .partner-support-list h3 { font-size:16px; }
    body.spouse-visa-page .partner-roadmap-list p,
    body.spouse-visa-page .partner-support-list p,
    body.spouse-visa-page .partner-trust-points p { font-size:13px; }
    body.parent-visa-page .partner-trust-points article,
    body.visitor-visa-page .partner-trust-points article {
        padding:24px 22px; grid-template-columns:32px 1fr; gap:11px;
    }
    body.parent-visa-page .parent-country-card { padding:28px 23px; }
    body.parent-visa-page .parent-country-card-top { margin-bottom:28px; }
    body.parent-visa-page .parent-country-card p,
    body.parent-visa-page .parent-country-card li { font-size:13px; }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .row.mt_15 {
        grid-template-columns:1fr; grid-auto-rows:250px;
    }
    body.visitor-visa-page #partner-destinations .featured-imagebox-wrapper {
        grid-template-columns:120px 1fr;
    }
    body.visitor-visa-page #partner-destinations .featured-thumbnail { height:112px; }
    body.visa-detail-page .contact-us-contact-form-section .spacing-25 { padding:32px 22px!important; }
    body.visa-detail-page .contact-us-contact-form-section .section-title h2 { font-size:35px; }
    body.visa-detail-page .student-enquiry-copy,
    body.visa-detail-page .partner-enquiry-copy { font-size:13px; }
}

/* Visitor page: calm travel editorial, compact hierarchy and one aligned rail. */
body.visitor-visa-page {
    --visitor-rail-width:1280px;
    --visitor-rail-gutter:48px;
    --visitor-deep:#0E368D;
    --visitor-soft:#E9EFFD;
    --visitor-warm:#F8F1E2;
}
body.visitor-visa-page .prt-titlebar-wrapper-inner>.container,
body.visitor-visa-page .visa-detail-switcher>.container,
body.visitor-visa-page .visa-detail-hero>.container,
body.visitor-visa-page .partner-process-section>.container,
body.visitor-visa-page .partner-trust-section>.container,
body.visitor-visa-page #partner-destinations>.container,
body.visitor-visa-page .contact-us-contact-form-section>.container {
    width:min(var(--visitor-rail-width),calc(100% - var(--visitor-rail-gutter)))!important;
    max-width:var(--visitor-rail-width)!important;
    margin-right:auto!important;
    margin-left:auto!important;
    padding-right:0!important;
    padding-left:0!important;
}

body.visitor-visa-page .visa-detail-hero { padding:24px 0 68px; }
body.visitor-visa-page .visa-detail-hero-grid {
    display:grid;
    min-height:600px;
    grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);
    grid-template-rows:1fr;
    overflow:hidden;
    border:1px solid #BED1F9;
    border-radius:20px;
    background:var(--visitor-soft);
}
body.visitor-visa-page .visa-detail-hero-copy {
    display:block;
    padding:56px 58px 42px;
    grid-column:1;
    grid-row:1;
    background:var(--visitor-soft);
}
body.visitor-visa-page .visa-detail-hero-copy::before,
body.visitor-visa-page .visa-detail-eyebrow { display:none!important; }
body.visitor-visa-page .visa-detail-hero h1 {
    max-width:610px;
    margin:0 0 24px;
    color:var(--ve-ink);
    font-size:clamp(50px,4.35vw,66px);
    line-height:.98;
    letter-spacing:-.052em;
}
body.visitor-visa-page .visa-detail-hero h1 em {
    display:block;
    margin-top:8px;
    color:var(--visitor-deep);
    font-size:.92em;
}
body.visitor-visa-page .visa-detail-hero-copy>p {
    max-width:570px;
    margin:0;
    color:var(--ve-muted);
    font-size:15px;
    line-height:1.7;
}
body.visitor-visa-page .visa-detail-actions {
    margin-top:28px;
}
body.visitor-visa-page .visa-detail-actions a { min-height:48px; }
body.visitor-visa-page .visa-primary-action { background:var(--visitor-deep); }
body.visitor-visa-page .visa-primary-action span { color:#BED1F9; }
body.visitor-visa-page .visa-detail-facts {
    width:100%;
    margin:38px 0 0;
    padding:20px 0 0;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
    border-top:1px solid #CFD5E0;
}
body.visitor-visa-page .visa-detail-facts div,
body.visitor-visa-page .visa-detail-facts div:first-child,
body.visitor-visa-page .visa-detail-facts div:last-child {
    display:block;
    min-height:0;
    padding:0;
    border:0;
    background:transparent!important;
}
body.visitor-visa-page .visa-detail-facts div::before { display:none; }
body.visitor-visa-page .visa-detail-facts strong {
    display:block;
    margin:0 0 7px;
    color:var(--visitor-deep);
}
body.visitor-visa-page .visa-detail-facts span {
    display:block;
    font-size:11px;
    line-height:1.45;
}
body.visitor-visa-page .visa-detail-visual {
    min-height:600px;
    grid-column:2;
    grid-row:1;
    border-left:1px solid #CFD5E0;
}
body.visitor-visa-page .visa-detail-visual img {
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    transform:none!important;
}

body.visitor-visa-page .partner-process-section {
    padding:64px 0 72px!important;
    background:#fff;
}
body.visitor-visa-page .partner-process-shell,
body.visitor-visa-page .partner-support-panel,
body.visitor-visa-page .partner-trust-grid {
    overflow:hidden;
    border:1px solid var(--ve-line);
    border-radius:20px;
    box-shadow:none!important;
}
body.visitor-visa-page .partner-process-heading {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
}
body.visitor-visa-page .partner-process-title,
body.visitor-visa-page .partner-process-summary { padding:44px 46px; }
body.visitor-visa-page .partner-process-title { background:var(--visitor-deep); }
body.visitor-visa-page .partner-process-title h2 {
    max-width:560px;
    margin:18px 0 0;
    color:#fff;
    font-size:clamp(38px,3.2vw,48px);
    line-height:1.03;
}
body.visitor-visa-page .partner-process-title h2 em,
body.visitor-visa-page .partner-process-title .partner-section-label { color:#BED1F9; }
body.visitor-visa-page .partner-process-summary { background:var(--visitor-soft); }
body.visitor-visa-page .partner-process-summary .partner-section-label { color:var(--visitor-deep); }
body.visitor-visa-page .partner-process-summary p {
    margin:18px 0 0;
    color:var(--ve-muted);
    font-size:14px;
    line-height:1.7;
}
body.visitor-visa-page .partner-roadmap-list,
body.visitor-visa-page .partner-support-list {
    display:grid;
    padding:0;
    grid-template-columns:repeat(3,minmax(0,1fr));
    grid-template-rows:auto;
    gap:0;
    border-top:1px solid var(--ve-line);
    background:#fff;
}
body.visitor-visa-page .partner-roadmap-list article:nth-child(n),
body.visitor-visa-page .partner-support-list article {
    position:relative;
    display:block;
    min-height:190px;
    padding:30px 28px;
    grid-column:auto;
    grid-row:auto;
    border:0;
    border-right:1px solid var(--ve-line);
    border-bottom:1px solid var(--ve-line);
    background:#fff;
}
body.visitor-visa-page .partner-roadmap-list article:nth-child(3n),
body.visitor-visa-page .partner-support-list article:nth-child(3n) { border-right:0; }
body.visitor-visa-page .partner-roadmap-list article:nth-last-child(-n+3),
body.visitor-visa-page .partner-support-list article:nth-last-child(-n+3) { border-bottom:0; }
body.visitor-visa-page .partner-roadmap-list article:nth-child(3n+1) { background:#FAFBFD; }
body.visitor-visa-page .partner-roadmap-list article::before { display:none!important; }
body.visitor-visa-page .partner-roadmap-list article>span,
body.visitor-visa-page .partner-support-list article>span {
    display:block;
    width:auto;
    height:auto;
    margin:0 0 28px;
    color:var(--visitor-deep);
    background:transparent;
    border:0;
    font-size:10px;
    line-height:1;
    letter-spacing:.13em;
}
body.visitor-visa-page .partner-roadmap-list h3,
body.visitor-visa-page .partner-support-list h3 {
    margin:0 0 9px;
    color:var(--ve-ink);
    font-size:17px;
    line-height:1.35;
}
body.visitor-visa-page .partner-roadmap-list p,
body.visitor-visa-page .partner-support-list p {
    margin:0;
    color:var(--ve-muted);
    font-size:13px;
    line-height:1.62;
}
body.visitor-visa-page .partner-process-note {
    margin:0;
    padding:15px 28px;
    border:0;
    border-top:1px solid var(--ve-line);
    border-radius:0;
    background:var(--visitor-soft);
    font-size:10px;
}

body.visitor-visa-page .partner-support-panel {
    display:block;
    margin-top:32px;
    background:#fff;
}
body.visitor-visa-page .partner-support-intro,
body.visitor-visa-page .partner-trust-heading {
    display:grid;
    padding:44px 46px;
    grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);
    gap:14px 64px;
    align-items:end;
    color:var(--ve-ink);
    background:var(--visitor-warm);
}
body.visitor-visa-page .partner-support-intro .partner-section-label,
body.visitor-visa-page .partner-trust-heading .partner-section-label {
    grid-column:1/-1;
    color:var(--visitor-deep);
}
body.visitor-visa-page .partner-support-intro h2,
body.visitor-visa-page .partner-trust-heading h2 {
    margin:0;
    color:var(--ve-ink);
    font-size:clamp(38px,3.2vw,48px);
    line-height:1.03;
}
body.visitor-visa-page .partner-support-intro h2 em,
body.visitor-visa-page .partner-trust-heading h2 em { color:var(--visitor-deep); }
body.visitor-visa-page .partner-support-intro p,
body.visitor-visa-page .partner-trust-heading>p {
    margin:0;
    color:var(--ve-muted);
    font-size:14px;
    line-height:1.7;
}
body.visitor-visa-page .partner-text-link {
    grid-column:2;
    color:var(--ve-ink);
}
body.visitor-visa-page .partner-text-link span {
    color:#fff;
    background:var(--visitor-deep);
}

body.visitor-visa-page .partner-trust-section { padding:0 0 72px!important; }
body.visitor-visa-page .partner-trust-grid {
    display:block;
    background:#fff;
}
body.visitor-visa-page .partner-trust-heading { background:var(--visitor-soft); }
body.visitor-visa-page .partner-trust-points {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    border:0;
    border-top:1px solid var(--ve-line);
}
body.visitor-visa-page .partner-trust-points article {
    display:block;
    min-height:180px;
    padding:28px;
    border:0;
    border-right:1px solid var(--ve-line);
    background:#fff;
}
body.visitor-visa-page .partner-trust-points article:last-child { border-right:0; }
body.visitor-visa-page .partner-trust-points strong {
    display:block;
    margin:0 0 24px;
    color:var(--visitor-deep);
}
body.visitor-visa-page .partner-trust-points h3 {
    margin:0 0 9px;
    color:var(--ve-ink);
    font-size:17px;
}
body.visitor-visa-page .partner-trust-points p {
    margin:0;
    color:var(--ve-muted);
    font-size:13px;
    line-height:1.62;
}

body.visitor-visa-page #partner-destinations {
    padding:64px 0 72px!important;
    background:#fff!important;
}
body.visitor-visa-page #partner-destinations>.container>.row:first-child>[class*="col-"] {
    width:100%;
    max-width:none;
    margin:0!important;
    padding:0;
}
body.visitor-visa-page #partner-destinations .section-title {
    max-width:none;
    margin:0 0 34px;
    text-align:left;
}
body.visitor-visa-page #partner-destinations .title-header {
    display:grid;
    grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);
    gap:12px 72px;
    align-items:end;
}
body.visitor-visa-page #partner-destinations .title-header h3 {
    grid-column:1;
    margin:0;
    color:var(--visitor-deep);
    font-size:10px;
    letter-spacing:.16em;
}
body.visitor-visa-page #partner-destinations .title-header h2 {
    grid-column:1;
    max-width:700px;
    margin:0;
    color:var(--ve-ink);
    font-size:clamp(38px,3.4vw,50px);
    line-height:1.03;
    letter-spacing:-.043em;
}
body.visitor-visa-page #partner-destinations .title-header h2 br { display:none; }
body.visitor-visa-page #partner-destinations .partner-destination-intro {
    grid-column:2;
    grid-row:1/3;
    max-width:480px;
    margin:0;
    color:var(--ve-muted);
    font-size:14px;
    line-height:1.7;
}
body.visitor-visa-page #partner-destinations .row.mt_15 {
    display:grid;
    margin:0;
    overflow:visible;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:16px;
}
body.visitor-visa-page #partner-destinations .row.mt_15>[class*="col-"] {
    width:auto;
    max-width:none;
    padding:0;
}
body.visitor-visa-page #partner-destinations .featured-imagebox-portfolio.style1 {
    height:auto!important;
    margin:0;
    overflow:hidden;
    border:1px solid var(--ve-line);
    border-radius:14px;
    background:#fff;
    transform:none!important;
}
body.visitor-visa-page #partner-destinations .featured-imagebox-wrapper {
    position:relative;
    display:grid;
    height:auto;
    grid-template-columns:1fr;
    grid-template-rows:180px auto;
}
body.visitor-visa-page #partner-destinations .featured-thumbnail {
    position:relative!important;
    inset:auto!important;
    display:block!important;
    width:100%!important;
    height:180px!important;
    margin:0;
    overflow:hidden;
}
body.visitor-visa-page #partner-destinations .featured-thumbnail::after { display:none!important; }
body.visitor-visa-page #partner-destinations .featured-thumbnail img {
    width:100%;
    height:100%;
    object-fit:cover;
    filter:saturate(.84) contrast(.96);
    transform:none!important;
}
body.visitor-visa-page #partner-destinations .featured-content {
    position:static!important;
    inset:auto!important;
    display:block!important;
    padding:17px 19px 18px!important;
    visibility:visible!important;
    opacity:1!important;
    transform:none!important;
    background:#fff!important;
}
body.visitor-visa-page #partner-destinations .featured-title h3,
body.visitor-visa-page #partner-destinations .featured-title h3 a {
    margin:0;
    color:var(--ve-ink)!important;
    font-size:16px;
    line-height:1.3;
}
body.visitor-visa-page #partner-destinations .featured-title h3::after {
    margin-top:5px;
    color:var(--ve-muted);
    font-size:10px;
}
body.visitor-visa-page #partner-destinations .featured-title h3 a::before { box-shadow:none; }

body.visitor-visa-page .contact-us-contact-form-section { padding:62px 0 76px!important; }
body.visitor-visa-page .contact-us-contact-form-section>.container>.row {
    display:grid!important;
    max-width:none;
    margin:0;
    grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr);
    border:1px solid var(--ve-line);
    border-radius:20px;
    box-shadow:none!important;
}
body.visitor-visa-page .contact-us-contact-form-section>.container>.row>.col-lg-6 {
    width:100%!important;
    max-width:100%!important;
    padding:0;
    flex:none!important;
}
body.visitor-visa-page .contact-us-contact-form-section .spacing-25 {
    width:100%;
    height:100%;
    padding:48px 50px!important;
    background:var(--visitor-soft)!important;
}
body.visitor-visa-page .contact-us-contact-form-section .section-title h2 {
    max-width:560px;
    margin:10px 0 0;
    font-size:clamp(36px,3.2vw,48px);
    line-height:1.03;
}
body.visitor-visa-page .contact_form>.row {
    display:grid;
    margin:0;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}
body.visitor-visa-page .contact_form>.row>[class*="col-"] {
    width:auto;
    max-width:none;
    padding:0;
}
body.visitor-visa-page .contact_form>.row>.col-md-12,
body.visitor-visa-page .contact_form>.row>.mt-5 { grid-column:1/-1; }
body.visitor-visa-page .contact_form input,
body.visitor-visa-page .contact_form select,
body.visitor-visa-page .contact_form textarea {
    margin:0!important;
    border-color:#ABB5C9!important;
    background:#fff!important;
}
body.visitor-visa-page .contact-us-contact-form-section .g-map,
body.visitor-visa-page .contact-us-contact-form-section .col-bg-img-thirty-seven,
body.visitor-visa-page .contact-us-contact-form-section iframe {
    width:100%!important;
    height:100%!important;
    min-height:620px;
}

@media (max-width:991px) {
    body.visitor-visa-page .visa-detail-hero-grid,
    body.visitor-visa-page .partner-process-heading,
    body.visitor-visa-page .partner-support-intro,
    body.visitor-visa-page .partner-trust-heading,
    body.visitor-visa-page #partner-destinations .title-header,
    body.visitor-visa-page .contact-us-contact-form-section>.container>.row {
        grid-template-columns:1fr;
    }
    body.visitor-visa-page .visa-detail-hero-grid { grid-template-rows:auto; }
    body.visitor-visa-page .visa-detail-hero-copy {
        grid-column:1;
        grid-row:1;
    }
    body.visitor-visa-page .visa-detail-visual {
        min-height:420px;
        grid-column:1;
        grid-row:2;
        border-top:1px solid #CFD5E0;
        border-left:0;
    }
    body.visitor-visa-page .partner-text-link { grid-column:1; }
    body.visitor-visa-page .partner-roadmap-list,
    body.visitor-visa-page .partner-support-list,
    body.visitor-visa-page #partner-destinations .row.mt_15 { grid-template-columns:repeat(2,minmax(0,1fr)); }
    body.visitor-visa-page .partner-roadmap-list article:nth-child(n),
    body.visitor-visa-page .partner-support-list article { padding:28px!important; }
    body.visitor-visa-page .partner-roadmap-list article:nth-child(3n),
    body.visitor-visa-page .partner-support-list article:nth-child(3n) { border-right:1px solid var(--ve-line); }
    body.visitor-visa-page .partner-roadmap-list article:nth-child(2n),
    body.visitor-visa-page .partner-support-list article:nth-child(2n) { border-right:0; }
    body.visitor-visa-page .partner-roadmap-list article:nth-last-child(-n+3),
    body.visitor-visa-page .partner-support-list article:nth-last-child(-n+3) { border-bottom:1px solid var(--ve-line); }
    body.visitor-visa-page .partner-roadmap-list article:nth-last-child(-n+2),
    body.visitor-visa-page .partner-support-list article:nth-last-child(-n+2) { border-bottom:0; }
    body.visitor-visa-page #partner-destinations .title-header h3,
    body.visitor-visa-page #partner-destinations .title-header h2,
    body.visitor-visa-page #partner-destinations .partner-destination-intro {
        grid-column:1;
        grid-row:auto;
    }
    body.visitor-visa-page #partner-destinations .partner-destination-intro { margin-top:8px; }
    body.visitor-visa-page .contact-us-contact-form-section .g-map,
    body.visitor-visa-page .contact-us-contact-form-section .col-bg-img-thirty-seven,
    body.visitor-visa-page .contact-us-contact-form-section iframe {
        min-height:340px;
        height:340px!important;
    }
}

@media (max-width:767px) {
    body.visitor-visa-page { --visitor-rail-gutter:24px; }
}

@media (max-width:575px) {
    body.visitor-visa-page .visa-detail-hero { padding:14px 0 42px; }
    body.visitor-visa-page .visa-detail-hero-grid,
    body.visitor-visa-page .partner-process-shell,
    body.visitor-visa-page .partner-support-panel,
    body.visitor-visa-page .partner-trust-grid,
    body.visitor-visa-page .contact-us-contact-form-section>.container>.row { border-radius:14px; }
    body.visitor-visa-page .visa-detail-hero-copy { padding:32px 24px 28px; }
    body.visitor-visa-page .visa-detail-hero h1 {
        max-width:310px;
        font-size:clamp(40px,11.5vw,48px);
    }
    body.visitor-visa-page .visa-detail-hero-copy>p { font-size:14px; }
    body.visitor-visa-page .visa-detail-actions,
    body.visitor-visa-page .visa-detail-facts,
    body.visitor-visa-page .partner-roadmap-list,
    body.visitor-visa-page .partner-support-list,
    body.visitor-visa-page .partner-trust-points,
    body.visitor-visa-page #partner-destinations .row.mt_15,
    body.visitor-visa-page .contact_form>.row { grid-template-columns:1fr; }
    body.visitor-visa-page .visa-detail-facts { gap:0; }
    body.visitor-visa-page .visa-detail-facts div,
    body.visitor-visa-page .visa-detail-facts div:first-child,
    body.visitor-visa-page .visa-detail-facts div:last-child {
        display:grid;
        padding:11px 0;
        grid-template-columns:34px 1fr;
        border-bottom:1px solid #CFD5E0;
    }
    body.visitor-visa-page .visa-detail-facts div:last-child { border-bottom:0; }
    body.visitor-visa-page .visa-detail-visual { min-height:250px; }
    body.visitor-visa-page .partner-process-section { padding:44px 0 52px!important; }
    body.visitor-visa-page .partner-process-title,
    body.visitor-visa-page .partner-process-summary,
    body.visitor-visa-page .partner-support-intro,
    body.visitor-visa-page .partner-trust-heading { padding:30px 24px; }
    body.visitor-visa-page .partner-process-title h2,
    body.visitor-visa-page .partner-support-intro h2,
    body.visitor-visa-page .partner-trust-heading h2,
    body.visitor-visa-page #partner-destinations .title-header h2,
    body.visitor-visa-page .contact-us-contact-form-section .section-title h2 { font-size:34px; }
    body.visitor-visa-page .partner-roadmap-list article:nth-child(n),
    body.visitor-visa-page .partner-support-list article {
        min-height:0;
        padding:25px 24px!important;
        border-right:0!important;
        border-bottom:1px solid var(--ve-line);
    }
    body.visitor-visa-page .partner-roadmap-list article:last-child,
    body.visitor-visa-page .partner-support-list article:last-child { border-bottom:0; }
    body.visitor-visa-page .partner-trust-points article {
        min-height:0;
        padding:25px 24px!important;
        border-right:0;
        border-bottom:1px solid var(--ve-line);
    }
    body.visitor-visa-page .partner-trust-points article:last-child { border-bottom:0; }
    body.visitor-visa-page #partner-destinations { padding:46px 0 52px!important; }
    body.visitor-visa-page #partner-destinations .section-title { margin-bottom:26px; }
    body.visitor-visa-page #partner-destinations .featured-imagebox-wrapper { grid-template-rows:210px auto; }
    body.visitor-visa-page #partner-destinations .featured-thumbnail { height:210px!important; }
    body.visitor-visa-page .contact-us-contact-form-section { padding:46px 0 56px!important; }
    body.visitor-visa-page .contact-us-contact-form-section .spacing-25 { padding:30px 22px!important; }
    body.visitor-visa-page .contact_form>.row>[class*="col-"] { grid-column:1; }
    body.visitor-visa-page .contact-us-contact-form-section .g-map,
    body.visitor-visa-page .contact-us-contact-form-section .col-bg-img-thirty-seven,
    body.visitor-visa-page .contact-us-contact-form-section iframe {
        min-height:280px;
        height:280px!important;
    }
}

/* Student page: one outer rail from breadcrumb to enquiry. */
body.student-visa-page {
    --student-rail-width:1280px;
    --student-rail-gutter:48px;
}
body.student-visa-page .prt-titlebar-wrapper-inner>.container,
body.student-visa-page .visa-detail-switcher>.container,
body.student-visa-page .visa-detail-hero>.container,
body.student-visa-page #visa-process>.container,
body.student-visa-page .student-trust-section>.container,
body.student-visa-page #study-destinations>.container,
body.student-visa-page .contact-us-contact-form-section>.container {
    width:min(var(--student-rail-width),calc(100% - var(--student-rail-gutter)))!important;
    max-width:var(--student-rail-width)!important;
    margin-right:auto!important;
    margin-left:auto!important;
    padding-right:0!important;
    padding-left:0!important;
}

@media (max-width:767px) {
    body.student-visa-page { --student-rail-gutter:24px; }
}

@media (prefers-reduced-motion:reduce) {
    body.visa-detail-page *,
    body.visa-detail-page *:before,
    body.visa-detail-page *:after {
        scroll-behavior:auto!important; transition-duration:.01ms!important;
        animation-duration:.01ms!important; animation-iteration-count:1!important;
    }
}

/* Final visa navigation: quiet, in-flow, and consistent across the suite. */
@media (min-width:992px) {
    body.visa-detail-page .site-main { min-width:0; padding-left:0; }
    body.visa-detail-page .visa-detail-switcher {
        position:relative; z-index:4; top:auto; left:auto; width:auto;
        padding:18px 0 0; border:0; background:#fff;
    }
    body.visa-detail-page .visa-detail-switcher .container {
        display:flex; flex-direction:row; justify-content:flex-start;
        width:calc(100% - 40px); max-width:1240px; margin:0 auto;
        padding:0; gap:30px; border:0; border-bottom:1px solid var(--ve-line);
        border-radius:0; background:#fff;
    }
    body.visa-detail-page .visa-detail-switcher a {
        position:relative; width:auto; min-width:0; min-height:46px;
        padding:0 0 14px; gap:8px; justify-content:flex-start;
        border:0; border-radius:0; color:#505F7E; background:transparent;
        font-size:12px; font-weight:700;
    }
    body.visa-detail-page .visa-detail-switcher a::after {
        position:absolute; right:0; bottom:-1px; left:0; height:2px;
        content:""; background:transparent;
    }
    body.visa-detail-page .visa-detail-switcher a span {
        display:inline; width:auto; height:auto; margin:0; color:#5B6882;
        background:transparent; font-size:9px; line-height:1;
    }
    body.visa-detail-page .visa-detail-switcher a:hover,
    body.visa-detail-page .visa-detail-switcher a.active { color:var(--ve-navy); background:transparent; }
    body.visa-detail-page .visa-detail-switcher a.active::after { background:var(--ve-teal); }
    body.visa-detail-page .visa-detail-switcher a.active span { color:var(--ve-teal); background:transparent; }
}

/* Student hero: measured editorial split, no decorative geometry. */
body.student-visa-page .visa-detail-hero { padding:24px 0 72px; }
body.student-visa-page .visa-detail-hero>.container { max-width:1280px; }
body.student-visa-page .visa-detail-hero-grid {
    min-height:600px; grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);
    overflow:hidden; border:1px solid var(--ve-line); border-radius:20px;
    background:var(--ve-paper);
}
body.student-visa-page .visa-detail-hero-copy {
    padding:58px 62px 44px; justify-content:center; background:var(--ve-paper);
}
body.student-visa-page .visa-detail-hero-copy::after,
body.student-visa-page .visa-detail-eyebrow { display:none; }
body.student-visa-page .visa-detail-hero h1 {
    max-width:580px; margin:0 0 24px; font-size:clamp(52px,4.5vw,68px);
    line-height:.98; letter-spacing:-.052em;
}
body.student-visa-page .visa-detail-hero h1 em { margin-top:8px; font-size:.92em; line-height:1; }
body.student-visa-page .visa-detail-hero-copy>p {
    max-width:520px; font-size:16px; line-height:1.68;
}
body.student-visa-page .visa-detail-actions { margin-top:28px; }
body.student-visa-page .visa-detail-actions a { min-height:48px; }
body.student-visa-page .visa-detail-facts {
    width:100%; margin:40px 0 0; padding:20px 0 0; gap:18px;
    border-top:1px solid var(--ve-line); background:transparent;
}
body.student-visa-page .visa-detail-facts div,
body.student-visa-page .visa-detail-facts div:first-child,
body.student-visa-page .visa-detail-facts div:last-child {
    min-height:0; padding:0; border:0; background:transparent;
}
body.student-visa-page .visa-detail-facts strong { margin-bottom:7px; }
body.student-visa-page .visa-detail-facts span { font-size:11px; line-height:1.45; }
body.student-visa-page .visa-detail-visual {
    min-height:600px; margin-left:0; clip-path:none;
    border-left:1px solid var(--ve-line); background:#E5EBF6;
}
body.student-visa-page .visa-detail-visual img {
    width:100%; height:100%; object-fit:cover; object-position:center; transform:none;
}

@media (max-width:1199px) and (min-width:992px) {
    body.student-visa-page .visa-detail-hero-grid,
    body.student-visa-page .visa-detail-visual { min-height:550px; }
    body.student-visa-page .visa-detail-hero-copy { padding:46px 44px 38px; }
    body.student-visa-page .visa-detail-hero h1 { font-size:56px; }
}

@media (max-width:991px) {
    body.student-visa-page .visa-detail-hero { padding:22px 0 52px; }
    body.student-visa-page .visa-detail-hero-grid { grid-template-columns:1fr; }
    body.student-visa-page .visa-detail-visual {
        order:1; min-height:420px; border:0; border-bottom:1px solid var(--ve-line);
    }
    body.student-visa-page .visa-detail-hero-copy { order:2; padding:46px 42px 38px; }
    body.student-visa-page .visa-detail-facts {
        width:100%; margin:34px 0 0; padding:18px 0 0;
    }
}

@media (max-width:575px) {
    body.visa-detail-page .visa-detail-switcher { display:none!important; }
    body.student-visa-page .visa-detail-hero { padding:14px 0 42px; }
    body.student-visa-page .visa-detail-hero-grid { border-radius:14px; }
    body.student-visa-page .visa-detail-hero-copy { order:1; padding:32px 24px 28px; }
    body.student-visa-page .visa-detail-visual { order:2; min-height:250px; }
    body.student-visa-page .visa-detail-hero h1 {
        max-width:310px; font-size:clamp(40px,11.5vw,48px); line-height:.98;
    }
    body.student-visa-page .visa-detail-hero-copy>p { font-size:14px; line-height:1.65; }
    body.student-visa-page .visa-detail-actions { grid-template-columns:1fr; }
    body.student-visa-page .visa-detail-facts { grid-template-columns:1fr; gap:0; }
    body.student-visa-page .visa-detail-facts div,
    body.student-visa-page .visa-detail-facts div:first-child,
    body.student-visa-page .visa-detail-facts div:last-child {
        display:grid; grid-template-columns:28px 1fr; align-items:start;
        padding:11px 0; border-bottom:1px solid var(--ve-line);
    }
    body.student-visa-page .visa-detail-facts div:last-child { border-bottom:0; }
    body.student-visa-page .visa-detail-facts strong { margin:2px 0 0; }
}

/* Student process: compact editorial overview with a six-step working grid. */
body.student-visa-page .student-process-shell {
    display:block;
    overflow:hidden;
    border:1px solid var(--ve-line);
    border-radius:20px;
    background:#fff;
}
body.student-visa-page .student-process-shell>.row.mt-50.mb-40 {
    width:100%; height:auto; margin:0!important;
}
body.student-visa-page .student-process-shell>.row.mt-50.mb-40>.col-lg-12 { height:auto; padding:0; }
body.student-visa-page #visa-process .student-process-shell .service-title {
    display:grid!important;
    height:auto;
    grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
    border:0;
    border-bottom:1px solid var(--ve-line);
    background:#F2F5FB;
}
body.student-visa-page #visa-process .student-process-shell .service-header,
body.student-visa-page #visa-process .student-process-shell .service-desc {
    display:block;
    min-height:0;
    padding:46px 50px 42px;
    border:0;
    color:var(--ve-ink);
    background:transparent;
}
body.student-visa-page #visa-process .student-process-shell .service-header {
    border-right:1px solid var(--ve-line);
}
body.student-visa-page #visa-process .student-process-shell .service-header::after { display:none; }
body.student-visa-page #visa-process .student-process-shell .service-header .student-section-label,
body.student-visa-page #visa-process .student-process-shell .service-desc strong {
    margin:0 0 16px;
    color:var(--ve-teal);
    font-size:10px;
    font-weight:850;
    letter-spacing:.17em;
}
body.student-visa-page #visa-process .student-process-shell .service-header h2 {
    max-width:500px;
    margin:0;
    color:var(--ve-ink);
    font-size:clamp(36px,3.2vw,48px);
    line-height:1.04;
    letter-spacing:-.043em;
}
body.student-visa-page #visa-process .student-process-shell .service-desc p {
    max-width:610px;
    margin:0;
    color:var(--ve-muted);
    font-size:15px;
    line-height:1.7;
}
body.student-visa-page .student-process-shell .student-roadmap-list {
    display:grid;
    padding:0 34px;
    grid-template-columns:repeat(3,minmax(0,1fr));
    background:#fff;
}
body.student-visa-page .student-process-shell .student-roadmap-list::before { display:none; }
body.student-visa-page .student-process-shell .student-roadmap-list article {
    display:block;
    min-height:190px;
    padding:32px 26px 30px;
    border:0;
    border-right:1px solid var(--ve-line);
    border-bottom:1px solid var(--ve-line);
}
body.student-visa-page .student-process-shell .student-roadmap-list article:nth-child(3n) { border-right:0; }
body.student-visa-page .student-process-shell .student-roadmap-list article:nth-last-child(-n+3) { border-bottom:0; }
body.student-visa-page .student-process-shell .student-roadmap-list article>span {
    display:block;
    width:auto;
    height:auto;
    margin:0 0 24px;
    border:0;
    color:var(--ve-teal);
    background:transparent;
    font-size:10px;
    font-weight:850;
    line-height:1;
    letter-spacing:.13em;
}
body.student-visa-page .student-process-shell .student-roadmap-list h3 {
    margin:0 0 10px;
    color:var(--ve-ink);
    font-size:18px;
    line-height:1.3;
}
body.student-visa-page .student-process-shell .student-roadmap-list p {
    max-width:340px;
    margin:0;
    color:var(--ve-muted);
    font-size:13.5px;
    line-height:1.65;
}
body.student-visa-page .student-process-shell .visa-process-note {
    display:flex;
    margin:0;
    padding:15px 24px;
    gap:10px;
    align-items:flex-start;
    border:0;
    border-top:1px solid var(--ve-line);
    color:#505F7E;
    background:#E9EFFD;
}
body.student-visa-page .student-process-shell .visa-process-note strong,
body.student-visa-page .student-process-shell .visa-process-note p {
    margin:0;
    font-size:11px;
    line-height:1.55;
}

/* Student preparation: light brief and a scannable evidence matrix. */
body.student-visa-page .student-support-panel {
    display:block;
    margin-top:36px;
    overflow:hidden;
    border:1px solid var(--ve-line);
    border-radius:20px;
    background:#fff;
}
body.student-visa-page .student-support-intro {
    display:grid;
    padding:46px 50px;
    grid-template-columns:minmax(0,1fr) minmax(340px,.82fr);
    gap:38px 64px;
    align-items:end;
    color:var(--ve-ink);
    background:#E9EFFD;
}
body.student-visa-page .student-support-intro::after { display:none; }
body.student-visa-page .student-support-intro .student-section-label {
    grid-column:1;
    margin:0;
    color:var(--ve-teal);
}
body.student-visa-page .student-support-intro h2 {
    grid-column:1;
    max-width:660px;
    margin:12px 0 0;
    color:var(--ve-ink);
    font-size:clamp(36px,3.2vw,48px);
    line-height:1.04;
    letter-spacing:-.043em;
}
body.student-visa-page .student-support-intro h2 em {
    display:inline;
    color:var(--ve-teal);
    font-size:.96em;
}
body.student-visa-page .student-support-intro p {
    grid-column:2;
    grid-row:1/3;
    max-width:520px;
    margin:0;
    color:var(--ve-muted);
    font-size:14px;
    line-height:1.7;
}
body.student-visa-page .student-support-intro .student-text-link {
    grid-column:2;
    margin-top:-14px;
    color:var(--ve-ink);
    font-size:12px;
}
body.student-visa-page .student-support-intro .student-text-link span {
    border:1px solid #ABB5C9;
    color:var(--ve-teal);
}
body.student-visa-page .student-support-list {
    display:grid;
    padding:0 34px;
    grid-template-columns:repeat(3,minmax(0,1fr));
    background:#fff;
}
body.student-visa-page .student-support-list article {
    display:block;
    min-height:188px;
    padding:31px 26px 28px;
    border:0;
    border-right:1px solid var(--ve-line);
    border-bottom:1px solid var(--ve-line);
}
body.student-visa-page .student-support-list article:nth-child(3n) { border-right:0; }
body.student-visa-page .student-support-list article:nth-last-child(-n+3) { border-bottom:0; }
body.student-visa-page .student-support-list article>span {
    display:block;
    width:auto;
    height:auto;
    margin:0 0 22px;
    color:var(--ve-teal);
    background:transparent;
    font-size:10px;
    font-weight:850;
    line-height:1;
    letter-spacing:.13em;
}
body.student-visa-page .student-support-list article>div { display:block; }
body.student-visa-page .student-support-list h3 {
    margin:0 0 10px;
    color:var(--ve-ink);
    font-size:18px;
    line-height:1.3;
}
body.student-visa-page .student-support-list p {
    margin:0;
    color:var(--ve-muted);
    font-size:13.5px;
    line-height:1.65;
}

@media (max-width:991px) {
    body.student-visa-page #visa-process .student-process-shell .service-title { grid-template-columns:1fr; }
    body.student-visa-page #visa-process .student-process-shell .service-header {
        padding:40px 40px 22px;
        border-right:0;
    }
    body.student-visa-page #visa-process .student-process-shell .service-desc { padding:0 40px 38px; }
    body.student-visa-page .student-process-shell .student-roadmap-list,
    body.student-visa-page .student-support-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
    body.student-visa-page .student-process-shell .student-roadmap-list article:nth-child(3n),
    body.student-visa-page .student-support-list article:nth-child(3n) { border-right:1px solid var(--ve-line); }
    body.student-visa-page .student-process-shell .student-roadmap-list article:nth-child(2n),
    body.student-visa-page .student-support-list article:nth-child(2n) { border-right:0; }
    body.student-visa-page .student-process-shell .student-roadmap-list article:nth-last-child(-n+3),
    body.student-visa-page .student-support-list article:nth-last-child(-n+3) { border-bottom:1px solid var(--ve-line); }
    body.student-visa-page .student-process-shell .student-roadmap-list article:nth-last-child(-n+2),
    body.student-visa-page .student-support-list article:nth-last-child(-n+2) { border-bottom:0; }
    body.student-visa-page .student-support-intro {
        padding:40px;
        grid-template-columns:1fr;
        gap:18px;
        align-items:start;
    }
    body.student-visa-page .student-support-intro .student-section-label,
    body.student-visa-page .student-support-intro h2,
    body.student-visa-page .student-support-intro p,
    body.student-visa-page .student-support-intro .student-text-link {
        grid-column:1;
        grid-row:auto;
        margin-top:0;
    }
}

@media (max-width:575px) {
    body.student-visa-page .student-process-shell,
    body.student-visa-page .student-support-panel { border-radius:14px; }
    body.student-visa-page #visa-process .student-process-shell .service-header,
    body.student-visa-page #visa-process .student-process-shell .service-desc,
    body.student-visa-page .student-support-intro { padding:30px 24px; }
    body.student-visa-page #visa-process .student-process-shell .service-desc { padding-top:0; }
    body.student-visa-page #visa-process .student-process-shell .service-header h2,
    body.student-visa-page .student-support-intro h2 { font-size:34px; }
    body.student-visa-page .student-process-shell .student-roadmap-list,
    body.student-visa-page .student-support-list {
        padding:0 22px;
        grid-template-columns:1fr;
    }
    body.student-visa-page .student-process-shell .student-roadmap-list article,
    body.student-visa-page .student-support-list article {
        min-height:0;
        padding:24px 0;
        border-right:0!important;
        border-bottom:1px solid var(--ve-line)!important;
    }
    body.student-visa-page .student-process-shell .student-roadmap-list article:last-child,
    body.student-visa-page .student-support-list article:last-child { border-bottom:0!important; }
    body.student-visa-page .student-process-shell .student-roadmap-list article>span,
    body.student-visa-page .student-support-list article>span { margin-bottom:14px; }
    body.student-visa-page .student-process-shell .visa-process-note {
        display:block;
        padding:14px 20px;
    }
    body.student-visa-page .student-process-shell .visa-process-note strong { display:block; margin-bottom:3px; }
}

/* Student trust: a compact principles ledger, not a split presentation card. */
body.student-visa-page .student-trust-section { padding:60px 0!important; }
body.student-visa-page .student-trust-grid {
    display:block;
    overflow:hidden;
    border:1px solid var(--ve-line);
    border-radius:20px;
    background:#fff;
}
body.student-visa-page .student-trust-heading {
    display:grid;
    padding:44px 50px 40px;
    grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr);
    gap:16px 70px;
    align-items:end;
    border:0;
    border-radius:0;
    background:#F2F5FB;
}
body.student-visa-page .student-trust-heading .student-section-label { grid-column:1; margin:0; }
body.student-visa-page .student-trust-heading h2 {
    grid-column:1;
    max-width:650px;
    margin:10px 0 0;
    color:var(--ve-ink);
    font-size:clamp(36px,3.2vw,48px);
    line-height:1.04;
    letter-spacing:-.043em;
}
body.student-visa-page .student-trust-heading h2 em { display:inline; color:var(--ve-teal); }
body.student-visa-page .student-trust-heading>p {
    grid-column:2;
    grid-row:1/3;
    max-width:500px;
    margin:0;
    color:var(--ve-muted);
    font-size:14px;
    line-height:1.7;
}
body.student-visa-page .student-trust-points {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:0;
    border:0;
    border-top:1px solid var(--ve-line);
}
body.student-visa-page .student-trust-points article {
    display:block;
    min-height:180px;
    padding:30px 34px;
    border:0;
    border-right:1px solid var(--ve-line);
    border-radius:0;
    background:#fff;
}
body.student-visa-page .student-trust-points article:last-child { border-right:0; }
body.student-visa-page .student-trust-points strong {
    display:block;
    width:auto;
    height:auto;
    margin:0 0 24px;
    color:var(--ve-teal);
    background:transparent;
    font-size:10px;
    line-height:1;
    letter-spacing:.13em;
}
body.student-visa-page .student-trust-points h3 {
    margin:0 0 10px;
    color:var(--ve-ink);
    font-size:18px;
    line-height:1.3;
}
body.student-visa-page .student-trust-points p {
    margin:0;
    color:var(--ve-muted);
    font-size:13.5px;
    line-height:1.65;
}

/* Student destinations: calm heading and image cards with readable captions. */
body.student-visa-page #study-destinations {
    padding:66px 0 72px!important;
    border:0;
    background:#fff!important;
}
body.student-visa-page #study-destinations>.container { max-width:1280px; }
body.student-visa-page #study-destinations>.container>.row:first-child>[class*="col-"] {
    width:100%;
    max-width:none;
    margin:0!important;
    padding:0;
}
body.student-visa-page #study-destinations .section-title {
    max-width:none;
    margin:0 0 38px;
    text-align:left;
}
body.student-visa-page #study-destinations .title-header {
    display:grid;
    grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);
    gap:12px 72px;
    align-items:end;
}
body.student-visa-page #study-destinations .title-header h3 {
    grid-column:1;
    margin:0;
    color:var(--ve-teal);
    font-size:10px;
    letter-spacing:.16em;
}
body.student-visa-page #study-destinations .title-header h2 {
    grid-column:1;
    max-width:700px;
    margin:0;
    color:var(--ve-ink);
    font-size:clamp(38px,3.4vw,50px);
    line-height:1.03;
    letter-spacing:-.043em;
}
body.student-visa-page #study-destinations .title-header h2 br { display:none; }
body.student-visa-page #study-destinations .student-destination-intro {
    grid-column:2;
    grid-row:1/3;
    max-width:480px;
    margin:0;
    color:var(--ve-muted);
    font-size:14px;
    line-height:1.7;
}
body.student-visa-page #study-destinations .row.mt_15 {
    display:grid;
    margin:0;
    overflow:visible;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:16px;
    border:0;
    border-radius:0;
    background:transparent;
}
body.student-visa-page #study-destinations .row.mt_15>[class*="col-"] {
    width:auto;
    max-width:none;
    padding:0;
}
body.student-visa-page #study-destinations .featured-imagebox-portfolio.style1 {
    height:auto!important;
    margin:0;
    overflow:hidden;
    border:1px solid var(--ve-line);
    border-radius:14px;
    background:#fff;
    transform:none!important;
}
body.student-visa-page #study-destinations .featured-imagebox-wrapper {
    position:relative;
    display:grid;
    height:auto;
    grid-template-rows:180px auto;
}
body.student-visa-page #study-destinations .featured-thumbnail {
    position:relative!important;
    inset:auto!important;
    display:block!important;
    width:100%!important;
    height:180px!important;
    margin:0;
    overflow:hidden;
}
body.student-visa-page #study-destinations .featured-thumbnail::after { display:none!important; }
body.student-visa-page #study-destinations .featured-thumbnail img {
    width:100%;
    height:100%;
    object-fit:cover;
    filter:saturate(.86) contrast(.96);
    transform:none!important;
}
body.student-visa-page #study-destinations .featured-content {
    position:static!important;
    inset:auto!important;
    display:block!important;
    padding:17px 19px 18px!important;
    visibility:visible!important;
    opacity:1!important;
    transform:none!important;
    background:#fff!important;
}
body.student-visa-page #study-destinations .featured-title h3,
body.student-visa-page #study-destinations .featured-title h3 a {
    margin:0;
    color:var(--ve-ink)!important;
    font-size:16px;
    line-height:1.3;
}
body.student-visa-page #study-destinations .featured-title h3::after {
    margin-top:5px;
    color:var(--ve-muted);
    font-size:10px;
}
body.student-visa-page #study-destinations .featured-title h3 a::before { box-shadow:none; }

/* Student enquiry: form-first layout with a quieter supporting map. */
body.student-visa-page .contact-us-contact-form-section { padding:62px 0 76px!important; }
body.student-visa-page .contact-us-contact-form-section>.container { max-width:1280px; }
body.student-visa-page .contact-us-contact-form-section>.container>.row {
    display:grid!important;
    max-width:none;
    margin:0;
    overflow:hidden;
    grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr);
    border:1px solid var(--ve-line);
    border-radius:20px;
    background:#fff;
}
body.student-visa-page .contact-us-contact-form-section>.container>.row>.col-lg-6 {
    width:100%!important;
    max-width:100%!important;
    padding:0;
    flex:none!important;
}
body.student-visa-page .contact-us-contact-form-section .spacing-25 {
    width:100%;
    height:100%;
    padding:48px 50px!important;
    background:#E9EFFD!important;
}
body.student-visa-page .contact-us-contact-form-section .section-title { margin-bottom:24px; }
body.student-visa-page .contact-us-contact-form-section .section-title h2 {
    max-width:560px;
    margin:10px 0 0;
    font-size:clamp(36px,3.2vw,48px);
    line-height:1.03;
    letter-spacing:-.043em;
}
body.student-visa-page .contact-us-contact-form-section .section-title h2 span {
    display:inline;
    margin:0;
}
body.student-visa-page .student-enquiry-copy {
    max-width:600px;
    margin:14px 0 0;
    color:var(--ve-muted);
    font-size:13.5px;
    line-height:1.65;
}
body.student-visa-page .contact_form>.row {
    display:grid;
    margin:0;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}
body.student-visa-page .contact_form>.row>[class*="col-"] {
    width:auto;
    max-width:none;
    padding:0;
}
body.student-visa-page .contact_form>.row>.col-md-12,
body.student-visa-page .contact_form>.row>.mt-5 { grid-column:1/-1; }
body.student-visa-page .contact_form input,
body.student-visa-page .contact_form select,
body.student-visa-page .contact_form textarea {
    margin:0!important;
    border-color:#F1F5FE!important;
    border-radius:8px!important;
    background:#fff!important;
}
body.student-visa-page .contact_form input,
body.student-visa-page .contact_form select { height:50px!important; }
body.student-visa-page .contact_form textarea { min-height:110px; }
body.student-visa-page .contact_form label {
    display:block;
    margin:4px 0 7px;
    color:var(--ve-ink);
    font-size:10px;
    font-weight:800;
}
body.student-visa-page .contact_form .submit { min-height:48px; }
body.student-visa-page .contact-us-contact-form-section .g-map {
    width:100%;
    height:100%;
    min-height:640px;
    border-left:1px solid var(--ve-line);
    border-radius:0;
}
body.student-visa-page .contact-us-contact-form-section .col-bg-img-thirty-seven,
body.student-visa-page .contact-us-contact-form-section iframe {
    width:100%;
    height:100%;
    min-height:640px;
}
body.student-visa-page .contact-us-contact-form-section .col-bg-img-thirty-seven,
body.student-visa-page .contact-us-contact-form-section .layer-content {
    width:100%;
    height:100%;
}
body.student-visa-page .contact-us-contact-form-section iframe { filter:saturate(.55) contrast(.96); }

@media (max-width:991px) {
    body.student-visa-page .student-trust-heading,
    body.student-visa-page #study-destinations .title-header { grid-template-columns:1fr; }
    body.student-visa-page .student-trust-heading .student-section-label,
    body.student-visa-page .student-trust-heading h2,
    body.student-visa-page .student-trust-heading>p,
    body.student-visa-page #study-destinations .title-header h3,
    body.student-visa-page #study-destinations .title-header h2,
    body.student-visa-page #study-destinations .student-destination-intro {
        grid-column:1;
        grid-row:auto;
    }
    body.student-visa-page .student-trust-heading>p,
    body.student-visa-page #study-destinations .student-destination-intro { margin-top:8px; }
    body.student-visa-page .student-trust-points { grid-template-columns:1fr; }
    body.student-visa-page .student-trust-points article {
        min-height:0;
        border-right:0;
        border-bottom:1px solid var(--ve-line);
    }
    body.student-visa-page .student-trust-points article:last-child { border-bottom:0; }
    body.student-visa-page #study-destinations .row.mt_15 { grid-template-columns:repeat(2,minmax(0,1fr)); }
    body.student-visa-page .contact-us-contact-form-section>.container>.row { grid-template-columns:1fr; }
    body.student-visa-page .contact-us-contact-form-section .g-map,
    body.student-visa-page .contact-us-contact-form-section .col-bg-img-thirty-seven,
    body.student-visa-page .contact-us-contact-form-section iframe {
        min-height:340px;
        height:340px;
    }
    body.student-visa-page .contact-us-contact-form-section .g-map {
        border-top:1px solid var(--ve-line);
        border-left:0;
    }
}

@media (max-width:575px) {
    body.student-visa-page .student-trust-section { padding:44px 0!important; }
    body.student-visa-page .student-trust-grid,
    body.student-visa-page .contact-us-contact-form-section>.container>.row { border-radius:14px; }
    body.student-visa-page .student-trust-heading { padding:30px 24px; }
    body.student-visa-page .student-trust-heading h2,
    body.student-visa-page #study-destinations .title-header h2,
    body.student-visa-page .contact-us-contact-form-section .section-title h2 { font-size:34px; }
    body.student-visa-page .student-trust-points article {
        display:block!important;
        padding:25px 24px!important;
    }
    body.student-visa-page .student-trust-points strong { margin-bottom:14px; }
    body.student-visa-page #study-destinations { padding:46px 0 52px!important; }
    body.student-visa-page #study-destinations .section-title { margin-bottom:26px; }
    body.student-visa-page #study-destinations .row.mt_15 { grid-template-columns:1fr; gap:12px; }
    body.student-visa-page #study-destinations .featured-imagebox-wrapper { grid-template-rows:210px auto; }
    body.student-visa-page #study-destinations .featured-thumbnail { height:210px!important; }
    body.student-visa-page .contact-us-contact-form-section { padding:46px 0 56px!important; }
    body.student-visa-page .contact-us-contact-form-section .spacing-25 { padding:30px 22px!important; }
    body.student-visa-page .contact_form>.row { grid-template-columns:1fr; }
    body.student-visa-page .contact_form>.row>[class*="col-"] { grid-column:1; }
    body.student-visa-page .contact-us-contact-form-section .g-map,
    body.student-visa-page .contact-us-contact-form-section .col-bg-img-thirty-seven,
    body.student-visa-page .contact-us-contact-form-section iframe {
        min-height:280px;
        height:280px;
    }
}

/* Partner page: compact editorial architecture on one shared rail. */
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) {
    --partner-rail-width:1280px;
    --partner-rail-gutter:48px;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .prt-titlebar-wrapper-inner>.container,
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-switcher>.container,
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-hero>.container,
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-section>.container,
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-section>.container,
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations>.container,
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .contact-us-contact-form-section>.container {
    width:min(var(--partner-rail-width),calc(100% - var(--partner-rail-gutter)))!important;
    max-width:var(--partner-rail-width)!important;
    margin-right:auto!important;
    margin-left:auto!important;
    padding-right:0!important;
    padding-left:0!important;
}

body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-hero {
    padding:24px 0 68px;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-hero-grid {
    min-height:600px;
    grid-template-columns:minmax(0,.98fr) minmax(0,1.02fr);
    border-color:var(--ve-line);
    border-radius:20px;
    background:var(--ve-paper);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-visual {
    min-height:600px;
    border-right:1px solid var(--ve-line);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-visual img {
    object-position:center;
    transform:none;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-hero-copy {
    padding:56px 58px 42px;
    background:var(--ve-paper);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-hero-copy::before,
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-eyebrow {
    display:none;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-hero h1 {
    max-width:590px;
    margin:0 0 24px;
    font-size:clamp(52px,4.4vw,68px);
    line-height:.98;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-hero h1 em {
    margin-top:8px;
    font-size:.92em;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-hero-copy>p {
    max-width:520px;
    margin:0;
    font-size:16px;
    line-height:1.68;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-actions {
    margin-top:28px;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-actions a {
    min-height:48px;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-facts {
    width:100%;
    margin:38px 0 0;
    padding:20px 0 0;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
    border-top:1px solid var(--ve-line);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-facts div,
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-facts div:first-child,
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-facts div:last-child {
    display:block;
    min-height:0;
    padding:0;
    border:0;
    background:transparent;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-facts strong {
    display:block;
    margin:0 0 7px;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-facts span {
    display:block;
    font-size:11px;
    line-height:1.45;
}

body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-section {
    padding:64px 0 72px!important;
    background:#fff;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-shell,
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-panel,
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-grid {
    border:1px solid var(--ve-line);
    border-radius:20px;
    box-shadow:none!important;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-heading {
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-title,
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-summary {
    padding:44px 46px;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-title {
    color:var(--ve-ink);
    background:var(--ve-accent-soft);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-title .partner-section-label,
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-summary .partner-section-label {
    color:var(--ve-accent);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-title h2 {
    max-width:520px;
    margin:18px 0 0;
    color:var(--ve-ink);
    font-size:clamp(38px,3.2vw,48px);
    line-height:1.03;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-title h2 em {
    color:var(--ve-accent);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-summary {
    background:var(--ve-paper);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-summary p {
    margin:18px 0 0;
    color:var(--ve-muted);
    font-size:14px;
    line-height:1.7;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-roadmap-list,
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-list {
    display:grid;
    padding:0;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:0;
    border-top:1px solid var(--ve-line);
    background:#fff;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-roadmap-list article,
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-list article {
    display:block;
    min-height:190px;
    padding:30px 28px;
    border:0;
    border-right:1px solid var(--ve-line);
    border-bottom:1px solid var(--ve-line);
    background:#fff;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-roadmap-list article:nth-child(3n),
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-list article:nth-child(3n) {
    border-right:0;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-roadmap-list article:nth-last-child(-n+3),
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-list article:nth-last-child(-n+3) {
    border-bottom:0;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-roadmap-list article:nth-child(even) {
    background:#FAFBFD;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-roadmap-list article>span,
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-list article>span {
    display:block;
    width:auto;
    height:auto;
    margin:0 0 28px;
    color:var(--ve-accent);
    background:transparent;
    font-size:10px;
    line-height:1;
    letter-spacing:.13em;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-roadmap-list h3,
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-list h3 {
    margin:0 0 9px;
    color:var(--ve-ink);
    font-size:17px;
    line-height:1.35;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-roadmap-list p,
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-list p {
    margin:0;
    color:var(--ve-muted);
    font-size:13px;
    line-height:1.62;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-note {
    margin:0;
    padding:15px 28px;
    border:0;
    border-top:1px solid var(--ve-line);
    border-radius:0;
    background:#E5EBF6;
    font-size:10px;
}

body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-panel {
    display:block;
    margin-top:32px;
    overflow:hidden;
    background:#fff;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-intro,
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-heading {
    display:grid;
    padding:44px 46px;
    grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);
    gap:14px 64px;
    align-items:end;
    color:var(--ve-ink);
    background:var(--ve-accent-soft);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-intro .partner-section-label,
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-heading .partner-section-label {
    grid-column:1/-1;
    color:var(--ve-accent);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-intro h2,
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-heading h2 {
    margin:0;
    color:var(--ve-ink);
    font-size:clamp(38px,3.2vw,48px);
    line-height:1.03;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-intro h2 em,
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-heading h2 em {
    color:var(--ve-accent);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-intro p,
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-heading>p {
    margin:0;
    color:#47546E;
    font-size:14px;
    line-height:1.7;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-text-link {
    grid-column:2;
    color:var(--ve-ink);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-text-link span {
    color:#fff;
    background:var(--ve-accent);
}

body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-section {
    padding:0 0 72px!important;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-grid {
    display:block;
    overflow:hidden;
    background:#fff;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-points {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    border:0;
    border-top:1px solid var(--ve-line);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-points article {
    min-height:180px;
    padding:28px;
    border:0;
    border-right:1px solid var(--ve-line);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-points article:last-child {
    border-right:0;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-points strong {
    margin-bottom:24px;
    color:var(--ve-accent);
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-points h3 {
    margin:0 0 9px;
    font-size:17px;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-points p {
    font-size:13px;
    line-height:1.62;
}

body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations {
    padding:64px 0 72px!important;
    background:#fff!important;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations>.container>.row:first-child>[class*="col-"] {
    width:100%;
    max-width:none;
    margin:0!important;
    padding:0;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .section-title {
    max-width:none;
    margin:0 0 34px;
    text-align:left;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .title-header {
    display:block;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .title-header h3 {
    margin:0;
    color:var(--ve-accent);
    font-size:10px;
    letter-spacing:.16em;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .title-header h2 {
    max-width:720px;
    margin:12px 0 0;
    color:var(--ve-ink);
    font-size:clamp(38px,3.4vw,50px);
    line-height:1.03;
    letter-spacing:-.043em;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .title-header h2 br {
    display:none;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .row.mt_15 {
    display:grid;
    margin:0;
    overflow:visible;
    grid-template-columns:repeat(4,minmax(0,1fr));
    grid-auto-rows:auto;
    gap:16px;
    border:0;
    border-radius:0;
    background:transparent;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .row.mt_15>[class*="col-"],
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .row.mt_15>[class*="col-"]:first-child {
    width:auto;
    max-width:none;
    padding:0;
    grid-column:auto;
    grid-row:auto;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .featured-imagebox-portfolio.style1 {
    height:auto!important;
    margin:0;
    overflow:hidden;
    border:1px solid var(--ve-line);
    border-radius:14px;
    background:#fff;
    transform:none!important;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .featured-imagebox-wrapper {
    position:relative;
    display:grid;
    width:100%;
    height:auto;
    grid-template-rows:180px auto;
    overflow:hidden;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .featured-thumbnail {
    position:relative!important;
    inset:auto!important;
    display:block!important;
    width:100%!important;
    height:180px!important;
    margin:0;
    overflow:hidden;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .featured-thumbnail::after {
    display:none!important;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .featured-thumbnail img {
    width:100%;
    height:100%;
    object-fit:cover;
    filter:saturate(.86) contrast(.96);
    transform:none!important;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .featured-content {
    position:static!important;
    inset:auto!important;
    display:block!important;
    padding:17px 19px 18px!important;
    visibility:visible!important;
    opacity:1!important;
    transform:none!important;
    background:#fff!important;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .featured-title h3,
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .featured-title h3 a {
    margin:0;
    color:var(--ve-ink)!important;
    font-size:16px;
    line-height:1.3;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .featured-title h3::after {
    display:block;
    margin-top:5px;
    color:var(--ve-muted);
    font-size:10px;
}

body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .contact-us-contact-form-section {
    padding:62px 0 76px!important;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .contact-us-contact-form-section>.container>.row {
    display:grid!important;
    max-width:none;
    margin:0;
    grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr);
    border:1px solid var(--ve-line);
    border-radius:20px;
    box-shadow:none!important;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .contact-us-contact-form-section>.container>.row>.col-lg-6 {
    width:100%!important;
    max-width:100%!important;
    padding:0;
    flex:none!important;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .contact-us-contact-form-section .spacing-25 {
    width:100%;
    height:100%;
    padding:48px 50px!important;
    background:#FAF7F0!important;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .contact_form>.row {
    display:grid;
    margin:0;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .contact_form>.row>[class*="col-"] {
    width:auto;
    max-width:none;
    padding:0;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .contact_form>.row>.col-md-12,
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .contact_form>.row>.mt-5 {
    grid-column:1/-1;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .contact_form input,
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .contact_form select,
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .contact_form textarea {
    margin:0!important;
    border-color:#d5c8c2!important;
    background:#fff!important;
}
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .contact-us-contact-form-section .g-map,
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .contact-us-contact-form-section .col-bg-img-thirty-seven,
body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .contact-us-contact-form-section iframe {
    width:100%!important;
    height:100%!important;
    min-height:620px;
}

@media (max-width:991px) {
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-hero-grid,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-heading,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-intro,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-heading,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .contact-us-contact-form-section>.container>.row {
        grid-template-columns:1fr;
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-hero-copy {
        order:1;
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-visual {
        order:2;
        min-height:420px;
        border-top:1px solid var(--ve-line);
        border-right:0;
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-text-link {
        grid-column:1;
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-roadmap-list,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-list,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .row.mt_15 {
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-roadmap-list article:nth-child(3n),
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-list article:nth-child(3n) {
        border-right:1px solid var(--ve-line);
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-roadmap-list article:nth-child(2n),
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-list article:nth-child(2n) {
        border-right:0;
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .contact-us-contact-form-section .g-map,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .contact-us-contact-form-section .col-bg-img-thirty-seven,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .contact-us-contact-form-section iframe {
        min-height:340px;
        height:340px!important;
    }
}

@media (max-width:767px) {
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) {
        --partner-rail-gutter:24px;
    }
}

@media (max-width:575px) {
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-hero {
        padding:14px 0 42px;
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-hero-grid,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-shell,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-panel,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-grid,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .contact-us-contact-form-section>.container>.row {
        border-radius:14px;
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-hero-copy {
        padding:32px 24px 28px;
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-hero h1 {
        max-width:310px;
        font-size:clamp(40px,11.5vw,48px);
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-hero-copy>p {
        font-size:14px;
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-actions {
        grid-template-columns:1fr;
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-facts {
        grid-template-columns:1fr;
        gap:0;
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-facts div,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-facts div:first-child,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-facts div:last-child {
        display:grid;
        padding:11px 0;
        grid-template-columns:28px 1fr;
        border-bottom:1px solid var(--ve-line);
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-facts div:last-child {
        border-bottom:0;
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .visa-detail-visual {
        min-height:250px;
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-section {
        padding:44px 0 52px!important;
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-title,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-summary,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-intro,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-heading {
        padding:30px 24px;
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-process-title h2,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-intro h2,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-heading h2,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .title-header h2,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .contact-us-contact-form-section .section-title h2 {
        font-size:34px;
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-roadmap-list,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-list,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-points,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .row.mt_15,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .contact_form>.row {
        grid-template-columns:1fr;
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-roadmap-list article,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-list article {
        min-height:0;
        padding:25px 24px;
        border-right:0!important;
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-roadmap-list article:nth-last-child(-n+3),
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-list article:nth-last-child(-n+3) {
        border-bottom:1px solid var(--ve-line);
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-roadmap-list article:last-child,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-support-list article:last-child {
        border-bottom:0;
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-points article {
        min-height:0;
        padding:25px 24px;
        border-right:0;
        border-bottom:1px solid var(--ve-line);
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .partner-trust-points article:last-child {
        border-bottom:0;
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations {
        padding:46px 0 52px!important;
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .featured-imagebox-wrapper {
        grid-template-rows:210px auto;
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) #partner-destinations .featured-thumbnail {
        height:210px!important;
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .contact-us-contact-form-section {
        padding:46px 0 56px!important;
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .contact-us-contact-form-section .spacing-25 {
        padding:30px 22px!important;
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .contact_form>.row>[class*="col-"] {
        grid-column:1;
    }
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .contact-us-contact-form-section .g-map,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .contact-us-contact-form-section .col-bg-img-thirty-seven,
    body.spouse-visa-page:not(.parent-visa-page):not(.visitor-visa-page) .contact-us-contact-form-section iframe {
        min-height:280px;
        height:280px!important;
    }
}

/* Parent page: authoritative, compact and aligned to the visa-suite rail. */
body.parent-visa-page {
    --parent-rail-width:1280px;
    --parent-rail-gutter:48px;
}
body.parent-visa-page .prt-titlebar-wrapper-inner>.container,
body.parent-visa-page .visa-detail-switcher>.container,
body.parent-visa-page .visa-detail-hero>.container,
body.parent-visa-page .partner-process-section>.container,
body.parent-visa-page .partner-trust-section>.container,
body.parent-visa-page .parent-country-section>.container,
body.parent-visa-page .contact-us-contact-form-section>.container {
    width:min(var(--parent-rail-width),calc(100% - var(--parent-rail-gutter)))!important;
    max-width:var(--parent-rail-width)!important;
    margin-right:auto!important;
    margin-left:auto!important;
    padding-right:0!important;
    padding-left:0!important;
}

body.parent-visa-page .visa-detail-hero { padding:24px 0 68px; }
body.parent-visa-page .visa-detail-hero-grid {
    min-height:600px;
    grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);
    border-color:#12244E;
    border-radius:20px;
}
body.parent-visa-page .visa-detail-hero-copy {
    padding:56px 58px 42px;
}
body.parent-visa-page .visa-detail-hero-copy::before,
body.parent-visa-page .visa-detail-eyebrow { display:none; }
body.parent-visa-page .visa-detail-hero h1 {
    max-width:650px;
    margin:0 0 24px;
    font-size:clamp(50px,4.35vw,66px);
    line-height:.98;
}
body.parent-visa-page .visa-detail-hero h1 em {
    margin-top:8px;
    font-size:.92em;
}
body.parent-visa-page .visa-detail-hero-copy>p {
    max-width:590px;
    margin:0;
    font-size:15px;
    line-height:1.7;
}
body.parent-visa-page .visa-detail-actions { margin-top:28px; }
body.parent-visa-page .visa-detail-actions a { min-height:48px; }
body.parent-visa-page .visa-detail-facts {
    width:100%;
    margin:38px 0 0;
    padding:20px 0 0;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
}
body.parent-visa-page .visa-detail-facts div,
body.parent-visa-page .visa-detail-facts div:first-child,
body.parent-visa-page .visa-detail-facts div:last-child {
    display:block;
    min-height:0;
    padding:0;
    border:0;
    background:transparent!important;
}
body.parent-visa-page .visa-detail-facts div::before { display:none; }
body.parent-visa-page .visa-detail-facts strong {
    display:block;
    margin:0 0 7px;
}
body.parent-visa-page .visa-detail-facts span {
    display:block;
    font-size:11px;
    line-height:1.45;
}
body.parent-visa-page .visa-detail-visual {
    min-height:600px;
    border-left:1px solid rgba(255,255,255,.12);
}
body.parent-visa-page .visa-detail-visual img { transform:none; }

body.parent-visa-page .partner-process-section {
    padding:64px 0 72px!important;
    background:#fff;
}
body.parent-visa-page .partner-process-shell,
body.parent-visa-page .partner-support-panel,
body.parent-visa-page .partner-trust-grid {
    border:1px solid var(--ve-line);
    border-radius:20px;
    box-shadow:none!important;
}
body.parent-visa-page .partner-process-heading {
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
}
body.parent-visa-page .partner-process-title,
body.parent-visa-page .partner-process-summary {
    padding:44px 46px;
}
body.parent-visa-page .partner-process-title { background:var(--ve-parent-soft); }
body.parent-visa-page .partner-process-title h2 {
    max-width:560px;
    margin:18px 0 0;
    font-size:clamp(38px,3.2vw,48px);
    line-height:1.03;
}
body.parent-visa-page .partner-process-summary { background:var(--ve-paper); }
body.parent-visa-page .partner-process-summary p {
    margin:18px 0 0;
    font-size:14px;
    line-height:1.7;
}
body.parent-visa-page .partner-roadmap-list,
body.parent-visa-page .partner-support-list {
    display:grid;
    padding:0;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:0;
    border-top:1px solid var(--ve-line);
    background:#fff;
}
body.parent-visa-page .partner-roadmap-list article,
body.parent-visa-page .partner-support-list article {
    display:block;
    min-height:190px;
    padding:30px 28px;
    border:0;
    border-right:1px solid var(--ve-line);
    border-bottom:1px solid var(--ve-line);
    background:#fff;
}
body.parent-visa-page .partner-roadmap-list article:nth-child(3n),
body.parent-visa-page .partner-support-list article:nth-child(3n) { border-right:0; }
body.parent-visa-page .partner-roadmap-list article:nth-last-child(-n+3),
body.parent-visa-page .partner-support-list article:nth-last-child(-n+3) { border-bottom:0; }
body.parent-visa-page .partner-roadmap-list article:nth-child(3n+1) { background:#FAFBFD; }
body.parent-visa-page .partner-roadmap-list article>span,
body.parent-visa-page .partner-support-list article>span {
    display:block;
    width:auto;
    height:auto;
    margin:0 0 28px;
    border:0;
    color:#8C6E36;
    background:transparent;
    font-size:10px;
    line-height:1;
    letter-spacing:.13em;
}
body.parent-visa-page .partner-roadmap-list h3,
body.parent-visa-page .partner-support-list h3 {
    margin:0 0 9px;
    color:var(--ve-ink);
    font-size:17px;
    line-height:1.35;
}
body.parent-visa-page .partner-roadmap-list p,
body.parent-visa-page .partner-support-list p {
    margin:0;
    color:var(--ve-muted);
    font-size:13px;
    line-height:1.62;
}
body.parent-visa-page .partner-process-note {
    margin:0;
    padding:15px 28px;
    border:0;
    border-top:1px solid var(--ve-line);
    border-radius:0;
    font-size:10px;
}

body.parent-visa-page .partner-support-panel {
    display:block;
    margin-top:32px;
    overflow:hidden;
    background:#fff;
}
body.parent-visa-page .partner-support-intro,
body.parent-visa-page .partner-trust-heading {
    display:grid;
    padding:44px 46px;
    grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);
    gap:14px 64px;
    align-items:end;
    color:var(--ve-ink);
    background:var(--ve-parent-soft);
}
body.parent-visa-page .partner-support-intro .partner-section-label,
body.parent-visa-page .partner-trust-heading .partner-section-label {
    grid-column:1/-1;
    color:#8C6E36;
}
body.parent-visa-page .partner-support-intro h2,
body.parent-visa-page .partner-trust-heading h2 {
    margin:0;
    color:var(--ve-ink);
    font-size:clamp(38px,3.2vw,48px);
    line-height:1.03;
}
body.parent-visa-page .partner-support-intro h2 em,
body.parent-visa-page .partner-trust-heading h2 em { color:#8C6E36; }
body.parent-visa-page .partner-support-intro p,
body.parent-visa-page .partner-trust-heading>p {
    margin:0;
    color:var(--ve-muted);
    font-size:14px;
    line-height:1.7;
}
body.parent-visa-page .partner-text-link {
    grid-column:2;
    color:var(--ve-ink);
}
body.parent-visa-page .partner-text-link span {
    color:#fff;
    background:#8C6E36;
}

body.parent-visa-page .partner-trust-section { padding:0 0 72px!important; }
body.parent-visa-page .partner-trust-grid {
    display:block;
    overflow:hidden;
    background:#fff;
}
body.parent-visa-page .partner-trust-points {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    border:0;
    border-top:1px solid var(--ve-line);
}
body.parent-visa-page .partner-trust-points article {
    display:block;
    min-height:180px;
    padding:28px;
    border:0;
    border-right:1px solid var(--ve-line);
}
body.parent-visa-page .partner-trust-points article:last-child { border-right:0; }
body.parent-visa-page .partner-trust-points strong {
    display:block;
    margin:0 0 24px;
    color:#8C6E36;
}
body.parent-visa-page .partner-trust-points h3 {
    margin:0 0 9px;
    font-size:17px;
}
body.parent-visa-page .partner-trust-points p {
    font-size:13px;
    line-height:1.62;
}

body.parent-visa-page .parent-country-section { padding:64px 0 72px!important; }
body.parent-visa-page .parent-country-heading {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);
    gap:14px 64px;
    margin-bottom:34px;
    align-items:end;
}
body.parent-visa-page .parent-country-heading .partner-section-label {
    grid-column:1/-1;
    margin:0;
}
body.parent-visa-page .parent-country-heading h2 {
    max-width:700px;
    margin:0;
    font-size:clamp(38px,3.4vw,50px);
    line-height:1.03;
}
body.parent-visa-page .parent-country-heading>p {
    margin:0;
    font-size:14px;
    line-height:1.7;
}
body.parent-visa-page .parent-country-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
}
body.parent-visa-page .parent-country-card {
    padding:34px;
    border-radius:16px;
}
body.parent-visa-page .parent-country-card-top { margin-bottom:30px; }
body.parent-visa-page .parent-country-card h3 {
    font-size:22px;
    line-height:1.3;
}
body.parent-visa-page .parent-country-card p,
body.parent-visa-page .parent-country-card li {
    font-size:13px;
    line-height:1.62;
}
body.parent-visa-page .parent-country-note {
    margin-top:16px;
    padding:16px 18px;
    font-size:11px;
    line-height:1.6;
}

body.parent-visa-page .contact-us-contact-form-section { padding:62px 0 76px!important; }
body.parent-visa-page .contact-us-contact-form-section>.container>.row {
    display:grid!important;
    max-width:none;
    margin:0;
    grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr);
    border:1px solid var(--ve-line);
    border-radius:20px;
    box-shadow:none!important;
}
body.parent-visa-page .contact-us-contact-form-section>.container>.row>.col-lg-6 {
    width:100%!important;
    max-width:100%!important;
    padding:0;
    flex:none!important;
}
body.parent-visa-page .contact-us-contact-form-section .spacing-25 {
    width:100%;
    height:100%;
    padding:48px 50px!important;
    background:var(--ve-parent-soft)!important;
}
body.parent-visa-page .contact_form>.row {
    display:grid;
    margin:0;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}
body.parent-visa-page .contact_form>.row>[class*="col-"] {
    width:auto;
    max-width:none;
    padding:0;
}
body.parent-visa-page .contact_form>.row>.col-md-12,
body.parent-visa-page .contact_form>.row>.mt-5 { grid-column:1/-1; }
body.parent-visa-page .contact_form input,
body.parent-visa-page .contact_form select,
body.parent-visa-page .contact_form textarea {
    margin:0!important;
    border-color:#E8D2A8!important;
    background:#fff!important;
}
body.parent-visa-page .contact-us-contact-form-section .g-map,
body.parent-visa-page .contact-us-contact-form-section .col-bg-img-thirty-seven,
body.parent-visa-page .contact-us-contact-form-section iframe {
    width:100%!important;
    height:100%!important;
    min-height:620px;
}

@media (max-width:991px) {
    body.parent-visa-page .visa-detail-hero-grid,
    body.parent-visa-page .partner-process-heading,
    body.parent-visa-page .partner-support-intro,
    body.parent-visa-page .partner-trust-heading,
    body.parent-visa-page .parent-country-heading,
    body.parent-visa-page .contact-us-contact-form-section>.container>.row {
        grid-template-columns:1fr;
    }
    body.parent-visa-page .visa-detail-hero-copy { order:1; }
    body.parent-visa-page .visa-detail-visual {
        order:2;
        min-height:420px;
        border-top:1px solid rgba(255,255,255,.12);
        border-left:0;
    }
    body.parent-visa-page .partner-text-link { grid-column:1; }
    body.parent-visa-page .partner-roadmap-list,
    body.parent-visa-page .partner-support-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
    body.parent-visa-page .partner-roadmap-list article:nth-child(3n),
    body.parent-visa-page .partner-support-list article:nth-child(3n) { border-right:1px solid var(--ve-line); }
    body.parent-visa-page .partner-roadmap-list article:nth-child(2n),
    body.parent-visa-page .partner-support-list article:nth-child(2n) { border-right:0; }
    body.parent-visa-page .parent-country-grid { grid-template-columns:1fr; }
    body.parent-visa-page .contact-us-contact-form-section .g-map,
    body.parent-visa-page .contact-us-contact-form-section .col-bg-img-thirty-seven,
    body.parent-visa-page .contact-us-contact-form-section iframe {
        min-height:340px;
        height:340px!important;
    }
}

@media (max-width:767px) {
    body.parent-visa-page { --parent-rail-gutter:24px; }
}

@media (max-width:575px) {
    body.parent-visa-page .visa-detail-hero { padding:14px 0 42px; }
    body.parent-visa-page .visa-detail-hero-grid,
    body.parent-visa-page .partner-process-shell,
    body.parent-visa-page .partner-support-panel,
    body.parent-visa-page .partner-trust-grid,
    body.parent-visa-page .contact-us-contact-form-section>.container>.row { border-radius:14px; }
    body.parent-visa-page .visa-detail-hero-copy { padding:32px 24px 28px; }
    body.parent-visa-page .visa-detail-hero h1 {
        max-width:310px;
        font-size:clamp(40px,11.5vw,48px);
    }
    body.parent-visa-page .visa-detail-hero-copy>p { font-size:14px; }
    body.parent-visa-page .visa-detail-actions,
    body.parent-visa-page .visa-detail-facts,
    body.parent-visa-page .partner-roadmap-list,
    body.parent-visa-page .partner-support-list,
    body.parent-visa-page .partner-trust-points,
    body.parent-visa-page .contact_form>.row { grid-template-columns:1fr; }
    body.parent-visa-page .visa-detail-facts { gap:0; }
    body.parent-visa-page .visa-detail-facts div,
    body.parent-visa-page .visa-detail-facts div:first-child,
    body.parent-visa-page .visa-detail-facts div:last-child {
        display:grid;
        padding:11px 0;
        grid-template-columns:34px 1fr;
        border-bottom:1px solid rgba(255,255,255,.16);
    }
    body.parent-visa-page .visa-detail-facts div:last-child { border-bottom:0; }
    body.parent-visa-page .visa-detail-visual { min-height:250px; }
    body.parent-visa-page .partner-process-section { padding:44px 0 52px!important; }
    body.parent-visa-page .partner-process-title,
    body.parent-visa-page .partner-process-summary,
    body.parent-visa-page .partner-support-intro,
    body.parent-visa-page .partner-trust-heading { padding:30px 24px; }
    body.parent-visa-page .partner-process-title h2,
    body.parent-visa-page .partner-support-intro h2,
    body.parent-visa-page .partner-trust-heading h2,
    body.parent-visa-page .parent-country-heading h2,
    body.parent-visa-page .contact-us-contact-form-section .section-title h2 { font-size:34px; }
    body.parent-visa-page .partner-roadmap-list article,
    body.parent-visa-page .partner-support-list article {
        min-height:0;
        padding:25px 24px;
        border-right:0!important;
    }
    body.parent-visa-page .partner-roadmap-list article:nth-last-child(-n+3),
    body.parent-visa-page .partner-support-list article:nth-last-child(-n+3) { border-bottom:1px solid var(--ve-line); }
    body.parent-visa-page .partner-roadmap-list article:last-child,
    body.parent-visa-page .partner-support-list article:last-child { border-bottom:0; }
    body.parent-visa-page .partner-trust-points article {
        min-height:0;
        padding:25px 24px!important;
        border-right:0;
        border-bottom:1px solid var(--ve-line);
    }
    body.parent-visa-page .partner-trust-points article:last-child { border-bottom:0; }
    body.parent-visa-page .parent-country-section { padding:46px 0 52px!important; }
    body.parent-visa-page .parent-country-card { padding:28px 24px; }
    body.parent-visa-page .contact-us-contact-form-section { padding:46px 0 56px!important; }
    body.parent-visa-page .contact-us-contact-form-section .spacing-25 { padding:30px 22px!important; }
    body.parent-visa-page .contact_form>.row>[class*="col-"] { grid-column:1; }
    body.parent-visa-page .contact-us-contact-form-section .g-map,
    body.parent-visa-page .contact-us-contact-form-section .col-bg-img-thirty-seven,
    body.parent-visa-page .contact-us-contact-form-section iframe {
        min-height:280px;
        height:280px!important;
    }
}
