/* Главная страница SEOGrid как SEO-платформа. Стили изолированы префиксом pf-home. */
.pf-home { --home-line: #10304a1f; --home-muted: #4a5d74; --home-ink: #14304c; }
.pf-home main { position: relative; overflow: hidden; isolation: isolate; padding-bottom: 48px; margin-bottom: -48px; background: linear-gradient(180deg,#f2fbf7 0%,#f3f8ff 9%,#f9fbff 22%,#ffffff 40%,#fcfdff 64%,#f8faff 84%,#f4f7fd 100%); }
.pf-home main::before, .pf-home main::after { content: ""; position: absolute; inset: -6% -25%; z-index: 0; pointer-events: none; will-change: transform; }
.pf-home main::before { background: radial-gradient(ellipse 34% 6% at 12% 3%,#2bd9931f,transparent),radial-gradient(ellipse 30% 5% at 30% 14%,#1fc7a014,transparent); animation: home-aurora-a 18s ease-in-out infinite alternate; }
.pf-home main::after { background: radial-gradient(ellipse 36% 6% at 88% 4%,#4b8dff33,transparent),radial-gradient(ellipse 30% 5% at 68% 20%,#6a7dff1f,transparent),radial-gradient(ellipse 34% 6% at 14% 38%,#3b82f614,transparent),radial-gradient(ellipse 32% 5% at 84% 58%,#7c6bff12,transparent),radial-gradient(ellipse 36% 6% at 22% 80%,#3b82f614,transparent),radial-gradient(ellipse 44% 6% at 78% 96%,#4b9dff1a,transparent); animation: home-aurora-b 24s ease-in-out infinite alternate; }
.pf-home main > section { position: relative; z-index: 1; }
.pf-home .tf__footer { position: relative; z-index: 2; }
@keyframes home-aurora-a { 0% { transform: translate3d(-4%,-1.5%,0) scale(1); } 50% { transform: translate3d(3%,1.5%,0) scale(1.06); } 100% { transform: translate3d(6%,-1%,0) scale(1.02); } }
@keyframes home-aurora-b { 0% { transform: translate3d(5%,1.5%,0) scale(1.04); } 50% { transform: translate3d(-3%,-1.5%,0) scale(1); } 100% { transform: translate3d(-6%,1%,0) scale(1.07); } }
@keyframes home-shimmer { to { background-position: -250% 0; } }
@keyframes home-rotate { to { transform: rotate(360deg); } }
@keyframes home-float { from { transform: translateY(0) rotate(-3deg); } to { transform: translateY(-18px) rotate(2deg); } }
@keyframes home-scale { from { transform: scale(.9); } to { transform: scale(1.12); } }

/* Hero */
.pf-home__hero { padding: 170px 0 80px; text-align: center; }
.pf-page .pf-home__eyebrow { display: inline-flex; align-items: center; gap: 9px; color: #0b8f63; font-size: 11px; font-weight: 600; letter-spacing: .13em; margin-bottom: 24px; }
.pf-page.pf-home h1 { font-size: clamp(36px,4.8vw,66px); line-height: 1.12; font-weight: 600; letter-spacing: -.045em; color: var(--home-ink); margin: 0; }
.pf-page.pf-home h1 span, .pf-page.pf-home h2 span { background: linear-gradient(100deg,#0fb37a,#0d9db0,#2f6fe8,#12b981,#0fb37a); background-size: 250% 100%; -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; color: transparent; font: inherit; letter-spacing: inherit; animation: home-shimmer 6s linear infinite; }
.pf-page .pf-home__lead { max-width: 690px; margin: 26px auto 32px; color: #43566d; font-size: 17px; line-height: 1.7; }
.pf-home__actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; }
.pf-page .pf-home__button { display: inline-flex; align-items: center; justify-content: center; gap: 12px; border: 1px solid transparent; border-radius: 8px; background: linear-gradient(120deg,#1f5fe8 0%,#3679ed 45%,#4f93ff 100%); color: #fff; padding: 16px 24px; font-size: 14px; font-weight: 500; cursor: pointer; transition: background .2s, border-color .2s, color .2s; }
.pf-page .pf-home__button:hover { background: linear-gradient(120deg,#2a6cf2 0%,#4584f5 45%,#62a0ff 100%); border-color: transparent; color: #fff; }
.pf-page .pf-home__button--ghost { background: #ffffffb3; border-color: #10304a26; color: var(--home-ink); backdrop-filter: blur(8px); }
.pf-page .pf-home__button--ghost:hover { background: #fff; border-color: #2563d9; color: #2563d9; }
/* Чипы инструментов: бегущая строка в одну линию (два одинаковых списка, трек сдвигается на половину) */
.pf-home__marquee { position: relative; max-width: 1000px; margin: 40px auto 0; overflow: hidden; padding: 6px 0 22px; -webkit-mask-image: linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent); mask-image: linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent); }
.pf-home__marquee-track { display: flex; width: max-content; animation: home-marquee 32s linear infinite; }
.pf-home__marquee:hover .pf-home__marquee-track, .pf-home__marquee:focus-within .pf-home__marquee-track { animation-play-state: paused; }
.pf-home__chips { display: flex; flex-wrap: nowrap; flex-shrink: 0; gap: 10px; margin: 0; padding: 0 10px 0 0; list-style: none; }
.pf-home__chips li { flex-shrink: 0; }
.pf-page .pf-home__chip { white-space: nowrap; }
@keyframes home-marquee { from { transform: translate3d(0,0,0); } to { transform: translate3d(-50%,0,0); } }
.pf-page .pf-home__chip { display: inline-flex; align-items: center; gap: 8px; padding: 9px 15px; border: 1px solid #ffffff; border-radius: 99px; background: #ffffffb3; color: var(--home-ink); font-size: 13px; backdrop-filter: blur(8px); box-shadow: 0 6px 18px #2a4a7a12; transition: transform .2s, box-shadow .2s; }
.pf-page .pf-home__chip:hover { transform: translateY(-2px); box-shadow: 0 10px 24px #2a4a7a22; color: var(--home-ink); }
.pf-home__chip--rankings svg { color: #2563d9; } .pf-home__chip--audit svg { color: #c47a0c; } .pf-home__chip--geo svg { color: #0d9db0; }
.pf-home__chip--monitoring svg { color: #12a05a; } .pf-home__chip--copywriter svg { color: #6b55e0; } .pf-home__chip--promo svg { color: #e0457b; }
.pf-home__trust { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 22px; margin-top: 34px; }
.pf-page .pf-home__trust span { display: flex; align-items: center; gap: 7px; color: #4a5d74; font-size: 12px; }
.pf-home__trust svg { color: #158a62; }
.pf-page.pf-home .pf-home__shape { position: absolute; z-index: 0; width: auto !important; height: auto !important; max-width: none; object-fit: contain !important; pointer-events: none; user-select: none; }
.pf-page.pf-home .pf-home__shape--halftone { top: 40px; right: -60px; width: clamp(260px,32vw,463px) !important; filter: brightness(.55) saturate(1.8) contrast(1.4); animation: home-scale 40s ease-in-out infinite alternate; }
.pf-page.pf-home .pf-home__shape--archer { top: 30%; left: 3%; width: clamp(130px,15vw,240px) !important; filter: drop-shadow(0 18px 32px #2a4a7a2e); animation: home-float 7s ease-in-out infinite alternate; }
.pf-home__hero > .container { position: relative; z-index: 1; }

/* Секции */
.pf-home__section { padding: 95px 0; scroll-margin-top: 100px; }
.pf-home__process + .pf-home__section { padding-top: 0; }
/* «Как это работает»: секция process из шаблона Seomy 1 в 1 (цвета, размеры, анимации), контейнер сайта */
.pf-home__process { padding: 120px 0; }
.pf-home__process .tpsection__wrapper { text-align: center; margin-bottom: 70px; }
.pf-home__process .tpbanner__sub-title { position: relative; display: inline-block; margin-bottom: 15px; }
.pf-home__process .tpbanner__sub-title i { display: block; line-height: 0; }
.pf-home__process .tpbanner__sub-title svg { width: 172px; height: 38px; }
.pf-home__process .tpbanner__sub-title span { position: absolute; left: 0; right: 0; margin: 0 auto; text-align: center; top: 50%; transform: translateY(-55%); font-weight: 600; font-size: 16px; color: #4260FF; display: inline-block; white-space: nowrap; }
.pf-home__process .tpprocess__border-bottom { position: relative; padding-bottom: 45px; }
.pf-home__process .tpprocess__list { list-style: none; margin-top: 0; margin-bottom: 0; padding: 0; }
.pf-home__process .tpprocess__item { position: relative; margin-bottom: 40px; }
.pf-home__process .tpprocess__item--2 { margin-left: 30px; }
.pf-home__process .tpprocess__item--3 { margin-left: 55px; }
.pf-home__process .tpprocess__item--4 { display: flex; justify-content: flex-end; }
.pf-home__process .tpprocess__wrapper { text-align: center; display: inline-block; }
.pf-home__process .tpprocess__count { width: 50px; height: 50px; line-height: 50px; text-align: center; border-radius: 50%; display: inline-block; background-color: #3EB9FF; color: #fff; font-weight: 600; font-size: 20px; position: relative; margin-bottom: 25px; }
.pf-home__process .tpprocess__count::before { position: absolute; content: ""; border: 1px solid rgba(62,185,255,.4); left: 50%; top: 50%; transform: translate(-50%,-60%); width: 64px; height: 64px; border-radius: 50%; transition: all .3s ease-out 0s; }
.pf-home__process .tpprocess__wrapper:hover .tpprocess__count::before { transform: translate(-50%,-50%); }
.pf-home__process .tpprocess__wrapper--2 .tpprocess__count { background-color: #ABBF78; }
.pf-home__process .tpprocess__wrapper--2 .tpprocess__count::before { border-color: rgba(171,191,120,.4); }
.pf-home__process .tpprocess__wrapper--3 .tpprocess__count { background-color: #FFB876; }
.pf-home__process .tpprocess__wrapper--3 .tpprocess__count::before { border-color: rgba(255,184,118,.4); }
.pf-home__process .tpprocess__wrapper--4 .tpprocess__count { background-color: #FFA0C9; }
.pf-home__process .tpprocess__wrapper--4 .tpprocess__count::before { border-color: rgba(255,173,208,.4); }
.pf-page.pf-home .pf-home__process .tpprocess__title { font-weight: 500; font-size: 18px; color: #565764; line-height: 1.35; margin: 0; letter-spacing: 0; text-transform: none; }
.pf-home__process .tpprocess-shape { position: absolute; top: 10px; }
.pf-home__process .tpprocess-shape--1 { right: -50px; }
.pf-home__process .tpprocess-shape--2 { right: -72px; }
.pf-home__process .tpprocess-shape--3 { right: -85px; }
.pf-home__process .tpprocess-shape svg { display: block; }
.pf-home__process .line-dash-path { stroke-dasharray: 4; stroke-dashoffset: 350; animation: tp-line-dash 30s linear forwards infinite; }
.pf-home__process .tpprocess__pager { display: none; }
.pf-home__process .tpprocess-shape-four { position: absolute; top: -300px; right: 5px; animation: bannerAnimationTwo 8s infinite linear; }
.pf-page.pf-home .pf-home__process .tpprocess-shape-four img { width: 120px !important; height: 109px !important; }
@keyframes tp-line-dash { 100% { stroke-dashoffset: 0; } }
@keyframes bannerAnimationTwo { 0% { transform: translate(0px,0px); } 20% { transform: translate(20px,-5px); } 40% { transform: translate(50px,20px); } 60% { transform: translate(20px,50px); } 80% { transform: translate(-20px,30px); } 100% { transform: translate(0px,0px); } }
@media (min-width:992px) and (max-width:1199px) {
  .pf-page.pf-home .pf-home__process .tpprocess__title { font-size: 15px; }
  .pf-home__process .tpprocess-shape-four { top: -280px; right: 30px; }
}
@media (max-width:991px) {
  .pf-home__process .tpprocess__item, .pf-home__process .tpprocess__item--2, .pf-home__process .tpprocess__item--3 { margin-left: 0; margin-right: 0; text-align: center; }
  .pf-home__process .tpprocess__item--4 { justify-content: center; }
  .pf-home__process .tpprocess-shape--2 { display: none; }
  .pf-home__process .tpprocess-shape-four { top: -280px; right: 35px; }
}
@media (max-width:767px) {
  .pf-home__process { padding: 80px 0; }
  .pf-home__process .tpsection__wrapper { margin-bottom: 50px; }
  .pf-home__process .tpprocess-shape, .pf-home__process .tpprocess-shape-four { display: none; }
  /* Шаги в одну строку: горизонтальная прокрутка пальцем со снапом, вертикальный скролл страницы не перехватывается */
  .pf-home__process .tpprocess__border-bottom { margin: 0 -16px; }
  .pf-home__process .tpprocess__list { flex-wrap: nowrap; margin: 0; padding: 10px 16px 4px; gap: 12px; overflow-x: auto; overflow-y: hidden; scroll-snap-type: x mandatory; scroll-padding: 0 16px; overscroll-behavior-x: contain; -webkit-overflow-scrolling: touch; scrollbar-width: none; touch-action: pan-x pan-y; }
  .pf-home__process .tpprocess__list::-webkit-scrollbar { display: none; }
  .pf-home__process .tpprocess__list > li { flex: 0 0 68%; max-width: 68%; padding: 0; scroll-snap-align: start; }
  .pf-home__process .tpprocess__item { margin-bottom: 20px; }
  .pf-home__process .tpprocess__list { position: relative; }
  .pf-home__process .tpprocess__pager { display: flex; justify-content: center; align-items: center; gap: 4px; padding: 0 16px; }
  .pf-page.pf-home .pf-home__process .tpprocess__dot { width: 28px; height: 28px; padding: 0; border: 0; background: transparent; cursor: pointer; position: relative; }
  .pf-home__process .tpprocess__dot::before { content: ""; position: absolute; left: 50%; top: 50%; width: 8px; height: 8px; border-radius: 99px; background: #0C133826; transform: translate(-50%,-50%); transition: width .3s ease, background-color .3s ease; }
  .pf-home__process .tpprocess__dot.is-active::before { width: 24px; }
  .pf-home__process .tpprocess__dot--1.is-active::before { background: #3EB9FF; }
  .pf-home__process .tpprocess__dot--2.is-active::before { background: #ABBF78; }
  .pf-home__process .tpprocess__dot--3.is-active::before { background: #FFB876; }
  .pf-home__process .tpprocess__dot--4.is-active::before { background: #FFA0C9; }
  .pf-home__process .tpprocess__dot:focus-visible { outline: 2px solid #3679ed; outline-offset: -4px; border-radius: 99px; }
}
.pf-page.pf-home h2 { font-size: clamp(28px,3.2vw,44px); letter-spacing: -.035em; font-weight: 500; line-height: 1.22; color: var(--home-ink); margin: 0; }
.pf-page .pf-home__intro { max-width: 640px; color: var(--home-muted); font-size: 14px; margin: 22px 0 38px; }

/* Инструменты */
.pf-home__grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.pf-home__tool { display: flex; flex-direction: column; padding: 28px; border: 1px solid #ffffff; border-radius: 6px; background: #ffffffb8; backdrop-filter: blur(8px); box-shadow: 0 10px 30px #2a4a7a14; transition: transform .22s ease, box-shadow .22s ease; scroll-margin-top: 110px; }
.pf-home__tool:hover { transform: translateY(-4px); box-shadow: 0 18px 40px #2a4a7a24; }
.pf-home__grid--2 { grid-template-columns: repeat(2,minmax(0,1fr)); margin-top: 40px; }
.pf-home__steps--3 { grid-template-columns: repeat(3,minmax(0,1fr)); }
.pf-home__tool-top { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-bottom: 22px; }
.pf-home__tool-icon { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 12px; }
.pf-home__tool--rankings .pf-home__tool-icon { color: #2563d9; background: #2563d91f; }
.pf-home__tool--audit .pf-home__tool-icon { color: #c47a0c; background: #f5a7422e; }
.pf-home__tool--geo .pf-home__tool-icon { color: #0d9db0; background: #0d9db024; }
.pf-home__tool--monitoring .pf-home__tool-icon { color: #12a05a; background: #22c55e24; }
.pf-home__tool--copywriter .pf-home__tool-icon { color: #6b55e0; background: #9d8cff29; }
.pf-home__tool--promo .pf-home__tool-icon { color: #e0457b; background: #e0457b1f; }
.pf-page .pf-home__status { padding: 3px 9px; border-radius: 99px; font-size: 10px; font-weight: 600; white-space: nowrap; }
.pf-page .pf-home__status--ready { color: #0b7a52; background: #12a05a1f; }
.pf-page .pf-home__status--partial { color: #9a5f0c; background: #d8a34e2e; }
.pf-page .pf-home__status--soon { color: #536176; background: #10304a14; }
.pf-page .pf-home__tool-eyebrow { color: #66788f; font-size: 10px; font-weight: 600; letter-spacing: .1em; }
.pf-page .pf-home__tool h3 { margin: 8px 0 12px; color: var(--home-ink); font-size: 19px; font-weight: 600; line-height: 1.35; }
.pf-page .pf-home__tool p { margin: 0 0 18px; color: var(--home-muted); font-size: 13px; line-height: 1.7; }
.pf-home__tool ul { margin: 0 0 22px; padding: 0; list-style: none; display: grid; gap: 8px; }
.pf-page .pf-home__tool li { display: flex; align-items: flex-start; gap: 8px; color: #33465e; font-size: 12px; line-height: 1.5; }
.pf-home__tool li svg { flex-shrink: 0; margin-top: 2px; color: #158a62; }
.pf-page .pf-home__tool-link { display: inline-flex; align-items: center; gap: 8px; margin-top: auto; color: #2563d9; font-size: 13px; font-weight: 500; }
.pf-home__tool-link svg { transition: transform .2s; }
.pf-home__tool:hover .pf-home__tool-link svg { transform: translateX(3px); }

/* Видимость */
.pf-home__vis { display: grid; grid-template-columns: 1.05fr 1fr; gap: 70px; align-items: center; }
.pf-page .pf-home__vis-lead { color: var(--home-muted); font-size: 14px; margin: 22px 0 26px; max-width: 560px; }
.pf-home__vis-list { list-style: none; margin: 0 0 30px; padding: 0; }
.pf-home__vis-list li { display: flex; gap: 14px; align-items: flex-start; padding: 14px 0; border-top: 1px solid var(--home-line); }
.pf-home__vis-list svg { flex-shrink: 0; margin-top: 2px; color: #0b8f63; }
.pf-home__vis-list strong { display: block; color: var(--home-ink); font-size: 14px; font-weight: 600; }
.pf-page .pf-home__vis-list span { display: block; color: var(--home-muted); font-size: 12px; line-height: 1.6; margin-top: 3px; }
.pf-home__board { padding: 28px; border: 1px solid #ffffff; border-radius: 6px; background: #ffffffb3; backdrop-filter: blur(10px); }
.pf-home__board-head { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 22px; }
.pf-page .pf-home__board-head span { color: #66788f; font-size: 10px; letter-spacing: .1em; }
.pf-page .pf-home__board-head small { color: #0b8f63; background: #12a05a1f; border-radius: 4px; padding: 2px 8px; font-size: 10px; }
.pf-home__bar { margin-bottom: 16px; }
.pf-page .pf-home__bar > span { display: block; margin-bottom: 7px; color: var(--home-muted); font-size: 12px; }
.pf-home__bar > i { display: block; height: 10px; border-radius: 99px; background: linear-gradient(90deg,#8fb2e8,#b9cdee); }
.pf-home__bar--1 > i { width: 100%; } .pf-home__bar--2 > i { width: 78%; } .pf-home__bar--4 > i { width: 38%; } .pf-home__bar--5 > i { width: 24%; }
.pf-home__bar--you > i { width: 54%; background: linear-gradient(90deg,#0fb37a,#0d9db0,#2f6fe8); box-shadow: 0 4px 14px #0fb37a55; }
.pf-page .pf-home__bar--you > span { color: #0b8f63; font-weight: 600; }
.pf-page .pf-home__board > p { margin: 20px 0 0; color: #66788f; font-size: 11px; line-height: 1.6; }

/* Шаги */
.pf-home__steps { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 32px; margin-top: 44px; }
.pf-page .pf-home__steps article > span { display: block; color: #0b8f63; font-size: 12px; padding-bottom: 18px; border-bottom: 1px solid #2563d033; }
.pf-page .pf-home__steps h3 { margin: 20px 0 12px; color: var(--home-ink); font-size: 17px; font-weight: 600; }
.pf-page .pf-home__steps p { color: var(--home-muted); font-size: 13px; line-height: 1.7; }

/* Продвижение */
.pf-home__promo { padding: 30px 0; }
.pf-home__promo-card { display: flex; align-items: center; gap: 28px; padding: 32px 36px; border-radius: 6px; background: linear-gradient(120deg,#1f5fe8 0%,#3679ed 45%,#4f93ff 100%); box-shadow: 0 24px 60px #3679ed40; }
.pf-home__promo-icon { display: grid; place-items: center; flex-shrink: 0; width: 60px; height: 60px; border-radius: 16px; color: #fff; background: #ffffff26; }
.pf-home__promo-card > div { flex: 1; }
.pf-page.pf-home .pf-home__promo-card h2 { font-size: clamp(22px,2.4vw,30px); color: #fff; }
.pf-page .pf-home__promo-card p { margin: 10px 0 0; color: #ffffffd9; font-size: 14px; }
.pf-home__promo-card .pf-home__button { flex-shrink: 0; white-space: nowrap; }
.pf-page.pf-home .pf-home__promo-card .pf-home__button { background: #fff; border-color: #fff; color: #3679ed; }
.pf-page.pf-home .pf-home__promo-card .pf-home__button:hover { background: #eaf1ff; border-color: #eaf1ff; color: #1f5fe8; }

/* FAQ */
/* «Из блога»: секция blog из шаблона Seomy (карточки, теги, аватар, кнопка), заголовок h2 и контейнер сайта */
.pf-home__blog { padding: 20px 0 75px; }
.pf-home__blog .tpsection__wrapper { margin-bottom: 45px; }
.pf-home__blog .tpbanner__sub-title { position: relative; display: inline-block; margin-bottom: 15px; }
.pf-home__blog .tpbanner__sub-title i { display: block; line-height: 0; }
.pf-home__blog .tpbanner__sub-title svg { width: 172px; height: 40px; }
.pf-home__blog .tpbanner__sub-title span { position: absolute; left: 0; right: 0; margin: 0 auto; text-align: center; top: 50%; transform: translateY(-55%); font-weight: 600; font-size: 16px; color: #4260FF; display: inline-block; white-space: nowrap; }
.pf-home__blog .tpblog-all { text-align: end; margin-bottom: 60px; }
.pf-page.pf-home .pf-home__blog .tpblog-all a { display: inline-flex; align-items: center; gap: 10px; font-weight: 600; font-size: 16px; line-height: 10px; color: #fff; background: linear-gradient(120deg,#1f5fe8 0%,#3679ed 45%,#4f93ff 100%); padding: 17px 28px; border-radius: 6px; transition: filter .2s; }
.pf-page.pf-home .pf-home__blog .tpblog-all a:hover { background: linear-gradient(120deg,#2a6cf2 0%,#4584f5 45%,#62a0ff 100%); color: #fff; }
.pf-home__blog .tpblog-all i { display: inline-flex; line-height: 0; }
.pf-home__blog .tpblog { height: calc(100% - 30px); margin-bottom: 30px; border-radius: 20px; padding: 25px 25px 35px 25px; border: 1px solid rgba(12,19,56,0); transition: all .3s ease-out 0s; }
.pf-home__blog .tpblog:hover { border-color: rgba(12,19,56,.1); }
.pf-home__blog .tpblog-thumb { margin-bottom: 25px; border-radius: 10px; overflow: hidden; aspect-ratio: 16 / 10; }
.pf-home__blog .tpblog-thumb a { display: block; width: 100%; height: 100%; }
.pf-page.pf-home .pf-home__blog .tpblog-thumb img { width: 100% !important; height: 100% !important; object-fit: cover; border-radius: 10px; transition: all .3s ease-out 0s; }
.pf-home__blog .tpblog:hover .tpblog-thumb img { transform: scale(1.17) rotate(6deg); }
.pf-home__blog .tpblog-thumb-empty { display: block; width: 100%; height: 100%; background: linear-gradient(135deg,#e3eeff,#e6f8f0); }
.pf-home__blog .tpblog-tag { display: flex; flex-wrap: wrap; gap: 4px; margin-bottom: 13px; }
.pf-page.pf-home .pf-home__blog .tpblog-tag a { font-weight: 500; font-size: 13px; line-height: 16px; letter-spacing: .02em; color: #414250; border: 1px solid rgba(12,19,56,.1); border-radius: 4px; padding: 4px 11px; transition: all .2s; }
.pf-page.pf-home .pf-home__blog .tpblog-tag a:hover { background-color: rgba(12,19,56,.1); border-color: transparent; color: #414250; }
.pf-page.pf-home .pf-home__blog .tpblog-title { font-weight: 600; font-size: 20px; line-height: 1.4; color: #0F1123; margin: 0 0 18px; letter-spacing: 0; }
.pf-page.pf-home .pf-home__blog .tpblog-title a { color: inherit; transition: color .2s; }
.pf-page.pf-home .pf-home__blog .tpblog-title a:hover { color: #4260FF; }
.pf-home__blog .tpblog-avatar { display: flex; align-items: center; }
.pf-home__blog .tpblog-avatar-thub { flex: 0 0 auto; margin-right: 10px; width: 40px; height: 40px; border-radius: 50%; background: #eef4ff; display: flex; align-items: center; justify-content: center; }
.pf-page.pf-home .pf-home__blog .tpblog-avatar-thub img { width: 24px !important; height: 24px !important; object-fit: contain; }
.pf-page.pf-home .pf-home__blog .tpblog-avatar-title { font-weight: 600; font-size: 15px; line-height: 18px; color: #0F1123; margin: 0 0 2px; }
.pf-home__blog .tpblog-avatar-info time { display: block; font-weight: 400; font-size: 14px; line-height: 18px; color: #565764; }
@media (min-width:576px) and (max-width:767px) {
  .pf-home__blog .tpblog { padding: 25px 15px; }
  .pf-page.pf-home .pf-home__blog .tpblog-title { font-size: 16px; }
}
@media (max-width:767px) {
  .pf-home__blog { padding-bottom: 45px; }
  .pf-home__blog .tpsection__wrapper { margin-bottom: 20px; }
  .pf-home__blog .tpblog-all { text-align: start; margin-bottom: 30px; }
}
@media (max-width:575px) {
  .pf-home__blog .tpblog, .pf-home__blog .tpblog:hover { height: auto; padding: 0; border: 0; margin-bottom: 36px; }
  .pf-home__blog .tpblog-thumb { margin-bottom: 18px; }
}
.pf-home__faq > .container { display: grid; grid-template-columns: 1fr 1.8fr; gap: 60px; }
.pf-home__faq details { border-bottom: 1px solid var(--home-line); }
.pf-home__faq summary { display: flex; justify-content: space-between; align-items: center; gap: 15px; cursor: pointer; list-style: none; padding: 23px 0; font-size: 15px; color: var(--home-ink); }
.pf-home__faq summary::-webkit-details-marker { display: none; }
.pf-home__faq summary span { color: #2563d9; font-size: 20px; transition: transform .2s; }
.pf-home__faq details[open] summary span { transform: rotate(45deg); }
.pf-page .pf-home__faq details p { color: var(--home-muted); font-size: 13px; line-height: 1.7; margin: 0 0 25px; }

.pf-home__faq { padding-bottom: 130px; }
.pf-home :is(a,button,summary):focus-visible { outline: 2px solid #2563d9; outline-offset: 4px; }

@media(max-width:991px) {
  .pf-home main { padding-bottom: 28px; margin-bottom: -28px; }
  .pf-home__hero { padding-top: 140px; }
  .pf-home__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .pf-home__vis { gap: 35px; }
  .pf-home__steps { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .pf-home__steps--3 { grid-template-columns: 1fr; }
  .pf-home__promo-card { flex-wrap: wrap; }
}
@media(max-width:767px) {
  .pf-home__hero { padding: 125px 0 55px; }
  .pf-page .pf-home__lead { font-size: 14px; margin: 22px 0 28px; }
  .pf-home__section { padding: 55px 0; }
  .pf-home__grid, .pf-home__grid--2, .pf-home__vis, .pf-home__steps, .pf-home__steps--3, .pf-home__faq > .container { grid-template-columns: 1fr; gap: 24px; }
  .pf-home__tool { padding: 24px; }
  .pf-home__board { padding: 22px 18px; }
  .pf-home__promo-card { flex-direction: column; align-items: flex-start; padding: 26px 22px; }
  .pf-home__promo-card .pf-home__button { width: 100%; }
  .pf-home__actions .pf-home__button { width: 100%; }
  .pf-page.pf-home .pf-home__shape--archer { display: none; }
  .pf-page.pf-home .pf-home__shape--halftone { top: 20px; right: -110px; opacity: .6; }
}
@media(prefers-reduced-motion:reduce) {
  .pf-home__process .line-dash-path, .pf-home__process .tpprocess-shape-four { animation: none; }
  .pf-home__marquee { -webkit-mask-image: none; mask-image: none; overflow: visible; }
  .pf-home__marquee-track { width: auto; animation: none; justify-content: center; }
  .pf-home__marquee-track > .pf-home__chips { flex-wrap: wrap; justify-content: center; padding: 0; }
  .pf-home__marquee-track > .pf-home__chips[aria-hidden] { display: none; }
  .pf-home main::before, .pf-home main::after, .pf-page.pf-home h1 span, .pf-page.pf-home h2 span, .pf-page.pf-home .pf-home__shape { animation: none; }
}


/* ===== Секция «Возможности SEOGrid»: бенто-сетка с превью интерфейса (pfx-*) ===== */
.pf-page .pfx-demo { --pfx-line: #e3e9f2; --pfx-ink: #10233d; --pfx-muted: #5b6b80; --pfx-blue: #3679ed; --pfx-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; }
.pf-page .pfx-demo .pfx-code { font-family: var(--pfx-mono); font-size: 11.5px; letter-spacing: .04em; color: #7a8aa0; text-transform: uppercase; }
.pf-page .pfx-demo .pfx-status { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; color: var(--pfx-muted); white-space: nowrap; }
.pf-page .pfx-demo .pfx-status::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: #94a3b8; }
.pf-page .pfx-demo .pfx-status--ready::before { background: #16a34a; box-shadow: 0 0 0 3px #16a34a22; }
.pf-page .pfx-demo .pfx-status--partial::before { background: #d97706; box-shadow: 0 0 0 3px #d9770622; }
.pf-page .pfx-demo .pfx-spec { display: flex; flex-wrap: wrap; gap: 4px 0; margin: 0; font-family: var(--pfx-mono); font-size: 12px; color: #4f5f75; }
.pf-page .pfx-demo .pfx-spec i { font-style: normal; margin: 0 8px; color: #b5c0cf; }
.pf-page .pfx-demo .pfx-dot { display: inline-block; flex-shrink: 0; width: 8px; height: 8px; border-radius: 50%; background: #94a3b8; }
.pf-page .pfx-demo .pfx-dot--ok { background: #16a34a; }
.pf-page .pfx-demo .pfx-dot--warn { background: #f59e0b; }
.pf-page .pfx-demo .pfx-dot--crit { background: #ef4444; }
.pf-page .pfx-demo .pfx-dot--muted { background: #c3cbd7; }
/* Сброс базовых стилей шаблона для span/p (16px, шрифт) внутри сетки */
.pf-page .pfx-demo :where(.pfx-bento) span, .pf-page .pfx-demo :where(.pfx-bento) p { font-size: inherit; font-family: inherit; font-weight: inherit; color: inherit; line-height: inherit; }
/* Карточка */
.pf-page .pfx-demo .pfx-card { position: relative; display: flex; flex-direction: column; gap: 14px; padding: 26px; border: 1px solid #d5e6ff; border-radius: 6px; background: #fff; color: var(--pfx-ink); transition: border-color .2s; }
.pf-page .pfx-demo a.pfx-card:hover { border-color: #3679ed80; color: var(--pfx-ink); }
.pf-page .pfx-demo .pfx-card__head { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.pf-page .pfx-demo h3 { margin: 0; font-size: 22px; font-weight: 600; letter-spacing: -.02em; line-height: 1.25; color: var(--pfx-ink); }
.pf-page .pfx-demo .pfx-card__text { margin: 0; color: var(--pfx-muted); font-size: 14px; line-height: 1.6; max-width: 520px; }
.pf-page .pfx-demo .pfx-more { margin-top: auto; display: inline-flex; align-items: center; gap: 8px; color: var(--pfx-blue); font-size: 14px; font-weight: 500; }
.pf-page .pfx-demo .pfx-more i, .pf-page .pfx-demo .pfx-roadmap a i { font-style: normal; transition: transform .2s; }
.pf-page .pfx-demo .pfx-card:hover .pfx-more i { transform: translateX(4px); }
/* Бенто-сетка */
.pf-page .pfx-demo .pfx-bento { display: grid; grid-template-columns: repeat(12,1fr); gap: 16px; }
.pf-page .pfx-demo .pfx-card--rankings { grid-column: span 7; }
.pf-page .pfx-demo .pfx-card--promo { grid-column: span 5; background: linear-gradient(150deg,#0f1f3d,#16305e); border-color: #16305e; }
.pf-page .pfx-demo a.pfx-card--promo:hover { border-color: #3679ed; }
.pf-page .pfx-demo .pfx-card--promo h3 { color: #fff; }
.pf-page .pfx-demo .pfx-card--promo .pfx-card__text { color: #b9c7de; }
.pf-page .pfx-demo .pfx-card--promo .pfx-code { color: #8ea3c4; }
.pf-page .pfx-demo .pfx-card--promo .pfx-status { color: #c9d6ea; }
.pf-page .pfx-demo .pfx-card--promo .pfx-spec { color: #b9c7de; }
.pf-page .pfx-demo .pfx-card--promo .pfx-spec i { color: #4a5f85; }
.pf-page .pfx-demo .pfx-card--promo .pfx-more { color: #8fb8ff; }
.pf-page .pfx-demo .pfx-card--audit { grid-column: span 5; }
.pf-page .pfx-demo .pfx-card--roadmap { grid-column: span 7; background: #f8fafd; }
/* Окно превью */
.pf-page .pfx-demo .pfx-ui { border: 1px solid var(--pfx-line); border-radius: 6px; background: #fbfcfe; font-size: 12.5px; color: var(--pfx-ink); overflow: hidden; }
.pf-page .pfx-demo .pfx-ui--audit { display: flex; align-items: center; gap: 20px; padding: 16px; }
.pf-page .pfx-demo .pfx-ring { position: relative; flex-shrink: 0; display: grid; place-content: center; width: 92px; height: 92px; border-radius: 50%; text-align: center; background: conic-gradient(var(--pfx-blue) calc(var(--pfx-score) * 1%), #e6ecf5 0); }
.pf-page .pfx-demo .pfx-ring::before { content: ""; position: absolute; inset: 8px; border-radius: 50%; background: #fbfcfe; }
.pf-page .pfx-demo .pfx-ring b, .pf-page .pfx-demo .pfx-ring span { position: relative; }
.pf-page .pfx-demo .pfx-ring b { font-size: 24px; line-height: 1; font-weight: 700; }
.pf-page .pfx-demo .pfx-ring span { font-size: 10.5px; color: #8795a8; }
.pf-page .pfx-demo .pfx-issues { flex: 1; margin: 0; padding: 0; list-style: none; }
.pf-page .pfx-demo .pfx-issues li { display: flex; align-items: center; gap: 9px; padding: 6px 0; border-bottom: 1px solid #eef2f7; }
.pf-page .pfx-demo .pfx-issues li:last-child { border-bottom: 0; }
.pf-page .pfx-demo .pfx-issues span { flex: 1; }
.pf-page .pfx-demo .pfx-issues em { font-style: normal; font-family: var(--pfx-mono); font-size: 11.5px; color: var(--pfx-muted); }
.pf-page .pfx-demo .pfx-kpis { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin-bottom: 14px; }
.pf-page .pfx-demo .pfx-kpis span { display: block; font-size: 10.5px; color: #8ea3c4; margin-bottom: 4px; }
.pf-page .pfx-demo .pfx-kpis b { font-family: var(--pfx-mono); font-size: 16px; font-weight: 600; }
.pf-page .pfx-demo .pfx-kpis em { font-style: normal; font-size: 11px; color: #4ade80; }
.pf-page .pfx-demo .pfx-kpis b.pfx-live { display: inline-flex; align-items: center; gap: 6px; font-family: inherit; font-size: 13px; }
.pf-page .pfx-demo .pfx-live i { width: 7px; height: 7px; border-radius: 50%; background: #4ade80; box-shadow: 0 0 0 3px #4ade8033; animation: pfx-pulse 2s ease-in-out infinite; }
@keyframes pfx-pulse { 50% { box-shadow: 0 0 0 6px #4ade8000; } }
/* Полоса «В разработке» */
.pf-page .pfx-demo .pfx-roadmap { margin: 0; padding: 0; list-style: none; }
.pf-page .pfx-demo .pfx-roadmap li { display: grid; grid-template-columns: 34px 1fr auto; align-items: center; gap: 12px; padding: 14px 0; border-top: 1px solid var(--pfx-line); }
.pf-page .pfx-demo .pfx-roadmap b { display: block; font-size: 15px; font-weight: 600; margin-bottom: 3px; color: var(--pfx-ink); }
.pf-page .pfx-demo .pfx-roadmap a { display: inline-flex; gap: 6px; color: var(--pfx-blue); font-size: 13px; font-weight: 500; white-space: nowrap; }
.pf-page .pfx-demo .pfx-roadmap a:hover i { transform: translateX(3px); }

@media (max-width:991px) {
  .pf-page .pfx-demo .pfx-card--rankings, .pf-page .pfx-demo .pfx-card--promo, .pf-page .pfx-demo .pfx-card--audit, .pf-page .pfx-demo .pfx-card--roadmap { grid-column: span 12; }
}
@media (max-width:575px) {
  .pf-page .pfx-demo .pfx-card { padding: 20px; }
  .pf-page .pfx-demo .pfx-ui--audit { flex-direction: column; align-items: stretch; }
  .pf-page .pfx-demo .pfx-ring { margin: 0 auto; }
  .pf-page .pfx-demo .pfx-roadmap li { grid-template-columns: 28px 1fr; }
  .pf-page .pfx-demo .pfx-roadmap li > a { grid-column: 2; }
}
/* Таблица позиций в стиле services-seo (Seomy) */
.pf-page .pfx-demo .pfx-seo { border-radius: 6px; overflow: hidden; box-shadow: 20px 30px 50px rgba(1,15,28,.08); font-size: 14px; }
.pf-page .pfx-demo .pfx-seo__head, .pf-page .pfx-demo .pfx-seo__row { display: grid; grid-template-columns: minmax(0,1fr) 74px 74px 86px; align-items: center; column-gap: 12px; }
.pf-page .pfx-demo .pfx-seo__head { padding: 12px 20px; background: #010F1C; }
.pf-page .pfx-demo .pfx-seo__head > span { font-weight: 600; font-size: 12.5px; line-height: 1; text-transform: uppercase; letter-spacing: .02em; color: rgba(255,255,255,.7); white-space: nowrap; }
.pf-page .pfx-demo .pfx-seo__rank-head { display: inline-flex; align-items: center; gap: 6px; }
.pf-page .pfx-demo .pfx-seo__body { background: #fff; border: 4px solid #fff; border-top: 0; border-radius: 0 0 6px 6px; padding-bottom: 6px; }
.pf-page .pfx-demo .pfx-seo__row { padding: 13px 16px 11px; border-bottom: 1px solid #E8EAEC; }
.pf-page .pfx-demo .pfx-seo__row:last-child { border-bottom: 0; }
.pf-page .pfx-demo .pfx-seo__query { display: block; font-weight: 500; font-size: 14px; line-height: 1.2; color: #565764; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pf-page .pfx-demo .pfx-seo__url { display: block; margin-top: 5px; font-weight: 500; font-size: 12.5px; line-height: 1.2; color: #4260FF; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pf-page .pfx-demo .pfx-seo__cell { font-weight: 500; font-size: 14px; line-height: 1; color: #787980; white-space: nowrap; }
.pf-page .pfx-demo .pfx-seo__rank { display: flex; align-items: center; gap: 12px; }
.pf-page .pfx-demo .pfx-seo__pos { font-weight: 500; font-size: 14px; line-height: 1; color: #787980; }
.pf-page .pfx-demo .pfx-seo__delta { display: inline-flex; align-items: center; gap: 4px; font-weight: 500; font-size: 14px; line-height: 1; }
.pf-page .pfx-demo .pfx-seo__delta svg { transform: translateY(-1px); }
.pf-page .pfx-demo .pfx-seo__delta.is-up { color: #0DC167; }
.pf-page .pfx-demo .pfx-seo__delta.is-down { color: #FFB72E; }
.pf-page .pfx-demo .pfx-seo__delta.is-down svg { transform: rotate(180deg) translateY(-1px); }
.pf-page .pfx-demo .pfx-seo__same { display: inline-block; width: 6px; height: 6px; border-radius: 50%; background: #D9D9D9; }
/* График сессий в карточке ПФ */
.pf-page .pfx-demo .pfx-promo-ui { display: flex; flex-direction: column; gap: 14px; }
.pf-page .pfx-demo .pfx-promo-ui .pfx-kpis { margin-bottom: 0; }
.pf-page .pfx-demo .pfx-promo-ui .pfx-kpis b { color: #fff; }
.pf-page .pfx-demo .pfx-chart { padding: 16px 16px 10px; border-radius: 6px; background: #fff; }
.pf-page .pfx-demo .pfx-chart__title { margin: 0 0 8px; font-size: 16px; font-weight: 700; line-height: 1.2; color: #0C1338; }
.pf-page .pfx-demo .pfx-chart__svg { display: block; width: 100%; height: auto; overflow: visible; }
.pf-page .pfx-demo .pfx-chart__grid { stroke: #E3E6EB; stroke-width: 1; stroke-dasharray: 4 4; }
.pf-page .pfx-demo .pfx-chart__label { fill: #9A9FAB; font-size: 9.5px; font-family: inherit; }
.pf-page .pfx-demo .pfx-chart__line { fill: none; stroke: #5DBB46; stroke-width: 4; stroke-linecap: round; stroke-linejoin: round; }
@media (max-width:575px) {
  .pf-page .pfx-demo .pfx-seo__head, .pf-page .pfx-demo .pfx-seo__row { grid-template-columns: minmax(0,1fr) 62px 70px; column-gap: 8px; }
  .pf-page .pfx-demo .pfx-seo__head > span:nth-child(2), .pf-page .pfx-demo .pfx-seo__row > span:nth-child(2) { display: none; }
  .pf-page .pfx-demo .pfx-seo__head { padding: 12px 14px; }
  .pf-page .pfx-demo .pfx-seo__row { padding: 12px 10px 10px; }
}
.pf-page .pfx-demo .pfx-seo__name { display: block; min-width: 0; }
.pf-page .pfx-demo .pfx-card, .pf-page .pfx-demo .pfx-roadmap li { scroll-margin-top: 110px; }

/* Первый экран в две колонки: текст 60% слева, картинка 40% справа (страница «Мониторинг сайтов») */
.pf-home__hero-split { display: grid; grid-template-columns: minmax(0, 60fr) minmax(0, 40fr); gap: 48px; align-items: center; text-align: left; }
.pf-home__hero-split .pf-page .pf-home__lead, .pf-home__hero-split .pf-home__lead { margin-left: 0; margin-right: 0; }
.pf-home__hero-split .pf-home__actions, .pf-home__hero-split .pf-home__trust { justify-content: flex-start; }
.pf-home__hero-media img { display: block; width: 100%; height: auto; }
@media (max-width: 991px) {
  .pf-home__hero-split { grid-template-columns: 1fr; }
  .pf-home__hero-media { display: none; }
}
