/* Global Settings */
body { font-family: 'Inter', sans-serif; }
html { scroll-behavior: smooth; }

/* Header Placeholder */
#header-placeholder {
    position: sticky;
    top: 0;
    z-index: 50;
}

/* Animations */
@keyframes subtle-pulse {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.03); }
}
.logo-pulse {
    animation: subtle-pulse 3s ease-in-out infinite;
}
.logo-pulse:hover {
    animation: none;
}

@keyframes ping {
    75%, 100% {
        transform: scale(2);
        opacity: 0;
    }
}
.animate-ping {
    animation: ping 1s cubic-bezier(0, 0, 0.2, 1) infinite;
}

@keyframes fadeInUp {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}
.fade-in-up {
    animation: fadeInUp 0.6s ease-out forwards;
}

/* Orange Branding & Colors */
.text-orange-500 { color: #f97316 !important; }
.text-orange-600 { color: #ea580c !important; }
.bg-orange-50 { background-color: #fff7ed !important; }
.bg-orange-100 { background-color: #ffedd5 !important; }
.bg-orange-500 { background-color: #f97316 !important; }
.bg-orange-600 { background-color: #ea580c !important; }
.border-orange-500 { border-color: #f97316 !important; }

/* Hover States */
.hover-text-orange-500:hover { color: #f97316 !important; }
.hover-text-orange-600:hover { color: #ea580c !important; }
.hover-text-orange-800:hover { color: #9a3412 !important; }
.hover-bg-orange-50:hover { background-color: #fff7ed !important; }
.hover-bg-orange-500:hover { background-color: #f97316 !important; }
.hover-bg-orange-600:hover { background-color: #ea580c !important; }
.hover-bg-orange-700:hover { background-color: #c2410c !important; }

/* Navigation */
.nav-link { font-weight: 800; text-transform: uppercase; letter-spacing: -0.025em; color: #1f2937; }
.nav-link:hover { color: #ea580c; }
.dropdown-menu { border-radius: 0.5rem; border: 1px solid #f3f4f6; box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04); }

/* Buttons */
.btn-white { background-color: #fff; border-color: #dee2e6; color: #000; }
.btn-white:hover { background-color: #f8f9fa; color: #000; }

/* Utilities */
.tracking-tight { letter-spacing: -0.025em; }
.gradient-overlay {
    background: linear-gradient(to top, rgba(0,0,0,0.9) 0%, rgba(0,0,0,0.1) 70%);
}
.gradient-bar {
    background: linear-gradient(to right, #fb923c, #ea580c);
}

/* Cards & Components */
.capability-card {
    background-size: cover;
    background-position: center;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
.capability-card:hover { transform: translateY(-10px) scale(1.02); z-index: 10; }

/* Specific Page Styles */
.partner-card { transition: transform 0.3s ease; }
.partner-card:hover { transform: translateY(-5px); }
.partner-logo {
    height: 128px; width: auto; object-fit: contain; transition: all 0.3s;
}
.partner-logo:hover { transform: scale(1.1); }

.gse-card { transition: transform 0.3s ease; }
.gse-card:hover { transform: translateY(-5px); }
.gse-icon { transition: all 0.3s; }
.gse-card:hover .gse-icon { background-color: #ea580c !important; color: white !important; }
.gse-list-item { transition: all 0.2s; cursor: default; }
.gse-list-item:hover { color: #ea580c !important; transform: translateX(5px); }

.fire-list-item { transition: all 0.2s; cursor: default; }
.fire-list-item:hover { color: #ea580c !important; transform: translateX(5px); }

.compliance-img { transition: transform 0.5s ease; }
.compliance-card:hover .compliance-img { transform: scale(1.1); }

.branch-card {
    backdrop-filter: blur(4px);
    background-color: rgba(255, 255, 255, 0.9);
    transition: all 0.3s ease;
}
.branch-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 1rem 3rem rgba(0,0,0,.175)!important;
}

.news-item { transition: transform 0.3s ease, box-shadow 0.3s ease; }
.news-item:hover { transform: translateY(-5px); box-shadow: 0 1rem 3rem rgba(0,0,0,.175)!important; }
.news-item .logo-overlay { transition: transform 0.3s ease; }
.news-item:hover .logo-overlay { transform: scale(1.1); }

/* Social Media Hub */
:root {
    --tam-navy: #002147;
    --tam-orange: #f39200;
    --tam-light-gray: #f4f7f9;
}
.tam-social-hub { padding: 60px 0; min-height: 100vh; display: flex; flex-direction: column; justify-content: center; }
.social-card { background: #ffffff; padding: 25px 15px; border-radius: 8px; text-decoration: none; color: var(--tam-navy); transition: all 0.3s ease; border-bottom: 4px solid transparent; box-shadow: 0 4px 15px rgba(0,0,0,0.05); display: flex; flex-direction: column; align-items: center; height: 100%; }
.social-card:hover { transform: translateY(-5px); border-bottom-color: var(--tam-orange); box-shadow: 0 10px 25px rgba(0,0,0,0.1); color: var(--tam-navy); }
.social-card:hover .icon-box { transform: scale(1.1); text-shadow: 0 4px 8px rgba(0,0,0,0.2); }
.icon-box { font-size: 32px; margin-bottom: 12px; color: var(--tam-navy); transition: all 0.3s ease; }
.social-card h3 { font-size: 1.1rem; margin-bottom: 0; font-weight: 700; }
.linkedin .icon-box { color: #0077b5; }
.x-twitter .icon-box { color: #000000; }
.whatsapp .icon-box { color: #25D366; }
.instagram .icon-box { color: #e1306c; }
.website .icon-box { color: var(--tam-orange); }
.profile .icon-box { color: #F40F02; }