
:root{ 
--clr-primary-light:#0d3b66; 
--clr-primary-dark:#7bb6ff; 
--clr-secondary-dark:#a0d8ff; 

--radius:20px; 
--transition:all .45s cubic-bezier(.2,.8,.2,1); 

--clr-primary:#3b82f6; 
--clr-secondary:#9333ea; 
--radius-dark:16px; 
--transition-dark:all .35s ease; 

--shadow:0 20px 60px rgba(0,0,0,0.12); 
--shadow-hover:0 35px 90px rgba(0,0,0,0.35);

/* Liquid Glass переменные */
--glass-bg-light: rgba(255, 255, 255, 0.7);
--glass-bg-dark: rgba(26, 26, 46, 0.7);
--glass-blur: 20px;
--glass-saturate: 180%;
--glass-border-light: rgba(255, 255, 255, 0.3);
--glass-border-dark: rgba(255, 255, 255, 0.15);
--glass-bg-light-hover: rgba(255, 255, 255, 0.9);
--glass-blur-hover: 20px;
--glass-saturate-hover: 200%;

/* По умолчанию светлая тема */
--glass-bg: var(--glass-bg-light);
--glass-border: var(--glass-border-light);
}

/* Темная тема */
html.dark-mode,
body.dark-mode,
html.dark,
body.dark,
[data-theme="dark"],
.theme-dark {
  --glass-bg: var(--glass-bg-dark);
  --glass-border: var(--glass-border-dark);
}
 
#athens-overview-tour{ visibility:hidden; } 
#athens-overview-tour[data-elpiadis-ready="1"]{ visibility:visible; } 
 
@supports (content-visibility: auto){ 
.full_text section{ 
content-visibility:auto; 
contain-intrinsic-size: 900px; 
} 
.full_text section:first-of-type{ 
content-visibility: visible; 
contain-intrinsic-size: auto; 
} 
} 
 
.elp-sr-only{ 
position:absolute !important; 
width:1px !important; 
height:1px !important; 
padding:0 !important; 
margin:-1px !important; 
overflow:hidden !important; 
clip:rect(0,0,0,0) !important; 
white-space:nowrap !important; 
border:0 !important; 
} 
 
