/* Shared mobile / tablet fixes for Figma-themed pages */

body.pyn-figma-home,
body.pyn-figma-travelassist,
body.pyn-figma-products,
body.pyn-figma-compliance,
body.pyn-figma-contact,
body.pyn-figma-legal,
body.pyn-figma-platform,
body.pyn-figma-about,
body.pyn-figma-developer,
body.pyn-page-use-cases {
    overflow-x: hidden;
    overflow-x: clip;
}

/* Temporarily hidden — keep markup for future use */
body.pyn-figma-home .pyn-footer-regulatory,
body.pyn-figma-travelassist .pyn-footer-regulatory,
body.pyn-figma-products .pyn-footer-regulatory,
body.pyn-figma-compliance .pyn-footer-regulatory,
body.pyn-figma-contact .pyn-footer-regulatory {
    display: none !important;
}

/* ── Mobile nav (align with style.css 1200px hamburger) ── */
@media (max-width: 1200px) {
    body.pyn-figma-home .mil-top-panel,
    body.pyn-figma-home .mil-top-panel.mil-active,
    body.pyn-figma-travelassist .mil-top-panel,
    body.pyn-figma-travelassist .mil-top-panel.mil-active {
        height: auto !important;
        min-height: 77px !important;
        max-height: none !important;
        overflow: visible !important;
    }

    body.pyn-figma-home .mil-top-panel .container,
    body.pyn-figma-travelassist .mil-top-panel .container {
        height: auto !important;
        min-height: 77px;
        position: relative;
    }

    body.pyn-figma-home .mil-top-menu,
    body.pyn-figma-travelassist .mil-top-menu {
        display: block !important;
        top: 77px !important;
        z-index: 999;
        border-bottom: 1px solid #E5EAE8;
        box-shadow: 0 8px 24px rgba(11, 21, 18, 0.08);
    }

    body.pyn-figma-home .mil-top-menu.mil-active,
    body.pyn-figma-travelassist .mil-top-menu.mil-active {
        pointer-events: all !important;
        opacity: 1 !important;
        transform: translateY(0) !important;
    }

    body.pyn-figma-home .mil-top-menu ul,
    body.pyn-figma-travelassist .mil-top-menu ul {
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        align-items: stretch !important;
        gap: 0 !important;
        width: 100%;
        padding: 8px 12px 12px !important;
    }

    body.pyn-figma-home .mil-top-menu ul li,
    body.pyn-figma-travelassist .mil-top-menu ul li {
        width: 100% !important;
        margin-right: 0 !important;
    }

    body.pyn-figma-home .mil-top-menu ul li a,
    body.pyn-figma-travelassist .mil-top-menu ul li a {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        white-space: normal !important;
        width: 100%;
        min-height: 44px;
        padding: 10px 14px !important;
        border-radius: 12px !important;
    }

    body.pyn-figma-home .mil-menu-btn,
    body.pyn-figma-travelassist .mil-menu-btn {
        display: flex !important;
        flex-shrink: 0;
        background: #F5F8F7 !important;
        border: 1px solid #E5EAE8;
        padding: 18px 14px !important;
        border-radius: 12px !important;
    }

    body.pyn-figma-home .mil-menu-btn span,
    body.pyn-figma-home .mil-menu-btn span:before,
    body.pyn-figma-home .mil-menu-btn span:after,
    body.pyn-figma-travelassist .mil-menu-btn span,
    body.pyn-figma-travelassist .mil-menu-btn span:before,
    body.pyn-figma-travelassist .mil-menu-btn span:after {
        background: #0B1512 !important;
    }

    body.pyn-figma-home .mil-top-panel .mil-btn.pyn-btn-accent,
    body.pyn-figma-travelassist .mil-top-panel .mil-btn.pyn-btn-accent {
        padding: 8px 14px !important;
        font-size: 13px !important;
        line-height: 1.2 !important;
        white-space: nowrap;
    }

    body.pyn-figma-home .mil-menu-buttons,
    body.pyn-figma-travelassist .mil-menu-buttons {
        gap: 8px;
        flex-shrink: 0;
    }
}

