/* Contact page — mobile / tablet polish */

/* Kill inner column scrollbars (gutenverse sets overflow-y: auto) */
body.page-contact .guten-column-wrapper,
body.page-contact .guten-column > .guten-column-wrapper,
body.page-contact .guten-section > .guten-container > .guten-column > .guten-column-wrapper {
    overflow: hidden !important;
    overflow-x: hidden !important;
    overflow-y: hidden !important;
}

body.page-contact .guten-7Hqida,
body.page-contact .guten-0M9U9f,
body.page-contact .guten-OsdUao,
body.page-contact .section-wrapper[data-id="7Hqida"],
body.page-contact .section-wrapper[data-id="0M9U9f"],
body.page-contact .section-wrapper[data-id="OsdUao"] {
    overflow: hidden !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
}

body.page-contact .guten-7Hqida::-webkit-scrollbar,
body.page-contact .guten-0M9U9f::-webkit-scrollbar,
body.page-contact .guten-column-wrapper::-webkit-scrollbar {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
}

/* Contact method cards — outer column stays flat; the inner card owns shadow + hover */
body.page-contact .guten-column-wrapper[data-id="XVqyur"],
body.page-contact .guten-column-wrapper[data-id="2akE1f"],
body.page-contact .guten-column-wrapper[data-id="UCZ10U"],
body.page-contact .guten-column-wrapper[data-id="XVqyur"]:hover,
body.page-contact .guten-column-wrapper[data-id="2akE1f"]:hover,
body.page-contact .guten-column-wrapper[data-id="UCZ10U"]:hover {
    transform: none !important;
    box-shadow: none !important;
    background: transparent !important;
}

@media screen and (min-width: 768px) and (max-width: 1024px) {
    body.page-contact,
    body.page-contact .wp-site-blocks,
    body.page-contact .entry-content,
    body.page-contact .guten-post-content {
        overflow-x: hidden !important;
        max-width: 100vw !important;
    }

    body.page-contact .guten-7Hqida.guten-element,
    body.page-contact .guten-element.guten-7Hqida {
        padding-left: clamp(16px, 3vw, 32px) !important;
        padding-right: clamp(16px, 3vw, 32px) !important;
    }

    body.page-contact .guten-0M9U9f.guten-element,
    body.page-contact .guten-element.guten-0M9U9f {
        padding-left: clamp(16px, 3vw, 32px) !important;
        padding-right: clamp(16px, 3vw, 32px) !important;
        padding-top: clamp(40px, 6vw, 60px) !important;
        padding-bottom: clamp(40px, 6vw, 60px) !important;
    }

    body.page-contact .guten-OsdUao > .guten-container {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        gap: 32px !important;
    }

    body.page-contact .guten-ch6A1P {
        width: 50% !important;
        flex: 0 0 50% !important;
        max-width: 50% !important;
    }

    body.page-contact .guten-JBFeSt {
        width: 50% !important;
        flex: 0 0 50% !important;
        max-width: 50% !important;
    }

    body.page-contact .guten-C1nLMJ {
        font-size: clamp(32px, 4.5vw, 44px) !important;
        line-height: 1.15 !important;
    }

    body.page-contact .guten-fG1trW p {
        font-size: clamp(14px, 1.6vw, 16px) !important;
        line-height: 1.6 !important;
    }
}

