/* Три партнёрские страницы. Схемы остаются чёткими при любом масштабе. */
.g4-partner-page { --partner-red:#d0001b; --partner-ink:#202323; --partner-muted:#656c6d; --partner-line:#dedfdb; width:100%; min-width:0; color:var(--partner-ink); padding:0 0 72px; }
.g4-partner-page *, .g4-partner-page *::before, .g4-partner-page *::after { box-sizing:border-box; }
.g4-partner-page h1,.g4-partner-page h2,.g4-partner-page h3,.g4-partner-page p { margin:0; }
.g4-partner-page ul,.g4-partner-page ol { list-style:none; margin:0; padding:0; }
/* Clearfix темы на ul создаёт лишнюю ячейку в CSS Grid. */
.g4-partner-page ul::before,.g4-partner-page ul::after,.g4-partner-page ol::before,.g4-partner-page ol::after { content:none; display:none; }
.g4-partner-page li::before,.g4-partner-page li::after { content:none; }
.g4-partner-page a { color:inherit; text-decoration:none; }
.g4-partner-page svg { flex-shrink:0; }
.g4-partner-page a:focus-visible,.g4-partner-page button:focus-visible { outline:3px solid #1560ba; outline-offset:5px; }
.g4-partner-breadcrumb { display:flex; gap:12px; color:var(--partner-muted); font-size:12px; padding:12px 0 26px; }
.g4-partner-breadcrumb a:hover { color:var(--partner-red); }
.g4-partner-tabs { display:flex; gap:6px; align-items:center; border-bottom:1px solid var(--partner-line); margin-bottom:32px; padding-bottom:12px; font-size:13px; }
.g4-partner-tabs__label { font-weight:700; margin-right:auto; }
.g4-partner-tabs a { padding:10px 17px; border-radius:6px; transition:background .15s,color .15s; }
.g4-partner-tabs a:hover { background:#f2f2ef; }
.g4-partner-tabs a[aria-current] { background:var(--partner-ink); color:white; }
.g4-partner-hero { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(330px,.85fr); background:#f3f3ef; border-radius:16px; overflow:hidden; }
.g4-partner-hero__copy { padding:48px 44px; align-self:center; }
.g4-partner-page .g4-partner-kicker { font-size:11px; line-height:1.65; font-weight:700; letter-spacing:1.15px; text-transform:uppercase; color:var(--partner-red); margin-bottom:16px; }
.g4-partner-page h1 { font-size:clamp(32px,3.5vw,52px); line-height:1.08; font-weight:800; letter-spacing:-1.5px; margin-bottom:24px; max-width:760px; }
.g4-partner-lead { font-size:15px; line-height:1.8; color:#505859; max-width:680px; }
.g4-partner-actions { display:flex; align-items:center; flex-wrap:wrap; gap:20px; margin-top:30px; }
.g4-partner-page .g4-partner-button { display:inline-flex; align-items:center; justify-content:space-between; gap:22px; border:1px solid var(--partner-red); border-radius:6px; padding:16px 22px; background:var(--partner-red); color:#fff; font-family:inherit; font-size:13px; font-weight:700; line-height:1.4; cursor:pointer; box-shadow:none; transition:background .2s,transform .2s,box-shadow .2s; text-align:left; white-space:normal; }
.g4-partner-page .g4-partner-button:hover { background:#b40018; }
.g4-partner-button svg { width:20px; height:20px; }
.g4-partner-page .g4-partner-text-link { display:inline-flex; align-items:center; gap:10px; font-size:12px; font-weight:600; text-decoration:none; border-bottom:1px solid #c7cac7; padding-bottom:3px; }
.g4-partner-page .g4-partner-text-link:hover { color:var(--partner-red); border-color:var(--partner-red); }
.g4-partner-text-link svg { width:16px; height:16px; }
.g4-partner-page .g4-partner-hero__note { font-size:11px; color:var(--partner-muted); margin-top:16px; }
.g4-partner-visual { position:relative; isolation:isolate; padding:30px 34px; background:#252a2b; color:#fff; display:flex; flex-direction:column; justify-content:space-between; gap:24px; }
.g4-partner-visual::before { content:""; position:absolute; z-index:-1; inset:0; opacity:.3; background-image:linear-gradient(#61676725 1px,transparent 1px),linear-gradient(90deg,#61676725 1px,transparent 1px); background-size:32px 32px; }
.g4-partner-visual__top { display:flex; align-items:center; justify-content:space-between; gap:12px; font-size:10px; color:#b9c0c0; }
.g4-partner-wordmark { font-size:29px; font-weight:900; letter-spacing:2px; line-height:1; color:var(--partner-red); }
.g4-partner-visual .g4-partner-wordmark { color:#ff3047; }
.g4-partner-visual__title { font-size:22px; font-weight:700; line-height:1.3; max-width:300px; }
.g4-partner-page .g4-partner-route { display:flex; flex-direction:column; gap:19px; }
.g4-partner-route li { position:relative; display:flex; align-items:center; gap:16px; padding:0; }
.g4-partner-route li:not(:last-child)::after { content:""; position:absolute; top:52px; height:20px; border-left:1px dashed #798182; left:25px; }
.g4-partner-route__icon { width:52px; height:52px; border:1px solid #62696a; border-radius:10px; display:flex; align-items:center; justify-content:center; color:#fff; background:#303637; }
.g4-partner-route li:nth-child(2) .g4-partner-route__icon { border-color:#f7354d; color:#ff5367; background:#3b2b2e; }
.g4-partner-route strong { display:block; font-size:15px; line-height:1.5; }
.g4-partner-route div>span { display:block; font-size:11px; color:#b9c0c0; margin-top:2px; }
.g4-partner-route__number { font-size:11px; margin-left:auto; color:#818c8e; align-self:flex-start; }
.g4-partner-visual__bottom { border-top:1px solid #515859; padding-top:18px; display:flex; gap:9px; align-items:center; font-size:11px; color:#c9d1d1; }
.g4-partner-visual__bottom svg { width:18px; height:18px; color:#ff5367; }
.g4-partner-intro { display:grid; grid-template-columns:1.2fr 1fr; gap:50px; padding:32px 0; border-bottom:1px solid var(--partner-line); font-size:14px; line-height:1.8; color:var(--partner-muted); }
.g4-partner-intro>div { display:flex; align-items:flex-start; gap:14px; }
.g4-partner-intro svg { color:var(--partner-red); margin-top:4px; }
.g4-partner-section { margin-top:64px; }
.g4-partner-page h2 { font-size:clamp(24px,2.25vw,34px); font-weight:800; letter-spacing:-.7px; line-height:1.2; }
.g4-partner-section__heading { margin-bottom:28px; }
.g4-partner-section__heading .g4-partner-kicker { margin-bottom:10px; }
.g4-partner-page .g4-partner-benefits { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid var(--partner-line); border-left:1px solid var(--partner-line); border-radius:10px; overflow:hidden; }
.g4-partner-benefits li { display:flex; flex-direction:column; align-items:flex-start; padding:27px; border-right:1px solid var(--partner-line); border-bottom:1px solid var(--partner-line); }
.g4-partner-icon { width:44px; height:44px; display:flex; align-items:center; justify-content:center; color:var(--partner-red); border-radius:10px; background:#f9edee; margin-bottom:23px; }
.g4-partner-page h3 { font-size:16px; font-weight:700; line-height:1.45; margin-bottom:8px; }
.g4-partner-benefits p,.g4-partner-steps p,.g4-partner-conditions li p { font-size:13px; line-height:1.8; color:var(--partner-muted); }
.g4-partner-page--centers .g4-partner-benefits li:last-child { grid-column:1/-1; display:grid; grid-template-columns:44px minmax(0,1fr) minmax(0,1fr); gap:23px; align-items:center; }
.g4-partner-page--centers .g4-partner-benefits li:last-child .g4-partner-icon,.g4-partner-page--centers .g4-partner-benefits li:last-child h3 { margin:0; }
.g4-partner-audience { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:70px; padding:36px; background:#f4f4f0; border-radius:10px; }
.g4-partner-audience h2 { max-width:300px; }
.g4-partner-audience p:not(.g4-partner-kicker) { font-size:13px; color:var(--partner-muted); margin:16px 0 24px; }
.g4-partner-audience li { display:flex; align-items:center; gap:18px; padding:15px 0; border-bottom:1px solid #dedfda; font-size:14px; font-weight:600; }
.g4-partner-audience li:first-child { padding-top:0; }
.g4-partner-audience li:last-child { border-bottom:0; padding-bottom:0; }
.g4-partner-audience li>span { color:var(--partner-red); font-size:11px; font-weight:500; }
.g4-partner-audience li>svg { width:17px; height:17px; color:var(--partner-red); margin-left:auto; }
.g4-partner-page .g4-partner-steps { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:26px; counter-reset:steps; }
.g4-partner-steps li { position:relative; padding:0 12px 0 0; }
.g4-partner-steps__number { position:relative; z-index:1; display:flex; align-items:center; justify-content:center; width:46px; height:46px; border:1px solid var(--partner-line); border-radius:50%; background:#fff; color:var(--partner-red); font-size:13px; margin-bottom:20px; }
.g4-partner-steps li:not(:last-child)::after { content:""; display:block; position:absolute; top:22px; left:46px; width:calc(100% - 20px); height:1px; background:var(--partner-line); }
.g4-partner-steps li:last-child .g4-partner-steps__number { color:white; background:var(--partner-red); border-color:var(--partner-red); }
.g4-partner-conditions { padding:32px; border:1px solid #ead9db; border-radius:10px; background:#fcf6f6; }
.g4-partner-page .g4-partner-conditions ul { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; }
.g4-partner-conditions li>svg { color:var(--partner-red); margin-bottom:15px; }
.g4-partner-brand { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:60px; padding:36px 0; border-top:1px solid var(--partner-line); }
.g4-partner-brand h2 { margin-top:18px; max-width:320px; }
.g4-partner-brand p { font-size:13px; line-height:1.85; color:var(--partner-muted); margin-bottom:12px; }
.g4-partner-cta { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:48px; align-items:center; padding:36px; border-radius:12px; background:#f3f3ef; }
.g4-partner-cta h2 { max-width:640px; font-size:28px; }
.g4-partner-cta p:not(.g4-partner-kicker) { color:var(--partner-muted); font-size:13px; line-height:1.7; margin-top:15px; }
.g4-partner-cta__actions { display:flex; flex-direction:column; align-items:center; gap:18px; }
.g4-partner-cta .g4-partner-kicker { margin-bottom:12px; }
@media(min-width:1600px) { .g4-partner-hero__copy { padding:60px; } .g4-partner-visual { padding:38px 44px; } }
@media(max-width:1100px) { .g4-partner-hero { grid-template-columns:minmax(0,1.15fr) minmax(290px,.85fr); } .g4-partner-hero__copy { padding:32px; } .g4-partner-visual { padding:28px; } .g4-partner-page h1 { font-size:36px; } .g4-partner-lead { font-size:14px; } .g4-partner-benefits li { padding:22px; } .g4-partner-audience { gap:36px; } .g4-partner-cta { gap:28px; } }
@media(max-width:767px) {
    .g4-partner-page { padding-bottom:40px; }
    .g4-partner-breadcrumb { padding:8px 0 18px; font-size:11px; }
    .g4-partner-tabs { flex-wrap:wrap; gap:6px; margin-bottom:20px; }
    .g4-partner-tabs__label { width:100%; font-size:12px; margin-bottom:4px; }
    .g4-partner-tabs a { padding:8px 10px; font-size:11px; }
    .g4-partner-hero { grid-template-columns:minmax(0,1fr); border-radius:10px; }
    .g4-partner-hero__copy { padding:28px 22px; }
    .g4-partner-page h1 { font-size:34px; letter-spacing:-1px; margin-bottom:20px; }
    .g4-partner-page .g4-partner-kicker { font-size:10px; }
    .g4-partner-lead { font-size:13px; line-height:1.85; }
    .g4-partner-actions { gap:18px; margin-top:24px; }
    .g4-partner-actions .g4-partner-button { width:100%; }
    .g4-partner-visual { padding:26px 22px; gap:22px; }
    .g4-partner-visual__title { max-width:none; font-size:21px; }
    .g4-partner-intro { grid-template-columns:minmax(0,1fr); gap:20px; padding:24px 0; font-size:13px; }
    .g4-partner-section { margin-top:40px; }
    .g4-partner-page h2 { font-size:26px; }
    .g4-partner-section__heading { margin-bottom:22px; }
    .g4-partner-page .g4-partner-benefits { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .g4-partner-benefits li { padding:20px 16px; }
    .g4-partner-page h3 { font-size:14px; }
    .g4-partner-benefits p { font-size:12px; line-height:1.7; }
    .g4-partner-icon { margin-bottom:16px; width:38px; height:38px; }
    .g4-partner-page--centers .g4-partner-benefits li:last-child { display:flex; align-items:flex-start; gap:0; }
    .g4-partner-page--centers .g4-partner-benefits li:last-child .g4-partner-icon { margin-bottom:16px; }
    .g4-partner-page--centers .g4-partner-benefits li:last-child h3 { margin-bottom:8px; }
    .g4-partner-audience { grid-template-columns:minmax(0,1fr); padding:24px 20px; gap:28px; }
    .g4-partner-audience li { font-size:13px; gap:13px; }
    .g4-partner-page .g4-partner-steps { grid-template-columns:minmax(0,1fr); gap:0; }
    .g4-partner-steps li { padding:0 0 26px 68px; min-height:104px; }
    .g4-partner-steps li:last-child { padding-bottom:0; min-height:70px; }
    .g4-partner-steps__number { position:absolute; left:0; top:0; margin:0; }
    .g4-partner-steps li:not(:last-child)::after { left:22px; top:46px; width:1px; height:calc(100% - 46px); }
    .g4-partner-steps h3 { padding-top:2px; }
    .g4-partner-conditions { padding:24px 20px; }
    .g4-partner-page .g4-partner-conditions ul { grid-template-columns:minmax(0,1fr); gap:24px; }
    .g4-partner-conditions li { display:grid; grid-template-columns:24px minmax(0,1fr); column-gap:14px; }
    .g4-partner-conditions li>svg { grid-row:1/3; margin:0; }
    .g4-partner-brand { grid-template-columns:minmax(0,1fr); gap:24px; padding:28px 0; }
    .g4-partner-brand h2 { max-width:none; }
    .g4-partner-cta { grid-template-columns:minmax(0,1fr); padding:26px 22px; gap:26px; }
    .g4-partner-cta h2 { font-size:26px; }
    .g4-partner-cta__actions .g4-partner-button { width:100%; }
}
@media(max-width:370px) { .g4-partner-tabs a { font-size:10px; padding:8px; } .g4-partner-page h1 { font-size:30px; } .g4-partner-page .g4-partner-benefits { grid-template-columns:minmax(0,1fr); } }
@media(prefers-reduced-motion:no-preference) {
    .g4-partner-page { scroll-behavior:smooth; }
    .g4-partner-benefits li { transition:background .25s; }
    .g4-partner-icon { transition:transform .25s,background .25s; }
    .g4-partner-button svg,.g4-partner-text-link svg { transition:transform .25s; }
    .g4-partner-route.is-tracing .g4-partner-route__icon { animation:g4-partner-trace .75s ease-out both; }
    .g4-partner-route.is-tracing li:nth-child(2) .g4-partner-route__icon { animation-delay:.3s; }
    .g4-partner-route.is-tracing li:nth-child(3) .g4-partner-route__icon { animation-delay:.6s; }
    .g4-partner-steps__number { transition:transform .25s; }
}
@media(hover:hover) and (prefers-reduced-motion:no-preference) {
    .g4-partner-page .g4-partner-button:hover { transform:translateY(-2px); box-shadow:0 6px 18px #d0001b20; }
    .g4-partner-button:hover svg,.g4-partner-text-link:hover svg { transform:translateX(3px); }
    .g4-partner-benefits li:hover { background:#fafaf7; }
    .g4-partner-benefits li:hover .g4-partner-icon { transform:translateY(-3px); background:#f5dfe3; }
    .g4-partner-steps li:hover .g4-partner-steps__number { transform:translateY(-3px); }
}
@keyframes g4-partner-trace { 0% { border-color:#ff5367; box-shadow:0 0 0 0 #ff53674d; } 50% { border-color:#ff5367; box-shadow:0 0 0 7px #ff536700; } 100% { box-shadow:0 0 0 0 #ff536700; } }
@media(prefers-reduced-motion:reduce) { .g4-partner-page *, .g4-partner-page *::before, .g4-partner-page *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; } }
