/* goFLY Visa Universal CSS v30 — converted from Elementor 'selector' syntax to standalone stylesheet. Scoped under .gofly-visa-wrapper (visa pages only). */
/* =========================================================
   GOFLY VISA PAGES - ELEMENTOR SAFE MASTER CSS
   Version: 30.0 — Desktop Same + Mobile Improved
   Base: v29.3 merged clean build
========================================================= */
.gofly-visa-wrapper,
.gofly-visa-wrapper *,
.gofly-visa-wrapper *::before,
.gofly-visa-wrapper *::after {
    box-sizing: border-box;
}

.gofly-visa-wrapper {
    --c-primary:         #10b981;
    --c-primary-dark:    #059669;
    --c-primary-darker:  #047857;
    --c-primary-light:   #34d399;
    --c-primary-bg:      #ecfdf5;
    --c-primary-mid:     #d1fae5;

    --c-accent:          #f97316;
    --c-accent-dark:     #ea580c;
    --c-accent-light:    #fb923c;
    --c-accent-bg:       #fff7ed;
    --c-accent-mid:      #fed7aa;

    --c-danger:          #ef4444;
    --c-danger-bg:       #fef2f2;
    --c-danger-mid:      #fecaca;
    --c-danger-border:   #fca5a5;

    --c-success:         #16a34a;

    --c-text-primary:    #1f2937;
    --c-text-secondary:  #4b5563;
    --c-text-muted:      #6b7280;

    --c-bg-white:        #ffffff;
    --c-bg-soft:         #f9fafb;
    --c-bg-subtle:       #f3f4f6;
    --c-border:          #e5e7eb;

    --shadow-xs:  0 1px 2px 0 rgb(0 0 0 / 0.05);
    --shadow-sm:  0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
    --shadow-md:  0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
    --shadow-lg:  0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
    --shadow-xl:  0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);

    --r-sm:   0.375rem;
    --r-md:   0.5rem;
    --r-lg:   0.75rem;
    --r-xl:   1rem;
    --r-2xl:  1.5rem;
    --r-full: 9999px;

    --sp-1:  0.25rem;
    --sp-2:  0.5rem;
    --sp-3:  0.75rem;
    --sp-4:  1rem;
    --sp-5:  1.25rem;
    --sp-6:  1.5rem;
    --sp-8:  2rem;
    --sp-10: 2.5rem;
    --sp-12: 3rem;

    --text-xs:   0.75rem;
    --text-sm:   0.875rem;
    --text-base: 1rem;
    --text-lg:   1.125rem;
    --text-xl:   1.25rem;
    --text-2xl:  1.5rem;
    --text-3xl:  1.875rem;
    --text-4xl:  2.25rem;

    --leading-tight:   1.3;
    --leading-snug:    1.4;
    --leading-normal:  1.6;
    --leading-relaxed: 1.75;

    --font-heading: 'Cantora One', 'Georgia', serif;
    --font-body:    'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --font-mono:    'Monaco', 'Consolas', 'Courier New', monospace;

    --ease-out:   cubic-bezier(0, 0, 0.2, 1);
    --ease-inout: cubic-bezier(0.4, 0, 0.2, 1);

    --duration-fast: 150ms;
    --duration-base: 200ms;
    --duration-slow: 300ms;

    --transition-fast: var(--duration-fast) var(--ease-out);
    --transition-base: var(--duration-base) var(--ease-out);
    --transition-slow: var(--duration-slow) var(--ease-inout);

    --scroll-mt: 100px;

    font-family: var(--font-body) !important;
    color: var(--c-text-secondary) !important;
    line-height: var(--leading-normal) !important;
    overflow-x: hidden !important;
    width: 100% !important;
    -webkit-tap-highlight-color: transparent !important;
}

/* ============================================
   COMMON ELEMENT DEFAULTS
============================================ */
.gofly-visa-wrapper [id] {
    scroll-margin-top: var(--scroll-mt);
}

.gofly-visa-wrapper img {
    max-width: 100%;
    height: auto;
}

.gofly-visa-wrapper hr {
    border: 0;
    border-top: 1px solid var(--c-border);
    margin: var(--sp-6) 0;
}

/* ============================================
   SCROLLBAR
============================================ */
.gofly-visa-wrapper ::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

.gofly-visa-wrapper ::-webkit-scrollbar-track {
    background: var(--c-bg-subtle);
    border-radius: var(--r-full);
}

.gofly-visa-wrapper ::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, var(--c-primary), var(--c-accent));
    border-radius: var(--r-full);
}

.gofly-visa-wrapper ::-webkit-scrollbar-thumb:hover {
    background: var(--c-primary-dark);
}

/* ============================================
   FOCUS STATES
============================================ */
.gofly-visa-wrapper :focus-visible {
    outline: 3px solid var(--c-primary) !important;
    outline-offset: 3px !important;
    border-radius: var(--r-sm);
}

.gofly-visa-wrapper .faq-question:focus-visible {
    outline-offset: -3px !important;
}

.gofly-visa-wrapper .btn:focus-visible {
    outline: 3px solid var(--c-accent) !important;
    box-shadow: 0 0 0 6px rgb(249 115 22 / 0.2) !important;
}

/* ============================================
   HEADINGS
============================================ */
.gofly-visa-wrapper section h2,
.gofly-visa-wrapper section h3,
.gofly-visa-wrapper section h4,
.gofly-visa-wrapper .toc h2,
.gofly-visa-wrapper .quick-answers h2,
.gofly-visa-wrapper .quick-contact h2,
.gofly-visa-wrapper .cta-section h2,
.gofly-visa-wrapper .cta-box h2 {
    font-family: var(--font-heading) !important;
    font-weight: 400 !important;
    line-height: var(--leading-tight) !important;
    color: var(--c-text-primary) !important;
    margin-top: 0 !important;
    word-break: break-word !important;
}

.gofly-visa-wrapper section h2 {
    font-size: clamp(var(--text-2xl), 4vw, var(--text-3xl)) !important;
    margin-top: var(--sp-10) !important;
    margin-bottom: var(--sp-4) !important;
    padding-bottom: var(--sp-3) !important;
    border-bottom: 3px solid var(--c-primary) !important;
    position: relative !important;
}

.gofly-visa-wrapper section h2::after {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    bottom: -3px !important;
    width: 60px !important;
    height: 3px !important;
    background: var(--c-accent) !important;
    border-radius: var(--r-full) !important;
}

.gofly-visa-wrapper section h3 {
    font-size: clamp(var(--text-xl), 3vw, var(--text-2xl)) !important;
    margin-top: var(--sp-8) !important;
    margin-bottom: var(--sp-3) !important;
    color: var(--c-primary-darker) !important;
}

.gofly-visa-wrapper section h4 {
    font-size: clamp(var(--text-lg), 2.5vw, var(--text-xl)) !important;
    margin-top: var(--sp-6) !important;
    margin-bottom: var(--sp-2) !important;
    color: var(--c-text-primary) !important;
}

/* Special heading fixes */
.gofly-visa-wrapper .step h2,
.gofly-visa-wrapper .step .step-title,
.gofly-visa-wrapper .scenario-card h2,
.gofly-visa-wrapper .scenario-card .scenario-title,
.gofly-visa-wrapper .toc h2.toc-title,
.gofly-visa-wrapper .quick-contact h2.quick-contact-title,
.gofly-visa-wrapper .quick-answers h2.quick-answers-title,
.gofly-visa-wrapper .cta-section h2,
.gofly-visa-wrapper .cta-box h2,
.gofly-visa-wrapper .related-links h2.related-links-title {
    border-bottom: none !important;
    padding-bottom: 0 !important;
}

.gofly-visa-wrapper .step h2::after,
.gofly-visa-wrapper .scenario-card h2::after,
.gofly-visa-wrapper .toc h2.toc-title::after,
.gofly-visa-wrapper .quick-contact h2.quick-contact-title::after,
.gofly-visa-wrapper .quick-answers h2.quick-answers-title::after,
.gofly-visa-wrapper .cta-section h2::after,
.gofly-visa-wrapper .cta-box h2::after,
.gofly-visa-wrapper .related-links h2.related-links-title::after {
    display: none !important;
}

.gofly-visa-wrapper .step h2,
.gofly-visa-wrapper .step .step-title {
    font-size: clamp(var(--text-lg), 2.5vw, var(--text-xl)) !important;
    margin: 0 0 var(--sp-2) 0 !important;
    color: var(--c-text-primary) !important;
}

.gofly-visa-wrapper .scenario-card h2,
.gofly-visa-wrapper .scenario-card .scenario-title {
    font-size: 1.05rem !important;
    margin: 0 !important;
    color: var(--c-primary-darker) !important;
}

.gofly-visa-wrapper .related-links h2.related-links-title {
    font-size: clamp(var(--text-lg), 3vw, var(--text-2xl)) !important;
    margin: 0 0 var(--sp-5) 0 !important;
    padding-bottom: var(--sp-3) !important;
    border-bottom: 2px solid var(--c-primary-light) !important;
    color: var(--c-primary-darker) !important;
}

.gofly-visa-wrapper .toc h2.toc-title,
.gofly-visa-wrapper .quick-contact h2.quick-contact-title,
.gofly-visa-wrapper .quick-answers h2.quick-answers-title {
    font-size: clamp(var(--text-lg), 3vw, var(--text-2xl)) !important;
    margin-bottom: var(--sp-5) !important;
}

/* ============================================
   BODY TEXT
============================================ */
.gofly-visa-wrapper section p,
.gofly-visa-wrapper .info-box p,
.gofly-visa-wrapper .faq-answer p,
.gofly-visa-wrapper .disclaimer p,
.gofly-visa-wrapper .scenario-card > p,
.gofly-visa-wrapper .step-description,
.gofly-visa-wrapper .bd-approval-context p,
.gofly-visa-wrapper .tour-crosslink p,
.gofly-visa-wrapper .cta-inline-text,
.gofly-visa-wrapper .cta-section > p,
.gofly-visa-wrapper .cta-box p {
    font-family: var(--font-body) !important;
    color: var(--c-text-secondary) !important;
    line-height: var(--leading-relaxed) !important;
    font-size: var(--text-base) !important;
    margin: 0 0 var(--sp-5) 0 !important;
}

.gofly-visa-wrapper strong {
    color: var(--c-text-primary) !important;
    font-weight: 600 !important;
}

/* ============================================
   LISTS
============================================ */
.gofly-visa-wrapper section ul:not(.checklist):not(.toc-list),
.gofly-visa-wrapper section ol {
    margin: var(--sp-4) 0 var(--sp-5) 0 !important;
    padding-left: var(--sp-6) !important;
}

.gofly-visa-wrapper section ul:not(.checklist):not(.toc-list) li,
.gofly-visa-wrapper section ol li,
.gofly-visa-wrapper .info-box li,
.gofly-visa-wrapper .disclaimer li {
    padding: 0.35rem 0 !important;
    line-height: var(--leading-relaxed) !important;
    color: var(--c-text-secondary) !important;
    font-size: var(--text-base) !important;
}

/* ============================================
   LINKS
============================================ */
.gofly-visa-wrapper section a,
.gofly-visa-wrapper .info-box a,
.gofly-visa-wrapper .disclaimer a,
.gofly-visa-wrapper .scenario-card a,
.gofly-visa-wrapper .bd-approval-context a {
    color: var(--c-primary-dark) !important;
    text-decoration: none !important;
    font-weight: 500 !important;
    transition: color var(--transition-base) !important;
    position: relative !important;
    display: inline-block !important;
    word-break: break-word !important;
}

.gofly-visa-wrapper section a::after,
.gofly-visa-wrapper .info-box a::after,
.gofly-visa-wrapper .disclaimer a::after,
.gofly-visa-wrapper .scenario-card a::after,
.gofly-visa-wrapper .bd-approval-context a::after {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    bottom: -2px !important;
    width: 100% !important;
    height: 2px !important;
    background: var(--c-accent) !important;
    transform: scaleX(0) !important;
    transform-origin: right !important;
    transition: transform var(--transition-base) !important;
}

