:root { --primary-color: #2563eb; --secondary-color: #059669; --accent-color: #047857; --text-muted: #94a3b8; --border-color: #374151; --card-bg: rgba(31, 41, 55, 0.8); --footer-height: 60px; --header-height: 70px; } * { margin: 0; padding: 0; box-sizing: border-box; } body { font-family: 'Montserrat', sans-serif; background-color: #1f2937; color: #e5e7eb; line-height: 1.6; position: relative; overflow-x: hidden; background-attachment: fixed; background-repeat: no-repeat; background-size: cover; background-position: center center; } body.bg-main { background-image: url('./assets/main-bg.png'); background-attachment: fixed; background-repeat: no-repeat; background-size: cover; background-position: center center; } body.bg-join { background-image: url('./assets/join-bg.png'); background-attachment: fixed; background-repeat: no-repeat; background-size: cover; background-position: center center; } body.bg-services { background-image: url('./assets/serv-bg.jpg'); background-attachment: fixed; background-repeat: no-repeat; background-size: cover; background-position: center center; } @media (max-width: 768px) { html, body { height: 100%; overflow: hidden; } .page-wrapper { height: 100%; position: relative; } header { position: fixed; top: 0; left: 0; right: 0; z-index: 1000; } .content-wrapper { padding-top: var(--header-height); height: 100%; } #how-to-join.content-section { position: fixed; top: var(--header-height); left: 0; right: 0; bottom: 0; overflow-y: auto; overflow-x: hidden; padding: 1rem; z-index: 10; background: inherit; display: flex; flex-direction: column; } .join-container { padding: 0; flex: 1; display: flex; flex-direction: column; } .join-header { margin-bottom: 1.5rem; } .server-tabs { margin-bottom: 1.5rem; width: 100%; } .server-card { margin-bottom: 1.5rem; width: 100%; } .steps-section { margin-bottom: 1.5rem; width: 100%; } .action-section { width: 100%; margin-top: auto; padding-bottom: calc(var(--footer-height) + 1rem); } .discord-button { width: 100%; padding: 1rem; font-size: 1rem; display: flex; align-items: center; justify-content: center; gap: 0.5rem; background: var(--primary-color); color: white; border-radius: 8px; text-decoration: none; border: none; cursor: pointer; } .discord-button i { font-size: 1.2rem; } body { overflow: hidden; height: 100vh; } .page-wrapper { min-height: 100vh; overflow: hidden; display: flex; flex-direction: column; } .container { height: 100%; } #how-to-join.content-section { height: auto; min-height: 100%; overflow-y: scroll; overflow-x: hidden; -webkit-overflow-scrolling: touch; padding: 1rem; display: flex; flex-direction: column; } .join-container { flex: 1; height: auto; overflow: visible; display: flex; flex-direction: column; gap: 1rem; } .server-details, .steps-section, .action-section, .server-tabs, .server-card { width: 100%; overflow: visible; } .server-card, .steps-section, .action-section { margin-bottom: 1rem; } body.bg-main, body.bg-join, body.bg-services { background-size: cover; background-position: center center; } .overlay { min-height: 100vh; } .faq-section { margin: 2rem auto; } .container { padding: 0; margin-top: var(--header-height); } .hero h1 { font-size: 2.5rem; } .hero .description { font-size: 1rem; line-height: 1.5; } .hero p { font-size: 0.9rem; } .nav-desktop { display: none; } .mobile-menu-toggle { display: flex; } .nav-mobile.active { display: block; } #map.content-section { position: fixed; top: var(--header-height); left: 0; right: 0; bottom: var(--footer-height); z-index: 1000; display: none; opacity: 0; visibility: hidden; transition: opacity 0.3s ease, visibility 0.3s; } #map.content-section.active { display: block; opacity: 1; visibility: visible; } .map-container { width: 100%; height: 100%; position: relative; top: 0; } .map-container iframe { width: 100%; height: calc(100% + 110px); border: none; display: block; position: relative; top: -47px; } .site-footer { padding: 0.6rem; } .site-footer .container { flex-direction: column; gap: 0.2rem; } .site-footer p { font-size: 0.75rem; } .site-footer a { font-size: 0.75rem; } .content-wrapper { height: calc(100vh - var(--header-height)); overflow: hidden; } #how-to-join.content-section { height: 100%; overflow-y: auto; overflow-x: hidden; -webkit-overflow-scrolling: touch; padding-bottom: calc(var(--footer-height) + 1rem); } .join-container { padding: 1rem; overflow: visible; height: auto; } .server-details, .steps-section, .action-section { overflow: hidden; } .join-container { padding: 0.75rem; max-width: 100%; margin: 0; min-height: auto; overflow: hidden; } .join-header { margin-bottom: 1.5rem; } .join-title { font-size: 1.8rem; margin-bottom: 0.375rem; } .join-subtitle { margin-bottom: 1rem; font-size: 0.9rem; } .server-tabs { margin-bottom: 1rem; width: 100%; padding: 0.375rem; } .server-tab { padding: 0.75rem 0.5rem; font-size: 0.85rem; } .tab-icon { font-size: 0.95rem; } .server-card { margin-bottom: 1rem; padding: 0.875rem; width: 100%; box-sizing: border-box; } .detail-row { gap: 0.375rem; } .detail-label { font-size: 0.8rem; } .ip-container { padding: 0.625rem; gap: 0.5rem; } .ip-container code { font-size: 0.85rem; } .copy-button { padding: 0.375rem; } .detail-value { font-size: 0.8rem; } .mod-pack-link { font-size: 0.8rem; font-weight: 700; } .steps-section { margin-bottom: 1rem; } .steps-title { font-size: 1rem; margin-bottom: 0.75rem; } .steps-grid { grid-template-columns: repeat(2, 1fr); gap: 0.625rem; } .step-item { padding: 0.75rem; width: 100%; box-sizing: border-box; } .step-icon { width: 40px; height: 40px; font-size: 1rem; margin-bottom: 0.5rem; } .step-content h4 { font-size: 0.85rem; margin-bottom: 0.25rem; } .step-content p { font-size: 0.75rem; } .action-section { margin-bottom: 1rem; } .discord-button { width: 100%; max-width: none; padding: 0.875rem 1.5rem; font-size: 0.9rem; } .rules-section { width: 100%; } .rules-section h3 { font-size: 1.3rem; margin-bottom: 0.75rem; } .rules-grid { grid-template-columns: 1fr; gap: 0.5rem; width: 100%; } .rule-item { padding: 0.875rem; flex-direction: row; align-items: flex-start; gap: 0.75rem; width: 100%; box-sizing: border-box; } .rule-item i { font-size: 1rem; margin-top: 0.2rem; flex-shrink: 0; } .rule-item span { font-size: 0.85rem; line-height: 1.4; flex: 1; } .subscription-plans { grid-template-columns: 1fr; padding: 0 1rem; } .plan-card { transform: none; } .discord-steps { gap: 1rem; } .step { gap: 0.8rem; } .step-icon { width: 40px; height: 40px; font-size: 1rem; } .cta-buttons { flex-direction: column; align-items: center; } .cta-button { width: 100%; max-width: 300px; text-align: center; } } @media (max-width: 480px) { body.bg-main { background-size: cover; background-position: center center; } .overlay { min-height: 100vh; } .faq-section { margin: 1rem auto; padding: 0 0.5rem; } .container { padding: 0.8rem; } .hero h1 { font-size: 2.8rem; } .hero .description { font-size: 1.1rem; } .hero p { font-size: 0.9rem; } .cta-buttons { width: 100%; } .cta-button { width: 100%; padding: 0.8rem 1.5rem; } .nav-mobile .nav-tab { font-size: 1rem; padding: 1rem; display: block; border-bottom: 1px solid var(--border-color); } .nav-mobile .nav-tab:last-child { border-bottom: none; } .site-footer { padding: 0.4rem; font-size: 0.7rem; } #how-to-join.content-section { padding: 0.5rem 0 1.25rem; } .join-container { padding: 0.375rem; } .join-header { margin-bottom: 0.75rem; } .join-title { font-size: 1.4rem; margin-bottom: 0.25rem; } .join-subtitle { font-size: 0.8rem; margin-bottom: 0.75rem; } .server-tabs { margin-bottom: 0.75rem; padding: 0.25rem; } .server-tab { padding: 0.5rem 0.375rem; font-size: 0.75rem; } .tab-icon { font-size: 0.85rem; } .server-card { margin-bottom: 0.75rem; padding: 0.625rem; } .detail-row { gap: 0.25rem; } .detail-label { font-size: 0.7rem; } .ip-container { padding: 0.4rem 0.5rem; gap: 0.375rem; } .ip-container code { font-size: 0.75rem; } .copy-button { padding: 0.25rem; font-size: 0.7rem; } .detail-value { font-size: 0.7rem; } .mod-pack-link { font-size: 0.7rem; font-weight: 700; } .steps-section { margin-bottom: 0.75rem; } .steps-title { font-size: 0.85rem; margin-bottom: 0.5rem; } .steps-grid { grid-template-columns: 1fr 1fr; gap: 0.375rem; } .step-item { padding: 0.5rem; } .step-icon { width: 30px; height: 30px; font-size: 0.8rem; margin-bottom: 0.375rem; } .step-content h4 { font-size: 0.75rem; margin-bottom: 0.125rem; } .step-content p { font-size: 0.65rem; line-height: 1.2; } .action-section { margin-bottom: 0.75rem; } .discord-button { padding: 0.625rem 1rem; font-size: 0.8rem; } .server-stats { grid-template-columns: 1fr; } } .overlay { height: auto; min-height: 100vh; width: 100%; position: fixed; top: 0; left: 0; z-index: -1; } .overlay::before { content: ''; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(to bottom, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.8)); z-index: -1; } body.bg-main .overlay-blur { display: block; } .overlay-blur { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0, 0, 0, 0.3); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); z-index: 0; pointer-events: none; } html, body { height: 100%; overflow: hidden; font-family: 'Montserrat', sans-serif; } .page-wrapper { min-height: 100vh; display: flex; flex-direction: column; overflow: hidden; } .content-wrapper { position: relative; height: calc(100vh - var(--header-height)); width: 100%; overflow: hidden; } .container { width: 100%; max-width: 1200px; margin: 0 auto; padding: 0 1rem; position: relative; z-index: 2; height: 100%; overflow: hidden; } .content-section { position: relative; min-height: calc(100vh - var(--header-height) - var(--footer-height)); width: 100%; overflow-y: auto; padding: 2rem 0; } .content-section.active { display: flex; flex-direction: column; justify-content: center; align-items: center; opacity: 1; animation: pageTransition 0.5s ease forwards; padding-bottom: 60px; } #home.content-section, #how-to-join.content-section, #services.content-section { height: calc(100vh - var(--header-height) - var(--footer-height)); overflow: hidden; } .hero { display: flex; flex-direction: column; justify-content: center; align-items: center; height: 100%; width: 100%; text-align: center; padding: 0 1rem; position: relative; z-index: 2; max-width: 900px; margin: 0 auto; } .hero h1 { font-size: 5rem; font-weight: bold; margin: 0 0 2rem 0; text-align: center; width: 100%; letter-spacing: 2px; text-shadow: 0 2px 10px rgba(0, 0, 0, 0.5); } .hero .description { font-size: 1.2rem; line-height: 1.6; margin-bottom: 1.5rem; color: #e5e7eb; max-width: 800px; } .hero .version-info { font-size: 1rem; color: var(--text-muted); margin-bottom: 1.5rem; } .cta-buttons { display: flex; gap: 1rem; margin-bottom: 2rem; justify-content: center; flex-wrap: wrap; } .cta-button { padding: 1rem 2rem; border-radius: 8px; text-decoration: none; font-size: 1.1rem; transition: transform 0.2s ease, background-color 0.2s ease; text-align: center; min-width: 200px; border: none; cursor: pointer; } .cta-button:hover { transform: translateY(-2px); } .cta-button.primary { background: var(--primary-color); color: #fff; } .cta-button.primary:hover { background: #1d4ed8; } .cta-button.minecraft-font { background: rgba(0, 0, 0, 0.6); color: #fff; border: 2px solid rgba(255, 255, 255, 0.1); } .cta-button.minecraft-font:hover { background: rgba(0, 0, 0, 0.8); } @media (max-width: 768px) { .hero { padding: 1rem; } .hero h1 { font-size: 2.5rem; margin-bottom: 1.5rem; } .cta-buttons { flex-direction: column; gap: 0.75rem; align-items: stretch; margin-bottom: 1.5rem; } .cta-button { width: 100%; padding: 0.875rem 1.5rem; font-size: 1rem; min-width: auto; } } .server-info { background: var(--card-bg); border-radius: 10px; padding: 2rem; margin-top: 3rem; backdrop-filter: blur(10px); box-shadow: 0 10px 30px rgba(109, 109, 109, 0.089); } .server-info h2 { text-align: center; margin-bottom: 1.5rem; color: var(--accent-color); } .server-toggle { display: flex; background: var(--card-bg); border: 1px solid var(--border-color); border-radius: 4px; margin: 15px 0; overflow: hidden; } .toggle-btn { flex: 1; padding: 12px 20px; background: transparent; color: var(--text-muted); border: none; cursor: pointer; font-weight: 500; border-right: 1px solid var(--border-color); } .toggle-btn:last-child { border-right: none; } .toggle-btn.active { background: var(--secondary-color); color: white; } .toggle-btn:hover:not(.active) { background: rgba(255, 255, 255, 0.05); } .ip-box { background: var(--card-bg); border: 1px solid var(--border-color); border-radius: 4px; padding: 1rem; display: flex; justify-content: space-between; align-items: center; margin-bottom: 1rem; } #server-ip { font-family: monospace; font-size: 1rem; letter-spacing: 1px; } .copy-btn { background: var(--primary-color); color: white; border: none; padding: 8px 16px; border-radius: 3px; cursor: pointer; font-size: 0.9rem; font-weight: 500; } .copy-btn i { margin-right: 4px; } .copy-btn:hover { background: #1e40af; } .server-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 1rem; } .stat { display: flex; align-items: center; gap: 0.5rem; background: rgba(255, 255, 255, 0.1); padding: 1rem; border-radius: 6px; transition: transform 0.3s; } .stat:hover { transform: translateY(-3px); background: rgba(255, 255, 255, 0.15); } .stat i { color: var(--accent-color); font-size: 1.5rem; } .feature-card, .social-card { background: rgba(0, 0, 0, 0.5); border-radius: 10px; padding: 2rem; transition: all 0.3s; border: 1px solid rgba(255, 255, 255, 0.1); box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2); height: 100%; display: flex; flex-direction: column; backdrop-filter: none; -webkit-backdrop-filter: none; } .feature-card:hover, .social-card:hover { transform: translateY(-10px); box-shadow: 0 15px 30px rgba(0, 0, 0, 0.3); border-color: var(--primary-color); } .feature-icon { font-size: 2.5rem; color: var(--accent-color); margin-bottom: 1rem; text-align: center; } .feature-card h3, .social-card h3 { margin-bottom: 1rem; color: var(--accent-color); text-align: center; } .features { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 2rem; margin: 2rem 0; } .features .feature-card { opacity: 0; } .server-rules { margin-top: 3rem; } .server-rules h3 { text-align: center; margin-bottom: 1.5rem; color: var(--accent-color); } .rules-container { display: grid; grid-template-columns: 1fr; gap: 0.8rem; } .rule { background: rgba(55, 65, 81, 0.5); border: 1px solid var(--border-color); border-radius: 4px; padding: 1rem; display: flex; align-items: flex-start; gap: 0.8rem; margin-bottom: 0.5rem; } .rule:hover { transform: none; border-color: rgba(255, 255, 255, 0.05); } .rule p { font-size: 0.9rem; margin: 0; } .rule-number { background: var(--secondary-color); color: white; width: 24px; height: 24px; border-radius: 3px; display: flex; align-items: center; justify-content: center; font-weight: 600; flex-shrink: 0; font-size: 0.85rem; } .subscription-plans { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 2rem; margin: 0; max-width: 900px; width: 100%; align-self: center; padding-bottom: 2rem; } .subscription-plans.single-plan { max-width: 700px; grid-template-columns: 1fr; } .plan-card { width: 100%; padding: 2rem; background: var(--card-bg); border-radius: 0.5rem; overflow-y: auto; border: none; } .plan-card:hover { transform: translateY(-5px); box-shadow: 0 12px 40px rgba(244, 114, 182, 0.3); border-color: var(--secondary-color); } .plan-card.featured { border: 2px solid var(--accent-color); box-shadow: 0 15px 40px rgba(244, 114, 182, 0.5); transform: scale(1.02); background: linear-gradient(135deg, rgba(59, 130, 246, 0.1), rgba(236, 72, 153, 0.1)); } .plan-card h3 { font-size: 2.2rem; margin-bottom: 1.5rem; color: var(--accent-color); font-family: 'TT Neoris', sans-serif; } .price { font-size: 2.5rem; font-weight: bold; margin-bottom: 1.5rem; color: white; } .price span { font-size: 1rem; opacity: 0.7; } .plan-features { list-style: none; margin-bottom: 1.5rem; text-align: left; flex-grow: 1; } .plan-features li { margin-bottom: 0.8rem; display: flex; align-items: center; gap: 0.8rem; font-size: 1rem; } .plan-features i.fa-check { color: var(--primary-color); } .plan-features i.fa-times { color: #ff5252; } .plan-button { background: linear-gradient(135deg, var(--primary-color), var(--secondary-color)); color: white; border: none; padding: 1.5rem 3rem; border-radius: 35px; font-weight: bold; cursor: pointer; transition: all 0.3s; width: 100%; font-size: 1.3rem; box-shadow: 0 4px 15px rgba(236, 72, 153, 0.4); font-family: 'TT Neoris', sans-serif; text-decoration: none; display: inline-block; text-align: center; } .plan-button:hover { background: linear-gradient(135deg, #2563eb, #db2777); transform: translateY(-3px); box-shadow: 0 6px 20px rgba(236, 72, 153, 0.6); } .price-change { animation: priceChange 0.5s ease; } @keyframes priceChange { 0% { transform: scale(1); } 50% { transform: scale(1.05); } 100% { transform: scale(1); } } .snowflake { position: absolute; background-color: #fff; border-radius: 50%; pointer-events: none; z-index: 9999; filter: blur(1px); will-change: transform; } .site-footer { background: rgb(14, 15, 29); border-top: 1px solid rgba(255, 255, 255, 0.1); padding: 0.8rem; text-align: center; color: #ffffff; position: fixed; bottom: 0; left: 0; width: 100%; z-index: 10; height: var(--footer-height); display: flex; align-items: center; justify-content: center; font-size: 0.8rem; } .site-footer .container { max-width: 1200px; margin: 0 auto; padding: 0; height: auto; overflow: visible; display: flex; flex-direction: row; justify-content: space-between; align-items: center; gap: 1rem; } .site-footer p { margin: 0; font-size: 0.8rem; } .site-footer a { color: #ffffff; text-decoration: none; font-family: 'TT Neoris', sans-serif; transition: color 0.3s ease; font-size: 0.8rem; } @media (max-width: 768px) { .site-footer { padding: 0.6rem; font-size: 0.75rem; } .site-footer .container { flex-direction: column; gap: 0.2rem; } .site-footer p { font-size: 0.75rem; } .site-footer a { font-size: 0.75rem; } } @media (max-width: 480px) { .site-footer { padding: 0.4rem; font-size: 0.7rem; } .site-footer p { font-size: 0.7rem; } .site-footer a { font-size: 0.7rem; } } @media (max-width: 992px) { .hero h1 { font-size: 3.5rem; } .subscription-plans { grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); max-width: 600px; } } @media (max-width: 768px) { .nav-desktop { display: none; } .mobile-menu-toggle { display: flex; } .nav-mobile.active { display: block; } .hero h1 { font-size: 3.5rem; margin: 0 0 1.5rem 0; } .hero .description { font-size: 1.2rem; margin: 0 auto 1.2rem; } .hero p { font-size: 1rem; margin: 0 auto 1.5rem; } .hero .version-info { font-size: 0.85rem; margin: 0 auto 1.5rem; } .cta-buttons { flex-direction: column; align-items: center; } .cta-button { width: 100%; max-width: 300px; text-align: center; } .plan-card { transform: none; } .subscription-plans { grid-template-columns: 1fr; padding: 0 1rem; max-width: 400px; gap: 1.5rem; margin: 0 auto; } .plan-card { padding: 1.2rem 1rem; } .vk-info { padding: 1.5rem; } .subscription-info { font-size: 1.1rem; margin-bottom: 1.2rem; } .vk-link { padding: 1rem 1.5rem; font-size: 1rem; } .plan-features li { font-size: 0.95rem; padding: 0.7rem 0; } .plan-button { padding: 1rem 2rem; font-size: 1rem; } #services .section-title { font-size: 2rem; margin-bottom: 2rem; } .subscription-select { font-size: 1.1rem; padding: 0.8rem 1rem; } } @media (max-width: 480px) { .container { padding: 1rem; } .hero h1 { font-size: 2.8rem; margin: 0 0 1.2rem 0; } .hero .description { font-size: 1.1rem; } .hero .version-info { font-size: 0.8rem; margin: 0 auto 1.3rem; } .section-title { font-size: 2rem; } .ip-box { flex-direction: column; gap: 1rem; } .server-stats { grid-template-columns: 1fr; } .subscription-select { font-size: 1rem; padding: 0.7rem 0.8rem; } .plan-card h3 { font-size: 1.8rem; } .subscription-plans { padding: 0 0.8rem; gap: 1rem; max-width: 320px; } .plan-card { padding: 1rem 0.8rem; } .vk-info { padding: 1.2rem; } .subscription-info { font-size: 1rem; margin-bottom: 1rem; } .vk-link { padding: 0.8rem 1.2rem; font-size: 0.9rem; } .plan-features li { font-size: 0.9rem; padding: 0.6rem 0; } .plan-button { padding: 0.8rem 1.5rem; font-size: 0.95rem; } #services .section-title { font-size: 1.8rem; margin-bottom: 1.5rem; } } .animate-on-scroll { opacity: 0; transform: translateY(30px); transition: opacity 0.8s ease, transform 0.8s ease; } .animate-on-scroll.visible { opacity: 1; transform: translateY(0); } body:not(.bg-main) { background-image: none; background-color: #444444; } .join-container { width: 100%; max-width: 1200px; margin: 0 auto; padding: 2rem; position: relative; background: none; border: none; height: auto; overflow: visible; } .join-header { text-align: center; margin-bottom: 2rem; } .join-title { font-size: 2.2rem; font-weight: 700; margin-bottom: 0.5rem; color: #f3f4f6; } .join-subtitle { font-size: 1rem; color: #9ca3af; line-height: 1.5; } .server-tabs { display: flex; gap: 1rem; background: rgba(0, 0, 0, 0.3); padding: 0.5rem; border-radius: 8px; margin-bottom: 1.5rem; } .server-tab { flex: 1; padding: 0.75rem; border: none; border-radius: 6px; background: transparent; color: #fff; cursor: pointer; transition: background-color 0.3s ease; font-size: 1.1rem; text-align: center; } .server-tab.active { background: var(--primary-color); } .server-tab:hover:not(.active) { background: rgba(255, 255, 255, 0.1); } .tab-icon { font-size: 1.1rem; } .server-card { width: 100%; margin-bottom: 1.5rem; padding: 1.5rem; background: var(--card-bg); border-radius: 0.5rem; overflow-y: auto; } .server-details { display: flex; flex-direction: column; gap: 1rem; } .detail-row { display: flex; flex-direction: column; gap: 0.5rem; } .detail-label { font-weight: 600; color: #f3f4f6; font-size: 0.9rem; } .ip-container { display: flex; align-items: center; background: rgba(17, 24, 39, 0.6); border: 1px solid rgba(59, 130, 246, 0.3); border-radius: 8px; padding: 0.75rem; gap: 0.75rem; } .ip-container code { color: #60a5fa; font-family: 'Courier New', monospace; font-weight: 600; flex: 1; } .copy-button { background: rgba(59, 130, 246, 0.2); border: none; color: #60a5fa; padding: 0.5rem; border-radius: 6px; cursor: pointer; transition: all 0.3s ease; display: flex; align-items: center; justify-content: center; } .copy-button:hover { background: rgba(59, 130, 246, 0.3); transform: scale(1.05); } .detail-value { color: #9ca3af; font-size: 0.9rem; line-height: 1.4; } .mod-pack-link { color: #60a5fa; text-decoration: none; font-weight: 600; border-bottom: 1px dotted #60a5fa; transition: all 0.3s ease; } .mod-pack-link:hover { color: #93c5fd; border-bottom-color: #93c5fd; text-shadow: 0 0 8px rgba(96, 165, 250, 0.5); } .steps-section { margin-bottom: 1.5rem; } .steps-title { font-size: 1.2rem; font-weight: 600; color: #f3f4f6; margin-bottom: 1rem; text-align: center; } .steps-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 1rem; } .step-item { background: rgba(31, 41, 55, 0.6); border: 1px solid rgba(59, 130, 246, 0.2); border-radius: 10px; padding: 1rem; text-align: center; transition: all 0.3s ease; } .step-item:hover { transform: translateY(-2px); border-color: rgba(59, 130, 246, 0.4); } .step-icon { width: 50px; height: 50px; background: linear-gradient(135deg, #3b82f6, #1e40af); border-radius: 50%; display: flex; align-items: center; justify-content: center; margin: 0 auto 0.75rem; color: white; font-size: 1.2rem; } .step-content h4 { font-size: 1rem; margin-bottom: 0.25rem; color: #f3f4f6; } .step-content p { color: #9ca3af; font-size: 0.85rem; line-height: 1.4; } .action-section { text-align: center; margin-bottom: 1.5rem; } .discord-button { display: inline-flex; align-items: center; gap: 0.75rem; background: linear-gradient(135deg, #5865f2, #4752c4); color: white; padding: 1rem 2rem; border-radius: 12px; text-decoration: none; font-weight: 600; font-size: 1rem; transition: all 0.3s ease; border: none; cursor: pointer; } .discord-button:hover { transform: translateY(-2px); box-shadow: 0 8px 25px rgba(88, 101, 242, 0.3); } .rules-preview { background: rgba(31, 41, 55, 0.6); border: 1px solid rgba(59, 130, 246, 0.2); border-radius: 12px; padding: 1.5rem; } .rules-title { font-size: 1.1rem; font-weight: 600; color: #f3f4f6; margin-bottom: 1rem; text-align: center; } .rules-list { display: grid; gap: 0.75rem; } .rule-preview { display: flex; align-items: center; gap: 0.75rem; padding: 0.75rem; background: rgba(17, 24, 39, 0.4); border-radius: 8px; border: 1px solid rgba(59, 130, 246, 0.1); transition: all 0.3s ease; } .rule-preview:hover { border-color: rgba(59, 130, 246, 0.3); transform: translateX(5px); } .rule-preview i { color: #60a5fa; font-size: 1.1rem; min-width: 20px; } .rule-preview span { color: #e5e7eb; font-size: 0.9rem; } @media (max-width: 360px) { .container { padding: 0; } .hero h1 { font-size: 1.8rem; } .join-container { padding: 0.75rem; } .join-title { font-size: 1.6rem; margin-bottom: 0.5rem; } .join-subtitle { font-size: 0.85rem; margin-bottom: 1rem; } .server-tabs { margin-bottom: 1rem; padding: 0.375rem; } .server-tab { padding: 0.75rem; font-size: 0.85rem; } .tab-icon { font-size: 0.95rem; } .server-card { padding: 0.875rem; margin-bottom: 1rem; } .detail-row { gap: 0.375rem; } .detail-label { font-size: 0.8rem; } .ip-container { padding: 0.625rem; gap: 0.5rem; } .ip-container code { font-size: 0.8rem; } .copy-button { padding: 0.375rem; } .detail-value { font-size: 0.75rem; } .steps-section { margin-bottom: 1rem; } .steps-title { font-size: 1rem; margin-bottom: 0.75rem; } .steps-grid { gap: 0.75rem; } .step-item { padding: 0.875rem; } .step-icon { width: 40px; height: 40px; font-size: 1rem; margin-bottom: 0.5rem; } .step-content h4 { font-size: 0.9rem; margin-bottom: 0.25rem; } .step-content p { font-size: 0.75rem; line-height: 1.3; } .action-section { margin-bottom: 1rem; } .discord-button { padding: 0.875rem 1.5rem; font-size: 0.9rem; } .rules-preview { padding: 0.875rem; } .rules-title { font-size: 1rem; margin-bottom: 0.75rem; } .rules-list { gap: 0.625rem; } .rule-preview { padding: 0.625rem; gap: 0.625rem; } .rule-preview i { font-size: 0.95rem; min-width: 18px; } .rule-preview span { font-size: 0.8rem; line-height: 1.3; } } .join-container::-webkit-scrollbar { width: 6px; } .join-container::-webkit-scrollbar-track { background: rgba(0, 0, 0, 0.2); border-radius: 3px; } .join-container::-webkit-scrollbar-thumb { background-color: rgba(33, 150, 243, 0.5); border-radius: 3px; } .discord-application { display: flex; justify-content: center; align-items: flex-start; } .discord-card { width: 100%; padding: 2rem; background: none; border: none; overflow-y: auto; } .discord-logo { font-size: 2.5rem; color: #7289DA; margin-bottom: 0.8rem; } .discord-logo i { filter: drop-shadow(0 0 8px rgba(114, 137, 218, 0.7)); } .discord-card h3 { font-size: 1.5rem; color: #ffffff; margin-bottom: 0.8rem; } .discord-card > p { color: rgba(255, 255, 255, 0.8); margin-bottom: 1.5rem; font-size: 1rem; } .discord-steps { display: flex; flex-direction: column; gap: 0.8rem; margin: 1.2rem 0; } .step { display: flex; align-items: center; gap: 0.7rem; text-align: left; } .step-icon { width: 36px; height: 36px; background: rgba(114, 137, 218, 0.2); border-radius: 50%; display: flex; justify-content: center; align-items: center; color: #7289DA; font-size: 1.1rem; flex-shrink: 0; } .step-content h4 { font-size: 1rem; margin-bottom: 0.2rem; color: #7289DA; } .step-content p { color: rgba(255, 255, 255, 0.9); font-size: 0.9rem; } .discord-button { background: #7289DA; color: #ffffff; text-decoration: none; padding: 0.8rem 1.5rem; border-radius: 8px; font-weight: bold; display: inline-block; transition: none; font-size: 1rem; box-shadow: 0 4px 15px rgba(114, 137, 218, 0.5); } .discord-button:hover { background: #7289DA; transform: none; box-shadow: 0 4px 15px rgba(114, 137, 218, 0.5); } .discord-button i { margin-right: 8px; font-size: 1.3rem; vertical-align: middle; } .server-details { display: flex; flex-direction: column; gap: 1.2rem; height: 100%; } .server-info-card, .server-rules-card { background: var(--card-bg); border: 1px solid var(--border-color); border-radius: 6px; padding: 1.5rem; font-size: 0.95rem; flex: 1; } .server-info-card h3, .server-rules-card h3 { margin-bottom: 1.2rem; color: var(--accent-color); text-align: center; font-size: 1.3rem; } .versions-info { margin-top: 1.2rem; text-align: center; padding: 0.7rem; background: rgba(0, 0, 0, 0.3); border-radius: 6px; font-family: monospace; color: #4CAF50; font-size: 0.9rem; } @media (max-width: 992px) { .join-container { grid-template-columns: 1fr; } } @media (max-width: 768px) { .discord-steps { gap: 1rem; } .step { gap: 0.8rem; } .step-icon { width: 40px; height: 40px; font-size: 1rem; } } @media (max-width: 480px) { .step { flex-direction: column; text-align: center; } .step-content { text-align: center; } } body.bg-join .join-container { position: relative; z-index: 1; } body.bg-join .overlay-blur { content: ''; position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0, 0, 0, 0.5); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); z-index: -1; } body.bg-join .discord-card, body.bg-join .server-info-card, body.bg-join .server-rules-card { background: rgba(51, 51, 77, 0.7); border: 1px solid rgba(114, 137, 218, 0.4); box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3); backdrop-filter: none; -webkit-backdrop-filter: none; } body.bg-join .discord-logo { color: #8A9CFE; } body.bg-join .step-icon { background: rgba(138, 156, 254, 0.2); color: #8A9CFE; } body.bg-join .step-content h4 { color: #8A9CFE; } body.bg-join .discord-button { background: #8A9CFE; box-shadow: 0 4px 15px rgba(138, 156, 254, 0.5); } body.bg-join .discord-button:hover { background: #8A9CFE; transform: none; box-shadow: 0 4px 15px rgba(138, 156, 254, 0.5); } body.bg-join .rule-number { background: #8A9CFE; } body.bg-join .ip-box { border: 1px solid rgba(138, 156, 254, 0.3); } body.bg-join .copy-btn { background: #8A9CFE; } body.bg-join .copy-btn:hover { background: #8A9CFE; transform: none; } body.bg-join .versions-info { color: #8A9CFE; } body.bg-services .plan-card { background: rgba(0, 0, 0, 0.7); border: 1px solid var(--accent-color); box-shadow: 0 8px 32px rgba(59, 130, 246, 0.2); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); } body.bg-services .overlay-blur { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.4); backdrop-filter: blur(3px); -webkit-backdrop-filter: blur(3px); z-index: -1; pointer-events: none; } body.bg-services .plan-card:hover { transform: translateY(-5px); box-shadow: 0 12px 40px rgba(244, 114, 182, 0.3); border-color: var(--secondary-color); } @font-face { font-family: 'TT Neoris'; src: url('./assets/font-ttneo-primary.ttf') format('truetype'); font-weight: normal; font-style: normal; font-display: swap; } @font-face { font-family: 'TT Neoris'; src: url('./assets/font-ttneo-bold.ttf') format('truetype'); font-weight: bold; font-style: normal; font-display: swap; } .minecraft-font { font-family: 'TT Neoris', sans-serif; } .faq-section { font-size: 1rem; max-width: 800px; margin: 3rem auto; padding: 0 1rem; z-index: 2; position: relative; } .faq-section .section-title { text-align: center; margin-bottom: 2rem; font-size: 2.5rem; position: relative; padding-bottom: 1rem; font-family: 'TT Neoris', sans-serif; } .faq-section .section-title:after { content: ''; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); width: 100px; height: 3px; background: var(--primary-color); } .faq-item { background: rgba(0, 0, 0, 0.5); border-radius: 12px; margin-bottom: 1.2rem; overflow: hidden; border: 1px solid rgba(255, 255, 255, 0.08); box-shadow: 0 5px 20px rgba(0, 0, 0, 0.3); transition: all 0.4s ease; backdrop-filter: none; -webkit-backdrop-filter: none; } .faq-item:hover { transform: translateY(-5px); box-shadow: 0 10px 25px rgba(0, 0, 0, 0.4); border-color: rgba(33, 150, 243, 0.3); } .faq-question { background: linear-gradient(135deg, var(--primary-color), var(--secondary-color)); color: #ffffff; width: 100%; padding: 1.5rem; font-size: 1.2rem; font-weight: 500; text-align: left; border: none; border-radius: 12px; cursor: pointer; display: flex; justify-content: space-between; align-items: center; transition: all 0.3s ease; box-shadow: 0 3px 10px rgba(0, 0, 0, 0.2); } .faq-question:hover { background: linear-gradient(135deg, #2563eb, #db2777); } .faq-question i { font-size: 1.1rem; transition: all 0.4s cubic-bezier(0.68, -0.6, 0.32, 1.6); background: rgba(255, 255, 255, 0.2); width: 28px; height: 28px; display: flex; align-items: center; justify-content: center; border-radius: 50%; } .faq-question.active { border-bottom-left-radius: 0; border-bottom-right-radius: 0; } .faq-question.active i { transform: rotate(180deg); background: rgba(255, 255, 255, 0.3); } .faq-answer { max-height: 0; padding: 0 1.5rem; font-size: 1.05rem; line-height: 1.7; color: #f0f0f0; background: rgba(0, 0, 0, 0.7); overflow: hidden; transition: all 0.5s cubic-bezier(0.68, -0.6, 0.32, 1.6); } .faq-answer.active { padding: 1.7rem; border-top: 1px solid rgba(255, 255, 255, 0.05); } .faq-answer a { color: #64B5F6; text-decoration: none; position: relative; font-weight: 500; transition: all 0.2s ease; } .faq-answer a:hover { color: #2196F3; text-decoration: underline; } @media (max-width: 768px) { .faq-section { margin: 2rem auto; } .faq-section .section-title { font-size: 2rem; } .faq-question { font-size: 1.1rem; padding: 1.2rem; } .faq-answer { font-size: 1rem; } .faq-answer.active { padding: 1.2rem; } } @media (max-width: 480px) { .faq-section { padding: 0 0.5rem; } .faq-section .section-title { font-size: 1.8rem; } .faq-question { font-size: 1rem; padding: 1rem; } .faq-answer { font-size: 0.95rem; } .faq-answer.active { padding: 1rem; } } header { position: fixed; top: 0; width: 100%; z-index: 1001; background: rgba(0, 0, 0, 0.575); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); box-shadow: 0 4px 20px rgba(0, 0, 0, 0.4); border-bottom: 1px solid rgba(255, 255, 255, 0.068); height: var(--header-height); } .header-container { height: var(--header-height); max-width: 1200px; margin: 0 auto; padding: 0 1rem; display: flex; justify-content: center; align-items: center; position: relative; } .nav-desktop { display: flex; gap: 2rem; } .nav-tab { padding: 0.4rem 1rem; font-size: 1rem; cursor: pointer; border-radius: 6px; position: relative; overflow: hidden; text-decoration: none; color: #ffffff; display: inline-block; font-family: 'TT Neoris', sans-serif; } .nav-tab:hover { background: rgba(255, 255, 255, 0.1); } .nav-tab.active { background: var(--primary-color); } .nav-mobile { display: none; position: absolute; top: var(--header-height); left: 0; width: 100%; background: rgba(31, 41, 55, 0.98); border-bottom: 1px solid var(--border-color); z-index: 1000; } .nav-mobile.active { display: block; } .nav-mobile .nav-tab { padding: 0.5rem 1rem; font-size: 1.1rem; margin: 0.5rem auto; display: block; text-align: center; } .mobile-menu-toggle { display: none; font-size: 1.8rem; cursor: pointer; color: #ffffff; transition: transform 0.3s; position: absolute; left: 50%; transform: translateX(-50%); top: 50%; margin-top: -0.9rem; width: 40px; height: 40px; justify-content: center; align-items: center; } .mobile-menu-toggle:hover { transform: translateX(-50%) rotate(90deg); color: var(--primary-color); } @media (max-width: 768px) { .nav-desktop { display: none; } .mobile-menu-toggle { display: flex; } .nav-mobile { display: none; } .nav-mobile.active { display: block; } } #map.content-section { position: fixed; top: var(--header-height); left: 0; right: 0; bottom: var(--footer-height); z-index: 1000; display: none; opacity: 0; visibility: hidden; transition: opacity 0.3s ease, visibility 0.3s; } #map.content-section.active { display: block; opacity: 1; visibility: visible; } .map-container { width: 100%; height: 100%; position: relative; top: 0; } .map-container iframe { width: 100%; height: calc(100% + 110px); border: none; display: block; position: relative; top: -47px; } @keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } } @keyframes slideInUp { from { transform: translateY(50px); opacity: 0; } to { transform: translateY(0); opacity: 1; } } @keyframes slideInRight { from { transform: translateX(50px); opacity: 0; } to { transform: translateX(0); opacity: 1; } } @keyframes pageTransition { 0% { opacity: 0; transform: translateY(20px); } 100% { opacity: 1; transform: translateY(0); } } #home.content-section, #how-to-join.content-section { height: 100vh; overflow: hidden; display: none; min-height: 100vh; padding-bottom: 0; } #home.content-section.active, #how-to-join.content-section.active { display: flex; flex-direction: column; justify-content: center; align-items: center; height: 100%; } #how-to-join.content-section { height: 100%; overflow-y: auto; overflow-x: hidden; padding: 1rem 0; -webkit-overflow-scrolling: touch; } #how-to-join .section-title { margin-bottom: 2.5rem; font-size: 2rem; margin-top: 0; } #services.content-section { display: flex; flex-direction: column; justify-content: center; align-items: center; height: 100%; padding: 2rem 0; overflow: hidden; } #services .section-title { margin-bottom: 3rem; font-size: 2.5rem; } .subscription-plans { display: grid; grid-template-columns: 1fr; gap: 1.5rem; margin: 0 auto; max-width: 500px; width: 100%; padding-bottom: 2rem; } .plan-card { position: relative; text-align: center; transition: all 0.3s; opacity: 1; background: rgba(0, 0, 0, 0.5); border-radius: 10px; padding: 1.5rem; border: 1px solid rgba(255, 255, 255, 0.1); backdrop-filter: none; -webkit-backdrop-filter: none; height: auto; display: flex; flex-direction: column; justify-content: space-between; } .section-title { font-size: 2.2rem; text-align: center; margin-bottom: 1.5rem; position: relative; color: var(--accent-color); text-shadow: 0 2px 5px rgba(0, 0, 0, 0.3); } .price-container { margin-bottom: 1.5rem; width: 100%; position: relative; } .vk-info { margin-bottom: 1.2rem; text-align: center; padding: 1.2rem; background: linear-gradient(135deg, rgba(59, 130, 246, 0.1), rgba(236, 72, 153, 0.1)); border-radius: 12px; border: 1px solid var(--accent-color); } .subscription-info { margin-bottom: 1.2rem; font-size: 1.1rem; color: rgba(255, 255, 255, 0.9); line-height: 1.5; } .vk-link { display: inline-flex; align-items: center; gap: 0.6rem; padding: 0.8rem 1.5rem; background: #4c75a3; color: white; text-decoration: none; border-radius: 10px; font-weight: 500; font-size: 1rem; transition: all 0.3s ease; box-shadow: 0 4px 15px rgba(76, 117, 163, 0.3); } .vk-link:hover { background: #3a5a85; transform: translateY(-2px); box-shadow: 0 6px 20px rgba(76, 117, 163, 0.4); } .vk-link i { font-size: 1.2rem; } .server-buttons { display: flex; flex-direction: row; gap: 2rem; width: 100%; justify-content: center; } .server-button-group { display: flex; flex-direction: column; gap: 0.5rem; align-items: center; flex: 1; max-width: 300px; } .server-label { color: #fff; font-size: 1.1rem; opacity: 0.9; } .discord-button { width: 100%; padding: 1rem; font-size: 1rem; display: flex; align-items: center; justify-content: center; gap: 0.5rem; background: var(--primary-color); color: white; border-radius: 8px; text-decoration: none; border: none; cursor: pointer; transition: background-color 0.3s ease; } .discord-button:hover { background: #1d4ed8; } .discord-button i { font-size: 1.2rem; } @media (max-width: 768px) { .server-buttons { flex-direction: column; gap: 1.5rem; } .server-button-group { max-width: none; } .server-label { font-size: 1rem; } .discord-button { padding: 0.875rem; font-size: 0.9rem; } }