/* ==========================================================================
   Штыковские двери — стили страницы «Партнёрам»
   ========================================================================== */

/* ============================ Главный экран ============================ */
.p-hero {
    position: relative; overflow: hidden; color: #fff;
    background: var(--anthracite); min-height: 380px;
    display: flex; align-items: flex-end;
}
@media (min-width: 1024px) { .p-hero { min-height: 480px; align-items: center; } }

.p-hero__media { position: absolute; inset: 0; }
.p-hero__media img { width: 100%; height: 100%; object-fit: cover; opacity: .55; }
.p-hero__overlay {
    position: absolute; inset: 0;
    background: linear-gradient(180deg, rgba(16, 19, 21, .3) 0%, rgba(16, 19, 21, .93) 100%);
}
@media (min-width: 1024px) {
    .p-hero__overlay {
        background: linear-gradient(90deg, rgba(16, 19, 21, .93) 0%, rgba(16, 19, 21, .6) 55%, rgba(16, 19, 21, .2) 100%);
    }
}
.p-hero__inner { position: relative; padding: 48px 0 36px; }
@media (min-width: 1024px) { .p-hero__inner { padding: 64px 0; } }
.p-hero__content { max-width: 620px; }
.p-hero__eyebrow { color: #8fc4a8; }
.p-hero h1 { color: #fff; margin-bottom: 14px; text-wrap: balance; }
.p-hero__lead { font-size: 16px; color: #d3d8da; max-width: 54ch; margin-bottom: 24px; }
@media (min-width: 1024px) { .p-hero__lead { font-size: 18px; } }

/* ============================ Почему сотрудничать ============================ */
.why__item {
    padding: 22px 20px 20px; background: var(--bg-2); border-radius: var(--radius-lg);
    border: 1px solid transparent; transition: border-color .2s var(--ease), background .2s var(--ease);
}
.why__item:hover { background: #fff; border-color: var(--line); box-shadow: var(--shadow); }
.why__ico {
    display: flex; align-items: center; justify-content: center;
    width: 44px; height: 44px; margin-bottom: 14px; border-radius: 50%;
    background: var(--accent-tint); color: var(--accent-ink);
}
.why__ico svg { width: 22px; height: 22px; }
.why__item h3 { font-size: 17px; margin-bottom: 8px; }
.why__item p { margin: 0; font-size: 14px; color: var(--ink-2); }

/* ============================ Типы партнёров ============================ */
.ptypes { display: grid; gap: var(--gap); grid-template-columns: 1fr; }
@media (min-width: 700px) { .ptypes { grid-template-columns: repeat(3, 1fr); } }
.ptype {
    display: flex; flex-direction: column; gap: 14px; padding: 26px 22px;
    background: #fff; border: 1px solid var(--line); border-radius: var(--radius-lg);
}
.ptype__eyebrow { font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--accent); }
.ptype h3 { font-size: 20px; margin: 0; }
.ptype__list { display: grid; gap: 9px; margin: 4px 0 6px; }
.ptype__list li {
    position: relative; padding-left: 24px; font-size: 14px; color: var(--ink-2); line-height: 1.4;
}
.ptype__list li::before {
    content: "✓"; position: absolute; left: 0; top: 0; color: var(--accent); font-weight: 700;
}
.ptype .btn { margin-top: auto; }

/* ============================ Форма сотрудничества ============================ */
.p-form-block { padding: 28px 22px; background: var(--bg-2); border-radius: var(--radius-lg); }
@media (min-width: 700px) { .p-form-block { padding: 40px; } }
.p-form { display: grid; gap: 4px 18px; grid-template-columns: 1fr; max-width: 720px; }
@media (min-width: 700px) { .p-form { grid-template-columns: 1fr 1fr; } }
.p-form .field--full { grid-column: 1 / -1; }
.p-form .check { grid-column: 1 / -1; }
.p-form .btn { grid-column: 1 / -1; margin-top: 4px; }

/* ============================ FAQ ============================ */
.faq { display: grid; gap: 10px; max-width: 820px; }
.faq__item {
    background: var(--bg-2); border-radius: var(--radius-lg); padding: 2px 18px;
    transition: background .18s var(--ease);
}
.faq__item[open] { background: #fff; border: 1px solid var(--line); }
.faq__item summary {
    cursor: pointer; padding: 16px 26px 16px 0; position: relative;
    font-weight: 700; font-size: 15px; list-style: none;
}
.faq__item summary::-webkit-details-marker { display: none; }
.faq__item summary::after {
    content: "+"; position: absolute; right: 0; top: 50%; transform: translateY(-50%);
    font-size: 22px; font-weight: 400; color: var(--accent); transition: transform .2s var(--ease);
}
.faq__item[open] summary::after { transform: translateY(-50%) rotate(45deg); }
.faq__item p { margin: 0; padding: 0 0 18px; font-size: 14px; color: var(--ink-2); line-height: 1.55; }