/* Плавное переключение темы */
html, body {
  transition: background-color 0.6s cubic-bezier(0.4, 0, 0.2, 1), 
              color 0.6s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

body * {
  transition: background-color 0.5s cubic-bezier(0.4, 0, 0.2, 1),
              color 0.5s cubic-bezier(0.4, 0, 0.2, 1),
              border-color 0.5s cubic-bezier(0.4, 0, 0.2, 1),
              box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

/* Исключения для элементов, которые не должны плавно переключаться */
body *:before,
body *:after,
.elp-contact-scope .floating-button,
.elp-contact-scope .modal-content,
.elp-contact-scope .contact-card {
  transition: background-color 0.5s cubic-bezier(0.4, 0, 0.2, 1),
              color 0.5s cubic-bezier(0.4, 0, 0.2, 1),
              border-color 0.5s cubic-bezier(0.4, 0, 0.2, 1),
              box-shadow 0.5s cubic-bezier(0.4, 0, 0.2, 1),
              transform 0.3s ease,
              opacity 0.3s ease !important;
}

.bio-wrap{ 
max-width:1200px; 
margin:0 auto; 
padding:0; 
} 
 
.full_text{ 
--ink:#161616; 
--muted:rgba(22,22,22,.74); 
--line:rgba(0,0,0,.12); 
--accent:#0d3b66; 
--gold:#c2a06b; 
 
width:100%; 
max-width:1200px; 
margin:0 auto; 
padding:22px 26px 28px; 
 
background:transparent !important; 
border:0 !important; 
border-radius:0 !important; 
box-shadow:none !important; 
 
color:var(--ink) !important; 
line-height:1.78; 
-webkit-font-smoothing:antialiased; 
text-rendering:optimizeLegibility; 
} 
 
@media (max-width:720px){ 
.full_text{ padding:18px 4px 24px; } 
} 
 
.full_text:before, 
.full_text:after{ content:none !important; display:none !important; } 

.content_section .content {
  border-radius: 20px !important;
  overflow: hidden !important;
}

.content_section .content .article {
  border-radius: 20px !important;
  overflow: hidden !important;
}

/* Убрать отступ между последним основным блоком и нижним блоком */
.full_text section:last-of-type {
  margin-bottom: 0 !important;
}

.content span9.pull-right section:first-of-type {
  margin-top: 0 !important;
}

/* Видимость картинок в зависимости от темы */
.hero-img-light {
  display: block !important;
}

.hero-img-dark {
  display: none !important;
}

html.dark-mode .hero-img-light,
body.dark-mode .hero-img-light,
html.dark .hero-img-light,
body.dark .hero-img-light,
[data-theme="dark"] .hero-img-light,
.theme-dark .hero-img-light {
  display: none !important;
}

html.dark-mode .hero-img-dark,
body.dark-mode .hero-img-dark,
html.dark .hero-img-dark,
body.dark .hero-img-dark,
[data-theme="dark"] .hero-img-dark,
.theme-dark .hero-img-dark {
  display: block !important;
}

/* Скругление кнопок навигации наверху */
.nav.main_navigation li a,
.main_navigation li a {
  border-radius: 12px !important;
  overflow: hidden !important;
  background: var(--glass-bg) !important;
  backdrop-filter: blur(var(--glass-blur)) saturate(var(--glass-saturate)) !important;
  -webkit-backdrop-filter: blur(var(--glass-blur)) saturate(var(--glass-saturate)) !important;
  border: 1px solid var(--glass-border) !important;
  transition: all 0.4s cubic-bezier(0.2, 0.8, 0.2, 1) !important;
  box-shadow: none !important;
}

/* Убираем черный фон у контейнеров кнопок в светлой теме */
body:not(.dark-mode) .nav.main_navigation li,
body:not(.dark-mode) .main_navigation li {
  background: transparent !important;
}

/* Убираем черные прямоугольники за кнопками навигации в темной теме */
body.dark-mode .nav.main_navigation li,
body.dark-mode .main_navigation li,
html.dark-mode .nav.main_navigation li,
html.dark-mode .main_navigation li {
  background: transparent !important;
}

body:not(.dark-mode) .nav.main_navigation li a,
body:not(.dark-mode) .main_navigation li a {
  background: rgba(255, 255, 255, 0.7) !important;
  backdrop-filter: blur(12px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(12px) saturate(180%) !important;
}

.nav.main_navigation li a:hover,
.main_navigation li a:hover {
  background: var(--glass-bg-light-hover) !important;
  color: #102a43 !important;
  backdrop-filter: blur(var(--glass-blur-hover)) saturate(var(--glass-saturate-hover)) !important;
  -webkit-backdrop-filter: blur(var(--glass-blur-hover)) saturate(var(--glass-saturate-hover)) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.18) !important;
  border-color: rgba(255, 255, 255, 0.4) !important;
}

/* Для светлой темы дополнительно убираем любые чёрные фоны ховера */
body:not(.dark-mode) .nav.main_navigation li a:hover,
body:not(.dark-mode) .main_navigation li a:hover {
  background: rgba(255, 255, 255, 0.95) !important;
  color: #102a43 !important;
}

/* Hover для навигации в темной теме - белый фон с синим текстом */
body.dark-mode .nav.main_navigation li a:hover,
body.dark-mode .main_navigation li a:hover,
html.dark-mode .nav.main_navigation li a:hover,
html.dark-mode .main_navigation li a:hover {
  background: rgba(255, 255, 255, 0.95) !important;
  color: #102a43 !important;
  backdrop-filter: blur(var(--glass-blur-hover)) saturate(var(--glass-saturate-hover)) !important;
  -webkit-backdrop-filter: blur(var(--glass-blur-hover)) saturate(var(--glass-saturate-hover)) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.18) !important;
  border-color: rgba(255, 255, 255, 0.4) !important;
}

/* Активная кнопка в темной теме - белый фон с синим текстом (как при hover) */
body.dark-mode .nav.main_navigation li.current a,
body.dark-mode .nav.main_navigation li.active a,
body.dark-mode .main_navigation li.current a,
body.dark-mode .main_navigation li.active a,
html.dark-mode .nav.main_navigation li.current a,
html.dark-mode .nav.main_navigation li.active a,
html.dark-mode .main_navigation li.current a,
html.dark-mode .main_navigation li.active a {
  background: rgba(255, 255, 255, 0.95) !important;
  color: #102a43 !important;
  backdrop-filter: blur(var(--glass-blur-hover)) saturate(var(--glass-saturate-hover)) !important;
  -webkit-backdrop-filter: blur(var(--glass-blur-hover)) saturate(var(--glass-saturate-hover)) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.18) !important;
  border-color: rgba(255, 255, 255, 0.4) !important;
}
 
