/*
Theme Name: Виктория кухни
Theme URI: https://victoria-kuhni.ru/
Author: Виктория кухни
Description: WordPress-тема сайта «Виктория кухни»: исходный визуальный стиль, WooCommerce, SEO-архитектура, блог, специалисты и Schema.org.
Version: 4.2.2
Text Domain: victoria-kuhni
Requires at least: 6.0
Requires PHP: 7.4
*/
* {
	box-sizing: border-box;
}

body {
	margin: 0;
}

img {
	max-width: 100%;
	height: auto;
}
:root {
	/* Layout */
	--content-width: 992px;
	
	/* Colors */
	--c-main: #2D2D2D;
	--c-secondary: #888888;
	--c-accent: #FF9800;
	--c-footer: #111;
	--c-text: #111;
	--c-background: #e6e6e6;
	--c-link: #cc7a00;
	--c-link-hover: #ffad33;
	--c-link-visited: #cc7a00;	
	
	/* Font Styles */
	--font-main: 'Arial', sans-serif;
	--font-secondary: 'Georgia', serif;
	--size-h1: 42px;
	--lh-h1: 1.2;
	--size-h2: 32px;
	--lh-h2: 1.4;
	--size-h3: 28px;
	--lh-h3: 1.4;
	--size-h4: 22px;
	--lh-h4: 1.4;
	--size-text: 18px;
	--lh-text: 1.4;
} 
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

a {
  text-decoration: none;
  color: black;
}

.hide-on-desktop {
  display: none !important;
}

.hide-on-mobile {
  display: block !important;
}

.hide-on-desktopinline {
  display: none !important;
}

.hide-on-mobileinline {
  display: inline-block !important;
}

body {
  font-family: "Forum", serif;
  font-weight: 400;
  font-style: normal;
}

header {
  display: flex;
  justify-content: space-between;
  position: relative;
  margin-top: 25px;
}

.container {
  width: 80%;
  margin: 0 auto;
}



.bread, .rank-math-breadcrumb {
  margin-top: 56px;
  margin-bottom: 10px;
  font-size: 12px;
  text-transform: uppercase;
}

.bread nav ,.rank-math-breadcrumb nav {
  color: black !important;
}

.bread a, .rank-math-breadcrumb a {
  color: black !important;
}

.nav-left,
.nav-right {
  display: flex;
  flex-direction: column;
  gap: 32px;
  font-size: 14px;
}

.nav-left .top,
.nav-right .top {
  display: flex;
  gap: 65px;
  border-bottom: 2px solid #e31e24;
  padding-bottom: 14px;
  font-size: 24px;
  font-weight: 400;
}

.nav-left .top {
  padding-right: 60px;
}

.nav-right .top {
  padding-left: 13px;
}

.nav-left .top a,
.nav-right .top a {
  padding-bottom: 2px;
}

.nav-left .phone,
.nav-right .cta {
  margin-top: 5px;
  font-size: 32px;
  font-weight: 400;
}

.nav-right .cta a {
  display: block;
  text-align: right;
}

.burger,
.mobile-header,
.mobile-menu {
  display: none;
}

.mobile-header a {
  padding: 10px 6px;
  background-color: #e31e24;
  color: white;
}

.footer-desktop {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  position: relative;
  margin-top: 25px;
  padding-bottom: 35px;
}

.footer-mobile {
  display: none;
}

.nav-wrapper .mobile {
  display: flex;
  gap: 35px;
  border-bottom: 1px solid #5b5b5b;
  font-size: 14px;
}

.main-section.mobile {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 13px 0;
}

.logo.mobile {
  width: 45%;
}

.logo.mobile img {
  margin-bottom: 13px;
}

.contacts-icons.mobile {
  margin-bottom: 13px;
}

.icon.mobile {
  margin-right: 13px;
}
.footer-content.mobile {
  text-align: center;
  font-size: 12px;
  color: #888;
  padding: 10px 20px;
}
.footer-content.mobile a {
  color: red;
  text-decoration: none;
}

