/*
Theme Name: LCARE Institute Theme
Author: ЦИМ Екатерины Шукаловой
Version: 1.0
Description: Кастомная тема для сайта проекта LCARE Institute.
*/

/*
Theme Name: LCARE Institute Theme
Theme URI: https://shukalov.ru
Description: Кастомная тема для института LCARE на основе брендбука 2026. Полная изоляция стилей главной и внутренних страниц.
Author: ЦИМ Екатерины Шукаловой
Version: 1.0
*/

/* ==========================================================================
   1. ГЛОБАЛЬНЫЕ ПЕРЕМЕННЫЕ И ОБЩИЕ СТИЛИ (ДЛЯ ВСЕХ СТРАНИЦ)
   ========================================================================== */
:root {
    --aqua-teal: #36AAB8;
    --living-turquoise: #51B9B7;
    --regen-green: #65C08A;
    --pale-mist: #E2F2F2;
    --deep-teal: #0F6F78;
    --forest-mint: #1F9C7B;
    --charcoal-teal: #183A3D;
    --living-white: #F5FAF8;
    --white: #ffffff;
}

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

html { 
    scroll-behavior: smooth; 
}

body {
    font-family: 'Source Sans 3', sans-serif;
    color: var(--charcoal-teal);
    background: var(--white);
    font-size: 17px;
    line-height: 1.6;
    overflow-x: hidden;
}

/* Фиксация размеров логотипа LCARE */
.nav-logo img,
.footer-about img,
a img[alt="LCARE Institute"] {
    width: 240px !important;
    height: auto !important;
    max-width: 100% !important;
    display: inline-block;
}

/* Разделители */
.gradient-rule {
    height: 3px;
    background: linear-gradient(90deg, var(--aqua-teal), var(--living-turquoise), var(--regen-green));
    border: none; 
    margin: 0;
}

.teal-rule {
    height: 1.5px;
    background: linear-gradient(90deg, var(--aqua-teal), transparent);
    border: none; 
    margin: 44px 0;
}

section { 
    padding: 100px 0; 
}

.container { 
    max-width: 1240px; 
    margin: 0 auto; 
    padding: 0 52px; 
}

/* Анимации */
@keyframes fadeUp {
    from { opacity: 0; transform: translateY(22px); }
    to   { opacity: 1; transform: translateY(0); }
}
@keyframes spin  { to { transform: rotate(360deg); } }
@keyframes spinr { to { transform: rotate(-360deg); } }


/* ==========================================================================
   2. СКВОЗНЫЕ ЭЛЕМЕНТЫ (NAV, FOOTER)
   ========================================================================== */
nav {
    position: fixed; top: 0; left: 0; right: 0; z-index: 100;
    background: rgba(255,255,255,0.97);
    backdrop-filter: blur(10px);
    border-bottom: 1px solid rgba(54,170,184,0.12);
    display: flex; align-items: center; justify-content: space-between;
    padding: 0 52px;
    height: 76px;
}

.gradient-top-line {
    position: absolute; top: 0; left: 0; right: 0; height: 3px;
    background: linear-gradient(90deg, var(--aqua-teal), var(--living-turquoise), var(--regen-green));
}

.nav-logo { display: flex; align-items: center; gap: 14px; text-decoration: none; }
.nav-wordmark { display: flex; flex-direction: column; line-height: 1; }
.nav-wordmark-main { font-family: 'Montserrat', sans-serif; font-weight: 800; font-size: 24px; color: var(--aqua-teal); letter-spacing:-0.01em; }
.nav-wordmark-sub { font-family: 'Montserrat', sans-serif; font-weight: 300; font-size: 8.5px; letter-spacing: 0.28em; color: var(--charcoal-teal); text-transform: uppercase; margin-top: 3px; }
.nav-links { display: flex; gap: 30px; list-style: none; align-items: center; }
.nav-links a { font-family: 'Montserrat', sans-serif; font-weight: 600; font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--charcoal-teal); text-decoration: none; transition: color 0.2s; }
.nav-links a:hover { color: var(--aqua-teal); }
.nav-cta { background: var(--forest-mint)!important; color: var(--white)!important; padding: 10px 20px; border-radius: 3px; text-decoration: none; }
.nav-cta:hover { background: var(--deep-teal)!important; color: var(--white)!important; }

footer {
    background: var(--charcoal-teal);
    border-top: 1px solid rgba(54,170,184,0.18);
    padding: 72px 0 0;
}

.footer-inner {
    max-width: 1240px; margin: 0 auto; padding: 0 52px;
    display: grid; grid-template-columns: 2fr 1fr 1fr 1fr 1fr; gap: 56px;
    padding-bottom: 56px;
}

.footer-about p { font-size: 13.5px; line-height: 1.78; color: rgba(255,255,255,0.48); margin-top: 18px; }
.footer-col h4 { font-family: 'Montserrat', sans-serif; font-weight: 600; font-size: 10px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--aqua-teal); margin-bottom: 20px; padding-bottom: 10px; border-bottom: 1px solid rgba(54,170,184,0.2); }
.footer-col ul { list-style: none; }
.footer-col li { margin-bottom: 12px; }
.footer-col a { font-size: 13.5px; color: rgba(255,255,255,0.48); text-decoration: none; transition: color 0.2s; }
.footer-col a:hover { color: var(--aqua-teal); }
.footer-bottom { max-width: 1240px; margin: 0 auto; padding: 22px 52px; border-top: 1px solid rgba(255,255,255,0.07); display: flex; justify-content: space-between; align-items: center; }
.footer-motto { font-family: 'Merriweather', serif; font-style: italic; font-size: 13.5px; color: rgba(255,255,255,0.35); }
.footer-legal { font-size: 11.5px; color: rgba(255,255,255,0.28); }