#athens-overview-tour{ background:transparent; } 
html.dark-mode #athens-overview-tour, 
body.dark-mode #athens-overview-tour, 
html.dark #athens-overview-tour, 
body.dark #athens-overview-tour, 
[data-theme="dark"] #athens-overview-tour, 
.theme-dark #athens-overview-tour{ 
background:#000 !important; 
} 
 
html.dark-mode .full_text, 
body.dark-mode .full_text, 
html.dark .full_text, 
body.dark .full_text, 
[data-theme="dark"] .full_text, 
.theme-dark .full_text{ 
--ink:rgba(255,255,255,.92); 
--muted:rgba(255,255,255,.72); 
--line:rgba(255,255,255,.18); 
--accent:#7bb6ff; 
--gold:#d7b57a; 
 
color:var(--ink) !important; 
background:#000 !important; 
 
border-left:1px solid rgba(255,255,255,0.10) !important; 
border-right:1px solid rgba(255,255,255,0.10) !important; 
 
box-shadow:0 0 0 1px rgba(0,0,0,0.85), 0 18px 60px rgba(0,0,0,0.55) !important; 
} 
 
html.dark-mode .bio-wrap, 
body.dark-mode .bio-wrap, 
html.dark .bio-wrap, 
body.dark .bio-wrap, 
[data-theme="dark"] .bio-wrap, 
.theme-dark .bio-wrap{ 
background:transparent !important; 
} 
 
.full_text *{ box-sizing:border-box; } 
 
.full_text p, 
.full_text li, 
.full_text blockquote p{ 
background:transparent !important; 
color:var(--ink) !important; 
} 
 
.full_text p, 
.full_text li{ 
hyphens:auto; 
-webkit-hyphens:auto; 
word-break:normal; 
overflow-wrap:anywhere; 
font-family:"Georgia","Times New Roman",Times,serif; 
font-size:16.5pt; 
margin:0 0 14px; 
text-align:justify; 
} 
 
.full_text h1, 
.full_text h2, 
.full_text h3{ 
font-family:"Georgia","Times New Roman",Times,serif !important; 
letter-spacing:.2px; 
text-align:center; 
font-size:16pt; 
margin:10px 0 16px; 
font-weight:700; 
} 
.full_text h1{ margin-top:0; } 
 
.full_text section{ 
margin:0 0 40px; 
padding:32px 36px; 
border-radius:20px !important; 
position:relative; 
overflow:hidden; 

background:rgba(255,255,255,0.72); 

backdrop-filter:blur(14px) saturate(140%); 
-webkit-backdrop-filter:blur(14px) saturate(140%);
 
box-shadow: 
0 18px 55px rgba(15,23,42,0.10), 
0 2px 0 rgba(255,255,255,0.75) inset, 
0 -1px 0 rgba(13,59,102,0.04) inset; 
 
transition: transform 0.6s cubic-bezier(0.2, 0.8, 0.2, 1), 
            box-shadow 0.6s cubic-bezier(0.2, 0.8, 0.2, 1),
            border-color 0.5s ease !important; 
} 

.full_text section::before{ 
content:''; 
position:absolute; 
inset:0; 
border-radius:inherit; 
padding:1.5px; 
background:linear-gradient(90deg, 
rgba(13,59,102,0.55), 
rgba(123,182,255,0.35), 
rgba(160,216,255,0.35), 
rgba(13,59,102,0.55) 
); 
mask:linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0); 
mask-composite:exclude; 
-webkit-mask-composite:xor; 
pointer-events:none; 
filter:drop-shadow(0 0 10px rgba(123,182,255,0.12)); 
opacity:0.95; 
transition: filter 0.5s ease, opacity 0.5s ease !important;
}
 
.full_text section::after{ 
content:''; 
position:absolute; 
inset:0; 
border-radius:inherit; 
pointer-events:none; 
background: 
radial-gradient(1200px 380px at 18% 0%, 
rgba(123,182,255,0.14), 
rgba(255,255,255,0.00) 60% 
), 
radial-gradient(900px 320px at 86% 110%, 
rgba(13,59,102,0.10), 
rgba(255,255,255,0.00) 55% 
), 
linear-gradient(180deg, 
rgba(255,255,255,0.35), 
rgba(255,255,255,0.00) 40% 
); 
opacity:0.65; 
transition: opacity 0.5s ease, box-shadow 0.6s cubic-bezier(0.2, 0.8, 0.2, 1) !important;
} 
 