.about {
  margin-top: 23px;
  margin-bottom: 55px;
}

.about-content {
  margin-top: 12px;
}

.about p {
  font-size: 24px;
  font-weight: 400;
}

.title {
  border-bottom: 2px solid #e31e24;
  font-size: 64px;
  font-weight: 400;
  margin: 0;
  text-transform: uppercase;
  padding-bottom: 2px;
}

.made-like-picture {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 95px;
  margin-top: 14px;
}

.made-like-picture-wrap {
  margin-bottom: 23px;
}

.made-projects {
  text-align: center;
  margin-left: 35px;
}

.made-projects p:first-of-type {
  font-size: 96px !important;
  font-weight: 400;
  white-space: nowrap;
}

.made-projects p {
  font-size: 24px;
  font-weight: 400;
}

.made-text {
  font-size: 24px;
  font-weight: 400;
}

.why-us-wrap {
  margin-top: 25px;
}

.why-us {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 18px;
  margin: 40px 0;
}

.why-us-block {
  display: flex;
  width: 45%;
}

.why-us-block-text h3 {
  font-size: 32px !important;
  font-weight: 400 !important;
  color: #e31e24;
}

.why-us-block-text p {
  font-size: 24px;
  font-weight: 400;
}

.why-us-block-count {
  margin-right: 30px;
}

.why-us-block-count p {
  width: 90px;
  height: 90px;
  background-color: #e31e24;
  border-radius: 90%;
  text-align: center;
  color: white;
  padding: 10px;
  font-size: 64px;
}

.steps-wrap {
  margin-top: 23px;
}

.steps-container {
  display: flex;
}

.steps-left {
  width: 24%;
  text-align: center;
}

.steps-number {
  font-size: 96px;
  font-weight: 400;
}

.steps-text {
  font-size: 24px;
  line-height: 1.2;
  margin-top: -10px;
}

.steps-right {
  width: 74%;
}

.step-item {
  border-bottom: 1px solid #e42a2a;
  padding: 15px 0;
  cursor: pointer;
  padding-bottom: 34px;
}

.step-header {
  font-size: 64px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-weight: 400;
}

.step-header .plus {
  color: #e42a2a;
  font-size: 96px;
  line-height: 1;
  transition: transform 0.3s;
}

.step-content {
  font-size: 24px;
  margin-top: 10px;
  display: none;
  color: #333;
}

.step-item.active .step-content {
  display: block;
}

.step-item.active .plus {
  transform: rotate(45deg); /* превращает "+" в "x" */
}

.calculate-container {
  margin-top: 51px;
  text-align: center;
  color: #fff;
  padding: 50px 0;
}

.calculate-wrap h2 {
  font-size: 64px;
  font-weight: 400;
  line-height: 100%;
  margin-bottom: 11px;
  text-shadow: 0 0 5px rgba(0, 0, 0, 0.6);
}

.subtitle {
  font-size: 24px;
  margin-bottom: 28px;
  font-weight: 400;
}

.calculate-images {
  display: flex;
  justify-content: center;
  gap: 200px;
  margin-bottom: 40px;
  flex-wrap: wrap;
}

.calculate-image {
  text-align: center;
  max-width: 150px;
}

.img-wrapper {
  display: inline-block;
  margin-bottom: 10px;
}

.calculate-image img {
  height: auto;
  display: block;
  margin: 0 auto;
}

.calculate-image p {
  font-size: 24px;
  line-height: 100%;
  font-weight: 400;
}

.calculate-btn {
  display: inline-block;
  background-color: #e7332b;
  color: #fff;
  font-size: 32px;
  padding: 25px 155px;
  border-radius: 6px;
  text-decoration: none;
  transition: background 0.3s;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
}

.calculate-btn:hover {
  background-color: #c32621;
}

.contact-container {
  padding-top: 10px;
  padding-bottom: 30px;
  text-align: center;
  color: #fff;
  border-radius: 10px;
}

