/* ==========================================
   MASTER POLICY & ACCREDITATION LAYOUT
   Fixed Header Architecture
   ========================================== */

/* --- WRAPPER & TYPOGRAPHY --- */
.policy-centered-wrapper {
    background-color: #F2F0E6;
    /* 1. Add the 380px spacing here as padding instead */
    padding-top: 380px; 
    padding-bottom: 8rem;
    color: #050505;
}

.sticky-policy-header {
    position: fixed; 
    top: 0; 
    left: 0;
    width: 100%;
    z-index: 90; 
    background-color: #F2F0E6; 
    padding: 140px 5% 2rem 5%; 
    text-align: center;
    /* Changed from rgba(0,0,0,0.05) to transparent to remove the visible line */
    border-bottom: 1px solid transparent; 
}

/* The Kicker */
.policy-kicker {
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: #555555;
    display: block;
    margin-bottom: 0.5rem;
    font-weight: 600;
}

/* Main Heading */
.policy-title {
    font-size: 2.5rem;
    font-weight: 600;
    line-height: 1.1;
    letter-spacing: -0.02em;
    color: #050505;
    margin-bottom: 1rem;
}

/* Deep Red Accent Line */
.policy-accent-line {
    width: 80px;
    height: 2px;
    background-color: #8B0000;
    margin: 0 auto 1.5rem auto;
}

/* Page Navigation (Jump Links) */
.policy-nav {
    display: flex;
    justify-content: center;
    gap: 1.5rem;
    margin-top: 1.5rem;
    flex-wrap: wrap;
}

.policy-nav a {
    color: #555555;
    text-decoration: none;
    font-size: 0.9rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    transition: color 0.3s ease;
}

.policy-nav a:hover {
    color: #050505;
}

/* --- TEXT CONTENT --- */
.policy-centered-content {
    max-width: 1000px;
    /* 2. Remove the 380px top margin and just keep it centered */
    margin: 0 auto; 
    padding: 0 5%;
    position: relative;
    z-index: 10;
}

/* --- SCROLLING SECTIONS --- */
.policy-section {
    margin-bottom: 4rem;
    scroll-margin-top: 380px; 
    /* border-left and padding-left have been removed – they now live inside .policy-body */
}

/* Ensure the heading stays perfectly centered and unaffected by the line */
.policy-section h2 {
    font-size: 1.5rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #050505;
    margin-bottom: 1.5rem;
    font-weight: 600;
    text-align: center; 
}

/* --- THE NEW TEXT WRAPPER --- */
.policy-body {
    /* 2px thickness (50% thinner than the previous 4px) */
    border-left: 2px solid #8B0000; 
    padding-left: 2rem; 
}

.policy-section p {
    font-size: 1.1rem;
    line-height: 1.6;
    color: #333333;
    margin-bottom: 1.5rem;
}

/* Custom Red Bullet Points */
.policy-list {
    list-style: none;
    padding-left: 0;
    max-width: 800px;
    margin: 0 auto 1.5rem auto;
}

.policy-list li {
    font-size: 1.1rem;
    line-height: 1.6;
    color: #333333;
    margin-bottom: 1rem;
    position: relative;
    padding-left: 1.5rem;
}

.policy-list li::before {
    content: '■';
    position: absolute;
    left: 0;
    top: 0;
    color: #8B0000;
    font-size: 0.8rem;
}

/* --- SISTER SITE CTA BUTTON --- */
.policy-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.5rem 1.5rem; 
    border-radius: 50px;
    border: 2px solid #050505;
    background: #050505;
    color: #ffffff !important; /* Forces white text */
    text-decoration: none;
    font-size: 0.85rem;
    font-weight: 500;
    transition: background-color 0.3s ease, color 0.3s ease;
}

.policy-btn:hover {
    background: transparent;
    color: #050505 !important;
}

/* Button Wrapper - Adjusted to align underneath the text block */
.policy-action {
    text-align: center; 
    padding-left: 0; /* Removed the 2rem padding so it centers perfectly on the page */
    margin-top: 1.5rem;
}

/* ============================================================
   MOBILE RESPONSIVE (Policy & Disclaimer Pages)
   ============================================================ */
@media (max-width: 768px) {
    /* --- 1. Mobile Nav Layout --- */
    .main-nav .nav-container {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        width: 100%;
        padding: 1rem 1.5rem !important;
        box-sizing: border-box;
    }

    /* Hide the Logo */
    .main-nav .nav-brand {
        display: none !important;
    }

    /* Burger Menu Left (Stays Dark) */
    .main-nav .mobile-toggle {
        position: relative !important;
        top: auto !important;
        left: auto !important;
        right: auto !important;
        margin: 0 !important;
        order: 1;
        display: flex !important;
    }

    /* Force Quote Button to Show on Right */
    .main-nav .nav-actions {
        position: relative !important;
        display: block !important;
        order: 2;
    }

    /* Scale the button slightly for small screens */
    .main-nav .nav-quote-pill {
        padding: 0.6rem 1.2rem !important;
        font-size: 0.85rem !important;
    }
    
    /* --- 2. Mobile Spacing Adjustments --- */
    /* Reduce the massive top spacing on mobile so the header doesn't take up the whole screen */
    .policy-centered-wrapper {
        padding-top: 340px !important; 
    }
    
    .sticky-policy-header {
        padding: 90px 5% 1.5rem 5% !important; 
    }
    
    /* Matches the wrapper padding so anchor jump links don't cut off the headings */
    .policy-section {
        scroll-margin-top: 340px !important; 
    }
}