/* v894 — Mobile polish pass for heavy article/table pages
   Desktop intentionally untouched: all rules are scoped to tablet/mobile media queries only. */

@media (max-width: 1080px) {
  /* shared page shells with right sidebars */
  body.price-xxx-overflowfix-v888 .price-xxx-layout-v871,
  body.visa-req-redesign-v886 .visa-req-xxx-layout-v872,
  body.booking-guide-redo-v878 .booking-guide-layout-v878,
  body.refund-guide-redo-v879 .refund-guide-layout-v879,
  body.privacy-guide-redo-v880 .privacy-guide-layout-v880,
  body.terms-article-v859 .terms-article-layout-v859 {
    grid-template-columns: 1fr !important;
    width: min(100%, calc(100vw - 24px)) !important;
    max-width: 100% !important;
    gap: 18px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.price-xxx-overflowfix-v888 .price-xxx-sidebar-v871,
  body.visa-req-redesign-v886 .visa-req-xxx-sidebar-v872,
  body.booking-guide-redo-v878 .booking-guide-sidebar-v878,
  body.refund-guide-redo-v879 .refund-guide-sidebar-v879,
  body.privacy-guide-redo-v880 .privacy-guide-sidebar-v880,
  body.terms-article-v859 .terms-article-sidebar-v859 {
    position: static !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 12px !important;
    order: 2 !important;
  }

  /* on tablet/mobile, do not let copied emergency sidebar become a long page by itself */
  body.price-xxx-overflowfix-v888 .price-xxx-sidebar-v871 .emergency-side-box-v787FR:nth-of-type(n+5),
  body.visa-req-redesign-v886 .visa-req-xxx-sidebar-v872 .emergency-side-box-v787FR:nth-of-type(n+5),
  body.booking-guide-redo-v878 .booking-guide-sidebar-v878 .emergency-side-box-v787FR:nth-of-type(n+5),
  body.refund-guide-redo-v879 .refund-guide-sidebar-v879 .emergency-side-box-v787FR:nth-of-type(n+5),
  body.privacy-guide-redo-v880 .privacy-guide-sidebar-v880 .emergency-side-box-v787FR:nth-of-type(n+5),
  body.terms-article-v859 .terms-article-sidebar-v859 .emergency-side-box-v787FR:nth-of-type(n+5) {
    display: none !important;
  }

  body.price-xxx-overflowfix-v888 .price-xxx-main-v871,
  body.visa-req-redesign-v886 .visa-req-xxx-main-v872,
  body.booking-guide-redo-v878 .booking-guide-article-v878,
  body.refund-guide-redo-v879 .refund-guide-article-v879,
  body.privacy-guide-redo-v880 .privacy-guide-article-v880,
  body.terms-article-v859 .terms-article-main-v859 {
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
    order: 1 !important;
  }

  /* generic large cards/sections should not keep desktop side-by-side grids */
  body.vge-article-compact-v861 .grid.two,
  body.vge-article-compact-v861 .grid.three,
  body.vge-article-compact-v861 .grid.four,
  body.visa-info-xxx-page-v835 .visa-info-xxx-hero-grid-v835,
  body.booking-guide-redo-v878 .booking-guide-hero-grid-v878,
  body.refund-guide-redo-v879 .refund-guide-hero-grid-v879,
  body.privacy-guide-redo-v880 .privacy-guide-hero-grid-v880,
  body.terms-article-v859 .terms-article-hero-grid-v859 {
    grid-template-columns: 1fr !important;
  }

  /* tables: keep all columns readable by scrolling inside table block */
  body.price-xxx-page-v871 .fees-matrix-wrap-v787DN,
  body.price-xxx-page-v871 .urgent-table-wrap,
  body.visa-req-redesign-v886 .visa-req-table-wrap-v886,
  body.visa-info-xxx-page-v835 .visa-info-xxx-table-wrap-v835,
  body.booking-guide-redo-v878 .booking-guide-table-wrap-v878,
  body.refund-guide-redo-v879 .refund-guide-table-wrap-v879,
  body.privacy-guide-redo-v880 .privacy-guide-table-wrap-v880,
  body.terms-article-v859 .terms-article-table-wrap-v859,
  body.vge-article-compact-v861 .table-wrap,
  body.vge-article-compact-v861 .table-responsive {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    border: 1px solid #d7e2f0 !important;
    background: #fff !important;
  }

  body.price-xxx-page-v871 .fees-matrix-wrap-v787DN::before,
  body.price-xxx-page-v871 .urgent-table-wrap::before,
  body.visa-req-redesign-v886 .visa-req-table-wrap-v886::before,
  body.visa-info-xxx-page-v835 .visa-info-xxx-table-wrap-v835::before,
  body.booking-guide-redo-v878 .booking-guide-table-wrap-v878::before,
  body.refund-guide-redo-v879 .refund-guide-table-wrap-v879::before,
  body.privacy-guide-redo-v880 .privacy-guide-table-wrap-v880::before,
  body.terms-article-v859 .terms-article-table-wrap-v859::before {
    content: "Swipe sideways to view all columns";
    display: block;
    padding: 8px 10px;
    font-size: 12px;
    font-weight: 800;
    color: #0b63ce;
    background: #f4f8ff;
    border-bottom: 1px solid #d7e2f0;
  }

  body.price-xxx-page-v871 .fees-matrix-v787DN,
  body.price-xxx-page-v871 .urgent-table-wrap table,
  body.visa-req-redesign-v886 .visa-req-table-v886,
  body.visa-info-xxx-page-v835 .visa-info-xxx-table-v835,
  body.booking-guide-redo-v878 .booking-guide-table-v878,
  body.refund-guide-redo-v879 .refund-guide-table-v879,
  body.privacy-guide-redo-v880 .privacy-guide-table-v880,
  body.terms-article-v859 .terms-article-table-v859,
  body.vge-article-compact-v861 table {
    min-width: 640px !important;
    width: max-content !important;
    max-width: none !important;
    table-layout: auto !important;
  }

  /* forms and checkers */
  body.price-xxx-page-v871 .fees-check-section .grid.two,
  body.visa-req-redesign-v886 .visa-checker-form,
  body.booking-guide-redo-v878 form,
  body.refund-guide-redo-v879 form,
  body.privacy-guide-redo-v880 form {
    grid-template-columns: 1fr !important;
  }

  body.price-xxx-page-v871 input,
  body.price-xxx-page-v871 select,
  body.visa-req-redesign-v886 input,
  body.visa-req-redesign-v886 select,
  body.booking-guide-redo-v878 input,
  body.booking-guide-redo-v878 select,
  body.privacy-guide-redo-v880 input,
  body.privacy-guide-redo-v880 select {
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }
}

@media (max-width: 768px) {
  /* global mobile rhythm for these heavy pages only */
  body.price-xxx-page-v871,
  body.visa-req-redesign-v886,
  body.visa-info-xxx-page-v835,
  body.booking-guide-redo-v878,
  body.refund-guide-redo-v879,
  body.privacy-guide-redo-v880,
  body.terms-article-v859 {
    overflow-x: hidden !important;
  }

  body.price-xxx-page-v871 .container,
  body.visa-req-redesign-v886 .container,
  body.visa-info-xxx-page-v835 .container,
  body.booking-guide-redo-v878 .container,
  body.refund-guide-redo-v879 .container,
  body.privacy-guide-redo-v880 .container,
  body.terms-article-v859 .container {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    box-sizing: border-box !important;
  }

  /* hero and banner */
  body.price-xxx-page-v871 .price-xxx-banner-v871,
  body.visa-req-redesign-v886 .visa-req-hero-banner-v886,
  body.visa-info-xxx-page-v835 .visa-info-xxx-hero-art-v835,
  body.booking-guide-redo-v878 .booking-guide-banner-v878,
  body.refund-guide-redo-v879 .refund-guide-banner-v879,
  body.privacy-guide-redo-v880 .privacy-guide-banner-v880,
  body.terms-article-v859 .terms-article-hero-art-v859 {
    height: 170px !important;
    max-height: 170px !important;
    min-height: 0 !important;
    margin: 0 !important;
    border-radius: 0 !important;
    overflow: hidden !important;
  }

  body.price-xxx-page-v871 .price-xxx-banner-v871 img,
  body.visa-req-redesign-v886 .visa-req-hero-banner-v886 img,
  body.visa-info-xxx-page-v835 .visa-info-xxx-hero-art-v835 img,
  body.booking-guide-redo-v878 .booking-guide-banner-v878 img,
  body.refund-guide-redo-v879 .refund-guide-banner-v879 img,
  body.privacy-guide-redo-v880 .privacy-guide-banner-v880 img,
  body.terms-article-v859 .terms-article-hero-art-v859 img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }

  /* headings */
  body.price-xxx-page-v871 h1,
  body.visa-req-redesign-v886 h1,
  body.visa-info-xxx-page-v835 h1,
  body.booking-guide-redo-v878 h1,
  body.refund-guide-redo-v879 h1,
  body.privacy-guide-redo-v880 h1,
  body.terms-article-v859 h1 {
    font-size: clamp(30px, 9vw, 42px) !important;
    line-height: 1.12 !important;
    letter-spacing: -0.035em !important;
  }

  body.price-xxx-page-v871 h2,
  body.visa-req-redesign-v886 h2,
  body.visa-info-xxx-page-v835 h2,
  body.booking-guide-redo-v878 h2,
  body.refund-guide-redo-v879 h2,
  body.privacy-guide-redo-v880 h2,
  body.terms-article-v859 h2 {
    font-size: clamp(23px, 6.5vw, 32px) !important;
    line-height: 1.18 !important;
  }

  body.price-xxx-page-v871 p,
  body.visa-req-redesign-v886 p,
  body.visa-info-xxx-page-v835 p,
  body.booking-guide-redo-v878 p,
  body.refund-guide-redo-v879 p,
  body.privacy-guide-redo-v880 p,
  body.terms-article-v859 p {
    font-size: 14.5px !important;
    line-height: 1.65 !important;
  }

  /* sidebars become compact support sections */
  body.price-xxx-overflowfix-v888 .price-xxx-sidebar-v871,
  body.visa-req-redesign-v886 .visa-req-xxx-sidebar-v872,
  body.booking-guide-redo-v878 .booking-guide-sidebar-v878,
  body.refund-guide-redo-v879 .refund-guide-sidebar-v879,
  body.privacy-guide-redo-v880 .privacy-guide-sidebar-v880,
  body.terms-article-v859 .terms-article-sidebar-v859 {
    grid-template-columns: 1fr !important;
    margin-top: 10px !important;
  }

  body.price-xxx-overflowfix-v888 .price-xxx-sidebar-v871 .emergency-side-box-v787FR,
  body.visa-req-redesign-v886 .visa-req-xxx-sidebar-v872 .emergency-side-box-v787FR,
  body.booking-guide-redo-v878 .booking-guide-sidebar-v878 .emergency-side-box-v787FR,
  body.refund-guide-redo-v879 .refund-guide-sidebar-v879 .emergency-side-box-v787FR,
  body.privacy-guide-redo-v880 .privacy-guide-sidebar-v880 .emergency-side-box-v787FR,
  body.terms-article-v859 .terms-article-sidebar-v859 .emergency-side-box-v787FR {
    padding: 14px !important;
    box-shadow: none !important;
    border-radius: 0 !important;
  }

  /* show only most important sidebar blocks on mobile */
  body.price-xxx-overflowfix-v888 .price-xxx-sidebar-v871 .emergency-side-box-v787FR:nth-of-type(n+4),
  body.visa-req-redesign-v886 .visa-req-xxx-sidebar-v872 .emergency-side-box-v787FR:nth-of-type(n+4),
  body.booking-guide-redo-v878 .booking-guide-sidebar-v878 .emergency-side-box-v787FR:nth-of-type(n+4),
  body.refund-guide-redo-v879 .refund-guide-sidebar-v879 .emergency-side-box-v787FR:nth-of-type(n+4),
  body.privacy-guide-redo-v880 .privacy-guide-sidebar-v880 .emergency-side-box-v787FR:nth-of-type(n+4),
  body.terms-article-v859 .terms-article-sidebar-v859 .emergency-side-box-v787FR:nth-of-type(n+4) {
    display: none !important;
  }

  /* page-specific section layout */
  body.visa-info-xxx-page-v835 .visa-info-xxx-section-v835,
  body.booking-guide-redo-v878 .booking-guide-section-v878,
  body.refund-guide-redo-v879 .refund-guide-section-v879,
  body.privacy-guide-redo-v880 .privacy-guide-section-v880,
  body.terms-article-v859 .terms-article-section-v859 {
    padding-top: 18px !important;
    padding-bottom: 18px !important;
  }

  body.visa-info-xxx-page-v835 .visa-info-xxx-section-v835,
  body.booking-guide-redo-v878 .booking-guide-head-v878,
  body.refund-guide-redo-v879 .refund-guide-head-v879,
  body.privacy-guide-redo-v880 .privacy-guide-head-v880,
  body.terms-article-v859 .terms-article-head-v859,
  body.visa-req-redesign-v886 .visa-req-heading-v886 {
    gap: 10px !important;
  }

  body.visa-info-xxx-page-v835 .visa-info-xxx-icon-v835,
  body.booking-guide-redo-v878 .booking-guide-icon-v878,
  body.refund-guide-redo-v879 .refund-guide-icon-v879,
  body.privacy-guide-redo-v880 .privacy-guide-icon-v880,
  body.terms-article-v859 .terms-article-icon-v859,
  body.visa-req-redesign-v886 .visa-req-icon-v886 {
    width: 38px !important;
    height: 38px !important;
    flex-basis: 38px !important;
    min-width: 38px !important;
    font-size: 22px !important;
  }

  /* price page mobile */
  body.price-xxx-page-v871 .price-xxx-main-v871 .section {
    padding-top: 18px !important;
    padding-bottom: 18px !important;
  }

  body.price-xxx-page-v871 .fees-check-section .grid.two > div:first-child h2 {
    font-size: clamp(28px, 8vw, 38px) !important;
  }

  body.price-xxx-page-v871 .fee-card {
    padding: 14px !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  body.price-xxx-page-v871 .fee-card select,
  body.price-xxx-page-v871 .fee-card input,
  body.price-xxx-page-v871 .fee-card button {
    min-height: 44px !important;
    font-size: 15px !important;
  }

  /* visa requirements mobile */
  body.visa-req-redesign-v886 .visa-req-feature-grid-v886,
  body.visa-req-redesign-v886 .visa-req-two-col-v886 {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  body.visa-req-redesign-v886 .visa-req-feature-v886,
  body.visa-req-redesign-v886 .visa-req-two-col-v886 > div {
    border-radius: 0 !important;
    padding: 14px !important;
  }

  body.visa-req-redesign-v886 .visa-req-inline-points-v886,
  body.visa-req-redesign-v886 .visa-req-cta-actions-v886,
  body.visa-req-redesign-v886 .visa-req-related-links-v886 {
    padding-left: 0 !important;
  }

  body.visa-req-redesign-v886 .visa-req-inline-points-v886 span,
  body.visa-req-redesign-v886 .visa-req-related-links-v886 a {
    width: 100% !important;
    justify-content: flex-start !important;
  }

  /* booking/refund/privacy/terms CTA blocks */
  body.booking-guide-redo-v878 .booking-guide-final-cta-v878,
  body.refund-guide-redo-v879 .refund-guide-final-cta-v879,
  body.privacy-guide-redo-v880 .privacy-guide-final-cta-v880,
  body.terms-article-v859 .terms-article-final-cta-v859 {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 12px !important;
    border-radius: 0 !important;
    padding: 14px !important;
  }

  body.booking-guide-redo-v878 .booking-guide-final-cta-v878 a,
  body.refund-guide-redo-v879 .refund-guide-final-cta-v879 a,
  body.privacy-guide-redo-v880 .privacy-guide-final-cta-v880 a,
  body.terms-article-v859 .terms-article-final-cta-v859 a {
    width: 100% !important;
    justify-content: center !important;
    text-align: center !important;
  }

  /* avoid floating help hiding bottom content */
  body.price-xxx-page-v871,
  body.visa-req-redesign-v886,
  body.visa-info-xxx-page-v835,
  body.booking-guide-redo-v878,
  body.refund-guide-redo-v879,
  body.privacy-guide-redo-v880,
  body.terms-article-v859 {
    padding-bottom: 96px !important;
  }
}

@media (max-width: 480px) {
  body.price-xxx-page-v871 .container,
  body.visa-req-redesign-v886 .container,
  body.visa-info-xxx-page-v835 .container,
  body.booking-guide-redo-v878 .container,
  body.refund-guide-redo-v879 .container,
  body.privacy-guide-redo-v880 .container,
  body.terms-article-v859 .container {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  body.price-xxx-page-v871 .price-xxx-banner-v871,
  body.visa-req-redesign-v886 .visa-req-hero-banner-v886,
  body.visa-info-xxx-page-v835 .visa-info-xxx-hero-art-v835,
  body.booking-guide-redo-v878 .booking-guide-banner-v878,
  body.refund-guide-redo-v879 .refund-guide-banner-v879,
  body.privacy-guide-redo-v880 .privacy-guide-banner-v880,
  body.terms-article-v859 .terms-article-hero-art-v859 {
    height: 138px !important;
    max-height: 138px !important;
  }

  body.price-xxx-page-v871 h1,
  body.visa-req-redesign-v886 h1,
  body.visa-info-xxx-page-v835 h1,
  body.booking-guide-redo-v878 h1,
  body.refund-guide-redo-v879 h1,
  body.privacy-guide-redo-v880 h1,
  body.terms-article-v859 h1 {
    font-size: clamp(28px, 10vw, 36px) !important;
  }

  body.price-xxx-page-v871 .fees-matrix-v787DN,
  body.price-xxx-page-v871 .urgent-table-wrap table,
  body.visa-req-redesign-v886 .visa-req-table-v886,
  body.visa-info-xxx-page-v835 .visa-info-xxx-table-v835,
  body.booking-guide-redo-v878 .booking-guide-table-v878,
  body.refund-guide-redo-v879 .refund-guide-table-v879,
  body.privacy-guide-redo-v880 .privacy-guide-table-v880,
  body.terms-article-v859 .terms-article-table-v859,
  body.vge-article-compact-v861 table {
    min-width: 560px !important;
  }

  body.price-xxx-page-v871 .hero-actions,
  body.visa-req-redesign-v886 .visa-req-cta-actions-v886,
  body.booking-guide-redo-v878 .booking-guide-actions-v878,
  body.refund-guide-redo-v879 .refund-guide-actions-v879,
  body.privacy-guide-redo-v880 .privacy-guide-actions-v880,
  body.terms-article-v859 .terms-article-actions-v859 {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  body.price-xxx-page-v871 .hero-actions .btn,
  body.visa-req-redesign-v886 .visa-req-cta-actions-v886 .btn,
  body.booking-guide-redo-v878 .booking-guide-actions-v878 .btn,
  body.refund-guide-redo-v879 .refund-guide-actions-v879 .btn,
  body.privacy-guide-redo-v880 .privacy-guide-actions-v880 .btn,
  body.terms-article-v859 .terms-article-actions-v859 .btn {
    width: 100% !important;
    justify-content: center !important;
  }
}
