body {
  margin: 0;
  padding: 0;
  font-family: sans-serif;
  background: #0A192F;
}


.first{
    width:100%;
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    overflow:hidden;
}

/* изображение */

.first img{
    width:100%;
    height:90vh;
    object-fit:cover;
    max-height:900px;
}

/* затемнение чтобы текст читался */

.first::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(
        rgba(0,0,0,0.55),
        rgba(0,0,0,0.35)
    );
}

.name  {
position: absolute;
    top: 10%; /* Центрирование по вертикали */
    left: 50%; /* Центрирование по горизонтали */
    transform: translate(-50%, -50%); /* Точное выравнивание по центру */
    text-align: center;

}
.description_name {
	    left: 50%; /* Центрирование по горизонтали */
    top: 15%; /* Центрирование по вертикали */
    width: 80%;


	position: absolute;
	text-align: center;
	    transform: translate(-50%, -50%); /* Точное выравнивание по центру */

}
.description_name2 {
		    left: 50%; /* Центрирование по горизонтали */
    top: 30%; /* Центрирование по вертикали */
    width: 80%;


	position: absolute;
	text-align: center;
	    transform: translate(-50%, -50%); /* Точное выравнивание по центру */
}
.name h1 {
    color: white;
    margin: 0;
    font-size: 3rem;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5); /* Чтобы текст лучше читался */
}
.description_name h1{
	color: white;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5); /* Чтобы текст лучше читался */
       font-size: 3rem;
    margin: 0;
}
.description_name2 h1{
	    color: white;
    margin: 0;
    font-size: 2rem;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5); /* Чтобы текст лучше читался */

}
.name,
.description_name,
.description_name2{
    position:absolute;
    left:50%;
    transform:translateX(-50%);
    width:80%;
    z-index:2;
}


.name{
    top:18%;
}

.description_name{
    top:28%;
}

.description_name2{
    top:42%;
}
.name h1{

    font-size:3.5rem;
    color:white;

    text-shadow:
        0 0 10px rgba(0,194,255,0.8),
        0 0 30px rgba(0,194,255,0.5);

}
.description_name h1{

    font-size:2.5rem;
    color:white;

    text-shadow:0 5px 20px rgba(0,0,0,0.6);

}
.description_name2 h1{

    font-size:1.7rem;
    color:#e6e6e6;
    line-height:1.5;

    text-shadow:0 5px 20px rgba(0,0,0,0.6);

}
@media (max-width:1000px){

.first img{
    height:70vh;
}

.name h1{
    font-size:2.8rem;
}

.description_name h1{
    font-size:2rem;
}

.description_name2 h1{
    font-size:1.4rem;
}

.name{ top:20%; }
.description_name{ top:32%; }
.description_name2{ top:48%; }

}
@media (max-width:600px){

.first img{
    height:60vh;
}

.name h1{
    font-size:2.2rem;
}

.description_name h1{
    font-size:1.5rem;
}

.description_name2 h1{
    font-size:1.1rem;
}

.name{ top:22%; }

.description_name{ 
    top:36%;
    width:90%;
}

.description_name2{
    top:55%;
    width:90%;
}

}





.problem{
	width: 100%;
}

.problem h1{
	color: white;
	text-align: center;
	font-size: 3rem;
}

.desk{
    display:grid;
    grid-template-columns: 0.8fr 4px 1.2fr;
    gap:50px;
    align-items:center;
}

.left_pr{
    text-align:left;
}

