/*
 * IndoSurgicals Mobile Footer Modernization v2.6.0
 * Mobile-only visual override. Desktop 641px+ is intentionally untouched.
 */

@media (max-width: 640px) {
    #footer.isp-site-footer {
        position: relative;
        overflow: hidden;
        padding-top: 14px !important;
        border-top: 0 !important;
        background: #102f44 !important;
        color: #fff !important;
    }

    #footer.isp-site-footer::before {
        content: "";
        position: absolute;
        top: 7px;
        left: 50%;
        width: 44px;
        height: 4px;
        border-radius: 999px;
        background: #63d3c2;
        transform: translateX(-50%);
        box-shadow: 0 0 0 1px rgba(99,211,194,.08);
    }

    /* Optional global footer quotation strip (hidden on homepage by home CSS). */
    #footer .isp-footer-cta-wrap {
        margin: 6px 10px 12px !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
    }

    #footer .isp-footer-cta {
        width: 100% !important;
        min-height: 0 !important;
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 14px !important;
        margin: 0 !important;
        padding: 18px !important;
        border: 1px solid rgba(255,255,255,.12);
        border-radius: 20px;
        background: rgba(255,255,255,.055);
        box-shadow: 0 18px 42px rgba(3,21,32,.16);
        box-sizing: border-box;
    }

    #footer .isp-footer-cta span {
        margin-bottom: 5px !important;
        color: #73d9ca !important;
        font-size: 10px !important;
        letter-spacing: .09em !important;
    }

    #footer .isp-footer-cta strong {
        max-width: 29ch;
        font-size: 18px !important;
        line-height: 1.35 !important;
    }

    #footer .isp-footer-cta-actions {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 8px !important;
        margin-top: 0 !important;
    }

    #footer .isp-footer-cta-actions a {
        min-height: 44px !important;
        padding: 0 12px !important;
        border-radius: 12px !important;
        font-size: 11px !important;
    }

    #footer .isp-footer-inner {
        width: calc(100% - 20px) !important;
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 8px !important;
        margin: 0 auto !important;
        padding: 8px 0 16px !important;
    }

    /* Company/contact becomes one premium information card. */
    #footer .isp-footer-company {
        display: flex !important;
        flex-direction: column !important;
        margin: 0 0 6px !important;
        padding: 20px !important;
        border: 1px solid rgba(255,255,255,.11) !important;
        border-radius: 22px !important;
        background: rgba(255,255,255,.055) !important;
        box-shadow: 0 18px 46px rgba(4,24,36,.14);
        box-sizing: border-box;
    }

    #footer .isp-footer-company h2 {
        order: 1;
        margin: 0 0 7px !important;
        padding: 0 !important;
        border: 0 !important;
        color: #fff !important;
        font-size: 20px !important;
        line-height: 1.25 !important;
        font-weight: 800 !important;
        letter-spacing: -.015em;
    }

    #footer .isp-footer-positioning {
        order: 2;
        max-width: none !important;
        margin: 0 0 16px !important;
        color: #c6d5de !important;
        font-size: 13px !important;
        line-height: 1.55 !important;
    }

    #footer .isp-footer-contact-links {
        order: 3;
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 8px !important;
        margin: 0 0 12px !important;
    }

    #footer .isp-footer-contact-links a {
        min-width: 0;
        min-height: 46px !important;
        display: flex !important;
        align-items: center !important;
        gap: 11px !important;
        margin: 0 !important;
        padding: 0 13px !important;
        border: 1px solid rgba(255,255,255,.10) !important;
        border-radius: 14px !important;
        background: rgba(5,31,47,.25) !important;
        color: #f7fbfc !important;
        font-size: 13px !important;
        line-height: 1.3 !important;
        font-weight: 700 !important;
        overflow-wrap: anywhere;
        box-sizing: border-box;
    }

    #footer .isp-footer-contact-links svg {
        width: 18px !important;
        height: 18px !important;
        flex: 0 0 18px !important;
        fill: #69d4c3 !important;
    }

    #footer .isp-footer-company-top {
        order: 4;
        display: grid !important;
        grid-template-columns: minmax(0, 1.35fr) minmax(0, .85fr) !important;
        gap: 8px !important;
        margin: 0 0 14px !important;
    }

    #footer .isp-footer-company-top address,
    #footer .isp-footer-hours--company {
        min-width: 0;
        width: auto !important;
        margin: 0 !important;
        padding: 13px !important;
        border: 1px solid rgba(255,255,255,.09) !important;
        border-radius: 14px !important;
        background: rgba(5,31,47,.20) !important;
        box-sizing: border-box;
    }

    #footer .isp-footer-company-top address {
        color: #e8f0f4 !important;
        font-size: 12px !important;
        line-height: 1.52 !important;
    }

    #footer .isp-footer-info-label,
    #footer .isp-footer-hours--company small {
        display: block !important;
        margin: 0 0 6px !important;
        color: #6fd8c8 !important;
        font-size: 9px !important;
        line-height: 1.2 !important;
        font-weight: 800 !important;
        letter-spacing: .095em !important;
        text-transform: uppercase !important;
    }

    #footer .isp-footer-hours--company strong {
        margin: 0 !important;
        color: #fff !important;
        font-size: 12px !important;
        line-height: 1.35 !important;
    }

    #footer .isp-footer-hours--company span {
        margin-top: 3px !important;
        color: #c6d5de !important;
        font-size: 11px !important;
        line-height: 1.4 !important;
    }

    #footer .isp-footer-social {
        order: 5;
        display: flex !important;
        flex-wrap: wrap;
        gap: 8px !important;
        margin: 0 !important;
    }

    #footer .isp-footer-social a {
        width: 40px !important;
        height: 40px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        border: 1px solid rgba(255,255,255,.12) !important;
        border-radius: 50% !important;
        background: rgba(255,255,255,.055) !important;
        color: #fff !important;
        box-shadow: none !important;
    }

    #footer .isp-footer-social a:active {
        transform: scale(.96);
    }

    #footer .isp-footer-social svg {
        width: 18px !important;
        height: 18px !important;
    }

    /* Footer navigation: flat, open, contemporary link groups. */
    #footer .isp-footer-inner {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        column-gap: 18px !important;
        row-gap: 2px !important;
    }

    #footer .isp-footer-company {
        grid-column: 1 / -1 !important;
    }

    #footer .isp-footer-column,
    #footer .isp-footer-column:first-of-type {
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 14px 5px 10px !important;
        overflow: visible !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        box-sizing: border-box;
    }

    #footer .isp-footer-column h3 {
        position: relative;
        margin: 0 0 8px !important;
        padding: 0 0 8px !important;
        border: 0 !important;
        background: transparent !important;
        line-height: 1 !important;
    }

    #footer .isp-footer-column h3::after {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        width: 24px;
        height: 1px;
        border-radius: 999px;
        background: rgba(105,212,195,.44);
    }

    #footer .isp-footer-accordion-toggle {
        min-height: 0 !important;
        width: 100% !important;
        display: block !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        color: #72d9ca !important;
        font: inherit !important;
        font-size: 10px !important;
        line-height: 1.25 !important;
        font-weight: 850 !important;
        letter-spacing: .09em !important;
        text-align: left !important;
        text-transform: uppercase !important;
        cursor: default !important;
        box-shadow: none !important;
    }

    #footer .isp-footer-accordion-toggle span {
        display: block !important;
        color: inherit !important;
    }

    #footer .isp-footer-accordion-toggle svg {
        display: none !important;
    }

    /* Override the legacy accordion hiding: links remain visible, with no bullets or boxes. */
    #footer.isp-footer-accordion-ready .isp-footer-column > a,
    #footer.isp-footer-accordion-ready .isp-footer-column.is-open > a,
    #footer .isp-footer-column > a {
        min-width: 0 !important;
        min-height: 30px !important;
        display: flex !important;
        align-items: center !important;
        gap: 0 !important;
        margin: 0 !important;
        padding: 3px 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        color: #edf4f6 !important;
        font-size: 11.5px !important;
        line-height: 1.32 !important;
        font-weight: 650 !important;
        letter-spacing: 0 !important;
        text-decoration: none !important;
        overflow-wrap: anywhere;
        box-shadow: none !important;
        box-sizing: border-box;
    }

    #footer.isp-footer-accordion-ready .isp-footer-column > a::before,
    #footer.isp-footer-accordion-ready .isp-footer-column.is-open > a::before,
    #footer .isp-footer-column > a::before {
        content: none !important;
        display: none !important;
    }

    #footer .isp-footer-column > a:hover,
    #footer .isp-footer-column > a:focus-visible {
        color: #79ddce !important;
        background: transparent !important;
        transform: none !important;
        text-decoration: none !important;
    }

    #footer .isp-footer-associates > a span {
        margin-left: 6px !important;
        color: #67d5c5 !important;
        font-size: 12px !important;
        line-height: 1 !important;
        transform: translateY(-1px);
    }

    /* Modern legal/footer strip. */
    #copyright.isp-copyright {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 0 max(16px, env(safe-area-inset-bottom)) !important;
        border-top: 0 !important;
        background: #0a2233 !important;
        color: #9fb2bd !important;
    }

    #copyright .isp-copyright-inner {
        width: calc(100% - 20px) !important;
        margin: 0 auto !important;
        padding: 16px 4px 0 !important;
        border-top: 1px solid rgba(255,255,255,.075);
        box-sizing: border-box;
    }

    #copyright .isp-copyright-line {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 10px !important;
        color: #c7d4da !important;
        font-size: 11px !important;
        line-height: 1.55 !important;
    }

    #copyright .isp-copyright-links {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 7px !important;
        margin: 0 !important;
    }

    #copyright .isp-copyright-links a {
        min-height: 28px;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        color: #e6eef1 !important;
        font-size: 11px !important;
        line-height: 1.2 !important;
        font-weight: 700;
        text-decoration: none !important;
    }

    #copyright .isp-copyright-links a:hover,
    #copyright .isp-copyright-links a:focus-visible {
        color: #72d9ca !important;
    }

    #copyright .isp-copyright-inner p {
        margin: 12px 0 0 !important;
        color: #849aa6 !important;
        font-size: 10px !important;
        line-height: 1.55 !important;
    }

    #footer .isp-footer-accordion-toggle:focus-visible,
    #footer .isp-footer-column > a:focus-visible,
    #footer .isp-footer-contact-links a:focus-visible,
    #footer .isp-footer-social a:focus-visible,
    #copyright .isp-copyright-links a:focus-visible {
        outline: 2px solid #69d4c3 !important;
        outline-offset: 2px !important;
    }
}