.full_text section:hover{ 
transform:translateY(-2px); 
box-shadow: 
0 28px 85px rgba(15,23,42,0.14), 
0 2px 0 rgba(255,255,255,0.78) inset, 
0 0 0 1px rgba(123,182,255,0.06); 
} 
.full_text section:hover::before{ 
filter:drop-shadow(0 0 14px rgba(123,182,255,0.16)); 
opacity:1; 
transition: filter 0.5s ease, opacity 0.5s ease !important;
} 
 
@media (max-width:720px){ 
.full_text section{ 
padding:16px 4px; 
border-radius:16px !important; 
} 
} 
 
html.dark-mode .full_text section, 
body.dark-mode .full_text section, 
html.dark .full_text section, 
body.dark .full_text section, 
[data-theme="dark"] .full_text section, 
.theme-dark .full_text section{ 
margin:0 0 32px; 
padding:28px 14px 20px 14px; 
border-radius:16px !important; 
border:1px solid rgba(255,255,255,0.1) !important; 

background: radial-gradient(circle at top, rgba(30,30,40,0.9), transparent 70%), 
linear-gradient(180deg, #1a1a2e, #0d0d1a); 

box-shadow: 
0 15px 40px rgba(0,0,0,0.45), 
0 0 18px rgba(77,171,247,0.16); 

backdrop-filter:blur(14px); 
-webkit-backdrop-filter:blur(14px); 

transition: transform 0.5s cubic-bezier(0.2, 0.8, 0.2, 1), 
            box-shadow 0.5s cubic-bezier(0.2, 0.8, 0.2, 1),
            border-color 0.4s ease !important; 
transform:none; 
}
 
html.dark-mode .full_text section::before, 
body.dark-mode .full_text section::before, 
html.dark .full_text section::before, 
body.dark .full_text section::before, 
[data-theme="dark"] .full_text section::before, 
.theme-dark .full_text section::before{ 
content:""; 
position:absolute; 
top:0; 
left:0; 
right:0; 
height:1px; 
border-radius:0; 
padding:0; 
background:linear-gradient(90deg, transparent, rgba(77,171,247,0.55), rgba(147,51,234,0.35), rgba(77,171,247,0.55), transparent); 
opacity:.95; 
pointer-events:none; 
filter:none; 
mask:none; 
-webkit-mask:none; 
transition: filter 0.4s ease, opacity 0.4s ease !important;
} 
 
html.dark-mode .full_text section::after, 
body.dark-mode .full_text section::after, 
html.dark .full_text section::after, 
body.dark .full_text section::after, 
[data-theme="dark"] .full_text section::after, 
.theme-dark .full_text section::after{ 
content:""; 
position:absolute; 
inset:1px; 
border-radius:calc(var(--radius-dark) - 1px); 
pointer-events:none; 
background:transparent; 
opacity:1; 
box-shadow: 
inset 0 0 0 1px rgba(77,171,247,0.10), 
inset 0 0 22px rgba(77,171,247,0.06); 
transition: opacity 0.4s ease, box-shadow 0.5s cubic-bezier(0.2, 0.8, 0.2, 1) !important;
}

/* Hover анимации для главного блока в темной теме */
html.dark-mode .full_text section:hover, 
body.dark-mode .full_text section:hover, 
html.dark .full_text section:hover, 
body.dark .full_text section:hover, 
[data-theme="dark"] .full_text section:hover, 
.theme-dark .full_text section:hover{ 
transform:translateY(-3px); 
box-shadow: 
0 28px 85px rgba(0,0,0,0.65), 
0 0 24px rgba(77,171,247,0.25),
0 2px 0 rgba(77,171,247,0.15) inset,
0 0 0 1px rgba(77,171,247,0.2); 
border-color:rgba(77,171,247,0.25) !important;
}

html.dark-mode .full_text section:hover::before, 
body.dark-mode .full_text section:hover::before, 
html.dark .full_text section:hover::before, 
body.dark .full_text section:hover::before, 
[data-theme="dark"] .full_text section:hover::before, 
.theme-dark .full_text section:hover::before{ 
filter:drop-shadow(0 0 18px rgba(77,171,247,0.3)); 
opacity:1; 
transition: filter 0.4s ease, opacity 0.4s ease !important;
}

html.dark-mode .full_text section:hover::after, 
body.dark-mode .full_text section:hover::after, 
html.dark .full_text section:hover::after, 
body.dark .full_text section:hover::after, 
[data-theme="dark"] .full_text section:hover::after, 
.theme-dark .full_text section:hover::after{ 
box-shadow: 
inset 0 0 0 1px rgba(77,171,247,0.20), 
inset 0 0 28px rgba(77,171,247,0.12); 
} 
 
@media (max-width:720px){ 
html.dark-mode .full_text section, 
body.dark-mode .full_text section, 
html.dark .full_text section, 
body.dark .full_text section, 
[data-theme="dark"] .full_text section, 
.theme-dark .full_text section{ 
padding:24px 10px 10px; 
border-radius:12px; 
} 
 
html.dark-mode .full_text section::after, 
body.dark-mode .full_text section::after, 
html.dark .full_text section::after, 
body.dark .full_text section::after, 
[data-theme="dark"] .full_text section::after, 
.theme-dark .full_text section::after{ 
border-radius:11px; 
} 
} 
 
.full_text a{ 
color:var(--accent) !important; 
text-decoration:underline; 
text-decoration-thickness:1px; 
text-underline-offset:3px; 
font-weight:700; 
transition: color 0.4s cubic-bezier(0.2, 0.8, 0.2, 1), 
            text-decoration-color 0.4s cubic-bezier(0.2, 0.8, 0.2, 1),
            transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1),
            text-shadow 0.4s cubic-bezier(0.2, 0.8, 0.2, 1) !important;
position: relative;
display: inline-block;
}
.full_text a:hover {
  color: var(--accent) !important;
  text-decoration-color: rgba(13, 59, 102, 0.5);
  transform: translateY(-2px) scale(1.02);
  text-shadow: 0 2px 8px rgba(13, 59, 102, 0.25);
}
body.dark-mode .full_text a,
html.dark-mode .full_text a {
  transition: color 0.4s cubic-bezier(0.2, 0.8, 0.2, 1), 
              text-decoration-color 0.4s cubic-bezier(0.2, 0.8, 0.2, 1),
              transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1),
              text-shadow 0.4s cubic-bezier(0.2, 0.8, 0.2, 1),
              scale 0.35s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
}

