/
studmapio
/
rshu
Обзор
Документация
Войти
/
studmapio
/
rshu
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
main
style.css
1 404 строки
31 KB
DoulesRSHU
Update style.css
11 авг 2025, 22:11
Не верифицирован
11 авг 2025, 22:11
74e17f5
Код
Авторство
О чём код?
:root { --primary-color: #2c7873; --secondary-color: #cccccc; --accent-color: #004358; --background-gradient: linear-gradient(135deg, #e0f7fa, #b2ebf2); --text-color: #333; --light-text: #fff; --error-color: #e74c3c; --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.1); --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.15); --shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.2); --logo-size: min(250px, 25vw); /* Базовый размер логотипа с ограничением */ --logo-backdrop-scale: 1.1; /* Размер фона вокруг логотипа */ --header-padding: 15px; /* Верхний и нижний отступ */ } * { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; } body { background: var(--background-gradient); color: var(--text-color); min-height: 100vh; padding: 20px; line-height: 1.6; } .container { max-width: 1200px; margin: 0 auto; background: white; border-radius: 15px; box-shadow: var(--shadow-lg); overflow: hidden; min-height: calc(100vh - 40px); } /* Хедер с логотипом за текстом */ header { background-color: var(--primary-color); color: var(--light-text); padding: var(--header-padding) 20px; position: relative; min-height: calc(var(--logo-size) + (2 * var(--header-padding))); /* Высота зависит от логотипа */ display: flex; align-items: center; justify-content: center; text-align: center; overflow: hidden; } .header-content { position: relative; z-index: 3; width: 100%; } .logo-backdrop { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 1; /* Ниже логотипа (у него z-index: 2) */ width: calc(var(--logo-size) * var(--logo-backdrop-scale)); height: calc(var(--logo-size) * var(--logo-backdrop-scale)); border-radius: 50%; background: radial-gradient(circle, rgba(255,255,255,0.28) 0%, rgba(255,255,255,0) 70%); backdrop-filter: blur(5px); pointer-events: none; /* Чтобы не перехватывал клики */ -webkit-backdrop-filter: blur(8px); /* Для Safari */ } .logo { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); height: var(--logo-size); width: auto; /* Сохраняем пропорции */ max-width: 90%; /* Не даём вылезать за границы */ object-fit: contain; z-index: 2; filter: drop-shadow(0 10px 10px rgba(255, 255, 255, 0.46)); opacity: 0.9; } h1 { font-size: 2.4rem; margin-bottom: 0; position: relative; z-index: 3; text-shadow: 0 2px 4px rgba(0,0,0,0.3); font-weight: 600; } h2 { font-size: 1.6rem; margin-bottom: 25px; text-align: center; color: var(--accent-color); } h3 { font-size: 1.4rem; color: var(--primary-color); margin-bottom: 10px; } .screen { padding: 30px; display: none; } .screen.active { display: block; } /* Переключатель режимов */ .mode-switcher-container { margin-bottom: 25px; text-align: center; } .mode-switcher { display: inline-flex; align-items: center; gap: 15px; background: rgba(255, 255, 255, 0.2); padding: 10px 20px; border-radius: 30px; } .browse-screen { overflow-anchor: none; /* Предотвращает автоматическую прокрутку браузера */ } html { scroll-behavior: auto; /* Отключает плавную прокрутку при открытии */ } .mode-label { font-size: 1.1rem; font-weight: 500; color: #004358; /* Белый цвет как светлые элементы в хедере */ text-shadow: 0 1px 2px rgba(0,0,0,0.3); /* Легкая тень для читаемости */ } .switch { position: relative; display: inline-block; width: 60px; height: 34px; } .switch input { opacity: 0; width: 0; height: 0; } .slider { position: absolute; cursor: pointer; top: 0; left: 0; right: 0; bottom: 0; background-color: #2c7873; transition: .4s; border-radius: 34px; } .slider:before { position: absolute; content: ""; height: 26px; width: 26px; left: 4px; bottom: 4px; background-color: white; transition: .4s; border-radius: 50%; } input:checked + .slider { background-color: var(--secondary-color); } input:checked + .slider:before { transform: translateX(26px); } /* Категории */ .categories-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 30px; margin-bottom: 35px; } .category-card { display: block; cursor: pointer; position: relative; transition: transform 0.3s ease; } .category-card:hover { transform: translateY(-5px); } .category-card input { position: absolute; opacity: 0; } .category-content { border: 2px solid #e0e0e0; border-radius: 15px; padding: 25px; transition: all 0.3s ease; height: 100%; background: white; text-align: center; /* Добавляем центрирование текста */ display: flex; flex-direction: column; align-items: center; /* Центрируем элементы по горизонтали */ } .category-card input:checked + .category-content { border-color: var(--primary-color); background-color: rgba(44, 120, 115, 0.08); box-shadow: var(--shadow-md); } .category-content img { width: 100%; height: 160px; object-fit: cover; border-radius: 12px; margin-bottom: 20px; transition: transform 0.3s ease; } .category-card:hover .category-content img { transform: scale(1.03); } .category-content h3 { margin-bottom: 15px; font-size: 1.3rem; } .category-content p { color: var(--text-color); font-size: 1rem; line-height: 1.5; } .category-content h3, .category-content p { width: 100%; /* Занимаем всю ширину для текста */ } /* Кнопки */ .btn { display: block; width: 240px; margin: 30px auto; padding: 15px; background-color: var(--primary-color); color: white; border: none; border-radius: 30px; font-size: 1.1rem; font-weight: 500; cursor: pointer; transition: all 0.3s ease; box-shadow: var(--shadow-sm); text-align: center; } .btn:hover { background-color: var(--accent-color); transform: translateY(-3px); box-shadow: var(--shadow-md); } .btn.secondary { background-color: white; color: var(--primary-color); border: 2px solid var(--primary-color); } .error-message { color: var(--error-color); text-align: center; margin: 25px 0; font-weight: bold; padding: 15px; border-radius: 10px; background-color: rgba(231, 76, 60, 0.1); font-size: 1.05rem; } .error-message.hidden { display: none; } /* Browse mode styles */ .browse-grid { display: flex; flex-direction: column; gap: 40px; } .category-section { background: white; border-radius: 15px; padding: 20px; box-shadow: var(--shadow-sm); } .browse-category-title { color: var(--accent-color); margin-bottom: 20px; padding-bottom: 10px; border-bottom: 2px solid var(--secondary-color); } .browse-clubs-container { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 20px; } .browse-club-card { display: flex; flex-direction: column; background: white; border-radius: 12px; overflow: hidden; box-shadow: var(--shadow-sm); transition: all 0.3s ease; } .browse-club-card:hover { transform: translateY(-5px); box-shadow: var(--shadow-md); } .browse-club-card img { width: 100%; height: 180px; object-fit: cover; } .browse-club-info { padding: 20px; text-align: center; display: flex; flex-direction: column; align-items: center; } .browse-club-info h4 { color: var(--accent-color); margin-bottom: 10px; font-size: 1.2rem; } .browse-club-info p { margin-bottom: 15px; font-size: 0.95rem; line-height: 1.5; } .browse-club-info h4, .browse-club-info p { width: 100%; text-align: center; } .browse-link { display: inline-block; padding: 8px 15px; background-color: var(--primary-color); color: white; text-decoration: none; border-radius: 20px; font-size: 0.9rem; transition: all 0.3s ease; margin-left: auto; margin-right: auto; } .browse-link:hover { background-color: var(--accent-color); } /* Экраны свайпа */ .swipe-container { position: relative; height: auto; min-height: 70vh; margin-bottom: 30px; display: flex; justify-content: center; align-items: center; } .card-deck { position: relative; width: 100%; max-width: 550px; display: flex; justify-content: center; align-items: center; } .club-card { position: relative; width: 92%; max-width: 450px; background: white; border-radius: 20px; padding: 30px; display: flex; flex-direction: column; transition: transform 0.5s ease, opacity 0.5s ease; cursor: grab; margin: 25px auto; box-shadow: var(--shadow-lg); text-align: center; /* Центрируем текст */ } .club-card:active { cursor: grabbing; } .club-card img { width: 100%; height: 220px; object-fit: cover; border-radius: 15px; margin-bottom: 25px; transition: transform 0.3s ease; } .club-card:hover img { transform: scale(1.02); } .club-card h3 { margin-bottom: 20px; font-size: 1.5rem; min-height: 3.2rem; color: var(--accent-color); } .club-card p { flex-grow: 1; margin-bottom: 25px; line-height: 1.6; overflow-y: auto; max-height: 180px; font-size: 1.05rem; } .club-card a { display: inline-block; padding: 12px 25px; background-color: var(--primary-color); color: white; text-decoration: none; border-radius: 30px; text-align: center; transition: all 0.3s ease; font-weight: 500; margin-top: auto; font-size: 1rem; box-shadow: var(--shadow-sm); margin-left: auto; margin-right: auto; /* Центрируем кнопку */ } .club-card a:hover { background-color: var(--accent-color); transform: translateY(-2px); box-shadow: var(--shadow-md); } .club-card h3, .club-card p, .club-card a { width: 100%; text-align: center; /* Центрируем текст и кнопку */ } .swipe-actions { display: flex; justify-content: center; gap: 60px; margin-top: 30px; } .swipe-btn { width: 80px; height: 80px; border-radius: 50%; border: none; font-size: 2rem; cursor: pointer; transition: all 0.3s ease; display: flex; justify-content: center; align-items: center; box-shadow: var(--shadow-md); } .swipe-btn:active { transform: scale(0.95); } .swipe-btn.like { background-color: rgba(76, 175, 80, 0.47); color: white; } .swipe-btn.dislike { background-color: rgba(244, 67, 54, 0.47); color: white; } /* Результаты */ .matches-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 30px; margin-bottom: 40px; } .match-card { background: white; border-radius: 15px; padding: 25px; text-align: center; box-shadow: var(--shadow-md); cursor: pointer; transition: all 0.3s ease; display: flex; flex-direction: column; align-items: center; } .match-card:hover { transform: translateY(-8px); box-shadow: var(--shadow-lg); } .match-card img { width: 120px; height: 120px; border-radius: 50%; object-fit: cover; margin: 0 auto 20px; border: 5px solid var(--secondary-color); transition: transform 0.3s ease; } .match-card:hover img { transform: scale(1.1); } .match-card h3 { font-size: 1.2rem; margin-bottom: 10px; width: 100%; } #buttons-container { display: flex; flex-direction: column; align-items: center; gap: 20px; margin-top: 20px; } /* Рекомендации */ .recommendations-container { margin: 30px 0; padding: 20px; background: rgba(111, 185, 143, 0.1); border-radius: 15px; } .recommendations-title { text-align: center; margin-bottom: 20px; color: var(--accent-color); } .recommendations-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 15px; } .recommendation-card { background: white; border-radius: 12px; padding: 15px; text-align: center; box-shadow: var(--shadow-sm); cursor: pointer; transition: all 0.3s ease; } .recommendation-card:hover { transform: translateY(-5px); box-shadow: var(--shadow-md); } .recommendation-card img { width: 80px; height: 80px; border-radius: 50%; object-fit: cover; margin: 0 auto 10px; border: 3px solid var(--secondary-color); } .recommendation-card h4 { font-size: 1rem; color: var(--primary-color); } .pulse-btn { width: 60px; height: 60px; border-radius: 50%; background: rgba(44, 120, 115, 0.7); color: white; border: none; font-size: 1.5rem; cursor: pointer; margin: 20px auto 0; display: block; animation: pulse 2s infinite; transition: all 0.3s ease; } .pulse-btn:hover { animation: none; transform: scale(1.1); background: rgba(44, 120, 115, 0.9); } @keyframes pulse { 0% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(44, 120, 115, 0.7); } 70% { transform: scale(1); box-shadow: 0 0 0 15px rgba(44, 120, 115, 0); } 100% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(44, 120, 115, 0); } } /* Предложение заполнить форму */ .no-matches-container { width: 100%; max-width: 850px; margin: 0 auto 40px; padding: 0 25px; } .no-matches-card { background: white; border-radius: 20px; overflow: hidden; box-shadow: var(--shadow-lg); transition: transform 0.3s ease; position: relative; } .no-matches-card:hover { transform: translateY(-5px); } .no-matches-image { width: 100%; height: 220px; object-fit: cover; transition: transform 0.3s ease; } .no-matches-card:hover .no-matches-image { transform: scale(1.03); } .no-matches-content { padding: 30px; text-align: center; } .no-matches-content h3 { color: var(--accent-color); margin-bottom: 20px; font-size: 1.6rem; text-align: center; line-height: 1.3; } .no-matches-content p { margin-bottom: 25px; line-height: 1.6; text-align: center; font-size: 1.05rem; max-width: 800px; margin-left: auto; margin-right: auto; } .suggestion-buttons { display: flex; flex-direction: column; gap: 15px; align-items: center; margin-top: 20px; } .suggestion-btn { display: inline-block; padding: 15px 35px; background-color: var(--primary-color); color: white; text-decoration: none; border-radius: 30px; font-weight: 500; transition: all 0.3s ease; box-shadow: var(--shadow-md); font-size: 1.1rem; } .suggestion-btn:hover { background-color: var(--accent-color); transform: translateY(-3px); box-shadow: var(--shadow-lg); } .vk-btn { display: inline-flex; align-items: center; gap: 8px; padding: 12px 20px; background-color: #4a76a8; color: white; text-decoration: none; border-radius: 30px; font-weight: 500; transition: all 0.3s ease; box-shadow: var(--shadow-sm); } .vk-btn:hover { background-color: #3a5f8a; transform: translateY(-2px); box-shadow: var(--shadow-md); } .vk-icon { width: 20px; height: 20px; opacity: 0.8; } /* Модальное окно */ .modal { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.8); display: flex; justify-content: center; align-items: center; z-index: 1000; padding: 20px; } .modal-content { background: white; padding: 35px; border-radius: 20px; max-width: 600px; width: 100%; max-height: 90vh; overflow-y: auto; position: relative; box-shadow: var(--shadow-lg); } .modal-image { width: 100%; height: 280px; object-fit: cover; border-radius: 15px; margin-bottom: 25px; } .modal-text { padding: 0 15px; } .modal-title { margin-bottom: 20px; color: var(--accent-color); font-size: 1.8rem; } .modal-description { line-height: 1.6; margin-bottom: 25px; font-size: 1.1rem; } .close-modal { position: absolute; top: 20px; right: 25px; font-size: 30px; cursor: pointer; color: var(--text-color); transition: all 0.3s; background: none; border: none; width: 45px; height: 45px; display: flex; align-items: center; justify-content: center; border-radius: 50%; } .close-modal:hover { color: var(--primary-color); background-color: rgba(0, 0, 0, 0.05); transform: rotate(90deg); } .hidden { display: none !important; } /* Адаптация для планшетов */ @media (max-width: 992px) { :root { --logo-size: min(210px, 30vw); } header { padding: 2px 15px; /* уменьшено на ~90% */ min-height: 200px; } .logo { height: var(--logo-size); } .logo-backdrop { width: calc(var(--logo-size) * var(--logo-backdrop-scale)); height: calc(var(--logo-size) * var(--logo-backdrop-scale)); } h1 { font-size: 2.1rem; } .categories-grid { grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); } .club-card { padding: 25px; } .no-matches-content h3 { font-size: 1.4rem; } .header-background-logos, .footer-background-logos { top: -40px; bottom: -40px; } .header-background-logos img, .footer-background-logos img { opacity: 0.13; } .header-background, .footer-background { backdrop-filter: blur(2px); } } /* Адаптация для мобильных устройств */ @media (max-width: 768px) { :root { --logo-size: min(180px, 35vw); } header { padding: 2px 10px; /* уменьшено на ~90% */ min-height: 200px; } .logo { height: var(--logo-size); } .logo-backdrop { width: calc(var(--logo-size) * var(--logo-backdrop-scale)); height: calc(var(--logo-size) * var(--logo-backdrop-scale)); } body { padding: 15px; } h1 { font-size: 1.8rem; } .screen { padding: 20px; } .matches-grid { grid-template-columns: 1fr 1fr; gap: 20px; } .club-card { padding: 20px; } .club-card h3 { font-size: 1.3rem; } .swipe-actions { gap: 50px; } .swipe-btn { width: 70px; height: 70px; font-size: 1.8rem; } .no-matches-content { padding: 25px; } .no-matches-content h3 { font-size: 1.3rem; } .browse-clubs-container { grid-template-columns: 1fr; } .recommendations-grid { grid-template-columns: 1fr; } .header-background-logos, .footer-background-logos { top: -30px; bottom: -30px; } .header-background-logos img, .footer-background-logos img { opacity: 0.12; } .header-background, .footer-background { backdrop-filter: blur(1px); } } /* Адаптация для маленьких экранов (менее 6.6") */ @media (max-width: 400px) { :root { --logo-size: 165px; /* 150 * 1.1 */ } header { padding: 2px 8px; /* уменьшено на ~90% */ min-height: 160px; } .logo { height: var(--logo-size); } .logo-backdrop { width: calc(var(--logo-size) * var(--logo-backdrop-scale)); height: calc(var(--logo-size) * var(--logo-backdrop-scale)); } h1 { font-size: 1.5rem; } .categories-grid { grid-template-columns: 1fr; } .club-card { padding: 18px; } .club-card img { height: 180px; } .club-card h3 { font-size: 1.2rem; } .matches-grid { grid-template-columns: 1fr; } .swipe-btn { width: 60px; height: 60px; font-size: 1.6rem; } .no-matches-content h3 { font-size: 1.2rem; } .suggestion-btn { padding: 12px 25px; } .header-background-logos, .footer-background-logos { top: -20px; bottom: -20px; } .header-background-logos img, .footer-background-logos img { opacity: 0.10; } } /* Адаптация для самых маленьких экранов */ @media (max-width: 350px) { :root { --logo-size: 165px; /* 150 * 1.1 */ } .logo { height: var(--logo-size); } .logo-backdrop { width: calc(var(--logo-size) * var(--logo-backdrop-scale)); height: calc(var(--logo-size) * var(--logo-backdrop-scale)); } h1 { font-size: 1.3rem; } .club-card { padding: 15px; } .no-matches-content h3 { font-size: 1.1rem; } .header-background-logos, .footer-background-logos { top: -15px; bottom: -15px; } .header-background-logos img, .footer-background-logos img { opacity: 0.08; } } /* Горизонтальная раскладка для широких экранов */ @media (min-width: 768px) { .no-matches-card { display: flex; align-items: center; } .no-matches-image { width: 45%; height: auto; min-height: 300px; } .no-matches-content { width: 55%; padding: 40px; } .suggestion-buttons { flex-direction: row; justify-content: center; } } :root { --logo-size: min(150px, 40vw); } /* Добавляем в конец файла или в соответствующую секцию */ .social-icons { display: flex; gap: 20px; margin-top: 15px; } .social-icon { width: 40px; height: 40px; transition: transform 0.3s ease; } .social-icon:hover { transform: scale(1.1); } /* Модифицируем существующий стиль */ .suggestion-buttons { display: flex; flex-direction: column; gap: 15px; align-items: center; margin-top: 20px; } /* Основные стили футера */ /* Стили для футера */ /* Стили для футера */ .site-footer { margin-top: 0; position: relative; overflow: hidden; color: white; } .footer-content { max-width: 500px; margin: 0 auto; position: relative; z-index: 2; display: flex; flex-direction: column; align-items: center; gap: 4px; /* Уменьшен отступ между элементами */ } .footer-content::before { content: ''; position: absolute; top: -50px; left: 0; right: 0; height: 50px; background: linear-gradient(to bottom, rgba(44, 120, 115, 0.8), rgba(44, 120, 115, 0)); backdrop-filter: blur(5px); -webkit-backdrop-filter: blur(5px); z-index: 1; } .footer-links { display: flex; flex-direction: column; align-items: center; gap: 4px; /* Уменьшен отступ между элементами */ } .footer-link { color: white; text-decoration: none; font-size: 0.9rem; transition: opacity 0.3s; text-align: center; padding: 2px 5px; border-radius: 3px; } /* Подчёркивание только для помеченных ссылок */ .underline-on-hover { text-decoration: none; } .underline-on-hover:hover { text-decoration: underline; background-color: transparent; } /* Убрать фон/opacity для остальных footer link hover */ .footer-link { transition: none; /* или минимальный */ } .footer-link:hover { background-color: transparent; opacity: 1; } .footer-university:hover { background-color: transparent; } .footer-social { display: flex; gap: 15px; margin: 3px 0; /* Уменьшены отступы */ } .footer-social img { width: 24px; height: 24px; transition: transform 0.3s; } .footer-social img:hover { transform: scale(1.1); } .footer-university { display: flex; flex-direction: column; align-items: center; gap: 5px; /* Уменьшен отступ */ margin-top: 5px; text-decoration: none; color: white; text-align: center; padding: 5px; border-radius: 3px; transition: background-color 0.3s; } .footer-university span { line-height: 1.3; } .footer-university-logo { height: 35px; width: auto; transition: transform 0.3s; } .footer-university-logo:hover { transform: scale(1.05); } .container { border-bottom-left-radius: 0; border-bottom-right-radius: 0; } /* ---------------------------- МИНИ-ЛОГОТИПЫ (header + footer) ---------------------------- */ .header-background-logos, .footer-background-logos { position: absolute; top: -50px; /* Начинаем выше границы */ left: 0; right: 0; bottom: -50px; /* Заканчиваем ниже границы */ z-index: 1; pointer-events: none; overflow: hidden; } /* общие правила для картинок внутри контейнеров */ .header-background-logos img, .footer-background-logos img { position: absolute; opacity: 0.14; transition: all 0.3s ease; object-fit: contain; filter: brightness(1.2); } /* Hover эффект — лёгкое увеличение */ .header-background-logos img:hover, .footer-background-logos img:hover { transform: scale(1.12); opacity: 0.18; } /* Наклон/ротейты и точные позиции — структура, но не рандом. Здесь даю пример для 7 логотипов (подбери количество в JS). */ .header-background-logos img:nth-child(1) { top: 8%; left: 4%; width: 25px; height: 25px; transform: rotate(-8deg); } .header-background-logos img:nth-child(2) { top: 14%; right: 10%; width: 30px; height: 30px; transform: rotate(6deg); } .header-background-logos img:nth-child(3) { top: 38%; left: 10%; width: 20px; height: 20px; transform: rotate(-12deg); } .header-background-logos img:nth-child(4) { top: 45%; right: 12%; width: 35px; height: 35px; transform: rotate(8deg); } .header-background-logos img:nth-child(5) { bottom: 16%; left: 12%; width: 40px; height: 40px; transform: rotate(-6deg); } .header-background-logos img:nth-child(6) { bottom: 28%; left: 62%; width: 25px; height: 25px; transform: rotate(4deg); } .header-background-logos img:nth-child(7) { bottom: 8%; right: 8%; width: 30px; height: 30px; transform: rotate(-4deg); } /* То же для футера — можно использовать те же позиции или чуть сдвинуть */ .footer-background-logos img:nth-child(1) { top: 12%; left: 6%; width: 28px; height: 28px; transform: rotate(-10deg); } .footer-background-logos img:nth-child(2) { top: 18%; right: 8%; width: 32px; height: 32px; transform: rotate(5deg); } .footer-background-logos img:nth-child(3) { top: 40%; left: 10%; width: 22px; height: 22px; transform: rotate(-6deg); } .footer-background-logos img:nth-child(4) { top: 48%; right: 14%; width: 36px; height: 36px; transform: rotate(10deg); } .footer-background-logos img:nth-child(5) { bottom: 18%; left: 14%; width: 34px; height: 34px; transform: rotate(-6deg); } .footer-background-logos img:nth-child(6) { bottom: 28%; left: 60%; width: 26px; height: 26px; transform: rotate(3deg); } .footer-background-logos img:nth-child(7) { bottom: 6%; right: 6%; width: 30px; height: 30px; transform: rotate(-3deg); } /* Небольшое увеличение при hover только для мини-логотипов (чтобы подчеркнуть), остальные hover-эффекты в футере будем убирать. */ .header-background-logos img:hover, .footer-background-logos img:hover { opacity: 0.22 !important; transform: scale(1.15) rotate(5deg); filter: brightness(1.4); } .header-background-logos img:nth-child(1) { left: 4vw; } /* Подстройка для мелких экранов */ @media (max-width: 768px) { .header-background-logos img, .footer-background-logos img { opacity: 0.10; } .header-background-logos img:nth-child(1) { width: 20px; height: 20px; top: 6%; left: 4%; } .header-background-logos img:nth-child(2) { width: 22px; height: 22px; top: 12%; right: 8%; } /* ... при желании подрегулируй остальные позиции для мобильных ... */ } header, footer { position: relative; } .header-background-logos, .footer-background-logos { max-width: 1200px; /* Та же ширина, что и у .container */ margin: 0 auto; /* Центрирование */ left: 0; right: 0; } .footer-inner { position: relative; max-width: 1200px; margin: 0 auto; background-color: var(--primary-color); border-bottom-left-radius: 15px; border-bottom-right-radius: 15px; padding: 20px; box-sizing: border-box; } .footer-background-logos { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; pointer-events: none; z-index: 1; } .footer-content { position: relative; z-index: 2; /* поверх шахматки */ } .header-background, .footer-background { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient( 135deg, rgba(44, 120, 115, 0.92) 0%, rgba(44, 120, 115, 0.96) 100% ); z-index: 0; backdrop-filter: blur(3px); }