@media (max-width: 360px) {
    #footer .isp-footer-company {
        padding: 17px !important;
        border-radius: 19px !important;
    }

    #footer .isp-footer-company h2 {
        font-size: 18px !important;
    }

    #footer .isp-footer-company-top {
        grid-template-columns: 1fr !important;
    }

    #footer .isp-footer-cta-actions {
        grid-template-columns: 1fr !important;
    }

    #footer .isp-footer-inner {
        column-gap: 14px !important;
        row-gap: 0 !important;
    }

    #footer .isp-footer-column,
    #footer .isp-footer-column:first-of-type {
        padding: 12px 3px 8px !important;
        border-radius: 0 !important;
    }

    #footer .isp-footer-accordion-toggle {
        font-size: 9.4px !important;
        letter-spacing: .075em !important;
    }

    #footer.isp-footer-accordion-ready .isp-footer-column > a,
    #footer.isp-footer-accordion-ready .isp-footer-column.is-open > a,
    #footer .isp-footer-column > a {
        min-height: 29px !important;
        gap: 0 !important;
        font-size: 10.7px !important;
    }
}

/* ============================================================
   v2.6.0 — Flat company/contact footer refinement
   Removes all card/box treatments from the mobile company block
   and normalizes footer typography to regular/medium weights.
   ============================================================ */
