html, body{
padding:0;
margin:0;
height:100%;
font:17px/24px "Manrope", sans-serif;
color:#222;
/*min-width:385px;*/
}
/*body{
    background:url('../img/pat.svg') repeat top left / auto auto;
}*/
:root {
--main-color: #FF5D3D;
}
p{
margin:0;
padding:0;
}
h1{
font:42px/52px "Manrope", sans-serif;
/*margin-top:200px;
margin-left:20px;*/
}
h2{
font:normal /*48px/56px "Cormorant Garamond", serif*/ 30px/36px "Manrope", sans-serif;
font-weight: 500;
margin-top:60px;
margin-left:20px;
margin-bottom:32px;
}
h3{
font:bold 22px/30px "Manrope", sans-serif;
margin-top:0px;
}
h4{
font:bold 20px/30px "Manrope", sans-serif;
margin-top:0px;
}
a{
text-decoration:none;
}
.wrapper{
    width:100%;
    max-width:1128px;
    margin:0 auto;
}
#mob_menu{
    display:none;
    height:20px;
}
.mob_menu_closed{
    background-image:url('../img/menu.svg');
    width:20px;
}
.mob_menu_opened{
    background-image:url('../img/close.svg');
    background-repeat:no-repeat;
    background-position-x:right;
}
.very_first_name{
    font-size:48px;
}
#mainmenu{
max-width:600px;
position:fixed;
top:0;
right:60px;
font:normal 15px/24px "Manrope", sans-serif;
text-align:right;
display:flex;
background-color:#ffffff;
}
#mainmenu a{
text-decoration:none;
color:#666;
}
#mainmenu a:hover{
color:var(--main-color);
}
#mainmenu ul{
	margin-top:10px;
	margin-right:25px;
	padding-left: 0;
	list-style:none;
}
#mainmenu ul li{
display:inline;
padding-left:25px;
}
.subhead{
font:normal 30px/44px "Manrope", sans-serif;
margin-top:20px;
/*margin-left:20px;*/
max-width:815px;
}
.fsil{
    font-size:24px;
    line-height:30px;
}
.sect{
display:flex;
max-width:100%;
}
.leftblock{
width:20%;
font: 60px "Cormorant Garamond", serif;
text-align:right;
}
.case-leftblock{
width:15%;
font: 18px/25px "Cormorant Garamond", serif;
text-align:right;
background-color:#f5f5f5;
color:#666;
position:fixed;
left:0;
top:0;
height:100%;
}
.case-rightblock{
max-width:674px;
margin:0 auto;
}
#personal .leftblock{
background-color:var(--main-color);
color:#fff;
}
#personal .rightblock{
    width: 100%;
    margin: 48px auto 0;
    padding: 0 24px;
}
.personal_wrapper{
    display: flex;
    width:100%;
max-width: 1128px;
padding: 72px 0 0;
align-items: flex-end;
gap: 24px;
}
.pers_maininfo{
    display: flex;
    width:65%;
max-width: 744px;
flex-direction: column;
align-items: flex-start;
gap: 32px;
flex-shrink: 0;
}
.main_role{
    display: flex;
flex-direction: column;
align-items: flex-start;
gap: 8px;
}
.current_work_main{
font-size: 24px;
line-height: 32px; 
}
.current_pract_main{
font-size: 20px;
line-height: 28px;
}
.current_work_main a, .current_pract_main a{
    color:#FF5D3D;
}

.iwrite{
display: flex;
flex-direction: column;
justify-content: center;
align-items: flex-start;
gap: 24px;
flex: 1 0 0;
}
.tg_card{
    display: flex;
padding: 12px;
align-items: center;
gap: 16px;
align-self: stretch;
border-radius: 8px;
background: #F4F1F1;
}
.tg_card img{
    width: 60px;
height: 60px;
aspect-ratio: 1/1;
}
.tg_info{
    display: flex;
flex-direction: column;
align-items: flex-start;
gap: 4px;
}
.tg_name a{
font-size: 18px;
line-height: 24px; 
color:#222;
}
.tg_descr{
color: #666;
font-size: 16px;
line-height: 24px;
}
.more_write{
    display: flex;
flex-direction: column;
align-items: flex-start;
gap: 4px;
}
.more_write a{
color: #222 !important;
font-size: 18px;
line-height: 24px;
text-decoration-line: underline;
text-decoration-style: dotted;
text-decoration-skip-ink: none;
text-decoration-thickness: 7.5%; 
text-underline-offset: 25%;
text-underline-position: from-font;
}
.more_write a:hover{
    background-color:#fff !important;
    color:#FF5D3D!important;
padding:0px !important;
}