@media (max-width: 1100px) {
    body.pyn-figma-home .container,
    body.pyn-figma-travelassist .container,
    body.pyn-figma-products .container,
    body.pyn-figma-compliance .container,
    body.pyn-figma-contact .container {
        padding-left: 32px !important;
        padding-right: 32px !important;
    }

    body.pyn-figma-home .pyn-figma-cta h2,
    body.pyn-figma-home .pyn-figma-cta-body > p {
        white-space: normal !important;
    }

    body.pyn-figma-home .pyn-figma-cta h2 {
        font-size: 36px !important;
        line-height: 44px !important;
    }

    body.pyn-figma-home .pyn-figma-cta-body {
        padding: 48px 32px !important;
    }

    body.pyn-figma-home .pyn-consumer-steps-wrap {
        width: 100% !important;
        height: auto !important;
        padding-top: 0 !important;
        margin-top: 32px !important;
    }

    body.pyn-figma-home .pyn-consumer-wave {
        display: none !important;
    }

    body.pyn-figma-home .pyn-consumer-steps {
        flex-wrap: wrap !important;
        height: auto !important;
    }

    body.pyn-figma-home .pyn-consumer-step {
        flex: 1 1 calc(50% - 8px) !important;
        width: auto !important;
        height: auto !important;
        min-height: 112px !important;
    }

    body.pyn-figma-home .pyn-figma-partners-title {
        white-space: normal !important;
    }

    /* ── Footer: tablet ── */
    body.pyn-figma-home .pyn-footer-grid,
    body.pyn-figma-travelassist .pyn-footer-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 32px 24px !important;
        justify-content: stretch !important;
    }

    body.pyn-figma-home .pyn-footer-brand,
    body.pyn-figma-home .pyn-footer-contact-card,
    body.pyn-figma-travelassist .pyn-footer-brand,
    body.pyn-figma-travelassist .pyn-footer-contact-card {
        grid-column: 1 / -1;
        max-width: none !important;
    }

    body.pyn-figma-home .pyn-footer-brand-tagline,
    body.pyn-figma-travelassist .pyn-footer-brand-tagline {
        max-width: none !important;
    }

    body.pyn-figma-home .pyn-footer-newsletter,
    body.pyn-figma-travelassist .pyn-footer-newsletter {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    body.pyn-figma-home .pyn-footer-newsletter .mil-input,
    body.pyn-figma-travelassist .pyn-footer-newsletter .mil-input {
        width: 100% !important;
        flex: 1 1 auto !important;
    }

    body.pyn-figma-home .pyn-site-footer .pyn-footer-newsletter .pyn-btn-newsletter,
    body.pyn-figma-home .pyn-site-footer .pyn-footer-newsletter a.pyn-btn-newsletter,
    body.pyn-figma-travelassist .pyn-site-footer .pyn-footer-newsletter .pyn-btn-newsletter,
    body.pyn-figma-travelassist .pyn-site-footer .pyn-footer-newsletter a.pyn-btn-newsletter {
        width: 100% !important;
        justify-content: center !important;
        white-space: normal !important;
    }

    body.pyn-figma-home .pyn-figma-footer-inner,
    body.pyn-figma-travelassist .pyn-figma-footer-inner.container {
        padding-left: 32px !important;
        padding-right: 32px !important;
        min-height: 0 !important;
    }

    body.pyn-figma-travelassist .pyn-figma-footer-inner.container {
        height: auto !important;
    }

    /* ── Headings: tablet scale + wrap ── */
    body.pyn-figma-home .pyn-hero-headline,
    body.pyn-figma-home .pyn-figma-h2,
    body.pyn-figma-home .pyn-consumer-title,
    body.pyn-figma-home .pyn-figma-products-head .pyn-figma-h2,
    body.pyn-figma-home .pyn-figma-partners-title,
    body.pyn-figma-home .pyn-figma-why-h2,
    body.pyn-figma-home .pyn-figma-split-left .pyn-figma-h2,
    body.pyn-figma-home .pyn-figma-hiw .pyn-figma-h2,
    body.pyn-figma-travelassist .pyn-ta-hero-title,
    body.pyn-figma-travelassist .pyn-ta-h2,
    body.pyn-figma-travelassist .pyn-figma-cta h2,
    body.pyn-figma-products .pyn-solutions-hero h1,
    body.pyn-figma-compliance .pyn-compliance-hero h1,
    body.pyn-figma-compliance .pyn-compliance-section-h2,
    body.pyn-figma-compliance .pyn-compliance-cta h2,
    body.pyn-figma-contact .pyn-contact-hero-copy h1,
    body.pyn-figma-contact .pyn-contact-form-section h2,
    body.pyn-figma-contact .pyn-faq-title {
        font-size: 36px !important;
        line-height: 44px !important;
        letter-spacing: -1px !important;
        white-space: normal !important;
        word-break: break-word;
        overflow-wrap: anywhere;
        max-width: 100% !important;
    }

    body.pyn-figma-home .pyn-hero-lead,
    body.pyn-figma-home .pyn-consumer-sub,
    body.pyn-figma-home .pyn-figma-partners-sub,
    body.pyn-figma-home .pyn-figma-why-lead,
    body.pyn-figma-home .pyn-figma-split-left p:not(.pyn-figma-eyebrow),
    body.pyn-figma-home .pyn-figma-compliance-lead,
    body.pyn-figma-home .pyn-figma-cta-body > p,
    body.pyn-figma-travelassist .pyn-ta-hero-lead,
    body.pyn-figma-travelassist .pyn-figma-cta-body > p,
    body.pyn-figma-compliance .pyn-compliance-cta-body > p,
    body.pyn-figma-compliance .pyn-compliance-hero-lead,
    body.pyn-figma-contact .pyn-contact-hero-lead {
        white-space: normal !important;
        max-width: 100% !important;
        font-size: 16px !important;
        line-height: 26px !important;
    }

    body.pyn-figma-home .pyn-multichannel-pills {
        flex-wrap: wrap !important;
        gap: 8px !important;
    }

    body.pyn-figma-home .pyn-channel-pill {
        white-space: normal !important;
    }

    body.pyn-figma-home .pyn-hero-headline,
    body.pyn-figma-home .pyn-figma-h2 {
        word-break: break-word;
    }

    body.pyn-figma-travelassist .pyn-ta-hero-title,
    body.pyn-figma-travelassist .pyn-ta-h2 {
        word-break: break-word;
    }

    body.pyn-figma-compliance .pyn-compliance-cta-body {
        padding: 48px 32px !important;
    }

    /* Products page — card stack at tablet */
    body.pyn-figma-products .pyn-solutions-card-frame,
    body.pyn-figma-products .pyn-solution-card-row {
        flex-direction: column !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        gap: 16px !important;
    }

    body.pyn-figma-products .pyn-solution-card-row .pyn-solution-card,
    body.pyn-figma-products .pyn-solution-card-featured {
        flex: none !important;
        width: 100% !important;
        height: auto !important;
        min-height: auto !important;
        max-height: none !important;
    }

    body.pyn-figma-products .pyn-solutions-cta-section .pyn-figma-cta {
        height: auto !important;
        min-height: 0 !important;
        overflow: visible !important;
    }
}