@media (max-width: 640px) {
    /* Keep the footer canvas, but flatten the company/contact content. */
    #footer .isp-footer-company {
        margin: 0 !important;
        padding: 18px 5px 12px !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    #footer .isp-footer-company h2 {
        margin: 0 0 7px !important;
        color: #f5f9fa !important;
        font-size: 19px !important;
        line-height: 1.28 !important;
        font-weight: 500 !important;
        letter-spacing: -.01em !important;
    }

    #footer .isp-footer-positioning {
        margin: 0 0 15px !important;
        color: #c6d5de !important;
        font-size: 12.5px !important;
        line-height: 1.55 !important;
        font-weight: 400 !important;
    }

    /* Phone + email: simple open rows separated by hairlines. */
    #footer .isp-footer-contact-links {
        gap: 0 !important;
        margin: 0 0 14px !important;
        border-top: 1px solid rgba(255,255,255,.08);
        border-bottom: 1px solid rgba(255,255,255,.08);
    }

    #footer .isp-footer-contact-links a {
        min-height: 42px !important;
        padding: 8px 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        color: #edf4f6 !important;
        font-size: 12.5px !important;
        line-height: 1.35 !important;
        font-weight: 500 !important;
        box-shadow: none !important;
    }

    #footer .isp-footer-contact-links a + a {
        border-top: 1px solid rgba(255,255,255,.065) !important;
    }

    #footer .isp-footer-contact-links svg {
        width: 17px !important;
        height: 17px !important;
        flex-basis: 17px !important;
    }

    /* Address + hours: open information columns with no enclosing cards. */
    #footer .isp-footer-company-top {
        grid-template-columns: minmax(0, 1.35fr) minmax(0, .85fr) !important;
        gap: 18px !important;
        margin: 0 0 15px !important;
        padding: 0 !important;
    }

    #footer .isp-footer-company-top address,
    #footer .isp-footer-hours--company {
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    #footer .isp-footer-company-top address {
        color: #dce7eb !important;
        font-size: 11.8px !important;
        line-height: 1.52 !important;
        font-weight: 400 !important;
    }

    #footer .isp-footer-info-label,
    #footer .isp-footer-hours--company small {
        margin: 0 0 5px !important;
        color: #72d9ca !important;
        font-size: 9px !important;
        line-height: 1.25 !important;
        font-weight: 500 !important;
        letter-spacing: .075em !important;
    }

    #footer .isp-footer-hours--company strong {
        display: block !important;
        color: #edf4f6 !important;
        font-size: 11.8px !important;
        line-height: 1.4 !important;
        font-weight: 500 !important;
    }

    #footer .isp-footer-hours--company span {
        color: #bfd0d8 !important;
        font-size: 11px !important;
        line-height: 1.45 !important;
        font-weight: 400 !important;
    }

    /* Social actions: icon-only, no circles or outlines. */
    #footer .isp-footer-social {
        gap: 18px !important;
        margin: 1px 0 0 !important;
        padding: 11px 0 3px !important;
        border-top: 1px solid rgba(255,255,255,.08);
    }

    #footer .isp-footer-social a {
        width: 28px !important;
        height: 28px !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        color: #f3f7f9 !important;
        box-shadow: none !important;
    }

    #footer .isp-footer-social svg {
        width: 17px !important;
        height: 17px !important;
    }

    /* No heavy typography anywhere in the mobile footer navigation/legal area. */
    #footer .isp-footer-accordion-toggle {
        font-weight: 500 !important;
    }

    #footer.isp-footer-accordion-ready .isp-footer-column > a,
    #footer.isp-footer-accordion-ready .isp-footer-column.is-open > a,
    #footer .isp-footer-column > a {
        font-weight: 400 !important;
    }

    #copyright .isp-copyright-links a {
        font-weight: 500 !important;
    }

    #copyright .isp-copyright-line,
    #copyright .isp-copyright-inner p {
        font-weight: 400 !important;
    }

    /* Optional footer CTA also loses its enclosing card on mobile. */
    #footer .isp-footer-cta {
        padding: 15px 4px !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    #footer .isp-footer-cta strong {
        font-weight: 500 !important;
    }
}