#cases .leftblock{
background-color:#f5f5f5;
color:#222;
}
#contacts .leftblock{
background-color:#f5f5f5;
color:#222;
}
#personal .leftblock .leftnumber{
margin:200px 20px 0 0;
}
#cases .leftblock .leftnumber, #about .leftblock .leftnumber, #contacts .leftblock .leftnumber {
margin:65px 20px 0 0;
}
.case-info{
    margin:32px 0 0 0;
}
#contacts .rightblock{
/*background-color:var(--main-color);*/
width:100%;
color:#222;
}
#cases .rightblock{
    width:80%;
}
#personal a, .case-info a{
color:var(--main-color);
}
.case_h3:hover{
    text-decoration:underline;
}
#personal a:hover, .case-info a:hover, .lead_p a:hover{
color:#ffffff;
background-color:var(--main-color);
padding:3px;
border-radius:5px;
}
.activity{
font-size:24px;
line-height:32px;
width:100%;
max-width:815px;
/*margin-left:20px;*/
margin-top:20px;
}
.write{
width:100%;
max-width:815px;
/*margin-left:20px;*/
margin-top:20px;
margin-bottom:20px;
}
.rtcases{
    width:100% !important;
}
.cases_wrapper{
    display: flex;
  width: 100%;
  box-sizing: border-box;
  align-items: flex-start;
  align-content: flex-start;
  gap: 24px;
  flex-wrap: wrap;
  padding-left:24px;
}
.case_subheader{font-weight:bold;}
.onecase {
  display: flex;
  width:48%;
  max-width: 552px;
  border-radius: 16px;
  border: 0.4px solid #d4d4d4;
  align-items: flex-start;
  gap:0px;
  overflow:hidden;
  background-color:#fff;
flex-direction: column;
}
.onecase_h_txt{
display: flex;
flex-direction: column;
align-items: flex-start;
gap: 12px;
align-self: stretch;
}
.onecase_h_txt h3{
    margin-bottom:0!important;
}
.caseimg {
    display: flex;
padding: 16px 0;
justify-content: center;
align-items: center;
gap: 0px;
align-self: stretch;
}
.casetxt{
    display: flex;
height: 144px;
padding: 16px;
flex-direction: column;
justify-content: space-between;
align-items: flex-start;
align-self: stretch;
}
.casedescr{
max-width:480px;
font-size:18px;
line-height:25px;
margin-bottom:20px;
}
.onecase a{
color:#222222;
}
.onecase a img{
    width: 320px;
}
.aboutsimpletext{
/*max-width:750px;
margin-left:20px;*/
margin-bottom:20px;
}
.aboutsimpletext, .aboutinterests{
    max-width: 680px;
    margin: 0 auto;
}
.aboutsimpletext p{
margin-bottom:20px;
}
.aboutsimpletext ul li + li {
    margin-top: 16px;
} 
.aboutcv{
margin: 0 0 20px 20px;
}
.aboutinterests{
display:flex;
}
.abouttags{
margin-left:16px;
max-width:545px;
}
.tag{
padding-right: 24px;
    padding-bottom: 8px;
    display: inline-block;
    color: #666;
    font-size: 16px;
}
#articles .rightblock{
    width: 100%;
    margin: 48px auto;
    padding: 0 24px;
}
.articles{
    display: flex;
    width:100%;
max-width: 1128px;
align-items: flex-start;
gap: 32px;
}
.first_article{
    display: flex;
align-items: flex-start;
gap: 16px;
flex: 1 0 0;
}
.all_articles{
    display: flex;
flex-direction: column;
align-items: flex-start;
flex: 1 0 0;
}
.first_txt{
    display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
gap: 16px;
flex: 1 0 0;
}
.first_title{
    align-self: stretch;
font-family: Manrope;
font-size: 18px;
font-style: normal;
font-weight: 400;
line-height: 24px;
}
.first_source{
    color: #666;
font-family: Manrope;
font-size: 15px;
font-style: normal;
font-weight: 400;
line-height: 20px; 
}
.first_title a, .all_articles ul li a{
        color: #222;
        text-decoration:underline;
}
.first_title a:hover, .all_articles ul li a:hover{
    color: #FF5D3D;
}
.all_articles ul{
    list-style:none;
    padding:0;
    margin:0;
}
.all_articles ul li{
font-family: Manrope;
font-size: 18px;
font-style: normal;
font-weight: 400;
line-height: 28px; 
text-decoration-line: underline;
text-decoration-style: solid;
}

