/* Spain Visa Alerts: appointment concierge, second-pass composition */
.mvp-site-spain {
    --sva2-navy: #102c50;
    --sva2-navy-deep: #0a1f3a;
    --sva2-coral: #c94f35;
    --sva2-coral-dark: #a93a25;
    --sva2-gold: #e3ad3e;
    --sva2-gold-soft: #f5d88e;
    --sva2-cream: #f7efe3;
    --sva2-paper: #fffdf9;
    --sva2-line: #decfbb;
    --sva2-muted: #596b82;
    --sva2-green: #277c68;
    color: var(--sva2-navy);
    background: var(--sva2-paper);
}

/* Spain 2026 contemporary utility system */
.mvp-site-spain {
    --sva2-navy: #1437d0;
    --sva2-navy-deep: #17213c;
    --sva2-coral: #d85b3f;
    --sva2-coral-dark: #b93f28;
    --sva2-gold: #d85b3f;
    --sva2-gold-soft: #f0a08d;
    --sva2-cream: #fcf8f1;
    --sva2-paper: #fffefa;
    --sva2-line: #d8dce8;
    --sva2-muted: #5e6780;
    --sva2-green: #16745a;
    color: #17213c;
    background: #fffefa;
    font-family: "Archivo", Arial, sans-serif;
    font-size: 16px;
    line-height: 1.6;
}

.mvp-site-spain *,
.mvp-site-spain *::before,
.mvp-site-spain *::after { box-sizing: border-box; }

.mvp-site-spain h1,
.mvp-site-spain h2,
.mvp-site-spain h3,
.mvp-site-spain h4,
.mvp-site-spain h5,
.mvp-site-spain h6,
.mvp-site-spain .sva2-route-place strong,
.mvp-site-spain .sva2-results-label span,
.mvp-site-spain .sva2-directory-route-title h3,
.mvp-site-spain .sva2-related-row strong {
    color: #17213c;
    font-family: "Archivo", Arial, sans-serif;
    font-weight: 800;
    letter-spacing: -.025em;
}

