/* Content-specific refinements for the Parent and Visitor visa pages. */
.parent-visa-page .home01-immigration-and-services-section .featured-title h3:after { content: "Explore parent pathways"; }
.visitor-visa-page .home01-immigration-and-services-section .featured-title h3:after { content: "Explore visitor pathways"; }
.parent-visa-page .visa-detail-visual img { object-position: center 35%; }
.visitor-visa-page .visa-detail-visual img { object-position: center; }
.parent-visa-page .visa-detail-visual-note span,
.visitor-visa-page .visa-detail-visual-note span { color: #134BC3; }

/* Parent migration is not a generic destination product. */
.parent-visa-page #legacy-parent-destinations { display: none !important; }
.parent-country-section {
    padding: 78px 0 82px;
    background: #F2F5FB;
}

@media (max-width: 575px) {
    .parent-country-section { padding: 40px 0 44px; }
    .parent-country-heading { gap: 10px; margin-bottom: 22px; }
    .parent-country-heading h2 { font-size: 34px; line-height: 1.02; }
    .parent-country-heading > p { font-size: 12.5px; line-height: 1.6; }
    .parent-country-grid { gap: 12px; }
    .parent-country-card { padding: 20px 18px; border-radius: 16px; }
    .parent-country-card-top { margin-bottom: 17px; }
    .parent-country-code { width: 40px; height: 40px; border-radius: 11px; font-size: 12px; }
    .parent-country-status { font-size: 8px; }
    .parent-country-card h3 { margin-bottom: 9px; font-size: 20px; }
    .parent-country-card p { margin-bottom: 12px; font-size: 11.5px; line-height: 1.6; }
    .parent-country-card ul { margin-bottom: 15px; }
    .parent-country-card li { padding: 7px 0 7px 19px; font-size: 10.5px; }
    .parent-country-card li:before { top: 12px; width: 5px; height: 5px; }
    .parent-country-note { margin-top: 12px; padding: 12px 14px; font-size: 10px; }
}
.parent-country-heading {
    display: grid;
    grid-template-columns: minmax(0, .85fr) minmax(320px, 1.15fr);
    gap: 60px;
    align-items: end;
    margin-bottom: 34px;
}
.parent-country-heading .partner-section-label { grid-column: 1 / -1; margin-bottom: -42px; }
.parent-country-heading h2 {
    margin: 0;
    color: #0E1C3C;
    font-size: clamp(38px, 4.3vw, 64px);
    line-height: .98;
    letter-spacing: -.045em;
}
.parent-country-heading h2 em { color: #134BC3; font-family: Georgia, serif; font-weight: 500; }
.parent-country-heading > p {
    margin: 0 0 4px;
    color: #505F7E;
    font-size: 16px;
    line-height: 1.75;
}
.parent-country-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
}
.parent-country-card {
    min-height: 100%;
    padding: 34px;
    border: 1px solid #DAE2F2;
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 18px 45px rgba(14, 28, 60, .07);
}
.parent-country-card--primary {
    color: #fff;
    border-color: #12244E;
    background: linear-gradient(145deg, #0E1C3C, #12244E);
    box-shadow: 0 22px 52px rgba(14, 28, 60, .17);
}
.parent-country-card-top { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 30px; }
.parent-country-code {
    display: inline-grid;
    width: 48px;
    height: 48px;
    place-items: center;
    border-radius: 14px;
    color: #fff;
    background: #134BC3;
    font-weight: 800;
    letter-spacing: .08em;
}
.parent-country-status {
    color: #134BC3;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
}
.parent-country-card--primary .parent-country-status { color: #134BC3; }
.parent-country-card h3 { margin: 0 0 15px; color: #0E1C3C; font-size: 25px; line-height: 1.25; }
.parent-country-card--primary h3 { color: #fff; }
.parent-country-card p { margin: 0 0 20px; color: #505F7E; font-size: 14px; line-height: 1.75; }
.parent-country-card--primary p { color: rgba(255,255,255,.72); }
.parent-country-card ul { margin: 0 0 27px; padding: 0; list-style: none; }
.parent-country-card li { position: relative; padding: 10px 0 10px 24px; border-top: 1px solid #E5EBF6; color: #183067; font-size: 13px; }
.parent-country-card--primary li { border-color: rgba(255,255,255,.12); color: rgba(255,255,255,.86); }
.parent-country-card li:before { content: ""; position: absolute; left: 1px; top: 16px; width: 7px; height: 7px; border-radius: 50%; background: #134BC3; }
.parent-country-card a { display: inline-flex; align-items: center; gap: 11px; color: #0E1C3C; font-size: 13px; font-weight: 800; }
.parent-country-card--primary a { color: #fff; }
.parent-country-card a span { color: #134BC3; font-size: 20px; transition: transform .2s ease; }
.parent-country-card a:hover span { transform: translateX(4px); }
.parent-country-note {
    margin: 22px 0 0;
    padding: 18px 22px;
    border-left: 3px solid #134BC3;
    border-radius: 0 12px 12px 0;
    color: #505F7E;
    background: #fff;
    font-size: 12px;
    line-height: 1.65;
}
.parent-country-note strong { color: #0E1C3C; }

@media (max-width: 991px) {
    .parent-country-heading { grid-template-columns: 1fr; gap: 16px; }
    .parent-country-heading .partner-section-label { grid-column: auto; margin-bottom: 4px; }
}
@media (max-width: 767px) {
    .parent-country-section { padding: 54px 0 58px; }
    .parent-country-grid { grid-template-columns: 1fr; }
    .parent-country-card { padding: 26px 22px; border-radius: 18px; }
}

@media (max-width: 575px) {
    .parent-country-section { padding: 40px 0 44px; }
    .parent-country-heading { gap: 10px; margin-bottom: 22px; }
    .parent-country-heading h2 { font-size: 34px; line-height: 1.02; }
    .parent-country-heading > p { font-size: 12.5px; line-height: 1.6; }
    .parent-country-grid { gap: 12px; }
    .parent-country-card { padding: 20px 18px; border-radius: 16px; }
    .parent-country-card-top { margin-bottom: 17px; }
    .parent-country-card h3 { margin-bottom: 9px; font-size: 20px; }
    .parent-country-card p { margin-bottom: 12px; font-size: 11.5px; line-height: 1.6; }
    .parent-country-card ul { margin-bottom: 15px; }
    .parent-country-card li { padding: 7px 0 7px 19px; font-size: 10.5px; }
    .parent-country-note { margin-top: 12px; padding: 12px 14px; font-size: 10px; }
}