@media screen and (max-width: 767px) {
    /* Hero — use full width, drop nested side padding */
    body.page-contact .guten-7Hqida.guten-element,
    body.page-contact .guten-element.guten-7Hqida {
        padding-left: 16px !important;
        padding-right: 16px !important;
        padding-top: 24px !important;
    }

    body.page-contact .guten-0M9U9f.guten-element,
    body.page-contact .guten-element.guten-0M9U9f {
        padding-top: 40px !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        padding-bottom: 28px !important;
        border-bottom-left-radius: 28px !important;
        border-bottom-right-radius: 28px !important;
    }

    body.page-contact .guten-OsdUao > .guten-container {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 12px !important;
    }

    body.page-contact .guten-ch6A1P,
    body.page-contact .guten-JBFeSt {
        width: 100% !important;
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }

    body.page-contact .guten-JBFeSt > .guten-column-wrapper,
    body.page-contact .guten-JBFeSt > .sticky-wrapper > .guten-column-wrapper {
        margin: 8px 0 0 !important;
        align-items: flex-start !important;
    }

    body.page-contact .guten-C1nLMJ {
        font-size: clamp(30px, 9vw, 38px) !important;
        line-height: 1.15 !important;
        text-align: left !important;
    }

    body.page-contact .guten-fG1trW {
        text-align: left !important;
    }

    body.page-contact .guten-fG1trW p {
        font-size: 15px !important;
        line-height: 1.55 !important;
    }

    /* Get in Touch — tight vertical spacing */
    body.page-contact .guten-vC0m3k.guten-element,
    body.page-contact .guten-element.guten-vC0m3k {
        padding-left: 16px !important;
        padding-right: 16px !important;
        padding-top: 24px !important;
        padding-bottom: 8px !important;
    }

    body.page-contact .guten-bLH8b6 > .guten-column-wrapper,
    body.page-contact .guten-bLH8b6 > .sticky-wrapper > .guten-column-wrapper {
        margin-top: 0 !important;
    }

    body.page-contact .guten-DhHny6 {
        font-size: clamp(28px, 8vw, 36px) !important;
        line-height: 1.2 !important;
        text-align: center !important;
        margin: 0 0 4px !important;
        padding: 0 !important;
    }   

    body.page-contact .guten-r4dOqE.guten-element,
    body.page-contact .guten-element.guten-r4dOqE {
        margin-top: 8px !important;
        margin-bottom: 0 !important;
    }

    body.page-contact .guten-r4dOqE > .guten-container {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 0 !important;
    }

    body.page-contact .guten-XVqyur,
    body.page-contact .guten-2akE1f,
    body.page-contact .guten-UCZ10U {
        width: 100% !important;
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }

    body.page-contact .guten-XVqyur > .guten-column-wrapper,
    body.page-contact .guten-2akE1f > .guten-column-wrapper,
    body.page-contact .guten-UCZ10U > .guten-column-wrapper {
        margin: 0 0 4px !important;
        padding: 8px 12px !important;
        width: 100% !important;
        transform: none !important;
        box-shadow: none !important;
    }

    body.page-contact .guten-v7EXBX,
    body.page-contact .guten-vp5UmI,
    body.page-contact .guten-bMyMM2,
    body.page-contact .guten-v7EXBX.guten-element,
    body.page-contact .guten-vp5UmI.guten-element,
    body.page-contact .guten-bMyMM2.guten-element {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 8px 12px !important;
        display: flex !important;
        justify-content: center !important;
    }

    body.page-contact .guten-v7EXBX .guten-inner-wrap,
    body.page-contact .guten-vp5UmI .guten-inner-wrap,
    body.page-contact .guten-bMyMM2 .guten-inner-wrap {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        text-align: center !important;
        gap: 4px !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
    }

    body.page-contact .guten-Ty0wrE,
    body.page-contact .guten-zqetpX,
    body.page-contact .guten-INfvNj {
        text-align: center !important;
        width: 100% !important;
        margin-top: 4px !important;
        margin-bottom: 0 !important;
    }

    body.page-contact .guten-Ty0wrE .heading-subtitle,
    body.page-contact .guten-zqetpX .heading-subtitle,
    body.page-contact .guten-INfvNj .heading-subtitle {
        display: block !important;
        text-align: center !important;
        margin: 0 !important;
    }

    body.page-contact .guten-kN8vJ4 .guten-icon-wrapper,
    body.page-contact .guten-RXwXnI .guten-icon-wrapper,
    body.page-contact .guten-QOdXjO .guten-icon-wrapper {
        padding: 10px !important;
    }

    /* Global locations */
    body.page-contact .guten-qg1HcO.guten-element,
    body.page-contact .guten-element.guten-qg1HcO {
        padding-top: 40px !important;
        padding-bottom: 24px !important;
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    body.page-contact .guten-cRDFtG h2,
    body.page-contact .guten-cRDFtG .letter {
        font-size: clamp(26px, 7vw, 34px) !important;
    }

    body.page-contact .guten-NKt8ef > .guten-container,
    body.page-contact .guten-eKd1TD > .guten-container {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 14px !important;
    }

    body.page-contact .guten-AQnJwC,
    body.page-contact .guten-7XLULW,
    body.page-contact .guten-SZif8W,
    body.page-contact .guten-4Wiomj,
    body.page-contact .guten-YxcQnl,
    body.page-contact .guten-UB4l3O {
        width: 100% !important;
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }

    body.page-contact .guten-AQnJwC > .guten-column-wrapper,
    body.page-contact .guten-7XLULW > .guten-column-wrapper,
    body.page-contact .guten-SZif8W > .guten-column-wrapper,
    body.page-contact .guten-4Wiomj > .guten-column-wrapper,
    body.page-contact .guten-YxcQnl > .guten-column-wrapper,
    body.page-contact .guten-UB4l3O > .guten-column-wrapper,
    body.page-contact .guten-column-wrapper[data-id="AQnJwC"],
    body.page-contact .guten-column-wrapper[data-id="7XLULW"],
    body.page-contact .guten-column-wrapper[data-id="SZif8W"],
    body.page-contact .guten-column-wrapper[data-id="4Wiomj"],
    body.page-contact .guten-column-wrapper[data-id="YxcQnl"],
    body.page-contact .guten-column-wrapper[data-id="UB4l3O"] {
        margin: 0 0 14px !important;
        width: 100% !important;
        min-height: 220px !important;
        border-radius: 25px !important;
    }

    body.page-contact .guten-NKt8ef .guten-icon-box-wrapper,
    body.page-contact .guten-eKd1TD .guten-icon-box-wrapper {
        min-height: 220px !important;
        padding: 24px 16px !important;
        border-radius: 25px !important;
    }

    body.page-contact .guten-NKt8ef .icon-box.icon-box-header .icon,
    body.page-contact .guten-eKd1TD .icon-box.icon-box-header .icon {
        width: 60px !important;
        height: 60px !important;
        border-radius: 50% !important;
        overflow: hidden !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        margin: 0 auto 14px auto !important;
    }

    body.page-contact .guten-NKt8ef .guten-icon-box-wrapper .icon img,
    body.page-contact .guten-eKd1TD .guten-icon-box-wrapper .icon img,
    body.page-contact .guten-NKt8ef .icon-box.icon-box-header .icon img,
    body.page-contact .guten-eKd1TD .icon-box.icon-box-header .icon img {
        width: 60px !important;
        height: 60px !important;
        border-radius: 50% !important;
        object-fit: cover !important;
        display: block !important;
        margin: 0 !important;
    }

    body.page-contact .guten-NKt8ef .icon-box.icon-box-body .title,
    body.page-contact .guten-eKd1TD .icon-box.icon-box-body .title {
        font-family: "Urbanist", sans-serif !important;
        font-size: 22px !important;
        font-weight: 700 !important;
        color: #000000 !important;
        margin: 0 0 10px 0 !important;
        text-align: center !important;
        text-transform: uppercase !important;
        letter-spacing: 0.02em !important;
        line-height: 1.2 !important;
    }

    body.page-contact .guten-NKt8ef .icon-box-description,
    body.page-contact .guten-eKd1TD .icon-box-description {
        font-family: "Urbanist", sans-serif !important;
        font-size: 14px !important;
        font-weight: 400 !important;
        color: #000000 !important;
        text-align: center !important;
        line-height: 1.5 !important;
        margin: 0 !important;
    }

    /* Bottom full map */
    body.page-contact .section-wrapper[data-id="YEWogs"],
    body.page-contact section.guten-YEWogs {
        margin-top: 16px !important;
        margin-bottom: 24px !important;
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    body.page-contact .guten-YEWogs .guten-4pZNy5 iframe,
    body.page-contact .guten-4pZNy5.gutenverse-maps iframe {
        height: 260px !important;
        border-radius: 25px !important;
    }

    body.page-contact .guten-YEWogs .guten-column-wrapper[data-id="TLCEdL"],
    body.page-contact .guten-YEWogs .guten-4pZNy5 {
        min-height: 260px !important;
        border-radius: 25px !important;
    }
}

@media screen and (max-width: 480px) {
    body.page-contact .guten-C1nLMJ {
        font-size: 28px !important;
    }

    body.page-contact .guten-DhHny6 {
        font-size: 26px !important;
    }

    body.page-contact .guten-NKt8ef .guten-icon-box-wrapper,
    body.page-contact .guten-eKd1TD .guten-icon-box-wrapper,
    body.page-contact .guten-AQnJwC > .guten-column-wrapper,
    body.page-contact .guten-7XLULW > .guten-column-wrapper,
    body.page-contact .guten-SZif8W > .guten-column-wrapper,
    body.page-contact .guten-4Wiomj > .guten-column-wrapper,
    body.page-contact .guten-YxcQnl > .guten-column-wrapper,
    body.page-contact .guten-UB4l3O > .guten-column-wrapper {
        min-height: 200px !important;
    }
}

/* Get in Touch cards — single shadow on the inner card */
body.page-contact .guten-v7EXBX.guten-element,
body.page-contact .guten-vp5UmI.guten-element,
body.page-contact .guten-bMyMM2.guten-element {
    box-shadow: 0 8px 18px -4px rgba(0,14,26,0.14), 0 1px 6px rgba(0,14,26,0.06) !important;
    transition: transform 0.35s ease, box-shadow 0.35s ease !important;
}

body.page-contact .guten-v7EXBX.guten-element:hover,
body.page-contact .guten-vp5UmI.guten-element:hover,
body.page-contact .guten-bMyMM2.guten-element:hover {
    transform: translateY(-6px) !important;
    box-shadow: 0 12px 24px -4px rgba(0,14,26,0.18), 0 2px 8px rgba(0,14,26,0.08) !important;
}
