:root{--orange:#ff9800;--orange2:#ffb11a;--dark:#493a39;--dark2:#2c2424;--ink:#2d2727;--paper:#fffaf3;--white:#fff;--line:rgba(45,39,39,.15);--shell:1240px}
:root {color-scheme: only light;}
html,body {background-color: #ffffff; color: #222222;max-width: 100%;overflow-x: clip;}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-size:18px;line-height:1.55}img{max-width:100%;height:auto}a{color:#FF9800;;text-decoration:none}.shell{width:min(var(--shell),calc(100% - 40px));margin-inline:auto}.shell--content{max-width:920px}.site-header{position:sticky;top:0;z-index:50;background:rgba(73,58,57,.97);border-bottom:1px solid rgba(255,255,255,.1);backdrop-filter:blur(10px)}.site-header__in{min-height:82px;display:flex;align-items:center;gap:26px}.brand{display:flex;align-items:center;gap:12px;color:#fff;font-weight:900}.brand__mark{width:58px;height:58px;object-fit:cover;border-radius:50%}.brand__custom-logo img{width:58px;height:58px;object-fit:contain}.brand__name{font-size:16px;line-height:1.1}.vseo-menu{margin-left:auto}.vseo-menu__list{display:flex;align-items:center;gap:24px;list-style:none;margin:0;padding:0}.vseo-menu a{color:#fff;font-size:14px;font-weight:800}.vseo-menu a:hover{color:var(--orange)}.header-cta{padding:12px 16px;border:1px solid var(--orange);color:var(--orange);font-size:13px;font-weight:900}.menu-toggle{display:none;background:transparent;border:1px solid rgba(255,255,255,.3);color:#fff;padding:10px 12px;font-weight:800}
.hero{position:relative;overflow:hidden;min-height:760px;background:var(--dark);color:#fff}.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 72% 45%,rgba(255,152,0,.82),rgba(255,152,0,.14) 31%,transparent 58%)}.hero__beam{position:absolute;width:80vw;height:45vw;right:-25vw;bottom:-28vw;background:var(--orange);transform:rotate(27deg);transform-origin:left top;filter:drop-shadow(0 0 40px rgba(255,152,0,.25))}.hero__grid{position:relative;z-index:2;display:grid;grid-template-columns:1.12fr .88fr;align-items:center;min-height:760px}.hero__copy{padding:90px 0}.kicker,.section-head>span,.contact-cta__in>span,.footer-kicker,.entry-kicker{font-size:14px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.hero h1{font-size:clamp(52px,6.2vw,98px);line-height:.92;max-width:930px;margin:20px 0 26px;letter-spacing:-.055em}.hero p{max-width:710px;font-size:21px;color:rgba(255,255,255,.83)}.hero__actions{display:flex;gap:26px;align-items:center;margin-top:36px}.btn{display:inline-block;padding:16px 20px;border:2px solid currentColor;font-weight:900;letter-spacing:.04em;cursor:pointer}.btn--light{background:#fff;color:var(--dark);border-color:#fff}.btn--orange{background:var(--orange);color:var(--dark);border-color:var(--orange)}.text-link{font-weight:900;color:var(--orange)}.hero__visual{display:flex;justify-content:center;align-items:center}.hero__visual img{width:min(560px,45vw);border-radius:50%;box-shadow:0 0 90px rgba(255,152,0,.32)}
.section{padding:105px 0}.section--light,.section--paper{background:var(--paper)}.section--dark{background:var(--dark);color:#fff}.section--orange{background:var(--orange);color:var(--dark)}.section-head{display:grid;grid-template-columns:190px 1fr;gap:30px;align-items:start;margin-bottom:54px}.section-head h2{font-size:clamp(44px,5vw,78px);line-height:.95;margin:0;letter-spacing:-.05em;max-width:980px}.section-head>span{padding-top:8px;color:#6d6060}.section-head--dark>span{color:var(--orange)}
.service-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line)}.service-card{border-bottom:1px solid var(--line)}.service-card:nth-child(odd){border-right:1px solid var(--line)}.service-card a{display:grid;grid-template-columns:70px 1fr 38px;gap:20px;padding:36px 28px;min-height:220px;transition:.2s}.service-card a:hover{background:var(--orange)}.service-card__num{font-weight:900}.service-card__badge{display:inline-block;font-size:11px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:#8b641c}.service-card h3{font-size:28px;line-height:1.05;margin:7px 0 14px}.service-card p{margin:0;color:#6c6060}.service-card__price{display:block;margin-top:18px;font-size:15px}.service-card__arrow{font-size:29px}.service-card a:hover p{color:rgba(45,39,39,.76)}
.about-grid{display:grid;grid-template-columns:1.1fr .7fr;gap:80px;align-items:center}.about-grid .section-head{display:block}.about-grid .section-head span{display:block;margin-bottom:22px}.entry-copy--light{font-size:21px;color:rgba(255,255,255,.82)}.about-visual img{width:100%;border-radius:50%;box-shadow:0 0 80px rgba(255,152,0,.28)}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:2px solid var(--dark)}.stat{padding:30px 24px 40px;border-right:1px solid rgba(45,39,39,.35)}.stat:last-child{border-right:0}.stat strong{display:block;font-size:58px;line-height:1;margin-bottom:14px}.stat span{font-weight:800}
.case-grid,.post-grid,.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.case-card,.post-card,.review-card{background:#fff;border:1px solid var(--line);overflow:hidden;color:var(--ink)}.case-card img,.post-card img{display:block;width:100%;aspect-ratio:1.45;object-fit:cover}.case-card__body,.post-card>a>div{padding:24px}.case-card__body>span,time{font-size:12px;font-weight:900;letter-spacing:.12em;color:#7a6e6e}.case-card h3,.post-card h3{font-size:27px;line-height:1.05;margin:12px 0}.case-card__metric{height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:radial-gradient(circle,var(--orange),rgba(255,152,0,.15) 47%,transparent 72%)}.case-card__metric strong{font-size:70px;line-height:1}.case-card__metric small{text-transform:uppercase;font-weight:900;font-size:11px;letter-spacing:.08em;text-align:center}.case-card--empty,.post-card--empty{min-height:300px;background:var(--dark);color:#fff;display:flex;align-items:flex-end}.case-card--empty p,.post-card--empty p{color:rgba(255,255,255,.7)}
.review-card{padding:30px}.review-card>span{display:block;font-size:74px;line-height:.6;color:var(--orange);font-weight:900}.review-card p{font-size:18px;min-height:120px}.review-card footer{display:flex;flex-direction:column;gap:3px}.review-card small{color:#6d6060}
.adv-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:2px solid var(--dark)}.adv-grid article{padding:30px 26px 38px;border-right:1px solid rgba(45,39,39,.35);border-bottom:1px solid rgba(45,39,39,.35)}.adv-grid article:nth-child(3n){border-right:0}.adv-grid b{font-size:13px}.adv-grid h3{font-size:27px;margin:35px 0 10px}.adv-grid p{margin:0}.partner-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:2px solid var(--dark);border-left:1px solid var(--line)}
.partner-card{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:0;padding:24px 22px 26px;background:#fff;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-width:0;transition:background .2s ease}
a.partner-card:hover{background:#fff4df}
.partner-card__logo{height:62px;display:flex;align-items:center;justify-content:flex-start;margin-bottom:18px;width:100%}
.partner-card__logo img{display:block;width:auto;max-width:100%;max-height:58px;object-fit:contain;object-position:left center}
.partner-card h3{font-size:21px;line-height:1.1;margin:0 0 7px}
.partner-card p{font-size:14px;line-height:1.4;color:#706464;margin:0;max-width:260px}
.contact-cta{position:relative;overflow:hidden;background:var(--dark);color:#fff;padding:115px 0}.contact-cta__beam{position:absolute;width:58vw;height:34vw;right:-15vw;bottom:-20vw;background:var(--orange);transform:rotate(26deg)}.contact-cta__in{position:relative;z-index:2}.contact-cta__in>span{color:var(--orange)}.contact-cta h2{font-size:clamp(46px,6vw,88px);line-height:.95;max-width:1000px;margin:20px 0 26px;letter-spacing:-.05em}.contact-cta p{max-width:720px;color:rgba(255,255,255,.8);font-size:20px;margin-bottom:34px}.contact-list{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid rgba(255,255,255,.2)}.contact-list a{padding:20px 0;border-bottom:1px solid rgba(255,255,255,.2);display:flex;flex-direction:column}.contact-list small{color:var(--orange);font-weight:900}.contact-list strong{font-size:24px}
.site-footer{background:#251f1f;color:#fff;padding:76px 0 24px}.footer-grid{display:grid;grid-template-columns:1fr .65fr;gap:70px}.footer-grid .footer-title{font-size:clamp(36px,4vw,64px);line-height:.95;margin:16px 0}.footer-grid p{color:rgba(255,255,255,.65)}.footer-kicker{color:var(--orange)}.footer-contacts{display:flex;flex-direction:column;align-items:flex-start;gap:14px;padding-top:24px}.footer-contacts a{font-size:24px;border-bottom:1px solid rgba(255,255,255,.25)}.footer-bottom{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-top:60px;padding-top:18px;border-top:1px solid rgba(255,255,255,.12);font-size:13px;color:rgba(255,255,255,.55)}.footer-bottom a{text-decoration:underline;text-underline-offset:3px}
.entry-page{padding:64px 0 0px}
.archive-page{padding:64px 0 100px}
.breadcrumbs{display:flex;gap:9px;flex-wrap:wrap;font-size:13px;margin-bottom:28px;color:#766b6b}.entry h1,.archive-head h1{font-size:clamp(46px,6vw,82px);line-height:.96;letter-spacing:-.05em;margin:16px 0 30px}.entry h2{font-size:38px;line-height:1.08;margin-top:54px}.entry h3{font-size:28px}.entry p,.entry li{font-size:19px}.entry__image{margin:20px 0 38px}.entry-accent{display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--orange);padding:20px 24px;margin:24px 0 34px}.entry-accent strong{font-size:34px}.entry-accent span{font-size:13px;font-weight:900;letter-spacing:.08em}.archive-head{margin-bottom:46px}.archive-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.archive-card{background:#fff;border:1px solid var(--line)}.archive-card img{width:100%;aspect-ratio:1.45;object-fit:cover}.archive-card div{padding:22px}.archive-card h2{font-size:27px;line-height:1.05;margin:0 0 12px}.archive-card span{font-weight:900;color:#8b641c}.nav-links{margin-top:34px;display:flex;gap:8px}.page-numbers{padding:8px 12px;border:1px solid var(--line)}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line);padding:20px 0}.faq-list summary{font-size:21px;font-weight:900;cursor:pointer}.faq-list details div{padding-top:12px;color:#625858}.vseo-inline-block{margin-top:0}
.case-card a, .service-card a, .post-card a, .archive-card a {
  color: #4f403f;
}
.wpcf7 {
    padding-bottom: 100px;
}
.h2 {
  font-size: 62px;
}
code{
    word-break: break-all !important;
  font-family: 'Fira Code', 'Courier New', Courier, monospace; /* Моноширинный шрифт */
  background-color: #f1f3f5; /* Светлая аккуратная подложка */
  color: #d63384; /* Контрастный, но мягкий цвет для текста */
  padding: 0.2em 0.4em; /* Внутренние отступы */
  border-radius: 4px; /* Легкое скругление углов */
  font-size: 85%; /* Код должен быть чуть меньше основного текста */
}
.vseo-used-materials{
    padding-bottom:100px;
}
blockquote{
    position: relative;
    display: block;
    margin: 3.9rem 0;
    padding-left: 4rem;
    font-style: italic;
    z-index: 1;
}
blockquote::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 2px;
    background-color: #ffb917;
    border-radius: 2px;
}
table {
  width: 100%;
  border-collapse: collapse;
  font-family: sans-serif;
}
table th, table td {
  padding: 12px 15px;
  text-align: left;
  border: 1px solid #e0e0e0;
}
table tr:nth-child(2n+1) td:not(:last-child) {
    border-right: 1px solid #fff;
}
table tr:nth-child(2n+1) td {
    background-color: #f5f5f5;
}
table th {
    background-color: #4f403f;
    color: #fff;
}
/* CONTACTS */

.vseo-contacts {
	max-width: 1180px;
	margin: 0 auto;
	padding: 20px 0 55px;
}

.vseo-contacts__intro {
	max-width: 800px;
	margin-bottom: 38px;
}

.vseo-contacts__intro h1 {
	margin: 0 0 25px;
}

.vseo-contacts__intro p {
	margin: 0 0 10px;
	font-size: 18px;
	line-height: 1.7;
	color: #666;
}


/* 4 КАРТОЧКИ */

.vseo-contacts__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
	margin-bottom: 16px;
}

.vseo-card {
	display: flex;
	flex-direction: column;
	min-height: 145px;
	padding: 25px 28px;
	border: 1px solid #e5e5e5;
	border-radius: 16px;
	background: #fff;
	box-sizing: border-box;
}

.vseo-card__label {
	margin-bottom: 13px;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: #777;
}

.vseo-card__value {
	margin-bottom: 15px;
	font-size: 21px;
	font-weight: 700;
	line-height: 1.35;
	color: #332826;
	overflow-wrap: anywhere;
}

.vseo-card__link {
	display: inline-block;
	width: fit-content;
	margin-top: auto;
	font-size: 14px;
	font-weight: 700;
	color: #f5a000;
	text-decoration: none;
}

.vseo-card__link:hover {
	text-decoration: underline;
}


/* ЛОКАЦИЯ */

.vseo-location {
	padding: 25px 28px;
	margin-bottom: 45px;
	border: 1px solid #e5e5e5;
	border-radius: 16px;
	background: #fff;
	box-sizing: border-box;
}

.vseo-location__value {
	margin-bottom: 8px;
	font-size: 21px;
	font-weight: 700;
	line-height: 1.4;
	color: #332826;
}

.vseo-location p {
	margin: 0;
	font-size: 16px;
	line-height: 1.65;
	color: #666;
}
/* ========================================
   CONTACT FORM — VICTORIA SEO
   ======================================== */

.vseo-form-section {
	margin-top: 55px;
	padding: 34px 38px 0;
	border-top: 4px solid #f5a000;
	border-left: 1px solid #e7e7e7;
	border-right: 1px solid #e7e7e7;
	background: #fff;
}

.vseo-form-section__label {
	margin-bottom: 12px;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: #f5a000;
}

.vseo-form-section h2 {
	margin: 0 0 12px;
	font-size: clamp(30px, 4vw, 44px);
	line-height: 1.15;
	color: #332826;
}

.vseo-form-section p {
	max-width: 680px;
	margin: 0;
	font-size: 17px;
	line-height: 1.65;
	color: #707070;
}


/* Сам блок CF7 */

.vseo-project-form {
	padding: 30px 38px 38px;
	border-right: 1px solid #e7e7e7;
	border-bottom: 1px solid #e7e7e7;
	border-left: 1px solid #e7e7e7;
	background: #fff;
	box-sizing: border-box;
}

.vseo-project-form__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
}

.vseo-project-form__field--full {
	grid-column: 1 / -1;
}


/* Названия полей */

.vseo-project-form__field label {
	display: block;
	margin-bottom: 8px;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.4;
	color: #332826;
}


/* Убираем стандартные отступы CF7 */

.vseo-project-form p {
	margin: 0;
}

.vseo-project-form .wpcf7-form-control-wrap {
	display: block;
}


/* Поля */

.vseo-project-form input[type="text"],
.vseo-project-form input[type="url"],
.vseo-project-form input[type="email"],
.vseo-project-form input[type="tel"],
.vseo-project-form textarea {
	display: block;
	width: 100%;
	margin: 0;
	padding: 15px 17px;
	border: 1px solid #dedede;
	border-radius: 10px;
	background: #fafafa;
	box-sizing: border-box;

	font-family: inherit;
	font-size: 16px;
	line-height: 1.45;
	color: #332826;

	outline: none;
	transition:
		border-color .2s ease,
		background .2s ease,
		box-shadow .2s ease;
}

.vseo-project-form textarea {
	min-height: 145px;
	resize: vertical;
}

.vseo-project-form input::placeholder,
.vseo-project-form textarea::placeholder {
	color: #aaa;
	opacity: 1;
}


/* Focus */

.vseo-project-form input:focus,
.vseo-project-form textarea:focus {
	border-color: #f5a000;
	background: #fff;
	box-shadow: 0 0 0 3px rgba(245, 160, 0, .10);
}


/* Низ формы */

.vseo-project-form__bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 30px;
	margin-top: 22px;
}


/* Согласие */

.vseo-project-form__agree {
	max-width: 600px;
	font-size: 13px;
	line-height: 1.5;
	color: #777;
}

.vseo-project-form__agree .wpcf7-list-item {
	margin: 0;
}

.vseo-project-form__agree label {
	display: flex;
	align-items: flex-start;
	gap: 9px;
	cursor: pointer;
}

.vseo-project-form__agree input[type="checkbox"] {
	flex: 0 0 auto;
	width: 17px;
	height: 17px;
	margin: 2px 0 0;
	accent-color: #f5a000;
}

.vseo-project-form__agree a {
	color: #f5a000;
}


/* Кнопка */

.vseo-project-form__submit {
	flex: 0 0 auto;
}

.vseo-project-form input[type="submit"] {
	min-height: 52px;
	margin: 0;
	padding: 14px 27px;

	border: 1px solid #f5a000;
	border-radius: 8px;

	background: #f5a000;
	color: #fff;

	font-family: inherit;
	font-size: 15px;
	font-weight: 700;
	line-height: 1;

	cursor: pointer;

	transition:
		background .2s ease,
		color .2s ease,
		transform .2s ease;
}

.vseo-project-form input[type="submit"]:hover {
	background: #332826;
	border-color: #332826;
	color: #fff;
	transform: translateY(-1px);
}


/* CF7 spinner */

.vseo-project-form .wpcf7-spinner {
	margin: 0 0 0 10px;
}


/* Ошибки */

.vseo-project-form .wpcf7-not-valid {
	border-color: #c94a4a !important;
}

.vseo-project-form .wpcf7-not-valid-tip {
	margin-top: 6px;
	font-size: 12px;
	line-height: 1.4;
}


/* Сообщение после отправки */

.vseo-project-form + .wpcf7-response-output,
.wpcf7 .wpcf7-response-output {
	margin: 18px 0 0 !important;
	padding: 13px 16px !important;
	border-width: 1px !important;
	border-radius: 8px;
	font-size: 14px;
}


/* Honeypot твоего антиспама */

.vseo-hp {
	position: absolute !important;
	left: -9999px !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
}


@media(max-width: 767px) {
table {
        display: block !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
    }
.h2 {
  font-size: 36px;
}
table thead {
        display: table-header-group !important;
    }
table tbody {
        display: table-row-group !important;
    }
    .shell--content,
    .entry,
    .entry__content {
        min-width: 0 !important;
        max-width: 100% !important;
    }

    .entry__content table {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        table-layout: fixed !important;
    }

    .entry__content th,
    .entry__content td {
        min-width: 0 !important;
        max-width: 100% !important;
        box-sizing: border-box;
    }

    .entry__content code {
        white-space: normal !important;
        overflow-wrap: anywhere !important;
        word-break: break-all !important;
        max-width: 100% !important;
    }
	.vseo-contacts__grid {
		grid-template-columns: 1fr;
		gap: 12px;
	}

	.vseo-card {
		min-height: 125px;
		padding: 21px;
	}

	.vseo-card__value {
		font-size: 18px;
	}

	.vseo-location {
		padding: 21px;
	}

	.vseo-location__value {
		font-size: 18px;
	}
	.vseo-form-section {
		margin-top: 38px;
		padding: 27px 21px 0;
	}

	.vseo-form-section p {
		font-size: 16px;
	}

	.vseo-project-form {
		padding: 24px 21px 26px;
	}

	.vseo-project-form__grid {
		grid-template-columns: 1fr;
		gap: 17px;
	}

	.vseo-project-form__field--full {
		grid-column: auto;
	}

	.vseo-project-form__bottom {
		flex-direction: column;
		align-items: stretch;
		gap: 20px;
	}

	.vseo-project-form__submit {
		width: 100%;
	}

	.vseo-project-form input[type="submit"] {
		width: 100%;
	}
}
@media(max-width:980px){.header-cta{display:none}.menu-toggle{display:block;margin-left:auto}.vseo-menu{display:none;position:absolute;top:82px;left:0;right:0;background:var(--dark);padding:20px}.vseo-menu.is-open{display:block}.vseo-menu__list{display:block}.vseo-menu li{padding:11px 0}.hero__grid,.about-grid{grid-template-columns:1fr}.hero__copy{padding:75px 0 20px}.hero__visual{padding-bottom:70px}.hero__visual img{width:min(520px,80vw)}.section-head{grid-template-columns:1fr;gap:14px}.stats-grid{grid-template-columns:1fr 1fr}.case-grid,.post-grid,.review-grid,.archive-grid{grid-template-columns:1fr 1fr}.adv-grid{grid-template-columns:1fr 1fr}.adv-grid article:nth-child(3n){border-right:1px solid rgba(45,39,39,.35)}.adv-grid article:nth-child(2n){border-right:0}.partner-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr}}
@media(max-width:640px){body{font-size:16px}.shell{width:min(100% - 28px,var(--shell))}.site-header__in{min-height:70px}.vseo-menu{top:70px}.brand__mark,.brand__custom-logo img{width:48px;height:48px}.hero h1{font-size:48px}.hero p{font-size:18px}.hero__actions{flex-direction:column;align-items:flex-start}.section{padding:74px 0}.section-head h2{font-size:43px}.service-grid,.stats-grid,.case-grid,.post-grid,.review-grid,.archive-grid,.adv-grid,.contact-list{grid-template-columns:1fr}.service-card:nth-child(odd){border-right:0}.service-card a{grid-template-columns:50px 1fr 28px;padding:28px 10px}.stat,.adv-grid article{border-right:0}.partner-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column}.entry h1,.archive-head h1{font-size:46px}.entry h2{font-size:32px}.entry-accent{align-items:flex-start;flex-direction:column}.contact-cta{padding:85px 0}}
/* Victoria SEO 1.1 — дополнительные управляемые блоки главной */
.section-intro{max-width:900px;margin:-20px 0 44px;font-size:21px;color:#6c6060}.section-intro--dark{color:rgba(45,39,39,.82)}.section-intro--light{color:rgba(255,255,255,.76)}
.task-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:2px solid var(--dark)}.task-card{min-height:250px;padding:30px 26px 36px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.task-card:nth-child(3n){border-right:0}.task-card b,.split-card b,.process-step b{font-size:12px;letter-spacing:.1em}.task-card h3,.split-card h3,.process-step h3{font-size:27px;line-height:1.08;margin:34px 0 12px}.task-card p,.split-card p,.process-step p{margin:0;color:#695e5e}
.split-grid{display:grid;grid-template-columns:1fr 1fr;border-top:2px solid var(--dark);border-bottom:1px solid rgba(45,39,39,.35)}.split-card{padding:34px 30px 42px}.split-card:first-child{border-right:1px solid rgba(45,39,39,.35)}.split-card p{color:rgba(45,39,39,.82)}.big-note{max-width:980px;font-size:30px;line-height:1.2;font-weight:900;margin:42px 0 0}
.process-list{border-top:2px solid var(--dark)}.process-step{display:grid;grid-template-columns:70px minmax(220px,.7fr) 1.3fr;gap:28px;padding:28px 0;border-bottom:1px solid var(--line);align-items:start}.process-step h3{margin:0}.process-step p{margin:0}
.scope-cloud{display:flex;flex-wrap:wrap;gap:12px}.scope-cloud span{display:inline-flex;align-items:center;min-height:54px;padding:12px 17px;border:1px solid rgba(255,255,255,.28);font-weight:900;font-size:15px}.scope-cloud span:nth-child(3n+1){border-color:var(--orange)}
.faq-home{border-top:2px solid var(--dark);max-width:1040px}.faq-home details{border-bottom:1px solid var(--line);padding:0}.faq-home summary{list-style:none;cursor:pointer;font-size:22px;font-weight:900;padding:24px 50px 24px 0;position:relative}.faq-home summary::-webkit-details-marker{display:none}.faq-home summary:after{content:'+';position:absolute;right:5px;top:20px;font-size:30px;color:var(--orange)}.faq-home details[open] summary:after{content:'−'}.faq-home details>div{padding:0 55px 24px 0;max-width:880px;color:#665b5b}.faq-home details>div p{margin:0}
@media(max-width:980px){.task-grid{grid-template-columns:1fr 1fr}.task-card:nth-child(3n){border-right:1px solid var(--line)}.task-card:nth-child(2n){border-right:0}.process-step{grid-template-columns:55px .8fr 1.2fr}.section-intro{margin-top:-10px}}
@media(max-width:640px){.task-grid,.split-grid{grid-template-columns:1fr}.task-card,.task-card:nth-child(3n),.task-card:nth-child(2n),.split-card:first-child{border-right:0}.split-card:first-child{border-bottom:1px solid rgba(45,39,39,.35)}.process-step{grid-template-columns:45px 1fr}.process-step p{grid-column:2}.big-note{font-size:24px}.scope-cloud span{font-size:14px}.faq-home summary{font-size:19px}}

/* Victoria SEO 1.3 — компактный блок партнёров */
@media(max-width:640px){
  .partner-card{padding:22px 18px 24px}
  .partner-card__logo{height:56px;margin-bottom:14px}
  .partner-card__logo img{max-height:52px}
}


/* =========================================================
   Victoria SEO 1.3.1 — mobile responsive / overflow fix
   ========================================================= */

/* Grid/flex children are allowed to shrink instead of forcing viewport overflow. */
.site-header__in,
.hero__grid,
.hero__copy,
.hero__visual,
.section-head,
.section-head > *,
.about-grid,
.about-grid > *,
.service-grid,
.service-card,
.service-card a,
.service-card__content,
.task-grid,
.task-card,
.split-grid,
.split-card,
.process-list,
.process-step,
.process-step > *,
.stats-grid,
.stat,
.case-grid,
.case-card,
.post-grid,
.post-card,
.review-grid,
.review-card,
.adv-grid,
.adv-grid article,
.partner-grid,
.partner-card,
.contact-list,
.footer-grid,
.footer-grid > * {
    min-width: 0;
}

/* Long Russian headings and technical terms must never widen the page. */
.hero h1,
.section-head h2,
.contact-cta h2,
.entry h1,
.archive-head h1,
.entry h2,
.service-card h3,
.task-card h3,
.split-card h3,
.process-step h3,
.adv-grid h3,
.partner-card h3,
.contact-list strong,
.footer-contacts a,
.scope-cloud span {
    overflow-wrap: anywhere;
    word-break: normal;
    max-width: 100%;
}

/* The decorative beams are already visually clipped by their sections.
   This additionally prevents transformed decoration from affecting viewport width. */
.hero,
.contact-cta {
    overflow: hidden;
    max-width: 100%;
}

/* Images and embeds must not force a wider layout. */
img,
svg,
video,
iframe {
    max-width: 100%;
}

/* WordPress auto-sizes intrinsic-size fix moved from inline HTML into the theme stylesheet. */
img:is([sizes=auto i],[sizes^="auto," i]) {
    contain-intrinsic-size: 3000px 1500px;
}

@media (max-width: 640px) {
    /*
     * Use calc() explicitly. It is more robust than arithmetic written
     * directly inside min() on mobile browsers.
     */
    .shell {
        width: min(var(--shell), calc(100% - 28px));
    }

    .hero {
        min-height: auto;
    }

    .hero__grid {
        min-height: auto;
    }

    .hero__copy {
        padding: 58px 0 18px;
    }

    .hero h1 {
        font-size: clamp(36px, 11.5vw, 46px);
        line-height: .96;
        letter-spacing: -.045em;
    }

    .hero p {
        font-size: 17px;
        line-height: 1.5;
    }

    .hero__visual {
        padding: 10px 0 54px;
    }

    .hero__visual img {
        width: min(420px, 88vw);
    }

    .section {
        padding: 66px 0;
    }

    .section-head {
        margin-bottom: 38px;
    }

    .section-head > span,
    .kicker,
    .contact-cta__in > span,
    .footer-kicker,
    .entry-kicker {
        font-size: 12px;
        letter-spacing: .13em;
    }

    .section-head h2 {
        font-size: clamp(32px, 10vw, 40px);
        line-height: .98;
        letter-spacing: -.04em;
    }

    .section-intro {
        margin: -8px 0 32px;
        font-size: 18px;
    }

    .service-card a {
        grid-template-columns: 42px minmax(0, 1fr) 24px;
        gap: 12px;
        padding: 25px 8px;
        min-height: 0;
    }

    .service-card h3,
    .task-card h3,
    .split-card h3,
    .process-step h3,
    .adv-grid h3 {
        font-size: 24px;
    }

    .task-card,
    .split-card,
    .adv-grid article {
        padding-left: 18px;
        padding-right: 18px;
    }

    .process-step {
        grid-template-columns: 38px minmax(0, 1fr);
        gap: 16px;
    }

    .process-step p {
        grid-column: 2;
    }

    .stat {
        padding-left: 18px;
        padding-right: 18px;
    }

    .stat strong {
        font-size: 48px;
    }

    .scope-cloud {
        gap: 9px;
    }

    .scope-cloud span {
        min-height: 46px;
        padding: 10px 13px;
        font-size: 13px;
    }

    .partner-card h3 {
        font-size: 20px;
    }

    .contact-cta {
        padding: 76px 0;
    }

    .contact-cta h2 {
        font-size: clamp(34px, 10.5vw, 46px);
        line-height: .98;
    }

    .contact-cta p {
        font-size: 17px;
    }

    .contact-list strong,
    .footer-contacts a {
        font-size: 20px;
    }

    .entry h1,
    .archive-head h1 {
        font-size: clamp(35px, 10.5vw, 44px);
    }

    .entry h2 {
        font-size: clamp(28px, 8.5vw, 34px);
    }
}

/* Extra-small phones: avoid oversized typography at 320–359 px. */
@media (max-width: 359px) {
    .shell {
        width: calc(100% - 22px);
    }

    .hero h1 {
        font-size: 34px;
    }

    .section-head h2 {
        font-size: 30px;
    }

    .contact-cta h2 {
        font-size: 32px;
    }

    .service-card a {
        grid-template-columns: 34px minmax(0, 1fr) 20px;
        gap: 9px;
    }

    .service-card h3,
    .task-card h3,
    .split-card h3,
    .process-step h3,
    .adv-grid h3 {
        font-size: 22px;
    }
}