.gofly-visa-wrapper section a:hover,
.gofly-visa-wrapper .info-box a:hover,
.gofly-visa-wrapper .disclaimer a:hover,
.gofly-visa-wrapper .scenario-card a:hover,
.gofly-visa-wrapper .bd-approval-context a:hover {
    color: var(--c-accent) !important;
}

.gofly-visa-wrapper section a:hover::after,
.gofly-visa-wrapper .info-box a:hover::after,
.gofly-visa-wrapper .disclaimer a:hover::after,
.gofly-visa-wrapper .scenario-card a:hover::after,
.gofly-visa-wrapper .bd-approval-context a:hover::after {
    transform: scaleX(1) !important;
    transform-origin: left !important;
}

/* ============================================
   FAQ LINK FIX
============================================ */
.gofly-visa-wrapper .faq-answer a {
    color: var(--c-primary-dark) !important;
    text-decoration: none !important;
    font-weight: 600 !important;
    position: static !important;
    display: inline !important;
}

.gofly-visa-wrapper .faq-answer a::after {
    display: none !important;
    content: none !important;
}

.gofly-visa-wrapper .faq-answer a:hover {
    color: var(--c-accent-dark) !important;
    text-decoration: none !important;
}

.gofly-visa-wrapper .faq-answer a[href^="tel:"] {
    white-space: nowrap !important;
}

/* ============================================
   EMOJI IMAGES
============================================ */
.gofly-visa-wrapper img.emoji {
    display: inline-block !important;
    width: 1em !important;
    height: 1em !important;
    max-width: 1em !important;
    max-height: 1em !important;
    vertical-align: -0.1em !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
}

/* ============================================
   AUTHOR BLOCK
============================================ */
.gofly-visa-wrapper .author-block {
    display: flex !important;
    align-items: flex-start !important;
    gap: var(--sp-6) !important;
    background: linear-gradient(135deg, var(--c-bg-soft) 0%, var(--c-primary-bg) 100%) !important;
    border: 1px solid var(--c-border) !important;
    border-left: 4px solid var(--c-primary) !important;
    border-radius: var(--r-xl) !important;
    padding: clamp(var(--sp-5), 4vw, 1.75rem) !important;
    margin: var(--sp-8) 0 !important;
    transition: all var(--transition-base) !important;
    position: relative !important;
    overflow: hidden !important;
}

.gofly-visa-wrapper .author-block::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    width: 120px !important;
    height: 120px !important;
    background: radial-gradient(circle, rgb(16 185 129 / 0.08) 0%, transparent 70%) !important;
    pointer-events: none !important;
}

.gofly-visa-wrapper .author-block:hover {
    border-color: var(--c-primary-light) !important;
    box-shadow: var(--shadow-md) !important;
    transform: translateY(-1px) !important;
}

.gofly-visa-wrapper .author-avatar {
    width: 64px !important;
    height: 64px !important;
    min-width: 64px !important;
    max-width: 64px !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    border: 3px solid var(--c-primary) !important;
    box-shadow: var(--shadow-md), 0 0 0 3px var(--c-primary-bg) !important;
    flex-shrink: 0 !important;
    transition: transform var(--transition-base) !important;
}

.gofly-visa-wrapper .author-block:hover .author-avatar {
    transform: scale(1.05) !important;
}

.gofly-visa-wrapper .author-info {
    flex: 1 !important;
    min-width: 0 !important;
}

.gofly-visa-wrapper .author-meta {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: var(--sp-2) !important;
    margin-bottom: var(--sp-2) !important;
}

.gofly-visa-wrapper .author-name {
    font-family: var(--font-heading) !important;
    font-size: 1.1rem !important;
    font-weight: 400 !important;
    color: var(--c-text-primary) !important;
    text-decoration: none !important;
    display: inline-block !important;
}

.gofly-visa-wrapper .author-name::after {
    display: none !important;
}

.gofly-visa-wrapper .author-name:hover {
    color: var(--c-accent-dark) !important;
}

.gofly-visa-wrapper .author-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: var(--sp-1) !important;
    background: linear-gradient(135deg, var(--c-primary), var(--c-primary-dark)) !important;
    color: #fff !important;
    font-size: var(--text-xs) !important;
    font-weight: 700 !important;
    padding: 0.2rem 0.625rem !important;
    border-radius: var(--r-full) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    white-space: nowrap !important;
}

.gofly-visa-wrapper .author-bio {
    font-size: var(--text-sm) !important;
    color: var(--c-text-secondary) !important;
    line-height: var(--leading-relaxed) !important;
    margin: var(--sp-2) 0 0 0 !important;
}

.gofly-visa-wrapper .author-credentials {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: var(--sp-2) !important;
    margin-top: var(--sp-3) !important;
}

.gofly-visa-wrapper .credential-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: var(--sp-1) !important;
    background: var(--c-bg-white) !important;
    border: 1px solid var(--c-border) !important;
    color: var(--c-text-secondary) !important;
    font-size: var(--text-xs) !important;
    font-weight: 500 !important;
    padding: 0.25rem 0.75rem !important;
    border-radius: var(--r-full) !important;
    transition: all var(--transition-base) !important;
    white-space: nowrap !important;
}

.gofly-visa-wrapper .credential-badge:hover {
    border-color: var(--c-primary) !important;
    color: var(--c-primary-darker) !important;
    background: var(--c-primary-bg) !important;
}

/* ============================================
   QUICK CONTACT
============================================ */
.gofly-visa-wrapper .quick-contact {
    background: linear-gradient(135deg, var(--c-primary-bg) 0%, var(--c-primary-mid) 100%) !important;
    border: 2px solid var(--c-primary-light) !important;
    border-radius: var(--r-xl) !important;
    padding: clamp(var(--sp-5), 4vw, var(--sp-8)) !important;
    margin: var(--sp-8) 0 !important;
    box-shadow: var(--shadow-md) !important;
    position: relative !important;
    overflow: hidden !important;
    transition: transform var(--transition-base), box-shadow var(--transition-base) !important;
}

.gofly-visa-wrapper .quick-contact:hover {
    transform: translateY(-2px) !important;
    box-shadow: var(--shadow-lg) !important;
}

.gofly-visa-wrapper .quick-contact h2.quick-contact-title {
    color: var(--c-primary-darker) !important;
}

.gofly-visa-wrapper .quick-contact-grid {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: var(--sp-4) !important;
}

/* 5-item grid */
.gofly-visa-wrapper .quick-contact-grid--5 {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: var(--sp-4) !important;
}

.gofly-visa-wrapper .contact-item--hotline {
    grid-column: 1 / -1 !important;
    background: linear-gradient(135deg, var(--c-accent-bg) 0%, rgb(255 255 255 / 0.95) 100%) !important;
    border: 1px solid var(--c-accent-mid) !important;
    border-left: 4px solid var(--c-accent) !important;
}

.gofly-visa-wrapper .contact-item--hotline .contact-icon {
    background: var(--c-accent-bg) !important;
    color: var(--c-accent-dark) !important;
}

.gofly-visa-wrapper .contact-item--hotline strong {
    color: var(--c-accent-dark) !important;
}

.gofly-visa-wrapper .contact-item {
    display: flex !important;
    align-items: center !important;
    gap: var(--sp-3) !important;
    padding: var(--sp-3) !important;
    background: rgb(255 255 255 / 0.95) !important;
    border-radius: var(--r-lg) !important;
    transition: all var(--transition-base) !important;
    border: 1px solid transparent !important;
}

.gofly-visa-wrapper .contact-item:hover {
    background: var(--c-bg-white) !important;
    border-color: var(--c-accent) !important;
    transform: translateY(-2px) !important;
    box-shadow: var(--shadow-md) !important;
}

.gofly-visa-wrapper .contact-icon {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    background: linear-gradient(135deg, var(--c-primary) 0%, var(--c-primary-dark) 100%) !important;
    color: #fff !important;
    border-radius: var(--r-md) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: var(--text-xl) !important;
    flex-shrink: 0 !important;
    transition: transform var(--transition-base) !important;
}

.gofly-visa-wrapper .contact-icon:empty::before {
    content: "📞" !important;
    line-height: 1 !important;
}

.gofly-visa-wrapper .contact-item:hover .contact-icon {
    transform: scale(1.1) rotate(5deg) !important;
}

.gofly-visa-wrapper .contact-icon.whatsapp {
    background: linear-gradient(135deg, #25D366 0%, #128C7E 100%) !important;
}

.gofly-visa-wrapper .contact-item-content {
    font-size: var(--text-sm) !important;
    min-width: 0 !important;
    overflow: hidden !important;
}

.gofly-visa-wrapper .contact-item-content strong {
    display: block !important;
    color: var(--c-text-primary) !important;
    font-weight: 600 !important;
    margin-bottom: 0.125rem !important;
    font-size: var(--text-xs) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
}

.gofly-visa-wrapper .contact-item-content a {
    color: var(--c-primary-dark) !important;
    font-weight: 600 !important;
    font-size: var(--text-base) !important;
    text-decoration: none !important;
    position: static !important;
    display: inline !important;
    word-break: break-all !important;
}

.gofly-visa-wrapper .contact-item-content a::after {
    display: none !important;
}

.gofly-visa-wrapper .contact-item-content a:hover {
    color: var(--c-accent-dark) !important;
}

.gofly-visa-wrapper .contact-item-content span {
    color: var(--c-text-secondary) !important;
    font-size: var(--text-xs) !important;
    line-height: var(--leading-snug) !important;
    display: block !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
}

/* ============================================
   TRUST BADGES
============================================ */
.gofly-visa-wrapper .trust-badges {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 0.625rem !important;
    margin-top: var(--sp-6) !important;
    padding-top: var(--sp-6) !important;
    border-top: 1px solid rgb(16 185 129 / 0.2) !important;
}

.gofly-visa-wrapper .trust-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 0.5rem !important;
    background: rgb(255 255 255 / 0.9) !important;
    border: 1px solid rgb(16 185 129 / 0.3) !important;
    border-radius: var(--r-full) !important;
    padding: 0.375rem 0.875rem !important;
    font-size: var(--text-xs) !important;
    font-weight: 600 !important;
    color: var(--c-primary-darker) !important;
    transition: all var(--transition-base) !important;
    white-space: nowrap !important;
}

.gofly-visa-wrapper .trust-badge:hover {
    background: var(--c-primary) !important;
    color: #fff !important;
    border-color: var(--c-primary) !important;
    transform: translateY(-2px) !important;
    box-shadow: var(--shadow-sm) !important;
}

.gofly-visa-wrapper .trust-badge-icon {
    flex-shrink: 0 !important;
    font-size: 1rem !important;
    line-height: 1 !important;
}

/* ============================================
   TABLE OF CONTENTS
============================================ */
.gofly-visa-wrapper nav.toc {
    background: linear-gradient(135deg, var(--c-bg-soft) 0%, var(--c-primary-bg) 100%) !important;
    border: 1px solid var(--c-border) !important;
    border-left: 4px solid var(--c-primary) !important;
    border-radius: var(--r-xl) !important;
    padding: clamp(var(--sp-5), 4vw, var(--sp-8)) !important;
    margin: var(--sp-8) 0 !important;
    position: relative !important;
    overflow: hidden !important;
}

.gofly-visa-wrapper nav.toc::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 4px !important;
    height: 0 !important;
    background: var(--c-accent) !important;
    transition: height var(--transition-slow) !important;
    pointer-events: none !important;
}

.gofly-visa-wrapper nav.toc:hover::before {
    height: 100% !important;
}

