/* polytical.club */
* { margin: 0; padding: 0; box-sizing: border-box; }
body { background: #0f172a; color: #f1f5f9; font-family: 'Lato', sans-serif; font-weight: 300; line-height: 1.7; }

@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(12px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes goldGlow {
  0% { text-shadow: 0 0 0 rgba(245, 208, 96, 0); }
  50% { text-shadow: 0 0 10px rgba(245, 208, 96, 0.3); }
  100% { text-shadow: 0 0 0 rgba(245, 208, 96, 0); }
}

.gates { text-align: center; padding: 6rem 2rem; }
.gold-frame { display: inline-block; border: 1px solid rgba(212, 160, 23, 0.5); padding: 4rem 5rem; position: relative; }
.corner { position: absolute; width: 20px; height: 20px; }
.corner-tl { top: -1px; left: -1px; border-left: 2px solid #d4a017; border-top: 2px solid #d4a017; }
.corner-tr { top: -1px; right: -1px; border-right: 2px solid #d4a017; border-top: 2px solid #d4a017; }
.corner-bl { bottom: -1px; left: -1px; border-left: 2px solid #d4a017; border-bottom: 2px solid #d4a017; }
.corner-br { bottom: -1px; right: -1px; border-right: 2px solid #d4a017; border-bottom: 2px solid #d4a017; }
.crown { width: 0; height: 0; border-left: 12px solid transparent; border-right: 12px solid transparent; border-bottom: 16px solid #d4a017; margin: 0 auto 1rem; }
.brand { font-family: 'Cormorant', serif; font-weight: 400; font-size: clamp(2rem, 4vw, 3rem); letter-spacing: 0.1em; }
.est { font-family: 'Inter', sans-serif; font-size: 0.55rem; letter-spacing: 0.2em; color: #f5d060; display: block; margin-top: 0.5rem; text-transform: uppercase; }
.members-only { font-family: 'Inter', sans-serif; font-size: 0.6rem; letter-spacing: 0.15em; color: #94a3b8; margin-top: 1rem; text-transform: uppercase; }
.chevron-divider { height: 40px; background: repeating-linear-gradient(135deg, transparent, transparent 10px, rgba(212, 160, 23, 0.1) 10px, rgba(212, 160, 23, 0.1) 20px); }
.hall { max-width: 600px; margin: 0 auto; padding: 4rem 2rem; display: flex; flex-direction: column; gap: 2rem; }
.panel { background: #1e293b; border: 1px solid rgba(212, 160, 23, 0.5); padding: 2rem; position: relative; }
.panel .corner { width: 16px; height: 16px; }
.panel-title { font-family: 'Cormorant', serif; font-weight: 400; font-size: 1.4rem; letter-spacing: 0.05em; color: #d4a017; margin-bottom: 0.8rem; }
.panel-body { font-size: 0.85rem; color: #94a3b8; }
.members { max-width: 600px; margin: 0 auto; padding: 4rem 2rem; text-align: center; }
.section-title { font-family: 'Cormorant', serif; font-weight: 400; font-size: 1.6rem; letter-spacing: 0.08em; color: #d4a017; margin-bottom: 2rem; }
.member-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 2rem; }
.member { text-align: center; }
.member-frame { width: 80px; height: 80px; border-radius: 50%; border: 2px solid #f5d060; margin: 0 auto 0.8rem; background: #1e293b; }
.member-name { font-family: 'Cormorant', serif; font-size: 1rem; letter-spacing: 0.03em; }
.member-role { font-family: 'Inter', sans-serif; font-size: 0.6rem; color: #94a3b8; letter-spacing: 0.1em; text-transform: uppercase; }
.fan-divider { text-align: center; padding: 2rem 0; }
.fan { width: 60px; height: 30px; border-radius: 60px 60px 0 0; border: 1px solid rgba(245, 208, 96, 0.4); margin: 0 auto; position: relative; }
.fan::before { content: ''; position: absolute; bottom: 0; left: 50%; width: 1px; height: 30px; background: rgba(245, 208, 96, 0.3); }
.fan::after { content: ''; position: absolute; bottom: 0; left: 50%; width: 50px; height: 1px; background: rgba(245, 208, 96, 0.3); transform: rotate(-30deg); transform-origin: left center; }
.close { text-align: center; padding: 2rem 2rem 5rem; }
.close-text { font-family: 'Cormorant', serif; font-size: 1.1rem; color: #f5d060; letter-spacing: 0.05em; }
.fade-in { opacity: 0; transform: translateY(12px); animation: fadeInUp 0.6s ease forwards; transition: opacity 0.5s ease, transform 0.5s ease; }
.fade-in.visible { opacity: 1; transform: translateY(0); }