.contact-container h2 {
  font-size: 64px;
  font-weight: 400;
  margin-bottom: 10px;
  text-shadow: 0 0 5px rgba(0, 0, 0, 0.6);
}

.form-subtitle {
  font-size: 24px;
  margin-bottom: 30px;
}

.contact-form p {
  display: flex;
  justify-content: center;
  gap: 20px;
  flex-wrap: wrap;
  margin-bottom: 20px;
}

.contact-form p span {
    width: 20%;
}
.contact-form p span input {
  padding: 12px 20px;
  font-size: 14px;
  border-radius: 8px;
  border: none;
  width:100%;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
}

.contact-form p .button {
  padding: 12px 30px;
  background-color: #e7332b;
  color: #fff;
  font-size: 14px;
  border: none;
  border-radius: 8px;
  cursor: pointer;
  width: 20%;
  transition: background 0.3s;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
}

.contact-form p button:hover {
  background-color: #c32621;
}

.form-note {
  font-size: 24px;
}
.catalog {
  background: #fff;
}

.catalog-title {
  font-size: 28px;
  letter-spacing: 2px;
  border-bottom: 2px solid #d31616;
  display: inline-block;
  margin-bottom: 10px;
}

.catalog-tabs {
  margin-bottom: 23px;
  margin-top: 12px;
}

.catalog-tabs .tab {
  margin-right: 20px;
  font-size: 24px;
  color: #000;
  cursor: pointer;
}

.catalog-swiper img {
  width: 100%;
  border-radius: 10px;
  display: block;
}

.catalog-navigation {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 23px;
}

.catalog-button {
  background-color: #d31616;
  color: white;
  border: none;
  padding: 27px 102px;
  font-size: 32px;
  border-radius: 6px;
  cursor: pointer;
  font-weight: 400;
}

.catalog-tab-content.hidden {
  display: none;
}
.tab.active {
  color: #e31e24;
}

.swiper-buttons {
  display: flex;
  gap: 10px;
}