@media (max-width: 360px) {
    #footer .isp-footer-company {
        padding: 16px 3px 11px !important;
        border-radius: 0 !important;
    }

    #footer .isp-footer-company h2 {
        font-size: 18px !important;
        font-weight: 500 !important;
    }

    #footer .isp-footer-company-top {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }
}

/* ============================================================
   v2.12.0 — Compact mobile footer density refinement
   Keeps the fully-flat contemporary footer introduced in v2.6,
   while reducing excess vertical rhythm and link-group height.
   Mobile only: no effect at 641px and above.
   ============================================================ */
@media (max-width: 640px) {
    /* Overall footer density */
    #footer .isp-footer-inner {
        width: calc(100% - 20px) !important;
        column-gap: 16px !important;
        row-gap: 0 !important;
        padding: 5px 0 10px !important;
    }

    /* Company/contact block: same flat design, less vertical air. */
    #footer .isp-footer-company {
        margin: 0 0 2px !important;
        padding: 12px 5px 8px !important;
    }

    #footer .isp-footer-company h2 {
        margin-bottom: 4px !important;
        font-size: 17.5px !important;
        line-height: 1.24 !important;
    }

    #footer .isp-footer-positioning {
        margin-bottom: 9px !important;
        font-size: 11.8px !important;
        line-height: 1.45 !important;
    }

    #footer .isp-footer-contact-links {
        margin-bottom: 9px !important;
    }

    #footer .isp-footer-contact-links a {
        min-height: 35px !important;
        gap: 9px !important;
        padding: 5px 0 !important;
        font-size: 11.8px !important;
        line-height: 1.28 !important;
    }

    #footer .isp-footer-contact-links svg {
        width: 15px !important;
        height: 15px !important;
        flex-basis: 15px !important;
    }

    #footer .isp-footer-company-top {
        gap: 14px !important;
        margin-bottom: 9px !important;
    }

    #footer .isp-footer-company-top address {
        font-size: 10.9px !important;
        line-height: 1.42 !important;
    }

    #footer .isp-footer-info-label,
    #footer .isp-footer-hours--company small {
        margin-bottom: 3px !important;
        font-size: 8.4px !important;
        letter-spacing: .07em !important;
    }

    #footer .isp-footer-hours--company strong {
        font-size: 10.9px !important;
        line-height: 1.32 !important;
    }

    #footer .isp-footer-hours--company span {
        margin-top: 1px !important;
        font-size: 10.2px !important;
        line-height: 1.35 !important;
    }

    #footer .isp-footer-social {
        gap: 15px !important;
        margin: 0 !important;
        padding: 7px 0 1px !important;
    }

    #footer .isp-footer-social a {
        width: 25px !important;
        height: 25px !important;
    }

    #footer .isp-footer-social svg {
        width: 15px !important;
        height: 15px !important;
    }

    /* Navigation groups: tighter without returning to boxes/accordions. */
    #footer .isp-footer-column,
    #footer .isp-footer-column:first-of-type {
        padding: 8px 4px 5px !important;
    }

    #footer .isp-footer-column h3 {
        margin-bottom: 5px !important;
        padding-bottom: 5px !important;
    }

    #footer .isp-footer-column h3::after {
        width: 20px !important;
    }

    #footer .isp-footer-accordion-toggle {
        font-size: 9px !important;
        line-height: 1.15 !important;
        letter-spacing: .075em !important;
    }

    #footer.isp-footer-accordion-ready .isp-footer-column > a,
    #footer.isp-footer-accordion-ready .isp-footer-column.is-open > a,
    #footer .isp-footer-column > a {
        min-height: 25px !important;
        padding: 1px 0 !important;
        font-size: 10.7px !important;
        line-height: 1.24 !important;
    }

    #footer .isp-footer-associates > a span {
        margin-left: 4px !important;
        font-size: 10.8px !important;
    }

    /* Compact legal strip */
    #copyright.isp-copyright {
        padding-bottom: max(11px, env(safe-area-inset-bottom)) !important;
    }

    #copyright .isp-copyright-inner {
        padding: 10px 4px 0 !important;
    }

    #copyright .isp-copyright-line {
        gap: 6px !important;
        font-size: 10.4px !important;
        line-height: 1.42 !important;
    }

    #copyright .isp-copyright-links {
        gap: 12px !important;
    }

    #copyright .isp-copyright-links a {
        min-height: 23px !important;
        font-size: 10.4px !important;
    }

    #copyright .isp-copyright-inner p {
        margin-top: 7px !important;
        font-size: 9.4px !important;
        line-height: 1.42 !important;
    }
}

