@charset "utf-8";
/* CSS Document */
:root{
  --bg:#FBFAF7;
  --bg-alt:#F3EFE8;
  --card:#FFFFFF;
  --ink:#1B1A18;
  --ink-soft:#5C574F;
  --ink-faint:#8B8579;
  --accent:#C1541F;
  --accent-dark:#9A4116;
  --accent-light:#F3DCC8;
  --accent-soft:#FBEEE2;
  --navy:#20262B;
  --navy-soft:#323B42;
  --line:rgba(27,26,24,.09);
  --radius-lg:28px;
  --radius-md:18px;
  --radius-sm:12px;
  --shadow-soft:0 20px 60px -25px rgba(27,26,24,.25);
  --shadow-card:0 12px 40px -18px rgba(27,26,24,.18);
}

body {
    font-family:'Inter',system-ui,sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
	font-size: 1.1rem;
	background-color: #fbfaf7;
	color:var(--ink-soft);
	margin: 0;
	padding: 0;
	overflow-x:hidden;
    -webkit-font-smoothing:antialiased;
}
body.scrollhide {
    overflow-y: hidden;
	margin-right: 15px;
}
/* Links */
a:link {
    color: #C1541F;
	text-decoration: underline;
}
a:hover {
    color: #C1541F;
	text-decoration: none;
}
a:active, a:visited {
    color: #C1541F;
	text-decoration: underline;
}
/* End Links */

/* reveal animation */
.reveal{opacity:0;transform:translateY(36px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1);}
.reveal.is-visible{opacity:1;transform:translateY(0);}
.reveal-delay-1.is-visible{transition-delay:.1s;}
.reveal-delay-2.is-visible{transition-delay:.2s;}
.reveal-delay-3.is-visible{transition-delay:.3s;}
.reveal-delay-4.is-visible{transition-delay:.4s;}

.bg-bg-alt{background:var(--bg-alt);}

strong {
    font-weight: 700;
}
h1, .h1, h2, .h2, h3, .h3 {
	font-family:'Playfair Display',serif;
	font-size: clamp(1.6rem, 3.4vw, 2.7rem);
	font-weight: 700;
	margin-bottom: 1.5rem;
	color:var(--ink);
}
h4, .h4, h5, .h5, h6, .h6 {
    font-family:'Inter',system-ui,sans-serif;
    font-size: 1.25rem;
    font-weight: 700;
	margin-bottom: 1.5rem;
	color:var(--ink);
}

.com-content-article__body h2, .com-content-article__body .h2, .com-content-article__body h3, .com-content-article__body .h3, .com-content-article__body h4, .com-content-article__body .h4, .com-content-article__body h5, .com-content-article__body .h5, .com-content-article__body h6, .com-content-article__body .h6 {
	font-size: clamp(1.2rem, 1.8vw, 2rem);
}

/* HEADER */
header {
	background:rgba(251,250,247,.85);
    backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
    box-shadow:0 8px 30px -20px rgba(0,0,0,.25);
    border-bottom:1px solid rgba(27,26,24,.09);
	line-height: 100%;
	z-index: 350;
}
.t-promo-line {
	color: var(--accent);
    font-size: 0.9rem;
}
/* MOBILE MENU ICO */
.menu-block {
    display: inline-block;
	color: var(--ink);
	cursor: pointer;
	border: 1.5px solid var(--line);
    color: var(--ink);
    border-radius: 100px;
    padding: 12px 25px;
    font-weight: 500;
}
.m-btn {
    display:  inline-block;
	position: relative;
	width: 17px;
	height: 10px;
}
.m-btn span, .m-btn span:before, .m-btn span:after {
	position: absolute;
    display: block;
	content: '';
    width: 17px;
	height: 2px;
	background-color: var(--ink);
	border-radius: 1px;
	transition: all 500ms ease-in-out;
}
.m-btn span {
	right: 0;
    top: 4px;
}
.m-btn span::before {
    right: 0;
    top: -4px;
}
.m-btn span::after {
    right: 0;
    top: 4px;
}
.menu-block.m-open span {
    background-color: transparent;
}
.m-open span::before, .m-open span::after {
    top: 0;
}
.menu-block.m-open span::before {
    transform: rotate(45deg);
	background-color: var(--accent-dark);
	width: 17px;
}
.menu-block.m-open span::after {
    transform: rotate(-45deg);
	background-color: var(--accent-dark);
	width: 17px;
}
/* End MOBILE MENU ICO */
.ic {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: var(--accent-soft);
    color: var(--accent);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .95rem;
}
a.phone-top {
    text-decoration: none;
    font-weight: 600;
    color: var(--ink);
    white-space: nowrap;
}
/* End HEADER */

