/* Reset & Base */
* { box-sizing: border-box; }
body { margin: 0; padding: 0; font-family: 'Montserrat', sans-serif; background-color: #0d1117; color: #ffffff; }
img { max-width: 100%; display: block; }
a { text-decoration: none; color: inherit; }

/* Utilities */
.container { width: 100%; max-width: 1280px; margin: 0 auto; padding: 0 2.5rem; }
.text-center { text-align: center; }
.uppercase { text-transform: uppercase; }
.relative { position: relative; }
.flex-center { display: flex; justify-content: center; align-items: center; }

/* Colors & Gradients */
.gold-text { color: #ffd700; }
.text-amber { color: #fbbf24; } /* amber-400 equivalent */
.text-white { color: #ffffff; }

/* Buttons */
.btn-gold { 
    background: linear-gradient(180deg, #fceabb 0%, #fccd4d 50%, #f8b500 51%, #fbdf93 100%); 
    color: #1a1a1a; 
    font-weight: 800; 
    border-radius: 25px; 
    box-shadow: 0 4px 15px rgba(255, 215, 0, 0.3); 
    display: inline-block;
    transition: transform 0.2s;
    border: none;
    cursor: pointer;
}
.btn-gold:hover { transform: translateY(-2px); }

/* Header */
.site-header { padding: 1.5rem 2.5rem; display: flex; justify-content: space-between; align-items: center; max-width: 1280px; margin: 0 auto; }
.logo { font-size: 1.5rem; font-weight: 900; letter-spacing: -0.05em; text-transform: uppercase; color: #ffd700; }
.main-nav { display: none; gap: 2rem; font-size: 0.875rem; font-weight: 600; text-transform: uppercase; opacity: 0.8; }
.header-btn { padding: 0.5rem 2rem; font-size: 0.875rem; text-transform: uppercase; }

/* Hero Section */
.hero-section { background: url('banner.jpg'); background-size: cover; background-position: center; padding: 5rem 2.5rem; }
.hero-grid { display: grid; gap: 2.5rem; align-items: center; max-width: 1280px; margin: 0 auto; }
.partner-badge { 
    display: inline-block;
    background-color: rgba(251, 191, 36, 0.2); 
    color: #fbbf24; 
    border: 1px solid rgba(251, 191, 36, 0.3); 
    padding: 0.25rem 1rem; 
    border-radius: 0.375rem; 
    font-size: 0.75rem; 
    font-weight: 700; 
    text-transform: uppercase; 
}
.hero-title { font-size: 3rem; font-weight: 900; margin-top: 1.5rem; margin-bottom: 1rem; line-height: 1.2; }
.hero-description { font-size: 1.125rem; opacity: 0.8; margin-bottom: 2rem; max-width: 32rem; }
.hero-btn { padding: 1rem 3rem; font-size: 1.125rem; letter-spacing: 0.05em; text-transform: uppercase; }

/* Content Section */
.content-section { background-color: #f1f5f9; color: #1e293b; padding: 6rem 2.5rem; }
.content-grid { max-width: 1280px; margin: 0 auto; } /* Changed to allow full width text */
.content-text { width: 100%; max-width: 800px; margin: 0 auto; } /* Centered text content */
.content-title { font-size: 2.25rem; font-weight: 900; margin-bottom: 2rem; line-height: 1.2; color: #0f172a; }
.content-body { color: #475569; font-size: 1.125rem; line-height: 1.625; display: flex; flex-direction: column; gap: 1.5rem; }

/* SEO Content Styles */
.content-body h2 { color: #1e293b; font-size: 1.75rem; font-weight: 800; margin-top: 2rem; margin-bottom: 1rem; }
.content-body ul, .content-body ol { margin: 1rem 0; padding-left: 1.5rem; }
.content-body li { margin-bottom: 0.75rem; }
.content-body strong { color: #0f172a; font-weight: 700; }

/* Tables */
.content-body table { width: 100%; border-collapse: collapse; margin: 2rem 0; background-color: #ffffff; border-radius: 0.5rem; overflow: hidden; box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1); }
.content-body th, .content-body td { padding: 1rem; text-align: left; border-bottom: 1px solid #e2e8f0; }
.content-body th { background-color: #f8fafc; font-weight: 700; color: #0f172a; text-transform: uppercase; font-size: 0.875rem; letter-spacing: 0.05em; }
.content-body tr:last-child td { border-bottom: none; }
.content-body tr:hover { background-color: #f8fafc; }

/* Graphic Circle */
.graphic-wrapper { display: none; } /* Hidden for text-heavy SEO layout or move to bottom if needed */

/* Footer */
.payment-footer { background-color: #1e293b; color: #94a3b8; padding: 4rem 2.5rem; }
.footer-logo { font-size: 1.5rem; font-weight: 900; color: #fbbf24; text-transform: uppercase; margin-bottom: 3rem; letter-spacing: 0.1em; }
.payment-icons { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 2.5rem; opacity: 0.5; margin-bottom: 3rem; }
.icon { font-size: 1.5rem; font-weight: 700; }
.icon-italic { font-style: italic; }
.icon-condensed { letter-spacing: -0.05em; text-transform: uppercase; }
.icon-upper { text-transform: uppercase; }
.footer-bottom { font-size: 0.875rem; border-top: 1px solid #334155; padding-top: 2rem; opacity: 0.6; }

/* Responsive Media Queries (md = 768px) */
@media (min-width: 768px) {
    .site-header { padding: 1.5rem 2.5rem; }
    .main-nav { display: flex; }
    
    .hero-grid { grid-template-columns: repeat(2, 1fr); }
    .hero-title { font-size: 3.75rem; }
    
    /* Adjusted for full SEO text readability */
    .content-grid { display: block; } 
}
