:root { --primary: #FBBF24; --secondary: #2563EB; --text: #374151; --light: #F9FAFB; }
* { margin:0; padding:0; box-sizing:border-box; font-family:'Inter', sans-serif; }
body { background:#fff; color:var(--text); line-height:1.6; padding-top:70px; }
header { background:rgba(255,255,255,0.95); backdrop-filter:blur(10px); padding:15px 5%; display:grid; grid-template-columns: 200px 1fr 200px; align-items:center; position:fixed; width:100%; top:0; z-index:1000; border-bottom:1px solid #eee; }
.logo { text-decoration:none; color:#000; display:flex; align-items:center; font-weight:800; font-size:20px; justify-self: start; }
nav { justify-self: center; display: flex; align-items: center; }
nav a { text-decoration:none; color:var(--text); margin:0 15px; font-weight:600; font-size:14px; white-space: nowrap; }
.lang-switch { justify-self: end; display: inline-flex; gap: 8px; font-weight: 800; font-size: 12px; color: #2563EB; white-space: nowrap; }

.hero { background:linear-gradient(135deg, #FBBF24 0%, #F59E0B 100%); padding:100px 10% 120px; text-align:center; clip-path: ellipse(150% 100% at 50% 0%); }
.hero h1 { font-size:clamp(32px, 5vw, 56px); font-weight:800; margin-bottom:20px; color: #000; }
.hero p { font-size: 18px; font-weight: 500; color: #333; margin-bottom: 30px; }

.section { padding:80px 10%; }
.alt-bg { background:var(--light); }
.section-title { text-align:center; margin-bottom:40px; font-size:32px; font-weight:800; }

.grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(260px, 1fr)); gap:30px; }
.card { background:#fff; padding:40px; border-radius:20px; box-shadow:0 10px 15px rgba(0,0,0,0.05); text-align:center; transition:0.3s; }
.card:hover { transform: translateY(-10px); }
.card i { font-size:40px; color:var(--secondary); margin-bottom:20px; display:block; }
.card h3 { font-size: 20px; font-weight: 700; margin-bottom: 10px; }

.support-grid { max-width:950px; margin:0 auto; }
.faq-container { 
    max-width: 950px; 
    margin: 0 auto; 
    max-height: 550px; 
    overflow-y: auto; 
    padding: 15px;
    background: #f8fafc;
    border-radius: 16px;
    border: 1px solid #e2e8f0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.cat-title { margin:40px 0 20px; font-weight:800; font-size:20px; color:var(--secondary); border-left:5px solid var(--primary); padding-left:15px; }
.item-box { background:#fff; border-radius:12px; border:1px solid #f0f0f0; overflow:hidden; flex-shrink: 0; }
.item-header { padding:18px 25px; cursor:pointer; display:flex; justify-content:space-between; align-items:center; font-weight:700; font-size:15px; transition: 0.3s; }
.item-header:hover { background: #fffbeb; }
.item-content { max-height:0; overflow:hidden; transition:0.3s ease-out; background:#fafafa; }
.item-box.active .item-content { max-height:2000px; padding:15px 25px 25px; border-top:1px solid #f0f0f0; }

.doc-list { list-style:none; }
.doc-list li { padding:10px 0; border-bottom:1px solid #eee; }
.doc-list a { text-decoration:none; color:var(--secondary); font-size:14px; font-weight:600; display:block; }
.doc-list a:hover { color: var(--primary); }

.registration { max-width:600px; margin:40px auto; background:#fff; padding:40px; border-radius:24px; box-shadow:0 20px 25px rgba(0,0,0,0.1); width: 90%; }
input { width:100%; padding:15px; border:1px solid #ddd; border-radius:12px; margin-bottom:20px; font-size:16px; display: block; }
.btn-primary { background:var(--secondary); color:#fff; border:none; border-radius:12px; font-weight:700; cursor:pointer; font-size:16px; padding: 16px 40px; display: inline-block; text-decoration: none; }

footer { background:#111827; color:#fff; padding:60px 10%; text-align:center; }
@media (max-width: 768px) { nav { display:none; } .hero h1 { font-size: 32px; } }
