:root {
    --primary-color: #26A9E0;
    --secondary-color: #FFFFFF;
    --text-dark: #333333;
    --text-light: #ffffff;
    --background-light: #f8f9fa; /* A slightly off-white for light sections */
    --background-dark: #26A9E0; /* Primary color as dark background */
    --border-color: #e0e0e0;
    --button-login: #EA7C07; /* Specific color for login button if used */
}

/* Base styles for the page content */
.page-promotions {
    font-family: Arial, sans-serif;
    line-height: 1.6;
    color: var(--text-dark); /* Default text color for light backgrounds */
    background-color: var(--secondary-color); /* Matches body background */
}

.page-promotions__container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
    box-sizing: border-box;
}

/* Sections */
.page-promotions__hero-section,
.page-promotions__intro-section,
.page-promotions__types-section,
.page-promotions__guide-section,
.page-promotions__terms-section,
.page-promotions__faq-section,
.page-promotions__cta-final-section {
    padding: 80px 0;
    text-align: center;
}

.page-promotions__light-bg {
    background-color: var(--background-light);
    color: var(--text-dark);
}

.page-promotions__dark-bg {
    background-color: var(--background-dark);
    color: var(--text-light);
}

.page-promotions__dark-bg .page-promotions__section-title,
.page-promotions__dark-bg .page-promotions__text-block,
.page-promotions__dark-bg .page-promotions__highlight {
    color: var(--text-light);
}

.page-promotions__section-title {
    font-size: 36px;
    font-weight: bold;
    margin-bottom: 20px;
    color: var(--primary-color);
}

.page-promotions__dark-bg .page-promotions__section-title {
    color: var(--text-light);
}

.page-promotions__text-block {
    font-size: 18px;
    margin-bottom: 30px;
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
}

.page-promotions__highlight {
    font-weight: bold;
    color: var(--primary-color);
}
.page-promotions__dark-bg .page-promotions__highlight {
    color: var(--text-light); /* Ensure highlight text is visible on dark background */
}

/* Buttons */
.page-promotions__cta-button,
.page-promotions__btn-primary,
.page-promotions__btn-secondary {
    display: inline-block;
    padding: 15px 40px;
    border-radius: 8px;
    font-size: 18px;
    font-weight: bold;
    text-decoration: none;
    transition: all 0.3s ease;
    cursor: pointer;
    text-align: center;
    max-width: 100%; /* For mobile responsiveness */
    box-sizing: border-box; /* For mobile responsiveness */
    white-space: normal; /* For mobile responsiveness */
    word-wrap: break-word; /* For mobile responsiveness */
}

.page-promotions__cta-button {
    background: var(--button-login); /* Use specific login color for main CTA */
    color: var(--text-light);
    border: 2px solid var(--button-login);
    margin-top: 30px;
}
.page-promotions__cta-button:hover {
    background: #c76500; /* Darken by approx 10% */
    border-color: #c76500;
    transform: translateY(-2px);
    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.2);
}

.page-promotions__btn-primary {
    background: var(--primary-color);
    color: var(--text-light);
    border: 2px solid var(--primary-color);
    margin: 10px;
}
.page-promotions__btn-primary:hover {
    background: #1f88b5; /* Darken by approx 10% */
    border-color: #1f88b5;
    transform: translateY(-2px);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
}

.page-promotions__btn-secondary {
    background: transparent;
    color: var(--primary-color);
    border: 2px solid var(--primary-color);
    margin: 10px;
}
.page-promotions__btn-secondary:hover {
    background: var(--primary-color);
    color: var(--text-light);
    transform: translateY(-2px);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
}

.page-promotions__dark-bg .page-promotions__btn-secondary {
    color: var(--text-light);
    border-color: var(--text-light);
}
.page-promotions__dark-bg .page-promotions__btn-secondary:hover {
    background: var(--text-light);
    color: var(--primary-color);
}