.gofly-visa-wrapper .toc-list {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 0.375rem 2rem !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.gofly-visa-wrapper .toc-list li {
    margin: 0 !important;
    padding: 0 !important;
}

.gofly-visa-wrapper .toc-list a {
    color: var(--c-text-secondary) !important;
    font-size: var(--text-base) !important;
    display: flex !important;
    align-items: center !important;
    gap: var(--sp-2) !important;
    padding: var(--sp-2) var(--sp-3) !important;
    border-radius: var(--r-md) !important;
    transition: all var(--transition-base) !important;
    text-decoration: none !important;
    position: relative !important;
    font-weight: 400 !important;
}

.gofly-visa-wrapper .toc-list a::after {
    display: none !important;
}

.gofly-visa-wrapper .toc-list a::before {
    content: "→" !important;
    color: var(--c-primary) !important;
    font-size: var(--text-sm) !important;
    transition: transform var(--transition-base) !important;
    flex-shrink: 0 !important;
}

.gofly-visa-wrapper .toc-list a:hover {
    color: var(--c-accent) !important;
    background: rgb(16 185 129 / 0.1) !important;
    padding-left: var(--sp-4) !important;
}

.gofly-visa-wrapper .toc-list a:hover::before {
    transform: translateX(4px) !important;
    color: var(--c-accent) !important;
}

/* ============================================
   QUICK ANSWERS
============================================ */
.gofly-visa-wrapper .quick-answers {
    background: linear-gradient(135deg, var(--c-accent-bg) 0%, var(--c-accent-mid) 100%) !important;
    border: 2px solid var(--c-accent-light) !important;
    border-radius: var(--r-xl) !important;
    padding: clamp(var(--sp-6), 4vw, var(--sp-10)) !important;
    margin: var(--sp-8) 0 !important;
    position: relative !important;
    overflow: hidden !important;
}

.gofly-visa-wrapper .quick-answers::before {
    content: "" !important;
    position: absolute !important;
    top: -50% !important;
    right: -50% !important;
    width: 200% !important;
    height: 200% !important;
    background: radial-gradient(circle, rgb(249 115 22 / 0.1) 0%, transparent 70%) !important;
    animation: gofly-pulse-bg 4s var(--ease-inout) infinite !important;
    pointer-events: none !important;
}

@keyframes gofly-pulse-bg {
    0%, 100% { transform: translate(0, 0); opacity: 0.3; }
    50% { transform: translate(-10%, -10%); opacity: 0.6; }
}

.gofly-visa-wrapper .quick-answers h2.quick-answers-title {
    color: var(--c-accent-dark) !important;
    position: relative !important;
    z-index: 1 !important;
}

.gofly-visa-wrapper .quick-answers-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0 !important;
    position: relative !important;
    z-index: 1 !important;
}

.gofly-visa-wrapper .qa-item {
    display: grid !important;
    grid-template-columns: minmax(120px, 200px) 1fr !important;
    gap: var(--sp-4) !important;
    padding: var(--sp-3) 0 !important;
    border-bottom: 1px solid rgb(249 115 22 / 0.3) !important;
    align-items: start !important;
    transition: all var(--transition-base) !important;
    position: relative !important;
    z-index: 1 !important;
}

.gofly-visa-wrapper .qa-item:hover {
    padding-left: var(--sp-2) !important;
    background: rgb(249 115 22 / 0.05) !important;
    border-radius: var(--r-sm) !important;
}

.gofly-visa-wrapper .qa-item:first-child {
    padding-top: 0 !important;
}

.gofly-visa-wrapper .qa-item:last-child {
    border-bottom: none !important;
    padding-bottom: 0 !important;
}

.gofly-visa-wrapper .qa-label {
    font-weight: 700 !important;
    color: var(--c-accent-dark) !important;
    font-size: var(--text-sm) !important;
    line-height: var(--leading-snug) !important;
    padding-top: 0.125rem !important;
}

.gofly-visa-wrapper .qa-value {
    color: #9a3412 !important;
    font-size: var(--text-base) !important;
    line-height: var(--leading-normal) !important;
    margin: 0 !important;
}

.gofly-visa-wrapper .qa-value strong {
    color: #7c2d12 !important;
    font-weight: 700 !important;
}

.gofly-visa-wrapper .qa-value a {
    color: var(--c-accent-dark) !important;
    font-weight: 600 !important;
    text-decoration: underline !important;
    text-underline-offset: 2px !important;
    position: static !important;
    display: inline !important;
}

.gofly-visa-wrapper .qa-value a::after {
    display: none !important;
}

.gofly-visa-wrapper .qa-value a:hover {
    color: var(--c-accent) !important;
    text-decoration: none !important;
}

/* ============================================
   TABLES
============================================ */
.gofly-visa-wrapper .table-responsive {
    margin: var(--sp-6) 0 !important;
    border-radius: var(--r-lg) !important;
    box-shadow: var(--shadow-md) !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    border: 2px solid var(--c-primary) !important;
    background: var(--c-bg-white) !important;
    position: relative !important;
    overscroll-behavior-x: contain !important;
}

.gofly-visa-wrapper .table-responsive::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 4px !important;
    background: linear-gradient(90deg, var(--c-primary), var(--c-accent), var(--c-primary-light)) !important;
    pointer-events: none !important;
    z-index: 1 !important;
}

.gofly-visa-wrapper .visa-table,
.gofly-visa-wrapper .table-responsive table {
    width: 100% !important;
    min-width: 480px !important;
    border-collapse: collapse !important;
    border-spacing: 0 !important;
    margin: 0 !important;
    font-size: var(--text-base) !important;
    border: none !important;
    background: var(--c-bg-white) !important;
}

.gofly-visa-wrapper .visa-table thead,
.gofly-visa-wrapper .table-responsive table thead {
    background: linear-gradient(135deg, var(--c-primary) 0%, var(--c-primary-dark) 100%) !important;
}

.gofly-visa-wrapper .visa-table th,
.gofly-visa-wrapper .table-responsive table th {
    padding: var(--sp-4) var(--sp-5) !important;
    text-align: left !important;
    font-weight: 400 !important;
    color: #fff !important;
    font-family: var(--font-heading) !important;
    font-size: var(--text-base) !important;
    border: none !important;
    white-space: nowrap !important;
    background: transparent !important;
    vertical-align: middle !important;
}

.gofly-visa-wrapper .visa-table th:not(:last-child),
.gofly-visa-wrapper .table-responsive table th:not(:last-child) {
    border-right: 1px solid rgb(255 255 255 / 0.2) !important;
}

.gofly-visa-wrapper .visa-table tbody tr,
.gofly-visa-wrapper .table-responsive table tbody tr {
    transition: background var(--transition-fast) !important;
    border: none !important;
}

.gofly-visa-wrapper .visa-table tbody tr:nth-child(odd),
.gofly-visa-wrapper .table-responsive table tbody tr:nth-child(odd) {
    background: var(--c-bg-white) !important;
}

.gofly-visa-wrapper .visa-table tbody tr:nth-child(even),
.gofly-visa-wrapper .table-responsive table tbody tr:nth-child(even) {
    background: var(--c-bg-soft) !important;
}

.gofly-visa-wrapper .visa-table tbody tr:hover,
.gofly-visa-wrapper .table-responsive table tbody tr:hover {
    background: var(--c-primary-bg) !important;
}

.gofly-visa-wrapper .visa-table td,
.gofly-visa-wrapper .table-responsive table td {
    padding: var(--sp-4) var(--sp-5) !important;
    border: none !important;
    border-bottom: 1px solid var(--c-border) !important;
    color: var(--c-text-secondary) !important;
    vertical-align: top !important;
    line-height: var(--leading-normal) !important;
    background: transparent !important;
    font-size: var(--text-base) !important;
}

.gofly-visa-wrapper .visa-table tbody tr:last-child td,
.gofly-visa-wrapper .table-responsive table tbody tr:last-child td {
    border-bottom: none !important;
}

.gofly-visa-wrapper .visa-table td strong,
.gofly-visa-wrapper .table-responsive table td strong {
    color: var(--c-text-primary) !important;
}

.gofly-visa-wrapper .visa-table td a,
.gofly-visa-wrapper .table-responsive table td a {
    color: var(--c-primary-dark) !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    position: static !important;
    display: inline !important;
}

.gofly-visa-wrapper .visa-table td a::after,
.gofly-visa-wrapper .table-responsive table td a::after {
    display: none !important;
}

.gofly-visa-wrapper .visa-table td a:hover,
.gofly-visa-wrapper .table-responsive table td a:hover {
    color: var(--c-accent) !important;
}

/* ============================================
   INFO BOXES
============================================ */
.gofly-visa-wrapper .info-box {
    border-radius: var(--r-lg) !important;
    padding: clamp(var(--sp-4), 3vw, var(--sp-6)) !important;
    margin: var(--sp-6) 0 !important;
    position: relative !important;
    overflow: hidden !important;
    border-left: 4px solid !important;
    transition: box-shadow var(--transition-base) !important;
}

.gofly-visa-wrapper .info-box::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 4px !important;
    height: 0 !important;
    background: var(--c-accent) !important;
    transition: height var(--transition-slow) !important;
    pointer-events: none !important;
}

.gofly-visa-wrapper .info-box:hover {
    box-shadow: var(--shadow-sm) !important;
}

.gofly-visa-wrapper .info-box:hover::before {
    height: 100% !important;
}

.gofly-visa-wrapper .info-box-tip {
    background: linear-gradient(135deg, var(--c-primary-bg) 0%, var(--c-primary-mid) 100%) !important;
    border-left-color: var(--c-primary) !important;
    border-top: 1px solid #a7f3d0 !important;
    border-right: 1px solid #a7f3d0 !important;
    border-bottom: 1px solid #a7f3d0 !important;
}

.gofly-visa-wrapper .info-box-warning {
    background: linear-gradient(135deg, var(--c-accent-bg) 0%, var(--c-accent-mid) 100%) !important;
    border-left-color: var(--c-accent) !important;
    border-top: 1px solid var(--c-accent-light) !important;
    border-right: 1px solid var(--c-accent-light) !important;
    border-bottom: 1px solid var(--c-accent-light) !important;
}

.gofly-visa-wrapper .info-box-danger {
    background: linear-gradient(135deg, var(--c-danger-bg) 0%, var(--c-danger-mid) 100%) !important;
    border-left-color: var(--c-danger) !important;
    border-top: 1px solid var(--c-danger-border) !important;
    border-right: 1px solid var(--c-danger-border) !important;
    border-bottom: 1px solid var(--c-danger-border) !important;
}

.gofly-visa-wrapper .info-box-title {
    font-family: var(--font-heading) !important;
    font-weight: 400 !important;
    font-size: clamp(var(--text-base), 2.5vw, var(--text-lg)) !important;
    margin-bottom: 0.625rem !important;
    display: flex !important;
    align-items: center !important;
    gap: var(--sp-2) !important;
    flex-wrap: wrap !important;
}