body.dark-mode .full_text a:hover,
html.dark-mode .full_text a:hover {
  text-decoration-color: rgba(77, 171, 247, 0.6);
  text-shadow: 0 2px 12px rgba(77, 171, 247, 0.4);
  transform: translateY(-2px) scale(1.02);
} 
 
.full_text blockquote{ 
margin:28px 0; 
padding:24px 32px; 
border-left:1px solid rgba(77,171,247,0.55); 
border-radius:12px 0 0 12px; 
background:linear-gradient(90deg, 
rgba(194, 160, 107, 0.08) 0%, 
rgba(194, 160, 107, 0.04) 20%, 
rgba(255, 255, 255, 0.02) 100% 
); 
position:relative; 
font-style:italic; 
font-size:17pt; 
line-height:1.65; 
box-shadow:inset 0 0 0 1px rgba(77,171,247,0.1); 
transition: transform 0.6s cubic-bezier(0.2, 0.8, 0.2, 1), 
            background 0.5s ease,
            box-shadow 0.6s cubic-bezier(0.2, 0.8, 0.2, 1) !important; 
} 

.full_text blockquote:hover{ 
background:linear-gradient(90deg, 
rgba(194, 160, 107, 0.12) 0%, 
rgba(194, 160, 107, 0.06) 20%, 
rgba(255, 255, 255, 0.03) 100% 
); 
transform:translateX(3px); 
box-shadow:inset 0 0 0 1px rgba(77,171,247,0.15), 
4px 0 16px rgba(77,171,247,0.1); 
}
 
html.dark-mode .full_text blockquote, 
body.dark-mode .full_text blockquote, 
html.dark .full_text blockquote, 
body.dark .full_text blockquote, 
[data-theme="dark"] .full_text blockquote, 
.theme-dark .full_text blockquote{ 
border-left:1px solid rgba(77,171,247,0.7); 
background:linear-gradient(90deg, 
rgba(123,182,255,0.12) 0%, 
rgba(123,182,255,0.06) 20%, 
rgba(0, 0, 0, 0.04) 100% 
); 
box-shadow:inset 0 0 0 1px rgba(123,182,255,0.15), 
inset 0 8px 32px rgba(0, 0, 0, 0.3); 
transition: transform 0.5s cubic-bezier(0.2, 0.8, 0.2, 1), 
            background 0.4s ease,
            box-shadow 0.5s cubic-bezier(0.2, 0.8, 0.2, 1) !important;
} 
 
