﻿/* ===================================================== */
/* 1. GLOBAL & LAYOUT (from Login Page)                  */
/* ===================================================== */
body {
    background-color: #f8f9fa;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    margin: 0;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    line-height: 1.6;
    color: #333;
}

/* Login Card (used on login page) */
.login-container {
    max-width: 400px;
    margin: 2rem auto; /* Add margin to push from banner */
    padding: 2rem;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.08);
}

/* Privacy Policy Card (wider, used on privacy page) */
.policy-card {
    max-width: 900px;
    margin: 2rem auto;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    padding: 2.5rem;
    flex: 1;
}

/* ===================================================== */
/* 2. BANNER (from Login Page)                           */
/* ===================================================== */
.cookie-banner {
    background-color: #0033a0;
    color: #fff;
    text-align: center;
    padding: 0.75rem 1rem;
    font-size: 0.9rem;
    font-weight: 500;
}
.cookie-banner a {
    color: #a8d0ff;
    text-decoration: underline;
}

/* Empty blue banner version (for privacy page if no text) */
.top-banner {
    background-color: #0033a0;
    height: 2.5rem;
    width: 100%;
}

/* ===================================================== */
/* 3. FOOTER (from Login Page – fully preserved)         */
/* ===================================================== */
.footer-sub {
    background-color: #fff;
    border-top: 1px solid #dee2e6;
    padding: 2rem 1rem;
    margin-top: auto;
    font-size: 0.9rem;
    color: #555;
}
.footer-sub h2 {
    font-size: 1.25rem;
    color: #333;
    margin-bottom: 0.5rem;
    text-transform: uppercase;
}
.footer-sub p {
    color: #555;
    margin: 0;
    font-size: 0.95rem;
}
.footer-sub a {
    color: #0062cc;
    text-decoration: none;
}
.footer-sub a:hover {
    text-decoration: underline;
}
.footer-logo img {
    max-width: 120px;
}
.footer-privacy {
    margin-top: 1.5rem;
    font-size: 0.85rem;
    color: #6c757d;
}

/* Mobile footer fix */
@media (max-width: 767px) {
    .footer-sub .row > div {
        text-align: center;
        margin-bottom: 1.5rem;
    }
    .policy-card {
        margin: 1rem;
        padding: 1.5rem;
    }
}

/* ===================================================== */
/* 4. PRIVACY PAGE SPECIFIC STYLES (non-conflicting)     */
/* ===================================================== */
.policy-title {
    color: #0033a0;
    font-weight: 700;
}

.section-title {
    color: #0033a0;
    border-bottom: 2px solid #e9ecef;
    padding-bottom: 0.5rem;
    margin-top: 2.5rem;
    margin-bottom: 1rem;
    font-weight: 600;
}

/* Table of Contents – no links */
.toc {
    background-color: #f8f9fa;
    padding: 1.5rem;
    border-radius: 8px;
    margin-bottom: 2rem;
    font-size: 0.95rem;
}
.toc li {
    margin-bottom: 0.35rem;
    color: #333;
    font-weight: 500;
}

/* Card grid for rights */
.card.h-100 {
    transition: transform 0.2s;
}
.card.h-100:hover {
    transform: translateY(-2px);
}




  /* ONE TRUST – REAL ACTION BUTTONS (Blue, Full Width) */
    #onetrust-accept-btn-handler,
    #onetrust-reject-all-handler,
    #onetrust-pc-btn-handler,
    .ot-pc-refuse-all-handler,
    .save-preference-btn-handler {
        background-color: #007bff !important;   /* Primary blue */
        color: #fff !important;
        border: none !important;
        border-radius: 6px !important;
        padding: 0.5rem 1rem !important;
        font-size: 0.9rem !important;
        font-weight: 500 !important;
        transition: background-color 0.2s ease !important;
        min-height: 38px !important;
        width: auto !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    /* Hover for action buttons */
    #onetrust-accept-btn-handler:hover,
    #onetrust-reject-all-handler:hover,
    #onetrust-pc-btn-handler:hover,
    .ot-pc-refuse-all-handler:hover,
    .save-preference-btn-handler:hover {
        background-color: #0056b3 !important;
    }

    /* CLOSE (X) BUTTON – Only when it's NOT the save button */
    .onetrust-close-btn-handler:not(.save-preference-btn-handler) {
        background-color: rgba(255, 255, 255, 0.2) !important;
        color: #fff !important;
        width: 32px !important;
        height: 32px !important;
        border-radius: 50% !important;
        font-size: 1.3rem !important;
        line-height: 1 !important;
        padding: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }
    .onetrust-close-btn-handler:not(.save-preference-btn-handler):hover {
        background-color: rgba(255, 255, 255, 0.4) !important;
    }

    /* Footer Logo */
    .ot-pc-footer-logo img {
        height: 24px !important;
    }

    /* ACCORDION TOGGLE BUTTON: Transparent */
    .ot-accordion-layout button[ot-accordion="true"],
    .ot-accordion-layout button[aria-expanded] {
        background-color: transparent !important;
        background-image: none !important;
        border: none !important;
        outline: none !important;
        box-shadow: none !important;
        appearance: none !important;
        -webkit-appearance: none !important;
        opacity: 1 !important;
        transition: none !important;
    }
    .ot-accordion-layout button[ot-accordion="true"]:hover,
    .ot-accordion-layout button[aria-expanded]:hover {
        background-color: transparent !important;
        opacity: 1 !important;
    }
    .ot-accordion-layout button[ot-accordion="true"]::before,
    .ot-accordion-layout button[ot-accordion="true"]::after,
    .ot-accordion-layout button[aria-expanded]::before,
    .ot-accordion-layout button[aria-expanded]::after {
        content: none !important;
        display: none !important;
    }