.gofly-visa-wrapper .info-box-tip .info-box-title { color: var(--c-primary-darker) !important; }
.gofly-visa-wrapper .info-box-warning .info-box-title { color: var(--c-accent-dark) !important; }
.gofly-visa-wrapper .info-box-danger .info-box-title { color: #b91c1c !important; }

.gofly-visa-wrapper .info-box p:last-child,
.gofly-visa-wrapper .info-box ul:last-child {
    margin-bottom: 0 !important;
}

/* ============================================
   STEPS
============================================ */
.gofly-visa-wrapper .steps {
    margin: var(--sp-8) 0 !important;
}

.gofly-visa-wrapper .step {
    display: flex !important;
    gap: clamp(var(--sp-4), 3vw, var(--sp-6)) !important;
    padding-bottom: 1.75rem !important;
    position: relative !important;
    transition: padding-left var(--transition-base) !important;
}

.gofly-visa-wrapper .step:hover {
    padding-left: var(--sp-2) !important;
}

.gofly-visa-wrapper .step:last-child {
    padding-bottom: 0 !important;
}

.gofly-visa-wrapper .step:not(:last-child)::after {
    content: "" !important;
    position: absolute !important;
    left: 22px !important;
    top: 52px !important;
    bottom: 0 !important;
    width: 2px !important;
    background: linear-gradient(to bottom, var(--c-primary), var(--c-accent), var(--c-border)) !important;
    pointer-events: none !important;
}

.gofly-visa-wrapper .step-number {
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    background: linear-gradient(135deg, var(--c-primary) 0%, var(--c-primary-dark) 100%) !important;
    color: #fff !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-family: var(--font-heading) !important;
    font-size: var(--text-xl) !important;
    box-shadow: var(--shadow-md), 0 0 20px rgb(16 185 129 / 0.3) !important;
    position: relative !important;
    z-index: 1 !important;
    flex-shrink: 0 !important;
    transition: all var(--transition-base) !important;
}

.gofly-visa-wrapper .step:hover .step-number {
    transform: scale(1.08) rotate(5deg) !important;
    box-shadow: var(--shadow-lg), 0 0 30px rgb(16 185 129 / 0.4) !important;
}

.gofly-visa-wrapper .step-content {
    flex: 1 !important;
    min-width: 0 !important;
    padding-top: 0.4rem !important;
}

.gofly-visa-wrapper .step-description {
    margin: 0 !important;
}

/* ============================================
   CHECKLISTS
============================================ */
.gofly-visa-wrapper .checklist {
    list-style: none !important;
    margin: var(--sp-5) 0 !important;
    padding: 0 !important;
}

.gofly-visa-wrapper .checklist li {
    padding: 0.875rem 0 0.875rem 2.5rem !important;
    position: relative !important;
    color: var(--c-text-secondary) !important;
    border-bottom: 1px solid var(--c-border) !important;
    line-height: var(--leading-normal) !important;
    transition: padding-left var(--transition-base), background var(--transition-base) !important;
}

.gofly-visa-wrapper .checklist li:hover {
    padding-left: 2.5rem !important;
    background: rgb(16 185 129 / 0.05) !important;
}

.gofly-visa-wrapper .checklist li:last-child {
    border-bottom: none !important;
}

.gofly-visa-wrapper .checklist li::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    top: 0.95rem !important;
    width: 1.35rem !important;
    height: 1.35rem !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='5 12 10 17 19 8'/%3E%3C/svg%3E"), linear-gradient(135deg, var(--c-primary) 0%, var(--c-primary-dark) 100%) !important;
    background-repeat: no-repeat, no-repeat !important;
    background-position: center center, center center !important;
    background-size: 70% 70%, cover !important;
    border-radius: 50% !important;
    box-shadow: 0 2px 4px rgb(16 185 129 / 0.25), inset 0 1px 0 rgb(255 255 255 / 0.2) !important;
    transition: transform var(--transition-base), box-shadow var(--transition-base) !important;
}

.gofly-visa-wrapper .checklist li:hover::before {
    transform: scale(1.1) !important;
    box-shadow: 0 3px 6px rgb(16 185 129 / 0.35), inset 0 1px 0 rgb(255 255 255 / 0.25) !important;
}

/* ============================================
   SCENARIO CARDS
============================================ */
.gofly-visa-wrapper .scenario-cards,
.gofly-visa-wrapper .scenarios-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: var(--sp-4) !important;
    margin: var(--sp-6) 0 !important;
}

.gofly-visa-wrapper .scenario-card {
    background: var(--c-bg-soft) !important;
    border-left: 4px solid var(--c-primary) !important;
    padding: var(--sp-5) var(--sp-6) !important;
    border-radius: var(--r-md) !important;
    box-shadow: var(--shadow-xs) !important;
    transition: transform var(--transition-base), box-shadow var(--transition-base) !important;
}

.gofly-visa-wrapper .scenario-card:hover {
    transform: translateY(-3px) !important;
    box-shadow: var(--shadow-md) !important;
}

.gofly-visa-wrapper .scenario-header {
    display: flex !important;
    align-items: flex-start !important;
    gap: var(--sp-3) !important;
    margin-bottom: var(--sp-3) !important;
}

.gofly-visa-wrapper .scenario-icon {
    flex-shrink: 0 !important;
    width: 40px !important;
    height: 40px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 1.5rem !important;
    background: var(--c-primary-bg) !important;
    border-radius: 50% !important;
}

.gofly-visa-wrapper .scenario-subtitle {
    font-size: var(--text-sm) !important;
    color: var(--c-text-muted) !important;
    margin-top: 0.15rem !important;
    line-height: var(--leading-snug) !important;
}

.gofly-visa-wrapper .scenario-result {
    margin-top: var(--sp-3) !important;
    padding-top: var(--sp-3) !important;
    border-top: 1px dashed var(--c-border) !important;
    font-size: var(--text-sm) !important;
    color: var(--c-success) !important;
    font-weight: 600 !important;
    position: relative !important;
}

.gofly-visa-wrapper .scenario-result::before {
    content: "" !important;
    display: inline-block !important;
    width: 1.15rem !important;
    height: 1.15rem !important;
    margin-right: 0.5rem !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='5 12 10 17 19 8'/%3E%3C/svg%3E"), linear-gradient(135deg, var(--c-primary) 0%, var(--c-primary-dark) 100%) !important;
    background-repeat: no-repeat, no-repeat !important;
    background-position: center center, center center !important;
    background-size: 70% 70%, cover !important;
    border-radius: 50% !important;
    box-shadow: 0 2px 4px rgb(16 185 129 / 0.25), inset 0 1px 0 rgb(255 255 255 / 0.2) !important;
    vertical-align: -4px !important;
    position: relative !important;
}

/* ============================================
   FLIGHT CARD
============================================ */
.gofly-visa-wrapper .flight-card {
    background: linear-gradient(135deg, #f0fdf4 0%, #fef3c7 100%) !important;
    padding: var(--sp-6) !important;
    border-radius: var(--r-lg) !important;
    border: 1px solid var(--c-primary-mid) !important;
    margin: var(--sp-5) 0 !important;
    box-shadow: var(--shadow-xs) !important;
}

.gofly-visa-wrapper .flight-card > p:first-child {
    margin: 0 0 var(--sp-3) 0 !important;
    font-weight: 700 !important;
    font-size: var(--text-lg) !important;
    color: #064e3b !important;
}

.gofly-visa-wrapper .flight-card table {
    width: 100% !important;
    border-collapse: collapse !important;
    min-width: auto !important;
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
}

.gofly-visa-wrapper .flight-card table thead {
    display: none !important;
}

.gofly-visa-wrapper .flight-card table td {
    padding: var(--sp-2) var(--sp-1) !important;
    border: none !important;
    border-bottom: 1px dashed rgb(6 78 59 / 0.12) !important;
    background: transparent !important;
    color: var(--c-text-primary) !important;
}

.gofly-visa-wrapper .flight-card table td:first-child {
    width: 40% !important;
    color: var(--c-text-secondary) !important;
}

.gofly-visa-wrapper .flight-card table tr:last-child td {
    border-bottom: none !important;
}

/* ============================================
   RELATED LINKS
============================================ */
.gofly-visa-wrapper .related-links {
    background: var(--c-bg-soft) !important;
    border: 1px solid var(--c-border) !important;
    border-radius: var(--r-xl) !important;
    padding: clamp(var(--sp-5), 4vw, var(--sp-8)) !important;
    margin: var(--sp-8) 0 !important;
}

.gofly-visa-wrapper .related-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)) !important;
    gap: var(--sp-4) !important;
    margin: var(--sp-5) 0 !important;
}

.gofly-visa-wrapper .related-card {
    background: var(--c-bg-white) !important;
    border: 1px solid var(--c-border) !important;
    border-radius: var(--r-lg) !important;
    padding: var(--sp-5) !important;
    transition: box-shadow var(--transition-base), border-color var(--transition-base), transform var(--transition-base) !important;
}

.gofly-visa-wrapper .related-card:hover {
    box-shadow: var(--shadow-md) !important;
    border-color: var(--c-primary) !important;
    transform: translateY(-2px) !important;
}

.gofly-visa-wrapper .related-link {
    display: flex !important;
    align-items: center !important;
    gap: var(--sp-3) !important;
    padding: 0.85rem var(--sp-4) !important;
    background: var(--c-bg-white) !important;
    border: 1px solid var(--c-border) !important;
    border-radius: var(--r-md) !important;
    text-decoration: none !important;
    color: var(--c-text-primary) !important;
    font-weight: 500 !important;
    font-size: var(--text-base) !important;
    transition: background var(--transition-base), border-color var(--transition-base), transform var(--transition-base), color var(--transition-base) !important;
}

.gofly-visa-wrapper .related-link::after {
    display: none !important;
}

.gofly-visa-wrapper .related-link:hover {
    background: var(--c-primary-bg) !important;
    border-color: var(--c-primary) !important;
    transform: translateX(4px) !important;
    color: var(--c-primary-darker) !important;
}

.gofly-visa-wrapper .related-link-icon {
    flex-shrink: 0 !important;
    width: 36px !important;
    height: 36px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 1.25rem !important;
    background: var(--c-primary-bg) !important;
    border-radius: 50% !important;
}

/* ============================================
   FAQ ACCORDION
============================================ */
.gofly-visa-wrapper .faq-section {
    margin: var(--sp-8) 0 !important;
}

.gofly-visa-wrapper .faq-item {
    border: 1px solid var(--c-border) !important;
    border-radius: var(--r-lg) !important;
    margin-bottom: 0.875rem !important;
    overflow: hidden !important;
    transition: border-color var(--transition-base), box-shadow var(--transition-base), transform var(--transition-base) !important;
}

.gofly-visa-wrapper .faq-item:hover {
    border-color: var(--c-primary) !important;
    box-shadow: var(--shadow-sm) !important;
    transform: translateX(4px) !important;
}

.gofly-visa-wrapper .faq-question {
    width: 100% !important;
    background: var(--c-bg-soft) !important;
    border: none !important;
    padding: clamp(var(--sp-4), 3vw, var(--sp-5)) clamp(var(--sp-4), 3vw, var(--sp-6)) !important;
    text-align: left !important;
    font-size: var(--text-base) !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: var(--sp-4) !important;
    color: var(--c-text-primary) !important;
    transition: background var(--transition-base), color var(--transition-base) !important;
    line-height: var(--leading-snug) !important;
}

.gofly-visa-wrapper .faq-question:hover {
    background: var(--c-bg-subtle) !important;
}

.gofly-visa-wrapper .faq-question[aria-expanded="true"],
.gofly-visa-wrapper .faq-question.active {
    background: var(--c-primary) !important;
    color: #fff !important;
}

.gofly-visa-wrapper .faq-question::after {
    content: "+" !important;
    font-size: var(--text-2xl) !important;
    color: var(--c-primary) !important;
    font-weight: 700 !important;
    transition: transform var(--duration-slow) var(--ease-inout), color var(--transition-fast), background var(--transition-fast) !important;
    flex-shrink: 0 !important;
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: var(--c-primary-bg) !important;
    border-radius: 50% !important;
    line-height: 1 !important;
}

.gofly-visa-wrapper .faq-question[aria-expanded="true"]::after,
.gofly-visa-wrapper .faq-question.active::after {
    content: "−" !important;
    color: var(--c-primary) !important;
    background: #fff !important;
    transform: rotate(180deg) !important;
}

.gofly-visa-wrapper .faq-answer {
    padding-left: clamp(var(--sp-4), 3vw, var(--sp-6)) !important;
    padding-right: clamp(var(--sp-4), 3vw, var(--sp-6)) !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    transition: max-height var(--duration-slow) var(--ease-inout), padding var(--duration-slow) var(--ease-inout) !important;
    background: #fff !important;
}

.gofly-visa-wrapper .faq-answer.active,
.gofly-visa-wrapper .faq-question[aria-expanded="true"] + .faq-answer,
.gofly-visa-wrapper .faq-answer[aria-hidden="false"] {
    padding-top: clamp(var(--sp-4), 3vw, var(--sp-5)) !important;
    padding-bottom: clamp(var(--sp-4), 3vw, var(--sp-5)) !important;
    max-height: 2000px !important;
}

