/* Contact page — scoped helpers (Tailwind CDN with preflight off) */

.hk-contact .material-symbols-outlined {
    font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
    display: inline-block;
    vertical-align: middle;
}

.hk-contact-icon-sm {
    font-size: 14px !important;
}

.hk-contact-icon-md {
    font-size: 18px !important;
}

.hk-contact-icon-lg {
    font-size: 32px !important;
}

.hk-contact-shadow {
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.04);
}

.hk-contact-focus:focus {
    box-shadow: 0 0 0 2px rgba(157, 67, 0, 0.2);
    border-color: #9d4300;
}

.hk-contact-glass {
    backdrop-filter: blur(8px);
    background: rgba(255, 255, 255, 0.85);
}

.hk-contact a.no-underline,
.hk-contact a.no-underline:hover {
    text-decoration: none;
}

.hk-contact-alert {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 16px 18px;
    border-radius: 0.75rem;
    font-family: Inter, sans-serif;
    font-size: 0.95rem;
    line-height: 1.5;
}

.hk-contact-alert--success {
    background: #e8f8ef;
    color: #0f5132;
    border: 1px solid #a3e4bf;
}

.hk-contact-alert--error {
    background: #ffdad6;
    color: #93000a;
    border: 1px solid #ffb4ab;
}

.hk-contact-spin {
    animation: hk-contact-spin 1s linear infinite;
}

@keyframes hk-contact-spin {
    to { transform: rotate(360deg); }
}

body.hk-contact-page {
    overflow-x: hidden;
}

@media (max-width: 767px) {
    .hk-contact .py-section-padding {
        padding-top: 48px;
        padding-bottom: 48px;
    }
}
