/*
 * front-header.css
 * Styles for the front header include (includes/header.blade.php)
 * Covers: contact-popup overlay + topbar infinite ticker
 */

/* ---- Contact popup overlay ---- */
.contact-popup-overlay {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(15, 15, 15, 0.55);
    backdrop-filter: blur(2px);
    align-items: center;
    justify-content: center;
    z-index: 1000;
    padding: 16px;
}

.contact-popup-overlay.is-open {
    display: flex;
    animation: contactFadeIn .15s ease-out;
}

@keyframes contactFadeIn {
    from { opacity: 0; }
    to   { opacity: 1; }
}

.contact-popup {
    position: relative;
    background: #fff;
    border-radius: 14px;
    padding: 28px 24px 24px;
    width: 100%;
    max-width: 320px;
    text-align: center;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.25);
    animation: contactPopIn .18s cubic-bezier(.34, 1.56, .64, 1);
}

@keyframes contactPopIn {
    from { opacity: 0; transform: scale(.92) translateY(6px); }
    to   { opacity: 1; transform: scale(1) translateY(0); }
}

.contact-popup__close {
    position: absolute;
    top: 10px;
    right: 10px;
    border: none;
    background: transparent;
    cursor: pointer;
    color: #888;
    padding: 6px;
    border-radius: 8px;
    line-height: 0;
}
.contact-popup__close:hover { background: #f2f2f2; color: #222; }

.contact-popup__icon {
    width: 46px;
    height: 46px;
    margin: 0 auto 14px;
    border-radius: 50%;
    background: #eef4ff;
    color: #2563eb;
    display: flex;
    align-items: center;
    justify-content: center;
}

.contact-popup__label {
    margin: 0 0 4px;
    font-size: 12px;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: #9a9a9a;
    font-weight: 600;
}

.contact-popup__value {
    margin: 0 0 20px;
    font-size: 17px;
    font-weight: 600;
    color: #1a1a1a;
    word-break: break-word;
}

.contact-popup__actions {
    display: flex;
    gap: 10px;
}

.contact-popup__btn {
    flex: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 14px;
    border-radius: 9px;
    border: 1px solid #e2e2e2;
    background: #fff;
    color: #1a1a1a;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
    transition: background .15s ease, border-color .15s ease;
}
.contact-popup__btn:hover { background: #f7f7f7; }

.contact-popup__btn--primary {
    background: #2563eb;
    border-color: #2563eb;
    color: #fff;
}
.contact-popup__btn--primary:hover { background: #1d4ed8; }

/* ---- Topbar infinite ticker ---- */
.topbar__marquee-wrap {
    flex: 1;
    overflow: hidden;
    min-width: 0;
}

.topbar__ticker {
    overflow: hidden;
    width: 100%;
}

.topbar__ticker-track {
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
    animation: tickerScroll 30s linear infinite;
    will-change: transform;
    backface-visibility: hidden;
}

.topbar__ticker-track:hover {
    animation-play-state: paused;
}

@keyframes tickerScroll {
    0%   { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}

.topbar__ticker-item {
    font-size: 12px;
    color: rgba(255, 255, 255, .88);
    padding: 0 14px;
    letter-spacing: .02em;
}

.topbar__ticker-sep {
    font-size: 12px;
    color: rgba(255, 255, 255, .35);
    flex-shrink: 0;
}

/* Hide ticker on very small screens */
@media (max-width: 575px) {
    .topbar__marquee-wrap { display: none; }
}