.gofly-visa-wrapper .faq-answer[hidden] {
    display: block !important;
    max-height: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    overflow: hidden !important;
}

.gofly-visa-wrapper .faq-answer p:last-child {
    margin-bottom: 0 !important;
}

/* ============================================
   CTA INLINE
============================================ */
.gofly-visa-wrapper .cta-inline {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: var(--sp-6) !important;
    flex-wrap: wrap !important;
    background: linear-gradient(135deg, var(--c-primary-bg), var(--c-primary-mid)) !important;
    border: 1px solid var(--c-primary-light) !important;
    border-radius: var(--r-xl) !important;
    padding: clamp(var(--sp-5), 4vw, var(--sp-8)) !important;
    margin: var(--sp-8) 0 !important;
    box-shadow: var(--shadow-sm) !important;
    transition: box-shadow var(--transition-base), transform var(--transition-base) !important;
}

.gofly-visa-wrapper .cta-inline:hover {
    box-shadow: var(--shadow-md) !important;
    transform: translateY(-1px) !important;
}

.gofly-visa-wrapper .cta-inline-text {
    flex: 1 !important;
    min-width: 260px !important;
    color: var(--c-text-primary) !important;
    margin: 0 !important;
}

.gofly-visa-wrapper .cta-inline-text strong {
    color: var(--c-primary-darker) !important;
    font-weight: 700 !important;
}

.gofly-visa-wrapper .cta-inline-buttons {
    display: flex !important;
    gap: var(--sp-3) !important;
    flex-wrap: wrap !important;
    align-items: center !important;
}

/* ============================================
   FINAL CTA SECTION
============================================ */
.gofly-visa-wrapper .cta-section {
    background: linear-gradient(135deg, var(--c-primary-bg) 0%, var(--c-primary-mid) 100%) !important;
    border: 2px solid var(--c-primary-light) !important;
    border-radius: var(--r-2xl) !important;
    padding: clamp(var(--sp-8), 5vw, var(--sp-12)) !important;
    margin: var(--sp-12) 0 !important;
    text-align: center !important;
    box-shadow: var(--shadow-lg) !important;
    position: relative !important;
    overflow: hidden !important;
}

.gofly-visa-wrapper .cta-section::before {
    content: "" !important;
    position: absolute !important;
    top: -60px !important;
    right: -60px !important;
    width: 200px !important;
    height: 200px !important;
    background: radial-gradient(circle, rgb(16 185 129 / 0.12) 0%, transparent 70%) !important;
    pointer-events: none !important;
}

.gofly-visa-wrapper .cta-section h2 {
    font-size: clamp(var(--text-2xl), 4vw, var(--text-3xl)) !important;
    color: var(--c-primary-darker) !important;
    margin: 0 0 var(--sp-4) 0 !important;
}

.gofly-visa-wrapper .cta-section > p {
    font-size: var(--text-lg) !important;
    color: var(--c-text-secondary) !important;
    max-width: 700px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    margin-bottom: var(--sp-5) !important;
}

.gofly-visa-wrapper .trust-indicators {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: var(--sp-3) !important;
    justify-content: center !important;
    margin: var(--sp-5) 0 !important;
    font-size: var(--text-sm) !important;
    font-weight: 500 !important;
    color: var(--c-text-secondary) !important;
}

.gofly-visa-wrapper .trust-indicators span {
    display: inline-flex !important;
    align-items: center !important;
    gap: var(--sp-1) !important;
    background: var(--c-bg-white) !important;
    border: 1px solid var(--c-border) !important;
    border-radius: var(--r-full) !important;
    padding: 0.3rem 0.875rem !important;
}

.gofly-visa-wrapper .cta-buttons {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: var(--sp-4) !important;
    margin-top: var(--sp-6) !important;
}

/* ============================================
   CTA BOX
============================================ */
.gofly-visa-wrapper .cta-box {
    background: linear-gradient(135deg, var(--c-primary) 0%, var(--c-primary-dark) 100%) !important;
    padding: var(--sp-8) !important;
    border-radius: var(--r-2xl) !important;
    color: #fff !important;
    text-align: center !important;
    box-shadow: var(--shadow-lg) !important;
    position: relative !important;
    overflow: hidden !important;
}

.gofly-visa-wrapper .cta-box::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background:
        radial-gradient(circle at 20% 80%, rgb(249 115 22 / 0.2) 0%, transparent 50%),
        radial-gradient(circle at 80% 20%, rgb(255 255 255 / 0.1) 0%, transparent 50%) !important;
    pointer-events: none !important;
}

.gofly-visa-wrapper .cta-box > * {
    position: relative !important;
    z-index: 1 !important;
}

.gofly-visa-wrapper .cta-box h2 {
    color: #fff !important;
    text-align: center !important;
    margin: 0 0 var(--sp-3) 0 !important;
    font-size: clamp(var(--text-2xl), 4vw, var(--text-4xl)) !important;
    line-height: var(--leading-tight) !important;
}

.gofly-visa-wrapper .cta-box p {
    margin-bottom: var(--sp-5) !important;
    font-size: var(--text-lg) !important;
    color: #fff !important;
    line-height: var(--leading-normal) !important;
    opacity: 0.95 !important;
    max-width: none !important;
}

.gofly-visa-wrapper .cta-box > div {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: var(--sp-3) !important;
    justify-content: center !important;
    margin: var(--sp-4) 0 !important;
}

.gofly-visa-wrapper .cta-box > div a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: var(--sp-2) !important;
    padding: var(--sp-3) var(--sp-6) !important;
    border-radius: var(--r-lg) !important;
    text-decoration: none !important;
    font-weight: 700 !important;
    font-size: var(--text-base) !important;
    transition: transform var(--transition-base), box-shadow var(--transition-base) !important;
    position: static !important;
}

.gofly-visa-wrapper .cta-box > div a::after {
    display: none !important;
}

.gofly-visa-wrapper .cta-box > div a:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 16px rgb(0 0 0 / 0.2) !important;
}

.gofly-visa-wrapper .cta-box a[href^="tel:"] {
    background: #fff !important;
    color: var(--c-primary-dark) !important;
}

.gofly-visa-wrapper .cta-box a[href*="wa.me"],
.gofly-visa-wrapper .cta-box a[href*="whatsapp"] {
    background: #25D366 !important;
    color: #fff !important;
}

.gofly-visa-wrapper .cta-box a[href^="mailto:"] {
    background: var(--c-accent) !important;
    color: #fff !important;
}

.gofly-visa-wrapper .cta-box > p:last-of-type {
    margin-top: var(--sp-5) !important;
    font-size: var(--text-base) !important;
    opacity: 1 !important;
    color: #fff !important;
}

.gofly-visa-wrapper .cta-box > p:last-of-type a {
    color: #fff !important;
    text-decoration: none !important;
    position: static !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: var(--sp-1) !important;
    background: rgb(255 255 255 / 0.2) !important;
    padding: 0.35rem 0.85rem !important;
    border-radius: var(--r-full) !important;
    font-weight: 600 !important;
    font-size: var(--text-sm) !important;
    border: 1px solid rgb(255 255 255 / 0.35) !important;
    transition: background var(--transition-base), border-color var(--transition-base), transform var(--transition-base), color var(--transition-base) !important;
    vertical-align: middle !important;
    margin: 0.15rem !important;
}

.gofly-visa-wrapper .cta-box > p:last-of-type a::after {
    display: none !important;
}

.gofly-visa-wrapper .cta-box > p:last-of-type a:hover {
    background: rgb(255 255 255 / 0.35) !important;
    border-color: #fff !important;
    transform: translateY(-1px) !important;
    color: #fff !important;
}

.gofly-visa-wrapper .cta-box > p:last-of-type a[href^="tel:"]:hover {
    background: #fff !important;
    color: var(--c-primary-dark) !important;
}

.gofly-visa-wrapper .cta-box > p:last-of-type a[href*="maps"],
.gofly-visa-wrapper .cta-box > p:last-of-type a[href*="goo.gl"] {
    background: rgb(249 115 22 / 0.3) !important;
    border-color: rgb(249 115 22 / 0.5) !important;
}

.gofly-visa-wrapper .cta-box > p:last-of-type a[href*="maps"]:hover,
.gofly-visa-wrapper .cta-box > p:last-of-type a[href*="goo.gl"]:hover {
    background: var(--c-accent) !important;
    border-color: var(--c-accent) !important;
    color: #fff !important;
}

/* ============================================
   BD APPROVAL CONTEXT
============================================ */
.gofly-visa-wrapper .bd-approval-context {
    background: var(--c-accent-bg) !important;
    border: 1px solid var(--c-accent-mid) !important;
    border-left: 4px solid var(--c-accent) !important;
    border-radius: var(--r-lg) !important;
    padding: var(--sp-5) var(--sp-6) !important;
    margin: var(--sp-6) 0 !important;
    box-shadow: var(--shadow-xs) !important;
}

.gofly-visa-wrapper .bd-approval-context p {
    margin-bottom: 0 !important;
}

.gofly-visa-wrapper .bd-approval-context p:first-child {
    font-weight: 700 !important;
    color: #9a3412 !important;
    font-size: var(--text-lg) !important;
    line-height: var(--leading-snug) !important;
    margin-bottom: var(--sp-2) !important;
}

.gofly-visa-wrapper .bd-approval-context p:nth-child(2) {
    color: #7c2d12 !important;
    line-height: var(--leading-normal) !important;
    font-size: var(--text-base) !important;
}

.gofly-visa-wrapper .bd-approval-context p:last-child {
    margin-top: var(--sp-3) !important;
    padding-top: var(--sp-3) !important;
    border-top: 1px dashed var(--c-accent-mid) !important;
    font-size: var(--text-sm) !important;
    color: #9a3412 !important;
    line-height: var(--leading-normal) !important;
}

/* ============================================
   TOUR CROSSLINK
============================================ */
.gofly-visa-wrapper .tour-crosslink {
    background: linear-gradient(135deg, #fef3c7 0%, #fde68a 100%) !important;
    border-radius: var(--r-xl) !important;
    padding: var(--sp-6) !important;
    margin: 1.75rem 0 !important;
    border: 1px solid #fbbf24 !important;
    box-shadow: var(--shadow-xs) !important;
}

.gofly-visa-wrapper .tour-crosslink p:first-child {
    font-size: var(--text-xl) !important;
    font-weight: 700 !important;
    color: #78350f !important;
    line-height: var(--leading-snug) !important;
    margin-bottom: var(--sp-2) !important;
}

.gofly-visa-wrapper .tour-crosslink p:nth-child(2) {
    color: #78350f !important;
    line-height: var(--leading-normal) !important;
    font-size: var(--text-base) !important;
    margin-bottom: var(--sp-4) !important;
}

.gofly-visa-wrapper .tour-crosslink a {
    display: inline-flex !important;
    align-items: center !important;
    padding: var(--sp-3) var(--sp-6) !important;
    background: var(--c-accent) !important;
    color: #fff !important;
    border-radius: var(--r-lg) !important;
    text-decoration: none !important;
    font-weight: 600 !important;
    transition: background var(--transition-base), transform var(--transition-base), box-shadow var(--transition-base) !important;
    position: static !important;
}

.gofly-visa-wrapper .tour-crosslink a::after {
    display: none !important;
}

.gofly-visa-wrapper .tour-crosslink a:hover {
    background: var(--c-accent-dark) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 12px rgb(249 115 22 / 0.35) !important;
    color: #fff !important;
}

/* ============================================
   DISCLAIMER
============================================ */
.gofly-visa-wrapper .disclaimer {
    background: linear-gradient(135deg, var(--c-accent-bg) 0%, var(--c-accent-mid) 100%) !important;
    border: 1px solid var(--c-accent-light) !important;
    border-left: 4px solid var(--c-accent) !important;
    border-radius: var(--r-lg) !important;
    padding: clamp(var(--sp-5), 4vw, var(--sp-8)) !important;
    margin: var(--sp-8) 0 !important;
    font-size: var(--text-base) !important;
}

.gofly-visa-wrapper .disclaimer-title {
    font-family: var(--font-heading) !important;
    font-weight: 400 !important;
    font-size: clamp(var(--text-base), 2.5vw, var(--text-xl)) !important;
    color: var(--c-accent-dark) !important;
    margin-bottom: var(--sp-4) !important;
    display: flex !important;
    align-items: center !important;
    gap: var(--sp-2) !important;
    flex-wrap: wrap !important;
}

.gofly-visa-wrapper .disclaimer p {
    color: #9a3412 !important;
    margin-bottom: var(--sp-3) !important;
    line-height: var(--leading-relaxed) !important;
}

.gofly-visa-wrapper .disclaimer p:last-child {
    margin-bottom: 0 !important;
}

.gofly-visa-wrapper .disclaimer a {
    color: var(--c-accent-dark) !important;
    font-weight: 600 !important;
}

/* ============================================
   BUTTONS
============================================ */
.gofly-visa-wrapper .btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: var(--sp-2) !important;
    padding: var(--sp-4) var(--sp-8) !important;
    font-size: var(--text-base) !important;
    font-weight: 600 !important;
    border-radius: var(--r-lg) !important;
    border: 2px solid transparent !important;
    cursor: pointer !important;
    transition: all var(--transition-base) !important;
    text-decoration: none !important;
    position: relative !important;
    overflow: hidden !important;
    line-height: var(--leading-snug) !important;
    isolation: isolate !important;
}

