@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes shake{0%,100%{transform:translateX(0)}20%{transform:translateX(-6px)}40%{transform:translateX(6px)}60%{transform:translateX(-4px)}80%{transform:translateX(4px)}}.contact-page{width:min(1200px,100% - 2rem);margin:0 auto;padding:clamp(1.5rem,4vw,3rem) clamp(1rem,2.5vw,1.5rem);animation:fadeIn 0.4s ease-out}.contact-hero{text-align:center;margin-bottom:clamp(2rem,4vw,3rem);padding-bottom:clamp(1.5rem,3vw,2rem);border-bottom:2px solid var(--accent)}.contact-hero__title{font-size:clamp(1.75rem,4vw + 0.5rem,2.5rem);font-weight:700;color:var(--text-primary);margin:0 0 clamp(0.5rem,1.5vw,0.75rem);line-height:1.2}.contact-hero__subtitle{font-size:clamp(1rem,1.5vw + 0.5rem,1.125rem);color:var(--text-secondary);margin:0;line-height:1.6;max-width:600px;margin-inline:auto}.contact-content{display:grid;grid-template-columns:1fr;gap:clamp(1.5rem,3vw,2.5rem)}@media (min-width:900px){.contact-content{grid-template-columns:1fr 340px}}.contact-form{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);padding:clamp(1.25rem,3vw,2rem);box-shadow:var(--shadow-sm)}.contact-form__header{margin-bottom:clamp(1.25rem,2.5vw,1.75rem)}.contact-form__title{font-size:clamp(1.125rem,2vw + 0.25rem,1.375rem);font-weight:600;color:var(--text-primary);margin:0 0 clamp(0.25rem,0.5vw,0.375rem)}.contact-form__description{font-size:clamp(0.875rem,1.25vw + 0.25rem,0.9375rem);color:var(--text-secondary);margin:0;line-height:1.5}.contact-form__group{margin-bottom:clamp(1rem,2vw,1.25rem)}.contact-form__group:last-of-type{margin-bottom:clamp(1.5rem,2.5vw,2rem)}.contact-form__row{display:grid;grid-template-columns:1fr;gap:clamp(1rem,2vw,1.25rem)}@media (min-width:500px){.contact-form__row{grid-template-columns:1fr 1fr}}.contact-form__label{display:block;font-size:clamp(0.875rem,1.25vw + 0.125rem,0.9375rem);font-weight:500;color:var(--text-primary);margin-bottom:clamp(0.375rem,0.75vw,0.5rem)}.contact-form__label--required::after{content:' *';color:var(--error)}.contact-form__input,.contact-form__select,.contact-form__textarea{width:100%;padding:clamp(0.625rem,1.25vw,0.75rem) clamp(0.75rem,1.5vw,1rem);font-size:clamp(0.9375rem,1.25vw + 0.25rem,1rem);font-family:inherit;line-height:1.5;color:var(--text-primary);background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-md);transition:border-color 0.2s ease,box-shadow 0.2s ease,background-color 0.2s ease;-webkit-appearance:none;appearance:none}.contact-form__input::placeholder,.contact-form__textarea::placeholder{color:var(--text-muted)}.contact-form__input:focus,.contact-form__select:focus,.contact-form__textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb),0.15)}.contact-form__input:hover:not(:focus),.contact-form__select:hover:not(:focus),.contact-form__textarea:hover:not(:focus){border-color:var(--border-light)}.contact-form__select{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23666666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right clamp(0.75rem,1.5vw,1rem) center;padding-right:clamp(2.5rem,4vw,3rem)}html.dark .contact-form__select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23a0a0a0' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E")}.contact-form__textarea{min-height:150px;resize:vertical}.contact-form__char-count{display:block;text-align:right;font-size:clamp(0.75rem,1vw + 0.125rem,0.8125rem);color:var(--text-muted);margin-top:clamp(0.25rem,0.5vw,0.375rem)}.contact-form__char-count--warning{color:var(--warning)}.contact-form__char-count--error{color:var(--error)}.contact-form__input--error,.contact-form__select--error,.contact-form__textarea--error{border-color:var(--error);animation:shake 0.4s ease}.contact-form__input--error:focus,.contact-form__select--error:focus,.contact-form__textarea--error:focus{box-shadow:0 0 0 3px rgba(var(--error-rgb),0.15)}.contact-form__error{display:flex;align-items:center;gap:clamp(0.375rem,0.75vw,0.5rem);font-size:clamp(0.8125rem,1vw + 0.125rem,0.875rem);color:var(--error);margin-top:clamp(0.375rem,0.75vw,0.5rem);animation:slideIn 0.3s ease}.contact-form__error-icon{width:14px;height:14px;flex-shrink:0}.contact-form__submit{display:inline-flex;align-items:center;justify-content:center;gap:clamp(0.5rem,1vw,0.625rem);width:100%;padding:clamp(0.75rem,1.5vw,0.875rem) clamp(1.5rem,3vw,2rem);font-size:clamp(0.9375rem,1.25vw + 0.25rem,1rem);font-weight:600;font-family:inherit;color:#ffffff;background:var(--accent);border:none;border-radius:var(--radius-md);cursor:pointer;transition:background-color 0.2s ease,transform 0.15s ease,box-shadow 0.2s ease}@media (min-width:500px){.contact-form__submit{width:auto}}.contact-form__submit:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.contact-form__submit:active:not(:disabled){transform:translateY(0)}.contact-form__submit:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.contact-form__submit:disabled{opacity:0.6;cursor:not-allowed}.contact-form__submit--loading{position:relative;color:transparent}.contact-form__submit--loading::after{content:'';position:absolute;width:18px;height:18px;border:2px solid transparent;border-top-color:#ffffff;border-radius:50%;animation:spin 0.8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.contact-form__submit-icon{width:18px;height:18px;flex-shrink:0}.contact-form__success{display:flex;align-items:flex-start;gap:clamp(0.75rem,1.5vw,1rem);padding:clamp(1rem,2vw,1.25rem);background:var(--success-bg);border:1px solid var(--success);border-radius:var(--radius-md);animation:slideIn 0.4s ease}.contact-form__success-icon{width:24px;height:24px;color:var(--success);flex-shrink:0}.contact-form__success-content{flex:1}.contact-form__success-title{font-size:clamp(0.9375rem,1.25vw + 0.25rem,1rem);font-weight:600;color:var(--success);margin:0 0 clamp(0.25rem,0.5vw,0.375rem)}.contact-form__success-text{font-size:clamp(0.875rem,1.25vw + 0.125rem,0.9375rem);color:var(--text-secondary);margin:0;line-height:1.5}.contact-sidebar{display:flex;flex-direction:column;gap:clamp(1rem,2vw,1.5rem)}@media (min-width:900px){.contact-sidebar{position:sticky;top:clamp(80px,10vw,100px);align-self:start}}.contact-card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);padding:clamp(1rem,2vw,1.5rem);box-shadow:var(--shadow-sm)}.contact-card__header{display:flex;align-items:center;gap:clamp(0.625rem,1vw,0.75rem);margin-bottom:clamp(0.875rem,1.5vw,1rem)}.contact-card__icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--accent-light);border-radius:var(--radius-md);color:var(--accent);flex-shrink:0}.contact-card__icon svg{width:20px;height:20px}.contact-card__title{font-size:clamp(1rem,1.5vw + 0.25rem,1.125rem);font-weight:600;color:var(--text-primary);margin:0}.contact-card__content{font-size:clamp(0.875rem,1.25vw + 0.125rem,0.9375rem);color:var(--text-secondary);line-height:1.6}.contact-card__content p{margin:0 0 clamp(0.5rem,1vw,0.75rem)}.contact-card__content p:last-child{margin-bottom:0}.contact-card__link{display:inline-flex;align-items:center;gap:clamp(0.375rem,0.75vw,0.5rem);color:var(--accent);text-decoration:none;font-weight:500;transition:color 0.2s ease}.contact-card__link:hover{color:var(--accent-hover)}.contact-card__link:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}.contact-card__link-icon{width:16px;height:16px;flex-shrink:0;transition:transform 0.2s ease}.contact-card__link:hover .contact-card__link-icon{transform:translateX(2px)}.contact-card__list{list-style:none;margin:0;padding:0}.contact-card__list li{padding:clamp(0.5rem,1vw,0.625rem) 0;border-bottom:1px solid var(--border)}.contact-card__list li:last-child{border-bottom:none;padding-bottom:0}.contact-card__list li:first-child{padding-top:0}.contact-social{display:flex;flex-wrap:wrap;gap:clamp(0.625rem,1.25vw,0.75rem)}.contact-social__item{display:inline-flex;align-items:center;justify-content:center;width:max(44px,clamp(2.5rem,4vw,3rem));height:max(44px,clamp(2.5rem,4vw,3rem));background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-muted);text-decoration:none;transition:all 0.2s ease}.contact-social__item:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-light);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.contact-social__item:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.contact-social__item svg{width:clamp(18px,2vw,22px);height:clamp(18px,2vw,22px)}.contact-social__item--twitter:hover{color:#1DA1F2;border-color:#1DA1F2;background:rgba(29,161,242,0.1)}.contact-social__item--discord:hover{color:#5865F2;border-color:#5865F2;background:rgba(88,101,242,0.1)}.contact-social__item--youtube:hover{color:#FF0000;border-color:#FF0000;background:rgba(255,0,0,0.1)}.contact-social__item--github:hover{color:var(--text-primary);border-color:var(--text-primary);background:var(--bg-tertiary)}.contact-faq{background:linear-gradient(135deg,var(--accent-light) 0,var(--bg-secondary) 100%);border:1px solid var(--accent)}.contact-faq__link{display:flex;align-items:center;gap:clamp(0.75rem,1.5vw,1rem);text-decoration:none;color:inherit;padding:clamp(0.25rem,0.5vw,0.375rem);margin:clamp(-0.25rem,-0.5vw,-0.375rem);border-radius:var(--radius-md);transition:background-color 0.2s ease}.contact-faq__link:hover{background:rgba(var(--accent-rgb),0.1)}.contact-faq__link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.contact-faq__icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:var(--accent);border-radius:var(--radius-md);color:#ffffff;flex-shrink:0}.contact-faq__icon svg{width:24px;height:24px}.contact-faq__content{flex:1}.contact-faq__title{font-size:clamp(0.9375rem,1.25vw + 0.25rem,1rem);font-weight:600;color:var(--text-primary);margin:0 0 clamp(0.125rem,0.25vw,0.25rem)}.contact-faq__text{font-size:clamp(0.8125rem,1vw + 0.125rem,0.875rem);color:var(--text-secondary);margin:0}.contact-faq__arrow{width:20px;height:20px;color:var(--accent);flex-shrink:0;transition:transform 0.2s ease}.contact-faq__link:hover .contact-faq__arrow{transform:translateX(4px)}.contact-privacy{font-size:clamp(0.75rem,1vw + 0.125rem,0.8125rem);color:var(--text-muted);line-height:1.5;margin-top:clamp(0.5rem,1vw,0.75rem)}.contact-privacy a{color:var(--accent);text-decoration:none}.contact-privacy a:hover{text-decoration:underline}.contact-response{display:flex;align-items:center;gap:clamp(0.5rem,1vw,0.625rem);padding:clamp(0.75rem,1.5vw,1rem);background:var(--info-bg);border:1px solid var(--info);border-radius:var(--radius-md);font-size:clamp(0.8125rem,1vw + 0.125rem,0.875rem);color:var(--text-secondary)}.contact-response__icon{width:18px;height:18px;color:var(--info);flex-shrink:0}.contact-response strong{color:var(--text-primary)}@media (prefers-reduced-motion:reduce){.contact-page,.contact-form__error,.contact-form__success{animation:none}.contact-form__input--error,.contact-form__select--error,.contact-form__textarea--error{animation:none}.contact-social__item,.contact-card__link-icon,.contact-faq__arrow,.contact-form__submit{transition:none}.contact-social__item:hover,.contact-form__submit:hover:not(:disabled){transform:none}}