/* ==========================================================================
   Adaptive / mobile styles for onlinecasinobookofra.de
   Подключается после /templates/skinned/style.css и /templates/bogumila/style.css
   и переопределяет их правила для экранов до 970px.
   Контент не меняется — только раскладка, меню и типографика.
   ========================================================================== */

/* --- Гамбургер: элементы скрыты на десктопе -------------------------------- */
.navToggle,
.navToggleLabel {
	display: none;
}

/* --- Базовые правки, безопасные для всех размеров ------------------------- */
img {
	height: auto;
}

/* ==========================================================================
   Планшет и меньше
   ========================================================================== */
@media (max-width: 970px) {

	html {
		-webkit-text-size-adjust: 100%;
	}

	body.fullWidthBackground.leftMenu.heroImage {
		min-width: 0;
		background-size: 600px 600px;
	}

	/* Контейнеры: убираем гигантские боковые отступы */
	.container,
	.fixedWidth .container,
	.hero .container,
	.heroImage.fullWidthBackground .hero .container {
		width: auto;
		max-width: 100%;
		padding-left: 20px;
		padding-right: 20px;
	}

	/* ---- Header ---------------------------------------------------------- */
	header .container,
	.fullWidthBackground header {
		padding-top: 14px;
		padding-bottom: 14px;
		background-image: none; /* фоновый логотип позиционирован под десктоп */
	}

	.leftMenu .siteLogo,
	.rightMenu .siteLogo {
		float: none;
		display: block;
	}

	.siteLogo {
		line-height: 1.2;
		font-size: 20px;
	}

	/* ---- Гамбургер-меню (CSS-only, checkbox hack) ---------------------- */
	.navToggleLabel {
		display: block;
		position: absolute;
		top: 12px;
		right: 20px;
		width: 44px;
		height: 44px;
		padding: 10px;
		cursor: pointer;
		z-index: 20;
	}

	.navToggleLabel span,
	.navToggleLabel span::before,
	.navToggleLabel span::after {
		content: "";
		display: block;
		position: absolute;
		width: 24px;
		height: 3px;
		background: #fff;
		border-radius: 2px;
		transition: transform .25s ease, opacity .25s ease;
	}

	.navToggleLabel span {
		top: 50%;
		left: 10px;
		transform: translateY(-50%);
	}

	.navToggleLabel span::before {
		top: -8px;
	}

	.navToggleLabel span::after {
		top: 8px;
	}

	/* Открытое состояние -> крестик */
	.navToggle:checked ~ .navToggleLabel span {
		background: transparent;
	}

	.navToggle:checked ~ .navToggleLabel span::before {
		top: 0;
		transform: rotate(45deg);
	}

	.navToggle:checked ~ .navToggleLabel span::after {
		top: 0;
		transform: rotate(-45deg);
	}

	/* Само меню */
	header .container {
		position: relative;
	}

	.leftMenu .menu,
	.rightMenu .menu {
		float: none;
	}

	nav.menu {
		display: none;
		margin-top: 12px;
		line-height: normal;
	}

	.navToggle:checked ~ nav.menu {
		display: block;
	}

	nav.menu a,
	.menu a {
		display: block;
		width: 100%;
		padding: 12px 14px;
		margin: 4px 0;
		border-radius: 6px;
		font-size: 15px;
		text-align: center;
	}

	/* ---- Hero ---------------------------------------------------------- */
	.hero .container {
		padding-top: 24px;
		padding-bottom: 24px;
	}

	.heroImage.fullWidthBackground .hero .container {
		padding: 24px 20px;
		border-top-width: 8px;
		border-bottom-width: 8px;
		background-position: center;
	}

	.hero h2.heroHeadline {
		margin-right: 0;
		font-size: 19px;
		line-height: 1.35;
	}

	/* Виджет одной комнаты */
	.oneRoom1 {
		width: auto !important;
		max-width: 100%;
		margin-left: 0 !important;
		margin-right: 0;
		padding: 16px;
	}

	.oneRoom1 table {
		width: 100%;
	}

	.oneRoom1 table td,
	.oneRoom1 table td:first-child {
		display: block;
		width: 100%;
		text-align: center;
		padding: 8px;
	}

	.oneRoom1 b {
		font-size: 34px;
		line-height: 1.3;
	}

	.oneRoom1 .button {
		width: 100%;
		margin-top: 16px;
		padding: 0 16px;
		font-size: 20px;
		line-height: 54px;
	}

	/* ---- Center / article -------------------------------------------- */
	.center .container {
		padding-left: 16px;
		padding-right: 16px;
	}

	article {
		padding-top: 14px;
		padding-bottom: 20px;
		line-height: 1.6;
	}

	article h1 {
		font-size: 24px;
		line-height: 1.3;
	}

	article h2 {
		font-size: 19px;
		line-height: 1.35;
	}

	/* Картинки внутри статьи: убираем float и фиксированную ширину */
	article .content img {
		float: none !important;
		display: block !important;
		width: auto !important;
		max-width: 100%;
		height: auto !important;
		margin: 16px auto !important;
	}

	/* Таблицы статьи прокручиваются, а не ломают вёрстку */
	article .content table {
		display: block;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	/* ---- Footer ------------------------------------------------------- */
	footer .container {
		padding-top: 16px;
		padding-bottom: 16px;
	}

	.noFooterMenu footer .menu {
		display: block;
	}

	footer nav.menu a {
		color: #fff;
	}
}

/* ==========================================================================
   Телефон
   ========================================================================== */
@media (max-width: 560px) {

	.siteLogo {
		font-size: 18px;
		padding-right: 50px; /* чтобы текст не заезжал под гамбургер */
	}

	.hero h2.heroHeadline {
		font-size: 17px;
	}

	.oneRoom1 b {
		font-size: 28px;
	}

	.oneRoom1 .button {
		font-size: 18px;
		line-height: 50px;
	}

	article h1 {
		font-size: 21px;
	}

	article h2 {
		font-size: 17px;
	}
}
