        :root {
            --bg-dark: #0a1118;
            --accent-gold: #c5a059;
            --text-light: #e0e0e0;
            --text-muted: #8899a6;
            --card-bg: #141e27;
        }

        body {
            font-family: 'Segoe UI', Tahoma, sans-serif;
            background-color: var(--bg-dark);
            color: var(--text-light);
            margin: 0;
            line-height: 1.6;
        }

        header {
            padding: 20px 5%;
            display: flex;
            justify-content: space-between;
            align-items: center;
            border-bottom: 1px solid #1a2a3a;
            background: rgba(10, 17, 24, 0.9);
        }

        .logo { font-weight: bold; color: var(--accent-gold); font-size: 1.4rem; letter-spacing: 2px; }
        .office-label { font-size: 0.85rem; text-transform: uppercase; color: var(--text-muted); letter-spacing: 1px; }

        .hero {
            padding: 120px 10%;
            text-align: center;
            background: linear-gradient(rgba(10,17,24,0.9), rgba(10,17,24,0.9)), 
				url('../images/systems-intralogistics.avif') center/cover;
        }

        .hero h1 { font-size: 2.8rem; color: #fff; margin-bottom: 25px; line-height: 1.2; }
        .hero p { font-size: 1.25rem; color: var(--text-muted); max-width: 1000px; margin: 0 auto 40px; }

		@media (max-width: 768px) {
            .hero h1 { font-size: 2rem; }
            header { flex-direction: column; gap: 10px; text-align: center; }
        }
		
        .btn {
            padding: 15px 35px;
            background: var(--accent-gold);
            color: #000;
            text-decoration: none;
            font-weight: bold;
			border-radius: 2px;/*менее скругленные для капса*/
            text-transform: uppercase;/*все буквы капсом*/
            letter-spacing: 1px;/*дополнительный воздух между буквами для капса*/ 
			display: inline-block;
            transition: 0.3s;
        }

        .btn:hover { background: #d4b475; transform: translateY(-2px); }

        section { padding: 80px 80px; }
        h2 { color: var(--accent-gold); text-align: center; margin-bottom: 50px; text-transform: uppercase; letter-spacing: 1.2px; }

        .grid {
            gap: 40px;
			display: flex;      /* Переключаемся на flex */
			flex-wrap: wrap;    /* Разрешаем перенос на новые строки */
			justify-content: center; /* КЛЮЧЕВОЙ МОМЕНТ: если карточка одна в ряду, она будет ПО ЦЕНТРУ */
			margin: 0 auto;
			max-width: 1920px;  /* Ограничиваем максимальную ширину */	
        }

        .card {
            background: var(--card-bg);
            padding: 40px;
			flex: 1 1 300px; /* flex-grow: 0 (разрешаем растягиваться), flex-shrink: 1 (разрешаем сжиматься), flex-basis: 300px (идеальный размер) */       
			max-width: 100%;/*400px; /* Ограничиваем максимальную ширину, чтобы на планшете одна карточка не растянулась на весь экран */ 
			min-width: 240px; /* Чтобы на совсем маленьких экранах не было микро-карточек */				
        }

        .card h3 { color: #fff; margin-top: 0; }

        .cta-block {
            background: #0d161f;
			border: 1px dashed var(--accent-gold);
            padding: 40px;
            text-align: center; 
			max-width: 1920px;   /*Ограничиваем максимальную ширину */			
			/* Добавляем это для центрирования самого блока */
			margin-left: auto;
			margin-right: auto;			
        }

        footer {
            background: #050a0f;
            padding: 60px 10% 30px;
            border-top: 1px solid #1a2a3a;
            font-size: 0.85rem;
            color: var(--text-muted);
        }

        .footer-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
            gap: 40px;
            margin-bottom: 40px;
        }

        .footer-bottom {
            border-top: 1px solid #1a2a3a;
            padding-top: 20px;
            display: flex;
            justify-content: space-between;
            flex-wrap: wrap;
			font-size: 0.75rem;
        }
		
		
		
		
		/* Контейнер для социальных ссылок */
		.social-links {
			margin: 15px 0; /* Отступы сверху и снизу */
			display: flex;
			flex-flow: row wrap;
			align-items: center;
			gap: 12px 8px;
		}

		.social-item {
			display: flex;
			align-items: center;
			gap: 8px;
			text-decoration: none;
			transition: all 0.2s ease;
			white-space: nowrap;
			color: #8899a6; /* Цвет как у остального текста в футере */
		}
		
		/* Создаем разделитель "|" через псевдоэлемент */
		.social-item:not(:last-child)::after {
			content: "|";
			margin-left: 2px;
			color: #1a2a3a; /* Цвет разделителя сделаем чуть ярче границ, но приглушенным */
			font-weight: normal;
			cursor: default;
		}

		.social-item:hover {
			color: #fff; /* Высветление при наведении */
			transform: translateY(-1px); /* Легкий эффект приподнимания */
		}

		.social-item i {
			font-size: 1.1rem;
			width: 20px;
			text-align: center;
		}

		.social-item a {
			color: inherit;
			text-decoration: none;
			font-weight: 500;
		}
		
		/* Стиль ссылки разработчика */
		.developer-link {
			text-decoration: none;
			color: inherit; /* Берет цвет #8899a6 от футера */
			transition: all 0.2s ease;
			display: inline-flex;
			align-items: center;
			gap: 6px; /* Отступ между текстом и иконкой */
		}

		/* Эффект при наведении на ссылку разработчика */
		.developer-link:hover {
			color: #fff;
			transform: translateY(-1px);
		}

		/* Размер иконки гиперссылки в ссылке разработчика*/
		.developer-link i {
			font-size: 0.7rem; /* Делаем её маленькой и аккуратной */
			opacity: 0.8;
		}
		
		/* Стили для ссылки-логотипа */
		.logo-link {
			text-decoration: none; /* Убираем подчеркивание */
			color: #fff; /* Основной цвет логотипа */
			transition: opacity 0.3s ease; /* Плавное изменение прозрачности */
		}

		.logo-link:hover {
			opacity: 0.8; /* Легкое высветление при наведении */
		}

		.logo span {
			transition: color 0.3s ease;
			font-weight: 300; 
			color: var(--text-muted);
		}

		.logo-link:hover span {
			color: #fff !important; /* При наведении серая часть тоже становится ярче */
		}
		
		
		
		
		

		/* --- Набор стилей для модального окна --- */
		
		/* Глобальное правило для корректного расчета размеров */
		* {
			box-sizing: border-box;
		}
		
		/* Фоновая подложка окна*/
		.modal-overlay {
			display: none;
			position: fixed;
			top: 0; left: 0; width: 100%; height: 100%;
			background: rgba(5, 10, 15, 0.9);
			backdrop-filter: blur(5px);
			z-index: 1000;
		}

		/* Контейнер окна */
		.modal-content {
			position: relative;
			background: #0d161f;
			margin: 5% auto;
			padding: 40px;
			width: 95%;
			max-width: 800px;
			border: 1px solid #1a2a3a;
			color: #fff;
			border-radius: 8px;
			max-height: 90vh;  /* Чтобы окно не было длиннее экрана */
			overflow-y: auto;  /* Прокрутка внутри окна, если контент длинный */
		}

		/* Сетка: форма + контакты */
		.modal-grid {
			display: grid;
			grid-template-columns: 1.5fr 1fr;
			gap: 40px;
		}

		@media (max-width: 768px) {
			.modal-content {
				padding: 30px 15px 20px; /* Компактные отступы */
				margin: 5% auto;
			}
			
			.modal-grid {
				grid-template-columns: 1fr; /* Колонки встают друг под друга */
				gap: 30px;
			}

			.modal-info {
				padding-left: 0; /* Убираем те 12px на мобильных, чтобы не косило */
				border-top: 1px solid #1a2a3a; /* Визуально отделяем контакты */
				padding-top: 20px;
			}
			
			.modal-form input, .modal-form textarea {
				font-size: 16px; /* Предотвращает авто-зум на iPhone при фокусе */
			}
		}

		/* Поля ввода */
		.modal-form input, .modal-form textarea {
			width: 100%;
			padding: 12px;
			margin-bottom: 15px;
			background: #050a0f;
			border: 1px solid #1a2a3a;
			color: #fff;
			border-radius: 4px;
		}

		.close-modal {
			position: absolute;
			right: 20px; top: 10px;
			font-size: 30px; cursor: pointer; color: #8899a6;
		}
		
		/* Правая часть модального окна: контакты */
		.modal-info {
			padding-left: 24px; /* Тот самый отступ вправо */
		}

		/* На мобильных устройствах (до 768px) отступ лучше убрать, 
		   так как колонки встают друг под друга */
		@media (max-width: 768px) {
			.modal-info {
				padding-left: 0;
				margin-top: 20px; /* Добавим отступ сверху для разделения блоков на мобилках */
			}
		}
		
		/* Кнопка внутри модальной формы */
		.modal-form .btn {
			cursor: pointer;      /* Меняет курсор на "палец" */
			border: none;         /* Убирает стандартную рамку кнопки */
			width: 100%;          /* Растягиваем кнопку на всю ширину формы для удобства */
			display: block;
			text-align: center;
			transition: all 0.3s ease;
		}

		.modal-form .btn:hover {
			filter: brightness(1.1); /* Легкое высветление при наведении */
			box-shadow: 0 4px 15px rgba(197, 160, 89, 0.3); /* Золотистое свечение */
		}

		.modal-form .btn:active {
			transform: scale(0.98); /* Эффект нажатия (кнопка чуть вдавливается) */
		}
		
		.close-modal {
			cursor: pointer; /* Делает крестик кликабельным визуально */
		}
		
		.legal-links a {
            display: block;
            color: #888;
            margin-bottom: 8px;
            text-decoration: underline;
        }
        .legal-links a:hover { color: var(--accent-gold); }
		
		
		/* Запрет выделения по умолчанию */
		body {
		  -webkit-user-select: none; /* Chrome, Safari */
		  -moz-user-select: none;    /* Firefox */
		  -ms-user-select: none;     /* Edge */
		  user-select: none;
		}

		/* Разрешение выделения в футере */
		footer,
		footer * {
		  -webkit-user-select: text;
		  -moz-user-select: text;
		  -ms-user-select: text;
		  user-select: text;
		}
		
		
		
		
		
		
		
		
		/* --- Дополнительная мобильная адаптивность --- */
		
		h1, h2, h3 {

			word-wrap: break-word; /* Предотвращает вылет длинных слов */
		}
	
		.hero h1 {			
			font-size: clamp(1.3rem, 5vw, 2.8rem); /* Плавный размер */
		}

		h2 {
			font-size: clamp(1.1rem, 4vw, 1.5rem);
		}
		
		.card h3 {
			margin-top: 0;      /* Убираем браузерный отступ сверху */
			margin-bottom: 15px; /* Заменяем браузерный отступ на свой, более аккуратный */
			font-size: clamp(1.0rem, 3vw, 1.17rem); /* Делаем заголовок карточки адаптивным */
		}
		
		.card p {
			font-size: clamp(0.9rem, 3vw, 1.0rem); /* Делаем заголовок карточки адаптивным */
		}
		
		/* Исправление Hero и абзацев на телефонах*/
		@media (max-width: 480px) {
			.hero {
				padding: 80px 15px; 
			}
			
			.hero p {
				font-size: 1.1rem;
			}
			
			p {
				overflow-wrap: break-word;
				hyphens: auto; /* Перенос с дефисом (поможет с длинными словами) */	
			}
		}		

		/* Мобильная адаптация карточек и отступов */
		@media (max-width: 768px) {
			section {
				padding: 50px 20px; /* Уменьшаем боковые отступы с 10% до 20px */
			}

			.grid {
				display: flex; /* На мобильных flex часто надежнее для центрирования */
				flex-direction: column;
				gap: 20px;
			}

			.card {
				padding: 25px; /* Уменьшаем избыточные отступы внутри (было 40px) */
				margin: 0; /* Убираем возможные смещения */ 
				width: 100%; /* Гарантируем, что не вылезет за край */
			}
		}
		
		/* чтобы на ноутбуках (1366px - 1440px) карточки обязательно шли по две в ряд (сетка 2х2) */
		@media (max-width: 1200px) and (min-width: 768px) {
			.grid {
				gap: 30px;
			}
			.card {				
				flex: 0 0 calc(50% - 15px); /* Рассчитываем ширину так, чтобы влезало ровно две (с учетом gap) */				
			}
		}				