/*   
Theme Name: SiteRussia
Theme URI: siterussia.ru
Description: Дизайн сайта разработанный компанией Site Russia
Author: Wolf
Author URI: siterussia.ru
Version: 1.0
*/


/* Google Fonts: Inter */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');

:root{--blue:#30A7F1; --black:#2B2D3B; --wh-b:#F4F6FC; --green:#7CFF6B;}

*, ::after, ::before {box-sizing:border-box;}
body {margin:0; line-height:1.5; font-family:'Inter', sans-serif !important; background: linear-gradient(135deg, #07141c, #0c1f2b);}}
article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {display:block;}
a {color:var(--main-color); text-decoration:none; -webkit-tap-highlight-color:rgba(0,0,0,0); outline:none;}
img, svg {vertical-align:middle;}
label {display:inline-block; margin-bottom:.5rem;}
button, input, optgroup, select, textarea {margin:0; font-family:inherit; font-size:inherit; line-height:inherit; -webkit-appearance:none;}
button:active, button:focus {outline:none;}
button::-moz-focus-inner {border:0;}
button.close {border:none;}
p {margin-top:0;}
h1, h2, h3, h4, h5, h6 {margin-top:0; font-weight:bold; line-height:1.2;}
h1 {font-size:75px; font-weight:500; text-transform:unset; padding-bottom:40px;}
h2 {font-size:32px; margin-bottom:15px;}
h3 {font-size:26px; margin-bottom:15px;}

.container {width:100%; padding-right:15px; padding-left:15px; margin-right:auto; margin-left:auto; max-width:1260px;}
.container {width:1200px; max-width:92%; margin:0 auto;}

/* iPad */
@media (min-width:768px){
	.col-pl-2 {grid-template-columns:repeat(2, 1fr);}
}

@media (max-width:1200px){
	.modal .modal-dialog {width:100%; padding:0 18px 0 0;}
	.block {padding:60px 0px;}
	.block h2, .block h3 {font-size:25px;}
	.grid {gap:20px;}
	.col-m-2 {grid-template-columns:repeat(2, 1fr);}
	.col-m-3 {grid-template-columns:repeat(3, 1fr);}
	.o1 {order:1;}
	.o2 {order:2;}
	.form img {margin:0px auto;}
	.form, .form4 {padding:20px 20px 0px 20px!important;}
	.form .wpcf7-form, .form2 .wpcf7-form {display:grid!important; gap:5px;}
	.form .wpcf7-submit, .form2 .wpcf7-submit {margin:0px!important; padding:15px 20px!important; border-radius:12px!important;}
	#tabs {padding:20px!important;}
}

@media (max-width:992px){
	#mobile {background:#fff;}
	#mobile .container {grid-template-columns:1fr 1fr 1fr; gap:10px; align-items:center; padding-top:15px; padding-bottom:15px; border-bottom:1px solid #F4F6FC; z-index:1; position:relative; background:#fff; border-radius:26px;}
	#mobile .logo img {width:150px;}
	#mobile .text {max-width:170px; font-size:14px; color:#707070;}
	#mobile .nav a {font-size:15px; font-weight:600; justify-content:center; display:flex; align-items:center;}
	#mobile .logo img {width:120px;}
	#mobile.mobr .container {display:flex; flex-direction:column; gap:10px;}
	.mobd {display:flex; flex-direction:column; align-items:center; gap:10px; margin:20px 0px;}
	#mobile.mobr .container {background:#EFEFEF;}
	#mobile .telr {color:#02a7c8; max-width:90px; line-height:1; display:flex; gap:10px;}
	#mobile a.phone {font-size:12px!important; display:inline-block;}
	#mobile .worktime {font-size:11.2px;}
	#mobile .address {font-size:14px!important;}
	.burger {text-align:right;}
	#mobile .calc img {width:35px;}
	#mobile .burger svg {width:35px;}
	#header, #menu, #top {display:none!important;}
	#za {background-color:#fff !important;}
	#za .poly {margin-bottom:20px;}
	#mmenu {background-color:#fff;}
	#mmenu .modal-dialog {background-color:#fff;}
	#mmenu .nav {display:inline-block; width:100%; padding-top:25px; list-style:none; margin-bottom:10px;}
	#mmenu .nav>ul {padding:0px;}
	#mmenu .nav>li {padding:10px 0px; list-style:none; text-align:left; padding-left:12px; border-bottom:1px solid #dfdfdf; margin:5px;}
	#mmenu .nav.mobusl>li>a {font-weight:600;}
	#mmenu .nav .sub-menu {padding-top:10px;}
	#mmenu .nav .sub-menu>li {padding:10px 0px; list-style:none;}
	#mmenu .nav ul.hide {display:none!important;}
	#mmenu .nav .menu-item-has-children {position:relative;}
	#mmenu .nav span.menu-closed:after {content:""; width:50px; max-height:50px; position:absolute; right:0; top:6px; bottom:6px; background-image:url('images/marrow.svg'); background-size:12px 7px; background-position:center; background-repeat:no-repeat; transform-origin:center; transform:rotate(-90deg); transition:transform 0.4s cubic-bezier(0,0.5,0.5,1), opacity 0.3s cubic-bezier(0,0.5,0.5,1);}
	#mmenu .nav span.menu-closed:before {content:""; position:absolute; right:50px; top:6px; bottom:6px; border-left:1px solid #F8F8F8;}
	#mmenu .nav span.menu-closed.menu-open:after {transform:rotate(0deg); opacity:0.3;}
	#mmenu .nav span.menu-closed.menu-open:before {opacity:0;}
	#mmenu .cont {display:grid;}
	#mmenu .cont .phone {font-weight:bold; font-size:20px; margin:10px 0px;}
	#mmenu .cont .ad {margin:10px 0px;}
	#mmenu .cont .mail {color:#fd5354; margin-top:10px;}
	#mmenu .soc {margin-top:20px;}
	#mmenu .kvart {margin-top:20px;}
	h1 {font-size:30px;}
	h2 {font-size:25px;}
	h3 {font-size:22px;}
	#mmenu {background:#fff; position:fixed; top:0; left:0; width:100%; height:100vh; overflow-y:auto; z-index:1041; display:none;}
	#mmenu.active {display:block;}
	#mmenu .nav ul, #mmenu .nav li {list-style:none; margin:0; padding:0; font-weight:500;}
	#mmenu .nav>li {border-bottom:1px solid #eaeaea; padding:15px 20px; position:relative;}
	#mmenu .nav li.menu-item-has-children>a::after {content:""; display:inline-block; width:12px; height:8px; position:absolute; top:25px; right:0; transition:transform .3s ease; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='none' stroke='%2330A7F1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M1 1l5 5 5-5'/%3E%3C/svg%3E") no-repeat center/contain;}
	#mmenu .nav li.menu-item-has-children.open>a::after {transform:rotate(180deg);}
	#mmenu .nav .sub-menu {max-height:0; overflow:hidden; transition:max-height .3s ease; padding-left:20px;}
	#mmenu .nav li.open>.sub-menu {max-height:500px;}
	#mmenu .nav .sub-menu li {border:none; padding:10px 15px; margin:7px 0;}
	#mmenu .nav .sub-menu a {color:#444; font-size:15px; text-decoration:none;}
	#mmenu .nav span.menu-closed {position:absolute; right:15px; top:15px; width:30px; height:30px; background:url('images/marrow.svg') center/10px no-repeat; cursor:pointer; transition:transform .3s ease;}
	#mmenu .nav span.menu-open {transform:rotate(90deg); opacity:.5;}
	#mmenu .modal-content {padding:10px 0 0 15px;}
	#mmenu .phone {white-space:nowrap; font-size:22px; font-weight:600; color:var(--blue);}
}

/* iPhone 5 */
@media (max-width:400px){
	.modal .modal-dialog {width:100%; padding:20px 15px 20px 0px!important;}
	.modal .modal-dialog .button {width:100%; padding:20px!important;}
	#mobile .text {font-size:10px!important;}
	.block h2, .block h3 {font-size:26px; line-height:28px;}
	#mobile .logo img {width:95px;}
	#mobile .calc img {width:30px;}
	#mobile .burger svg {width:30px;}
}

@media (min-width:991px){
	#mobile {display:none!important;}
	.modal .modal-dialog {max-width:500px; height:110%; padding:30px; position:absolute; right:0; margin:0px; background:#f3f3f3;}
	.wpcf7 .wpcf7-form .wpcf7-response-output {display:block!important; padding-top:20px;}
	.block {padding:90px 0px;}
	.grid {gap:30px;}
	.col-pc-2 {grid-template-columns:repeat(2, 1fr);}
	.col-pc-3 {grid-template-columns:repeat(3, 1fr);}
	.col-pc-4 {grid-template-columns:repeat(4, 1fr);}
	.col-pc-5 {grid-template-columns:repeat(5, 1fr);}
	.col-pc-6 {grid-template-columns:repeat(6, 1fr);}
	.col-pc-7 {grid-template-columns:repeat(7, 1fr);}
	.col-pc-1-2 {grid-template-columns:1fr 2fr;}
	.col-pc-07-2 {grid-template-columns:0.7fr 2fr;}
	.col-pc-2-07 {grid-template-columns:2fr 0.7fr;}
	.col-pc-2-1 {grid-template-columns:2fr 1fr;}
	.col-pc-15-2 {grid-template-columns:1.5fr 2fr;}
	.col-pc-2-3 {grid-template-columns:2fr 3fr;}
	.col-pc-3-7 {grid-template-columns:3fr 7fr;}
	.col-pc-15-1 {grid-template-columns:1.5fr 1fr;}
	.col-pc-15-25 {grid-template-columns:1.5fr 2.5fr;}
	.col-pc-1-01-2 {grid-template-columns:1fr 0.1fr 2fr;}
}

.block h2 {font-size:74px; color:var(--black); font-weight:500; text-transform:unset; padding-bottom:40px;}

/* Дата для мобильного */
input[type="date"]:before {color:lightgrey; content:attr(placeholder) !important; margin-right:0.5em;}
input[type="date"]:focus:before {content:'' !important;}

/* Кнопка вверх */
.btn-back-top {opacity:0; background:var(--blue); border-radius:2px; cursor:pointer; display:block!important; width:45px; height:45px; position:fixed; right:15px; bottom:15px; transition:.5s; z-index:1030;}
.btn-back-top:hover {opacity:1!important;}
.btn-back-top:before {border-radius:4px; border-color:#fff; border-style:solid; border-width:5px 0 0 5px; content:""; width:17px; height:17px; position:absolute; top:17px; left:15px; transform:rotate(45deg);}


/* ============================
   HERO
   ============================ */
.hero {position:relative; height:100vh; min-height:620px; background:url("/wp-content/uploads/2026/04/sanseyyana-1.jpg") center/cover no-repeat; color:#fff; font-family:Arial, sans-serif;}
.hero span {color:#000;}
.hero-header {position:absolute; top:5px; left:40px; right:40px; display:flex; align-items: flex-start; justify-content:space-between; z-index:2; }
.hero-header.ikompp {align-items: center!important;}
.logo {display:flex; align-items:center!important; flex-direction: column;}
.logo.glavnaya {align-items:flex-start!important;}
.logo img {height:80px; width:auto; display:block;}
.logo.okomp {align-items: center!important;}
.menu {display:flex; gap:14px; font-size:20px; text-transform:lowercase; align-items:center; margin-top: 20px;}
.company-hero .menu { margin-top: 0px; }
.menu a {color:#000; text-decoration:none; opacity:.9; transition:all .3s ease;}
.menu a:hover {color:#7CFF6B;}
.company-hero .menu a {color:#fff;}
.menu span {opacity:.5;}
.burger {width:26px; height:22px; display:flex; flex-direction:column; justify-content:space-between; cursor:pointer; transition:all .3s ease; margin-left: 5px;}
.burger:hover span {background:#7CFF6B;}
.burger span {display:block; height:2px; background:#000; border-radius:2px; transition:all .3s ease;}
.header-actions {display:flex; gap:8px; align-items:center;}
.company-hero .burger span {background: #fff;}
.company-hero svg {stroke: #fff;}
.company-hero .header-action-btn { border: 1px solid #fff;}
.header-action-btn {width:40px; height:40px; border:1px solid rgba(0,0,0,.3); border-radius:50%; display:flex; align-items:center; justify-content:center; transition:all .3s ease;}
.header-action-btn:hover {background:#7CFF6B; border-color:#7CFF6B;}
.header-action-btn:hover svg {stroke:#000;}
.hero-content {position:absolute; left:40px; right:40px; bottom:50px; max-width:900px;}
.hero-header.okomp { align-items: center;}
.hero-btn {display:inline-block; border:1px solid rgba(255,255,255,1); padding:14px 28px; border-radius:30px; color:#fff; text-decoration:none; font-size:22px; transition:all .3s ease; cursor:pointer;}
.hero-btn:hover {background:#7CFF6B; color:#000; border-color:#7CFF6B;}
.hero h1 {font-size:56px; line-height:1.05; font-weight:300; margin:0;}

@media(max-width:1024px){
	.hero h1 {font-size:40px;}
	.hero {min-height:560px;}
	.hero-header { align-items: flex-start !important;}
	.company-hero .hero-header { align-items: center !important; z-index:9000; }
}
@media(max-width:768px){
	.hero-header {left:16px; right:16px; top:16px;}
	.hero-content {left:16px; right:16px; bottom:20px;}
	.hero h1 {font-size:24px; line-height:1.2; margin-bottom:40px;}
	.hero-btn {font-size:15px; padding:10px 20px; margin-bottom:16px;}
	.menu {font-size:13px; gap:3px;}
	.logo img {height:50px;}
	.logo.okomp img {height: 35px;}
	.header-actions {display:none;}
	.menu {margin-top: 12px;}
	.hero {height: 80vh;}
}
@media(max-width:480px){
	.hero h1 {font-size:22px;}
	.hero-btn {font-size: 12px; padding: 10px 8px;}
	.menu a {font-size:14px;}
	.logo img {height:45px;}
}


/* ============================
   BURGER MENU (десктоп-панель)
   ============================ */
.burger-menu {position:fixed; top:0; right:-420px; width:400px; height:100vh; background:#061824; z-index:9999; padding:80px 40px 40px; transition:right .4s ease; overflow-y:auto; box-shadow:-4px 0 30px rgba(0,0,0,.3);}
.burger-menu.active {right:0;}
.burger-menu-close {position:absolute; top:25px; right:25px; width:36px; height:36px; cursor:pointer; background:none; border:none; display:flex; align-items:center; justify-content:center;}
.burger-menu-close:before, .burger-menu-close:after {content:""; position:absolute; width:24px; height:2px; background:#fff;}
.burger-menu-close:before {transform:rotate(45deg);}
.burger-menu-close:after {transform:rotate(-45deg);}
.burger-menu-overlay {position:fixed; inset:0; background:rgba(0,0,0,.5); z-index:9998; display:none;}
.burger-menu-overlay.active {display:block;}
.burger-menu-nav {list-style:none; padding:0; margin:0 0 40px;}
.burger-menu-nav li {border-bottom:1px solid rgba(255,255,255,.15);}
.burger-menu-nav a {display:block; padding:18px 0; color:#fff; text-decoration:none; font-size:20px; transition:all .3s ease;}
.burger-menu-nav a:hover {color:#7CFF6B;}


.founder {background:#061824; color:#e9eef2; padding:90px 0 120px; font-family:Arial, sans-serif;}
.founder-grid {
    display: grid;
    grid-template-columns: 330px 1fr;
    gap: 150px;
    align-items: start;
}

.founder-left {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 17px;
}

.founder-photo-wrap {
    width: 330px;
    height: 460px;
    overflow: hidden;
    border-radius: 65px;
}

.founder-photo {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    display: block;
    transform: scale(1.20) translateX(3%);
    transform-origin: center 42%;
}
.founder-name {display:block; margin-top:30px; border:1px solid #7CFF6B; padding:14px 26px; border-radius:30px; text-align:center; font-size:20px; color:#e9eef2; text-decoration:none; transition:all .3s ease; width: 100%;}
.founder-name:hover {background:#7CFF6B; color:#000; border-color:#7CFF6B;}
.founder-title {display:flex; align-items:center; margin-left: -7px;}
.founder-title h2 {font-size:70px; margin:0; font-weight:300; letter-spacing:1px;}
.gr-logo-inline {height: 86px; width: auto; display: inline-block; vertical-align: middle; margin-right: 8px; margin-bottom: 4px;}
.gr {font-weight:700; font-size:28px; color:#fff;}
.founder-text {font-size:17px; line-height:1.65; max-width:640px;}
.founder-text .otst {padding-bottom: 25px;}
.founder-text p {margin-bottom:0px; text-align: justify;}
.founder-list {margin-top: 0px; padding-left:0; list-style:none;}
.founder-list li { position:relative; padding-left:22px;}
.founder-list li:before {content:"✓"; position:absolute; left:0; color:#7CFF6B;}
.founder-text p{text-align:justify;line-height:1.7;margin:0 0 16px}
.founder-text p:last-child{text-align:left}

@media(max-width:900px){
	.founder {padding:70px 0;}
	.founder-grid {grid-template-columns:1fr; gap:10px;}
	.founder-photo {max-width:300px; margin:0 auto;}
	.founder-title {justify-content:center; margin-top:10px;}
	.founder-title h2 {font-size:34px;}
	.gr {font-size:22px;}
	.founder-text {font-size:16px; max-width:100%;}
	.founder-left {margin-top: 0px;}
	.founder-name {margin-top:30px; }
}


.people-block{position:relative;height:810px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:url("./images/photo2.png") center/cover no-repeat;}
.people-video{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:0;}
.people-overlay {position:absolute; inset:0; background:rgba(0,0,0,.25);}
.people-content {position:relative; text-align:center; color:#fff;}
.people-content h2 {font-size:140px; font-weight:400; line-height:1.05; margin:0; letter-spacing:.5px;}
@media(max-width:768px){
	.people-block {height:420px;}
	.people-content h2 {font-size:70px;}
}


.history {background:#000000; color:#fff; padding:30px 0 100px; text-align:center;}
.history-title {font-size:70px; font-weight:300; margin-bottom:60px;}
.history-grid {display:grid; grid-template-columns:repeat(4,1fr); gap:40px; position:relative;}
.history-img {width:100%; height:270px; object-fit:cover; object-position:top; border-radius:53px; margin-bottom:18px;} 
.history-year {display:inline-block; border:1px solid #7CFF6B; padding:12px 28px; border-radius:30px; margin-bottom:16px; width: 100%;}
.history-item p {font-size:18px; line-height:1.4;}
.history-timeline {position:relative; margin-top:10px; height:20px;}
.history-timeline:before {content:""; position:absolute; left:0; right:0; top:9px; height:2px; background:#7CFF6B;}
.history-timeline span {position:absolute; top: -3px; width: 25px; height: 25px; background:#7CFF6B; border-radius:50%;}
.history-timeline span:nth-child(1) {left:0;}
.history-timeline span:nth-child(2) {left:23.33%;}
.history-timeline span:nth-child(3) {left:49.66%;}
.history-timeline span:nth-child(4) {right:23%;}

@media(max-width:900px){
	.history {padding:15px 0 70px; text-align:left;}
	.history-title {text-align:center; font-size:42px; margin-bottom:40px;}
	.history-grid {grid-template-columns:1fr; gap:50px; padding-left:26px;}
	.history-item {position:relative; display:flex; flex-direction:column; align-items:flex-start;}
	.history-item:before {content:""; position:absolute; left:-32px; top:-5px; width:14px; height:14px; background:#7CFF6B; border-radius:50%;}
	.history-grid:before {content:""; position:absolute; left:0; top:0; bottom:0; width:2px; background:#7CFF6B;}
	.history-img {max-width: 100%; height: 334px; border-radius: 66px;}
	.history-year {padding:10px 20px; font-size:14px;}
	.history-item p {font-size:16px;}
	.history-line {display:none;}
	.history-timeline {  display: none;}
}


.stats {background:linear-gradient(135deg,#07141c,#0c1f2b); color:#fff; padding:110px 0; text-align:center;}
.stats  .gr-logo-stats {height: 80px; margin-top: 3px;}
.stats-title {font-size:70px; font-weight:300; margin-bottom:60px; display:flex; align-items:center; justify-content:center; gap:10px; flex-wrap:wrap;}
.stats-title span {color:#7CFF6B; font-weight:600;}
.gr-logo-stats {height:60px;}
.stats-grid {display:grid; grid-template-columns:repeat(3,1fr); gap:30px; align-items:stretch;}
.stat-link {text-decoration:none; color:inherit; display:flex; border-radius:26px; transition:transform .4s ease;}
.stat-link:hover {transform:translateY(-6px);}
.stat-card {border:2px solid #7CFF6B; border-radius:26px; padding:45px 30px; min-height:360px; display:flex; flex-direction:column; justify-content:center; transition:all .4s ease; cursor:pointer; flex:1;}
.stat-card:hover {background:#000; color:#fff; box-shadow:0 0 40px rgba(124,255,107,.2);}
.stat-green {background:#9BF05B; color:#000; border:none;}
.stat-green:hover {background:#000; color:#fff;}
.stat-green:hover .ring-bg {stroke:rgba(255,255,255,.3);}
.stat-green:hover .ring-fill {stroke:#7CFF6B;}
.stat-green:hover .circle-percent {color:#fff;}
@media (max-width: 768px) {.stats .gr-logo-stats {height: 45px; margin-top: 5px; }}

/* КРУГ */
.circle-wrap {position:relative; width:160px; height:160px; margin:0 auto 20px;}
.progress-ring {transform:rotate(-90deg);}
.ring-bg {fill:none; stroke:#7dff6c; stroke-width:14; transition:all .4s ease;}
.ring-fill {fill:none; stroke:#000; stroke-width:14; stroke-dasharray:440; stroke-dashoffset:440; transition:2s ease;}
.stat-green .ring-fill {stroke:#000;}
.circle-percent {position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); font-size:38px; font-weight:600; transition:color .4s ease;}

/* ПРОГРЕСС */
.progress {display:flex; align-items:center; gap:14px; margin-bottom:20px; justify-content:center; height: 160px;}
.progress-line {height:8px; width:0; background:#7CFF6B; border-radius:10px; transition:2s ease;}
.progress span {font-size:28px;}

/* ЧЕЛОВЕЧКИ */
.people-grid {display:grid; grid-template-columns:repeat(5,28px); gap:0 16px; justify-content:center; margin-bottom:25px; height: 160px;}
.person {width:28px; height:44px; fill:#7CFF6B; opacity:0; transform:translateY(15px) scale(.8); transition:.4s;}
.person.active {opacity:1; transform:translateY(0) scale(1);}

/* reveal */
.reveal {opacity:0; transform:translateY(40px); transition:1s;}
.reveal.active {opacity:1; transform:translateY(0);}
h2.stats-title.reveal.active { display: block; }

.stat-card h3 {font-size:28px; margin-bottom:12px;}
.stat-card p {opacity:.85; font-size:16px;}
.people-icon {font-size:40px; margin-bottom:10px;}

@media(max-width:900px){
	.stats {padding:70px 0;}
	.stats-title {font-size:34px; margin-bottom:40px;}
	.stats-grid {grid-template-columns:1fr; gap:20px;}
	.stat-card {padding:30px;}
}


/* ============================
   CONTACTS
   ============================ */
.contacts {position:relative; background:url("/wp-content/uploads/2026/04/zamena.jpg") center/cover no-repeat;      background-size: 150%; padding:80px 0 20px; color:#fff;}
.contacts-overlay {position:absolute; inset:0; background:rgba(0,0,0,.25);}
.contacts-inner {position:relative;}
.contacts-title {text-align:center; font-size:70px; font-weight:300; margin-bottom:50px;}
.contacts-grid {display:grid; grid-template-columns:repeat(2,1fr); gap:26px; margin:0 auto;}
.contact-card {border:2px solid rgba(255,255,255,.7); border-radius:26px; padding:30px; backdrop-filter:blur(4px); transition:all .4s ease; cursor:pointer; position:relative; display:flex; flex-direction:column; justify-content:space-between;}
.contact-card:hover {background:#000; border-color:#7CFF6B;}
.contact-card a {color:#fff; text-decoration:none; transition:color .3s ease;}
.contact-card:hover a {color:#7CFF6B;}
.contact-dark {background:#000; border:2px solid rgba(255,255,255,.7);}
.contact-phone {font-size:28px; margin-top:14px;}
.contact-phone a {font-size:28px;}
.contact-icon {position:absolute; top:20px; right:20px; width:44px; height:44px; border:1px solid rgba(255,255,255,.5); border-radius:50%; display:flex; align-items:center; justify-content:center; transition:all .3s ease;}
.contact-card:hover .contact-icon {border-color:#7CFF6B;}
.contact-icon svg {width:20px; height:20px; fill:none; stroke:#fff; stroke-width:2; transition:stroke .3s ease;}
.contact-card:hover .contact-icon svg {stroke:#7CFF6B;}
.contacts .glavv {padding: 80px 30px 0;}
@media(max-width:768px){
	.contacts {padding:80px 0 0; background-size: cover;}
	.contacts-title {font-size:36px; margin-bottom:30px;}
	.contacts-grid {grid-template-columns:1fr;}
	.contact-card {padding:24px;}
	.contact-phone {font-size:22px;}
	.contact-phone a {font-size:22px;}
	.contacts .glavv {padding: 60px 0 15px 15px;}
}

/* ============================
   MODAL FORM
   ============================ */
/* Оверлей */
.modal-form-overlay { position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.85);display:none;align-items:center;justify-content:center;z-index:10000;backdrop-filter:blur(4px);padding:15px; }
.modal-form-overlay.active { display:flex; }
/* Контейнер */
.modal-form-container { display:flex;width:100%;max-width:1000px;max-height:700px;background:#000;border-radius:40px;position:relative;overflow:hidden;animation:modalScaleIn 0.3s ease; }
/* Анимация */
@keyframes modalScaleIn { from {opacity:0;transform:scale(0.95) translateY(20px);} to {opacity:1;transform:scale(1) translateY(0);} }
/* Крестик */
.modal-form-close { position:absolute;top:20px;right:25px;background:none;border:none;cursor:pointer;z-index:10;width:30px;height:30px; }
.modal-form-close:before, .modal-form-close:after { content:"";position:absolute;top:50%;left:50%;width:24px;height:2px;background:#000; }
.modal-form-close:before { transform:translate(-50%,-50%) rotate(45deg); }
.modal-form-close:after { transform:translate(-50%,-50%) rotate(-45deg); }
/* Левая часть */
.profile-block { flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;text-align:center; }
.profile-photo-wrapper { width:260px;height:390px;border:1px solid rgba(255,255,255,0.3);border-radius:80px;overflow:hidden;margin-bottom:25px; }
.profile-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    display: block;
}
.profile-img[src*="yana"] {
    transform: scale(1.0);
}

.profile-img[src*="dasha"] {
    transform: scale(1.08);
}

.profile-img[src*="alexey"] {
    transform: scale(1.08);
}
.name-badge { color:#fff;border:1px solid #adff6b;padding:8px 30px;border-radius:30px;font-size:1.1rem;margin-bottom:10px; }
.role-text { color:#888;font-size:0.9rem; }
/* Правая часть */
.form-block { flex:1.4;background:#e2e5e9;padding:60px 50px;border-radius:60px 0 0 60px;display:flex;flex-direction:column;justify-content:center; }
.form-block h3 { color:#000;font-size:1.6rem;text-align:center;margin-bottom:35px;font-weight:800;line-height:1.2; }
/* Форма */
.custom-form-styled { display:flex;flex-direction:column;gap:8px; }
.custom-form-styled input, .custom-form-styled textarea { width:100%;padding:14px 25px;border-radius:40px;border:none;background:#c5c9d1;font-size:1rem;outline:none; }
.custom-form-styled input::placeholder, .custom-form-styled textarea::placeholder { color:#7a7e85;text-align:center; }
/* Кнопка */
.neon-submit-btn { background:#adff6b;border:1px solid #000;color:#000!important;padding:14px;border-radius:40px;font-weight:bold;font-size:1.2rem;cursor:pointer;text-transform:uppercase;margin-top:0;transition:0.3s; }
.neon-submit-btn:hover { background:#9ee661; }
/* Текст */
.disclaimer-text { margin-top:0;text-align:center;font-size:0.85rem;color:#7a7e85; }
.disclaimer-text p{  margin-bottom: 3px;}


@media (max-width: 850px) {
	.modal-form-overlay { padding:10px; }
	.modal-form-container { flex-direction:column;border-radius:20px;max-height:90vh;overflow-y:auto; }
	.profile-block { padding:25px 15px 5px; }
	.profile-photo-wrapper { width:140px;height:160px;border-radius:40px;margin-bottom:15px; }
	.name-badge { font-size:0.9rem;padding:6px 20px; }
	.role-text { font-size:0.8rem; }
	.form-block { height: 1000px; padding:20px 15px 25px;border-radius:30px 30px 0 0; }
	.form-block h3 { font-size:1rem;margin-bottom:20px; }
	.custom-form-styled { gap:7px; }
	.custom-form-styled input, .custom-form-styled textarea { padding:12px 15px;font-size:0.9rem;border-radius:25px; }
	.neon-submit-btn { padding:14px;font-size:1rem;border-radius:30px; }
	.disclaimer-text { font-size:0.75rem;margin-top:10px; }
	.modal-form-close { top:20px;right:10px; }
	.modal-form-close:before, .modal-form-close:after { background:#fff; }
}

/* CF7 стили внутри модалки */
.modal-form-body .wpcf7 input[type="text"],
.modal-form-body .wpcf7 input[type="email"],
.modal-form-body .wpcf7 input[type="tel"],
.modal-form-body .wpcf7 textarea {width:100%; border:2px solid #e8e8e8; border-radius:14px; padding:14px 18px; font-size:15px; font-family:'Open Sans', sans-serif; transition:border-color .3s; background:#fafafa; outline:none; margin-bottom:14px; box-sizing:border-box;}
.modal-form-body .wpcf7 input:focus,
.modal-form-body .wpcf7 textarea:focus {border-color:#7CFF6B;}
.modal-form-body .wpcf7 textarea {height:100px; resize:vertical;}
.modal-form-body .wpcf7 input[type="submit"] {width:100%; background:#7CFF6B; color:#000; border:none; border-radius:14px; padding:16px; font-size:17px; font-weight:600; cursor:pointer; transition:all .3s; font-family:'Open Sans', sans-serif;}
.modal-form-body .wpcf7 input[type="submit"]:hover {background:#061824; color:#7CFF6B;}
.modal-form-body .wpcf7-response-output {font-size:14px; margin-top:10px;}
.modal-form-body p {margin-bottom:0;}
.modal-form-body .wpcf7-form p {margin-bottom:0;}

@media(max-width:768px){
	.modal-form {grid-template-columns:1fr; max-width:95%;}
	.modal-form-photo {flex-direction:row; padding:15px; gap:10px;}
	.modal-form-photo img {width:60px; height:60px; margin-bottom:0;}
	.modal-form-body {padding:25px 15px;}
	.modal-form-body h3 {font-size:22px;}
	.gr-logo-inline {height:42px;}
	.gr-logo-stats {height:36px;}
}

/* Custom form (замена CF7) */
.custom-form input[type="text"],
.custom-form input[type="email"],
.custom-form input[type="tel"],
.custom-form textarea {width:100%; border:2px solid #e8e8e8; border-radius:14px; padding:14px 18px; font-size:15px; font-family:'Open Sans', sans-serif; transition:border-color .3s; background:#fafafa; outline:none; margin-bottom:14px; box-sizing:border-box;}
.custom-form input:focus,
.custom-form textarea:focus {border-color:#7CFF6B;}
.custom-form textarea {height:100px; resize:vertical;}
.form-submit-btn {width:100%; background:#7CFF6B; color:#000; border:none; border-radius:14px; padding:16px; font-size:17px; font-weight:600; cursor:pointer; transition:all .3s; font-family:'Open Sans', sans-serif;}
.form-submit-btn:hover {background:#061824; color:#7CFF6B;}
.form-submit-btn:disabled {opacity:.6; cursor:wait;}
.form-status {font-size:14px; margin:12px 0; text-align:center; padding:0 10px;}
.form-success {color:#000;}
.form-error {color:#e74c3c;}
@media(max-width:991px) {
	.form-status {margin:5px 0;}
}

/* ============================
   SCROLL ANIMATIONS
   ============================ */
.anim {opacity:0; transform:translateY(50px); transition:opacity .8s ease, transform .8s ease;}
.anim.visible {opacity:1; transform:translateY(0);}
.anim-child {opacity:0; transform:translateY(30px) scale(.96); animation:none;}
.anim.visible .anim-child {animation:fadeInUp .6s ease forwards;}
@keyframes fadeInUp {from{opacity:0; transform:translateY(30px) scale(.96);} to{opacity:1; transform:translateY(0) scale(1);}}

/* hero parallax text */
.hero-content {animation:heroFadeIn 1.2s ease forwards;}
@keyframes heroFadeIn {from{opacity:0; transform:translateY(40px);} to{opacity:1; transform:translateY(0);}}
.hero-header {animation:heroHeaderIn .8s ease .3s both;}
@keyframes heroHeaderIn {from{opacity:0; transform:translateY(-20px);} to{opacity:1; transform:translateY(0);}}

/* history items stagger */
.anim.visible .history-item {animation:fadeInUp .6s ease forwards;}
.history-item:nth-child(1) {animation-delay:.1s;}
.history-item:nth-child(2) {animation-delay:.2s;}
.history-item:nth-child(3) {animation-delay:.3s;}
.history-item:nth-child(4) {animation-delay:.4s;}
.history-item {opacity:0; transform:translateY(30px);}
.anim.visible .history-item {opacity:1; transform:translateY(0);}

/* timeline dots pulse */
.history-timeline span {animation:pulse 2s ease-in-out infinite;}
.history-timeline span:nth-child(2) {animation-delay:.3s;}
.history-timeline span:nth-child(3) {animation-delay:.6s;}
.history-timeline span:nth-child(4) {animation-delay:.9s;}
@keyframes pulse {0%,100%{box-shadow:0 0 0 0 rgba(124,255,107,.4)} 50%{box-shadow:0 0 0 8px rgba(124,255,107,0)}}

/* people block text */
.people-content h2 {animation:peopleTextIn 1s ease forwards; opacity:0;}
.anim.visible .people-content h2 {opacity:1; animation:peopleTextIn 1s ease forwards;}
@keyframes peopleTextIn {from{opacity:0; transform:scale(.9) translateY(30px);} to{opacity:1; transform:scale(1) translateY(0);}}

/* global map hover */
.global-map {transition:transform .6s ease;}
.global-map:hover {transform:scale(1.05);}

/* contacts title glow */
.contacts-title {text-shadow:0 0 40px rgba(255,255,255,.15);}

.company-hero{background:url("/wp-content/uploads/2026/04/okomp.jpg") center/cover no-repeat; padding:320px 0 240px; color:#fff; margin: 0; }
.company-hero {position: relative; background: url(/wp-content/uploads/2026/04/okomp-2-e1775324852864.jpg) center / cover no-repeat; min-height: max-content; }
.company-hero::after { content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 70px; background: linear-gradient(to bottom, transparent, #000); }
.company-hero h1{font-size: 80px; max-width: 900px; font-weight: 700; padding: 0; margin-bottom: 35px; }
.hero-sub{font-size: 35px; font-weight: 600; }
@media (max-width:991px) {
	.company-hero h1{font-size: 38px;}
	.hero-sub { font-size: 25px;}
	.company-hero {padding: 225px 0 200px;}
}

.company-about{ background:#000; color:#fff; padding:80px 0 35px; }
.company-grid{display:grid; grid-template-columns:1fr 1fr; gap:50px; align-items:center; }
.company-photo { height: 500px; }
.company-photo img{width:100%; height: 100%; object-fit: cover; border-radius:113px; }
.comp-title { display: flex; align-items: center; justify-content: center;}
.company-text h2{font-size: 73px; font-weight: 300; margin-right: 3px; }
.company-text { height: 100%; display: grid; align-content: space-evenly; }
.company-text p{margin-bottom:20px; font-size: 20px; text-align: justify; }
.company-bottom{margin-top:70px; text-align: justify; }
.company-bottom p, .company-bottom ul li{font-size: 20px; }
.company-bottom h3{font-size:32px; margin-bottom:30px; text-align: center; }
.company-format {padding: 20px 0 55px; background: url("/wp-content/uploads/2026/04/zamena.jpg") center no-repeat; background-size: 215%;}
.company-about .gr-logo-inline { height: 80px; margin-right: 0px;}
@media (max-width:991px) {
	.company-grid { display: flex; flex-direction: column-reverse;}
	.company-text h2 {font-size: 40px; margin-bottom: 10px;}
	.gr-logo-inline { height: 50px;}
	.company-photo {height: max-content;}
	.company-about .gr-logo-inline {  height: 60px;}
	.company-photo img{border-radius:63px; }
}

@media (max-width:1200px) {
	.company-format {background: url("/wp-content/uploads/2026/04/zamena.jpg") center no-repeat; background-size: 960%; background-position-x: -590px;}
}

.format-box{background: rgb(255 255 255 / 55%); backdrop-filter: blur(10px); padding: 25px 25px 5px; border: 3px solid #000; border-radius: 20px; color: #000000; text-align: justify; } 

.format-title { display: flex; align-items: center; margin-bottom: 30px; justify-content: center; }
.company-format .format-title h2 {font-size: 64px; font-weight: 300; text-align: center; color: #fff; margin-right:13px;}
.company-format .format-title .gr-logo-inline {height: 75px;}
.company-format .format-box h3 {text-align: center;}
.company-format .format-box p, .company-format .format-box ul li{font-size:20px;}
.format-title{color:#fff;text-shadow:0 2px 10px rgb(0 0 0 / 88%);}
@media (max-width:991px) {
	.company-format .format-title h2 {font-size: 33px; text-align: left; margin-bottom: 5px; margin-right: 5px;}
	.company-format .format-box p, .company-format .format-box ul li {font-size: 18px;}
	.container { max-width: 100%;}
	.company-format .format-title .gr-logo-inline { height: 40px; margin-bottom: 0px;}
	.format-title { margin-bottom: 10px;}
}

.company-consult { background: #000; align-items: stretch; overflow: hidden; width: 100%; padding: 70px 0 0; }
.company-consult .container{display: flex; justify-content: space-between;}
.consult-left { display: flex; flex-direction: column; align-items: center; justify-content: center; background: #000; }
.yana-frame { width: 280px; height: 440px; border: 1px solid rgba(255,255,255,0.3); border-radius: 75px; overflow: hidden; margin-bottom: 25px; }
.yana-frame img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    display: block;
}
.consult-name { color: #fff; font-size: 22px; border: 1px solid #7dff6c; padding: 10px 20px; border-radius: 40px; display: inline-block; margin-bottom: 10px; white-space: nowrap; transition: all .3s ease; width: 260px;text-align: center;}
.consult-name:hover {color: #000; background: #7dff6c;}
.consult-role { color: #888; font-size: 16px; }
.consult-right {background: #e2e5e9; padding: 0 40px; border-radius: 55px;  display: flex; flex-direction: column; justify-content: center; align-items: center; margin-bottom: 25px; height: 720px;}
.consult-right h2 { font-size: 34px; text-transform: uppercase; text-align: center; margin-bottom: 40px; color: #000; line-height: 1.1; max-width: 650px; }
.consult-form { display: flex; flex-direction: column; gap: 15px; align-items: center; width: 100%; max-width: 480px; }
.consult-form input { width: 100%; padding: 22px; font-size: 18px; text-align: center; border-radius: 50px; border: none; background: #c5c9d1; color: #000; outline: none; }
.consult-form input::placeholder { color: #7a7e85; }
.consult-form button { width: 100%; padding: 8px; background: #7dff6c; border: 1.5px solid #000; border-radius: 50px; font-size: 28px; font-weight: 700; text-transform: uppercase; cursor: pointer; transition: 0.3s; color:#000!important;}
.consult-form button:hover { border: 2px solid; transform: translateY(-2px); box-shadow: 0 5px 15px rgba(173, 255, 107, 0.3); }
.consult-note { margin-top: 35px; text-align: center; font-size: 14px; color: #7a7e85; line-height: 1.5; }
@media (max-width: 1000px) { .company-consult { grid-template-columns: 1fr; } .consult-right { border-radius: 60px 60px 0 0; padding: 55px 20px 20px; } .consult-right h2 { font-size: 22px; } .yana-frame { width: 260px; height: 350px; } }
@media (max-width:991px) {
	.company-consult {padding: 0 15px;}
	.consult-left { padding: 40px 20px 20px;}
	.yana-frame img { width: 100%; height: 100%; object-fit: cover;}
	.consult-name {width: max-content; font-size: 16px; padding: 10px 22px;}
	.consult-right {border-radius: 60px; height: 700px;}
	.consult-form input { padding: 15px;}
	.yana-frame img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 20%;
    display: block;
}
	.company-consult .container{flex-direction: column;}
	.consult-form button {font-size: 24px;}
	.consult-right h2 { margin-bottom: 20px; }
}


/* стили для WOO */
.medical-grid-section {background-color: #cbd3d9; padding: 10px 0 20px;}
.shop-main-title { font-size: 33px; font-weight: 700; margin-bottom: 10px; color: #fff; padding: 0; }
.shop-subtitle {color: #fff; margin-bottom: 20px; }
.medical-search-bar { display: flex; margin-bottom: 30px; background: #fff; border-radius: 4px; overflow: hidden; justify-content: space-between;}
.medical-search-bar input {flex-grow: 1; border: none; padding: 12px 20px; outline: none; }
.medical-search-bar select { border: none; border-left: 1px solid #ccc; padding: 0 15px; background: #fff; color: #666; }
.medical-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 15px; }
.medical-grid .products-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 15px; width: 100%; grid-column: 1 / -1; }
.med-cat-card {background: #7bd50052; border: 3px solid #ebebeb; border-radius: 30px; padding: 30px 20px; text-align: center; text-decoration: none; color: #000; transition: all 0.3s ease; display: flex; flex-direction: column; align-items: center; justify-content: center; height: 315px; }
.med-cat-card:hover {border: 3px solid black; }
.med-cat-card.is-active {background-color: #b5d1a9; border-color: #000; }
.med-cat-icon{margin-bottom:20px;display:flex;align-items:center;justify-content:center;width:100%;height:220px;overflow:hidden}
.med-cat-icon img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block}
.med-cat-name { font-size: 16px; line-height: 1.2; font-weight: 500; }
.medical-search-bar select{appearance:none; -webkit-appearance:none; -moz-appearance:none; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpolyline points='6,9 12,15 18,9' fill='none' stroke='%23999' stroke-width='2'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 12px center; background-size:16px; padding-right:35px; }

.block-knop { display: flex; justify-content: space-between; align-items: center; }
.block-knop .hero-btn { padding: 14px 80px;}
@media(max-width:991px) {
	.block-knop {flex-direction: column;}
	.block-knop .hero-btn { width: 100%; text-align: center;}
}

/* Адаптив */
@media (max-width: 992px) { .medical-grid { grid-template-columns: repeat(2, 1fr); } .medical-grid .products-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 768px) { .medical-grid { grid-template-columns: 1fr; } .medical-grid .products-grid { grid-template-columns: 1fr; } .medical-grid-section {padding: 10px 0;} .medical-search-bar select {         font-size: 10px; padding: 10px;}.search-input-wrap input {padding-left: 36px; font-size: 12px; }}
@media (max-width: 578px) { .shop-hero .hero-header {padding: 5px!important; justify-content: space-around; } .shop-hero .logo {flex-direction: column !important;} .shop-hero .hero-btn{padding: 2px 10px !important;font-size: 13px !important;} }
@media (max-width:768px){
	.med-cat-icon{height:180px}
}
.shop-hero .logo { flex-direction: row;}
.shop-hero .hero-header { background-color: #cbd3d9; padding: 0 40px; position: relative; top: 0; left: 0; right: 0;}
.shop-hero .hero-btn { padding: 5px 15px; font-size: 20px; font-weight: 300;}
.shop-hero.brands .hero-btn { color: #000; border: 1px solid #000;}

.search-input-wrap{position:relative; display:flex; align-items:center;}
.search-input-wrap input{padding-left:40px;}
.search-icon{position:absolute; left:12px; width:18px; height:18px; color:#999; pointer-events:none;}
.medical-search-bar{display:flex;}
.search-input-wrap{flex:1;}


.product-hero{padding:40px 0 60px;}
.product-grid{display:flex; gap:60px; align-items:center;}
.product-left{flex:1;}
.product-right{flex:1; display:flex; justify-content:center;}
.mobilka {display: none;}

@media(max-width:991px) {
	.mobilka {display: block;}
	.product-right.mobilka {margin-bottom: 20px;}
	.desktop {display: none;}
	.shop-hero .logo {align-items: flex-start !important;}
}

.product-badge{display:inline-block; background:#000; color:#9cff00; padding:10px 20px; border-radius:30px; margin-bottom:20px;}
.product-title{font-size: 40px; text-align: center; font-weight: 600; letter-spacing: 1.2px; color: #fff; margin-bottom: 25px; padding-bottom: 0;} 
.product-desc{color:#fff; font-size:15px; line-height:1.6; margin-bottom:20px;}

.product-btn{display: inline-block; border: 2px solid #fff; color: #fff; padding: 12px 25px; border-radius: 30px; text-decoration: none; cursor: pointer;  width: 100%; text-align: center; font-weight: 500;}

.product-image-wrap{position:relative; background: #fff; padding: 2px; border-radius: 18px;}
.product-image-wrap img{max-width:100%; height:auto; max-height: 500px; border-radius:15px;}

.slider-arrow{position:absolute;top:50%;transform:translateY(-50%);background:none;border:none;padding:0;cursor:pointer}
.slider-arrow.left{left:-30px}
.slider-arrow.right{right:-30px}
.slider-arrow img{width:60px;height:auto;display:block}

.product-specs{padding:60px 0; background:#fff;}
.product-specs ul{padding-left:20px;}
.product-specs li{margin-bottom:10px;}

@media(max-width:991px){
	.product-grid{flex-direction:column;}
	.product-title{font-size:22px;}
	.product-hero{padding:40px 0;}
}

.product-specs{display:none;}
.product-specs.active{display:block;}

.product-specs{max-height:0; overflow:hidden; transition:0.4s ease;}
.product-specs.active{max-height:max-content;text-align: justify;}

.checkbox-group{display:flex;flex-direction:column;gap:5px;margin:5px 0;}
.checkbox-agree{display:flex;align-items:flex-start;gap:12px;cursor:pointer;position:relative;font-size:12px;line-height:1.4;color:#4c4c4c;}
.checkbox-agree input{position:absolute;opacity:0;pointer-events:none;}
.custom-checkbox{width:18px;height:18px;border:2px solid #000;border-radius:4px;flex-shrink:0;position:relative;transition:.3s;}
.custom-checkbox:after{content:'';position:absolute;left:4px;top:1px;width:5px;height:10px;border:solid #000;border-width:0 2px 2px 0;transform:rotate(45deg) scale(0);transition:.2s;}
.checkbox-agree input:checked + .custom-checkbox{background:#adff6c;}
.checkbox-agree input:checked + .custom-checkbox:after{transform:rotate(45deg) scale(1);}
.checkbox-text a{color:#000000;text-decoration:underline;}
.checkbox-text a:hover{opacity:.8;}
@media(max-width:991px) {
	.checkbox-agree{font-size:11px;}
	.checkbox-group{margin:5px 0 0;}
}

.tax-product_cat .med-cat-card{background:#fff;}
.tax-product_cat .med-cat-card:hover{background:#fff; border: 3px solid black;}

/* Бренд на карточке товара */
.product-brand-block{margin-bottom:22px;display:flex;flex-direction:column;align-items:flex-start;gap:10px; background: #fff; padding: 20px; border-radius: 20px;}
.product-brand-logo img{max-height:48px;width:auto;max-width:220px;object-fit:contain;display:block;filter:grayscale(100%);opacity:.92;}
.product-brand-name-fallback{font-size: 20px; font-weight: 500; color: #2B2D3B; letter-spacing: .02em;}
.product-brand-all-link{display:inline-flex;align-items:center;gap:8px;color:#3d2f5c;font-size:15px;font-weight:500;text-decoration:none;border-bottom:1px solid transparent;transition:color .2s,border-color .2s;}
.product-brand-all-link:hover{color:#5c4a85;border-bottom-color:currentColor;}
.product-brand-all-icon{font-size:1.15em;line-height:1;transform:translateY(1px);}


/* Архив бренда (страница производителя) */
.tax-product_brand .med-cat-card{background:#fff;}
.tax-product_brand .med-cat-card:hover{background:#fff;border:3px solid #000;}
.brand-archive-notice{padding:24px 0;font-size:16px;}
.brand-single-intro{
	display:flex;flex-wrap:wrap;align-items:flex-start;gap:32px 48px;
	margin-bottom:36px;padding:28px 32px;background:#fff;border-radius:16px;
	box-shadow:0 1px 0 rgba(0,0,0,.06);
}
.brand-single-intro-media{flex:0 0 auto;max-width:min(100%,320px);}
.brand-single-logo-img{width:100%;height:auto;max-height:140px;object-fit:contain;display:block;}
.brand-single-intro-text{flex:1;min-width:min(100%,280px);text-align: justify;}
.brand-single-title{margin-bottom:12px;padding:0;}
.brand-single-description{color:#333;font-size:16px;line-height:1.55;margin:0;}
.brand-single-description p:first-child{margin-top:0;}
.brand-single-description p:last-child{margin-bottom:0;}
.brand-single-description-empty{font-size:14px;color:#555;}
.brand-products-heading{font-size:22px;font-weight:600;color:#000;margin:0 0 16px;padding:0;}
.brand-archive-product-search{margin-bottom:22px;}
.brand-archive-product-search .search-input-wrap{flex:1;}
.brand-archive-no-products{margin:12px 0 0;font-size:15px;color:#444;}
@media (max-width:768px){
	.brand-single-intro{padding:20px 18px;gap:20px;}
	.brand-single-intro-media{max-width:100%;}
}

/* Каталог производителей (страница) — алфавитная полоса + списки, как у каталогов вроде medeq.ru/brands */
.brands-directory-page .brands-alpha-nav{
	display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;
	gap:2px 4px;margin:20px 0 18px;padding:14px 12px;
	background:#fff;border-radius:8px;box-shadow:0 1px 0 rgba(0,0,0,.06);
	font-size:13px;font-weight:600;letter-spacing:.02em;line-height:1.6;
}
.brands-directory-page .brands-alpha-nav a{
	color:#2B2D3B;text-decoration:none;padding:2px 5px;border-radius:4px;
	transition:background .15s,color .15s;
}
.brands-directory-page .brands-alpha-nav a:hover{color:#3d2f5c;background:rgba(61,47,92,.08);text-decoration:none;}
.brands-directory-page .brands-alpha-nav-inactive{
	color:#b0b5bc;padding:2px 5px;user-select:none;cursor:default;
}
.brands-directory-page .brands-directory-search{margin-bottom:28px;}
.brands-directory-page .brands-directory-search .search-input-wrap{flex:1;}
.brands-letter-section{margin-top:28px;scroll-margin-top:24px;}
.brands-letter-title{
	font-size:18px;font-weight:700;color:#2B2D3B;margin:0 0 12px;padding-bottom:8px;
	border-bottom:1px solid rgba(43,45,59,.2);letter-spacing:.04em;
}
.brands-alpha-list{
	list-style:none;margin:0;padding:0;
	columns:4;column-gap:2rem;column-fill:balance;
}
.brands-alpha-list li{margin:0 0 .4rem;break-inside:avoid;-webkit-column-break-inside:avoid;} 
.brands-alpha-list .brand-directory-link{display:inline;color:#2B2D3B;font-size:16px;font-weight:400;line-height:1.45; text-decoration:none;border-bottom:1px solid transparent; transition:color .15s,border-color .15s;}
.brands-alpha-list .brand-directory-link:hover{color:#3d2f5c;border-bottom-color:rgba(61,47,92,.35);}
@media (max-width:992px){.brands-alpha-list{columns:3;column-gap:1.5rem;}}
@media (max-width:768px){.brands-alpha-list{columns:2;column-gap:1.25rem;}.brands-directory-page .brands-alpha-nav{font-size:12px;gap:1px 2px;padding:10px 8px;} .brands-alpha-list .brand-directory-link{font-size:13px;}}
@media (max-width:480px){.brands-alpha-list{columns:2;}}


.floating-widget{position:fixed;right:30px;bottom:30px;z-index:999;display:flex;flex-direction:column;align-items:center;gap:10px}
.floating-logo{display: flex; align-items: center; justify-content: center; transition: .3s; width: 115px; height: 160px;}
.floating-logo img{width:100%;}
.floating-logo:hover{transform:scale(1.1)}
.floating-btn{position:fixed; right:30px; bottom:30px; z-index:999; opacity:0; transform:translateY(20px); transition:.3s ease; box-shadow:0 10px 30px rgb(255 255 255 / 20%); backdrop-filter:blur(10px); border:1px solid rgb(0 0 0); color:#000000; font-size:16px; background:rgba(255,255,255,0.8); }
.floating-btn.show{opacity:1;transform:translateY(0)}
.floating-widget{opacity:0;}
.floating-widget.show{opacity:1;transform:none}
.call-mobile{display:none}
@media(max-width:991px){
	.call-mobile{display: flex; position: fixed; left: 15px; bottom: 20px; width: 50px; height: 50px; background: #fff; border-radius: 50%; align-items: center; justify-content: center; box-shadow: 0 10px 30px rgba(0, 0, 0, .25); z-index: 999; border: 1px solid;}
	.call-mobile svg{stroke:#000}
	.floating-widget{position:fixed;right:15px;bottom:20px;z-index:999;display:flex;flex-direction:column;align-items:center;gap:10px}
	.floating-btn{position:fixed; right:15px; bottom: 10px; margin: 10px 0;}
}

.product-desc{display:-webkit-box; -webkit-line-clamp:4; -webkit-box-orient:vertical; overflow:hidden; text-overflow:ellipsis; text-align: justify;}

.container.breadc {margin-top: 20px;}
.container.breadc a {transition: .3s all;}
.container.breadc a:hover {text-decoration: underline;}

button#loadMoreBtn { padding: 15px 40px; border-radius: 60px; background: #ffffff; border: 1px solid; color: #000000;  cursor: pointer; transition: .3s all;}
button#loadMoreBtn:hover { background:#7CFF6B; border: 1px solid #7CFF6B;}
.med-cat-card.product-card{background:#fff;border-radius:16px;padding:15px}

nav.woocommerce-pagination{display:flex;justify-content:center;margin:40px 0}
nav.woocommerce-pagination ul{display:flex;gap:10px;padding:0;margin:0;list-style:none}
nav.woocommerce-pagination li{list-style:none}
nav.woocommerce-pagination a,
nav.woocommerce-pagination span{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;background:#fff;color:#000;text-decoration:none;font-weight:500;transition:.3s;border:1px solid #e5e5e5}
nav.woocommerce-pagination{display:flex;justify-content:center;margin:40px 0}
nav.woocommerce-pagination ul{display:flex;gap:10px;padding:0;margin:0;list-style:none}
nav.woocommerce-pagination li{list-style:none}
nav.woocommerce-pagination a,
nav.woocommerce-pagination span{display: flex; align-items: center; justify-content: center; width: 35px; height: 35px;  border-radius: 12px; background: #fff; color: #000; text-decoration: none; font-weight: 500; transition: .3s; border: 1px solid #a5a5a5;}
nav.woocommerce-pagination a:hover{background:#000;color:#fff}
nav.woocommerce-pagination .current{background:#000;color:#fff;border-color:#000}
nav.woocommerce-pagination .next,
nav.woocommerce-pagination .prev{width:auto;padding:0 16px}
nav.woocommerce-pagination{grid-column:1/-1}

.green-bg .shop-hero .hero-header, .green-bg-black .shop-hero .hero-header {background: transparent;}
.green-bg .medical-grid-section, .green-bg-black .medical-grid-section {background: transparent;}
.green-bg .menu a, .green-bg .menu span, .green-bg-black .menu a, .green-bg-black .menu span { color: #ffffff;}
.green-bg .header-action-btn, .green-bg-black .header-action-btn { border: 1px solid rgb(255 255 255 / 30%);}
.green-bg .burger span, .green-bg-black .burger span { background: #fff;}
.med-cat-icon img[src$=".svg"]{filter:brightness(0)} 
.green-bg {position: relative; background: url(/wp-content/uploads/2026/04/okomp-1.jpg) center / cover no-repeat; background-position-y: bottom; min-height: max-content; }
.green-bg::after { content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 40px; background: linear-gradient(to bottom, transparent, #000); }
.green-bg-black {position: relative; background: url("/wp-content/uploads/2026/04/o-kompanii-e1775377752140-1.jpg") center / cover no-repeat; min-height: max-content; }


nav.rank-math-breadcrumb {color: #fff; padding: 0 46px;}

.footer-info{background:#000;color:#fff;padding:40px 0 0;}
.footer-info.okomp { padding: 20px 30px;}
.footer-grid{display:flex;justify-content:flex-start;gap:40px}
.footer-info.shopstr{background: transparent; color: #000; padding: 50px 30px 0;}
.footer-info.shopstr.wh{background: transparent; color: #fff; padding: 50px 30px 0;}
.footer-info.shopstr.wh.b{padding: 50px 30px 20px;}
.shopstr .footer-right a { color: #000; }
.shopstr.wh .footer-right a { color: #fff; }
.footer-info .container{max-width: 100%; padding: 0;}
.footer-left p{margin:0 0 10px;font-size:16px;line-height:1.5;}
.footer-right p{margin:0 0 12px;}
.footer-right a{color:#fff;transition:.3s}
.footer-right a:hover{border-color:#fff}
@media(max-width:768px){
	.footer-grid{flex-direction:column-reverse!important;gap:20px}
	.footer-right p{font-size:16px}
	.footer-info.okomp { padding: 0;}
	.footer-info.shopstr{background: transparent; color: #000; padding: 40px 15px 0;}
	.footer-info.shopstr.wh {padding: 50px 5px 20px;}
	.footer-info.shopstr.wh.b{padding: 40px 0 10px;}
	.footer-info.shopstr.wh.y{padding: 40px 15px 10px;}
	.footer-info.shopstr.s .footer-right p, .footer-info.shopstr.s .footer-left p{font-size: 13px!important;}
	.footer-info.shopstr.s .footer-grid { gap: 10px; }
	nav.rank-math-breadcrumb {color: #fff; padding: 0 17px;}
}

.med-cat-card.ajax-product {background:#fff;color:#000;border-radius:16px;box-shadow:0 10px 25px rgba(0,0,0,.08);transition:.3s;}
.med-cat-card.ajax-product:hover {transform:translateY(-4px);box-shadow:0 15px 35px rgba(0,0,0,.12);}
.med-cat-card.ajax-product .med-cat-name {color:#111;}
.med-cat-card.ajax-product img {background:#fff;}

.hero-header.na {animation:none !important;transition:none !important;}

.clearfy-cookie {position: fixed; bottom: 20px!important; left: 20px!important; right: 20px!important; padding: 18px 22px!important; border-radius: 10px; display: flex; align-items: center; justify-content: space-between; gap: 20px;   font-size: 14px!important; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3); margin: auto; max-width: 900px!important; }
.clearfy-cookie-container {text-align: left!important; display: flex!important; max-width: 900px; }
.clearfy-cookie-container a {display: contents!important; color: #2e7eff;}
.clearfy-cookie-accept {padding: 10px 18px!important; border-radius: 6px; font-size: 14px!important; margin: 0!important; }
@media(max-width: 991px) {
	.clearfy-cookie-accept {margin: 20px 0 0!important; } 
	.clearfy-cookie-container { flex-direction: column; align-items: flex-start;}
}

.logo.mobile {display:none;}

@media(max-width: 568px) {
	.logo.desktop {display:none;}
	.logo.mobile {display:block;}
	header.hero-header.na.black .menu a, header.hero-header.na.black .menu span, .green-bg .burger span {color: #000000!important;}
	header.hero-header.na.black .burger span {background: #000!important;}
	header.hero-header.na.black a.hero-btn {color: #000; border: 1px solid #000;}
	.black .rank-math-breadcrumb p {color: #000; }
	.product-title { color: #000;}
}
@media(max-width:450px) {
	.container {padding: 0 7px; }
	nav.rank-math-breadcrumb { padding: 0 5px; }
	.rank-math-breadcrumb p {font-size: 13px;}
	.hero {height: 93vh; }
	.hero h1 { font-weight:500 !important; margin-bottom:0; text-shadow:0 2px 10px rgba(0,0,0,0.35); }
	.hero-header {left: 10px; right: 10px; top: 10px;}
	.hero-btn {font-size: 11.5px; padding: 8px 5px;}
	.burger-menu {width: 100%; padding: 80px 25px 40px; }
	.burger {width: 20px; height: 18px;}
	.gr-logo-inline {height: 38px; margin-bottom: 3px;}
	.founder-title h2 {font-size: 30px;}
	.floating-logo {width: 95px; height: 125px;}
	.floating-widget .hero-btn {font-size: 13px; padding: 8px 10px; }
	.stats { padding: 50px 0; }
	.contacts {  padding: 50px 0 0;}
	.people-content h2 {font-size: 54px; }
	.company-hero h1 {font-size: 26px;}
	.company-hero .hero-sub { font-size: 20px; }
	.company-about {padding: 20px 0 35px;}
	.company-text h2 {font-size: 34px;}
	.company-about .gr-logo-inline { height: 40px; margin-bottom: 6px; }
	.company-bottom h3 {font-size: 25px;}
	.company-hero { padding: 225px 0 190px; }
	.company-format .format-title h2 {font-size: 26px;}
	.company-format .format-title .gr-logo-inline {	height: 36px;}
	.company-format { background-size: 1450%; background-position-x: -720px; }
	.company-format .format-box p, .company-format .format-box ul li {font-size: 16px; }
	.company-text p { margin-bottom: 15px; font-size: 17px;} 
	.company-bottom p, .company-bottom ul li {font-size: 17px;}
	.company-photo img { border-radius: 45px; }
	.company-grid {gap: 30px;}
	.company-bottom {margin-top: 20px;}
	.history-title {font-size: 34px;}
	.history-img {height: 270px;}
	.history-grid {	gap: 30px;}
	.company-consult .container {padding: 0;}
	.footer-right p { font-size: 14px;  }
	.footer-left p {font-size: 14px;}
	.consult-form button { font-size: 20px;}
	.consult-note {font-size: 11px;}
	.shop-hero .hero-btn { padding: 2px 5px !important; font-size: 11px !important; }
	.search-icon {left: 9px; width: 16px; height: 16px;}
	.hero-btn.prr {font-size: 13px;}
	.med-cat-card {height:240px;}
	.med-cat-icon {height: 120px; }
	.shop-main-title {font-size: 30px;}
	.shop-subtitle {font-size: 14px;}
	.medical-search-bar {flex-direction: column;}
	.search-input-wrap input {font-size: 13px; text-align: center;}
	.medical-search-bar select { font-size: 13px; border-top: 1px solid #bdbdbd; text-align: center;}
	.green-bg .shop-hero .hero-header, .green-bg-black .shop-hero .hero-header { justify-content: space-between;}
}
@media(max-width:350px) {
	.hero h1 { padding: 20px 0; font-size: 20px;}	
	.hero-btn {font-size: 10px; padding: 8px 5px; }
	.hero-header {left: 10px; right: 10px; top: 10px;}
	.hero-btn {font-size: 11px; padding: 8px 5px;}
	.menu a {font-size:12px;}
	.burger {width: 16px; height: 14px;}
	.menu { font-size: 13px; gap: 2px;}
}
@media (max-width: 850px) {

    .modal-form-overlay {
        padding: 8px;
        overflow-y: auto;
        align-items: flex-start;
    }

    .modal-form-container {
        width: min(96vw, 430px);
        max-height: none;
        margin: 8px auto;
        flex-direction: column;
        border-radius: 28px;
        overflow: hidden;
    }

    /* Блок сотрудника */
    .profile-block {
        padding: 20px 15px 18px;
    }

    .profile-photo-wrapper {
        width: 120px;
        height: 155px;
        border-radius: 35px;
        margin-bottom: 12px;
    }

    .profile-img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .modal-call {
        padding: 10px 24px;
        font-size: 16px;
        margin: 0;
    }

    /* Правая часть с формой */
    .form-block {
        width: 100%;
        height: auto;
        padding: 22px 18px 20px;
        border-radius: 28px;
    }

    .form-block h3 {
        font-size: 20px;
        line-height: 1.15;
        margin-bottom: 18px;
    }

    .custom-form-styled {
        gap: 8px;
    }

    .custom-form-styled input:not([type="checkbox"]):not([type="hidden"]),
    .custom-form-styled textarea {
        padding: 11px 16px;
        font-size: 16px;
    }

    .custom-form-styled input:not([type="checkbox"]):not([type="hidden"]) {
        min-height: 48px;
    }

    .custom-form-styled textarea {
        min-height: 70px;
        max-height: 80px;
    }

    .custom-form-styled input[type="checkbox"] {
        width: 22px;
        height: 22px;
        flex: 0 0 22px;
    }

    .custom-form-styled label {
        font-size: 12px;
        line-height: 1.3;
    }

    .neon-submit-btn {
        padding: 13px 20px;
        font-size: 18px;
        margin-top: 8px;
    }

    .disclaimer-text {
        margin-top: 12px;
        font-size: 12px;
        line-height: 1.35;
    }

    .modal-form-close {
        top: 12px;
        right: 14px;
    }
}
/* ===== МОБИЛЬНОЕ ОКНО "ОБСУДИТЬ ЗАДАЧУ" ===== */
@media (max-width: 850px) {

    #formModal.modal-form-overlay {
        padding: 6px !important;
        overflow-y: auto !important;
        align-items: flex-start !important;
    }

    #formModal .modal-form-container {
        width: calc(100% - 12px) !important;
        max-width: 430px !important;
        max-height: none !important;
        margin: 6px auto 20px !important;
        flex-direction: column !important;
        border-radius: 26px !important;
        overflow: hidden !important;
        outline: none !important;
    }

    /* Чёрная часть с сотрудником */
    #formModal .profile-block {
        padding: 18px 15px 16px !important;
        min-height: auto !important;
    }

    #formModal .profile-photo-wrapper {
        width: 110px !important;
        height: 150px !important;
        border-radius: 32px !important;
        margin: 0 auto 12px !important;
        overflow: hidden !important;
    }

    #formModal .profile-img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        object-position: center center !important;
        display: block !important;
    }

    #formModal .modal-call {
        padding: 9px 22px !important;
        font-size: 16px !important;
        line-height: 1.2 !important;
        margin: 0 auto !important;
    }

    /* Светлая часть */
    #formModal .form-block {
        width: 100% !important;
        height: auto !important;
        padding: 20px 16px 18px !important;
        border-radius: 26px !important;
    }

    #formModal .form-block h3 {
        font-size: 19px !important;
        line-height: 1.15 !important;
        margin-bottom: 16px !important;
    }

    #formModal .custom-form-styled {
        gap: 7px !important;
    }

    #formModal .custom-form-styled input:not([type="checkbox"]):not([type="hidden"]) {
        min-height: 44px !important;
        padding: 9px 15px !important;
        font-size: 15px !important;
    }

    #formModal .custom-form-styled textarea {
        min-height: 62px !important;
        max-height: 70px !important;
        padding: 10px 15px !important;
        font-size: 15px !important;
    }

    #formModal .custom-form-styled input[type="checkbox"] {
        width: 21px !important;
        height: 21px !important;
        min-width: 21px !important;
    }

    #formModal .custom-form-styled label {
        font-size: 11px !important;
        line-height: 1.3 !important;
    }

    #formModal .neon-submit-btn {
        padding: 12px 20px !important;
        font-size: 18px !important;
        margin-top: 7px !important;
    }

    #formModal .disclaimer-text {
        margin-top: 10px !important;
        font-size: 11px !important;
        line-height: 1.3 !important;
    }

    #formModal .modal-form-close {
        top: 12px !important;
        right: 14px !important;
    }
}