.gofly-visa-wrapper .btn::before {
    content: "" !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    width: 0 !important;
    height: 0 !important;
    border-radius: 50% !important;
    background: rgb(255 255 255 / 0.25) !important;
    transform: translate(-50%, -50%) !important;
    transition: width var(--duration-slow) var(--ease-out), height var(--duration-slow) var(--ease-out) !important;
    pointer-events: none !important;
    z-index: -1 !important;
}

.gofly-visa-wrapper .btn:hover::before {
    width: 300px !important;
    height: 300px !important;
}

.gofly-visa-wrapper .btn::after {
    display: none !important;
}

.gofly-visa-wrapper .btn-primary {
    background: #fff !important;
    color: var(--c-primary-dark) !important;
    border-color: #fff !important;
}

.gofly-visa-wrapper .btn-primary:hover {
    background: var(--c-accent-bg) !important;
    color: var(--c-accent-dark) !important;
    border-color: var(--c-accent) !important;
    transform: translateY(-3px) !important;
    box-shadow: var(--shadow-xl) !important;
}

.gofly-visa-wrapper .btn-whatsapp {
    background: #25D366 !important;
    color: #fff !important;
    border-color: #25D366 !important;
}

.gofly-visa-wrapper .btn-whatsapp:hover {
    background: #128C7E !important;
    border-color: #128C7E !important;
    color: #fff !important;
    transform: translateY(-3px) scale(1.03) !important;
    box-shadow: 0 10px 25px rgb(37 211 102 / 0.4) !important;
}

.gofly-visa-wrapper .btn-secondary {
    background: rgb(255 255 255 / 0.1) !important;
    color: #fff !important;
    border-color: rgb(255 255 255 / 0.4) !important;
    backdrop-filter: blur(4px) !important;
}

.gofly-visa-wrapper .btn-secondary:hover {
    background: rgb(255 255 255 / 0.25) !important;
    border-color: #fff !important;
    color: #fff !important;
    transform: translateY(-3px) !important;
    box-shadow: var(--shadow-lg) !important;
}

.gofly-visa-wrapper .btn-lg {
    padding: 1.125rem 2.25rem !important;
    font-size: var(--text-lg) !important;
    min-width: 200px !important;
}

/* ============================================
   CODE
============================================ */
.gofly-visa-wrapper section code {
    background: var(--c-bg-subtle) !important;
    padding: 0.2rem 0.6rem !important;
    border-radius: var(--r-sm) !important;
    font-size: var(--text-sm) !important;
    color: var(--c-primary-darker) !important;
    font-family: var(--font-mono) !important;
    border: 1px solid var(--c-border) !important;
}

/* ============================================
   BACK TO TOP
============================================ */
.gofly-visa-wrapper #back-to-top {
    position: fixed !important;
    bottom: calc(20px + env(safe-area-inset-bottom)) !important;
    right: 24px !important;
    width: 48px !important;
    height: 48px !important;
    background: linear-gradient(135deg, var(--c-primary), var(--c-primary-dark)) !important;
    color: #fff !important;
    border: none !important;
    border-radius: 50% !important;
    font-size: var(--text-2xl) !important;
    cursor: pointer !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transition: all var(--duration-base) var(--ease-out) !important;
    box-shadow: var(--shadow-lg) !important;
    z-index: 999 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.gofly-visa-wrapper #back-to-top.visible {
    opacity: 1 !important;
    visibility: visible !important;
}

.gofly-visa-wrapper #back-to-top:hover {
    background: linear-gradient(135deg, var(--c-accent), var(--c-accent-dark)) !important;
    transform: translateY(-4px) scale(1.08) !important;
    box-shadow: var(--shadow-xl) !important;
}

/* ============================================
   RESPONSIVE — 1024px
============================================ */
@media (max-width: 1024px) {
    .gofly-visa-wrapper .quick-contact-grid,
    .gofly-visa-wrapper .toc-list,
    .gofly-visa-wrapper .related-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }

    .gofly-visa-wrapper .scenario-cards,
    .gofly-visa-wrapper .scenarios-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