.mvp-site-spain h1 { font-size: clamp(2.55rem, 5vw, 4.65rem); line-height: 1.01; }
.mvp-site-spain h2 { font-size: clamp(1.85rem, 3vw, 3rem); line-height: 1.08; }
.mvp-site-spain h3 { line-height: 1.22; }
.mvp-site-spain p { color: #5e6780; }
.mvp-site-spain a { text-underline-offset: 3px; }
.mvp-site-spain .container { width: min(calc(100% - 48px), 1180px); }

.mvp-site-spain .btn {
    min-height: 48px;
    padding: 12px 20px;
    border-width: 2px;
    border-radius: 2px;
    box-shadow: none !important;
    font-family: "Archivo", Arial, sans-serif;
    font-size: .91rem;
    font-weight: 800;
}
.mvp-site-spain .btn-primary { border-color: #1437d0; background: #1437d0; }
.mvp-site-spain .btn-primary:hover,
.mvp-site-spain .btn-primary:focus { border-color: #0b269f; background: #0b269f; }
.mvp-site-spain .btn-outline-primary { border-color: #1437d0; color: #1437d0; background: transparent; }
.mvp-site-spain .btn-outline-primary:hover,
.mvp-site-spain .btn-outline-primary:focus { color: #fff; background: #1437d0; }
.mvp-site-spain .btn-light { border-color: #fff; color: #1437d0; background: #fff; }

.mvp-site-spain .form-control,
.mvp-site-spain .form-select {
    min-height: 54px;
    padding: .78rem .9rem;
    border: 1px solid #9ca5ba;
    border-radius: 2px;
    color: #17213c;
    background-color: #fff;
    font-family: "Archivo", Arial, sans-serif;
    box-shadow: none;
}
.mvp-site-spain textarea.form-control { min-height: 110px; }
.mvp-site-spain .form-control:focus,
.mvp-site-spain .form-select:focus { border-color: #1437d0; box-shadow: 0 0 0 3px rgba(20,55,208,.14); }
.mvp-site-spain .mvp-field-label,
.mvp-site-spain .form-label,
.mvp-site-spain .mvp-form-field,
.mvp-site-spain legend { color: #17213c; font-size: .82rem; font-weight: 700; }

.mvp-site-spain .sva2-kicker,
.mvp-site-spain .mvp-eyebrow {
    margin-bottom: 12px;
    color: #1437d0;
    font-size: .9rem;
    font-weight: 700;
    letter-spacing: 0;
    text-transform: none;
}

/* Header */
.mvp-site-spain .es-site-header { background: #fffefa; }
.mvp-site-spain .es-utility-bar { color: #fff; background: #1437d0; }
.mvp-site-spain .es-utility-bar span,
.mvp-site-spain .es-utility-inner { color: #fff; }
.mvp-site-spain .es-utility-inner { min-height: 34px; font-size: .72rem; font-weight: 600; }
.mvp-site-spain .es-main-nav { min-height: 82px; border-bottom: 1px solid #d8dce8; background: #fffefa; }
.mvp-site-spain .es-brand-logo { width: 240px; height: auto; }
.mvp-site-spain .es-main-nav .nav-link { color: #384258; font-size: .82rem; font-weight: 700; }
.mvp-site-spain .es-main-nav .nav-link:hover,
.mvp-site-spain .es-main-nav .nav-link:focus { color: #1437d0; }
.mvp-site-spain .es-menu-button { border: 1px solid #1437d0; border-radius: 2px; color: #1437d0; }

/* Home */
.mvp-site-spain .sva2-home { padding: 66px 0 44px; border-bottom: 1px solid #d8dce8; background: #fffefa; }
.mvp-site-spain .sva2-home-opening { grid-template-columns: minmax(0, 1.3fr) minmax(310px, .7fr); gap: 58px; align-items: center; }
.mvp-site-spain .sva2-home-copy h1 { max-width: 780px; font-size: clamp(3rem, 5.4vw, 4.9rem); line-height: .98; letter-spacing: -.045em; }
.mvp-site-spain .sva2-home-copy > p { max-width: 700px; margin-top: 24px; font-size: 1.08rem; line-height: 1.7; }
.mvp-site-spain .sva2-proof-line { gap: 10px 22px; margin-top: 24px; }
.mvp-site-spain .sva2-proof-line span { color: #384258; font-size: .78rem; }
.mvp-site-spain .sva2-proof-line i { color: #1437d0; }
.mvp-site-spain .sva2-concierge-note { padding: 28px; border: 1px solid #d8dce8; border-top: 6px solid #d85b3f; color: #17213c; background: #fcf8f1; }
.mvp-site-spain .sva2-note-number { margin-bottom: 30px; color: #1437d0; font-family: "Archivo", Arial, sans-serif; }
.mvp-site-spain .sva2-note-label { color: #d85b3f; letter-spacing: 0; text-transform: none; }
.mvp-site-spain .sva2-concierge-note h2 { color: #17213c; font-size: 1.55rem; }
.mvp-site-spain .sva2-concierge-note > p:last-child { color: #5e6780; }
.mvp-site-spain .sva2-brief { margin-top: 42px; border: 1px solid #b9c0d0; border-top: 5px solid #1437d0; border-radius: 0; box-shadow: none; }
.mvp-site-spain .sva2-brief-head { padding: 20px 24px; border-bottom: 1px solid #d8dce8; background: #fcf8f1; }
.mvp-site-spain .sva2-brief-head span { color: #d85b3f; letter-spacing: 0; text-transform: none; }
.mvp-site-spain .sva2-brief-head h2 { font-size: 1.55rem; }
.mvp-site-spain .sva2-brief-fields { padding: 24px; }
.mvp-site-spain .sva2-brief-context { padding: 0 24px 22px; }
.mvp-site-spain .sva2-services { padding: 76px 0; }
.mvp-site-spain .sva2-services-layout { grid-template-columns: .75fr 1.25fr; gap: 70px; }
.mvp-site-spain .sva2-section-intro h2,
.mvp-site-spain .sva2-handoff-copy h2,
.mvp-site-spain .sva2-routes-head h2,
.mvp-site-spain .sva2-faq-intro h2 { font-size: clamp(2rem, 3.5vw, 3.2rem); }
.mvp-site-spain .sva2-service-menu { border-top: 3px solid #1437d0; }
.mvp-site-spain .sva2-service-row { grid-template-columns: 50px minmax(0,1fr) 40px; padding: 28px 0; }
.mvp-site-spain .sva2-service-index { border-color: #1437d0; color: #1437d0; }
.mvp-site-spain .sva2-service-row p { color: #d85b3f; letter-spacing: 0; text-transform: none; }
.mvp-site-spain .sva2-service-row h3 { font-size: 1.45rem; }
.mvp-site-spain .sva2-handoff { padding: 74px 0; background: #17213c; }
.mvp-site-spain .sva2-handoff-layout { gap: 72px; }
.mvp-site-spain .sva2-handoff-list li { border-color: #46506a; }
.mvp-site-spain .sva2-handoff-list h3 { font-family: "Archivo", Arial, sans-serif; }
.mvp-site-spain .sva2-routes,
.mvp-site-spain .sva2-related-routes,
.mvp-site-spain .sva2-faq,
.mvp-site-spain .sva2-route-faq { padding: 74px 0; }
.mvp-site-spain .sva2-route-list,
.mvp-site-spain .sva2-related-list,
.mvp-site-spain .sva2-faq-list { border-top-color: #1437d0; }
.mvp-site-spain .sva2-route-row { min-height: 94px; }
.mvp-site-spain .sva2-route-row:hover { background: #f1f3ff; }
.mvp-site-spain .sva2-route-place strong { font-size: 1.05rem; }
.mvp-site-spain .sva2-route-cost strong { color: #1437d0; }
.mvp-site-spain .sva2-faq { background: #fcf8f1; }
.mvp-site-spain .sva2-closing { padding: 50px 0; background: #d85b3f; }
.mvp-site-spain .sva2-closing-inner span { letter-spacing: 0; text-transform: none; }

/* Directory, route, city and destination */
.mvp-site-spain .sva2-directory,
.mvp-site-spain .sva2-route-opening { padding-top: 58px; background: #fffefa; }
.mvp-site-spain .sva2-directory-opening { gap: 70px; padding-bottom: 38px; }
.mvp-site-spain .sva2-directory-opening h1,
.mvp-site-spain .sva2-route-title h1 { font-size: clamp(2.8rem, 5vw, 4.45rem); }
.mvp-site-spain .sva2-directory-layout { grid-template-columns: 290px minmax(0,1fr); gap: 44px; padding-top: 42px; }
.mvp-site-spain .sva2-filter-desk { padding: 22px; border: 1px solid #b9c0d0; border-top: 5px solid #1437d0; background: #fcf8f1; }
.mvp-site-spain .sva2-results-label { border-bottom-color: #1437d0; }
.mvp-site-spain .sva2-results-label span { font-size: 1.35rem; }
.mvp-site-spain .sva2-directory-route-main:hover { background: #f1f3ff; }
.mvp-site-spain .sva2-directory-route-title h3 { font-size: 1rem; }
.mvp-site-spain .sva2-directory-prices strong,
.mvp-site-spain .sva2-directory-arrow { color: #1437d0; }
.mvp-site-spain .sva2-directory-footer { border-top: 4px solid #1437d0; }
.mvp-site-spain .sva2-route-title-row { gap: 62px; }
.mvp-site-spain .sva2-route-dossier { border: 1px solid #b9c0d0; border-top: 5px solid #d85b3f; background: #fcf8f1; }
.mvp-site-spain .sva2-route-dossier > p { color: #d85b3f; letter-spacing: 0; text-transform: none; }
.mvp-site-spain .sva2-route-promise { border-top: 3px solid #1437d0; }
.mvp-site-spain .sva2-route-promise i { color: #1437d0; }
.mvp-site-spain .sva2-route-services { background: #fcf8f1; }
.mvp-site-spain .sva2-product-row,
.mvp-site-spain .mvp-product-card { border-radius: 0; box-shadow: none; }
.mvp-site-spain .sva2-product-row.is-featured { border-top-color: #1437d0; }
.mvp-site-spain .sva2-product-heading .mvp-product-icon { color: #1437d0; background: #eef1ff; }
.mvp-site-spain .mvp-product-badge { color: #fff; background: #1437d0; }
.mvp-site-spain .mvp-product-price-value { color: #1437d0; }
.mvp-site-spain .sva2-responsibility-grid article { border-radius: 0; box-shadow: none; }
.mvp-site-spain .sva2-preparation { background: #17213c; }
.mvp-site-spain .sva2-preparation h2 { color: #fff; }
.mvp-site-spain .sva2-route-guide { background: #fffefa; }
.mvp-site-spain .mvp-destination-hero,
.mvp-site-spain .mvp-local-hero,
.mvp-site-spain .mvp-location-index-hero { background: #fcf8f1 !important; }
.mvp-site-spain .mvp-destination-route,
.mvp-site-spain .mvp-local-route-card,
.mvp-site-spain .mvp-location-market,
.mvp-site-spain .mvp-local-guide,
.mvp-site-spain .mvp-destination-facts { border-radius: 0 !important; box-shadow: none !important; }

/* Advice and article */
.mvp-site-spain .blog-hero,
.mvp-site-spain .post-hero,
.mvp-site-spain .sva2-journal-hero {
    padding: 58px 0 46px;
    color: #17213c;
    background: #fcf8f1 !important;
}
.mvp-site-spain .blog-hero h1,
.mvp-site-spain .post-hero h1,
.mvp-site-spain .sva2-journal-opening h1 { color: #17213c; font-size: clamp(2.6rem, 5vw, 4.3rem); }
.mvp-site-spain .blog-hero p,
.mvp-site-spain .post-meta,
.mvp-site-spain .post-breadcrumb a { color: #5e6780; }
.mvp-site-spain .post-breadcrumb a:hover { color: #1437d0; }
.mvp-site-spain .post-category-tag,
.mvp-site-spain .blog-card-category { border-radius: 0; color: #1437d0; background: #eef1ff; }
.mvp-site-spain .blog-card,
.mvp-site-spain .post-content-card,
.mvp-site-spain .post-readiness-panel { border-radius: 0; box-shadow: none; }
.mvp-site-spain .blog-card:hover { transform: none; border-color: #1437d0; box-shadow: none; }
.mvp-site-spain .blog-card-img { background: #eef1ff; }
.mvp-site-spain .blog-card-title,
.mvp-site-spain .post-content h2,
.mvp-site-spain .post-content h3 { color: #17213c; font-family: "Archivo", Arial, sans-serif; }
.mvp-site-spain .post-content a { color: #1437d0; }

/* Login, checkout, account and legal */
.mvp-site-spain .sva2-login { background: #fcf8f1; }
.mvp-site-spain .sva2-login-layout { border: 1px solid #b9c0d0; border-radius: 0; box-shadow: none; }
.mvp-site-spain .sva2-login-intro { background: #17213c; }
.mvp-site-spain .sva2-login-intro h1 { color: #fff; font-size: clamp(2.5rem, 4.7vw, 4.1rem); }
.mvp-site-spain .sva2-login-panel { background: #fff; }
.mvp-site-spain .sva2-login-recovery { border-radius: 0; background: #fcf8f1; }
.mvp-site-spain .sva2-checkout { background: #fcf8f1; }
.mvp-site-spain .sva2-checkout-heading h1 { font-size: clamp(2.5rem, 4.5vw, 4rem); }
.mvp-site-spain .sva2-checkout-progress .is-active b { background: #1437d0; }
.mvp-site-spain .sva2-checkout-form { border-radius: 0; box-shadow: none; }
.mvp-site-spain .sva2-checkout-form .mvp-form-section { border-color: #d8dce8; }
.mvp-site-spain .sva2-checkout-form .mvp-form-section-head > span { color: #1437d0; border-color: #1437d0; }
.mvp-site-spain .mvp-service-switch-option,
.mvp-site-spain .mvp-segmented-control span,
.mvp-site-spain .mvp-weekday-grid span,
.mvp-site-spain .mvp-notification-option > span,
.mvp-site-spain .mvp-check-field,
.mvp-site-spain .mvp-consent-field { border-radius: 0 !important; box-shadow: none !important; }
.mvp-site-spain .mvp-service-switch-option.is-selected,
.mvp-site-spain .mvp-segmented-control input:checked + span,
.mvp-site-spain .mvp-weekday-grid input:checked + span { border-color: #1437d0; background: #eef1ff; }
.mvp-site-spain .sva2-checkout-receipt { border-radius: 0; background: #17213c; box-shadow: none; }
.mvp-site-spain .mvp-account-setup,
.mvp-site-spain .mvp-dashboard-page,
.mvp-site-spain .mvp-access-page,
.mvp-site-spain .mvp-success-page,
.mvp-site-spain .mvp-edit-shell { background: #fcf8f1; }
.mvp-site-spain .card,
.mvp-site-spain .alert,
.mvp-site-spain .mvp-order-card,
.mvp-site-spain .mvp-dashboard-aside,
.mvp-site-spain .mvp-access-form,
.mvp-site-spain .mvp-success-main,
.mvp-site-spain .mvp-edit-panel { border-radius: 0 !important; box-shadow: none !important; }
.mvp-site-spain.mvp-surface-legal main > .container { width: min(calc(100% - 48px), 960px); padding-top: 58px !important; padding-bottom: 72px !important; }
.mvp-site-spain.mvp-surface-legal main h1 { margin-bottom: 12px !important; font-size: clamp(2.6rem, 5vw, 4.2rem); }
.mvp-site-spain.mvp-surface-legal main h2 { margin-top: 46px !important; font-size: 1.65rem; }
.mvp-site-spain.mvp-surface-legal main h4 { margin-top: 28px !important; font-size: 1.05rem; }
.mvp-site-spain.mvp-surface-legal main .alert-info { border-color: #1437d0; color: #17213c; background: #eef1ff; }

/* Footer */
.mvp-site-spain .es-footer-punch { background: #d85b3f; }
.mvp-site-spain .es-footer-punch h2 { color: #fff; font-size: clamp(1.75rem, 3vw, 2.6rem); }
.mvp-site-spain .es-footer-punch small { letter-spacing: 0; text-transform: none; }
.mvp-site-spain .es-footer-main { background: #17213c; }
.mvp-site-spain .es-footer-logo img { width: 230px; height: auto; }
.mvp-site-spain .es-footer-grid h3 { color: #fff; font-size: .9rem; letter-spacing: 0; text-transform: none; }

@media (max-width: 991px) {
    .mvp-site-spain .container { width: min(calc(100% - 36px), 1180px); }
    .mvp-site-spain .es-main-nav { min-height: 72px; }
    .mvp-site-spain .es-brand-logo { width: 210px; }
    .mvp-site-spain .navbar-collapse { margin-top: 14px; padding: 16px; border: 1px solid #d8dce8; background: #fff; }
    .mvp-site-spain .sva2-home-opening,
    .mvp-site-spain .sva2-services-layout,
    .mvp-site-spain .sva2-handoff-layout,
    .mvp-site-spain .sva2-faq-layout,
    .mvp-site-spain .sva2-route-title-row,
    .mvp-site-spain .sva2-route-services-layout { grid-template-columns: 1fr; gap: 36px; }
    .mvp-site-spain .sva2-home-copy h1 { max-width: 720px; }
    .mvp-site-spain .sva2-brief-fields { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .mvp-site-spain .sva2-brief-fields .mvp-route-finder-submit { width: 100%; }
    .mvp-site-spain .sva2-directory-layout { grid-template-columns: 250px minmax(0,1fr); gap: 28px; }
}

@media (max-width: 767px) {
    .mvp-site-spain { font-size: 15px; }
    .mvp-site-spain .container { width: min(calc(100% - 28px), 1180px); }
    .mvp-site-spain .es-utility-inner span:first-child { display: none; }
    .mvp-site-spain .es-utility-inner { justify-content: center; }
    .mvp-site-spain .sva2-home { padding: 42px 0 30px; }
    .mvp-site-spain .sva2-home-copy h1,
    .mvp-site-spain .sva2-directory-opening h1,
    .mvp-site-spain .sva2-route-title h1,
    .mvp-site-spain .blog-hero h1,
    .mvp-site-spain .post-hero h1,
    .mvp-site-spain .sva2-login-intro h1,
    .mvp-site-spain .sva2-checkout-heading h1 { font-size: 2.55rem; line-height: 1.02; }
    .mvp-site-spain .sva2-home-opening { gap: 28px; }
    .mvp-site-spain .sva2-concierge-note { padding: 22px; }
    .mvp-site-spain .sva2-note-number { margin-bottom: 18px; }
    .mvp-site-spain .sva2-brief { margin-top: 28px; }
    .mvp-site-spain .sva2-brief-head { grid-template-columns: 1fr; gap: 8px; padding: 18px; }
    .mvp-site-spain .sva2-brief-head p { margin: 0; }
    .mvp-site-spain .sva2-brief-fields { grid-template-columns: 1fr; padding: 18px; }
    .mvp-site-spain .sva2-brief-context { padding: 0 18px 18px; }
    .mvp-site-spain .sva2-services,
    .mvp-site-spain .sva2-handoff,
    .mvp-site-spain .sva2-routes,
    .mvp-site-spain .sva2-faq,
    .mvp-site-spain .sva2-related-routes,
    .mvp-site-spain .sva2-route-faq { padding: 54px 0; }
    .mvp-site-spain .sva2-service-row { grid-template-columns: 42px minmax(0,1fr); gap: 14px; }
    .mvp-site-spain .sva2-service-row > i { display: none; }
    .mvp-site-spain .sva2-routes-head,
    .mvp-site-spain .sva2-closing-inner,
    .mvp-site-spain .es-footer-punch-inner { align-items: flex-start; }
    .mvp-site-spain .sva2-route-row { grid-template-columns: 1fr auto; gap: 12px; }
    .mvp-site-spain .sva2-route-provider { display: none; }
    .mvp-site-spain .sva2-directory-opening { grid-template-columns: 1fr; gap: 18px; }
    .mvp-site-spain .sva2-directory-layout { grid-template-columns: 1fr; }
    .mvp-site-spain .sva2-filter-desk { position: static; }
    .mvp-site-spain .sva2-directory-route-main { grid-template-columns: minmax(0,1fr) 34px; }
    .mvp-site-spain .sva2-directory-provider,
    .mvp-site-spain .sva2-directory-prices { grid-column: 1; }
    .mvp-site-spain .sva2-directory-arrow { grid-column: 2; grid-row: 1 / span 3; }
    .mvp-site-spain .blog-grid { grid-template-columns: 1fr; }
    .mvp-site-spain .post-content-card { padding: 24px 20px; }
    .mvp-site-spain.mvp-surface-legal main > .container { width: min(calc(100% - 28px), 960px); padding-top: 38px !important; }
}

/* Deadline review corrections */
.mvp-site-spain .sva2-kicker,
.mvp-site-spain .mvp-eyebrow { display: none; }
.mvp-site-spain .sva2-home { border-bottom: 0; }
.mvp-site-spain .sva2-home-opening {
    grid-template-columns: minmax(0, 1fr) 420px;
    gap: 64px;
    align-items: start;
}
.mvp-site-spain .sva2-home-copy h1 {
    max-width: 720px;
    font-size: clamp(3.25rem, 4.25vw, 3.625rem);
    line-height: 1.02;
    letter-spacing: -.04em;
}
.mvp-site-spain .sva2-home-finder {
    margin: 0;
    border: 1px solid #c5cad7;
    background: #fcf8f1;
}
.mvp-site-spain .sva2-home-finder .sva2-brief-head {
    display: block;
    padding: 24px 24px 10px;
    border: 0;
    background: transparent;
}
.mvp-site-spain .sva2-home-finder .sva2-brief-head h2 { margin: 0; font-size: 1.45rem; }
.mvp-site-spain .sva2-home-finder .sva2-brief-head p { margin: 6px 0 0; }
.mvp-site-spain .sva2-home-finder .sva2-brief-fields {
    grid-template-columns: 1fr;
    gap: 14px;
    padding: 12px 24px 16px;
}
.mvp-site-spain .sva2-home-finder .mvp-route-finder-submit { width: 100%; }
.mvp-site-spain .sva2-home-finder .sva2-brief-context { padding: 0 24px 22px; }
.mvp-site-spain .sva2-directory-opening,
.mvp-site-spain .sva2-directory-footer,
.mvp-site-spain .sva2-responsibility-head { border: 0; }
.mvp-site-spain .sva2-directory-opening h1,
.mvp-site-spain .sva2-route-title h1,
.mvp-site-spain .sva2-journal-opening h1,
.mvp-site-spain .blog-hero h1,
.mvp-site-spain .post-hero h1 { font-size: clamp(3rem, 4.5vw, 3.75rem); }

@media (max-width: 991px) {
    .mvp-site-spain .sva2-home-opening { grid-template-columns: 1fr; gap: 34px; }
    .mvp-site-spain .sva2-home-finder { max-width: 620px; }
}

@media (max-width: 767px) {
    .mvp-site-spain .sva2-home-copy h1,
    .mvp-site-spain .sva2-directory-opening h1,
    .mvp-site-spain .sva2-route-title h1,
    .mvp-site-spain .sva2-journal-opening h1,
    .mvp-site-spain .blog-hero h1,
    .mvp-site-spain .post-hero h1 { font-size: 2.5rem; }
    .mvp-site-spain .sva2-home-finder .sva2-brief-head { padding: 20px 18px 8px; }
    .mvp-site-spain .sva2-home-finder .sva2-brief-fields { padding: 10px 18px 14px; }
    .mvp-site-spain .sva2-home-finder .sva2-brief-context { padding: 0 18px 18px; }
}

.mvp-site-spain [hidden] {
    display: none !important;
}

.mvp-site-spain .container {
    width: min(100% - 40px, 1240px);
}

.mvp-site-spain h1,
.mvp-site-spain h2,
.mvp-site-spain h3 {
    color: var(--sva2-navy);
}

.mvp-site-spain .sva2-kicker {
    display: block;
    margin-bottom: 14px;
    color: var(--sva2-coral-dark);
    font-size: .73rem;
    font-weight: 800;
    letter-spacing: .13em;
    line-height: 1.2;
    text-transform: uppercase;
}

.mvp-site-spain .btn {
    min-height: 48px;
    padding: 12px 22px;
    border-radius: 8px;
    font-weight: 800;
}

.mvp-site-spain .btn-primary {
    border-color: var(--sva2-coral);
    color: #fff;
    background: var(--sva2-coral);
    box-shadow: 0 8px 18px rgba(169, 58, 37, .16);
}

.mvp-site-spain .btn-primary:hover,
.mvp-site-spain .btn-primary:focus {
    border-color: var(--sva2-coral-dark);
    color: #fff;
    background: var(--sva2-coral-dark);
}

.mvp-site-spain .btn-outline-primary {
    border-color: var(--sva2-navy);
    color: var(--sva2-navy);
    background: transparent;
}

.mvp-site-spain .btn-outline-primary:hover,
.mvp-site-spain .btn-outline-primary:focus {
    border-color: var(--sva2-navy);
    color: #fff;
    background: var(--sva2-navy);
}

.mvp-site-spain .form-control,
.mvp-site-spain .form-select {
    min-height: 52px;
    border: 1px solid #b9aa98;
    border-radius: 7px;
    color: var(--sva2-navy);
    background-color: #fff;
    box-shadow: none;
}

.mvp-site-spain .form-control:focus,
.mvp-site-spain .form-select:focus {
    border-color: var(--sva2-coral);
    box-shadow: 0 0 0 3px rgba(201, 79, 53, .13);
}

/* Navigation */
.mvp-site-spain .es-site-header {
    position: relative;
    z-index: 100;
    background: var(--sva2-paper);
}

.mvp-site-spain .es-utility-bar {
    color: var(--sva2-navy);
    background: #f1dfb5;
}

.mvp-site-spain .es-main-nav {
    border-bottom: 1px solid var(--sva2-line);
    background: var(--sva2-paper);
}

.mvp-site-spain .es-main-nav .nav-link {
    color: #2d405c;
    font-size: .82rem;
}

.mvp-site-spain .es-main-nav .nav-link:hover,
.mvp-site-spain .es-main-nav .nav-link:focus {
    color: var(--sva2-coral-dark);
}

/* Home opening and brief */
.mvp-site-spain .sva2-home {
    overflow: hidden;
    padding: 72px 0 42px;
    border-bottom: 1px solid var(--sva2-line);
    background: var(--sva2-cream);
}

.mvp-site-spain .sva2-home-opening {
    display: grid;
    grid-template-columns: minmax(0, 1.65fr) minmax(300px, .65fr);
    gap: 80px;
    align-items: end;
}

.mvp-site-spain .sva2-home-copy h1 {
    max-width: 880px;
    margin: 0;
    font-size: clamp(3.6rem, 6.4vw, 6.1rem);
    line-height: .96;
    letter-spacing: -.035em;
}

.mvp-site-spain .sva2-home-copy > p {
    max-width: 760px;
    margin: 30px 0 0;
    color: var(--sva2-muted);
    font-size: 1.18rem;
    line-height: 1.7;
}

.mvp-site-spain .sva2-proof-line {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 28px;
    margin-top: 28px;
}

.mvp-site-spain .sva2-proof-line span {
    display: inline-flex;
    gap: 8px;
    align-items: center;
    color: #344964;
    font-size: .82rem;
    font-weight: 700;
}

.mvp-site-spain .sva2-proof-line i {
    color: var(--sva2-green);
    font-size: 1.05rem;
}

.mvp-site-spain .sva2-concierge-note {
    padding: 32px;
    border-top: 5px solid var(--sva2-gold);
    color: #fff;
    background: var(--sva2-navy);
}

.mvp-site-spain .sva2-note-number {
    display: block;
    margin-bottom: 46px;
    color: var(--sva2-gold-soft);
    font: 700 1rem/1 "Manrope", sans-serif;
}

.mvp-site-spain .sva2-note-label {
    margin: 0 0 10px;
    color: #e6ba56;
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.mvp-site-spain .sva2-concierge-note h2 {
    margin: 0;
    color: #fff;
    font-size: 1.85rem;
    line-height: 1.18;
}

.mvp-site-spain .sva2-concierge-note > p:last-child {
    margin: 18px 0 0;
    color: #c9d5e5;
    font-size: .9rem;
    line-height: 1.65;
}

.mvp-site-spain .sva2-brief {
    display: block;
    margin-top: 52px;
    padding: 0;
    border: 1px solid var(--sva2-line);
    border-radius: 0;
    background: #fff;
    box-shadow: 0 18px 40px rgba(32, 46, 66, .09);
}

.mvp-site-spain .sva2-brief-head {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    align-items: end;
    padding: 22px 28px;
    border-bottom: 1px solid var(--sva2-line);
}

.mvp-site-spain .sva2-brief-head span {
    color: var(--sva2-coral-dark);
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.mvp-site-spain .sva2-brief-head h2 {
    margin: 5px 0 0;
    font-size: 1.8rem;
}

.mvp-site-spain .sva2-brief-head p {
    max-width: 440px;
    margin: 0 0 4px auto;
    color: var(--sva2-muted);
    font-size: .86rem;
}

.mvp-site-spain .sva2-brief-fields {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr)) auto;
    gap: 14px;
    align-items: end;
    padding: 26px 28px 18px;
}

.mvp-site-spain .sva2-brief-fields .mvp-route-finder-submit {
    min-width: 180px;
}

.mvp-site-spain .sva2-brief-context {
    margin: 0;
    padding: 0 28px 22px;
    color: var(--sva2-muted);
    background: transparent;
}

.mvp-site-spain .sva2-independence {
    max-width: 1000px;
    margin: 18px 0 0;
    color: #756d63;
    font-size: .72rem;
    line-height: 1.55;
}

/* Home service menu */
.mvp-site-spain .sva2-services {
    padding: 92px 0;
    background: var(--sva2-paper);
}

.mvp-site-spain .sva2-services-layout {
    display: grid;
    grid-template-columns: .72fr 1.28fr;
    gap: 90px;
    align-items: start;
}

.mvp-site-spain .sva2-section-intro h2,
.mvp-site-spain .sva2-handoff-copy h2,
.mvp-site-spain .sva2-routes-head h2,
.mvp-site-spain .sva2-faq-intro h2 {
    margin: 0;
    font-size: clamp(2.35rem, 4vw, 3.8rem);
    line-height: 1.06;
}

.mvp-site-spain .sva2-section-intro > p,
.mvp-site-spain .sva2-faq-intro > p {
    margin: 22px 0;
    color: var(--sva2-muted);
    line-height: 1.7;
}

.mvp-site-spain .sva2-text-link {
    display: inline-flex;
    min-height: 44px;
    gap: 10px;
    align-items: center;
    color: var(--sva2-coral-dark);
    font-weight: 800;
    text-decoration: none;
}

.mvp-site-spain .sva2-service-menu {
    border-top: 1px solid var(--sva2-navy);
}

.mvp-site-spain .sva2-service-row {
    display: grid;
    grid-template-columns: 56px minmax(0, 1fr) 48px;
    gap: 22px;
    align-items: start;
    padding: 34px 0;
    border-bottom: 1px solid var(--sva2-line);
}

.mvp-site-spain .sva2-service-index {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border: 1px solid var(--sva2-line);
    color: var(--sva2-coral-dark);
    font-weight: 800;
}

.mvp-site-spain .sva2-service-row p {
    margin: 0 0 8px;
    color: var(--sva2-coral-dark);
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.mvp-site-spain .sva2-service-row h3 {
    margin: 0 0 10px;
    font-size: 1.8rem;
}

.mvp-site-spain .sva2-service-row div > span {
    color: var(--sva2-muted);
    line-height: 1.65;
}

.mvp-site-spain .sva2-service-row > i {
    color: var(--sva2-gold);
    font-size: 2rem;
}

/* Home handoff */
.mvp-site-spain .sva2-handoff {
    padding: 88px 0;
    color: #fff;
    background: var(--sva2-navy);
}

.mvp-site-spain .sva2-handoff-layout {
    display: grid;
    grid-template-columns: .78fr 1.22fr;
    gap: 90px;
}

.mvp-site-spain .sva2-handoff .sva2-kicker {
    color: var(--sva2-gold-soft);
}

.mvp-site-spain .sva2-handoff-copy h2 {
    color: #fff;
}

.mvp-site-spain .sva2-handoff-copy p {
    margin: 22px 0 0;
    color: #c5d1e2;
    line-height: 1.75;
}

.mvp-site-spain .sva2-handoff-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.mvp-site-spain .sva2-handoff-list li {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 20px;
    padding: 26px 0;
    border-top: 1px solid #344d70;
}

.mvp-site-spain .sva2-handoff-list li:last-child {
    border-bottom: 1px solid #344d70;
}

.mvp-site-spain .sva2-handoff-list li > span {
    color: var(--sva2-gold-soft);
    font-weight: 800;
}

.mvp-site-spain .sva2-handoff-list h3 {
    margin: 0 0 7px;
    color: #fff;
    font: 800 1.05rem/1.35 "Manrope", sans-serif;
}

.mvp-site-spain .sva2-handoff-list p {
    margin: 0;
    color: #b8c7dc;
    font-size: .88rem;
    line-height: 1.65;
}

/* Home route rows */
.mvp-site-spain .sva2-routes,
.mvp-site-spain .sva2-related-routes {
    padding: 88px 0;
    background: #fff;
}

.mvp-site-spain .sva2-routes-head {
    display: flex;
    gap: 40px;
    align-items: end;
    justify-content: space-between;
    margin-bottom: 34px;
}

.mvp-site-spain .sva2-route-list,
.mvp-site-spain .sva2-related-list {
    border-top: 2px solid var(--sva2-navy);
}

.mvp-site-spain .sva2-route-row {
    display: grid;
    grid-template-columns: minmax(300px, 1.35fr) minmax(180px, .7fr) 130px 72px;
    gap: 22px;
    align-items: center;
    min-height: 104px;
    padding: 20px 16px;
    border-bottom: 1px solid var(--sva2-line);
    color: var(--sva2-navy);
    text-decoration: none;
    transition: background-color .2s ease;
}

.mvp-site-spain .sva2-route-row:hover {
    color: var(--sva2-navy);
    background: var(--sva2-cream);
}

.mvp-site-spain .sva2-route-place {
    display: flex;
    gap: 16px;
    align-items: center;
}

.mvp-site-spain .sva2-route-place .mvp-flag-image,
.mvp-site-spain .sva2-route-place img,
.mvp-site-spain .sva2-directory-route-title img,
.mvp-site-spain .sva2-related-row img {
    width: 42px;
    height: 30px;
    object-fit: cover;
    border: 1px solid var(--sva2-line);
}

.mvp-site-spain .sva2-route-place span,
.mvp-site-spain .sva2-route-provider,
.mvp-site-spain .sva2-route-cost {
    display: flex;
    flex-direction: column;
}

.mvp-site-spain .sva2-route-place small,
.mvp-site-spain .sva2-route-provider small,
.mvp-site-spain .sva2-route-cost small {
    margin-bottom: 4px;
    color: #77849a;
    font-size: .69rem;
}

.mvp-site-spain .sva2-route-place strong {
    font: 700 1.12rem/1.3 "Fraunces", Georgia, serif;
}

.mvp-site-spain .sva2-route-provider {
    color: #40536d;
    font-size: .82rem;
}

.mvp-site-spain .sva2-route-cost strong {
    color: var(--sva2-coral-dark);
}

.mvp-site-spain .sva2-route-open {
    display: inline-flex;
    gap: 8px;
    align-items: center;
    justify-content: flex-end;
    font-size: .8rem;
    font-weight: 800;
}

/* FAQ and closing */
.mvp-site-spain .sva2-faq,
.mvp-site-spain .sva2-route-faq {
    padding: 88px 0;
    background: var(--sva2-cream);
}

.mvp-site-spain .sva2-faq-layout {
    display: grid;
    grid-template-columns: .68fr 1.32fr;
    gap: 90px;
    align-items: start;
}

.mvp-site-spain .sva2-faq-list {
    max-width: none;
    margin: 0;
    border-top: 2px solid var(--sva2-navy);
}

.mvp-site-spain .sva2-faq-list .mvp-faq-item {
    border: 0;
    border-bottom: 1px solid var(--sva2-line);
    border-radius: 0;
    background: transparent;
}

.mvp-site-spain .sva2-faq-list .mvp-faq-item summary {
    min-height: 68px;
    padding: 20px 4px;
}

.mvp-site-spain .sva2-faq-list .mvp-faq-answer {
    padding: 0 4px 24px;
    color: var(--sva2-muted);
}

.mvp-site-spain .sva2-closing {
    padding: 58px 0;
    color: #fff;
    background: var(--sva2-coral);
}

.mvp-site-spain .sva2-closing-inner {
    display: flex;
    gap: 40px;
    align-items: center;
    justify-content: space-between;
}

.mvp-site-spain .sva2-closing-inner span {
    color: #ffe2d9;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.mvp-site-spain .sva2-closing-inner h2 {
    margin: 6px 0 0;
    color: #fff;
    font-size: clamp(2rem, 4vw, 3.5rem);
}

.mvp-site-spain .sva2-closing .btn-light {
    flex: 0 0 auto;
    border-color: #fff;
    color: var(--sva2-navy);
    background: #fff;
}

/* Directory desk */
.mvp-site-spain .sva2-directory {
    padding: 70px 0 92px;
    background: var(--sva2-paper);
}

.mvp-site-spain .sva2-directory-opening {
    display: grid;
    grid-template-columns: 1.2fr .8fr;
    gap: 90px;
    align-items: end;
    padding-bottom: 46px;
    border-bottom: 1px solid var(--sva2-line);
}

.mvp-site-spain .sva2-directory-opening h1 {
    max-width: 760px;
    margin: 0;
    font-size: clamp(3.2rem, 5.5vw, 5.4rem);
    line-height: .99;
}

.mvp-site-spain .sva2-directory-opening > p {
    margin: 0 0 5px;
    color: var(--sva2-muted);
    font-size: 1.02rem;
    line-height: 1.75;
}

.mvp-site-spain .sva2-directory-layout {
    display: grid;
    grid-template-columns: 310px minmax(0, 1fr);
    gap: 50px;
    align-items: start;
    padding-top: 50px;
}

.mvp-site-spain .sva2-filter-desk {
    position: sticky;
    top: 24px;
    padding: 26px;
    border: 1px solid var(--sva2-line);
    background: var(--sva2-cream);
}

.mvp-site-spain .sva2-filter-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 22px;
    padding-bottom: 16px;
    border-bottom: 1px solid var(--sva2-line);
}

.mvp-site-spain .sva2-filter-head > span {
    font-weight: 800;
}

.mvp-site-spain .sva2-filter-head .mvp-directory-result-count {
    margin: 0;
    color: var(--sva2-coral-dark);
    font-size: .76rem;
}

.mvp-site-spain .sva2-filter-fields {
    display: grid;
    gap: 17px;
}

.mvp-site-spain .sva2-filter-desk .btn {
    width: 100%;
    margin-top: 22px;
}

.mvp-site-spain .sva2-filter-note {
    margin: 20px 0 0;
    color: #756c61;
    font-size: .74rem;
    line-height: 1.6;
}

.mvp-site-spain .sva2-results-label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 0 18px;
    border-bottom: 2px solid var(--sva2-navy);
}

.mvp-site-spain .sva2-results-label span {
    font: 700 1.6rem/1.2 "Fraunces", Georgia, serif;
}

.mvp-site-spain .sva2-results-label small {
    color: var(--sva2-muted);
}

.mvp-site-spain .sva2-market-group {
    margin: 0;
    padding: 0;
    border: 0;
}

.mvp-site-spain .sva2-market-heading {
    display: flex;
    gap: 14px;
    align-items: center;
    padding: 30px 0 14px;
}

.mvp-site-spain .sva2-market-heading img {
    width: 44px;
    height: 31px;
    object-fit: cover;
}

.mvp-site-spain .sva2-market-heading h2 {
    margin: 0;
    font-size: 1.7rem;
}

.mvp-site-spain .sva2-market-heading p {
    margin: 2px 0 0;
    color: var(--sva2-muted);
    font-size: .74rem;
}

.mvp-site-spain .sva2-directory-routes {
    border-top: 1px solid var(--sva2-line);
}

.mvp-site-spain .sva2-directory-route {
    padding: 0;
    border: 0;
    border-bottom: 1px solid var(--sva2-line);
    border-radius: 0;
    background: transparent;
}

.mvp-site-spain .sva2-directory-route-main {
    display: grid;
    grid-template-columns: minmax(280px, 1.25fr) minmax(150px, .65fr) minmax(150px, .65fr) 44px;
    gap: 20px;
    align-items: center;
    min-height: 94px;
    padding: 18px 10px;
    color: var(--sva2-navy);
    text-decoration: none;
}

.mvp-site-spain .sva2-directory-route-main:hover {
    color: var(--sva2-navy);
    background: var(--sva2-cream);
}

.mvp-site-spain .sva2-directory-route-title {
    display: flex;
    gap: 14px;
    align-items: center;
}

.mvp-site-spain .sva2-directory-route-title small,
.mvp-site-spain .sva2-directory-provider small,
.mvp-site-spain .sva2-directory-prices small {
    display: block;
    margin-bottom: 3px;
    color: #78859a;
    font-size: .67rem;
}

.mvp-site-spain .sva2-directory-route-title h3 {
    margin: 0;
    font: 700 1.08rem/1.3 "Fraunces", Georgia, serif;
}

.mvp-site-spain .sva2-directory-provider strong,
.mvp-site-spain .sva2-directory-prices strong {
    color: #3c4f68;
    font-size: .78rem;
}

.mvp-site-spain .sva2-directory-prices {
    display: flex;
    gap: 18px;
}

.mvp-site-spain .sva2-directory-arrow {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border: 1px solid var(--sva2-line);
}

.mvp-site-spain .sva2-empty-state {
    padding: 64px 20px;
    text-align: center;
}

.mvp-site-spain .sva2-directory-footer {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 70px;
    margin-top: 70px;
    padding: 46px 0 0;
    border-top: 1px solid var(--sva2-line);
}

.mvp-site-spain .sva2-directory-footer h2 {
    margin: 0;
    font-size: 2rem;
}

.mvp-site-spain .sva2-directory-footer > p {
    margin: 0;
    color: var(--sva2-muted);
    line-height: 1.75;
}

/* Route page */
.mvp-site-spain .sva2-route-opening {
    padding: 38px 0 0;
    background: var(--sva2-cream);
}

.mvp-site-spain .sva2-breadcrumb {
    margin-bottom: 38px;
}

.mvp-site-spain .sva2-route-title-row {
    display: grid;
    grid-template-columns: minmax(0, 1.4fr) minmax(320px, .6fr);
    gap: 78px;
    align-items: end;
}

.mvp-site-spain .sva2-route-title h1 {
    max-width: 810px;
    margin: 0;
    font-size: clamp(3.25rem, 5.7vw, 5.6rem);
    line-height: .98;
}

.mvp-site-spain .sva2-route-title > p {
    max-width: 760px;
    margin: 25px 0;
    color: var(--sva2-muted);
    font-size: 1.06rem;
    line-height: 1.72;
}

.mvp-site-spain .sva2-route-dossier {
    padding: 28px;
    border-top: 5px solid var(--sva2-gold);
    color: #fff;
    background: var(--sva2-navy);
}

.mvp-site-spain .sva2-route-flags {
    display: flex;
    gap: 14px;
    align-items: center;
    margin-bottom: 22px;
}

.mvp-site-spain .sva2-route-flags img {
    width: 46px;
    height: 32px;
    object-fit: cover;
}

.mvp-site-spain .sva2-route-dossier > p {
    margin: 0 0 12px;
    color: var(--sva2-gold-soft);
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.mvp-site-spain .sva2-route-dossier dl {
    margin: 0;
}

.mvp-site-spain .sva2-route-dossier dl > div {
    display: flex;
    justify-content: space-between;
    gap: 14px;
    padding: 12px 0;
    border-top: 1px solid #395374;
}

.mvp-site-spain .sva2-route-dossier dt {
    color: #aebed2;
    font-size: .72rem;
    font-weight: 500;
}

.mvp-site-spain .sva2-route-dossier dd {
    margin: 0;
    color: #fff;
    font-size: .76rem;
    font-weight: 800;
    text-align: right;
}

.mvp-site-spain .sva2-route-dossier > a {
    display: inline-flex;
    min-height: 44px;
    gap: 8px;
    align-items: center;
    margin-top: 10px;
    color: var(--sva2-gold-soft);
    font-size: .76rem;
    font-weight: 800;
}

.mvp-site-spain .sva2-route-promise {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 54px;
    border-top: 1px solid var(--sva2-line);
}

.mvp-site-spain .sva2-route-promise > span {
    display: grid;
    grid-template-columns: 34px 1fr;
    min-height: 108px;
    padding: 24px 26px;
    border-right: 1px solid var(--sva2-line);
    color: var(--sva2-muted);
    font-size: .76rem;
}

.mvp-site-spain .sva2-route-promise > span:first-child {
    border-left: 1px solid var(--sva2-line);
}

.mvp-site-spain .sva2-route-promise i {
    grid-row: 1 / 3;
    color: var(--sva2-coral);
    font-size: 1.2rem;
}

.mvp-site-spain .sva2-route-promise strong {
    display: block;
    color: var(--sva2-navy);
    font-size: .86rem;
}

.mvp-site-spain .sva2-route-services {
    padding: 90px 0;
    background: #fff;
}

.mvp-site-spain .sva2-route-services-layout {
    display: grid;
    grid-template-columns: 300px minmax(0, 1fr);
    gap: 64px;
    align-items: start;
}

.mvp-site-spain .sva2-route-services-intro {
    position: sticky;
    top: 24px;
}

.mvp-site-spain .sva2-route-services-intro h2 {
    margin: 0;
    font-size: 2.6rem;
    line-height: 1.06;
}

.mvp-site-spain .sva2-route-services-intro > p {
    margin: 20px 0;
    color: var(--sva2-muted);
    line-height: 1.7;
}

.mvp-site-spain .sva2-route-services-intro ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.mvp-site-spain .sva2-route-services-intro li {
    display: flex;
    gap: 8px;
    padding: 9px 0;
    color: #44566e;
    font-size: .8rem;
}

.mvp-site-spain .sva2-route-services-intro li i {
    color: var(--sva2-green);
}

.mvp-site-spain .sva2-route-products {
    border-top: 2px solid var(--sva2-navy);
}

.mvp-site-spain .sva2-product-row,
.mvp-site-spain .sva2-product-row.is-featured {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(250px, .6fr);
    gap: 38px;
    padding: 36px 0;
    border: 0;
    border-bottom: 1px solid var(--sva2-line);
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.mvp-site-spain .sva2-product-heading {
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr);
    gap: 18px;
}

.mvp-site-spain .sva2-product-heading .mvp-product-icon {
    display: grid;
    width: 48px;
    height: 48px;
    place-items: center;
    border: 1px solid var(--sva2-line);
    color: var(--sva2-coral);
}

.mvp-site-spain .sva2-product-heading h3 {
    margin: 3px 0 10px;
    font-size: 2rem;
}

.mvp-site-spain .sva2-product-heading .mvp-product-summary {
    max-width: 500px;
    color: var(--sva2-muted);
}

.mvp-site-spain .sva2-product-features {
    grid-column: 1;
    margin: 14px 0 0 70px;
}

.mvp-site-spain .sva2-product-buy {
    grid-column: 2;
    grid-row: 1 / 3;
    padding-left: 28px;
    border-left: 1px solid var(--sva2-line);
}

.mvp-site-spain .sva2-product-buy .mvp-product-price {
    margin: 0 0 20px;
}

.mvp-site-spain .sva2-product-buy .mvp-product-price-value {
    display: block;
    color: var(--sva2-coral-dark);
    font-size: 2.8rem;
}

.mvp-site-spain .sva2-product-buy .mvp-applicant-label {
    display: block;
}

.mvp-site-spain .sva2-product-buy .btn {
    margin-top: 14px;
}

.mvp-site-spain .sva2-responsibility {
    padding: 88px 0;
    color: #fff;
    background: var(--sva2-navy);
}

.mvp-site-spain .sva2-responsibility .sva2-kicker {
    color: var(--sva2-gold-soft);
}

.mvp-site-spain .sva2-responsibility-head h2 {
    max-width: 760px;
    margin: 0;
    color: #fff;
    font-size: clamp(2.5rem, 4vw, 4rem);
}

.mvp-site-spain .sva2-responsibility-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
    margin-top: 44px;
    border-top: 1px solid #3a5476;
    border-bottom: 1px solid #3a5476;
}

.mvp-site-spain .sva2-responsibility-grid article {
    min-height: 240px;
    padding: 30px;
    border-right: 1px solid #3a5476;
}

.mvp-site-spain .sva2-responsibility-grid article:first-child {
    padding-left: 0;
}

.mvp-site-spain .sva2-responsibility-grid article:last-child {
    border-right: 0;
}

.mvp-site-spain .sva2-responsibility-grid article > span {
    color: var(--sva2-gold-soft);
    font-size: .69rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.mvp-site-spain .sva2-responsibility-grid h3 {
    margin: 52px 0 12px;
    color: #fff;
    font-size: 1.65rem;
}

.mvp-site-spain .sva2-responsibility-grid p {
    margin: 0;
    color: #bdcbe0;
    line-height: 1.7;
}

.mvp-site-spain .sva2-preparation {
    display: grid;
    grid-template-columns: .7fr 1.3fr;
    gap: 80px;
    margin-top: 72px;
}

.mvp-site-spain .sva2-preparation h2 {
    margin: 0;
    color: #fff;
    font-size: 2.6rem;
}

.mvp-site-spain .sva2-preparation p {
    margin-top: 18px;
    color: #bdcbe0;
    line-height: 1.7;
}

.mvp-site-spain .sva2-preparation ol {
    margin: 0;
    padding: 0;
    list-style: none;
}

.mvp-site-spain .sva2-preparation li {
    display: grid;
    grid-template-columns: 50px 1fr;
    gap: 18px;
    padding: 17px 0;
    border-top: 1px solid #3a5476;
    color: #fff;
}

.mvp-site-spain .sva2-preparation li span {
    color: var(--sva2-gold-soft);
}

.mvp-site-spain .sva2-route-guide {
    padding: 88px 0;
    border: 0;
    border-radius: 0;
    background: var(--sva2-paper);
}

.mvp-site-spain .sva2-route-guide-layout {
    display: grid;
    grid-template-columns: 310px minmax(0, 1fr);
    gap: 70px;
}

.mvp-site-spain .sva2-route-guide .mvp-researched-heading {
    padding: 0;
}

.mvp-site-spain .sva2-route-guide .mvp-researched-heading h2 {
    font-size: 2.4rem;
}

.mvp-site-spain .sva2-route-guide .mvp-researched-content {
    padding: 0;
    border: 0;
    background: transparent;
}

.mvp-site-spain .sva2-related-row {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr) auto;
    gap: 16px;
    align-items: center;
    min-height: 88px;
    padding: 16px 12px;
    border-bottom: 1px solid var(--sva2-line);
    color: var(--sva2-navy);
    text-decoration: none;
}

.mvp-site-spain .sva2-related-row:hover {
    color: var(--sva2-navy);
    background: var(--sva2-cream);
}

.mvp-site-spain .sva2-related-row > span {
    display: flex;
    flex-direction: column;
}

.mvp-site-spain .sva2-related-row small {
    color: var(--sva2-muted);
}

.mvp-site-spain .sva2-related-row > span:last-child {
    display: inline-flex;
    flex-direction: row;
    gap: 10px;
    align-items: center;
    font-weight: 800;
}

/* Journal */
.mvp-site-spain .sva2-journal-hero {
    padding: 72px 0 50px;
    background: var(--sva2-cream);
}

.mvp-site-spain .sva2-journal-opening {
    display: grid;
    grid-template-columns: 1.3fr .7fr;
    gap: 90px;
    align-items: end;
}

.mvp-site-spain .sva2-journal-opening h1 {
    max-width: 860px;
    margin: 0;
    font-size: clamp(3.25rem, 5.7vw, 5.6rem);
    line-height: .98;
}

.mvp-site-spain .sva2-journal-opening > p {
    margin: 0 0 8px;
    color: var(--sva2-muted);
    line-height: 1.75;
}

.mvp-site-spain .sva2-journal {
    padding: 60px 0 90px;
    background: #fff;
}

.mvp-site-spain .sva2-journal-lead {
    border-top: 2px solid var(--sva2-navy);
    border-bottom: 1px solid var(--sva2-line);
}

.mvp-site-spain .sva2-journal-lead-label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 0;
    color: var(--sva2-coral-dark);
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.mvp-site-spain .sva2-journal-lead-content {
    display: grid;
    grid-template-columns: 1.35fr .65fr;
    gap: 70px;
    padding: 42px 0 54px;
}

.mvp-site-spain .sva2-journal-lead-content h2 {
    max-width: 820px;
    margin: 8px 0 18px;
    font-size: clamp(2.5rem, 4.3vw, 4.2rem);
    line-height: 1.04;
}

.mvp-site-spain .sva2-journal-lead-content p {
    max-width: 760px;
    color: var(--sva2-muted);
    line-height: 1.75;
}

.mvp-site-spain .sva2-journal-lead-content aside {
    align-self: end;
    padding: 28px;
    border-left: 4px solid var(--sva2-gold);
    background: var(--sva2-cream);
}

.mvp-site-spain .sva2-journal-lead-content aside span {
    color: var(--sva2-coral-dark);
    font-size: .72rem;
    font-weight: 800;
}

.mvp-site-spain .sva2-journal-lead-content aside strong {
    display: block;
    margin-top: 12px;
    font: 700 1.35rem/1.35 "Fraunces", Georgia, serif;
}

.mvp-site-spain .sva2-journal-index {
    display: grid;
    grid-template-columns: 280px minmax(0, 1fr);
    gap: 70px;
    margin-top: 70px;
}

.mvp-site-spain .sva2-journal-index > header h2 {
    margin: 0;
    font-size: 2.2rem;
}

.mvp-site-spain .sva2-journal-list {
    border-top: 2px solid var(--sva2-navy);
}

.mvp-site-spain .sva2-journal-row > a {
    display: grid;
    grid-template-columns: 78px minmax(0, 1fr) 72px;
    gap: 24px;
    align-items: start;
    padding: 28px 8px;
    border-bottom: 1px solid var(--sva2-line);
    color: var(--sva2-navy);
    text-decoration: none;
}

.mvp-site-spain .sva2-journal-row > a:hover {
    color: var(--sva2-navy);
    background: var(--sva2-cream);
}

.mvp-site-spain .sva2-journal-date {
    display: flex;
    flex-direction: column;
}

.mvp-site-spain .sva2-journal-date strong {
    color: var(--sva2-coral-dark);
    font: 700 2rem/1 "Fraunces", Georgia, serif;
}

.mvp-site-spain .sva2-journal-date span {
    margin-top: 5px;
    color: var(--sva2-muted);
    font-size: .7rem;
}

.mvp-site-spain .sva2-journal-copy h3 {
    margin: 5px 0 10px;
    font-size: 1.55rem;
}

.mvp-site-spain .sva2-journal-copy p {
    margin: 0;
    color: var(--sva2-muted);
    font-size: .86rem;
    line-height: 1.65;
}

.mvp-site-spain .sva2-journal-meta {
    display: flex;
    gap: 10px;
    align-items: center;
    justify-content: flex-end;
    color: var(--sva2-coral-dark);
    font-size: .72rem;
    font-weight: 800;
}

/* Login */
.mvp-site-spain .sva2-login {
    padding: 68px 0 88px;
    background: var(--sva2-cream) !important;
}

.mvp-site-spain .sva2-login-layout {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    max-width: 1040px;
    padding: 0;
    border: 1px solid var(--sva2-line);
    background: #fff;
    box-shadow: 0 20px 50px rgba(28, 42, 64, .1);
}

.mvp-site-spain .sva2-login-intro {
    padding: 52px;
    color: #fff;
    background: var(--sva2-navy);
}

.mvp-site-spain .sva2-login-intro .sva2-kicker {
    color: var(--sva2-gold-soft);
}

.mvp-site-spain .sva2-login-intro h1 {
    margin: 0;
    color: #fff;
    font-size: 3.8rem;
}

.mvp-site-spain .sva2-login-intro > p {
    margin: 20px 0 34px;
    color: #c3d0e2;
    line-height: 1.75;
}

.mvp-site-spain .sva2-login-intro ul {
    margin: 0;
    padding: 0;
    list-style: none;
    border-top: 1px solid #3a5476;
}

.mvp-site-spain .sva2-login-intro li {
    display: grid;
    grid-template-columns: 28px 1fr;
    gap: 13px;
    padding: 17px 0;
    border-bottom: 1px solid #3a5476;
}

.mvp-site-spain .sva2-login-intro li > i {
    color: var(--sva2-gold-soft);
}

.mvp-site-spain .sva2-login-intro li span {
    display: flex;
    flex-direction: column;
    color: #adbed4;
    font-size: .75rem;
}

.mvp-site-spain .sva2-login-intro li strong {
    margin-bottom: 3px;
    color: #fff;
    font-size: .84rem;
}

.mvp-site-spain .sva2-login-intro > a {
    display: inline-flex;
    min-height: 44px;
    gap: 8px;
    align-items: center;
    margin-top: 24px;
    color: var(--sva2-gold-soft);
    font-size: .76rem;
    font-weight: 800;
}

.mvp-site-spain .sva2-login-panel {
    padding: 52px;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.mvp-site-spain .sva2-login-head > span {
    color: var(--sva2-coral-dark);
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.mvp-site-spain .sva2-login-head h2 {
    margin: 9px 0;
    font-size: 2.6rem;
}

.mvp-site-spain .sva2-login-head p {
    margin: 0 0 30px;
    color: var(--sva2-muted);
}

.mvp-site-spain .sva2-login-form .btn {
    margin-top: 4px;
}

.mvp-site-spain .sva2-password-link {
    text-align: right;
}

.mvp-site-spain .sva2-login-recovery {
    margin-top: 30px;
    padding-top: 28px;
    border-top: 1px solid var(--sva2-line);
}

.mvp-site-spain .sva2-login-recovery > div > span {
    color: var(--sva2-coral-dark);
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.mvp-site-spain .sva2-login-recovery h3 {
    margin: 5px 0;
    font: 700 1.3rem/1.3 "Fraunces", Georgia, serif;
}

.mvp-site-spain .sva2-login-recovery p {
    color: var(--sva2-muted);
    font-size: .8rem;
}

.mvp-site-spain .sva2-login-recovery form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    align-items: end;
}

.mvp-site-spain .sva2-login-recovery label {
    font-size: .76rem;
    font-weight: 700;
}

.mvp-site-spain .sva2-login-back {
    margin: 24px 0 0;
}

/* Checkout */
.mvp-site-spain .sva2-checkout {
    padding: 46px 0 90px;
    background: var(--sva2-cream);
}

.mvp-site-spain .sva2-checkout > .container {
    max-width: 1020px;
}

.mvp-site-spain .sva2-checkout-progress {
    max-width: none;
    margin: 0 0 42px;
    padding: 0 0 20px;
    border-bottom: 1px solid var(--sva2-line);
}

.mvp-site-spain .sva2-checkout-progress span {
    flex: 0 0 auto;
    gap: 9px;
    color: #77859a;
    font-size: .75rem;
}

.mvp-site-spain .sva2-checkout-progress span b {
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
}

.mvp-site-spain .sva2-checkout-progress > i {
    flex: 1 1 auto;
}

.mvp-site-spain .sva2-checkout-heading {
    display: grid;
    grid-template-columns: 1.15fr .85fr;
    gap: 70px;
    align-items: end;
    margin-bottom: 42px;
}

.mvp-site-spain .sva2-checkout-heading .sva2-kicker {
    grid-column: 1 / -1;
    margin-bottom: -50px;
}

.mvp-site-spain .sva2-checkout-heading h1 {
    margin: 0;
    font-size: clamp(3rem, 5.6vw, 5.1rem);
    line-height: .99;
}

.mvp-site-spain .sva2-checkout-heading p {
    margin: 0 0 5px;
    color: var(--sva2-muted);
    line-height: 1.75;
}

.mvp-site-spain .sva2-checkout-layout {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.mvp-site-spain .sva2-checkout-form {
    order: 2;
    overflow: visible;
    border: 1px solid var(--sva2-line);
    border-radius: 0;
    background: #fff;
}

.mvp-site-spain .sva2-checkout-form .mvp-form-section {
    display: grid;
    grid-template-columns: 250px minmax(0, 1fr);
    gap: 34px;
    padding: 34px;
    border-bottom: 1px solid var(--sva2-line);
}

.mvp-site-spain .sva2-checkout-form .mvp-form-section:last-child {
    border-bottom: 0;
}

.mvp-site-spain .sva2-checkout-form .mvp-form-section-head {
    align-self: start;
}

.mvp-site-spain .sva2-checkout-form .mvp-form-section-head > span {
    flex: 0 0 40px;
    width: 40px;
    height: 40px;
    border: 1px solid var(--sva2-line);
    border-radius: 0;
    color: var(--sva2-coral-dark);
    background: var(--sva2-cream);
}

.mvp-site-spain .sva2-checkout-form .mvp-form-section-head h2 {
    font-size: 1.45rem;
}

.mvp-site-spain .sva2-checkout-form .mvp-service-switch,
.mvp-site-spain .sva2-checkout-form .mvp-form-grid,
.mvp-site-spain .sva2-checkout-form .mvp-notification-grid,
.mvp-site-spain .sva2-checkout-form .mvp-consent-field,
.mvp-site-spain .sva2-checkout-form .mvp-form-section > .btn,
.mvp-site-spain .sva2-checkout-form .mvp-payment-unavailable {
    grid-column: 2;
}

.mvp-site-spain .sva2-checkout-form .mvp-consent-field + .mvp-consent-field {
    margin-top: 0;
}

.mvp-site-spain .sva2-checkout-receipt {
    order: 1;
    position: static;
    display: grid;
    grid-template-columns: 1.2fr 1fr .55fr;
    gap: 28px;
    align-items: center;
    padding: 28px;
    border: 0;
    border-top: 5px solid var(--sva2-gold);
    border-radius: 0;
    color: #fff;
    background: var(--sva2-navy);
    box-shadow: none;
}

.mvp-site-spain .sva2-checkout-receipt .mvp-checkout-route {
    padding: 0;
    border: 0;
}

.mvp-site-spain .sva2-checkout-receipt .mvp-route-flags {
    margin-bottom: 10px;
}

.mvp-site-spain .sva2-receipt-label {
    display: block;
    margin-bottom: 5px;
    color: var(--sva2-gold-soft) !important;
    font-size: .66rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.mvp-site-spain .sva2-checkout-receipt h2 {
    margin: 0;
    color: #fff;
    font-size: 1.4rem;
}

.mvp-site-spain .sva2-checkout-receipt .mvp-order-lines {
    margin: 0;
    padding: 0 24px;
    border-right: 1px solid #3a5476;
    border-left: 1px solid #3a5476;
}

.mvp-site-spain .sva2-checkout-receipt .mvp-order-lines > div {
    padding: 7px 0;
    border: 0;
}

.mvp-site-spain .sva2-checkout-receipt .mvp-order-total {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin: 0;
    padding: 0;
    border: 0;
}

.mvp-site-spain .sva2-checkout-receipt .mvp-order-total strong {
    font-size: 2.5rem;
}

.mvp-site-spain .sva2-checkout-receipt .mvp-checkout-assurance,
.mvp-site-spain .sva2-checkout-receipt > p {
    grid-column: 1 / -1;
    margin: 0;
}

.mvp-site-spain .sva2-checkout-receipt .mvp-checkout-assurance {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 26px;
    padding: 14px 0 0;
    border-top: 1px solid #3a5476;
    background: transparent;
}

.mvp-site-spain .sva2-checkout-receipt > p {
    color: #aebed2 !important;
    font-size: .7rem;
    line-height: 1.6;
}

/* Responsive */
@media (max-width: 1199.98px) {
    .mvp-site-spain .sva2-home-opening,
    .mvp-site-spain .sva2-route-title-row {
        gap: 46px;
    }

    .mvp-site-spain .sva2-brief-fields {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .mvp-site-spain .sva2-brief-fields .mvp-route-finder-submit {
        grid-column: 2;
    }

    .mvp-site-spain .sva2-directory-route-main {
        grid-template-columns: minmax(240px, 1fr) minmax(130px, .55fr) minmax(130px, .55fr) 44px;
    }
}

@media (max-width: 991.98px) {
    .mvp-site-spain .container {
        width: min(100% - 32px, 1240px);
    }

    .mvp-site-spain .sva2-home-opening,
    .mvp-site-spain .sva2-services-layout,
    .mvp-site-spain .sva2-handoff-layout,
    .mvp-site-spain .sva2-faq-layout,
    .mvp-site-spain .sva2-directory-opening,
    .mvp-site-spain .sva2-directory-layout,
    .mvp-site-spain .sva2-directory-footer,
    .mvp-site-spain .sva2-route-title-row,
    .mvp-site-spain .sva2-route-services-layout,
    .mvp-site-spain .sva2-preparation,
    .mvp-site-spain .sva2-route-guide-layout,
    .mvp-site-spain .sva2-journal-opening,
    .mvp-site-spain .sva2-journal-index,
    .mvp-site-spain .sva2-login-layout {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .mvp-site-spain .sva2-home-copy h1,
    .mvp-site-spain .sva2-route-title h1,
    .mvp-site-spain .sva2-directory-opening h1,
    .mvp-site-spain .sva2-journal-opening h1 {
        font-size: clamp(3.2rem, 9vw, 5rem);
    }

    .mvp-site-spain .sva2-concierge-note {
        display: grid;
        grid-template-columns: 60px 1fr;
        gap: 4px 22px;
    }

    .mvp-site-spain .sva2-note-number {
        grid-row: 1 / 4;
        margin: 0;
    }

    .mvp-site-spain .sva2-brief-head {
        grid-template-columns: 1fr;
    }

    .mvp-site-spain .sva2-brief-head p {
        margin-left: 0;
    }

    .mvp-site-spain .sva2-route-row {
        grid-template-columns: minmax(260px, 1fr) 150px 70px;
    }

    .mvp-site-spain .sva2-route-provider {
        display: none;
    }

    .mvp-site-spain .sva2-filter-desk,
    .mvp-site-spain .sva2-route-services-intro {
        position: static;
    }

    .mvp-site-spain .sva2-filter-fields {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .mvp-site-spain .sva2-directory-route-main {
        grid-template-columns: minmax(230px, 1fr) minmax(150px, .65fr) 44px;
    }

    .mvp-site-spain .sva2-directory-provider {
        display: none;
    }

    .mvp-site-spain .sva2-route-promise,
    .mvp-site-spain .sva2-responsibility-grid {
        grid-template-columns: 1fr;
    }

    .mvp-site-spain .sva2-route-promise > span,
    .mvp-site-spain .sva2-route-promise > span:first-child {
        border-right: 1px solid var(--sva2-line);
        border-bottom: 1px solid var(--sva2-line);
        border-left: 1px solid var(--sva2-line);
    }

    .mvp-site-spain .sva2-responsibility-grid article,
    .mvp-site-spain .sva2-responsibility-grid article:first-child {
        min-height: 0;
        padding: 28px 0;
        border-right: 0;
        border-bottom: 1px solid #3a5476;
    }

    .mvp-site-spain .sva2-responsibility-grid h3 {
        margin-top: 22px;
    }

    .mvp-site-spain .sva2-product-row,
    .mvp-site-spain .sva2-product-row.is-featured {
        grid-template-columns: 1fr;
    }

    .mvp-site-spain .sva2-product-buy {
        grid-column: 1;
        grid-row: auto;
        padding: 24px 0 0;
        border-top: 1px solid var(--sva2-line);
        border-left: 0;
    }

    .mvp-site-spain .sva2-journal-lead-content {
        grid-template-columns: 1fr;
        gap: 34px;
    }

    .mvp-site-spain .sva2-login-layout {
        gap: 0;
    }

    .mvp-site-spain .sva2-checkout-heading {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .mvp-site-spain .sva2-checkout-heading .sva2-kicker {
        grid-column: 1;
        margin: 0;
    }

    .mvp-site-spain .sva2-checkout-form .mvp-form-section {
        grid-template-columns: 1fr;
    }

    .mvp-site-spain .sva2-checkout-form .mvp-service-switch,
    .mvp-site-spain .sva2-checkout-form .mvp-form-grid,
    .mvp-site-spain .sva2-checkout-form .mvp-notification-grid,
    .mvp-site-spain .sva2-checkout-form .mvp-consent-field,
    .mvp-site-spain .sva2-checkout-form .mvp-form-section > .btn,
    .mvp-site-spain .sva2-checkout-form .mvp-payment-unavailable {
        grid-column: 1;
    }

    .mvp-site-spain .sva2-checkout-receipt {
        grid-template-columns: 1fr 1fr;
    }

    .mvp-site-spain .sva2-checkout-receipt .mvp-order-total {
        grid-column: 1 / -1;
        padding-top: 18px;
        border-top: 1px solid #3a5476;
    }
}

@media (max-width: 767.98px) {
    .mvp-site-spain .container {
        width: min(100% - 28px, 1240px);
    }

    .mvp-site-spain .sva2-home,
    .mvp-site-spain .sva2-directory,
    .mvp-site-spain .sva2-journal-hero {
        padding-top: 46px;
    }

    .mvp-site-spain .sva2-home-opening {
        gap: 30px;
    }

    .mvp-site-spain .sva2-home-copy h1,
    .mvp-site-spain .sva2-route-title h1,
    .mvp-site-spain .sva2-directory-opening h1,
    .mvp-site-spain .sva2-journal-opening h1 {
        font-size: clamp(2.7rem, 12vw, 4.1rem);
    }

    .mvp-site-spain .sva2-home-copy > p,
    .mvp-site-spain .sva2-route-title > p {
        font-size: 1rem;
    }

    .mvp-site-spain .sva2-proof-line {
        display: grid;
        gap: 10px;
    }

    .mvp-site-spain .sva2-concierge-note {
        display: block;
        padding: 26px;
    }

    .mvp-site-spain .sva2-note-number {
        margin-bottom: 28px;
    }

    .mvp-site-spain .sva2-brief {
        margin-top: 30px;
    }

    .mvp-site-spain .sva2-brief-head,
    .mvp-site-spain .sva2-brief-fields {
        display: grid;
        grid-template-columns: 1fr;
        padding-right: 20px;
        padding-left: 20px;
    }

    .mvp-site-spain .sva2-brief-fields .mvp-route-finder-submit {
        grid-column: 1;
        width: 100%;
    }

    .mvp-site-spain .sva2-brief-context {
        padding-right: 20px;
        padding-left: 20px;
    }

    .mvp-site-spain .sva2-services,
    .mvp-site-spain .sva2-handoff,
    .mvp-site-spain .sva2-routes,
    .mvp-site-spain .sva2-faq,
    .mvp-site-spain .sva2-route-services,
    .mvp-site-spain .sva2-responsibility,
    .mvp-site-spain .sva2-route-guide,
    .mvp-site-spain .sva2-route-faq,
    .mvp-site-spain .sva2-related-routes,
    .mvp-site-spain .sva2-journal,
    .mvp-site-spain .sva2-login,
    .mvp-site-spain .sva2-checkout {
        padding: 58px 0;
    }

    .mvp-site-spain .sva2-service-row {
        grid-template-columns: 44px minmax(0, 1fr);
        gap: 14px;
    }

    .mvp-site-spain .sva2-service-row > i {
        display: none;
    }

    .mvp-site-spain .sva2-service-row h3 {
        font-size: 1.45rem;
    }

    .mvp-site-spain .sva2-routes-head,
    .mvp-site-spain .sva2-closing-inner {
        display: grid;
        align-items: start;
    }

    .mvp-site-spain .sva2-routes-head .btn,
    .mvp-site-spain .sva2-closing-inner .btn {
        width: 100%;
    }

    .mvp-site-spain .sva2-route-row {
        grid-template-columns: 1fr auto;
        gap: 12px;
        padding: 18px 4px;
    }

    .mvp-site-spain .sva2-route-cost {
        grid-column: 1;
        padding-left: 58px;
    }

    .mvp-site-spain .sva2-route-open {
        grid-column: 2;
        grid-row: 1 / 3;
        font-size: 0;
    }

    .mvp-site-spain .sva2-route-open i {
        font-size: 1rem;
    }

    .mvp-site-spain .sva2-directory-opening {
        padding-bottom: 32px;
    }

    .mvp-site-spain .sva2-filter-desk {
        padding: 20px;
    }

    .mvp-site-spain .sva2-filter-fields {
        grid-template-columns: 1fr;
    }

    .mvp-site-spain .sva2-results-label {
        align-items: flex-start;
    }

    .mvp-site-spain .sva2-results-label small {
        display: none;
    }

    .mvp-site-spain .sva2-directory-route-main {
        grid-template-columns: 1fr 42px;
        gap: 12px;
        padding: 18px 4px;
    }

    .mvp-site-spain .sva2-directory-prices {
        grid-column: 1;
        padding-left: 56px;
    }

    .mvp-site-spain .sva2-directory-arrow {
        grid-column: 2;
        grid-row: 1 / 3;
    }

    .mvp-site-spain .sva2-route-opening {
        padding-top: 24px;
    }

    .mvp-site-spain .sva2-breadcrumb {
        margin-bottom: 26px;
    }

    .mvp-site-spain .sva2-route-dossier {
        padding: 24px;
    }

    .mvp-site-spain .sva2-route-promise {
        margin-top: 34px;
    }

    .mvp-site-spain .sva2-product-row,
    .mvp-site-spain .sva2-product-row.is-featured {
        gap: 20px;
        padding: 28px 0;
    }

    .mvp-site-spain .sva2-product-heading {
        grid-template-columns: 44px 1fr;
        gap: 12px;
    }

    .mvp-site-spain .sva2-product-features {
        margin-left: 0;
    }

    .mvp-site-spain .sva2-responsibility-grid h3 {
        font-size: 1.4rem;
    }

    .mvp-site-spain .sva2-related-row {
        grid-template-columns: 42px minmax(0, 1fr);
    }

    .mvp-site-spain .sva2-related-row > span:last-child {
        grid-column: 2;
        justify-content: flex-start;
    }

    .mvp-site-spain .sva2-journal-lead-content {
        padding-top: 28px;
    }

    .mvp-site-spain .sva2-journal-lead-content h2 {
        font-size: 2.35rem;
    }

    .mvp-site-spain .sva2-journal-lead-content aside {
        padding: 22px;
    }

    .mvp-site-spain .sva2-journal-row > a {
        grid-template-columns: 54px minmax(0, 1fr);
        gap: 14px;
        padding: 24px 0;
    }

    .mvp-site-spain .sva2-journal-meta {
        grid-column: 2;
        justify-content: flex-start;
    }

    .mvp-site-spain .sva2-login-intro,
    .mvp-site-spain .sva2-login-panel {
        padding: 30px 24px;
    }

    .mvp-site-spain .sva2-login-intro h1 {
        font-size: 3rem;
    }

    .mvp-site-spain .sva2-login-recovery form {
        grid-template-columns: 1fr;
    }

    .mvp-site-spain .sva2-login-recovery .btn {
        width: 100%;
    }

    .mvp-site-spain .sva2-checkout-progress {
        gap: 6px;
    }

    .mvp-site-spain .sva2-checkout-progress span {
        flex-direction: column;
        align-items: flex-start;
        font-size: .64rem;
    }

    .mvp-site-spain .sva2-checkout-heading h1 {
        font-size: 3rem;
    }

    .mvp-site-spain .sva2-checkout-form .mvp-form-section {
        gap: 24px;
        padding: 24px 20px;
    }

    .mvp-site-spain .sva2-checkout-form .mvp-form-section-head {
        display: grid;
        grid-template-columns: 38px 1fr;
        gap: 12px;
    }

    .mvp-site-spain .sva2-checkout-receipt {
        grid-template-columns: 1fr;
        gap: 20px;
        padding: 24px 20px;
    }

    .mvp-site-spain .sva2-checkout-receipt .mvp-order-lines {
        padding: 16px 0;
        border-top: 1px solid #3a5476;
        border-right: 0;
        border-bottom: 1px solid #3a5476;
        border-left: 0;
    }

    .mvp-site-spain .sva2-checkout-receipt .mvp-order-total {
        grid-column: 1;
        padding: 0;
        border: 0;
    }

    .mvp-site-spain .sva2-checkout-receipt .mvp-checkout-assurance {
        display: grid;
    }
}

/* Final cascade: keeps the contemporary system authoritative. */
.mvp-site-spain,
.mvp-site-spain button,
.mvp-site-spain input,
.mvp-site-spain select,
.mvp-site-spain textarea { font-family: "Archivo", Arial, sans-serif; }
.mvp-site-spain h1,
.mvp-site-spain h2,
.mvp-site-spain h3,
.mvp-site-spain h4,
.mvp-site-spain .sva2-route-place strong,
.mvp-site-spain .sva2-results-label span,
.mvp-site-spain .sva2-directory-route-title h3,
.mvp-site-spain .sva2-related-row strong { font-family: "Archivo", Arial, sans-serif; font-weight: 800; letter-spacing: -.025em; }
.mvp-site-spain .sva2-home-copy h1 { font-size: clamp(3rem, 5.4vw, 4.9rem); line-height: .98; }
.mvp-site-spain .sva2-directory-opening h1,
.mvp-site-spain .sva2-route-title h1,
.mvp-site-spain .sva2-journal-opening h1 { font-size: clamp(2.8rem, 5vw, 4.45rem); line-height: 1.01; }
.mvp-site-spain .sva2-section-intro h2,
.mvp-site-spain .sva2-handoff-copy h2,
.mvp-site-spain .sva2-routes-head h2,
.mvp-site-spain .sva2-faq-intro h2 { font-size: clamp(2rem, 3.5vw, 3.2rem); }
.mvp-site-spain .sva2-login-intro h1,
.mvp-site-spain .sva2-checkout-heading h1 { font-size: clamp(2.5rem, 4.7vw, 4.1rem); }
.mvp-site-spain .sva2-kicker,
.mvp-site-spain .mvp-eyebrow,
.mvp-site-spain .sva2-note-label,
.mvp-site-spain .sva2-brief-head span,
.mvp-site-spain .sva2-service-row p,
.mvp-site-spain .sva2-closing-inner span,
.mvp-site-spain .sva2-route-dossier > p,
.mvp-site-spain .sva2-receipt-label { letter-spacing: 0; text-transform: none; }
.mvp-site-spain .sva2-kicker,
.mvp-site-spain .mvp-eyebrow { color: #1437d0; font-size: .9rem; }
.mvp-site-spain .btn,
.mvp-site-spain .form-control,
.mvp-site-spain .form-select,
.mvp-site-spain .card,
.mvp-site-spain .alert,
.mvp-site-spain .mvp-product-card,
.mvp-site-spain .mvp-order-card,
.mvp-site-spain .mvp-dashboard-aside,
.mvp-site-spain .mvp-access-form,
.mvp-site-spain .mvp-success-main,
.mvp-site-spain .mvp-edit-panel { border-radius: 2px !important; box-shadow: none !important; }
.mvp-site-spain .btn { border-width: 2px; }
.mvp-site-spain .btn-primary { border-color: #1437d0; background: #1437d0; }
.mvp-site-spain .btn-primary:hover,
.mvp-site-spain .btn-primary:focus { border-color: #0b269f; background: #0b269f; }
.mvp-site-spain .btn-outline-primary { border-color: #1437d0; color: #1437d0; }
.mvp-site-spain .btn-outline-primary:hover,
.mvp-site-spain .btn-outline-primary:focus { color: #fff; background: #1437d0; }
.mvp-site-spain .form-control:focus,
.mvp-site-spain .form-select:focus { border-color: #1437d0; box-shadow: 0 0 0 3px rgba(20,55,208,.14) !important; }
.mvp-site-spain .es-utility-bar { color: #fff; background: #1437d0; }
.mvp-site-spain .es-main-nav { min-height: 82px; background: #fffefa; }
.mvp-site-spain .es-brand-logo { width: 240px; height: auto; }
.mvp-site-spain .es-main-nav .nav-link:hover { color: #1437d0; }
.mvp-site-spain .sva2-home { padding: 66px 0 44px; background: #fffefa; }
.mvp-site-spain .sva2-home-opening { grid-template-columns: minmax(0,1.3fr) minmax(310px,.7fr); gap: 58px; align-items: center; }
.mvp-site-spain .sva2-concierge-note { border: 1px solid #d8dce8; border-top: 6px solid #d85b3f; color: #17213c; background: #fcf8f1; }
.mvp-site-spain .sva2-concierge-note h2 { color: #17213c; font-size: 1.55rem; }
.mvp-site-spain .sva2-concierge-note > p:last-child { color: #5e6780; }
.mvp-site-spain .sva2-brief { border: 1px solid #b9c0d0; border-top: 5px solid #1437d0; box-shadow: none; }
.mvp-site-spain .sva2-brief-head { background: #fcf8f1; }
.mvp-site-spain .sva2-brief .mvp-field-label { color: #17213c; opacity: 1; }
.mvp-site-spain .sva2-service-menu,
.mvp-site-spain .sva2-route-list,
.mvp-site-spain .sva2-related-list,
.mvp-site-spain .sva2-results-label,
.mvp-site-spain .sva2-route-promise { border-top-color: #1437d0; }
.mvp-site-spain .sva2-handoff,
.mvp-site-spain .sva2-preparation,
.mvp-site-spain .sva2-checkout-receipt,
.mvp-site-spain .sva2-login-intro { background: #17213c; }
.mvp-site-spain .sva2-closing,
.mvp-site-spain .es-footer-punch { background: #d85b3f; }
.mvp-site-spain .es-footer-main { background: #17213c; }
.mvp-site-spain .sva2-filter-desk,
.mvp-site-spain .sva2-route-dossier { border: 1px solid #b9c0d0; border-top: 5px solid #1437d0; background: #fcf8f1; }
.mvp-site-spain .sva2-route-dossier { border-top-color: #d85b3f; }
.mvp-site-spain .sva2-directory-route-main:hover,
.mvp-site-spain .sva2-route-row:hover { background: #f1f3ff; }
.mvp-site-spain .sva2-directory-prices strong,
.mvp-site-spain .sva2-directory-arrow,
.mvp-site-spain .mvp-product-price-value { color: #1437d0; }
.mvp-site-spain .sva2-route-services,
.mvp-site-spain .sva2-faq,
.mvp-site-spain .sva2-login,
.mvp-site-spain .sva2-checkout,
.mvp-site-spain .mvp-account-setup,
.mvp-site-spain .mvp-dashboard-page,
.mvp-site-spain .mvp-access-page,
.mvp-site-spain .mvp-success-page,
.mvp-site-spain .mvp-edit-shell { background: #fcf8f1; }
.mvp-site-spain .blog-hero,
.mvp-site-spain .post-hero,
.mvp-site-spain .sva2-journal-hero { color: #17213c; background: #fcf8f1 !important; }
.mvp-site-spain .blog-hero h1,
.mvp-site-spain .post-hero h1 { color: #17213c; font-size: clamp(2.6rem,5vw,4.3rem); }
.mvp-site-spain .blog-hero p,
.mvp-site-spain .post-meta,
.mvp-site-spain .post-breadcrumb a { color: #5e6780; }
.mvp-site-spain .post-category-tag,
.mvp-site-spain .blog-card-category { border-radius: 0; color: #1437d0; background: #eef1ff; }
.mvp-site-spain .blog-card,
.mvp-site-spain .post-content-card,
.mvp-site-spain .post-readiness-panel { border-radius: 0; box-shadow: none; }
.mvp-site-spain .blog-card:hover { transform: none; border-color: #1437d0; box-shadow: none; }
.mvp-site-spain.mvp-surface-legal main > .container { width: min(calc(100% - 48px),960px); padding-top: 58px !important; padding-bottom: 72px !important; }
.mvp-site-spain.mvp-surface-legal main h1 { font-size: clamp(2.6rem,5vw,4.2rem); }
.mvp-site-spain.mvp-surface-legal main h2 { margin-top: 46px !important; font-size: 1.65rem; }
.mvp-site-spain.mvp-surface-legal main .alert-info { border-color: #1437d0; color: #17213c; background: #eef1ff; }
.mvp-site-spain .es-footer-logo img { width: 230px; height: auto; }

@media (max-width: 991px) {
    .mvp-site-spain .sva2-home-opening { grid-template-columns: 1fr; gap: 34px; }
    .mvp-site-spain .navbar-collapse { border: 1px solid #d8dce8; background: #fff; }
}
@media (max-width: 767px) {
    .mvp-site-spain .sva2-home-copy h1,
    .mvp-site-spain .sva2-directory-opening h1,
    .mvp-site-spain .sva2-route-title h1,
    .mvp-site-spain .sva2-journal-opening h1,
    .mvp-site-spain .blog-hero h1,
    .mvp-site-spain .post-hero h1,
    .mvp-site-spain .sva2-login-intro h1,
    .mvp-site-spain .sva2-checkout-heading h1 { font-size: 2.55rem; }
    .mvp-site-spain .sva2-home { padding-top: 42px; }
    .mvp-site-spain .sva2-brief-head { grid-template-columns: 1fr; }
    .mvp-site-spain .sva2-brief-fields { grid-template-columns: 1fr; }
    .mvp-site-spain.mvp-surface-legal main > .container { width: min(calc(100% - 28px),960px); padding-top: 38px !important; }
}

/* Final reviewed home composition */
.mvp-site-spain .sva2-kicker,
.mvp-site-spain .mvp-eyebrow { display: none; }
.mvp-site-spain .sva2-home { border-bottom: 0; }
.mvp-site-spain .sva2-home-opening { grid-template-columns: minmax(0,1fr) 420px; gap: 64px; align-items: start; }
.mvp-site-spain .sva2-home-copy h1 { max-width: 720px; font-size: clamp(3.25rem,4.25vw,3.625rem); line-height: 1.02; letter-spacing: -.04em; }
.mvp-site-spain .sva2-home-finder { display: block; grid-column: 2; grid-row: 1; width: 100%; max-width: 420px; margin: 0; padding: 0; border: 1px solid #c5cad7; border-top: 1px solid #c5cad7; background: #fcf8f1; }
.mvp-site-spain .sva2-home-finder .sva2-brief-head { display: block; padding: 24px 24px 10px; border: 0; background: transparent; }
.mvp-site-spain .sva2-home-finder .sva2-brief-head h2 { margin: 0; font-size: 1.45rem; }
.mvp-site-spain .sva2-home-finder .sva2-brief-head p { margin: 6px 0 0; }
.mvp-site-spain .sva2-home-finder .sva2-brief-fields { grid-template-columns: 1fr; gap: 14px; padding: 12px 24px 16px; }
.mvp-site-spain .sva2-home-finder .mvp-route-finder-submit { width: 100%; }
.mvp-site-spain .sva2-home-finder .sva2-brief-context { padding: 0 24px 22px; }
.mvp-site-spain .sva2-directory-opening,
.mvp-site-spain .sva2-directory-footer,
.mvp-site-spain .sva2-responsibility-head { border: 0; }
.mvp-site-spain .sva2-directory-opening h1,
.mvp-site-spain .sva2-route-title h1,
.mvp-site-spain .sva2-journal-opening h1,
.mvp-site-spain .blog-hero h1,
.mvp-site-spain .post-hero h1 { font-size: clamp(3rem,4.5vw,3.75rem); }
.mvp-site-spain .sva2-section-intro h2,
.mvp-site-spain .sva2-handoff-copy h2,
.mvp-site-spain .sva2-routes-head h2,
.mvp-site-spain .sva2-faq-intro h2 { font-size: clamp(2rem,3vw,2.625rem); }
.mvp-site-spain .sva2-service-menu,
.mvp-site-spain .sva2-route-list,
.mvp-site-spain .sva2-related-list,
.mvp-site-spain .sva2-faq-list { border-top: 0; }
.mvp-site-spain .sva2-results-label { border-bottom: 0; }
.mvp-site-spain .sva2-filter-desk,
.mvp-site-spain .sva2-route-dossier { border-top: 1px solid #b9c0d0; }
@media (max-width: 991px) {
    .mvp-site-spain .sva2-home-opening { grid-template-columns: 1fr; gap: 34px; }
    .mvp-site-spain .sva2-home-finder { grid-column: 1; grid-row: auto; max-width: 620px; }
}
@media (max-width: 767px) {
    .mvp-site-spain .sva2-home-copy h1,
    .mvp-site-spain .sva2-directory-opening h1,
    .mvp-site-spain .sva2-route-title h1,
    .mvp-site-spain .sva2-journal-opening h1,
    .mvp-site-spain .blog-hero h1,
    .mvp-site-spain .post-hero h1 { font-size: 2.5rem; }
    .mvp-site-spain .sva2-home-finder .sva2-brief-head { padding: 20px 18px 8px; }
    .mvp-site-spain .sva2-home-finder .sva2-brief-fields { padding: 10px 18px 14px; }
    .mvp-site-spain .sva2-home-finder .sva2-brief-context { padding: 0 18px 18px; }
}
