@font-face {
    font-family: rw;
    src: url(Geologica-Bold.ttf) format('truetype');
    font-weight: 400;
    font-display: fallback;
    font-style: normal
}

* {
  
    box-sizing: border-box;
}


 @font-face {
    font-family: fonttext;
    src: url(text.ttf) format('truetype');
    font-weight: 400;
    font-display: fallback;
    font-style: normal
}

  @font-face {
    font-family: fontopis;
    src: url(opis.ttf) format('truetype');
    font-weight: 400;
    font-display: fallback;
    font-style: normal
}

main {
            padding-right: 20%;
            padding-left: 20%;
            background: white;
            box-shadow: 0 5px 25px rgb(0 0 0 / 21%);
        }


   body {
            font-family: 'fonttext', Tahoma, Geneva, Verdana, sans-serif;
            margin: 0;
			display: contents;
            padding: 0;
            color: #333;
        }

    
        nav {
            background: linear-gradient(135deg, #81e1ff, #50afff);
        }

       nav a {
    color: #fff;
    text-decoration: none;
    bottom: 20px;
    padding: 0.5rem;
    transition: color 0.3s ease;
    position: relative;
	line-height: 40px;
    font-size: 20px;
}

        nav a:hover {
            color: #b1ddff;
        }


        @keyframes slideIn {
            from { transform: scaleX(0); }
            to { transform: scaleX(1); }
        }


        
        h1 {
            font-size: 4.5rem;
            color: #2c3e50;
            margin-bottom: 4rem;
            position: relative;
            display: inline-block;
            width: 100%;
            text-align: center;
            font-family: rw;
            top: 30px;
        }

.logolight {
    background: linear-gradient(120deg, #309b96 0%, #2e7175 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    padding: 0 0.5rem;
    font-family: 'rw';
}

        .highlight {
    background: linear-gradient(120deg, #61c6f0 0%, #4a8fd1 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    padding: 0 0.5rem;
}
   
        .image-placeholder {
            border-radius: 20px;
            overflow: hidden;
            transition: transform 0.9s ease;
        }

    .image-placeholder:hover {
            transform: translateY(-5px);
			    
 }

 .image-placeholder img{
            width: 100%;
        }
     
.content_img {
    padding: 2rem;
    background: #ebf5ff;
    border-radius: 10px;
    margin-bottom: 40px;
    position: relative;
}

.content_img::after {
    content: '';
    position: absolute;
    bottom: 0; 
    left: 0;
    width: 100%;
    height: 4px; 
    background: linear-gradient(135deg, #81e1ff, #50afff); 
    border-radius: 0 0 10px 10px; 
}   
        footer {
            text-align: center;
            padding: 2rem;
            color: #666;
            font-size: 1.5rem;
        }
     
.logo img {
    width: 65px;
    padding-top: 5px;
    padding-bottom: 5px;
    top: 22px;
    position: relative;
}
  .logo {font-size: 23px;margin-left: 1%;}  
  

        @keyframes pulse {
            0% { transform: scale(1); }
            50% { transform: scale(1.05); }
            100% { transform: scale(1); }
        }


        .decorative-circle {
            position: fixed;
            width: 300px;
            height: 300px;
            border-radius: 50%;
            background: linear-gradient(45deg, rgba(33, 150, 243, 0.1), rgb(33 150 243 / 53%));
            z-index: -1;
            animation: float 10s infinite ease-in-out;
        }

        @keyframes float {
            0% { transform: translate(0, 0) rotate(0deg); }
            50% { transform: translate(20px, 20px) rotate(180deg); }
            100% { transform: translate(0, 0) rotate(360deg); }
        }
		
.depi {
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
        line-height: 1.5em;
        transition: max-height 0.3s ease-in-out;
        font-size: 20px;
        font-family: 'fontopis';
    }
    .opis {
        display: none;
    }
	
    .opis:checked + .otkr + .depi {
        -webkit-line-clamp: unset;
        max-height: none;
    }
    .otkr {
        display: inline-block;
        position: absolute;
        font-size: 21px;
        right: 5%;
        cursor: pointer;
        font-weight: bold;
        user-select: none;
        color: #18a29b;
    }
    .zhmi:after {
        content: "➕️ Читать описание";
    }
    .opis:checked ~ .zhmi:after {
        content: "➖️ Свернуть описание";
    }  
	
.save {
    font-size: 22px;
    appearance: auto;
    cursor: pointer;
    background: linear-gradient(80deg, #61cd8e, #5acb6a);
    font-weight: bold;
    font-family: 'rw';
    border: none;
    color: white;
    padding: 10px 20px;
    border-radius: 8px;
    transition: transform 0.2s, box-shadow 0.2s;
    text-decoration: none;
}

.save:hover {
    transform: scale(1.05);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

.save:active {
    transform: scale(0.98);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.content_txt {
	font-size: 22px;
	line-height: 1.5em;
	padding: 1.6rem;
	background: #eff7ff;
	border-radius: 10px;
	margin-bottom: 40px;
	position: relative;
	padding-left: 7%;
	padding-right: 7%;
	}
	
	
	.copytext {font-size: 22px;appearance: auto;cursor: pointer;background: linear-gradient(120deg, #61c6f0 0%, #4a8fd1 100%);font-weight: bold;font-family: 'rw';border: none;color: white;padding: 10px 20px;border-radius: 8px;transition: transform 0.2s, box-shadow 0.2s;text-decoration: none;}
	
	
	.copytext:hover {
    transform: scale(1.05);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

.copytext:active {
    transform: scale(0.98);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}


.one_text {
  font-size: 21px;
  line-height: 1.45em;
  margin-bottom: 40px;
  position: relative;
  padding-left: 3%;
  padding-right: 3%;
}


.scroll-to-top {
  position: fixed;
  bottom: 20px;
  right: 20px;
  width: 50px;
  height: 50px;
  background-color: #f4e8e8; 
  color: #6d6d6d; 
  border: none;
  border-radius: 10px; 
  font-size: 24px;
  font-weight: bold;
  cursor: pointer;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); 
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all 0.3s ease;
  opacity: 0; 
  visibility: hidden;
}

.scroll-to-top.show {
  opacity: 1; 
  visibility: visible; 
}

.scroll-to-top:hover {
  background-color: #e2dede; 
  color: #4a4a4a;
  box-shadow: 0 6px 8px rgba(0, 0, 0, 0.2);
  transform: scale(1.1); 
}

.scroll-to-top:active {
  background-color: #d0c8c8; 
  transform: scale(0.95); 
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}


.bread_crumbs {
    color: #8e8585;
    font-size: 18px;
    background: #edeeec;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left: 2%;
    border-radius: 20px;
}
.bread_crumbs a {
color: #8e8585;
}

.navig_one {
    color: #a7a7a7;
    display: flex;
    justify-content: center;
    font-size: 20px;
    margin-top: 10px;
}

.navig_one a {
    font-size: 20px;
    margin-top: 10px;
    background: linear-gradient(80deg, #61cd8e, #5acb6a);
    color: #ffffff;
    text-decoration: none;
    padding-left: 10px;
    padding-right: 10px;
    padding-top: 15px;
    border-radius: 10px;
}

.navig_one a:hover {
    transform: scale(1.05);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

.navig_one p {
    padding-left: 30px;
    padding-right: 30px;
}


        .button-block {
            display: flex;
            flex-wrap: wrap;
            gap: 10px;
            max-width: 100%;
            box-sizing: border-box;
			justify-content: center;
        }

        .button-block a {
            display: inline-block;
            padding: 10px 15px;
            text-decoration: none;
            color: #fff;
            background-color: #87CEEB; 
            border-radius: 5px;
            transition: background-color 0.3s ease;
            font-size: 16px;
            text-align: center;
            box-sizing: border-box;
        }

        .button-block a:hover {
            background-color: #90EE90; 
        }

        .button-block a:focus {
            outline: 2px solid #90EE90;
        }

.hili {
display: block;
}


@media (max-width: 768px) { 
.logo {
    font-size: 28px;
    width: 100%;
    display: inline-block;
    text-align: center;
    margin-left: 0;
	text-decoration: none;
}	
	
nav a {
    color: #ffffff;
    padding-top: 0.0rem;
    padding-right: 0.5rem;
    padding-bottom: 2.0rem;
    margin-left: 2%;
    position: static;
    font-size: 28px;
    text-decoration: underline;
}	
	
	nav {position: relative;padding-bottom: 30px;}
 
h1 {
font-size: 1.7rem;
margin-bottom: 50px;
}

.hili {
        font-size: 23px !important;
        padding-left: 0 !important;
        margin: 2%;
    }
   	

main {
    padding-right: 2%;
    padding-left: 2%;
}	

.save {
        font-size: 20px;
        appearance: auto;
        cursor: pointer;
        background: linear-gradient(80deg, #61cd8e, #5acb6a);
        font-weight: bold;
        font-family: 'rw';
        border: none;
        color: white;
        padding: 10px 20px;
        border-radius: 8px;
        transition: transform 0.2s, box-shadow 0.2s;
        text-decoration: none;
        margin-top: -10px;
    }

footer {
            font-size: 1.0rem;
        }
	
.otkr {
    font-size: 14px;
}	
	
.depi {
    font-size: 18px;
}	
	
.content_img {
    padding: 1rem;
}	
.copytext {
    font-size: 18px;
}
.content_txt {
    font-size: 19px;
    line-height: 1.5em;
    padding: 1.4rem;
}

.content_img {
    margin-bottom: 30px;
}

@media (min-width: 840px) and (max-width: 1024px)  {	

nav a {
        font-size: 16px;
        padding: 0.2rem;
		bottom: 15px;
    }
	
.logo {
    font-size: 18px;
    margin-left: 0%;
	bottom: 15px;
}

.logo img {
    width: 45px;
    position: relative;
	top: 15px;
}
	
	 }