/* ============================================
   RESPONSIVE — 768px  ★ MOBILE IMPROVED ★
============================================ */
@media (max-width: 768px) {

    /* --- Base --- */
    .gofly-visa-wrapper {
        --sp-8:  1.5rem;
        --sp-10: 2rem;
        --sp-12: 2.5rem;
    }

    .gofly-visa-wrapper section {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    /* --- Better mobile typography --- */
    .gofly-visa-wrapper section h2 {
        font-size: clamp(1.45rem, 5vw, 1.6rem) !important;
        margin-top: var(--sp-8) !important;
    }

    .gofly-visa-wrapper section h3 {
        font-size: clamp(1.18rem, 4.4vw, 1.3rem) !important;
    }

    .gofly-visa-wrapper section h4 {
        font-size: clamp(1rem, 4vw, 1.08rem) !important;
    }

    .gofly-visa-wrapper section p,
    .gofly-visa-wrapper .info-box p,
    .gofly-visa-wrapper .faq-answer p,
    .gofly-visa-wrapper .disclaimer p,
    .gofly-visa-wrapper .scenario-card > p,
    .gofly-visa-wrapper .step-description,
    .gofly-visa-wrapper .bd-approval-context p,
    .gofly-visa-wrapper .tour-crosslink p,
    .gofly-visa-wrapper .cta-inline-text,
    .gofly-visa-wrapper .cta-section > p,
    .gofly-visa-wrapper .cta-box p,
    .gofly-visa-wrapper section li,
    .gofly-visa-wrapper .info-box li,
    .gofly-visa-wrapper .disclaimer li {
        font-size: clamp(0.95rem, 3.8vw, 1rem) !important;
        margin: 0 0 var(--sp-4) 0 !important;
        line-height: 1.7 !important;
    }

    /* --- Lists --- */
    .gofly-visa-wrapper section ul:not(.checklist):not(.toc-list),
    .gofly-visa-wrapper section ol {
        padding-left: var(--sp-5) !important;
        margin: var(--sp-3) 0 var(--sp-4) 0 !important;
    }

    .gofly-visa-wrapper section ul:not(.checklist):not(.toc-list) li,
    .gofly-visa-wrapper section ol li {
        font-size: clamp(0.95rem, 3.8vw, 1rem) !important;
        padding: 0.3rem 0 !important;
    }

    /* --- Links --- */
    .gofly-visa-wrapper section a::after,
    .gofly-visa-wrapper .info-box a::after,
    .gofly-visa-wrapper .disclaimer a::after,
    .gofly-visa-wrapper .scenario-card a::after,
    .gofly-visa-wrapper .bd-approval-context a::after {
        display: none !important;
    }

    .gofly-visa-wrapper .contact-item-content a,
    .gofly-visa-wrapper .qa-value,
    .gofly-visa-wrapper .faq-answer,
    .gofly-visa-wrapper .related-link,
    .gofly-visa-wrapper .cta-box > p:last-of-type a {
        overflow-wrap: anywhere !important;
        word-break: break-word !important;
    }

    /* --- 48px touch target rule --- */
    .gofly-visa-wrapper .btn,
    .gofly-visa-wrapper .faq-question,
    .gofly-visa-wrapper .contact-item,
    .gofly-visa-wrapper .related-link,
    .gofly-visa-wrapper .toc-list a,
    .gofly-visa-wrapper .tour-crosslink a,
    .gofly-visa-wrapper .cta-box > div a {
        min-height: 48px !important;
    }

    .gofly-visa-wrapper .faq-question,
    .gofly-visa-wrapper .btn,
    .gofly-visa-wrapper .contact-item-content a,
    .gofly-visa-wrapper .related-link {
        font-size: clamp(0.95rem, 3.8vw, 1rem) !important;
    }

    /* --- Author Block --- */
    .gofly-visa-wrapper .author-block {
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
        gap: var(--sp-4) !important;
        padding: var(--sp-5) !important;
        margin: var(--sp-5) 0 !important;
    }

    .gofly-visa-wrapper .author-block:hover {
        transform: none !important;
    }

    .gofly-visa-wrapper .author-meta {
        justify-content: center !important;
        flex-direction: column !important;
        align-items: center !important;
    }

    .gofly-visa-wrapper .author-bio {
        text-align: center !important;
    }

    .gofly-visa-wrapper .author-credentials {
        justify-content: center !important;
    }

    /* --- Quick Contact --- */
    .gofly-visa-wrapper .quick-contact {
        padding: var(--sp-5) !important;
        margin: var(--sp-5) 0 !important;
    }

    .gofly-visa-wrapper .quick-contact:hover {
        transform: none !important;
    }

    .gofly-visa-wrapper .quick-contact h2.quick-contact-title {
        font-size: 1.1rem !important;
        text-align: center !important;
    }

    .gofly-visa-wrapper .quick-contact-grid,
    .gofly-visa-wrapper .quick-contact-grid--5 {
        grid-template-columns: 1fr !important;
        gap: var(--sp-3) !important;
    }

    .gofly-visa-wrapper .contact-item {
        padding: var(--sp-3) !important;
        gap: var(--sp-3) !important;
    }

    .gofly-visa-wrapper .contact-item:hover {
        transform: none !important;
    }

    .gofly-visa-wrapper .contact-icon {
        width: 40px !important;
        height: 40px !important;
        min-width: 40px !important;
        font-size: var(--text-lg) !important;
    }

    .gofly-visa-wrapper .contact-item:hover .contact-icon {
        transform: none !important;
    }

    .gofly-visa-wrapper .trust-badges {
        justify-content: center !important;
        gap: var(--sp-2) !important;
    }

    .gofly-visa-wrapper .trust-badge {
        font-size: 0.75rem !important;
        padding: 0.35rem 0.65rem !important;
    }

    /* --- TOC --- */
    .gofly-visa-wrapper nav.toc {
        padding: var(--sp-5) !important;
        margin: var(--sp-5) 0 !important;
    }

    .gofly-visa-wrapper .toc h2.toc-title {
        font-size: 1.1rem !important;
        margin-bottom: var(--sp-4) !important;
    }

    .gofly-visa-wrapper .toc-list {
        grid-template-columns: 1fr !important;
        gap: 0.25rem !important;
    }

    .gofly-visa-wrapper .toc-list a {
        font-size: 0.95rem !important;
        padding: var(--sp-2) !important;
        min-height: 48px !important;
    }

    .gofly-visa-wrapper .toc-list a:hover {
        padding-left: inherit !important;
    }

    /* --- Quick Answers --- */
    .gofly-visa-wrapper .quick-answers {
        padding: var(--sp-5) !important;
        margin: var(--sp-5) 0 !important;
    }

    .gofly-visa-wrapper .quick-answers::before {
        animation: none !important;
        opacity: 0.18 !important;
    }

    .gofly-visa-wrapper .quick-answers h2.quick-answers-title {
        font-size: 1.1rem !important;
        margin-bottom: var(--sp-4) !important;
    }

    .gofly-visa-wrapper .quick-answers-grid {
        position: relative !important;
        z-index: 1 !important;
    }

    .gofly-visa-wrapper .qa-item {
        grid-template-columns: 1fr !important;
        gap: 0.25rem !important;
        padding: var(--sp-3) 0 !important;
    }

    .gofly-visa-wrapper .qa-item:hover {
        padding-left: inherit !important;
    }

    .gofly-visa-wrapper .qa-label {
        font-size: 0.8rem !important;
        text-transform: uppercase !important;
        letter-spacing: 0.04em !important;
        padding-top: 0 !important;
    }

    .gofly-visa-wrapper .qa-value {
        font-size: 0.95rem !important;
    }

    /* --- Tables --- */
    .gofly-visa-wrapper .table-responsive {
        margin: var(--sp-4) 0 !important;
        border-radius: var(--r-md) !important;
    }

    .gofly-visa-wrapper .visa-table th,
    .gofly-visa-wrapper .table-responsive table th,
    .gofly-visa-wrapper .visa-table td,
    .gofly-visa-wrapper .table-responsive table td {
        padding: var(--sp-3) !important;
        font-size: 0.95rem !important;
    }

    .gofly-visa-wrapper .visa-table,
    .gofly-visa-wrapper .table-responsive table {
        min-width: 400px !important;
        font-size: 0.95rem !important;
    }

    /* --- Info Boxes --- */
    .gofly-visa-wrapper .info-box {
        padding: var(--sp-4) !important;
        margin: var(--sp-4) 0 !important;
    }

    .gofly-visa-wrapper .info-box p,
    .gofly-visa-wrapper .info-box li {
        font-size: 0.95rem !important;
    }

    /* --- Steps --- */
    .gofly-visa-wrapper .steps {
        margin: var(--sp-5) 0 !important;
    }

    .gofly-visa-wrapper .step {
        gap: var(--sp-3) !important;
        padding-bottom: 1.5rem !important;
    }

    .gofly-visa-wrapper .step:hover {
        padding-left: inherit !important;
    }

    .gofly-visa-wrapper .step:hover .step-number {
        transform: none !important;
    }

    .gofly-visa-wrapper .step-number {
        width: 40px !important;
        height: 40px !important;
        min-width: 40px !important;
        font-size: var(--text-lg) !important;
    }

    .gofly-visa-wrapper .step:not(:last-child)::after {
        left: 19px !important;
        top: 48px !important;
    }

    .gofly-visa-wrapper .step h2,
    .gofly-visa-wrapper .step .step-title {
        font-size: 1rem !important;
    }

    .gofly-visa-wrapper .step-description {
        font-size: 0.95rem !important;
    }

    /* --- Checklists --- */
    .gofly-visa-wrapper .checklist li {
        padding: 0.75rem 0 0.75rem 2.25rem !important;
        font-size: 0.95rem !important;
    }

    .gofly-visa-wrapper .checklist li::before {
        width: 1.2rem !important;
        height: 1.2rem !important;
        top: 0.85rem !important;
    }

    .gofly-visa-wrapper .checklist li:hover {
        padding-left: 2.25rem !important;
    }

    /* --- Scenario Cards --- */
    .gofly-visa-wrapper .scenario-cards,
    .gofly-visa-wrapper .scenarios-grid {
        grid-template-columns: 1fr !important;
        gap: var(--sp-3) !important;
        margin: var(--sp-4) 0 !important;
    }

    .gofly-visa-wrapper .scenario-card {
        padding: var(--sp-4) !important;
    }

    .gofly-visa-wrapper .scenario-card:hover {
        transform: none !important;
    }

    .gofly-visa-wrapper .scenario-card h2,
    .gofly-visa-wrapper .scenario-card .scenario-title {
        font-size: 0.98rem !important;
    }

    .gofly-visa-wrapper .scenario-icon {
        width: 36px !important;
        height: 36px !important;
        font-size: 1.25rem !important;
    }

    .gofly-visa-wrapper .scenario-subtitle {
        font-size: 0.8rem !important;
    }

    .gofly-visa-wrapper .scenario-result {
        font-size: 0.85rem !important;
    }

    /* --- FAQ --- */
    .gofly-visa-wrapper .faq-section {
        margin: var(--sp-5) 0 !important;
    }

    .gofly-visa-wrapper .faq-item {
        margin-bottom: var(--sp-2) !important;
    }

    .gofly-visa-wrapper .faq-item:hover {
        transform: none !important;
    }

    .gofly-visa-wrapper .faq-question {
        padding: var(--sp-4) !important;
        font-size: clamp(0.95rem, 3.8vw, 1rem) !important;
        gap: var(--sp-3) !important;
        min-height: 48px !important;
    }

    .gofly-visa-wrapper .faq-question[aria-expanded="true"],
    .gofly-visa-wrapper .faq-question.active {
        background: var(--c-primary-darker) !important;
        color: #fff !important;
    }

    .gofly-visa-wrapper .faq-question::after {
        width: 24px !important;
        height: 24px !important;
        min-width: 24px !important;
        font-size: var(--text-xl) !important;
    }

    .gofly-visa-wrapper .faq-answer {
        padding-left: var(--sp-4) !important;
        padding-right: var(--sp-4) !important;
        will-change: max-height !important;
        transition:
            max-height 0.35s cubic-bezier(0.4, 0, 0.2, 1),
            padding 0.35s cubic-bezier(0.4, 0, 0.2, 1) !important;
    }

    .gofly-visa-wrapper .faq-answer.active,
    .gofly-visa-wrapper .faq-question[aria-expanded="true"] + .faq-answer,
    .gofly-visa-wrapper .faq-answer[aria-hidden="false"] {
        max-height: 5000px !important;
    }

    .gofly-visa-wrapper .faq-answer p {
        font-size: 0.95rem !important;
    }

    /* --- Related Links --- */
    .gofly-visa-wrapper .related-links {
        padding: var(--sp-5) !important;
        margin: var(--sp-5) 0 !important;
    }

    .gofly-visa-wrapper .related-links h2.related-links-title {
        font-size: 1.1rem !important;
        margin-bottom: var(--sp-4) !important;
    }

    .gofly-visa-wrapper .related-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: var(--sp-3) !important;
        margin: var(--sp-4) 0 !important;
    }

    .gofly-visa-wrapper .related-card:hover {
        transform: none !important;
    }

    .gofly-visa-wrapper .related-link {
        padding: 0.75rem var(--sp-3) !important;
        font-size: 0.95rem !important;
        min-height: 48px !important;
    }

    .gofly-visa-wrapper .related-link:hover {
        transform: none !important;
        padding-left: inherit !important;
    }

    .gofly-visa-wrapper .related-link-icon {
        width: 32px !important;
        height: 32px !important;
        font-size: 1.1rem !important;
    }

    /* --- CTA Inline --- */
    .gofly-visa-wrapper .cta-inline {
        flex-direction: column !important;
        text-align: center !important;
        gap: var(--sp-4) !important;
        padding: var(--sp-5) !important;
        margin: var(--sp-5) 0 !important;
    }

    .gofly-visa-wrapper .cta-inline:hover {
        transform: none !important;
    }

    .gofly-visa-wrapper .cta-inline-text {
        min-width: 0 !important;
        width: 100% !important;
    }

    .gofly-visa-wrapper .cta-inline-buttons {
        width: 100% !important;
        justify-content: center !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: var(--sp-3) !important;
    }

    .gofly-visa-wrapper .cta-inline-buttons .btn {
        width: 100% !important;
        max-width: 320px !important;
    }

    /* --- CTA Section --- */
    .gofly-visa-wrapper .cta-section {
        padding: var(--sp-6) var(--sp-5) calc(var(--sp-6) + env(safe-area-inset-bottom)) !important;
        margin: var(--sp-8) 0 !important;
        border-radius: var(--r-xl) !important;
    }

    .gofly-visa-wrapper .cta-section h2 {
        font-size: 1.4rem !important;
        margin-bottom: var(--sp-3) !important;
    }

    .gofly-visa-wrapper .cta-section > p {
        font-size: 1rem !important;
        margin-bottom: var(--sp-4) !important;
    }

    .gofly-visa-wrapper .cta-buttons {
        flex-direction: column !important;
        align-items: center !important;
        gap: var(--sp-3) !important;
    }

    .gofly-visa-wrapper .cta-buttons .btn,
    .gofly-visa-wrapper .cta-buttons .btn-lg {
        width: 100% !important;
        max-width: 320px !important;
        min-width: 0 !important;
    }

    .gofly-visa-wrapper .trust-indicators {
        gap: var(--sp-2) !important;
    }

    .gofly-visa-wrapper .trust-indicators span {
        font-size: 0.8rem !important;
        padding: 0.25rem 0.625rem !important;
    }

    /* --- CTA Box --- */
    .gofly-visa-wrapper .cta-box {
        padding: var(--sp-6) var(--sp-5) calc(var(--sp-6) + env(safe-area-inset-bottom)) !important;
        border-radius: var(--r-xl) !important;
    }

    .gofly-visa-wrapper .cta-box h2 {
        font-size: 1.4rem !important;
        margin-bottom: var(--sp-3) !important;
    }

    .gofly-visa-wrapper .cta-box p {
        font-size: 1rem !important;
        margin-bottom: var(--sp-4) !important;
    }

    .gofly-visa-wrapper .cta-box > div {
        flex-direction: column !important;
        align-items: center !important;
        gap: var(--sp-3) !important;
    }

    .gofly-visa-wrapper .cta-box > div a {
        width: 100% !important;
        max-width: 320px !important;
        min-height: 48px !important;
        padding: var(--sp-3) var(--sp-4) !important;
    }

    .gofly-visa-wrapper .cta-box > div a:hover {
        transform: none !important;
    }

    .gofly-visa-wrapper .cta-box > p:last-of-type {
        font-size: 0.95rem !important;
    }

    .gofly-visa-wrapper .cta-box > p:last-of-type a {
        font-size: 0.8rem !important;
        padding: 0.35rem 0.75rem !important;
    }

    /* --- BD Approval --- */
    .gofly-visa-wrapper .bd-approval-context {
        padding: var(--sp-4) !important;
        margin: var(--sp-4) 0 !important;
    }

    .gofly-visa-wrapper .bd-approval-context p:first-child {
        font-size: 1rem !important;
    }

    .gofly-visa-wrapper .bd-approval-context p:nth-child(2) {
        font-size: 0.95rem !important;
    }

    /* --- Tour Crosslink --- */
    .gofly-visa-wrapper .tour-crosslink {
        padding: var(--sp-5) !important;
        margin: var(--sp-4) 0 !important;
    }

    .gofly-visa-wrapper .tour-crosslink p:first-child {
        font-size: 1.1rem !important;
    }

    .gofly-visa-wrapper .tour-crosslink p:nth-child(2) {
        font-size: 0.95rem !important;
    }

    .gofly-visa-wrapper .tour-crosslink a {
        width: 100% !important;
        justify-content: center !important;
        padding: var(--sp-3) var(--sp-4) !important;
        min-height: 48px !important;
    }

    .gofly-visa-wrapper .tour-crosslink a:hover {
        transform: none !important;
    }

    /* --- Disclaimer --- */
    .gofly-visa-wrapper .disclaimer {
        padding: var(--sp-5) !important;
        margin: var(--sp-5) 0 !important;
    }

    .gofly-visa-wrapper .disclaimer p {
        font-size: 0.95rem !important;
    }

    /* --- Buttons --- */
    .gofly-visa-wrapper .btn {
        padding: var(--sp-3) var(--sp-6) !important;
        font-size: clamp(0.95rem, 3.8vw, 1rem) !important;
        min-height: 48px !important;
    }

    .gofly-visa-wrapper .btn-lg {
        padding: var(--sp-4) var(--sp-6) !important;
        font-size: clamp(0.95rem, 3.8vw, 1rem) !important;
        min-width: 0 !important;
    }

    .gofly-visa-wrapper .btn:hover,
    .gofly-visa-wrapper .btn-primary:hover,
    .gofly-visa-wrapper .btn-whatsapp:hover,
    .gofly-visa-wrapper .btn-secondary:hover {
        transform: none !important;
    }

    /* --- Back To Top --- */
    .gofly-visa-wrapper #back-to-top {
        bottom: calc(70px + env(safe-area-inset-bottom)) !important;
        right: 16px !important;
        width: 44px !important;
        height: 44px !important;
        font-size: var(--text-xl) !important;
    }
}