@media (max-width: 360px) {
    #footer .isp-footer-inner {
        column-gap: 12px !important;
    }

    #footer .isp-footer-company {
        padding-top: 10px !important;
    }

    #footer .isp-footer-company h2 {
        font-size: 16.5px !important;
    }

    #footer .isp-footer-company-top {
        gap: 8px !important;
    }

    #footer .isp-footer-column,
    #footer .isp-footer-column:first-of-type {
        padding-left: 2px !important;
        padding-right: 2px !important;
    }

    #footer.isp-footer-accordion-ready .isp-footer-column > a,
    #footer.isp-footer-accordion-ready .isp-footer-column.is-open > a,
    #footer .isp-footer-column > a {
        font-size: 10.3px !important;
    }
}

/* ============================================================
   v2.13.0 — Global mobile footer gap normalization
   Applies to the shared footer on every public page.
   Removes additive vertical whitespace between the CTA, company
   information, navigation groups and legal strip while preserving
   readable touch/text sizing. Mobile only.
   ============================================================ */
@media (max-width: 640px) {
    /* CTA -> company transition: eliminate the accumulated blank band. */
    #footer .isp-footer-cta-wrap {
        margin: 3px 10px 2px !important;
    }

    #footer .isp-footer-cta {
        gap: 9px !important;
        padding: 11px 4px 4px !important;
    }

    #footer .isp-footer-cta span {
        margin-bottom: 2px !important;
    }

    #footer .isp-footer-inner {
        padding-top: 0 !important;
        padding-bottom: 7px !important;
    }

    #footer .isp-footer-company {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        padding-top: 5px !important;
        padding-bottom: 5px !important;
    }

    /* Keep internal company rhythm compact but readable. */
    #footer .isp-footer-positioning {
        margin-bottom: 7px !important;
    }

    #footer .isp-footer-contact-links {
        margin-bottom: 7px !important;
    }

    #footer .isp-footer-company-top {
        margin-bottom: 7px !important;
    }

    #footer .isp-footer-social {
        padding-top: 5px !important;
        padding-bottom: 0 !important;
    }

    /* Company -> navigation and navigation row transitions. */
    #footer .isp-footer-column,
    #footer .isp-footer-column:first-of-type {
        padding-top: 6px !important;
        padding-bottom: 3px !important;
    }

    #footer .isp-footer-column h3 {
        margin-bottom: 4px !important;
        padding-bottom: 4px !important;
    }

    /* Footer -> legal transition. */
    #copyright .isp-copyright-inner {
        padding-top: 8px !important;
    }

    #copyright .isp-copyright-inner p {
        margin-top: 5px !important;
    }
}