.contactimgs, .contactplace, .contactemail{
margin-left:20px;
margin-bottom:30px;
}
.contactimgs{
    display:flex;
    gap:16px;
}
.contactimgs img{
padding-right:30px;
}
.contactplace img, .contactemail img{
padding-right:15px;
}
.contactemail a{
color:#222;
font-size:18px;
vertical-align:top;
}
.case-text{
font-size:20px;
line-height:30px;
max-width:780px;
}
.case-rightblock h1{
margin-top:60px;
}
.case-text p{
margin-bottom:30px;
}
.case-text a{
color:var(--main-color);
}
.case-text img{
    width:100% !important;
    max-width:600px !important;
    height:auto !important;
}
.case_img_link{

}
.case_txt_link:hover{
color:#fff;
background-color:var(--main-color);
padding:3px;
border-radius:5px;
}
#about .rightblock{
    width: 100%;
    box-sizing: border-box;
    padding: 0 24px 0 24px;
}
.tab {
    display: flex;
    flex-wrap: wrap;
  }
  .tab > input[type="radio"] {
    display: none;
  }
  .tab-content {
    display: none;
    width: 100%;
    padding-top:40px;
  }
 #tab-btn-1:checked~#content-1,
  #tab-btn-2:checked~#content-2{
    display: block;
  }  
.tab > label {
    display: block;
    flex: 0 0 50%;
    box-sizing: border-box;
    padding: 16px;
    cursor: pointer;
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out;
    text-decoration: none;
    color: #222;
    border: 0.4px solid #222;
    background: 0 0;
    text-align: center;
    max-width: 531px;
    font-size: 18px;
    line-height: 24px;
    display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  }
#tablbl1{
    border-radius: 16px 0 0 16px;
}
#tablbl2{
    border-radius: 0 16px 16px 0;
}
  .tab > input[type="radio"]:checked + label {
    cursor: default;
    color: #fff;
    background-color: #222222;
  }  
  
.skills{
    font-size:15px;
    color:#666;
}  
.cv-details {
  display: flex;
  flex-direction: column;
  gap: 40px;
  width: 100%;
  max-width: 744px;
  margin: 0 auto; /* центрирование */
  padding: 0 16px; /* отступы по краям для мобильных */
  box-sizing: border-box;
}

.cv-details-item {
  display: flex;
  flex-direction: row;
  gap: 24px;
  flex-wrap: wrap;
}
.cv-edu-item{
    margin-bottom:16px;
    margin-top:8px;
}
.cv-edu{
    display:flex;
    gap:24px;
    flex-direction: column;
}
.cv-date {
  flex: 0 0 30%;
  max-width: 264px;
  color: #666;
  font-size: 18px;
  font-weight: 400;
  line-height: 24px;
}

.cv-place {
  flex: 1 1 0;
  display: flex;
  flex-direction: column;
  gap: 20px;
  min-width: 0; /* предотвращает переполнение */
}

.cv-compname {
  font-size: 22px;
  font-weight: 700;
  line-height: 24px;
}
.cv-edu-h{
    font-size: 22px;
  font-weight: 700;
  line-height: 24px;
  margin-bottom:16px;
}
.cv-roles,
.cv-roles-item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
  width: 100%;
}
.cv-roles-item ul{
    margin-top:0 !important;
    font-size:16px;
    line-height:24px;
}
.cv-role {
  font-size: 18px;
  font-weight: 700;
  line-height: 24px;
}

.cv-role > span {
  font-weight: 400;
}