/* NAV */
nav.main-menu {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100vh;
    overflow-y: auto;
    z-index: 330;
	background:rgba(0,0,0,.85);
    color: var(--accent-soft);
    backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
    box-shadow:0 8px 30px -20px rgba(0,0,0,.25);
}
nav.main-menu ul {
	padding: 0;
	margin: 0;
	list-style: none;
}
ul.left-menu li a {
	color: var(--accent-soft);
	text-decoration: none;
	display: block;
	padding: 10px 0;
	transition: 1s;
}
ul.left-menu li a i {
    font-size: 0.8rem;
}
ul.left-menu li.current a {
	color: var(--accent);
}
ul.left-menu li a:hover {
	color: var(--accent);
	padding-left: 20px;
}
/* SERVICE-MENU */
.service-menu-header {
    color: var(--accent-soft);
    font-weight: 500;
    text-transform: uppercase;
    margin-bottom: 1rem;
    font-family: 'Playfair Display', serif;
    font-size: 1.2rem;
}
.service-menu a.svc-card {
    padding: 0;
    border: none;
    height: 25vh;
}
.svc-card.featured img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.2;
}
.service-menu .svc-card .svc-index {
    position: absolute;
    left: 20px;
    top: 20px;
    display: inline-block;
    margin: 0;
    transition: 1s;
}
.service-menu .svc-arrow {
    top: 20px;
    right: 20px;
    width: 30px;
    height: 30px;
    font-size: 0.8rem;
}
.service-menu-text {
    position: absolute;
    left: 20px;
    bottom: 20px;
    display: block;
    padding-right: 20px;
    color: #fff;
    font-size: 1.3rem;
    font-weight: 700;
    font-family: 'Playfair Display', serif;
}
.service-menu a:hover .svc-index {
    color: var(--accent-soft);
}
/* End NAV */

.section-title {
    font-size:clamp(1.9rem,3.4vw,2.7rem);
    font-weight:700;
    line-height:1.15;
}

/* HOME-TOP */
.eyebrow {
    display: inline-flex;
    align-items:center;
    gap:10px;
    text-transform: uppercase;
    font-weight: 700;
    font-size: .76rem;
    letter-spacing: .16em;
    color: var(--accent-dark);
    margin-bottom: 18px;
}
.eyebrow::before {
    content:"";
    width:28px;
    height:2px;
    background:var(--accent);
    display:inline-block;
    transform: translate(0,-50%);
}
.home-top h1 {
    font-size: clamp(2rem, 4.6vw, 3.85rem);
    line-height: 1.08;
    font-weight: 700;
    margin-bottom: 26px;
}
.home-top h1 em {
    font-style: normal;
    color: var(--accent);
}
.home-top-lead {
    font-size: 1.15rem;
    color: var(--ink-soft);
    max-width: 640px;
    margin-bottom: 38px;
    line-height: 1.6;
}
a.btn-accent {
    background:linear-gradient(135deg,var(--accent),#DE7A3B);
    color:#fff;border:none;border-radius:100px;
    padding:16px 34px;font-weight:600;font-size:.98rem;
    box-shadow:0 14px 30px -12px rgba(193,84,31,.55);
    transition:transform .35s cubic-bezier(.2,.8,.2,1), box-shadow .35s;
    position:relative;overflow:hidden;
    text-decoration: none;
}
.btn-accent:hover {
    transform:translateY(-3px);
    box-shadow:0 20px 40px -14px rgba(193,84,31,.65);
    color:#fff;
}
.btn-accent:active {
    transform:translateY(0);
}
a.btn-outline-ink {
    display: inline-block;
    border: 1.5px solid var(--line);
    color: var(--ink);
    border-radius: 100px;
    padding: 15px 30px;
    font-weight: 600;
    background: transparent;
    transition: all .3s ease;
    text-decoration: none;
}
.btn-outline-ink:hover {
    border-color: var(--ink);
    background: var(--ink);
    color: #fff;
}
.ht-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
}
.ht-badge {
    display: flex;
    align-items: center;
    gap:10px;
    background:var(--card);
    border: 1px solid var(--line);
    border-radius: 100px;
    padding: 10px 18px 10px 10px;
    box-shadow: var(--shadow-card);
    font-size: .86rem;
    font-weight: 600;
}
.video-top {
    position: relative;
    height: 100%;
}
.video-top video {
    position: absolute;
    left: 0;
    top: 0;
	object-fit: cover;
    width: 100%;
	height: 100%;
    border-radius: 50px;
}
.ht-card {
    position:absolute;
    background:var(--card);
    border-radius:var(--radius-md);
    box-shadow:var(--shadow-soft);
    padding: 20px;
    z-index: 3;
    bottom: -28px;
    left: -30px;
    width: 230px;
}
.ht-card .num {
    font-family: 'Playfair Display', serif;
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--accent);
}
/* End HOME-TOP */