@media (max-width: 360px) {
    #footer .isp-footer-cta-wrap {
        margin-bottom: 1px !important;
    }

    #footer .isp-footer-cta {
        padding-bottom: 3px !important;
    }

    #footer .isp-footer-company {
        padding-top: 4px !important;
    }
}

/* ============================================================
   v2.14.0 — Mobile footer brand-title typography refinement
   Keeps the footer fully flat/compact while making the company
   title closer to the IndoSurgicals wordmark's clean geometric
   sans-serif character. Mobile only.
   ============================================================ */
@media (max-width: 640px) {
    #footer .isp-footer-company h2 {
        font-family: 'Poppins', Arial, Helvetica, sans-serif !important;
        font-size: 16px !important;
        line-height: 1.24 !important;
        font-weight: 500 !important;
        letter-spacing: -0.025em !important;
        margin-bottom: 4px !important;
    }
}

@media (max-width: 430px) {
    #footer .isp-footer-company h2 {
        font-size: 15.5px !important;
    }
}

@media (max-width: 360px) {
    #footer .isp-footer-company h2 {
        font-size: 15px !important;
        letter-spacing: -0.02em !important;
    }
}

/* ============================================================
   v2.15.0 — Mobile footer CTA removal + Franklin Gothic Heavy title
   - Removes the shared quotation CTA from the mobile/tablet footer
     across every page, avoiding duplicate quotation calls-to-action.
   - Keeps the approved desktop footer intact at 901px+.
   - Corrects the footer company title to the requested Franklin Gothic
     Heavy family, with a compact mobile size and resilient fallbacks.
   ============================================================ */
@media (max-width: 900px) {
    /* Shared footer quotation CTA: remove completely from mobile/tablet. */
    #footer .isp-footer-cta-wrap {
        display: none !important;
    }
}

@media (max-width: 640px) {
    /* With the CTA removed, start the footer content cleanly and compactly. */
    #footer .isp-footer-inner {
        padding-top: 5px !important;
    }

    #footer .isp-footer-company {
        padding-top: 4px !important;
    }

    /* Requested brand-title typeface. */
    #footer .isp-footer-company h2 {
        font-family: "Franklin Gothic Heavy", "Franklin Gothic Medium", "Arial Black", "Arial Narrow", Arial, sans-serif !important;
        font-size: 15.5px !important;
        line-height: 1.18 !important;
        font-weight: 900 !important;
        letter-spacing: -0.018em !important;
        margin-bottom: 4px !important;
    }
}

@media (max-width: 430px) {
    #footer .isp-footer-company h2 {
        font-size: 15px !important;
    }
}

@media (max-width: 360px) {
    #footer .isp-footer-company h2 {
        font-size: 14.5px !important;
        letter-spacing: -0.012em !important;
    }
}