/* ============================================
   RESPONSIVE — 640px
============================================ */
@media (max-width: 640px) {

    .gofly-visa-wrapper .cta-box {
        padding: var(--sp-6) var(--sp-4) calc(var(--sp-6) + env(safe-area-inset-bottom)) !important;
    }

    .gofly-visa-wrapper .trust-indicators {
        flex-direction: column !important;
        align-items: center !important;
    }

    .gofly-visa-wrapper .flight-card {
        padding: var(--sp-4) !important;
    }

    .gofly-visa-wrapper .flight-card > p:first-child {
        font-size: var(--text-base) !important;
    }

    .gofly-visa-wrapper .flight-card table tr {
        display: block !important;
        border-bottom: 1px dashed rgb(6 78 59 / 0.15) !important;
        padding-bottom: var(--sp-2) !important;
        margin-bottom: var(--sp-1) !important;
    }

    .gofly-visa-wrapper .flight-card table td {
        display: block !important;
        padding: var(--sp-1) 0 !important;
        border-bottom: none !important;
        width: 100% !important;
    }

    .gofly-visa-wrapper .flight-card table td:first-child {
        font-size: 0.8rem !important;
        font-weight: 700 !important;
        color: var(--c-text-muted) !important;
        text-transform: uppercase !important;
        letter-spacing: 0.04em !important;
        padding-top: var(--sp-3) !important;
    }

    .gofly-visa-wrapper .flight-card table tr:last-child {
        border-bottom: none !important;
    }
}

/* ============================================
   RESPONSIVE — 540px  ★ MOBILE TABLE CARD LAYOUT ★
============================================ */
@media (max-width: 540px) {

    .gofly-visa-wrapper .table-responsive {
        border: none !important;
        box-shadow: none !important;
        background: transparent !important;
        overflow-x: visible !important;
    }

    .gofly-visa-wrapper .table-responsive::before {
        display: none !important;
    }

    .gofly-visa-wrapper .table-responsive table,
    .gofly-visa-wrapper .table-responsive table tbody,
    .gofly-visa-wrapper .table-responsive table tr {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
    }

    .gofly-visa-wrapper .table-responsive table thead {
        display: none !important;
    }

    .gofly-visa-wrapper .table-responsive table tr {
        border: 1px solid var(--c-border) !important;
        border-left: 4px solid var(--c-primary) !important;
        border-radius: var(--r-md) !important;
        margin-bottom: var(--sp-3) !important;
        padding: 1rem !important;
        background: var(--c-bg-white) !important;
        box-shadow: 0 3px 8px rgb(0 0 0 / 0.05) !important;
    }

    .gofly-visa-wrapper .table-responsive table tr:last-child {
        margin-bottom: 0 !important;
    }

    .gofly-visa-wrapper .table-responsive table td {
        display: flex !important;
        flex-direction: column !important;
        border: none !important;
        border-bottom: 1px dashed var(--c-border) !important;
        padding: 0.5rem 0 !important;
        font-size: 0.95rem !important;
        line-height: 1.6 !important;
        min-width: 0 !important;
        word-break: break-word !important;
    }

    .gofly-visa-wrapper .table-responsive table td:last-child {
        border-bottom: none !important;
        padding-bottom: 0 !important;
    }

    .gofly-visa-wrapper .table-responsive table td::before {
        content: attr(data-label) !important;
        display: block !important;
        font-size: 0.75rem !important;
        font-weight: 700 !important;
        text-transform: uppercase !important;
        color: var(--c-primary-dark) !important;
        margin-bottom: 0.25rem !important;
        letter-spacing: 0.04em !important;
        font-family: var(--font-body) !important;
    }

    .gofly-visa-wrapper .visa-table,
    .gofly-visa-wrapper .table-responsive table {
        min-width: 0 !important;
        font-size: 0.95rem !important;
    }
}

/* ============================================
   RESPONSIVE — 480px
============================================ */
@media (max-width: 480px) {

    .gofly-visa-wrapper .author-block {
        padding: var(--sp-4) !important;
    }

    .gofly-visa-wrapper .author-avatar {
        width: 56px !important;
        height: 56px !important;
        min-width: 56px !important;
        max-width: 56px !important;
    }

    .gofly-visa-wrapper .author-name {
        font-size: 1rem !important;
    }

    .gofly-visa-wrapper .credential-badge {
        font-size: 0.75rem !important;
        padding: 0.25rem 0.55rem !important;
    }

    .gofly-visa-wrapper .step {
        gap: var(--sp-3) !important;
    }

    .gofly-visa-wrapper .step-number {
        width: 36px !important;
        height: 36px !important;
        min-width: 36px !important;
        font-size: var(--text-base) !important;
    }

    .gofly-visa-wrapper .step:not(:last-child)::after {
        left: 17px !important;
        top: 44px !important;
    }

    .gofly-visa-wrapper .related-grid {
        grid-template-columns: 1fr !important;
    }

    .gofly-visa-wrapper .faq-question {
        padding: var(--sp-3) !important;
        font-size: clamp(0.95rem, 4vw, 1rem) !important;
    }

    .gofly-visa-wrapper .cta-box {
        padding: var(--sp-5) var(--sp-4) calc(var(--sp-5) + env(safe-area-inset-bottom)) !important;
    }

    .gofly-visa-wrapper .cta-box h2 {
        font-size: 1.25rem !important;
    }

    .gofly-visa-wrapper .cta-box > p:last-of-type {
        display: flex !important;
        flex-wrap: wrap !important;
        justify-content: center !important;
        gap: var(--sp-2) !important;
    }

    .gofly-visa-wrapper #back-to-top {
        bottom: calc(65px + env(safe-area-inset-bottom)) !important;
        right: 12px !important;
        width: 42px !important;
        height: 42px !important;
    }
}

/* ============================================
   RESPONSIVE — 360px  ★ EXTREME SMALL ★
============================================ */
@media (max-width: 360px) {

    .gofly-visa-wrapper .author-block {
        padding: var(--sp-4) var(--sp-3) !important;
    }

    .gofly-visa-wrapper .quick-contact {
        padding: var(--sp-4) var(--sp-3) !important;
    }

    .gofly-visa-wrapper .cta-box {
        padding: var(--sp-4) var(--sp-3) calc(var(--sp-4) + env(safe-area-inset-bottom)) !important;
    }

    .gofly-visa-wrapper .cta-section {
        padding: var(--sp-5) var(--sp-3) calc(var(--sp-5) + env(safe-area-inset-bottom)) !important;
    }

    .gofly-visa-wrapper .faq-question {
        padding: var(--sp-3) !important;
        font-size: 0.92rem !important;
    }

    .gofly-visa-wrapper .related-link {
        font-size: 0.9rem !important;
        padding: 0.65rem var(--sp-3) !important;
    }

    .gofly-visa-wrapper .btn {
        font-size: 0.95rem !important;
        padding: var(--sp-3) var(--sp-4) !important;
    }

    .gofly-visa-wrapper .contact-item-content a {
        font-size: 0.95rem !important;
    }

    .gofly-visa-wrapper section h2 {
        font-size: 1.22rem !important;
    }

    .gofly-visa-wrapper section h3 {
        font-size: 1.05rem !important;
    }

    .gofly-visa-wrapper #back-to-top {
        bottom: calc(60px + env(safe-area-inset-bottom)) !important;
        right: 10px !important;
        width: 40px !important;
        height: 40px !important;
    }
}

/* ============================================
   TOUCH DEVICES ONLY — prevent hover jump
============================================ */
@media (hover: none) and (pointer: coarse) {
    .gofly-visa-wrapper *:hover {
        transform: none !important;
    }

    .gofly-visa-wrapper .author-block:hover,
    .gofly-visa-wrapper .quick-contact:hover,
    .gofly-visa-wrapper .contact-item:hover,
    .gofly-visa-wrapper .scenario-card:hover,
    .gofly-visa-wrapper .faq-item:hover,
    .gofly-visa-wrapper .related-card:hover,
    .gofly-visa-wrapper .related-link:hover,
    .gofly-visa-wrapper .tour-crosslink a:hover,
    .gofly-visa-wrapper .cta-inline:hover,
    .gofly-visa-wrapper .btn:hover,
    .gofly-visa-wrapper .btn-primary:hover,
    .gofly-visa-wrapper .btn-whatsapp:hover,
    .gofly-visa-wrapper .btn-secondary:hover,
    .gofly-visa-wrapper #back-to-top:hover {
        transform: none !important;
    }

    .gofly-visa-wrapper .contact-item:hover .contact-icon,
    .gofly-visa-wrapper .step:hover .step-number,
    .gofly-visa-wrapper .author-block:hover .author-avatar {
        transform: none !important;
    }
}

/* ============================================
   PRINT
============================================ */
@media print {
    .gofly-visa-wrapper .cta-box,
    .gofly-visa-wrapper .cta-section,
    .gofly-visa-wrapper .cta-inline,
    .gofly-visa-wrapper .quick-contact,
    .gofly-visa-wrapper .related-links,
    .gofly-visa-wrapper .related-grid,
    .gofly-visa-wrapper .tour-crosslink,
    .gofly-visa-wrapper .faq-section,
    .gofly-visa-wrapper #back-to-top,
    .gofly-visa-wrapper .trust-badges,
    .gofly-visa-wrapper .trust-indicators {
        display: none !important;
    }

    .gofly-visa-wrapper .table-responsive {
        overflow: visible !important;
        box-shadow: none !important;
        border: 1px solid #000 !important;
    }

    .gofly-visa-wrapper .visa-table,
    .gofly-visa-wrapper .table-responsive table {
        min-width: auto !important;
        display: table !important;
    }

    .gofly-visa-wrapper .table-responsive table thead {
        display: table-header-group !important;
    }

    .gofly-visa-wrapper .table-responsive table tr {
        display: table-row !important;
        border: none !important;
        box-shadow: none !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .gofly-visa-wrapper .table-responsive table td {
        display: table-cell !important;
        border-bottom: 1px solid #ccc !important;
        padding: 0.5rem !important;
    }

    .gofly-visa-wrapper .table-responsive table td::before {
        display: none !important;
    }

    .gofly-visa-wrapper section h2 {
        border-bottom: 2px solid #000 !important;
        color: #000 !important;
    }

    .gofly-visa-wrapper section h2::after {
        display: none !important;
    }

    .gofly-visa-wrapper .info-box {
        border: 1px solid #ccc !important;
        background: none !important;
        box-shadow: none !important;
    }
}

/* ============================================
   REDUCED MOTION
============================================ */
@media (prefers-reduced-motion: reduce) {
    .gofly-visa-wrapper *,
    .gofly-visa-wrapper *::before,
    .gofly-visa-wrapper *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }
}

/* ============================================
   HIGH CONTRAST
============================================ */
@media (forced-colors: active) {
    .gofly-visa-wrapper .btn {
        border: 2px solid ButtonText !important;
    }

    .gofly-visa-wrapper .faq-question {
        border: 1px solid ButtonText !important;
    }

    .gofly-visa-wrapper .info-box {
        border: 2px solid CanvasText !important;
    }
}