/* ===================================================================
   RESPONSIVE STYLES
   Version: 1.0.0
   =================================================================== */

/* ===================================================================
   TABLET (max-width: 1024px)
   =================================================================== */
@media only screen and (max-width: 1024px) {
	/* Search magnifier */
	div.asl_w .probox .promagnifier {
		width: 82px !important;
	}

	/* Navigation */
	.elementor-widget-n-menu.e-n-menu-tablet .e-n-menu-toggle {
		background: transparent !important;
	}

	/* Content warnings */
	.acf-caution-wrapper {
		flex-wrap: nowrap;
	}
	.caution-tooltip {
		min-width: 180px;
		width: 180px;
	}
	.main-caution-div:nth-child(3) .caution-tooltip {
		left: -70px;
	}
	.main-caution-div:nth-child(4) .caution-tooltip {
		left: -130px;
	}

	/* Product grid */
	ul.products.columns-4 {
		flex-wrap: wrap;
	}
	ul.products.columns-4 li {
		width: 33% !important;
	}
}

/* ===================================================================
   SMALL TABLET (max-width: 768px)
   =================================================================== */
@media only screen and (max-width: 768px) {
	/* Login form */
	body:not(.logged-in) #customer_login .col-1 {
		width: 100% !important;
	}

	/* Translator info */
	.translator-label,
	.translator-names {
		font-size: 16px;
		line-height: 1.3;
	}
}

/* ===================================================================
   MOBILE (max-width: 767px)
   =================================================================== */