@media (max-width: 640px) {
    body.pyn-figma-home .container,
    body.pyn-figma-travelassist .container,
    body.pyn-figma-products .container,
    body.pyn-figma-compliance .container,
    body.pyn-figma-contact .container {
        padding-left: 24px !important;
        padding-right: 24px !important;
    }

    body.pyn-figma-home .pyn-figma-cta h2 {
        font-size: clamp(28px, 8vw, 36px) !important;
        line-height: 1.2 !important;
        white-space: normal !important;
    }

    body.pyn-figma-home .pyn-figma-cta-body {
        padding: 40px 24px !important;
    }

    body.pyn-figma-home .pyn-figma-cta-actions {
        flex-direction: column;
        align-items: stretch;
    }

    body.pyn-figma-home .pyn-figma-cta-actions .pyn-btn-primary,
    body.pyn-figma-home .pyn-figma-cta-actions .pyn-btn-outline {
        width: 100%;
        justify-content: center;
    }

    body.pyn-figma-home .pyn-consumer-step,
    body.pyn-figma-home .pyn-figma-hiw-card {
        flex: 1 1 100% !important;
        min-width: 0 !important;
    }

    body.pyn-figma-home .pyn-hero-headline {
        font-size: 32px !important;
        line-height: 40px !important;
    }

    body.pyn-figma-home .pyn-figma-partners-head .pyn-figma-h2,
    body.pyn-figma-home .pyn-figma-partners-title {
        font-size: 28px !important;
        line-height: 34px !important;
    }

    /* ── Footer: mobile ── */
    body.pyn-figma-home .pyn-footer-grid,
    body.pyn-figma-travelassist .pyn-footer-grid {
        grid-template-columns: 1fr !important;
        gap: 28px !important;
    }

    body.pyn-figma-home .pyn-footer-brand,
    body.pyn-figma-home .pyn-footer-contact-card,
    body.pyn-figma-travelassist .pyn-footer-brand,
    body.pyn-figma-travelassist .pyn-footer-contact-card {
        grid-column: auto;
    }

    body.pyn-figma-home .pyn-site-footer,
    body.pyn-figma-travelassist .pyn-site-footer {
        padding: 48px 0 32px !important;
    }

    body.pyn-figma-home .pyn-figma-footer-inner,
    body.pyn-figma-travelassist .pyn-figma-footer-inner.container {
        padding-left: 24px !important;
        padding-right: 24px !important;
    }

    body.pyn-figma-home .pyn-footer-bottom-row,
    body.pyn-figma-travelassist .pyn-footer-bottom-row {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 24px !important;
        margin-top: 24px !important;
    }

    body.pyn-figma-home .pyn-footer-regulatory,
    body.pyn-figma-travelassist .pyn-footer-regulatory {
        flex: 1 1 auto !important;
        max-width: none !important;
        width: 100% !important;
    }

    body.pyn-figma-home .pyn-footer-certified,
    body.pyn-figma-travelassist .pyn-footer-certified {
        flex-direction: column !important;
        align-items: flex-start !important;
        width: 100% !important;
        gap: 10px !important;
    }

    body.pyn-figma-home .pyn-footer-certified-label,
    body.pyn-figma-travelassist .pyn-footer-certified-label {
        white-space: normal !important;
    }

    body.pyn-figma-home .pyn-footer-cert-logos,
    body.pyn-figma-travelassist .pyn-footer-cert-logos {
        flex-wrap: wrap !important;
        gap: 12px !important;
    }

    body.pyn-figma-home .pyn-figma-footer-glow,
    body.pyn-figma-travelassist .pyn-figma-footer-glow {
        right: -160px;
        opacity: 0.35;
    }

    /* ── Headings: mobile scale ── */
    body.pyn-figma-home .pyn-hero-headline,
    body.pyn-figma-home .pyn-figma-h2,
    body.pyn-figma-home .pyn-consumer-title,
    body.pyn-figma-home .pyn-figma-products-head .pyn-figma-h2,
    body.pyn-figma-home .pyn-figma-partners-title,
    body.pyn-figma-home .pyn-figma-why-h2,
    body.pyn-figma-home .pyn-figma-split-left .pyn-figma-h2,
    body.pyn-figma-home .pyn-figma-hiw .pyn-figma-h2,
    body.pyn-figma-travelassist .pyn-ta-hero-title,
    body.pyn-figma-travelassist .pyn-ta-h2,
    body.pyn-figma-travelassist .pyn-figma-cta h2,
    body.pyn-figma-products .pyn-solutions-hero h1,
    body.pyn-figma-compliance .pyn-compliance-hero h1,
    body.pyn-figma-compliance .pyn-compliance-section-h2,
    body.pyn-figma-compliance .pyn-compliance-cta h2,
    body.pyn-figma-contact .pyn-contact-hero-copy h1,
    body.pyn-figma-contact .pyn-contact-form-section h2,
    body.pyn-figma-contact .pyn-faq-title {
        font-size: 32px !important;
        line-height: 40px !important;
        letter-spacing: -0.75px !important;
    }

    body.pyn-figma-home .pyn-figma-partners-head .pyn-figma-h2,
    body.pyn-figma-home .pyn-figma-partners-title {
        font-size: 28px !important;
        line-height: 34px !important;
    }

    body.pyn-figma-home h1 br,
    body.pyn-figma-home h2 br,
    body.pyn-figma-travelassist h1 br,
    body.pyn-figma-travelassist h2 br,
    body.pyn-figma-compliance h1 br,
    body.pyn-figma-compliance h2 br,
    body.pyn-figma-contact h1 br,
    body.pyn-figma-contact h2 br {
        display: none;
    }

    body.pyn-figma-home .pyn-hero-lead,
    body.pyn-figma-home .pyn-consumer-sub,
    body.pyn-figma-home .pyn-figma-partners-sub {
        font-size: 15px !important;
        line-height: 24px !important;
    }

    body.pyn-figma-home .pyn-hero-actions {
        flex-direction: column;
        align-items: stretch;
        width: 100%;
    }

    body.pyn-figma-home .pyn-hero-actions .pyn-btn-primary,
    body.pyn-figma-home .pyn-hero-actions .pyn-btn-outline {
        width: 100%;
        justify-content: center;
    }

    body.pyn-figma-home .pyn-hero-stat {
        flex: 1 1 100%;
        min-width: 0;
    }

    body.pyn-figma-home .pyn-figma-hiw,
    body.pyn-figma-home .pyn-consumer-section,
    body.pyn-figma-home .pyn-figma-partners-inner {
        padding-top: 64px !important;
        padding-bottom: 64px !important;
    }

    body.pyn-figma-compliance .pyn-compliance-cta-body {
        padding: 40px 24px !important;
    }

    body.pyn-figma-travelassist .pyn-figma-cta-body {
        padding: 40px 24px !important;
    }

    body.pyn-figma-travelassist .pyn-figma-cta h2 {
        font-size: clamp(28px, 8vw, 32px) !important;
        line-height: 1.2 !important;
        white-space: normal !important;
    }

    body.pyn-figma-travelassist .pyn-figma-cta-body > p {
        white-space: normal !important;
    }
    body.pyn-figma-travelassist .pyn-ta-steps-row-four .pyn-ta-step-card,
    body.pyn-figma-travelassist .pyn-ta-step-card-wide {
        flex: 1 1 100% !important;
    }

    body.pyn-figma-travelassist .pyn-figma-cta-actions {
        flex-direction: column;
        align-items: stretch;
    }

    body.pyn-figma-travelassist .pyn-figma-cta-actions a {
        width: 100%;
        justify-content: center;
    }

    body.pyn-figma-products .pyn-solution-card-featured .pyn-solution-traveller-text {
        white-space: normal !important;
    }

    body.pyn-figma-products .pyn-solution-tags {
        flex-wrap: wrap !important;
    }

    /* Products page — prevent card collapse / overlap on mobile */
    body.pyn-figma-products .pyn-solutions-cards-inner.container {
        min-height: 0 !important;
        gap: 16px !important;
    }

    body.pyn-figma-products .pyn-solutions-card-frame,
    body.pyn-figma-products .pyn-solution-card-row {
        flex-direction: column !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        gap: 12px !important;
    }

    body.pyn-figma-products .pyn-solution-card-row .pyn-solution-card,
    body.pyn-figma-products .pyn-solution-card-featured {
        flex: none !important;
        width: 100% !important;
        height: auto !important;
        min-height: auto !important;
        max-height: none !important;
        overflow: visible !important;
    }

    body.pyn-figma-products .pyn-solution-card-row .pyn-solution-desc {
        min-height: 0 !important;
    }

    body.pyn-figma-products .pyn-solutions-cta-section .pyn-figma-cta {
        height: auto !important;
        min-height: 0 !important;
        overflow: visible !important;
    }

    body.pyn-figma-products .pyn-solutions-cta-section .pyn-figma-cta h2,
    body.pyn-figma-products .pyn-solutions-cta-section .pyn-figma-cta-body > p {
        white-space: normal !important;
        max-width: 100% !important;
    }

    body.pyn-figma-products .pyn-solutions-cta-section .pyn-figma-cta-actions {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    body.pyn-figma-products .pyn-solutions-cta-section .pyn-figma-cta-actions a {
        width: 100% !important;
        justify-content: center !important;
    }

    body.pyn-figma-home #smooth-content,
    body.pyn-figma-travelassist #smooth-content,
    body.pyn-figma-products #smooth-content,
    body.pyn-figma-compliance #smooth-content,
    body.pyn-figma-contact #smooth-content,
    body.pyn-figma-legal #smooth-content,
    body.pyn-figma-platform #smooth-content,
    body.pyn-figma-about #smooth-content,
    body.pyn-figma-developer #smooth-content,
    body.pyn-page-use-cases #smooth-content,
    body.pyn-figma-career #smooth-content,
body.pyn-career-doc #smooth-content {
        padding-bottom: 88px;
    }

    body.pyn-figma-contact .pyn-contact-form-section .row > [class*="col-"] {
        flex: 0 0 100%;
        max-width: 100%;
    }
}

