/* ===== ОСНОВНЫЕ ПЕРЕМЕННЫЕ ===== */

:root{
--color-primary:#8B0000;
--color-primary-dark:#6B0000;
--color-primary-light:#a52a2a;
--color-success:#28a745;
--color-success-dark:#1e7e34;
--color-white:#ffffff;
--color-black:#1a1a1a;
--color-gray-light:#f5f5f5;
--color-gray:#e0e0e0;
--color-gray-dark:#666666;
--color-text:#333333;
--color-text-muted:#666666;
}


/* ===== БАЗОВЫЕ СТИЛИ ===== */

*{
margin:0;
padding:0;
box-sizing:border-box;
}

html{
scroll-behavior:smooth;
}

body{
font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif;
background-color:var(--color-white);
color:var(--color-text);
line-height:1.6;
min-height:100vh;
}


/* ===== HEADER ===== */

.header{
background:linear-gradient(135deg,var(--color-primary)0%,var(--color-primary-dark)100%);
padding:0;
position:sticky;
top:0;
z-index:1000;
box-shadow:0 2px 10px rgba(0,0,0,0.3);
}

.header-container{
max-width:1400px;
margin:0 auto;
padding:12px 20px;
display:flex;
align-items:center;
justify-content:space-between;
gap:20px;
}

.logo{
font-size:28px;
font-weight:800;
color:var(--color-white);
text-decoration:none;
}

.logo span{
color:#ffd700;
}


/* ===== DESKTOP NAV ===== */

.nav-menu{
display:flex;
align-items:center;
gap:8px;
}

.nav-link{
color:var(--color-white);
text-decoration:none;
padding:8px 16px;
font-size:14px;
font-weight:500;
border-radius:4px;
transition:all .2s ease;
opacity:.9;
}

.nav-link:hover{
opacity:1;
background:rgba(255,255,255,.15);
}

.nav-link.active{
background:rgba(255,255,255,.2);
}


/* ===== HEADER BUTTONS ===== */

.header-buttons{
display:flex;
gap:12px;
}

.btn-login{
background:var(--color-white);
color:var(--color-primary);
border:2px solid var(--color-white);
padding:12px 28px;
font-size:15px;
font-weight:700;
border-radius:8px;
text-decoration:none;
}

.btn-register{
background:var(--color-success);
color:var(--color-white);
border:2px solid var(--color-success);
padding:12px 28px;
font-size:15px;
font-weight:700;
border-radius:8px;
text-decoration:none;
}


/* ===== MOBILE MENU BUTTON ===== */

.mobile-menu-btn{
display:none;
background:transparent;
border:none;
color:var(--color-white);
font-size:28px;
cursor:pointer;
}


/* ===== MOBILE BREAKPOINT ===== */

@media(max-width:1024px){

.nav-menu{
display:none;
}

.mobile-menu-btn{
display:block;
}

.header-buttons{
display:none;
}

}


/* ===== MOBILE NAV ===== */

.mobile-nav{
display:none;
background:var(--color-primary-dark);
padding:15px 20px;
}

.mobile-nav.open{
display:block;
}

.mobile-nav a{
display:block;
color:var(--color-white);
text-decoration:none;
padding:12px 0;
}


/* ===== MOBILE BUTTONS ===== */

.mobile-buttons{
display:flex;
gap:10px;
margin-top:15px;
}

.mobile-buttons a{
flex:1;
text-align:center;
padding:12px;
border-radius:6px;
font-weight:600;
text-decoration:none;
}


/* ===== FIX LOGIN COLOR ===== */

.mobile-buttons .btn-login{
background:var(--color-white);
color:var(--color-primary);
border:2px solid var(--color-white);
}


/* ===== CONTENT ===== */

.section{
width:100%;
background:var(--color-gray-light);
padding:30px 20px;
}

.section:nth-child(even){
background:var(--color-white);
}

.section-container{
max-width:1200px;
margin:0 auto;
}


/* ===== TYPOGRAPHY ===== */

h1{
font-size:32px;
margin-bottom:25px;
}

h2{
font-size:26px;
margin-bottom:20px;
}

h3{
font-size:20px;
margin-bottom:15px;
}

p{
margin-bottom:15px;
}


/* ===== IMAGES (ИСПРАВЛЕНИЕ) ===== */

.img-box{
width:100%;
text-align:center;
margin:30px 0;
}

.img-box img{
width:100%;
max-width:820px;
height:auto;
display:block;
margin:0 auto;
border-radius:10px;
box-shadow:0 4px 15px rgba(0,0,0,0.15);
}


/* ===== BUTTON CENTER ===== */

.btn-center{
text-align:center;
margin:25px 0 10px;
}


/* ===== TABLE ===== */

.table-wrapper{
width:100%;
overflow-x:auto;
margin:20px 0;
}

table{
width:100%;
border-collapse:collapse;
background:var(--color-white);
}

th{
background:var(--color-primary);
color:var(--color-white);
padding:14px;
text-align:left;
}

td{
padding:14px;
border-bottom:1px solid var(--color-gray);
}


/* ===== CTA ===== */

.btn-cta{
display:inline-block;
background:var(--color-success);
color:var(--color-white);
padding:14px 40px;
border-radius:8px;
text-decoration:none;
font-weight:700;
transition:.2s;
}

.btn-cta:hover{
background:var(--color-success-dark);
}


/* ===== FAQ ===== */

.faq-item{
background:var(--color-white);
border:1px solid var(--color-gray);
border-radius:8px;
margin-bottom:12px;
overflow:hidden;
}

.faq-question{
width:100%;
padding:18px;
cursor:pointer;
background:none;
border:none;
font-size:16px;
text-align:left;
}

.faq-answer{
max-height:0;
overflow:hidden;
transition:max-height .3s ease;
padding:0 18px;
}

.faq-item.active .faq-answer{
max-height:500px;
padding-bottom:18px;
}


/* ===== TOC ===== */

.toc{
background:var(--color-white);
border:1px solid var(--color-gray);
border-radius:8px;
max-height:0;
overflow:hidden;
transition:.3s;
}

.toc.open{
max-height:1000px;
padding:20px;
}

.toc ul{
list-style:none;
}

.toc li{
margin-bottom:10px;
}

.toc a{
text-decoration:none;
color:var(--color-primary);
}


/* ===== BACK TO TOP ===== */

.back-to-top{
position:fixed;
bottom:30px;
right:30px;
width:50px;
height:50px;
background:var(--color-primary);
color:white;
border:none;
border-radius:50%;
cursor:pointer;
opacity:0;
visibility:hidden;
transition:.3s;
}

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


/* ===== FOOTER ===== */

.footer{
background:var(--color-black);
color:var(--color-white);
padding:30px;
text-align:center;
}


/* ===== MOBILE TYPOGRAPHY ===== */

@media(max-width:768px){

h1{font-size:24px;}
h2{font-size:20px;}
h3{font-size:18px;}

.section{
padding:20px 15px;
}

.img-box img{
max-width:100%;
}

}

@media(max-width:480px){

.logo{
font-size:22px;
}

h1{
font-size:20px;
}

}