/*
 * Mobile fixes.
 */

/* Items added to the main menu only for the off-canvas mobile menu (desktop has the "Μαθήματα" category dropdown). */
.edublink-theme-header-nav .lh-mobile-only {
	display: none !important;
}

@media (max-width: 767px) {

	/* Header: the 250px logo pushed language / search / hamburger off screen. */
	header .site-branding {
		min-width: 0;
	}

	header .site-branding .site-main-logo img {
		width: 160px;
		max-width: 100%;
	}

	/* Off-canvas menu: keep the logo clear of the close button. */
	.edublink-mobile-menu-nav-wrapper .responsive-header-logo {
		min-width: 0;
		margin-right: 12px;
	}

	.edublink-mobile-menu-nav-wrapper .site-main-logo img {
		width: 150px;
		max-width: 100%;
	}

	/* iOS Safari zooms into fields with a font size below 16px. */
	input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="hidden"]),
	textarea,
	select {
		font-size: 16px !important;
	}

	/* Cart: the coupon field's 330px min-width pushed the cart table past the screen edge. */
	.woocommerce-cart table.cart td.actions .coupon .input-text {
		min-width: 0;
		width: 100%;
	}

	/* Buttons: fixed height + overflow:hidden cut off labels that wrap to a second line
	   (e.g. "Ζητήστε εταιρική προσφορά"). Same 50px look for one line, taller when it wraps. */
	.edublink-button-item,
	.edublink-button-item.edublink-button-size-medium {
		height: auto;
		min-height: 50px;
		line-height: 22px;
		padding-top: 14px;
		padding-bottom: 14px;
	}

	.edublink-button-item.edublink-button-size-small {
		height: auto;
		min-height: 40px;
		line-height: 22px;
		padding-top: 9px;
		padding-bottom: 9px;
	}

	/* Course cards: titles are clamped to 2 lines; allow 3 on narrow screens. */
	.edublink-single-course .content .title a {
		-webkit-line-clamp: 3;
	}

	/* Back-to-top button covered the newsletter button and the copyright. */
	body.lh-footer-in-view .devsblink-progress-parent.devsblink-backto-top-active {
		opacity: 0;
		visibility: hidden;
	}
}