/*
 * Mobile overrides for the Fassnacht 2026 theme.
 * Loaded after style.css from header.php.
 * All responsive behavior lives here — style.css is left untouched.
 */

/* Hamburger button and mobile nav drawer: hidden on desktop. */
.hamburger,
#mobile-nav,
.mobile-action-bar {
	display: none;
}

/* ---------- Mobile-only sticky action bar (phones, not tablets) ---------- */
@media (max-width: 600px) {

	.mobile-action-bar {
		display: flex;
		position: fixed;
		bottom: 0;
		left: 0;
		right: 0;
		gap: 8px;
		padding: 8px;
		background: #fff;
		box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.18);
		z-index: 999;
		box-sizing: border-box;
	}

	.mobile-action-bar__btn {
		flex: 1 1 50%;
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 0.4em;
		padding: 12px 8px;
		background: #930064;
		color: #fff;
		font-size: 1.15em;
		font-weight: bold;
		text-decoration: none;
		border-radius: 4px;
		box-sizing: border-box;
	}

	.mobile-action-bar__icon {
		width: 1em;
		height: 1em;
		fill: currentColor;
	}

	/* Reserve space so page content isn't hidden behind the bar. */
	body {
		padding-bottom: 72px;
	}
}


@media (max-width: 768px) {

	/* Hide the right-hand link list completely on mobile. */
	.linkliste_rechts {
		display: none;
	}

	/* Top header bar: shrink padding so the title fits narrow screens. */
	#startcontainer_oben {
		padding-left: 20px;
		padding-top: 20px;
		height: auto;
		overflow: hidden;
		margin: 0;
	}

	.bildcontainer_logo {
		width: 64px;
		height: auto;
	}

	.bildcontainer_logo img {
		width: 64px;
		height: auto;
	}

	.Leben_ist_Bewegung {
		margin: 10px 0 0 20px;
		padding: 0;
		width: auto;
		height: auto;
		font-size: 1.4em;
		letter-spacing: 2px;
	}

	.ellen_fassnacht_praxis_schriftzug {
		float: none;
		clear: both;
		margin: 40px 0 0 0;
		padding: 5px 12px;
		width: auto;
		height: auto;
		font-size: 1.2em;
		
		text-align: left;
		display: inline-block;
		position: relative;
		left: -6em;
	}

	/* Decorative top-right images don't fit the narrow layout. */
	.bildcontainer_tulpe_oben,
	.bildcontainer_ellenfoto_oben,
	.bildcontainer_rueckenbalance_oben {
		display: none;
	}

	/* Body container: drop the wide left padding meant for the desktop sidebar. */
	#startcontainer_unten {
		padding-left: 0;
		min-height: auto;
		margin: 0;
	}

	/* Main content frame: full width, edge-to-edge, no border/padding. */
	.textrahmen,
	.textrahmen_ausbildung {
		position: static;
		width: auto;
		max-width: 100%;
		margin: 20px 0;
		margin-bottom: 12em;
		padding: 0 1.5em;
		border: 0;
		background: transparent;
		box-sizing: border-box;
	}

	.textrahmen img,
	.textrahmen_ausbildung img {
		max-width: 100%;
		height: auto;
	}

	/* ---------- Hamburger button (top-right, fixed) ---------- */
	.hamburger {
		display: block;
		position: fixed;
		top: 12px;
		right: 12px;
		z-index: 1001;
		width: 44px;
		height: 44px;
		padding: 10px;
		background: rgba(0, 0, 0, 0.55);
		border: 1px solid rgba(255, 255, 255, 0.6);
		border-radius: 4px;
		cursor: pointer;
		box-sizing: border-box;
	}

	.hamburger span {
		display: block;
		width: 100%;
		height: 3px;
		margin: 4px 0;
		background: #fff;
		border-radius: 2px;
	}

	.hamburger span:first-child {
		margin-top: 0;
	}

	.hamburger span:last-child {
		margin-bottom: 0;
	}

	/* ---------- Mobile nav drawer (slides in from the right) ---------- */
	#mobile-nav {
		display: block;
		position: fixed;
		top: 0;
		right: 0;
		width: 80%;
		max-width: 320px;
		height: 100vh;
		padding: 70px 20px 20px;
		background: #930064;
		color: #fff;
		overflow-y: auto;
		transform: translateX(100%);
		transition: transform 0.3s ease;
		z-index: 1000;
		box-sizing: border-box;
	}

	body.nav-open #mobile-nav {
		transform: translateX(0);
	}

	#mobile-nav a {
		display: block;
		padding: 10px 0;
		color: #fff;
		font-family: 'Lato', Arial, Helvetica, sans-serif;
		font-size: 1.05em;
		border-bottom: 1px solid rgba(255, 255, 255, 0.25);
	}

	#mobile-nav a:last-child {
		border-bottom: none;
	}

	/* Two-column check list collapses to single column on narrow screens. */
	ul.check {
		column-count: 1;
	}
}
