/**
 * Boostage Online — Adaptations tablette et ordinateur (approche « mobile d'abord »).
 * Points de rupture : 640 px (grand mobile), 768 px (tablette), 1024 px (petit écran), 1080 px (navigation complète).
 */

@media (min-width: 768px) {
	.header-account {
		display: inline-flex;
	}

	.bo-catalog__toolbar {
		align-items: end;
		grid-template-columns: minmax(0, 1.2fr) minmax(0, 2fr);
		padding: var(--bo-space-5);
	}

	/* Sans JavaScript, le bouton « Appliquer » prend sa propre colonne au lieu de casser l'alignement. */
	.bo-catalog__toolbar:not(.is-enhanced) {
		grid-template-columns: minmax(0, 1.2fr) minmax(0, 2fr) auto;
	}

	.bo-catalog__toolbar:not(.is-enhanced) .bo-catalog__submit {
		grid-column: 3;
	}

	.bo-catalog__search {
		align-self: end;
	}

	.bo-faq-preview {
		grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
	}

	.bo-faq-preview__intro {
		position: sticky;
		top: calc(var(--bo-header-height) + 2rem);
		align-self: start;
	}
}

@media (min-width: 1024px) {
	.bo-hero__inner {
		grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
	}

	.bo-cta {
		grid-template-columns: minmax(0, 1.4fr) auto;
	}

	.bo-cta__actions {
		align-items: flex-end;
	}

	.bo-cta__buttons {
		justify-content: flex-end;
	}

	.bo-with-sidebar {
		grid-template-columns: 260px minmax(0, 1fr);
	}

	.bo-with-sidebar > .bo-sidebar {
		max-height: calc(100vh - var(--bo-header-height) - 3rem);
		overflow-y: auto;
		position: sticky;
		top: calc(var(--bo-header-height) + 1.5rem);
	}

	.bo-contact {
		grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
	}

	.bo-support {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr);
	}

	.bo-support__form {
		align-self: start;
	}


	.bo-product-hero__grid {
		gap: var(--bo-space-16);
		grid-template-columns: minmax(0, 1fr) 400px;
	}

	.bo-product-nav__cta {
		display: inline-flex;
	}

	.bo-product-body {
		gap: var(--bo-space-16);
		grid-template-columns: minmax(0, 1fr) 300px;
	}

	.bo-product-aside {
		display: block;
	}

	.bo-product-summary {
		max-height: calc(100vh - var(--bo-header-height) - 100px);
		overflow-y: auto;
		position: sticky;
		top: calc(var(--bo-header-height) + 80px);
	}

}

@media (min-width: 1080px) {
	.primary-nav {
		display: block;
		margin-inline: auto;
	}

	.site-branding {
		margin-right: 0;
	}

	.header-lang {
		display: block;
		margin-left: var(--bo-space-1);
	}

	.menu-toggle {
		display: none;
	}

}

/* Petits écrans : ajustements fins */
@media (max-width: 479px) {
	.bo-hero__actions .bo-btn,
	.bo-cta__actions .bo-btn,
	.bo-btn--block {
		white-space: normal;
		width: 100%;
	}

	.bo-support-box {
		flex-direction: column;
	}

	.bo-search-form {
		flex-direction: column;
	}

	.woocommerce .woocommerce-message .button,
	.woocommerce .woocommerce-info .button {
		width: 100%;
	}
}

/* Impression : contenu seul */
@media print {
	.site-header,
	.site-footer,
	.mobile-panel,
	.bo-search-dialog,
	.bo-product-nav,
	.bo-catalog__toolbar,
	.bo-toc,
	.bo-buybar,
	.bo-lang {
		display: none !important;
	}

	.bo-reveal {
		opacity: 1 !important;
		transform: none !important;
	}

	a[href^="http"]:not(.bo-btn)::after {
		content: " (" attr(href) ")";
		font-size: 0.85em;
	}

	body {
		background: var(--bo-white);
		color: #000000;
	}

	.bo-dark {
		background: #FFFFFF !important;
		color: #000000 !important;
		--bo-heading: #000000;
	}
}

/* Catalogue : champ de recherche et bouton Filtres sur une seule ligne, même sur petit écran */
@media (max-width: 479px) {
	.bo-catalog__toolbar .bo-catalog__search {
		flex-direction: row;
	}
}