html.dark-mode .full_text blockquote:hover, 
body.dark-mode .full_text blockquote:hover, 
html.dark .full_text blockquote:hover, 
body.dark .full_text blockquote:hover, 
[data-theme="dark"] .full_text blockquote:hover, 
.theme-dark .full_text blockquote:hover{ 
background:linear-gradient(90deg, 
rgba(123,182,255,0.16) 0%, 
rgba(123,182,255,0.08) 20%, 
rgba(0, 0, 0, 0.06) 100% 
); 
transform:translateX(4px); 
box-shadow:inset 0 0 0 1px rgba(123,182,255,0.2), 
inset 0 8px 32px rgba(0, 0, 0, 0.4), 
4px 0 20px rgba(123, 182, 255, 0.15); 
transition: transform 0.5s cubic-bezier(0.2, 0.8, 0.2, 1), 
            background 0.4s ease,
            box-shadow 0.5s cubic-bezier(0.2, 0.8, 0.2, 1) !important;
} 
 
@media (max-width:720px){ 
.full_text blockquote{ 
padding:20px 24px; 
margin:20px 0; 
} 
} 
 
.full_text ul{ 
padding-left:22px; 
margin:12px 0 18px; 
} 
.full_text li{ margin:8px 0; } 
 
.contact-button{ 
display:inline-flex; 
align-items:center; 
justify-content:center; 
gap:12px; 
padding:14px 24px; 
background:transparent; 
border:2px solid; 
border-radius:16px; 
color:var(--accent) !important; 
text-decoration:none !important; 
font-weight:700; 
font-size:15pt; 
transition: transform 0.5s cubic-bezier(0.2, 0.8, 0.2, 1), 
            background 0.5s ease,
            border-color 0.5s ease,
            box-shadow 0.5s cubic-bezier(0.2, 0.8, 0.2, 1) !important; 
position:relative; 
overflow:hidden; 
min-width:160px; 
} 
 
.contact-button{ 
background:linear-gradient(135deg, 
rgba(13, 59, 102, 0.08), 
rgba(160, 216, 255, 0.04) 
); 
border-color:rgba(13, 59, 102, 0.25); 
box-shadow:0 6px 20px rgba(13, 59, 102, 0.12), 
0 2px 4px rgba(255, 255, 255, 0.8) inset; 
} 
 
.contact-button:hover{ 
background:linear-gradient(135deg, 
rgba(13, 59, 102, 0.15), 
rgba(160, 216, 255, 0.08) 
); 
border-color:rgba(13, 59, 102, 0.4); 
transform:translateY(-3px) scale(1.01); 
box-shadow:0 12px 32px rgba(13, 59, 102, 0.2), 
0 2px 8px rgba(255, 255, 255, 0.9) inset; 
} 
 
.contact-button:active{ 
transform:translateY(-1px) scale(0.98); 
transition:all 0.1s ease; 
} 
 
.contact-button::after{ 
content:''; 
position:absolute; 
inset:-2px; 
border-radius:18px; 
background:linear-gradient(90deg, 
rgba(13, 59, 102, 0), 
rgba(123, 182, 255, 0.4), 
rgba(13, 59, 102, 0) 
); 
opacity:0; 
transition:opacity 0.5s cubic-bezier(0.2, 0.8, 0.2, 1); 
z-index:-1; 
} 

.contact-button:hover::after{ 
  opacity:1; 
  transition:opacity 0.5s cubic-bezier(0.2, 0.8, 0.2, 1);
}
 
html.dark-mode .contact-button, 
body.dark-mode .contact-button, 
html.dark .contact-button, 
body.dark .contact-button, 
[data-theme="dark"] .contact-button, 
.theme-dark .contact-button{ 
background:linear-gradient(135deg, 
rgba(59, 130, 246, 0.15), 
rgba(147, 51, 234, 0.08) 
); 
border-color:rgba(77, 171, 247, 0.35); 
box-shadow:0 8px 24px rgba(0, 0, 0, 0.4), 
0 2px 6px rgba(255, 255, 255, 0.1) inset, 
0 0 0 1px rgba(77, 171, 247, 0.1); 
transition: transform 0.5s cubic-bezier(0.2, 0.8, 0.2, 1), 
            background 0.5s ease,
            border-color 0.5s ease,
            box-shadow 0.5s cubic-bezier(0.2, 0.8, 0.2, 1) !important;
} 
 