/* COUNTERS */
.counters {
    margin-top: 40px;
    padding-top: 40px;
    padding-bottom: 40px;
    border-top: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
}
.stat-item .stat-num {
    font-family:'Playfair Display',serif;
    font-weight:700;
    font-size:clamp(1.9rem,3vw,2.6rem);
    color:var(--ink);
}
.stat-item .stat-num .suffix {
    color:var(--accent);
    font-size:1.4rem;
}
.stat-item .stat-label {
    color:var(--ink-soft);
    font-size:.9rem;
    margin-top:8px;
}
/* End COUNTERS */

/* SITUATION */
.pain-card {
    background:var(--card);
    border-radius:var(--radius-md);
    padding:34px 30px;
    height:100%;
    border:1px solid var(--line);
    transition:transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}
.pain-card:hover {
    transform:translateY(-8px);
    box-shadow:var(--shadow-card);
    border-color:transparent;
}
.pain-ic {
    width:52px;
    height:52px;
    border-radius:16px;
    background:var(--accent-soft);
    color:var(--accent);
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:1.4rem;
    margin-bottom:22px;
}
/* End SITUATION */

/* SERVICES */
a.svc-card{
    display: block;
    text-decoration: none;
    border-radius:var(--radius-md);
    padding:36px 32px;
    height:100%;
    position:relative;
    overflow:hidden;
    border:1px solid var(--line);
    background:var(--card);
    transition:transform .4s cubic-bezier(.2,.8,.2,1), box-shadow .4s ease;
    text-decoration: none;
}
a.svc-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-soft);}
.svc-card .svc-index{
  font-family:'Playfair Display',serif;font-size:.85rem;color:var(--ink-faint);
  letter-spacing:.05em;margin-bottom:24px;display:block;
}
.svc-card h3{font-size:1.3rem;font-weight:700;margin-bottom:12px;}
.svc-card p{color:var(--ink-soft);font-size:.95rem;margin-bottom:0;}
.svc-card.featured{
  background:linear-gradient(155deg,var(--navy),var(--navy-soft));color:#fff;
}.svc-card.featured h3 {
    color: #fff;
}
.svc-card.featured .svc-index{color:rgba(255,255,255,.5);}
.svc-card.featured p{color:rgba(255,255,255,.72);}
.svc-card.featured .svc-arrow{
  color:#fff;background:var(--accent);
}
.svc-arrow{
  position:absolute;top:32px;right:32px;width:44px;height:44px;border-radius:50%;
  background:var(--bg-alt);color:var(--ink);display:flex;align-items:center;justify-content:center;
  transition:all .35s ease;
}
.svc-card:hover .svc-arrow{background:var(--accent);color:#fff;transform:rotate(45deg);}
/* End SERVICES */

/* PROCESS */
.process-wrap{position:relative;}
.process-line{
  position:absolute;top:34px;left:0;right:0;height:1px;background:var(--line);
}
.process-step{position:relative;padding-top:0;}
.process-num{
  width:68px;height:68px;border-radius:50%;background:var(--card);border:1px solid var(--line);
  display:flex;align-items:center;justify-content:center;font-family:'Playfair Display',serif;
  font-weight:700;font-size:1.4rem;color:var(--accent);margin-bottom:24px;position:relative;z-index:2;
  box-shadow:var(--shadow-card);
}
.process-step .process-header{font-family:'Playfair Display',serif;font-size:1.05rem;font-weight:700;margin-bottom:10px;}
.process-step p{color:var(--ink-soft);font-size:.9rem;}
/* End PROCESS */

/* WHY US */
.why-row{
  border-top:1px solid var(--line);padding:34px 0;display:flex;align-items:center;gap:28px;
  transition:background .3s ease;
}
.why-row:hover{background:var(--bg-alt);}

.why-num{
  font-family:'Playfair Display',serif;font-size:1.1rem;color:var(--ink-faint);width:50px;flex-shrink:0;
}
.why-ic{
  width:54px;height:54px;border-radius:14px;background:var(--accent-soft);color:var(--accent);
  display:flex;align-items:center;justify-content:center;font-size:1.3rem;flex-shrink:0;
}
.why-title{font-weight:700;font-size:1.08rem;margin-bottom:4px;}
.why-desc{color:var(--ink-soft);font-size:.9rem;margin-bottom:0;}

.why-visual{
  border-radius:var(--radius-lg);background:linear-gradient(160deg,var(--accent-dark),var(--accent));
  color:#fff;padding:48px 40px;height:100%;position:relative;overflow:hidden;
}
.why-visual .big-quote-ic{font-size:2.6rem;opacity:.5;}
.why-visual h3{font-size:1.7rem;margin:18px 0 14px;}
.why-visual p{opacity:.85;font-size:.98rem;}
.why-visual .brands{
  display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:34px;padding-top:28px;
  border-top:1px solid rgba(255,255,255,.25);
}
.why-visual .brands span{font-weight:700;letter-spacing:.03em;font-size:.92rem;opacity:.9;}
.why-img {position: relative;height: 100%; border-radius: 50px;overflow: hidden;}
.why-img img {
    position: absolute;
    left: 0;
    top: 0;
    object-fit: cover;
    width: 100%;
    height: 100%;
    border-radius: 50px;
}
/* End WHY US */

/* MAIN */
.main-img {
	width: 25%;
	margin: 0 20px 20px 20px;
	height: 35vh;
	border-radius: 10px;
	overflow: hidden;
}
.main-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
/* End MAIN */

/* CASES */
a.case-card{
    display: block;
    text-decoration: none;
  border-radius:var(--radius-md);overflow:hidden;background:var(--card);border:1px solid var(--line);
  height:100%;transition:transform .4s ease, box-shadow .4s ease;
}
.case-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-card);}
.case-top{
  height:190px;background:linear-gradient(135deg,var(--navy),var(--navy-soft));position:relative;
  display:flex;align-items:flex-end;padding:22px;
}
.case-top .tag{
  position:relative;z-index:2;
  background:rgba(255,255,255,.12);color:#fff;font-size:.76rem;font-weight:700;
  padding:6px 14px;border-radius:100px;letter-spacing:.03em;backdrop-filter:blur(6px);
}
.case-photo{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1;
}
.case-top::after{
  content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(0deg, rgba(32,38,43,.75), rgba(32,38,43,.15));
}
.case-body{padding:28px 26px;}
.case-body h4{font-family:'Playfair Display',serif;font-size:1.05rem;font-weight:700;margin:12px 0 8px;}
.case-body p{color:var(--ink-soft);font-size:.9rem;margin-bottom:0;}
/* End CASES */

