:root{
  --header-bg:#0e2340;
  --menu-bg:#0F1D44;
  --menu-border:#586993;
  --hero-bg:#020818;
  --accent-pink:#D41D50;
  --gray-light:#f6f7fb;
  --gray-section:#f5f7fb;
  --text:#1b1b1b;
  --muted:#6a6f79;
  --link:#2956c7;
  --link-hover:#1c4f9c;
  --card-border:#e3e7f2;
  --card-shadow:0 4px 8px rgba(5,23,58,.08);
  --footer-bottom:#0a1527;
  --footer-muted:#8891b0;
  
  
  
  --navy: #0a1828;
    --navy-2: #0f2440;
    --navy-3: #14304f;
    --accent: #b98a3c;
    --accent-2: #d4a85c;
    --ink: #17212b;
    --muted: #5c6b7a;
    --line: #e3e9f0;
    --light: #f5f7fa;
    --white: #ffffff;
    --shadow: 0 24px 60px -20px rgba(10, 24, 40, .28);
    --radius: 18px;
}
*{margin:0;padding:0;box-sizing:border-box}
body{
  font-family:"Arial",sans-serif;
  font-weight:400;
  color:var(--text);
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
}
body p {
	text-align: justify;
}

img{max-width:100%}
a{text-decoration:none;color:inherit}
ul{list-style:none}
.custom-container{
  max-width:1376px;
  width:100%;
  margin:0 auto;
  padding:0 15px;
}