html.dark-mode .contact-button:hover, 
body.dark-mode .contact-button:hover, 
html.dark .contact-button:hover, 
body.dark .contact-button:hover, 
[data-theme="dark"] .contact-button:hover, 
.theme-dark .contact-button:hover{ 
background:linear-gradient(135deg, 
rgba(59, 130, 246, 0.25), 
rgba(147, 51, 234, 0.15) 
); 
border-color:rgba(77, 171, 247, 0.6); 
transform:translateY(-3px) scale(1.01); 
box-shadow:0 16px 40px rgba(0, 0, 0, 0.6), 
0 2px 10px rgba(255, 255, 255, 0.15) inset, 
0 0 20px rgba(77, 171, 247, 0.3); 
transition: transform 0.5s cubic-bezier(0.2, 0.8, 0.2, 1), 
            background 0.5s ease,
            border-color 0.5s ease,
            box-shadow 0.5s cubic-bezier(0.2, 0.8, 0.2, 1) !important;
} 
 
html.dark-mode .contact-button::after, 
body.dark-mode .contact-button::after, 
html.dark .contact-button::after, 
body.dark .contact-button::after, 
[data-theme="dark"] .contact-button::after, 
.theme-dark .contact-button::after{ 
background:linear-gradient(90deg, 
rgba(59, 130, 246, 0), 
rgba(147, 51, 234, 0.5), 
rgba(59, 130, 246, 0) 
); 
transition:opacity 0.5s cubic-bezier(0.2, 0.8, 0.2, 1) !important;
} 
 
.contact-button[href*="tel:"]{ 
background:linear-gradient(135deg, 
rgba(0, 128, 0, 0.1), 
rgba(144, 238, 144, 0.05) 
); 
border-color:rgba(0, 128, 0, 0.3); 
} 
 
.contact-button[href*="tel:"]:hover{ 
background:linear-gradient(135deg, 
rgba(0, 128, 0, 0.18), 
rgba(144, 238, 144, 0.1) 
) !important; 
border-color:rgba(0, 128, 0, 0.5) !important; 
box-shadow:0 12px 32px rgba(0, 150, 0, 0.3), 
0 2px 8px rgba(255, 255, 255, 0.9) inset !important; 
transform:translateY(-3px) scale(1.01) !important;
} 
 
html.dark-mode .contact-button[href*="tel:"], 
body.dark-mode .contact-button[href*="tel:"], 
html.dark .contact-button[href*="tel:"], 
body.dark .contact-button[href*="tel:"], 
[data-theme="dark"] .contact-button[href*="tel:"], 
.theme-dark .contact-button[href*="tel:"]{ 
background:linear-gradient(135deg, 
rgba(50, 205, 50, 0.2), 
rgba(0, 100, 0, 0.1) 
); 
border-color:rgba(50, 205, 50, 0.4); 
} 
 
html.dark-mode .contact-button[href*="tel:"]:hover, 
body.dark-mode .contact-button[href*="tel:"]:hover, 
html.dark .contact-button[href*="tel:"]:hover, 
body.dark .contact-button[href*="tel:"]:hover, 
[data-theme="dark"] .contact-button[href*="tel:"]:hover, 
.theme-dark .contact-button[href*="tel:"]:hover{ 
background:linear-gradient(135deg, 
rgba(50, 205, 50, 0.3), 
rgba(0, 100, 0, 0.2) 
) !important; 
border-color:rgba(50, 205, 50, 0.7) !important; 
box-shadow:0 16px 40px rgba(0, 150, 0, 0.5), 
0 2px 10px rgba(255, 255, 255, 0.15) inset, 
0 0 20px rgba(50, 205, 50, 0.4) !important; 
transform:translateY(-3px) scale(1.01) !important;
} 

/* Зеленый градиент для кнопки tel в темной теме */
html.dark-mode .contact-button[href*="tel:"]::after, 
body.dark-mode .contact-button[href*="tel:"]::after, 
html.dark .contact-button[href*="tel:"]::after, 
body.dark .contact-button[href*="tel:"]::after, 
[data-theme="dark"] .contact-button[href*="tel:"]::after, 
.theme-dark .contact-button[href*="tel:"]::after{ 
background:linear-gradient(90deg, 
rgba(0, 150, 0, 0), 
rgba(50, 205, 50, 0.5), 
rgba(0, 150, 0, 0) 
) !important;
}

/* Зеленый градиент для кнопки tel в светлой теме */
.contact-button[href*="tel:"]::after{ 
background:linear-gradient(90deg, 
rgba(0, 128, 0, 0), 
rgba(0, 200, 0, 0.4), 
rgba(0, 128, 0, 0) 
) !important;
}

.contact-button svg{
flex:0 0 auto; 
width:22px; 
height:22px; 
transition: transform 0.5s cubic-bezier(0.2, 0.8, 0.2, 1), 
            filter 0.5s ease !important; 
filter:drop-shadow(0 2px 4px rgba(0, 0, 0, 0.2)); 
} 

