@import "bootstrap/functions"; @import "bootstrap/variables"; @import "bootstrap/maps"; @import "bootstrap/mixins"; @import "bootstrap/root"; @import "bootstrap/reboot"; @import "bootstrap/containers"; @import "bootstrap/grid"; @import "bootstrap/buttons"; @import "bootstrap/navbar"; @import "bootstrap/utilities"; $input-border-color: $warning; @keyframes gentle-pulse { 0% { opacity: 1; } 50% { opacity: 0.5; } 100% { opacity: 1; } } /*ГКУС*/ .hero-container { height: 100vh !important; } @media (max-width: 767px) { .hero-container { height: 90vh !important; } } div.hero-video>div.hero-text { width: 75vw; } .navbar-brand { font-size: medium; } .carousel-caption { left: 0; right: 0; bottom: 0; top: 0; } .hero-container { margin-top: -3.5rem; } h1 { font-size: clamp(.5rem, calc(5vw + 1rem), 5rem); } @media (max-width: 991.98px) { .navbar-collapse { overflow: hidden; /* Скрываем содержимое, чтобы не было видно за пределами */ max-height: 0; /* Начальная высота меню */ opacity: 0; /* Начальная непрозрачность */ transition: max-height 0.3s ease, opacity 0.3s ease; /* Плавное изменение */ } .navbar-collapse.show { max-height: 500px; /* Задаем максимальную высоту, чтобы меню могло быть раскрыто */ opacity: 1; /* Открываем меню с полной непрозрачностью */ } /* Стили для кнопки переключения темы */ #themeToggle { display: inline-flex; align-items: center; justify-content: center; padding: 0.5rem; height: 2rem; width: 2rem; flex-shrink: 0; } .navbar-collapse.show .navbar-nav { display: flex !important; flex-direction: row !important; justify-content: center; gap: 0.5rem; width: 100%; background-color: rgba(var(--bs-body-bg-rgb), .95); padding: .3rem; } .navbar-collapse.show .nav-item { flex: 0 1 auto; } .navbar-collapse.show .nav-link { display: block; width: 100%; text-align: center; } } :root { --dark-menu-shadow: rgba(255, 255, 255, .5); --light-menu-shadow: rgba(0, 0, 0, .5); } $shadow-offset: .1rem; @mixin text-contour($offset, $color) { text-shadow: -#{$offset} -#{$offset} 0 #{$color}, #{$offset} -#{$offset} 0 #{$color}, -#{$offset} #{$offset} 0 #{$color}, #{$offset} #{$offset} 0 #{$color}; } [data-bs-theme="dark"] { :root { --bs-link-color: #ffc107; --bs-link-hover-color: #ffca2c; --hero-overlay: rgba(0, 0, 0, 0.4); } .feature { background: linear-gradient(45deg, #330867, #30cfd0); } } [data-bs-theme="light"] { :root { --bs-link-color: #d63384; --bs-link-hover-color: #e83e8c; --hero-overlay: rgba(252, 255, 69, 0.829); } .feature { background: linear-gradient(45deg, #d1fdff, #fddb92); } .bg-body-tertiary { background: #ddff00; background: linear-gradient(193deg, rgba(221, 255, 0, 1) 0%, rgba(243, 252, 144, 1) 26%, rgba(239, 239, 187, 1) 81%, rgba(252, 240, 0, 1) 100%); } } #navbar.scrolled { position: fixed; top: 0; left: 0; right: 0; z-index: 1030; transition: all 1s ease-in-out; } #navbar.show>.container { margin: 0; padding: 0 .2rem; } @media (min-width: 768px) { #navbar.scrolled>div>#navbarNav>ul>li.nav-item.dropdown>ul { margin-top: -.75rem; } } .rounded-bottom-max { border-bottom-left-radius: 2rem; border-bottom-right-radius: 2rem; } .hero-overlay { position: absolute; inset: 0; background-color: rgba(var(--bs-body-bg-rgb), 0.3); z-index: 0; } .indi { min-height: 2rem; font-size: 1rem; } .bg-reverse { background-color: var(--bs-body-color); } .border-reverse { border-color: var(--bs-secondary-bg-color); } .border-reverse:hover { border-color: var(--bs-body-color); } .mw-75 { max-width: 75%; } .logo-small svg { width: 2rem; height: 2rem; margin: 0 .1rem .1rem .5rem; } .scroll-down-btn { margin-bottom: 3rem; animation: gentle-pulse 1s ease-in-out infinite; } .scroll-down-btn:hover { opacity: 0.8; transform: translate(-50%, 5px); transition: all 0.3s ease; } .bottom-fixed { position: sticky; bottom: 0; left: 0; right: 0; height: 3rem; padding: 0 1rem; border-top-right-radius: 0.5rem; z-index: 1040; } .bottom-fixed a { font-size: 1rem; white-space: nowrap; } .bottommenu { position: sticky; bottom: 0; z-index: 1020; } .card-button { background-size: cover; background-position: center; } .card-button .text-white { text-shadow: 1px 1px 2px black; } .glass { backdrop-filter: blur(10px); background: linear-gradient(to bottom, rgba(var(--bs-body-bg-rgb), 0.6), rgba(var(--bs-body-bg-rgb), 0)); border-bottom: 1px solid var(--bs-body-bg-rgb); } .glass.bottom-fixed, .hero-breadcrumbs { background: linear-gradient(to top, rgba(var(--bs-body-bg-rgb), 0.6), rgba(var(--bs-body-bg-rgb), 0)); border-top: 1px solid var(--bs-body-bg-rgb); } .vk { width: 1.9rem; height: 1.9rem; display: inline-block; vertical-align: middle; } svg.vk path { fill: currentColor; } svg.vk:hover path { fill: var(--bs-link-hover-color); } .mainbanner { border-top-right-radius: 5rem; border-bottom-left-radius: 5rem; } .fire-back { position: absolute; left: 0; top: 0; width: 100%; height: 100%; } .fire-light { width: 100%; height: 100%; animation: firelight 2s ease infinite; position: fixed; z-index: 1; bottom: 0; left: 0; bottom: 0; } @keyframes firelight { 0% { opacity: 1; } 50% { opacity: 0.8; } 100% { opacity: 1; } } .fire-content { position: absolute; left: 50%; bottom: 0; margin: 0 0 -30px -100px; width: 200px; height: 200px; overflow: hidden; border-radius: 100%; .fire { filter: url(#goo); position: absolute; width: 100%; height: 100%; } div.fbottom { position: absolute; left: 50px; bottom: 0; width: 100px; height: 30px; background: #ff9800; border-radius: 30px; } figure { position: absolute; margin: 0 0 -15px; left: calc(50% - 70px); bottom: 0; width: 70px; height: 70px; background: #ff9800; border-radius: 100%; @for $i from 1 through 16 { &:nth-child(#{$i}) { animation: firecircle 1.2s #{$i*0.14}s cubic-bezier(0.5, 0.07, 0.64, 1) infinite; margin-left: random(70)+px; margin-bottom: -#{15+random(25)}px; } } } .reverse div { position: absolute; margin: 0 0 -15px; left: 0; bottom: 0; width: 70px; height: 70px; background: #141e30; border-radius: 100%; @for $i from 1 through 4 { &:nth-child(#{$i}) { animation: firereverseleft 1.2s #{$i*0.5}s cubic-bezier(0.5, 0.07, 0.64, 1) infinite; margin-left: random(23)+px; margin-bottom: -#{15+random(25)}px; } } @for $i from 1 through 4 { &:nth-child(#{$i+4}) { left: 120px; animation: firereverseright 1.2s #{$i*0.5}s cubic-bezier(0.5, 0.07, 0.64, 1) infinite; margin-left: random(23)+px; margin-bottom: -#{15+random(25)}px; } } } } @keyframes firecircle { 0% { transform: translateY(0) scale(1); background: #ff9800; } 100% { transform: translateY(-175px) scale(0); background: #ffc107; } } @keyframes firereverseleft { 0% { transform: translateY(0) translateX(0) scale(0.3); } 100% { transform: translateY(-175px) translateX(50px) scale(1); } } @keyframes firereverseright { 0% { transform: translateY(0) translateX(0) scale(0.3); } 100% { transform: translateY(-175px) translateX(-50px) scale(1); } } .dropdown-menu .dropdown-menu { display: none; position: absolute; top: 0; left: 100%; margin-top: -1px; } .dropdown-menu li:hover>.dropdown-menu { display: block; } .form-check-input.check-info:checked, input[type="range"].range-info::-webkit-slider-thumb { background-color: var(--bs-info); border-color: var(--bs-info); } .form-check-input.check-primary:checked, input[type="range"].range-primary::-webkit-slider-thumb { background-color: var(--bs-primary); border-color: var(--bs-primary); } .form-check-input.check-warning:checked, input[type="range"].range-warning::-webkit-slider-thumb { background-color: var(--bs-warning); border-color: var(--bs-warning); } .form-check-input.check-danger:checked, input[type="range"].range-danger::-webkit-slider-thumb { background-color: var(--bs-danger); border-color: var(--bs-danger); } .form-check-input.check-success:checked, input[type="range"].range-success::-webkit-slider-thumb { background-color: var(--bs-success); border-color: var(--bs-success); } a important { color: var(--bs-body-color) !important; } .ok ul { list-style: none; padding-left: 1rem; } .ok ul li::before { content: "✓"; color: var(--bs-body-color); margin-right: 0.3rem; }