.catalog-button-prev,
.catalog-button-next {
  width: 90px;
  height: 90px;
  border: 2px solid #e31e24;
  color: #e31e24;
  background: white;
  border-radius: 50%;
  font-size: 45px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.catalog-button-next {
  color: white !important;
  background: #e31e24 !important;
}
.kitchen-block {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  background-color: #fff;
  flex-wrap: wrap;
  font-weight: 400;
}

.kitchen-content h1 {
  font-size: 64px;
  line-height: 100%;
  color: #000;
  text-transform: uppercase;
  font-weight: 400;
}

.kitchen-content h1 span {
  color: #e31e24;
  font-size: 96px;
  line-height: 100%;
}

.kitchen-content .btn {
  display: inline-block;
  margin-top: 55px;
  background-color: #e31e24;
  color: #fff;
  padding: 28px 66px;
  border: none;
  text-decoration: none;
  font-size: 32px;
  border-radius: 4px;
  transition: 0.3s ease;
  font-weight: 400;
}

.btn:hover {
  background-color: #a80e25;
}

.kitchen-content {
  width: 40%;
}

.kitchen-image {
  width: 50%;
}

.kitchen-image img {
  width: 100%;
  height: auto;
}

.cardMobileSlider {
  background: #ffffff;
  text-align: center;
  padding: 20px;
  border-radius: 8px;
  display: none;
}
.image-containerMobileSlider {
  position: relative;
}
.image-containerMobileSlider img {
  width: 100%;
  border-radius: 8px;
}
.buttonMobileSlider {
  position: absolute;
  top: 80%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #e60000;
  color: #ffffff;
  border: none;
  padding: 12px 24px;
  font-size: 16px;
  border-radius: 6px;
  cursor: pointer;
  transition: background-color 0.3s;
}
.buttonMobileSlider:hover {
  background-color: #cc0000;
}
.textMobileSlider {
  margin-top: 20px;
  font-size: 20px;
  line-height: 1.4;
}
.textMobileSlider span {
  color: #e60000;
  font-weight: bold;
}

.catalog-swiper img {
  height: 460px;
}

.advantages {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin-bottom: 30px;
}
.advantage-item {
  padding: 30px 20px;
  border-right: 1px solid #e50019;
  border-bottom: 1px solid #e50019;
}
.advantage-item img {
  margin-bottom: 15px;
}
.advantage-item h3 {
  margin: 0 0 10px;
  font-size: 32px;
  color: #e50019;
  font-weight: normal;
}
.advantage-item p {
  margin: 0;
  font-size: 24px;
  color: #000;
}

.advantage-item:nth-child(1) {
  border-left: 0;
}

.advantage-item:nth-child(3) {
  border-right: 0;
}

.advantage-item:nth-child(4) {
  border-bottom: 0;
}
.advantage-item:nth-child(5) {
  border-bottom: 0;
}
.advantage-item:nth-child(6) {
  border-right: 0;
  border-bottom: 0;
}

.pum-theme-20 .pum-content + .pum-close, .pum-theme-content-only .pum-content + .pum-close {
  top:20px !important;
  color:white !important;
}

.wpcf7-not-valid-tip{
  display: none;
}

.wpcf7-spinner{
  display: none;
}


@media (max-width: 1700px) {
  .logo {
    width: 20%;
  }
}

@media (max-width: 1350px) {
  header {
    display: none;
  }

  .container {
    width: 95%;
  }

  .logo {
    width: auto;
  }

  .cardMobileSlider {
    display: block;
  }

  .kitchen-block {
    display: none;
  }

  .mobile-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 10px;
  }

  .mobile-header .logo img {
    width: 150px;
    height: 35px;
  }

  .burger {
    display: block;
    font-size: 24px;
    cursor: pointer;
  }

  .mobile-menu {
    display: none;
    flex-direction: column;
    background: #fff;
    padding: 20px;
    position: absolute;
    top: 60px;
    left: 0;
    right: 0;
    z-index: 100;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  }

  .mobile-menu.active {
    display: flex;
  }

  .mobile-menu a {
    text-decoration: none;
    color: black;
    font-size: 16px;
    margin-bottom: 10px;
    border-bottom: 1px solid #f19999;
    padding-bottom: 5px;
  }

  .kitchen-block {
    flex-direction: column-reverse;
  }

  .kitchen-content {
    width: 100%;
  }

  .kitchen-image {
    width: 100%;
  }

  .footer-desktop {
    display: none;
  }

  .footer-mobile {
    display: block;
  }
}

