/*
 * Mobiilikorjaukset 20.10.2026 (Kansleri, SEO-auditoinnin jatko). Vain alle 768 px leveät näytöt.
 * Ladataan functions.php:ssä lapsiteeman tyylien jälkeen. Erillinen tiedosto, jotta style.scss-käännös ei ylikirjoita näitä.
 * 1. Valikko näkyy otsakkeessa tavallisena rivittyvänä valikkona (ei hampurilaista): logo omalla rivillään, alavalikot aukeavat paneelina.
 * 2. Tekstit, otsikot, ikonit ja painikkeet vasemmalle: keskitetty pitkä teksti on puhelimessa raskas lukea.
 * 3. Asettelu: pitkät painikkeet rivittyvät (menivät näytön yli), liian suuret otsikot ja tyhjät välit pienemmiksi.
 */
@media screen and (max-width: 767px) {
	/* 1. Valikko: tavallinen valikko otsakkeessa, ei hampurilaista. Logo omalla rivillään ja valikon kohdat sen alla rivittyen. */
	.site-header .sp-header-row {
		flex-wrap: wrap;
		align-items: flex-start;
		padding-bottom: 4px;
	}

	.site-header .sp-header-row .sp-header-span-2:first-child {
		flex: 1 1 100%;
		max-width: none;
		margin: 0;
	}

	.site-header .sp-header-row .sp-header-span-8 {
		flex: 1 1 100%;
		width: 100%;
		margin: 0;
	}

	.site-header .site-branding {
		width: auto;
		float: none;
		margin: 0;
	}

	.site-header button.menu-toggle {
		display: none !important;
	}

	.site-header .main-navigation {
		position: relative;
		width: 100%;
		margin: 0;
	}

	.site-header .main-navigation .handheld-navigation {
		display: block !important;
		max-height: none !important;
		overflow: visible !important;
		clear: both;
		padding: 0;
		background: transparent;
	}

	.site-header .handheld-navigation ul.menu {
		display: flex;
		flex-wrap: wrap;
		gap: 0 16px;
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.site-header .handheld-navigation ul.menu > li {
		display: flex;
		align-items: center;
		position: static;
		border: 0;
	}

	.site-header .handheld-navigation ul.menu > li > a {
		display: block;
		padding: 9px 0;
		font-size: 15px;
		line-height: 1.3;
		text-align: left;
	}

	.site-header .handheld-navigation .dropdown-toggle {
		position: static;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 28px;
		height: 36px;
		margin: 0 0 0 2px;
		padding: 0;
		border: 0;
		background: transparent;
		color: #333;
	}

	/* Alavalikko aukeaa koko leveyden paneelina valikkorivin alle */
	.site-header .handheld-navigation ul.menu .sub-menu {
		position: absolute;
		top: 100%;
		left: -15px;
		right: -15px;
		z-index: 9999;
		margin: 0;
		padding: 4px 15px 12px;
		background: #fff;
		border-top: 1px solid #e3e6ea;
		box-shadow: 0 14px 24px rgba(0, 0, 0, 0.14);
	}

	.site-header .handheld-navigation ul.menu .sub-menu.toggled-on {
		max-height: 80vh;
		overflow-y: auto;
	}

	.site-header .handheld-navigation ul.menu .sub-menu li a {
		display: block;
		padding: 11px 0;
		font-size: 16px;
		border-bottom: 1px solid #edf0f3;
	}

	/* Ei sinistä reunusta napautuksen jälkeen. Näppäimistöllä liikkuva näkee edelleen ohuen tumman kehyksen. */
	.site-header .handheld-navigation a,
	.site-header .handheld-navigation .dropdown-toggle {
		-webkit-tap-highlight-color: transparent;
	}

	.site-header .handheld-navigation a:focus,
	.site-header .handheld-navigation .dropdown-toggle:focus {
		outline: none;
		box-shadow: none;
	}

	.site-header .handheld-navigation a:focus-visible,
	.site-header .handheld-navigation .dropdown-toggle:focus-visible {
		outline: 2px solid #333;
		outline-offset: -2px;
	}

	/* 2. Vasen tasaus */
	.elementor .elementor-widget-text-editor,
	.elementor .elementor-widget-text-editor :is(p, h1, h2, h3, h4, h5, h6, li, div, blockquote),
	.elementor .elementor-widget-html :is(p, h1, h2, h3, h4, h5, h6, div),
	.elementor .elementor-widget-heading,
	.elementor .elementor-widget-heading .elementor-heading-title,
	.elementor .elementor-widget-icon-box .elementor-icon-box-wrapper,
	.elementor .elementor-widget-image-box .elementor-image-box-wrapper,
	.elementor .elementor-widget-icon .elementor-icon-wrapper,
	.elementor .elementor-widget-image,
	.elementor .elementor-widget-button,
	.elementor .elementor-widget-button .elementor-button-wrapper,
	.elementor .elementor-widget-testimonial .elementor-testimonial-wrapper,
	.elementor .elementor-widget-testimonial .elementor-testimonial-content,
	.elementor .elementor-widget-icon-list,
	.elementor .elementor-widget-theme-post-content,
	.entry-content .elementor-widget-container {
		text-align: left !important;
	}

	.elementor .elementor-widget-icon-list .elementor-icon-list-item,
	.elementor .elementor-widget-icon-list .elementor-icon-list-item > a {
		justify-content: flex-start !important;
		text-align: left !important;
	}

	.elementor .elementor-widget-icon-box .elementor-icon-box-wrapper {
		align-items: flex-start !important;
	}

	.elementor .elementor-widget-testimonial .elementor-testimonial-meta,
	.elementor .elementor-widget-testimonial .elementor-testimonial-meta-inner {
		justify-content: flex-start !important;
		text-align: left !important;
	}

	/* Verkkokaupan tuotekortit ja tuoteluettelot */
	.woocommerce ul.products li.product,
	.woocommerce-page ul.products li.product,
	ul.products li.product,
	ul.products li.product .woocommerce-loop-product__title,
	ul.products li.product .woocommerce-loop-category__title,
	ul.products li.product .price {
		text-align: left !important;
	}

	/* 3. Asettelu */
	.elementor .elementor-button {
		max-width: 100%;
		white-space: normal;
		text-align: left;
	}

	.elementor .elementor-button .elementor-button-content-wrapper {
		justify-content: flex-start;
	}

	.elementor .elementor-button .elementor-button-text {
		text-align: left;
		overflow-wrap: anywhere;
	}

	.site-content .site-main {
		margin-top: 28px;
	}

	.site-content .entry-title,
	.woocommerce-products-header__title.page-title,
	h1.page-title {
		font-size: 28px;
	}

	.elementor .elementor-element.elementor-element-a61e2ce .elementor-heading-title {
		font-size: 30px !important;
	}

	.elementor-widget-spacer .elementor-spacer-inner {
		max-height: 40px;
	}

	.elementor .elementor-element.elementor-element-5e3d716,
	.elementor .elementor-element.elementor-element-424d512,
	.elementor .elementor-element.elementor-element-424d512 > .elementor-widget-wrap,
	.elementor .elementor-element.elementor-element-424d512 > .elementor-element-populated {
		margin-top: 40px !important;
		margin-bottom: 40px !important;
	}

	.elementor .elementor-element.elementor-element-d2dfea2 {
		padding-top: 40px !important;
		padding-bottom: 40px !important;
	}
}
