/* IIR COMMON FLOATING BUTTONS */

:root {
    --floating-navy: #172b43;
    --floating-sage: #dce5df;
    --floating-white: #ffffff;
}

.quick-contact {
    position: fixed;
    z-index: 90;
    right: 25px;
    bottom: 35px;
    display: flex;
    flex-direction: column;
    gap: 9px;
}

.quick-contact-item {
    min-width: 145px;
    min-height: 48px;
    padding: 8px 15px;
    display: flex;
    align-items: center;
    gap: 11px;
    border: 1px solid rgba(29, 48, 67, 0.12);
    border-radius: 30px;
    background: rgba(251, 250, 246, 0.96);
    box-shadow: 0 5px 20px rgba(29, 48, 67, 0.12);
    color: var(--floating-navy);
    font-size: 11px;
    font-weight: 600;
    transition: 0.25s;
}

.quick-contact-item:hover {
    color: var(--floating-white);
    background: var(--floating-navy);
    transform: translateX(-4px);
}

.quick-icon {
    width: 27px;
    height: 27px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--floating-sage);
    color: var(--floating-navy);
    font-size: 11px;
    font-weight: 700;
}


.back-to-top {
    position: fixed;
    right: 190px;
    bottom: 35px;
    z-index: 89;

    width: 46px;
    height: 46px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: none;
    border-radius: 50%;

    background: var(--floating-navy);
    color: #fff;

    font-size: 22px;
    cursor: pointer;

    box-shadow: 0 5px 20px rgba(29, 48, 67, 0.18);

    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(10px);

    transition:
        opacity 0.25s ease,
        transform 0.25s ease,
        visibility 0.25s ease,
        background 0.25s ease;
}

.back-to-top.is-visible {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
}

.back-to-top:hover {
    background: var(--navy2, #223b55);
}

.back-to-top:focus-visible {
    outline: 3px solid var(--gold, #c4a77d);
    outline-offset: 3px;
}

/* MOBILE */
@media (max-width: 768px) {
    .back-to-top {
        right: 16px;
        bottom: calc(88px + env(safe-area-inset-bottom));
        width: 42px;
        height: 42px;
        font-size: 20px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .back-to-top {
        transition: none;
    }
}

/* =========================
   MOBILE QUICK CONTACT
========================= */

@media (max-width: 768px) {
    .quick-contact {
        right: 0;
        left: 0;
        bottom: 0;
        flex-direction: row;
        gap: 0;
        padding: 9px 8px calc(9px + env(safe-area-inset-bottom));
        background: rgba(251, 250, 246, 0.97);
        border-top: 1px solid rgba(29, 48, 67, 0.12);
        box-shadow: 0 -5px 20px rgba(29, 48, 67, 0.08);
    }

    .quick-contact-item {
        min-width: 0;
        min-height: 45px;
        flex: 1;
        flex-direction: column;
        justify-content: center;
        gap: 3px;
        padding: 3px 2px;
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
        font-size: 9px;
    }

    .quick-contact-item:hover {
        color: var(--floating-navy);
        background: transparent;
        transform: none;
    }

    .quick-icon {
        width: 22px;
        height: 22px;
        font-size: 9px;
    }

    body {
        padding-bottom: calc(68px + env(safe-area-inset-bottom));
    }
}

/* IIR COMMON FLOATING BUTTONS */

/* BACK TO TOP - IIR NAVY STYLE */

.back-to-top {
    background: #172b43;
    color: #fbfaf6;
    border: 2px solid #fbfaf6;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.22);
}

.back-to-top:hover {
    background: #223b55;
    color: #fbfaf6;
    border-color: #c4a77d;
}