/* ---------- brands strip ---------- */
.brands-strip{
  display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:28px 20px;
  padding:38px 0;
}
.brands-strip span{
  display:inline-flex;align-items:center;gap:10px;
  font-family:'Playfair Display',serif;font-size:1.35rem;font-weight:700;color:var(--ink-faint);
  letter-spacing:.02em;transition:color .3s ease;
}
.brands-strip span img{display:block;filter:grayscale(1);opacity:.8;}
.brands-strip span:hover{color:var(--accent);}
/* ---------- End brands strip ---------- */

/* ---------- FAQ ---------- */
.accordion-item{background:transparent;border:none;border-bottom:1px solid var(--line);}
.accordion-button{
  background:transparent;font-weight:600;font-size:1.06rem;padding:26px 8px;color:var(--ink);box-shadow:none!important;
}
.accordion-button:not(.collapsed){color:var(--accent); background: none;}
.accordion-button::after{
  background-image:none;content:"\F282";font-family:"bootstrap-icons";font-size:1.1rem;
  transition:transform .3s ease;color:var(--accent);
}
.accordion-button:not(.collapsed)::after{transform:rotate(45deg);}
.accordion-body{padding:0 8px 26px;color:var(--ink-soft);font-size:.96rem;line-height:1.65;}

/* ---------- CTA form ---------- */
.cta-section{
  border-radius:var(--radius-lg);background:linear-gradient(160deg,var(--navy),#161b1f);
  color:#fff;padding:64px;position:relative;overflow:hidden;
}
.cta-section h2 {
    color: #fff;
}
@media(max-width:767.98px){.cta-section{padding:38px 24px;}}
.cta-section::before{
  content:"";position:absolute;width:480px;height:480px;border-radius:50%;
  background:radial-gradient(circle,var(--accent) 0%, transparent 70%);opacity:.25;
  top:-220px;right:-160px;
}
.form-control-custom{
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.18);color:#fff;
  border-radius:var(--radius-sm);padding:15px 18px;font-size:.95rem;
}
.form-control-custom::placeholder{color:rgba(255,255,255,.5);}
.form-control-custom:focus{
  background:rgba(255,255,255,.1);border-color:var(--accent);box-shadow:none;color:#fff;
}
.form-check-label{font-size:.82rem;color:rgba(255,255,255,.6);}
.form-check-input{background-color:rgba(255,255,255,.1);border-color:rgba(255,255,255,.3);}
.form-check-input:checked{background-color:var(--accent);border-color:var(--accent);}

