/* Mobile enquiry dock: floating, warm charcoal, matches the hero palette. Desktop unchanged. */

    .reify-sticky-target { scroll-margin-top: var(--reify-sticky-offset, 88px) !important; }

    .reify-mobile-contact { display: none; }

    .reify-mobile-contact[hidden] { display: none !important; }

    @media (max-width: 768px) {

      body.reify-sticky-enabled {

        padding-bottom: calc(76px + env(safe-area-inset-bottom, 0px));

      }

      

      .reify-mobile-contact {

        position: fixed;

        left: 12px;

        right: 12px;

        bottom: calc(12px + env(safe-area-inset-bottom, 0px));

        z-index: 90;

        display: flex;

        align-items: center;

        gap: 6px;

        padding: 5px;

        border-radius: 999px;

        background: linear-gradient(180deg, rgba(255, 250, 242, .16) 0%, rgba(255, 250, 242, .08) 100%);

        -webkit-backdrop-filter: blur(22px) saturate(170%) brightness(1.05);

        backdrop-filter: blur(22px) saturate(170%) brightness(1.05);

        border: 1px solid rgba(255, 250, 242, .22);

        box-shadow: inset 0 1px 0 rgba(255, 255, 255, .18), 0 8px 24px rgba(0, 0, 0, .18);

        font-family: var(--font-body, inherit);

        animation: reifyDockIn .5s cubic-bezier(.2, .8, .2, 1) both;

      }

      .reify-mobile-contact__link {

        position: relative;

        flex: none;

        width: 44px;

        height: 44px;

        display: inline-flex;

        align-items: center;

        justify-content: center;

        border-radius: 50%;

        border: 0;

        background: #34342f;

        box-shadow: inset 0 0 0 1px rgba(255, 250, 242, .35);

        color: #fffaf2;

        text-decoration: none;

        -webkit-tap-highlight-color: transparent;

        transition: background-color .2s ease, border-color .2s ease, transform .15s ease;

      }

      .reify-mobile-contact__link:active { transform: scale(.96); }

      /* WhatsApp and Call show as icons; their labels stay for screen readers. */

      .reify-mobile-contact__link span {

        position: absolute;

        width: 1px;

        height: 1px;

        overflow: hidden;

        clip: rect(0 0 0 0);

        white-space: nowrap;

      }

      .reify-mobile-contact__link svg {

        width: 19px;

        height: 19px;

        flex: none;

        fill: none;

        stroke: currentColor;

        stroke-width: 1.6;

        stroke-linecap: round;

        stroke-linejoin: round;

      }

      .reify-mobile-contact__link--plan {

        flex: 1 1 auto;

        width: auto;

        gap: 8px;

        padding: 0 18px;

        border-radius: 999px;

        background: rgba(255, 250, 242, .94);

        color: #22222c;

        font-size: 14px;

        font-weight: 500;

        letter-spacing: .02em;

      }

      .reify-mobile-contact__link--plan svg { display: none; }

      .reify-mobile-contact__link--plan span {

        position: static;

        width: auto;

        height: auto;

        overflow: visible;

        clip: auto;

      }

      .reify-mobile-contact__link--plan::after {

        content: "";

        width: 14px;

        height: 14px;

        background: #bf6438;

        -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat;

        mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat;

        transition: transform .2s ease;

      }

      .reify-mobile-contact__link--plan:active::after { transform: translateX(3px); }

      .reify-mobile-contact__link:focus-visible {

        outline: 2px solid #bf6438;

        outline-offset: 3px;

      }

      @keyframes reifyDockIn {

        from { opacity: 0; transform: translateY(18px); }

        to { opacity: 1; transform: none; }

      }

      @media (prefers-reduced-motion: reduce) {

        .reify-mobile-contact { animation: none; }

        .reify-mobile-contact__link,

        .reify-mobile-contact__link--plan::after { transition: none; }

      }

    }