@media (max-width: 768px) {
  .hide-on-desktop {
    display: block !important;
  }

  .hide-on-mobile {
    display: none !important;
  }

  .hide-on-desktopinline {
    display: inline-block !important;
  }

  .hide-on-mobileinline {
    display: none !important;
  }

  .title {
    font-size: 20px;
    border-bottom: 1px solid #e31e24;
  }

  .bread, .rank-math-breadcrumb {
    margin-top: 23px;
    margin-bottom: 4px;
  }

  .made-like-picture {
    margin-top: 10px;
    flex-direction: column;
    gap: 8px;
  }

  .made-projects p:first-of-type {
    font-size: 48px !important;
  }
  .made-projects {
    display: flex;
    align-items: center;
    gap: 14px;
  }

  .made-text {
    font-size: 14px;
  }

  .catalog-tabs .tab {
    font-size: 14px;
  }

  .catalog-tabs span {
    display: none;
  }

  .swiper-buttons {
    display: none;
  }

  .catalog-navigation {
    justify-content: center;
  }

  .catalog-button {
    font-size: 14px;
    padding: 12px 30px;
  }

  .calculate-wrap h2 {
    font-size: 20px;
    margin-bottom: 3px;
  }

  .subtitle {
    font-size: 14px;
    margin-bottom: 10px;
  }

  .calculate-image p {
    font-size: 14px;
  }

  .calculate-image {
    max-width: 50px;
  }

  .calculate-images {
    gap: 75px;
    margin-bottom: 0;
  }

  .calculate-container {
    padding: 8px 0;
  }

  .calculate-btn {
    font-size: 14px;
    padding: 12px 30px;
    margin: 12px;
  }

  .calculate-mobile-wrap {
    text-align: center;
  }

  .steps-container {
    flex-direction: column;
  }

  .steps-left {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 10px;
    justify-content: center;
  }

  .steps-number {
    font-size: 48px;
  }

  .steps-text {
    font-size: 14px;
    margin-top: 0;
  }

  .steps-right {
    width: 100%;
  }

  .step-header {
    font-size: 20px;
  }

  .step-content {
    font-size: 14px;
  }

  .step-header .plus {
    font-size: 24px;
  }

  .step-item {
    padding: 5px 0;
  }

  .why-us-block {
    width: 100%;
  }

  .why-us {
    margin: 8px 0;
  }

  .why-us-block-count p {
    width: 40px;
    height: 40px;
    padding: 5px;
    font-size: 32px;
  }

  .why-us-block-count {
    margin-right: 13px;
  }

  .why-us-block-text h3 {
    font-size: 14px !important;
  }

  .why-us-block-text p {
    font-size: 14px;
  }

  .contact-container {
    padding-bottom: 10px;
  }

  .contact-container h2 {
    font-size: 20px;
  }

  .form-subtitle {
    font-size: 14px;
  }

  .form-note {
    font-size: 9px;
  }

  .contact-form p span {
    width:50%;
  }

  .contact-form p {
    flex-direction: column;
    gap: 10px;
    margin-bottom: 10px;
    align-items: center;
  }

  .contact-form p br {
    display: none;
  }

  .contact-form p button {
    width: 50%;
  }

  .contact-form p input {
    width: 100%;
  }

  .about p {
    font-size: 14px;
  }
  .advantages {
    grid-template-columns: repeat(2, 1fr);
  }

  .advantage-item h3 {
    font-size: 16px;
  }

  .advantage-item p {
    font-size: 14px;
  }

  .advantage-item img {
    width: 40px;
    height: 40px;
  }

  .advantage-item:nth-child(2) {
    border-right: 0;
  }

  .advantage-item:nth-child(3) {
    border-right: 1px solid #e31e24;
  }

  .advantage-item:nth-child(4) {
    border-right: 0;
    border-bottom: 1px solid #e31e24;
  }
}