/* map */
.map-wrap{border-radius:var(--radius-md);overflow:hidden;height:100%;min-height:340px;box-shadow:var(--shadow-card);filter:grayscale(.25) contrast(1.05);}
.map-wrap iframe{width:100%;height:100%;min-height:340px;border:0;display:block;}

/* ---------- footer ---------- */
footer{background:var(--ink);color:rgba(255,255,255,.65);padding:80px 0 30px;}
footer .brand-logo{color:#fff;}
footer h6{color:#fff;font-weight:700;font-size:.9rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:20px;}
footer a{color:rgba(255,255,255,.6)!important;transition:color .25s ease!important; text-decoration: none!important;}
footer a:hover{color:var(--accent)!important;}
footer .foot-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:56px;padding-top:26px;font-size:.82rem;}
.social-ic{
  width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.2);
  display:flex;align-items:center;justify-content:center;transition:all .3s ease;
}
.social-ic:hover{background:var(--accent);border-color:var(--accent);color:#fff!important;}


/* POWERED */
a.garry {
	color: #000505;
	text-decoration: none;
}
a.garry img {
    transition: 0.7s;
}
a.garry:hover img {
	transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -o-transform: rotate(45deg);
}
/* End POWERED */

/* SCROLL UP */
a.scrollup {
    position: fixed;
    bottom: 20px;
    right: 20px;
    width: 32px;
    height: 32px;
    opacity: 0.5;
    display: none;
    background: url(../images/up-arrow.png) center center no-repeat;
	background-size: cover;
	transition: 1s;
	z-index: 300;
	border: none;
}
.scrollup:hover {
    opacity: 1;
}
/* End SCROLL UP */

/* @MEDIA */
/* <= 1199px */
@media (max-width: 1199px) {

}
/* <= 1024px */
@media (max-width: 1024px) {

}
/* <= 991px */
@media (max-width: 991px) {
    .process-line{
        display:none;
    }
}
/* <= 767px */
@media (max-width: 767px) {
	body.scrollhide {
        margin-right: 0;
    }
    .menu-block {
        padding: 10px 20px;
    }
    .video-top {
        height: 75vh;
    }
    .ht-card {
        bottom:0;
        left:0;
        width:230px;
    }
    .why-row {
        gap: 15px;
    }
    .why-num {
        width: auto;
    }
    .why-img {
        height: 75vh;
    }
    .main-img {
	    width: 100%;
	    margin: 0 0 20px 0;
	}
}
/* <= 380px */
@media (max-width: 380px) {
	
}
/* <= 320px */
@media (max-width: 320px) {
	
}

/* >= 2000 */
@media (min-width: 2000px) {

}

/* USLUGI CSS */
.uslugi-wrapper {
    background-color: #fff;
	box-shadow: 2px 2px 8px #f0f0ef;
	padding: 30px;
	transition: 1s;
}
.uslugi-img {
    position: relative;
	width: 65px;
	height: 65px;
	border-radius: 50%;
	background-color: #f3f3f3;
	margin-bottom: 20px;
	transition: 1s;
}
.uslugi-img img {
    transition: 1s;
	position: absolute;
	right: -10px;
	bottom: -10px;
}
.uslugi-head {
    font-size: 20px;
	font-weight: 500;
	color: #000;
	margin-bottom: 10px;
}
.uslugi-text {
    font-size: 15px;
}
/* ADVANTAGES */
.adv-img {
    display: inline-block;
    position: relative;
	margin-bottom: 20px;
}
.adv-img span {
    position: absolute;
	left: -10px;
	top: -10px;
	background-color: #494440;
	color: #fff;
	width: 35px;
	height: 35px;
	border-radius: 50%;
	font-family: 'Oswald', sans-serif;
	font-weight: 400;
	font-size: 17px;
}
.adv-heder {
    text-transform: uppercase;
	color: #000;
	font-size: 18px;
	font-weight: 500;
	margin-bottom: 10px;
}

main .adv-img span {
	background: linear-gradient(135deg, var(--accent), #DE7A3B);
}