.left_pr h1{
    font-size:1.4rem;
    margin-bottom:25px;
    line-height:1.6;
    color:#e6e6e6;
}
.line_pr{
    width:4px;
    background:linear-gradient(180deg,#00C2FF,#0077ff);
    border-radius:10px;
    box-shadow:0 0 15px rgba(0,194,255,0.6);
}
.right_pr{
    display:grid;
    grid-template-columns: repeat(2,1fr);
    gap:50px;
    text-align:center;
}
.double_1{
	width: 100%;
	display: flex

}
.due{
	margin: auto;
	width: 49%;
}
.big_due{
	width: 100%;
}
.big_due h1{
		text-align: center;
	font-size: 4rem;
	color: #00C2FF;
}
.sm_due{
	width: 100%;
	margin-left: 10px;
}
.sm_due h1{
	font-size: 1.5rem;
}

.varib{
		margin: auto;

	width: 49%;
}

.big_varib{
	width: 100%;
}
.big_varib h1{
		text-align: center;
	font-size: 4rem;
	color: #00C2FF;
}
.sm_varib{
	width: 100%;
	margin-left: 10px;
}
.sm_varib h1{
	font-size: 1.5rem;
}


.stat{
    transition:0.3s;
}

.stat:hover{
    transform:translateY(-8px) scale(1.03);
}
.stat_value{

    font-size:4rem;
    font-weight:700;

    background: linear-gradient(90deg,#00C2FF,#4facfe);
    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;

    text-shadow:
        0 0 10px rgba(0,194,255,0.7),
        0 0 30px rgba(0,194,255,0.5);

}
.stat_text{

    margin-top:10px;
    font-size:1.3rem;
    color:#d8d8d8;
    line-height:1.5;

}
@media (max-width:1000px){

.desk{
    grid-template-columns:1fr;
}

.line_pr{
    display:none;
}

.right_pr{
    grid-template-columns:1fr 1fr;
}

}


@media (max-width:600px){

.problem h1{
    font-size:2.2rem;
}

.left_pr h1{
    font-size:1.2rem;
}

.right_pr{
    grid-template-columns:1fr;
    gap:35px;
}

.stat_value{
    font-size:3rem;
}

.stat_text{
    font-size:1.1rem;
}

}













.double_2{
	width: 100%;
		display: flex

}
.hour{
	margin: auto;

	width: 49%;
}
.big_hour{
	width: 100%;
}
.big_hour h1{
	text-align: center;
	font-size: 4rem;
	color: #00C2FF;
}
.sm_hour{
	width: 100%;
	margin-left: 10px;
}
.sm_hour h1{
	font-size: 1.5rem;
}

.dat{
	margin: auto;

	width: 49%;
}

.big_dat{
	width: 100%;
}
.big_dat h1{
		text-align: center;
	font-size: 4rem;
	color: #00C2FF;
}
.sm_dat{
	width: 100%;
	margin-left: 10px;
}
.sm_dat h1{
	font-size: 1.5rem;
}









.ill{
	margin-top: 5%;
	width: 100%;
}
.name_ill{
	width: 100%;
}
.name_ill h1{
	color: white;
	font-size: 3rem;
	text-align: center;
}
.start_ill{
	width: 100%;
}
.start_ill h1{
	color: white;
	font-size: 1.5rem;
	text-align: left;
	margin-left: 5%;
	text-indent: 2em

}

.name_cardio{
	width: 100%;
}
.name_cardio h1{
	color: white;
	text-align: center;
	margin-left: 5%;
}










.cardio_cards{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
    width: 90%;
    margin: auto;
    margin-top: 40px;
}



@media (max-width: 1000px){

.cardio_cards{
    grid-template-columns: repeat(2, 1fr);
}

}

@media (max-width: 600px){

.cardio_cards{
    grid-template-columns: 1fr;
}

.start_ill h1{
    font-size: 1.2rem;
}

.name_ill h1{
    font-size: 2.2rem;
}

}










.dat_card{

transition: 
    background-color 0.4s ease, 
    box-shadow 0.4s ease, 
    transform;
        position: relative;

    justify-content: center;
    margin-top: 5%;
    will-change: transform;
    transform: translateY(0);
    background: #111C34;
    width: 80%;
    box-shadow: 0 10px 30px rgba(0,0,0,0.3);                                    
    border: 4px solid #5D00BB;
    height: auto;


}
.dat_card:hover {
    transform: translateY(-20px);
}
.dat_card h1{
    color: white;
    text-align: center;
}
.dat_card h2{
        text-indent: 1em;
        color: white;
    text-align: left;
    margin-left: 5%;

}

.dat_card img{
    width: 90%;
    margin-left: 5%;
    margin-right: 5%;
    margin-top: 5%;
}










.cc1{
	margin-left: 5%;
	width: 33%;
}

.cc2{
	width: 33%;

}
.cc3{
	width: 33%;
}
.cardio_card{
transition: 
    background-color 0.4s ease, 
    box-shadow 0.4s ease, 
    transform;
        position: relative;

	justify-content: center;
	margin-top: 5%;
	will-change: transform;
	transform: translateY(0);
	background: #111C34;
	width: 80%;
	box-shadow: 0 10px 30px rgba(0,0,0,0.3);
	border: 4px solid rgba(255,70,70,0.6);
	height: auto;
}
.cardio_card:hover {
    transform: translateY(-20px);
}

.cardio_card h1{
	color: white;
	text-align: center;
}
.cardio_card h2{
		text-indent: 1em;
		color: white;
	text-align: left;
	margin-left: 5%;

}

.cardio_card img{
	width: 90%;
	margin-left: 5%;
	margin-right: 5%;
	margin-top: 5%;
}

.name_vis {
	width: 100%;
}

.name_vis h1{
	text-align: center;
	margin-top: 5%;
	color: white;

}



.vis_card{

transition: 
    background-color 0.4s ease, 
    box-shadow 0.4s ease, 
    transform;
        position: relative;

	justify-content: center;
	margin-top: 5%;
	will-change: transform;
	transform: translateY(0);
	background: #111C34;
	width: 80%;
	box-shadow: 0 10px 30px rgba(0,0,0,0.3);									
	border: 4px solid #00C2FF;
	height: auto;


}
.vis_card:hover {
    transform: translateY(-20px);
}
.vis_card h1{
	color: white;
	text-align: center;
}
.vis_card h2{
		text-indent: 1em;
		color: white;
	text-align: left;
	margin-left: 5%;

}

.vis_card img{
	width: 90%;
	margin-left: 5%;
	margin-right: 5%;
	margin-top: 5%;
}
           

 .cardio_card, .vis_card, .dat_card {
    background: #111C34;
    border-radius: 16px;
    padding-bottom: 20px;

    transition: 
        transform 0.35s ease,
        box-shadow 0.35s ease,
        border 0.35s ease;

    box-shadow: 0 8px 25px rgba(0,0,0,0.35);

    position: relative;
    overflow: hidden;
}

/* эффект свечения */
.cardio_card::before,
.vis_card::before,
.dat_card::before{
    content:"";
    position:absolute;
    inset:0;
    background: linear-gradient(120deg, transparent, rgba(255,255,255,0.08), transparent);
    opacity:0;
    transition:0.4s;
}

/* hover эффект */
.cardio_card:hover,
.vis_card:hover, 
.dat_card:hover{
    transform: translateY(-12px) scale(1.02);
    box-shadow: 0 20px 50px rgba(0,0,0,0.6);
}

/* подсветка */
.cardio_card:hover::before,
.vis_card:hover::before,
.dat_card:hover::before{
    opacity:1;
}











.cardio_card, .vis_card, .dat_card{
    animation: cardAppear 0.6s ease;
}

@keyframes cardAppear{
    from{
        opacity:0;
        transform: translateY(30px);
    }
    to{
        opacity:1;
        transform: translateY(0);
    }
}

.cardio_card img,
.vis_card img, .dat_card img{
    width: 90%;
    margin: 20px auto;
    display:block;
    border-radius:10px;
}





.models{
    margin-top: 5%;
}


.models_ai{
    margin-left: 10%;
    margin-right: 10%;

}

.models_ai h2{
    text-indent: 2em;
    color: white;
}

.tab_text{
    margin-left: 5%;
}
.tab_text h2{
    color: white;
    text-indent: 2em;

}
























.ai_pipeline{
width:100%;
max-width:1000px;
margin:100px auto;
display:flex;
flex-direction:column;
align-items:center;
gap:60px;
position:relative;
}

/* строки */

.row{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:120px;
width:100%;
justify-items:center;
}

.row:nth-child(3),
.row:nth-child(4){
grid-template-columns:1fr;
}

/* блоки */

.box{
padding:16px 32px;
border:2px solid white;
border-radius:10px;
color:white;
font-weight:600;
background:rgba(255,255,255,0.04);
backdrop-filter:blur(6px);
position:relative;
transition:0.3s;
}

.box:hover{
transform:translateY(-4px);
box-shadow:0 10px 30px rgba(0,0,0,0.4);
}

.wide{
padding:18px 60px;
}

.decision{
padding:20px 70px;
font-size:1.1rem;
}

/* вертикальные линии */

.inputs .box::after,
.models .box::after{
content:"";
position:absolute;
width:2px;
height:60px;
background:linear-gradient(#00eaff,#00ffa6);
left:50%;
top:100%;
transform:translateX(-50%);
animation:flow 2s linear infinite;
}

/* соединение в центр */

.models .box:nth-child(1)::before,
.models .box:nth-child(3)::before{
content:"";
position:absolute;
width:140px;
height:2px;
background:linear-gradient(#00eaff,#00ffa6);
top:50%;
}

.models .box:nth-child(1)::before{
right:-140px;
}

.models .box:nth-child(3)::before{
left:-140px;
}

@keyframes flow{
from{opacity:.3}
to{opacity:1}
}

/* адаптация */

@media (max-width:800px){

.row{
grid-template-columns:1fr;
gap:40px;
}

.models .box::before{
display:none;
}

}

.foto_prog {
    text-align: center;
}
.foto_prog img{
    box-shadow: 0px 1px 2px 0px rgba(0,255,255,0.7),
            1px 2px 4px 0px rgba(0,255,255,0.7),
            2px 4px 8px 0px rgba(0,255,255,0.7),
            2px 4px 16px 0px rgba(0,255,255,0.7);
}
.foto_prog h2{
    color: white;
}

.finish {
background: linear-gradient(180deg,#00151c,#002a38);
}

.project_footer{

margin-top:120px;
padding:60px 20px;

background:linear-gradient(180deg,#001018,#002533);

color:white;

border-top:2px solid #00C2FF;

}

/* контейнер */

.footer_container{

max-width:1200px;
margin:auto;

display:flex;
justify-content:space-between;
gap:60px;

flex-wrap:wrap;

}

/* левая часть */

.footer_left{
flex:1 1 400px;
}

.footer_left h2{
color:#00C2FF;
font-size:2rem;
margin-bottom:15px;
}

.footer_left p{
line-height:1.6;
margin-bottom:12px;
color:#d8f7ff;
}

.author{
font-weight:500;
}

.year{
margin-top:20px;
font-size:0.9rem;
opacity:0.7;
}

/* правая часть */

.footer_right{
flex:1 1 300px;
}

.footer_right h3{
margin-top:15px;
margin-bottom:10px;
color:#00C2FF;
}

/* ссылки */

.footer_right ul{
list-style:none;
padding:0;
margin:0 0 20px 0;
}

.footer_right li{
margin-bottom:8px;
}

.footer_right a{

text-decoration:none;
color:white;

transition:0.3s;

}

.footer_right a:hover{

color:#00C2FF;
padding-left:6px;

}

/* технологии */

.tech{
opacity:0.85;
}

/* адаптация */

@media (max-width:800px){

.footer_container{

flex-direction:column;
gap:40px;

}

.footer_left,
.footer_right{
text-align:center;
}

.footer_right a:hover{
padding-left:0;
}

}
.APE {
    margin-left:10%;
    margin-right: 10%;
}
.APE h2{
    color: white;
}
.txt_prob{
    margin-right: 5%;
}