.partner-community-content { padding-bottom: 48px; }
.content-factory-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.content-factory-card { position: relative; min-height: 342px; display: block; overflow: hidden; padding: 66px 62px 44px; border: 1px solid rgba(255, 255, 255, .03); border-radius: 28px; background: #22232f; color: var(--partner-text); text-decoration: none; box-shadow: var(--partner-shadow); }
.content-factory-card::after { position: absolute; right: -120px; bottom: -145px; width: 390px; height: 390px; border: 42px solid rgba(165, 228, 222, .04); border-radius: 50%; content: ""; pointer-events: none; }
.content-factory-card:hover, .content-factory-card:focus-visible { outline: 1px solid var(--partner-border); background: #282a37; }
.content-factory-arrow { position: absolute; top: 18px; right: 19px; z-index: 1; width: 134px; height: 134px; display: grid; place-items: center; border: 18px solid rgba(15, 16, 23, .65); border-radius: 50%; background: #303142; color: var(--partner-mint); transition: transform .2s ease; }
.content-factory-card:hover .content-factory-arrow { transform: translate(4px, -4px); }
.content-factory-arrow i { width: 48px; height: 48px; stroke-width: 1.7; }
.content-factory-language { margin: 0; color: var(--partner-text); font-size: 27px; font-style: italic; font-weight: 800; }
.content-factory-card h2 { position: relative; z-index: 1; margin: 14px 0 23px; font-size: clamp(30px, 3.1vw, 42px); line-height: 1.05; }
.content-factory-card > p:last-child { position: relative; z-index: 1; max-width: 520px; margin: 0; color: #e4e3e7; font-size: 18px; line-height: 1.48; }
.partner-social-card { margin-top: 30px; padding: 54px 62px 56px; border: 1px solid rgba(255, 255, 255, .03); border-radius: 28px; background: #22232f; box-shadow: var(--partner-shadow); }
.partner-social-card h2 { margin: 0; color: var(--partner-text); font-size: clamp(31px, 3vw, 42px); }
.partner-social-card h2 em { font-weight: 400; }
.partner-social-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 26px; margin-top: 58px; }
.partner-social-item { min-width: 0; display: grid; justify-items: center; gap: 18px; color: var(--partner-text); text-align: center; text-decoration: none; }
.partner-social-item:not(.is-coming-soon):hover .partner-social-icon, .partner-social-item:not(.is-coming-soon):focus-visible .partner-social-icon { transform: translateY(-3px); }
.partner-social-item:not(.is-coming-soon):hover .partner-social-icon::before, .partner-social-item:not(.is-coming-soon):focus-visible .partner-social-icon::before { opacity: .78; transform: scale(1.12); }
.partner-social-item:focus-visible { outline: 1px solid var(--partner-border); outline-offset: 8px; border-radius: 10px; }
.partner-social-icon { position: relative; width: 116px; height: 116px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.12); border-radius: 28px; background: #292a35; box-shadow: inset 0 0 20px rgba(255,255,255,.04), 0 12px 25px rgba(0,0,0,.22); isolation: isolate; transition: transform .2s ease; }
.partner-social-icon::before { position: absolute; z-index: 0; width: 68px; height: 68px; border-radius: 50%; content: ""; filter: blur(18px); opacity: .52; transition: opacity .2s ease, transform .2s ease; }
.partner-social-icon svg { position: relative; z-index: 1; display: block; width: 52px; height: 52px; filter: none; opacity: 1; }
.social-youtube::before { background: #ff263d; }
.social-facebook::before { background: #247cf6; }
.social-instagram::before { background: conic-gradient(from 180deg, #ffbc5c, #fa4a7b, #7847d5, #ffbc5c); }
.social-telegram::before { background: #28b7ef; }
.partner-social-icon small { position: absolute; z-index: 2; bottom: 7px; color: #fff; font-size: 10px; font-weight: 800; letter-spacing: .06em; text-shadow: 0 1px 3px rgba(0,0,0,.8); }
.partner-social-item h3 { margin: 0; font-size: 22px; line-height: 1.2; }
.partner-social-item p { margin: -8px 0 0; color: var(--partner-muted); font-size: 14px; font-weight: 700; }
.is-coming-soon .partner-social-icon { opacity: 1; }
@media (max-width: 1180px) { .content-factory-card { padding: 54px 38px 38px; } .partner-social-card { padding: 44px 38px; } .partner-social-grid { gap: 18px; } .partner-social-icon { width: 102px; height: 102px; } }
@media (max-width: 860px) { .partner-community-content { padding: 102px 16px 32px; } .content-factory-grid { grid-template-columns: 1fr; } .content-factory-card { min-height: 290px; } .partner-social-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); row-gap: 32px; } }
@media (max-width: 560px) { .content-factory-grid { gap: 16px; } .content-factory-card { min-height: 266px; padding: 39px 24px 28px; border-radius: 20px; } .content-factory-arrow { top: 13px; right: 13px; width: 80px; height: 80px; border-width: 10px; } .content-factory-arrow i { width: 34px; height: 34px; } .content-factory-language { font-size: 20px; } .content-factory-card h2 { max-width: 220px; margin: 10px 0 18px; font-size: 31px; } .content-factory-card > p:last-child { font-size: 15px; } .partner-social-card { margin-top: 16px; padding: 28px 18px; border-radius: 20px; } .partner-social-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 16px; margin-top: 34px; } .partner-social-icon { width: 80px; height: 80px; border-radius: 20px; } .partner-social-icon::before { width: 50px; height: 50px; filter: blur(14px); } .partner-social-icon svg { width: 42px; height: 42px; } .partner-social-icon small { bottom: 4px; font-size: 8px; } .partner-social-item h3 { font-size: 17px; } }
@media (max-width: 350px) { .partner-social-grid { grid-template-columns: 1fr; } .content-factory-card h2 { font-size: 28px; } }
