:root {
    --bg-main: #0B001A;
    --bg-surface: #1E0342;
    --brand-pink: #E11D48;
    --text-lavender: #E0AAFF;
    --warning-bg: #FEF3C7;
    --warning-text: #78350F;
    --error-color: #EF4444;
}

* { box-sizing: border-box; margin: 0; padding: 0; font-family: sans-serif; }
body { background-color: var(--bg-main); color: #F3E8FF; }

.main-header { background-color: var(--bg-surface); border-bottom: 2px solid var(--brand-pink); }
.header-container { max-width: 1200px; margin: 0 auto; display: flex; justify-content: space-between; align-items: center; padding: 1.2rem 2rem; }
.logo-text { font-size: 1.6rem; font-weight: 900; color: #FFF; text-decoration: none; }
.logo-link { text-decoration: none; }
.logo-highlight { color: var(--brand-pink); }
.main-nav .nav-link { color: var(--text-lavender); text-decoration: none; margin-right: 1.5rem; font-weight: bold; }
.main-nav .nav-link.active { color: #FFF; }
.btn-cta-header { border: 2px solid var(--brand-pink); color: var(--brand-pink); padding: 0.5rem 1.2rem; text-decoration: none; font-weight: bold; border-radius: 4px; }

.ads-disclaimer-banner { background-color: var(--warning-bg); color: var(--warning-text); padding: 1.2rem; }
.disclaimer-container { max-width: 1200px; margin: 0 auto; display: flex; gap: 1rem; font-size: 0.88rem; font-weight: 600; }

.contact-main { padding: 6.5rem 2rem; }
.contact-container { max-width: 1200px; margin: 0 auto; }
.contact-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 5rem; }
.contact-details h1 { font-size: 2.6rem; margin-bottom: 1.5rem; color: var(--brand-pink); font-weight: 800; }
.contact-details p { color: #D8B4FE; line-height: 1.7; font-size: 1.1rem; }
.info-block { margin-top: 2.5rem; background-color: var(--bg-surface); padding: 1.8rem; border-radius: 6px; border-left: 4px solid var(--text-lavender); }
.info-block h3 { color: #FFF; font-size: 1.2rem; margin-bottom: 0.5rem; }

.form-card-wrapper { background-color: var(--bg-surface); padding: 3.5rem; border-radius: 12px; border: 1px solid rgba(225, 29, 72, 0.25); box-shadow: 0 20px 45px rgba(0,0,0,0.5); }
.form-group { margin-bottom: 1.8rem; }
.form-group label { display: block; margin-bottom: 0.6rem; font-size: 0.95rem; font-weight: 600; }
.form-group input, .form-group textarea { width: 100%; padding: 0.9rem; background-color: var(--bg-main); border: 1px solid #5B21B6; color: #FFF; border-radius: 4px; font-size: 1.05rem; }
.form-group input:focus, .form-group textarea:focus { outline: none; border-color: var(--brand-pink); }
.error-text { color: var(--error-color); font-size: 0.85rem; display: none; margin-top: 0.5rem; font-weight: 600; }
.btn-submit { background-color: var(--brand-pink); color: #FFF; width: 100%; padding: 1.1rem; border: none; font-weight: 800; border-radius: 4px; cursor: pointer; font-size: 1.1rem; transition: background-color 0.2s; }
.btn-submit:hover { background-color: #BE123C; }

.main-footer { background-color: #05000E; padding: 5.5rem 2rem 2.5rem; margin-top: 6rem; }
.footer-top-container { max-width: 1200px; margin: 0 auto; display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 4rem; }
.footer-logo { font-size: 1.6rem; font-weight: 900; }
.footer-brand-desc { color: #7C3AED; font-size: 0.95rem; }
.footer-links-column h4 { color: var(--brand-pink); margin-bottom: 1.5rem; }
.footer-links-column ul { list-style: none; }
.footer-links-column ul li a { color: var(--text-lavender); text-decoration: none; font-size: 0.98rem; }
.footer-disclaimer-box { max-width: 1200px; margin: 3rem auto; padding: 1.8rem; background-color: rgba(255,255,255,0.02); font-size: 0.85rem; text-align: justify; }
.footer-bottom-container { max-width: 1200px; margin: 0 auto; text-align: center; border-top: 1px solid #1E0342; padding-top: 2rem; font-size: 0.9rem; color: #5B21B6; }

@media(max-width: 768px) { .contact-grid { grid-template-columns: 1fr; } .footer-top-container { grid-template-columns: 1fr; } }