.contact-button:hover svg{ 
transform:scale(1.12) rotate(4deg); 
filter:drop-shadow(0 4px 8px rgba(0, 0, 0, 0.3)); 
}
 
html.dark-mode .contact-button svg, 
body.dark-mode .contact-button svg, 
html.dark .contact-button svg, 
body.dark .contact-button svg, 
[data-theme="dark"] .contact-button svg, 
.theme-dark .contact-button svg{ 
filter:drop-shadow(0 2px 4px rgba(0, 0, 0, 0.4)); 
} 
 
@media (max-width:720px){ 
.contact-button{ 
padding:12px 20px; 
min-width:140px; 
font-size:14pt; 
gap:10px; 
} 
.contact-button svg{ 
width:20px; 
height:20px; 
} 
} 
 
.hero-figure{ 
max-width:900px; 
margin:0 auto 18px; 
text-align:center; 
} 
.hero-figure picture, 
.hero-figure img{ 
display:block; 
margin:0 auto; 
width:100%; 
height:auto; 
max-width:100%; 
} 
.hero-figure .hero-img-dark{ display:none; } 
 
.hero-figure img{ 
width:100%; 
height:auto; 
object-fit:cover; 
} 
 
@media (min-width:721px){ 
.hero-figure img{ max-width:780px; } 
} 
 
@media (max-width:720px){ 
.hero-figure img{ max-width:100%; height:auto; } 
} 
 
html.dark-mode .hero-figure, 
body.dark-mode .hero-figure, 
html.dark .hero-figure, 
body.dark .hero-figure, 
[data-theme="dark"] .hero-figure, 
.theme-dark .hero-figure{ 
max-width:none; 
width:calc(100% + 60px); 
margin:-26px -30px 30px -30px; 
border-radius:var(--radius-dark) var(--radius-dark) 0 0; 
overflow:hidden; 
} 
 
@media (max-width:720px){ 
html.dark-mode .hero-figure, 
body.dark-mode .hero-figure, 
html.dark .hero-figure, 
body.dark .hero-figure, 
[data-theme="dark"] .hero-figure, 
.theme-dark .hero-figure{ 
width:calc(100% + 48px); 
margin:-20px -24px 24px -24px; 
border-radius:12px 12px 0 0; 
} 
} 
 
html.dark-mode .hero-figure .hero-img-light, 
body.dark-mode .hero-figure .hero-img-light, 
html.dark .hero-figure .hero-img-light, 
body.dark .hero-figure .hero-img-light, 
[data-theme="dark"] .hero-figure .hero-img-light, 
.theme-dark .hero-figure .hero-img-light{ display:none; } 
 
html.dark-mode .hero-figure .hero-img-dark, 
body.dark-mode .hero-figure .hero-img-dark, 
html.dark .hero-figure .hero-img-dark, 
body.dark .hero-figure .hero-img-dark, 
[data-theme="dark"] .hero-figure .hero-img-dark, 
.theme-dark .hero-figure .hero-img-dark{ display:block; } 
 
@media (max-width:720px){ 
.full_text figure[style*="float: left"], 
.full_text figure[style*="float: right"]{ 
float:none !important; 
margin:0 auto 14px !important; 
max-width:420px; 
} 
} 
 
.lite-yt{ 
position:relative; 
max-width:100%; 
aspect-ratio:16/9; 
overflow:hidden; 
background:#000; 
margin:0 auto; 
border-radius:0; 
} 
.lite-yt img{ 
width:100%; 
height:100%; 
object-fit:cover; 
} 
.lite-yt button{ 
position:absolute; 
inset:0; 
display:flex; 
align-items:center; 
justify-content:center; 
border:0; 
cursor:pointer; 
background:linear-gradient(180deg, rgba(0,0,0,0.10), rgba(0,0,0,0.55)); 
} 
.lite-yt .play{ 
width:86px; 
height:86px; 
border-radius:999px; 
background:rgba(255,255,255,0.18); 
border:1px solid rgba(255,255,255,0.28); 
display:flex; 
align-items:center; 
justify-content:center; 
} 
.lite-yt .play:before{ 
content:""; 
display:block; 
width:0; height:0; 
border-left:22px solid #fff; 
border-top:14px solid transparent; 
border-bottom:14px solid transparent; 
margin-left:4px; 
} 
.lite-yt iframe{ 
position:absolute; 
inset:0; 
width:100%; 
height:100%; 
border:0; 
} 