.cv-duties {
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
}
.lead_h{
    margin:24px 0 16px !important;
}
.lead_h_small{
    margin-bottom:8px;
    font-size:18px;
}
.lead_p{
    margin-bottom:8px !important;
}
.lead_ul{
    margin:0 0 16px 0;
    font-size:16px;
    line-height:24px;
}
.lead_div{
    font-size:18px !important;
    margin-bottom:16px;
}
.lead_media{
  display: flex;
  max-width: 674px;
  align-items: flex-start;
  border-radius: 8px;
  background: #F4F1F1;
}
.lead_media_item{
display: flex;
padding: 16px;
flex-direction: column;
justify-content: center;
align-items: flex-start;
gap: 16px;
flex: 1 0 0;
align-self: stretch;
}
.lead_media_item img{
  width: 60px;
  height: 60px;
  aspect-ratio: 1/1;
}
.lead_tg_img{
    width:60px;
}
.lead_article_ul{
    list-style:none;
    padding:0;
    margin:0;
    font-size: 16px;
    line-height: 24px;
}
h5{
  font-size: 18px;
  font-weight: 700;
  line-height: 28px;
}
.lead_sources{
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
}
.lead_sources ul{
list-style:none;
}
.lead_cases{
  display: flex;
  padding: 8px 16px;
  justify-content: center;
  align-items: center;
  gap: 10px;
  border-radius: 4px;
  background: #FF5D3D;
  text-decoration:none;
  color:#fff;
}
@media (max-width: 768px) {
  .cv-details-item {
    flex-direction: column;
    gap: 12px;
  }

  .cv-date {
    max-width: 100%;
    width: 100%;
  }

  .cv-place {
    width: 100%;
  }
}

.foliolinks{
display: flex;
flex-direction: row;
align-items: center;
padding: 0px;
width: 170px;
height: 30px;
margin-top: 8px;
}
.foliolinks a{
display: flex;
}
.lang_switch{
    margin-top:10px;
    margin-left:10px;
    font-style:italic;
}
.lang_switch a{
    color:#fff;
    background-color:#333;
}
#foliobe{
display: flex;
flex-direction: column;
align-items: flex-start;
padding: 5px 10px;
gap: 10px;
width: 45px;
/*height: 30px;*/
background: var(--main-color);
}
#folio{
box-sizing: border-box;
display: flex;
flex-direction: row;
align-items: flex-start;
padding: 5px 25px;
/*gap: 10px;*/
width: 125px;
height: 30px;
border: 1px solid var(--main-color);
color: var(--main-color) !important;
}
#folio:hover{
color:#ffffff !important;
background-color:var(--main-color);
}
.contactimgs a, .aboutcv a{
position:relative;
}
.aboutcv a:hover{
bottom:3px;
}
.contactimgs a{
    color:#222 !important;
}
.contactimgs a:hover{
    color:#FF5D3D !important;
    padding:0 !important;
}
.contactemail a:hover{
color:var(--main-color);
background-color:#fff;
padding:3px;
border-radius:5px;
}
.img-descr{
font-size:10px;
color:#999;
text-align:center;
}
.cv_icons>svg>path{
    fill: var(--main-color);
}
@media (max-width: 960px) {
    #mob_menu{display:inline;}
    #mainmenu ul {
  margin-bottom: 0;
  margin-right:0;
  display:none;}
}
@media (max-width: 650px) {
    .onecase {width:100%;}
    .casetxt {height: auto;}
}
@media (max-width:620px){
    .articles{
        flex-direction: column;
    }
    .personal_wrapper{
        flex-direction: column;
    }
    .pers_maininfo{
        width:100%;
    }
    .tg_card, .iwrite{
        width:100%;
    }
    .casetxt{width:100%;
    padding-left:16px;
        height: auto;
    }
    .onecase a img {
        width:100%;
        height:inherit;
    }
    .caseimg{
        width:100%;
        max-height:100%;
        max-width:100%;
    }
    .onecase {
        width:100%;
        flex-direction: column;
    }

#mainmenu ul li{
display:block;
}
#mainmenu {
  background-color: #f5f5f5;
  flex-direction: column-reverse;
  padding: 15px;
}
.foliolinks {
  margin-top: 15px;
  display:none;
}
.lang_switch{display:none;}
.abouttags{margin-left:0;}
.aboutinterests{flex-direction: column;}
.leftblock{display:none;}
h1{margin-top:15px;}
}
.footer_icons{
    fill:#222;
}