@media (max-width: 480px) {
    .mil-top-panel .mil-btn.pyn-btn-accent {
        padding: 8px 10px !important;
        font-size: 12px !important;
    }

    .pyn-brand-logo-img {
        max-width: 96px;
        height: auto;
    }

    body.pyn-figma-home .mil-top-panel .mil-btn.pyn-btn-accent,
    body.pyn-figma-travelassist .mil-top-panel .mil-btn.pyn-btn-accent {
        padding: 8px 10px !important;
        font-size: 12px !important;
    }

    body.pyn-figma-home .pyn-brand-logo-img,
    body.pyn-figma-travelassist .pyn-brand-logo-img {
        max-width: 96px;
        height: auto;
    }
}

/* ── Site-wide mobile: nav, layout, CTAs, overflow ── */
@media (max-width: 1200px) {
    body.pyn-figma-contact .mil-top-panel,
    body.pyn-figma-products .mil-top-panel,
    body.pyn-figma-compliance .mil-top-panel,
    body.pyn-figma-legal .mil-top-panel,
    body.pyn-figma-platform .mil-top-panel,
    body.pyn-figma-about .mil-top-panel,
    body.pyn-figma-developer .mil-top-panel,
    body.pyn-page-use-cases .mil-top-panel,
    body.pyn-figma-contact .mil-top-panel.mil-active,
    body.pyn-figma-products .mil-top-panel.mil-active,
    body.pyn-figma-compliance .mil-top-panel.mil-active,
    body.pyn-figma-legal .mil-top-panel.mil-active,
    body.pyn-figma-platform .mil-top-panel.mil-active,
    body.pyn-figma-about .mil-top-panel.mil-active,
    body.pyn-figma-developer .mil-top-panel.mil-active,
    body.pyn-page-use-cases .mil-top-panel.mil-active {
        height: auto !important;
        min-height: 77px !important;
        max-height: none !important;
        overflow: visible !important;
    }

    body.pyn-figma-contact .mil-top-panel .container,
    body.pyn-figma-products .mil-top-panel .container,
    body.pyn-figma-compliance .mil-top-panel .container,
    body.pyn-figma-legal .mil-top-panel .container,
    body.pyn-figma-platform .mil-top-panel .container,
    body.pyn-figma-about .mil-top-panel .container,
    body.pyn-figma-developer .mil-top-panel .container,
    body.pyn-page-use-cases .mil-top-panel .container {
        height: auto !important;
        min-height: 77px;
        position: relative;
    }

    body.pyn-figma-contact .mil-top-menu,
    body.pyn-figma-products .mil-top-menu,
    body.pyn-figma-compliance .mil-top-menu,
    body.pyn-figma-legal .mil-top-menu,
    body.pyn-figma-platform .mil-top-menu,
    body.pyn-figma-about .mil-top-menu,
    body.pyn-figma-developer .mil-top-menu,
    body.pyn-page-use-cases .mil-top-menu {
        display: block !important;
        top: 77px !important;
        z-index: 999;
        border-bottom: 1px solid #E5EAE8;
        box-shadow: 0 8px 24px rgba(11, 21, 18, 0.08);
    }

    body.pyn-figma-contact .mil-top-menu.mil-active,
    body.pyn-figma-products .mil-top-menu.mil-active,
    body.pyn-figma-compliance .mil-top-menu.mil-active,
    body.pyn-figma-legal .mil-top-menu.mil-active,
    body.pyn-figma-platform .mil-top-menu.mil-active,
    body.pyn-figma-about .mil-top-menu.mil-active,
    body.pyn-figma-developer .mil-top-menu.mil-active,
    body.pyn-page-use-cases .mil-top-menu.mil-active {
        pointer-events: all !important;
        opacity: 1 !important;
        transform: translateY(0) !important;
    }

    body.pyn-figma-contact .mil-top-menu ul,
    body.pyn-figma-products .mil-top-menu ul,
    body.pyn-figma-compliance .mil-top-menu ul,
    body.pyn-figma-legal .mil-top-menu ul,
    body.pyn-figma-platform .mil-top-menu ul,
    body.pyn-figma-about .mil-top-menu ul,
    body.pyn-figma-developer .mil-top-menu ul,
    body.pyn-page-use-cases .mil-top-menu ul {
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        align-items: stretch !important;
        gap: 0 !important;
        width: 100%;
        padding: 8px 12px 12px !important;
    }

    body.pyn-figma-contact .mil-top-menu ul li,
    body.pyn-figma-products .mil-top-menu ul li,
    body.pyn-figma-compliance .mil-top-menu ul li,
    body.pyn-figma-legal .mil-top-menu ul li,
    body.pyn-figma-platform .mil-top-menu ul li,
    body.pyn-figma-about .mil-top-menu ul li,
    body.pyn-figma-developer .mil-top-menu ul li,
    body.pyn-page-use-cases .mil-top-menu ul li {
        width: 100% !important;
        margin-right: 0 !important;
    }

    body.pyn-figma-contact .mil-top-menu ul li a,
    body.pyn-figma-products .mil-top-menu ul li a,
    body.pyn-figma-compliance .mil-top-menu ul li a,
    body.pyn-figma-legal .mil-top-menu ul li a,
    body.pyn-figma-platform .mil-top-menu ul li a,
    body.pyn-figma-about .mil-top-menu ul li a,
    body.pyn-figma-developer .mil-top-menu ul li a,
    body.pyn-page-use-cases .mil-top-menu ul li a {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        white-space: normal !important;
        width: 100%;
        min-height: 44px;
        padding: 10px 14px !important;
    }
}