/* Виктория SEO/content layer: keeps the original typography and red accent. */
.victoria-logo img{display:block;width:min(260px,100%);height:auto}.logo .victoria-logo{display:block}.victoria-content{width:80%;max-width:none;margin:42px auto 72px}.victoria-content__header{border-bottom:2px solid #e31e24;padding-bottom:18px;margin-bottom:28px}.victoria-eyebrow{font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:#666;margin-bottom:8px}.victoria-content h1{font-size:64px;line-height:1.05;font-weight:400;text-transform:uppercase;margin:0}.victoria-content h2{font-size:42px;line-height:1.12;font-weight:400;margin:42px 0 16px}.victoria-content h3{font-size:30px;line-height:1.2;font-weight:400;margin:30px 0 12px}.victoria-content p,.victoria-content li{font-size:22px;line-height:1.55}.victoria-content p{margin:0 0 18px}.victoria-content ul,.victoria-content ol{margin:14px 0 24px 28px}.victoria-content li{margin:7px 0}.victoria-content a{border-bottom:1px solid #e31e24}.victoria-content table{width:100%;border-collapse:collapse;margin:24px 0 34px;font-size:20px}.victoria-content th,.victoria-content td{text-align:left;vertical-align:top;padding:14px 16px;border-bottom:1px solid #d9d9d9}.victoria-content th{border-bottom:2px solid #e31e24;font-weight:400;text-transform:uppercase}.victoria-content figure{margin:30px 0}.victoria-content figure img{display:block;width:100%;height:auto;max-height:720px;object-fit:cover;border-radius:10px}.victoria-content figcaption{font-size:15px;color:#666;margin-top:8px}.victoria-content .victoria-lead{font-size:28px;line-height:1.4;max-width:none}.victoria-content .victoria-cta{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin:34px 0;padding:24px 0;border-top:1px solid #ddd;border-bottom:1px solid #ddd}.victoria-content .victoria-cta a{display:inline-block;padding:13px 20px;background:#e31e24;color:#fff;border:0}.victoria-content .victoria-cta a.victoria-cta__secondary{background:transparent;color:#000;border:1px solid #e31e24}.victoria-blog-grid,.victoria-specialists-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:30px}.victoria-card{display:flex;flex-direction:column;border-top:2px solid #e31e24;padding-top:14px}.victoria-card__image{aspect-ratio:4/3;overflow:hidden;border-radius:10px;margin-bottom:15px}.victoria-card__image img{width:100%;height:100%;object-fit:cover}.victoria-card h2,.victoria-card h3{font-size:30px;margin:6px 0 12px;text-transform:none}.victoria-card p{font-size:19px;line-height:1.45}.victoria-card__meta{font-size:14px!important;color:#666;text-transform:uppercase;letter-spacing:.04em}.victoria-expert-card{display:grid;grid-template-columns:220px 1fr;gap:28px;margin:46px 0;padding:28px 0;border-top:2px solid #e31e24;border-bottom:1px solid #ddd}.victoria-expert-card__photo img{display:block;width:100%;height:260px;object-fit:cover;border-radius:10px}.victoria-expert-card__body h2{margin:5px 0 10px;font-size:36px;text-transform:none}.victoria-expert-card__body p{font-size:19px}.victoria-text-link{font-size:18px}.victoria-faq{margin:40px 0}.victoria-faq details{border-top:1px solid #ddd;padding:16px 0}.victoria-faq details:last-child{border-bottom:1px solid #ddd}.victoria-faq summary{cursor:pointer;font-size:24px}.victoria-faq p{font-size:19px;margin-top:12px}.victoria-related{margin-top:54px}.victoria-related__links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.victoria-related__links a{padding:16px;border:1px solid #ddd;border-bottom:2px solid #e31e24;font-size:19px}.victoria-fallback-menu{list-style:none;display:flex;gap:18px;flex-wrap:wrap}.victoria-fallback-menu li{margin:0}.victoria-source-note{font-size:14px!important;color:#777}.victoria-semantic-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:28px 0}.victoria-semantic-links a{padding:18px;border:1px solid #ddd;border-bottom:2px solid #e31e24;font-size:20px}.victoria-hero-seo{margin:36px 0 50px}.victoria-hero-seo p{max-width:none}
@media(max-width:1350px){.victoria-content{width:95%}}
@media(max-width:900px){.victoria-content{width:95%;margin-top:28px}.victoria-content h1{font-size:42px}.victoria-content h2{font-size:32px}.victoria-content h3{font-size:26px}.victoria-content p,.victoria-content li{font-size:19px}.victoria-content .victoria-lead{font-size:23px}.victoria-blog-grid,.victoria-specialists-grid,.victoria-related__links,.victoria-semantic-links{grid-template-columns:1fr}.victoria-expert-card{grid-template-columns:1fr}.victoria-expert-card__photo{max-width:320px}.victoria-content table{display:block;overflow-x:auto;font-size:17px}.victoria-content th,.victoria-content td{min-width:180px}.victoria-card h2,.victoria-card h3{font-size:27px}}


/* Performance: skip layout/paint for deep off-screen blocks until needed. */
@supports (content-visibility: auto) {
  .catalog, .steps-wrap, .why-us, .calculate-container, .contact-container,
  .victoria-content > article > .victoria-entry-content {
    content-visibility: auto;
    contain-intrinsic-size: auto 700px;
  }
}
.victoria-lazy { background: #f5f5f5; }