@media only screen and (max-width: 767px) {
	/* ===============================================================
	   GLOBAL MOBILE SETTINGS
	   =============================================================== */
	* {
		-webkit-tap-highlight-color: rgba(255, 255, 255, 0) !important;
		-webkit-focus-ring-color: rgba(255, 255, 255, 0) !important;
		outline: none !important;
	}

	/* ===============================================================
	   NAVIGATION & MENU
	   =============================================================== */
	#menubar-923 .e-n-menu-item {
		flex-direction: column;
	}

	.mega-menu-mobile .e-n-menu-content.e-active {
		position: relative !important;
		left: 0;
		right: 0;
	}

	#e-n-menu-content-9232 {
		height: auto !important;
		overflow-y: auto !important;
		overflow-x: hidden;
		-webkit-overflow-scrolling: touch;
	}

	#e-n-menu-content-9232 .e-n-menu-content,
	#e-n-menu-content-9232 .e-n-menu-wrapper {
		overflow-y: auto;
		overflow-x: hidden;
	}

	#e-n-menu-content-9232 .e-n-menu-content .e-con,
	#e-n-menu-content-9232 .e-n-menu-content .e-con-inner {
		max-height: none;
		overflow: visible;
	}

	/* ===============================================================
	   CART & CHECKOUT
	   =============================================================== */
	.menu-cart-icon-design .elementor-button-icon-qty {
		height: 35px !important;
		width: 35px !important;
		top: -19px !important;
	}

	body:not(.logged-in) .menu-cart-icon-design .elementor-button-icon-qty {
		top: -24px !important;
	}

	.mobile-main-container .menu-cart-icon-design .elementor-button-icon-qty {
		height: 39px !important;
		width: 39px !important;
	}

	.elementor-menu-cart__main {
		width: 100%;
	}

	.elementor-menu-cart__container {
		pointer-events: auto !important;
	}

	.elementor-menu-cart__product .elementor-menu-cart__product-remove.product-remove {
		right: 7px;
		top: 16px;
	}

	.elementor-widget-woocommerce-checkout-page .woocommerce-checkout .woocommerce-billing-fields h3,
	.elementor-widget-woocommerce-checkout-page .woocommerce #order_review_heading,
	.elementor-widget-woocommerce-checkout-page .woocommerce h3 {
		text-align: center !important;
	}

	/* ===============================================================
	   MY ACCOUNT & LOGIN
	   =============================================================== */
	.user-name-info .elementor-heading-title {
		height: 24px !important;
	}

	.woocommerce-MyAccount-content button.button,
	.woocommerce table.my_account_orders .button,
	.woocommerce-MyAccount-content .button,
	#customer_login form .woocommerce-button,
	.woocommerce-ResetPassword.lost_reset_password .woocommerce-Button {
		width: 100% !important;
	}

	#customer_login .col-1 {
		width: 100% !important;
	}

	#customer_login h2 {
		text-align: center;
	}

	/* ===============================================================
	   PRODUCTS & CATALOG
	   =============================================================== */
	ul.products.columns-4 {
		flex-wrap: wrap;
	}

	ul.products.columns-4 li {
		width: 49% !important;
	}

	.acf-book-card {
		overflow: hidden;
	}

	.pagination-loop .e-loop__load-more .elementor-button-icon:before {
		top: 7px;
	}

	/* ===============================================================
	   AUTHORS & TABS
	   =============================================================== */
	.fix-pos-auteurs .e-n-tabs-heading {
		display: flex;
		flex-wrap: wrap;
		gap: 10px 18px;
	}

	.fix-pos-auteurs .authors-under {
		order: 999;
		flex-basis: 100%;
		display: inline-flex;
		align-items: center;
		gap: 8px;
		font-family: "Work Sans", Sans-serif;
		font-size: 18px;
		font-weight: 700;
		line-height: 18px;
		fill: var(--e-global-color-accent);
		color: var(--e-global-color-accent);
		text-decoration: none;
		padding-top: 6px;
		justify-content: center;
		margin-left: -20px;
	}

	.fix-pos-auteurs .authors-under:before {
		content: "";
		background-image: url(/wp-content/uploads/2025/09/Frame-3.svg);
		width: 20px;
		height: 23px;
		position: absolute;
		margin-left: 209px;
		background-repeat: no-repeat;
	}

	.fix-pos-auteurs .e-n-tab-title {
		padding: 0;
		background: none;
		border: 0;
	}

	.auteurs-alphabetical-list {
		height: auto;
	}

	.auteurs-alphabetical-list .letter-section {
		flex: 0 0 90%;
	}

	.tab-title .e-n-tabs-heading {
		display: flex !important;
		flex-wrap: wrap !important;
		-webkit-overflow-scrolling: touch;
		gap: 10px;
		justify-content: center !important;
	}

	.tab-title .e-n-tab-title {
		flex: 0 0 auto !important;
		white-space: wrap !important;
	}

	.tab-title .elementor-widget-n-tabs>.e-n-tabs>.e-n-tabs-heading> :is(.e-n-tab-title > .e-n-tab-title-text, .e-n-tab-title) {
		margin: 0;
	}

	.tab-style .e-n-tabs-heading button {
		padding: 10px 5px;
	}

	/* ===============================================================
	   CONTENT WARNINGS
	   =============================================================== */
	.caution-tooltip {
		min-width: 180px;
		width: 180px;
	}

	.main-caution-div:nth-child(3) .caution-tooltip {
		left: 0;
	}

	.main-caution-div:nth-child(4) .caution-tooltip {
		left: -50px;
	}

	/* ===============================================================
	   FORMS & CONTACT
	   =============================================================== */
	.footer-form .elementor-field-type-email {
		width: 100% !important;
	}

	.footer-form .elementor-button {
		width: 100%;
		height: 70px;
	}

	.footer-form .elementor-form input {
		height: 70px !important;
	}

	.form-section .elementor-field-type-checkbox .elementor-field-option {
		justify-content: flex-start;
	}

	.icon-style .elementor-form .elementor-button {
		max-width: 100% !important;
	}

	.contact-form .e-n-tabs-heading button {
		max-width: 100% !important;
		min-width: 100% !important;
	}

	.sib-main-wrapper {
		width: 100% !important;
	}

	/* ===============================================================
	   POPUPS & MODALS
	   =============================================================== */
	.elementor-popup-modal .dialog-close-button {
		z-index: 1 !important;
	}

	.elementor-popup-modal .dialog-widget-content {
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
	}

	/* ===============================================================
	   CAROUSEL & SWIPER
	   =============================================================== */
	.carousel-section .elementor-element-48142e3 .swiper-pagination {
		z-index: 1;
	}

	/* ===============================================================
	   ORDER CONFIRMATION
	   =============================================================== */
	.order-info-page .continue-shopping-btn .elementor-button {
		width: 100%;
	}

	/* ===============================================================
	   SPECIFIC PAGES & ELEMENTS
	   =============================================================== */
	body.home header.elementor-4056 {
		margin-bottom: 0;
	}

	.elementor-element-45c0606 .elementor-button-icon {
		margin-top: 5px;
	}

	.faq-text .elementor-widget-text-editor p {
		font-weight: 700;
	}
}

/* ===================================================================
   EXTRA SMALL MOBILE (max-width: 480px)
   =================================================================== */
@media screen and (max-width: 480px) {
	.translator-label,
	.translator-names {
		font-size: 14px;
		line-height: 1.3;
	}
}