@media (max-width: 640px) {
    body.pyn-figma-legal .container,
    body.pyn-figma-platform .container,
    body.pyn-figma-about .container,
    body.pyn-figma-developer .container,
    body.pyn-page-use-cases .container {
        padding-left: 24px !important;
        padding-right: 24px !important;
    }

    body.pyn-figma-legal .pyn-legal-figma-hero h1,
    body.pyn-figma-platform .pyn-legal-figma-hero h1,
    body.pyn-figma-about .pyn-legal-figma-hero h1,
    body.pyn-figma-developer .pyn-dev-hero h1,
    body.pyn-page-use-cases .mil-banner-inner h1,
    body.pyn-figma-legal .pyn-legal-figma-hero h2,
    body.pyn-figma-platform h2,
    body.pyn-figma-about h2,
    body.pyn-figma-developer h2 {
        font-size: 32px !important;
        line-height: 40px !important;
        letter-spacing: -0.75px !important;
        word-break: break-word;
        overflow-wrap: anywhere;
    }

    body.pyn-figma-legal h1 br,
    body.pyn-figma-legal h2 br,
    body.pyn-figma-platform h1 br,
    body.pyn-figma-platform h2 br,
    body.pyn-figma-about h1 br,
    body.pyn-figma-about h2 br,
    body.pyn-figma-developer h1 br,
    body.pyn-figma-developer h2 br {
        display: none;
    }

    body.pyn-figma-legal .pyn-legal-content,
    body.pyn-legal-doc .pyn-legal-content {
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    body.pyn-figma-legal .pyn-figma-footer-inner.container,
    body.pyn-figma-platform .pyn-figma-footer-inner.container,
    body.pyn-figma-about .pyn-figma-footer-inner.container,
    body.pyn-figma-developer .pyn-figma-footer-inner.container,
    body.pyn-page-use-cases .pyn-site-footer .container {
        padding-left: 24px !important;
        padding-right: 24px !important;
    }

    body.pyn-figma-legal .pyn-footer-grid,
    body.pyn-figma-platform .pyn-footer-grid,
    body.pyn-figma-about .pyn-footer-grid,
    body.pyn-figma-developer .pyn-footer-grid,
    body.pyn-page-use-cases .pyn-footer-grid,
    body.pyn-figma-contact .pyn-footer-grid,
    body.pyn-figma-products .pyn-footer-grid,
    body.pyn-figma-compliance .pyn-footer-grid {
        grid-template-columns: 1fr !important;
        gap: 28px !important;
    }

    body.pyn-figma-legal .pyn-footer-brand,
    body.pyn-figma-platform .pyn-footer-brand,
    body.pyn-figma-about .pyn-footer-brand,
    body.pyn-figma-developer .pyn-footer-brand,
    body.pyn-page-use-cases .pyn-footer-brand,
    body.pyn-figma-contact .pyn-footer-brand,
    body.pyn-figma-products .pyn-footer-brand,
    body.pyn-figma-compliance .pyn-footer-brand,
    body.pyn-figma-legal .pyn-footer-contact-card,
    body.pyn-figma-platform .pyn-footer-contact-card,
    body.pyn-figma-about .pyn-footer-contact-card,
    body.pyn-figma-developer .pyn-footer-contact-card,
    body.pyn-page-use-cases .pyn-footer-contact-card,
    body.pyn-figma-contact .pyn-footer-contact-card,
    body.pyn-figma-products .pyn-footer-contact-card,
    body.pyn-figma-compliance .pyn-footer-contact-card {
        grid-column: 1 / -1;
        max-width: none !important;
    }

    body.pyn-figma-legal .pyn-footer-bottom-row,
    body.pyn-figma-platform .pyn-footer-bottom-row,
    body.pyn-figma-about .pyn-footer-bottom-row,
    body.pyn-figma-developer .pyn-footer-bottom-row,
    body.pyn-figma-contact .pyn-footer-bottom-row,
    body.pyn-figma-products .pyn-footer-bottom-row,
    body.pyn-figma-compliance .pyn-footer-bottom-row {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 24px !important;
    }

    body.pyn-figma-travelassist .pyn-ta-hero-actions {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    body.pyn-figma-travelassist .pyn-ta-hero-actions a {
        width: 100% !important;
        justify-content: center !important;
    }

    body.pyn-figma-travelassist .pyn-ta-help-grid {
        grid-template-columns: 1fr !important;
    }

    body.pyn-figma-travelassist .pyn-ta-channels-row {
        grid-template-columns: 1fr !important;
    }

    body.pyn-figma-travelassist .pyn-ta-informed-section .pyn-ta-info-grid {
        grid-template-columns: 1fr !important;
    }

    body.pyn-figma-travelassist .pyn-ta-timeline-steps {
        grid-template-columns: 1fr !important;
    }

    body.pyn-figma-compliance .pyn-compliance-cta-actions {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    body.pyn-figma-compliance .pyn-compliance-cta-actions a {
        width: 100% !important;
        justify-content: center !important;
    }

    body.pyn-figma-products .pyn-solution-card-featured .pyn-solution-traveller-btn {
        width: 100% !important;
        max-width: none !important;
        justify-content: center !important;
    }

    body.pyn-figma-products .pyn-solution-card--soon .pyn-solution-tags--single-line {
        flex-wrap: wrap !important;
    }

    body.pyn-figma-home .pyn-dash-row {
        flex-wrap: wrap !important;
        gap: 8px !important;
    }

    body.pyn-figma-home .pyn-dash-pill {
        white-space: normal !important;
        flex-shrink: 1 !important;
    }

    body.pyn-figma-about .pyn-cta-band,
    body.pyn-page-use-cases .pyn-cta-band {
        padding-top: 64px !important;
        padding-bottom: 64px !important;
    }

    body.pyn-page-use-cases .mil-banner-inner {
        padding-top: 120px !important;
        padding-bottom: 64px !important;
    }

    .mil-out-frame {
        width: 100% !important;
        transform: none !important;
        padding-left: 24px !important;
        padding-right: 24px !important;
        border-radius: 16px !important;
    }

    body.pyn-has-ask-widget #smooth-content,
    body.pyn-figma-legal #smooth-content,
    body.pyn-figma-platform #smooth-content,
    body.pyn-figma-about #smooth-content,
    body.pyn-figma-developer #smooth-content,
    body.pyn-page-use-cases #smooth-content,
    body.pyn-figma-career #smooth-content,
body.pyn-career-doc #smooth-content {
        padding-bottom: 88px;
    }

    body.pyn-figma-contact .mil-checkbox-frame {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 10px !important;
    }

    body.pyn-figma-contact .mil-checkbox-frame .mil-text-xs {
        font-size: 12px !important;
        line-height: 18px !important;
    }
}

/* ── Sitewide Figma footer — tablet & mobile (all pages) ── */
@media (max-width: 1100px) {
    .pyn-figma-footer .pyn-footer-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 32px 24px !important;
        justify-content: stretch !important;
        width: 100% !important;
    }

    .pyn-figma-footer .pyn-footer-grid .pyn-footer-link-col:nth-child(3) {
        margin-left: 0 !important;
        min-width: 0 !important;
    }

    .pyn-figma-footer .pyn-footer-brand,
    .pyn-figma-footer .pyn-footer-contact-card {
        grid-column: 1 / -1 !important;
        max-width: none !important;
        width: 100% !important;
    }

    .pyn-figma-footer .pyn-footer-brand-tagline {
        max-width: none !important;
    }

    .pyn-figma-footer .pyn-footer-link-col {
        margin-left: 0 !important;
        min-width: 0 !important;
        max-width: none !important;
    }
}

@media (max-width: 767px) {
    .pyn-figma-footer.pyn-site-footer {
        padding: 48px 0 calc(32px + 72px) !important;
    }

    .pyn-figma-footer .pyn-figma-footer-inner {
        padding-left: 24px !important;
        padding-right: 24px !important;
    }

    .pyn-figma-footer .pyn-footer-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 28px 20px !important;
    }

    .pyn-figma-footer .pyn-footer-bottom-row {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 24px !important;
        margin-top: 28px !important;
    }

    .pyn-figma-footer .pyn-footer-regulatory {
        flex: 1 1 auto !important;
        max-width: none !important;
        width: 100% !important;
    }

    .pyn-figma-footer .pyn-footer-certified {
        flex-direction: column !important;
        align-items: flex-start !important;
        width: 100% !important;
        gap: 10px !important;
    }

    .pyn-figma-footer .pyn-footer-certified-label {
        white-space: normal !important;
    }

    .pyn-figma-footer .pyn-footer-cert-logos {
        flex-wrap: wrap !important;
        gap: 12px !important;
    }

    .pyn-figma-footer .pyn-footer-socials {
        flex-wrap: wrap !important;
        gap: 12px !important;
    }

    .pyn-figma-footer .pyn-figma-footer-glow {
        right: -160px;
        opacity: 0.35;
    }
}

@media (max-width: 399px) {
    .pyn-figma-footer .pyn-footer-grid {
        grid-template-columns: 1fr !important;
        gap: 24px !important;
    }
}