/* ============ HEADER ============ */
header{
  background-color:var(--header-bg);
  color:#fff;
  padding:15px 0;
}
header .custom-container{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
}
.logo{
  display:flex;
  width: fit-content;
  align-items:center;
  gap:12px;
  flex-shrink:0;
  text-align: center;
}
.logo .logo-mark{
  width:54px;height:54px;border-radius:50%;
  background:linear-gradient(120deg,#2a59c8,#39b8ff);
  display:grid;place-items:center;
  font-weight:700;font-size:24px;color:#fff;
}
.logo .logo-text{line-height:1.15}
.logo .logo-name{
	font-weight:700;
	font-size:23px;
	padding-bottom: 8px;
}

.logo .logo-line {
  content: ""; 
  width: 94%; /* Длина линии */
  border-bottom: 1px solid #586993; /* Собственно линия */
  margin: auto;
}
.logo .logo-role{
	font-size: 11px;
    color: #c3dae0;
    letter-spacing: 1.4px;
    padding-top: 10px;
    text-transform: uppercase;
}

.main-menu ul{
	padding-left:0;
  display:flex;
  column-gap:7px;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  row-gap:10px;
}
.main-menu ul li a{
  background:var(--menu-bg);
  border:1.5px solid var(--menu-border);
  border-radius:21px;
  display:block;
  padding:6px 15px;
  font-size:13.5px;
  font-weight:500;
  color:#fff;
  transition:.2s;
  white-space:nowrap;
}
.main-menu ul li a:hover{
  color:var(--menu-bg);
  background:#fff;
  border-color:#fff;
}

.phone{
  display:flex;
  flex-direction:column;
  text-align:center;
  width:280px;
  flex-shrink:0;
}
.phone-main{
  font-weight:500;
  font-size:25px;
  color:inherit;
  white-space:nowrap;
}
.phone-main:hover{text-decoration:underline;color:inherit}
.phone-sub{font-size:15px;color:#c3dae0}

/* burger */
.open-menu{
  display:none;
  background:none;border:none;cursor:pointer;
  position:relative;
  width:22px;height:22px;
  top: -12px;
    padding: 20px;
}
.open-menu span{
  width:22px;display:block;height:3px;background:#fff;border-radius:2px;
  position:relative;transition:.2s;
}
.open-menu span:before,.open-menu span:after{
  content:"";width:100%;height:inherit;border-radius:inherit;display:block;
  background:inherit;position:absolute;transition:inherit;
}
.open-menu span:before{margin:10px 0 0 0}
.open-menu span:after{margin:20px 0 0 0}

/* ============ HERO ============ */
.hero-section{
  position:relative;
  padding:80px 0 50px;
  color:#fff;
  background-color:var(--hero-bg);

  overflow:hidden;
}
.hero-section__bg{
  position:absolute;inset:0;width:100%;height:100%;z-index:0;
  background:
    linear-gradient(120deg, rgba(5,12,30,.88) 0%, rgba(1,5,14,.96) 70%),
    radial-gradient(circle at 18% 0%, rgba(88,152,255,.30), transparent 60%),
    linear-gradient(120deg,#354f8c,#0a0e18);
  background-image: url('/images/main-adv3.jpg');
    background-size: cover;
  background-position: top right;
  background-repeat: no-repeat;
}

/* @media (max-width:1400px) { */
	/* .hero-section__bg {background-position: top right 30%;} */
/* } */

.hero-section .custom-container{position:relative;z-index:2}
.hero-section__content{max-width:590px}
.hero-section__title{
  font-size:32px;
  font-weight:600;
  margin:0 0 18px;
  line-height:1.15;
}
.hero-section__title .accent{color:#ff8585;font-size: 115%;}
.hero-section__descr{
  margin:0 0 28px;
  font-size:18px;
  line-height:1.6;
  color:rgba(229,235,255,.92);
}
.hero-section__badges{
  display:grid;
  gap:12px;
  margin:0 0 30px;

  grid-template-columns:1fr 1fr;
}
.hero-section__badge{
  border-radius:999px;
  border:1px solid rgba(174,197,255,.55);
  padding:6px 16px;
  font-size:13px;
  color:rgba(217,227,255,.9);
  background:rgba(7,20,53,.55);
  text-align:center;
}
.hero-section__buttons{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-bottom:30px;
}



@media (min-width:768px) {
.hero-section__badges{  padding-left:0;}


.hero-section__buttons p{
	    width: 100%;
	display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

}






@media (max-width:570px) {
	.hero-section__buttons .btn {
		min-width: 90%;
		padding: 12px 1px;
		}
}


.btn{
  border-radius:999px;
  padding:12px 30px;
  font-size:15px;
  font-weight:600;
  white-space:nowrap;
  transition:transform .2s ease, box-shadow .2s ease;
  border:none;
  cursor:pointer;
  display:inline-block;
}
.btn:hover{transform:translateY(-1px)}
.btn:active{scale:.98}
.btn-primary{
  background:linear-gradient(120deg,#2a59c8,#39b8ff);
  color:#fff !important;
}
.btn-secondary{
  border:1px solid rgba(255,255,255,.65);
  background:transparent;
  color:#fff;
}
.hero-section__note{
  margin:0;font-size:15px;text-align:center;line-height:1.2;
}
.hero-section__note--strong{
  margin-top:14px;font-size:33px;font-weight:600;
}
.hero-section__note--strong a{color:inherit}
.hero-section__note--strong a:hover{text-decoration:underline}



.main-adv-m {display:none;width:0; height:0;}

/* ============ ABOUT ============ */
.about-section{
  padding:80px 0 0px;
  background:#fff;
  color:var(--text);
}
.about-section__title{
  font-size:14px;
  font-weight:500;
  text-transform:uppercase;
  letter-spacing:.05em;
  color:var(--muted);
  margin:0 0 20px;
}
.about-section__content{
  text-align: justify;
  max-width:820px;
  margin:0 0 38px;
}
.about-section__content p{
  margin:0 0 16px;
  font-size:17px;
  line-height:1.6;
  color:var(--text);
}
.about-section__content p:last-child{margin-bottom:0}
.about-section__content strong{font-weight:600}
.about-section__cta{text-align:center;margin-top:10px}
.about-section__cta-text{margin:0 0 7px;font-size:17px}
.about-section__cta-phone{
  margin:0;font-size:24px;font-weight:600;
}
.about-section__cta-phone a{color:var(--text);transition:opacity .2s}
.about-section__cta-phone a:hover{opacity:.7}
.about-section__cta-note{margin:0;font-size:16px}





/* ============ MEDIA (практика) ============ */
.media-section{
  padding:40px 0 30px;
  background-color:var(--gray-section);
  background: linear-gradient(180deg, #f5f7fb 95%, transparent 99%);
}
.media-section__eyebrow{
  font-size:14px;font-weight:500;text-transform:uppercase;
  letter-spacing:.05em;color:var(--muted);margin:0 0 12px;
}
.media-section__title{
  font-size:29px;font-weight:700;color:var(--text);margin:0 0 16px;
}
.media-section__descr{
  font-size:17px;margin:0 0 40px;max-width:660px;font-weight:600;color:var(--muted);
}
.media-section__slider{
  overflow:hidden;
  margin:-14px;
}
.media-section__track{
  display:flex;
  align-items:stretch;
  transition:transform .55s cubic-bezier(.4,0,.2,1);
}
.media-section__slide{
  flex:0 0 33.3333%;
  max-width:33.3333%;
  min-width:33.3333%;
  padding:14px;
  display:flex;
}
.media-section__card{
  background:#fff;
  border-radius:14px;
  padding:25px 22px;
  display:flex;
  flex-direction:column;
  width:100%;
  box-shadow:var(--card-shadow);
  border:1px solid var(--card-border);
  transition:transform .3s ease, box-shadow .3s ease;
}
.media-section__card:hover{transform:translateY(-2px);box-shadow:0 7px 16px rgba(5,23,58,.12)}
.media-section__card-title{
  font-size:19px;font-weight:700;margin:0 0 14px;
}
.media-section__card-text{
  font-size:16px;color:var(--text);margin:0 0 13px;flex-grow:1;
}
.media-section__card-list{margin:0 0 14px;padding:0}
.media-section__card-list li{
  font-size:14.5px;color:#454b57;padding:4px 0 4px 18px;position:relative;
}
.media-section__card-list li:before{
  content:"";position:absolute;left:0;top:12px;width:6px;height:6px;
  border-radius:50%;background:#2a59c8;
}
.media-section__card-link{
  font-size:16px;font-weight:700;color:var(--link);
  transition:color .2s;align-self:flex-start;
}
.media-section__card-link:hover{color:var(--link-hover);text-decoration:underline}

/* ===== CAROUSEL CONTROLS ===== */
.media-section__controls{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:22px;
  margin-top:32px;
}
.media-section__arrow{
  flex:0 0 auto;
  width:46px;height:46px;
  border-radius:50%;
  border:1.5px solid var(--card-border);
  background:#fff;
  color:var(--link);
  font-size:26px;
  line-height:1;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0 0 3px;
  box-shadow:var(--card-shadow);
  transition:background .2s, color .2s, border-color .2s;
}
.media-section__arrow:hover{
  background:linear-gradient(120deg,#2a59c8,#39b8ff);
  border-color:transparent;
  color:#fff;
}
.media-section__arrow.is-hidden{visibility:hidden;pointer-events:none}
.media-section__dots{
  display:flex;
  align-items:center;
  gap:9px;
}
.media-section__dot{
  width:9px;height:9px;
  border-radius:50%;
  border:none;
  background:#c6cede;
  cursor:pointer;
  padding:0;
  transition:background .2s, transform .2s;
}
.media-section__dot.is-active{
  background:linear-gradient(120deg,#2a59c8,#39b8ff);
  transform:scale(1.25);
}





/* ============ STAGES (зашита) ============ */
.section {
    padding-block: clamp(48px, 8vw, 96px);
}

.stages {
	padding-top:0;
	padding-bottom:0;
}

.stages h2 {
    text-align: center;
    margin-bottom: 1rem;
	font-size: 2.6rem;
	font-weight: 700;
}

.stages-list {
    max-width: 900px;
    margin: 48px auto 0;
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.stage-item {
    display: grid;
    grid-template-columns: 80px 1fr;
    gap: 24px;
    padding: 32px;
    background: #f5f7fb;
    border-radius: 12px;
    border-left: 4px solid #2a59c8;
    transition: all 0.3s ease;
}

.stage-item:hover {
    box-shadow: 0 4px 16px rgba(20, 20, 40, .2);
    transform: translateX(8px);
}

.stage-num {
    font-size: 2.5rem;
    font-weight: 700;
    color: #2a59c8;
    opacity: 0.3;
}

.stage-content h3 {
    margin-bottom: 12px;
	line-height: 1.1;
    margin: 0 0 .4em;
    font-weight: 700;
}







/* ============ FOOTER ============ */
.footer{background:#0a1527;}
.footer__cta{padding:30px 0 60px;}
.footer__cta-inner{
  display:flex;align-items:center;justify-content:space-between;gap:40px;
  border-radius:25px;padding:38px 31px;
  background-image:linear-gradient(to right,#314a8f,#263e76,#1d325e,#162647,#101b31);
}
.footer__cta-content{flex:1}
.footer__cta-title{
  font-size:24px;font-weight:600;line-height:1.2;color:#fff;margin:0 0 12px;
}
.footer__cta-text{font-size:18px;color:rgba(255,255,255,.9);margin:0}
.footer__bottom{background-color:var(--footer-bottom);padding:24px 0}
.footer__bottom-inner{
  display:flex;align-items:center;justify-content:space-between;gap:20px;
  flex-wrap:wrap;color:var(--footer-muted);
}
.footer__nav{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.footer__nav-link{transition:color .2s}
.footer__nav-link:hover{color:rgba(255,255,255,.9)}


.overlay {
	width: 0;
	height: 100vh;
	background: rgba(0,0,0,0.2);
	position: fixed;
	top:0;
	left:-10px;
	z-index: 1;
	transition: .3s ease;
}

.menu-open .overlay {
	display: block;
	width: 100%;
	height: 100%;
	left: 321px;
}



.phone.mob {display: none;}

.qr-adv {padding: 0 5% 30px; max-width:335px;}


/* ============ RESPONSIVE ============ */
@media screen and (max-width:1199px){
  .hero-section__title{font-size:38px}
}
@media screen and (max-width:1100px){
  .main-menu{display:none}
  .open-menu{display:block}

    .burger-menu, .main-menu {
        display: block;
        background-color: #0e2340;
        position: fixed;
        left: -400px;
        top: 0;
        height: 100%;
        overflow: auto;
        padding: 20px;
        width: 320px;
        transition: .3s;
        z-index: 10000;
        max-width: calc(100% - 60px);
        box-shadow: 12px 50px 40px 0px #000000a8;
    }	
  
  
  .menu-open .main-menu {
		text-align: center;
		display: block;
		z-index: 10000;

		padding: 30px;
		left: 0;
	}
	
   .menu-open .main-menu li{
		text-align: center;
		display: block;
		width: 100%;
	}


  .media-section__grid{grid-template-columns:1fr 1fr}
  .footer__cta-inner{flex-direction:column;align-items:flex-start;padding:40px 32px;gap:28px}
}





		
		



#article {
	padding-top: 80px;
}

#article h1 {


}

h1 {	font-weight: 700;
	padding-bottom: 20px;
}

#article h3 {
	padding-top: 20px;
}

@media (min-width: 1200px) {
	p, li {font-size: 18px;}
}



/* ============ ARTICLE (разделы) ============ */
.article-hero{
  position:relative;
  padding:60px 0 44px;
  color:#fff;
  background-color:var(--hero-bg);
  overflow:hidden;
}
.article-hero__bg{
  position:absolute;inset:0;width:100%;height:100%;z-index:0;
  background:
    linear-gradient(120deg, rgba(5,12,30,.9) 0%, rgba(1,5,14,.97) 75%),
    linear-gradient(120deg,#354f8c,#0a0e18);
}
.article-hero .custom-container{position:relative;z-index:2}
.article-hero__crumbs{
  font-size:13px;color:rgba(217,227,255,.75);margin:0 0 14px;
}
.article-hero__crumbs a{color:rgba(217,227,255,.85)}
.article-hero__crumbs a:hover{text-decoration:underline;color:#fff}
.article-hero__title{
  font-size:30px;font-weight:600;line-height:1.2;max-width:760px;
}
.article-hero__descr{
  margin:14px 0 0;font-size:16px;line-height:1.6;
  color:rgba(229,235,255,.9);max-width:700px;
}

.article-body{
  padding:60px 0 0px;
  background:#fff;
}
.article-body .custom-container{
  max-width:900px;
}

.cat-group {
  margin: 0 0 34px;
}

.cat-group__title {
  font-size: 20px;
  font-weight: 700;
  color: #fff;
  background: linear-gradient(120deg,#314a8f,#1d325e);
  border-radius: 12px;
  padding: 12px 18px;
  margin: 0 0 14px;
}

.article-body ul, .article-body ol {
  margin: 0 0 18px;
  padding-left: 22px;
}

.cat-list {
  background: #fff;
  border: 1px solid #e3e7f2;;
  border-radius: 14px;
  overflow: hidden;
}

.article-body ul li {
  font-size: 16px;
  line-height: 1.6;
  color: #2a2f38;
  padding: 3px 0 3px 6px;
  position: relative;
  list-style: disc;
}

.cat-list li {
  padding: 11px 20px;
  font-size: 15.5px;
  line-height: 1.5;
  color: #2a2f38;
  border-bottom: 1px solid #e3e9f0;
}

.article-body ul li {
  font-size: 18px;
  line-height: 1.6;
  color: #2a2f38;
  list-style: disc;
}

.cat-list li strong {
  font-weight: 700;
}

.article-body h3 {
  /* font-size: 19px; */
  font-weight: 700;
  margin: 34px 0 12px;
}

.article-callout {
  background: #f5f7fb;
  border-left: 4px solid #2a59c8;
  border-radius: 0 12px 12px 0;
  padding: 20px 24px;
  margin: 26px 0;
}

.article-divider {
  border: none;
  border: 1px solid;
    border-top-width: medium;
    border-top-style: none;
    border-top-color: currentcolor;
  border-top: 1px #e3e9f0;
  margin: 34px 0;
}

.article-body p:last-child {
  margin-bottom: 0;
}






.firstul {display:none;}


.footer p, .footer li {
    font-size: 14px;
    line-height: 1.8;
}

.footer h4 {
    color: #fff;
    font-size: 16px;
    margin-bottom: 18px;
    font-weight: 700;
}

.footer ul {
    list-style: none;
}

.footer-bottom {
    border-top: 1px solid rgba(255, 255, 255, .08);
    padding: 22px 0;
    text-align: center;
    font-size: 13px;
    color: #6c7d8f;
}

.wrap {
    max-width: 1180px;
    margin: 0 auto;
    padding: 0 24px;
}


.footer .wrap {
    display: grid;
    grid-template-columns: 1.4fr 1fr 1fr;
    gap: 50px;
    padding-bottom: 10px;
}


.footer {
    background: #0a1828;;
    color: #93a4b6;
    padding: 60px 0 0;
}






@media (max-width:991px) {
	.firstul {display:block;}
	
	.media-section__slide{flex:0 0 50%;max-width:50%;min-width:50%}
}

@media (max-width:767.9px) {
	.hero-section__content {margin:auto;}
	  .hero-section{padding:55px 0 70px;background-image:linear-gradient(to right top,#354f8c,#0a0e18)}
  .hero-section__bg{display:none}
  .hero-section__title{font-size:25px; text-align: center;}
  .hero-section__descr{font-size:16px}
  .hero-section__badges{grid-template-columns:1fr;padding-right: 40px;}
  .hero-section__note--strong{font-size:28px}	
	
	.stage-content h3 {font-size: 20px;}
	.stage-content p {font-size: 14px;}
	
	.stage-item {
		grid-template-columns: 70px 1fr;
		gap: 0;
		padding: 20px;
	}
	.cat-group__title {  padding: 9px 9px;  font-size: 18px;}
	.article-body .cat-list li {    font-size: 16px;}
	
	.article-hero__title {font-size: 26px;}
	.article-hero {    padding: 20px 0 20px;}
	
	
  .media-section{padding:35px 0}
  .media-section__title{font-size:24px}
  .media-section__descr{font-size:16px;margin-bottom:30px}
  .media-section__slide{flex:0 0 100%;max-width:100%;min-width:100%}
  .media-section__grid{grid-template-columns:1fr}


	

  .main-adv-m {display:block;width:100%;height:auto;        margin-bottom: 20px; border-radius: 10px;}
  .about-section{padding:40px 0 0px;}
  .about-section__content p{font-size:15px}
  .about-section__cta-phone{font-size:19px}
  .about-section__cta-note{font-size:13px}
 
.stages h2 {font-size:25px;}
	.footer {padding: 30px 0 0;}
  .footer__cta{   padding: 30px 0 35px;}
  .footer__cta .btn{          margin: auto;}
  .footer__cta-inner{padding:32px 24px;text-align: center;}
  .footer__cta-title{font-size:24px}
  .footer__cta-text{font-size:15px;text-align: center;}
  .footer__bottom{padding:20px 0}
  .footer__bottom-inner{flex-direction:column;align-items:center;text-align:center;gap:16px}
  .footer__nav{flex-direction:column;gap:12px}
     .footer .wrap {        grid-template-columns: 1fr; } 
  
  .footer ul {padding-left:0;}
  .footer .wrap {gap: 0px;        padding-bottom: 0;}
}


@media screen and (max-width:700px){
	header .custom-container {display:block;}
  .open-menu {
        display: block;
        position: absolute;
        right: 20px;
        top: 8px;
    }
	  .phone.mob{width:auto;
	          padding-top: 15px;

		
		}
		
		.phone a {font-size:0;}
		
    .phone .phone-main:after {
        background-image: url('phone.svg');
        content: "";
        width: 35px;
        height: 35px;
        display: block;
        background-repeat: no-repeat;
        position: absolute;
        top: 21px;
        right: 63px;
    }
	
	.phone-sub {display:none;}
	
	.phone.mob {display: flex;}
	
	.phone.mob a {font-size:24px;}
	
	.phone.mob .phone-main:after {
		background:none;
	}
	.phone.mob .phone-sub {display:block;}
}	




@media (max-width:400px){
	.logo .logo-name {font-size:5vw;}
	.logo .logo-role {    font-size: 2.5vw;    letter-spacing: 0.2vw;}
	.menu-open .main-menu {padding: 5vw;}
	.main-menu ul li a {    font-size: 3.5vw;}
	.hero-section__note--strong {font-size:7vw;}
	.hero-section__badges {padding:0;}
	.hero-section__buttons .btn {font-size: 4vw;}
    .phone.mob a {        font-size: 7vw;}
	.phone.mob .phone-sub {    font-size: 3.5vw;}
	.footer__cta .btn span {display:none;}
}