/*
 * Česnako magija — Shop/archive/single-product visual alignment with the
 * Home page's Essential Addons "Product Grid" widget.
 */

:root {
	--cm-gold: #D09A40;
	--cm-gold-accent: #DCA54A;
	--cm-dark: #222222;
	--cm-heading: #0F172A;
	--cm-title: #272727;
	--cm-text: #4A4A4A;
	--cm-border: #eee;
	--cm-sale: #ff2a13;
	--cm-max-width: 1200px;
}

/* ==========================================================================
   0. Header cart price — prevents "0.00 €" from wrapping into a vertical
      stack of digits when the header's center menu squeezes the side columns.
   ========================================================================== */
.ast-site-header-cart .ast-woo-header-cart-info-wrap,
.ast-site-header-cart .cart-container {
	white-space: nowrap;
}

/* ==========================================================================
   1. Shop / category / search archive grid — match Home product grid
   ========================================================================== */

.woocommerce ul.products li.product {
	background-color: #fff;
	border: 1px solid var(--cm-border);
	border-radius: 0;
	padding: 0 0 20px;
	text-align: center;
	transition: border-color 0.2s ease;
	/* min-width:0: CSS grid items default to min-width:auto, letting long
	   titles/images overflow the grid track on narrow screens. */
	min-width: 0;
	/* Flex column + margin-top:auto on the button (below) pins every card's
	   button to the same bottom edge regardless of how many lines the title wraps to. */
	display: flex;
	flex-direction: column;
}

.woocommerce ul.products:not(.elementor-grid) {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	min-width: 0;
}

.woocommerce ul.products li.product:hover {
	border-color: #ddd;
}

.woocommerce ul.products li.product a img {
	width: 100%;
	height: auto;
	display: block;
	aspect-ratio: 1 / 1;
	object-fit: contain;
	background: #fff;
	border-radius: 0;
	margin: 0 0 0;
}

.woocommerce ul.products li.product .ast-woo-product-category {
	font-size: 12px;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--cm-gold);
	margin: 16px 0 4px;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-size: 16px;
	font-weight: 500;
	line-height: 25px;
	color: var(--cm-title);
	text-transform: none;
	margin: 8px 0 8px;
	padding: 0 16px;
	overflow-wrap: break-word;
	word-break: break-word;
	min-height: 50px;
	display: flex;
	align-items: center;
	justify-content: center;
}

/* Shared by Shop/category archives and Single Product's Related/upsells grid. */
.woocommerce ul.products li.product .price {
	font-size: 20px;
	color: var(--cm-title);
	margin-bottom: 14px;
	display: block;
}

.woocommerce ul.products li.product .price ins {
	background: transparent;
	color: var(--cm-sale);
	font-weight: 600;
	text-decoration: none;
}

/* Home's EAEL Product Grid wraps price in .eael-product-price, not .price. */
.eael-product-grid .eael-product-wrap .eael-product-price {
	font-size: 20px;
}

.woocommerce ul.products li.product .star-rating {
	font-size: 14px;
	color: #f2b01e;
	margin: 0 auto 8px;
}

.woocommerce ul.products li.product .button.add_to_cart_button,
.woocommerce ul.products li.product .button {
	display: inline-block;
	width: calc(100% - 32px);
	margin: auto 16px 0; /* auto top-margin pins the button to the card's bottom edge */
	padding: 0;
	line-height: 40px;
	height: 40px;
	font-size: 13px;
	font-weight: 400;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	text-align: center;
	color: #fff;
	background-color: var(--cm-gold);
	border: none;
	border-radius: 0;
	box-shadow: none;
	transition: background-color 0.2s ease;
}

.woocommerce ul.products li.product .button.add_to_cart_button:hover,
.woocommerce ul.products li.product .button:hover {
	background-color: var(--cm-dark);
	color: #fff;
}

.woocommerce ul.products li.product .onsale {
	background-color: var(--cm-sale);
	color: #fff;
	font-size: 12px;
	font-weight: 600;
	text-transform: uppercase;
	border-radius: 0;
	min-height: auto;
	min-width: auto;
	line-height: 1;
	padding: 6px 10px;
	top: 12px;
	left: 12px;
}

.woocommerce ul.products:not(.elementor-grid) {
	gap: 25px 24px;
}

/* ==========================================================================
   2. Archive header UI — breadcrumb, title, count, sorting, pagination
   ========================================================================== */

.woocommerce-breadcrumb {
	color: var(--cm-text);
	font-size: 13px;
}

.woocommerce-breadcrumb a {
	color: var(--cm-text);
}

.woocommerce-breadcrumb a:hover {
	color: var(--cm-gold);
}

.ast-woocommerce-container .page-title,
.woocommerce-page .ast-archive-title {
	color: var(--cm-gold-accent);
}

.woocommerce-result-count {
	color: var(--cm-text);
	font-size: 14px;
}

/* result-count/sort-dropdown row uses float:left/right with no responsive stacking. */
@media (max-width: 600px) {
	.woocommerce-result-count,
	.woocommerce-ordering,
	.woocommerce-page .woocommerce-result-count,
	.woocommerce-page .woocommerce-ordering {
		float: none;
		display: block;
		width: 100%;
	}

	.woocommerce-ordering select.orderby {
		width: 100%;
		box-sizing: border-box;
	}
}

.woocommerce-ordering select.orderby {
	border: 1px solid var(--cm-border);
	border-radius: 0;
	color: var(--cm-title);
	font-size: 14px;
	padding: 8px 32px 8px 12px;
	background-color: #fff;
}

.woocommerce-ordering select.orderby:focus {
	border-color: var(--cm-gold);
	outline: none;
}

nav.woocommerce-pagination ul {
	border: none;
	gap: 6px;
}

nav.woocommerce-pagination ul li {
	border: none;
	margin: 0 3px;
}

nav.woocommerce-pagination ul li a,
nav.woocommerce-pagination ul li span {
	border: 1px solid var(--cm-border);
	border-radius: 0;
	color: var(--cm-title);
	min-width: 38px;
	height: 38px;
	line-height: 38px;
	padding: 0;
}

nav.woocommerce-pagination ul li a:hover,
nav.woocommerce-pagination ul li span.current {
	background-color: var(--cm-gold);
	border-color: var(--cm-gold);
	color: #fff;
}

.woocommerce-info,
.woocommerce-message,
.woocommerce-noreviews,
p.no-products-found,
.woocommerce-notice--no-products {
	border-top-color: var(--cm-gold);
	background-color: #faf7f0;
	color: var(--cm-title);
	border-radius: 0;
}

.term-description,
.woocommerce-products-header__description {
	color: var(--cm-text);
	max-width: 760px;
	margin: 0 auto 24px;
	text-align: center;
}

/* ==========================================================================
   3. Single Product page — tidy up default WooCommerce/Astra chrome.
      Scoped with .single-product throughout so nothing leaks onto archives.
   ========================================================================== */

.single-product div.product .product_title {
	margin-bottom: 20px;
}

.single-product div.product .woocommerce-tabs ul.tabs li {
	border-radius: 0;
}

.single-product div.product .woocommerce-tabs ul.tabs li a {
	color: var(--cm-text);
	font-weight: 500;
}

.single-product div.product .woocommerce-tabs ul.tabs li.active a {
	color: var(--cm-heading);
}

.single-product div.product .woocommerce-tabs ul.tabs li.active {
	border-bottom-color: var(--cm-gold);
}

.single-product div.product p.price,
.single-product div.product span.price {
	color: var(--cm-title);
	margin-bottom: 14px;
}

.single-product div.product .price ins {
	color: var(--cm-sale);
	text-decoration: none;
	background: transparent;
}

.single-product div.product form.cart .quantity .qty {
	border: 1px solid var(--cm-border);
	border-radius: 0;
	height: 46px;
}

.cesnakomagija-order-addons {
	margin: 4px 0 16px;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.cesnakomagija-order-addons-title {
	margin: 0 0 2px;
	font-size: 14px;
	font-weight: 600;
	color: var(--cm-heading);
}

.cesnakomagija-remove-addon {
	color: var(--cm-sale);
	font-size: 13px;
	text-decoration: underline;
}

.cesnakomagija-order-addon {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 15px;
	color: var(--cm-title);
	cursor: pointer;
}

.cesnakomagija-order-addon input[type="checkbox"] {
	accent-color: var(--cm-gold);
	width: 16px;
	height: 16px;
}

.single-product div.product .single_add_to_cart_button {
	background-color: var(--cm-gold);
	border-radius: 0;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	font-weight: 500;
	border: none;
	/* Matches the 46px quantity input height. Flexbox centers the label
	   reliably regardless of padding (plain line-height doesn't, since the
	   button's padding shrinks its real content box below 46px). */
	height: 46px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.single-product div.product .single_add_to_cart_button:hover {
	background-color: var(--cm-dark);
}

.single-product div.product .product_meta a {
	color: var(--cm-gold);
}

/* Description tab body copy constrained for readability; headings stay full-width. */
.single-product div.product .woocommerce-tabs #tab-description p,
.single-product div.product .woocommerce-tabs #tab-description ul,
.single-product div.product .woocommerce-tabs #tab-description ol {
	max-width: 800px;
}

.related.products > h2,
.upsells.products > h2 {
	font-size: 22px;
	color: var(--cm-heading);
	text-align: center;
}

.related.products ul.products li.product,
.upsells.products ul.products li.product {
	background-color: #fff;
	border: 1px solid var(--cm-border);
	border-radius: 0;
}

/* Astra's own Related/Upsell tablet/mobile column settings never apply here
   (their trigger class requires is_shop()/is_product_taxonomy()), so an
   unconditional Astra rule locks this to 3 columns below 921px, orphaning
   the 4th of 4 related products. !important beats that equal-specificity rule. */
@media (min-width: 545px) and (max-width: 921px) {
	.single-product .related.products ul.products,
	.single-product .upsells.products ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

/* ==========================================================================
   4. Product gallery — only the zoom magnifier trigger icon is hidden;
      the native lightbox stays functional.
   ========================================================================== */

.single-product .woocommerce-product-gallery__trigger {
	display: none !important;
}

/* ==========================================================================
   5. Kontaktai page — minimal, on-brand content page
   ========================================================================== */

.cesnakomagija-contact-page {
	max-width: 640px;
	margin: 0 auto;
	padding: 72px 24px 96px;
	text-align: center;
}

.cesnakomagija-contact-page h1 {
	font-size: 34px;
	color: var(--cm-heading);
	margin: 0 0 24px;
}

.cesnakomagija-contact-page p {
	font-size: 17px;
	line-height: 1.7;
	color: var(--cm-text);
	margin: 0 0 28px;
}

.cesnakomagija-contact-page .cesnakomagija-contact-email {
	display: inline-block;
	font-size: 19px;
	font-weight: 600;
	color: var(--cm-heading);
	text-decoration: none;
	border-bottom: 2px solid var(--cm-gold);
	padding-bottom: 4px;
	transition: color 0.2s ease;
}

.cesnakomagija-contact-page .cesnakomagija-contact-email:hover {
	color: var(--cm-gold);
}

/* ==========================================================================
   6. Header — compact 3-column layout for the tablet-landscape /
      small-laptop gap (923-1200px): [ logo ] [ nav, centered, wraps ] [ cart ].
      Astra's Header Builder has no separate "tablet" item layout, so this
      restyles the same desktop row instead of duplicating markup/JS.
      Selectors match Astra's own primary-header section classes.
   ========================================================================== */

@media (min-width: 923px) and (max-width: 1200px) {
	/* Forces auto-height so the header background reliably grows to fit a
	   wrapped nav on WooCommerce templates (which apply their own
	   single-row height/stretch rules by default). */
	.ast-primary-header-bar,
	.ast-primary-header-bar .ast-main-header-wrap,
	.ast-primary-header-bar .site-primary-header-wrap,
	#ast-desktop-header {
		height: auto !important;
		min-height: 0 !important;
		overflow: visible !important;
	}

	.ast-primary-header-bar .ast-builder-grid-row.ast-grid-center-col-layout {
		display: flex;
		flex-wrap: nowrap;
		align-items: center;
		column-gap: 16px;
		height: auto !important;
		min-height: 0 !important;
	}

	/* Collapse Astra's empty left/right spacer sections. */
	.ast-primary-header-bar .site-header-primary-section-left-center,
	.ast-primary-header-bar .site-header-primary-section-right-center {
		display: none;
	}

	.ast-primary-header-bar .site-header-primary-section-left,
	.ast-primary-header-bar .site-header-primary-section-right {
		flex: 0 0 auto;
		height: auto !important;
	}

	.ast-primary-header-bar .site-header-primary-section-center {
		flex: 1 1 auto;
		min-width: 0;
		height: auto !important;
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.ast-primary-header-bar .site-header-primary-section-center .ast-main-header-bar-alignment,
	.ast-primary-header-bar .main-header-bar-navigation,
	.ast-primary-header-bar .main-navigation {
		width: 100%;
	}

	.ast-primary-header-bar .main-header-bar-navigation {
		display: flex;
		justify-content: center;
	}
}

/* Wrapped-menu centering: kept in its own uncapped (923px+) block so it
   keeps working regardless of how many menu items push it to 2 lines --
   a no-op whenever the menu still fits on one line. */
@media (min-width: 923px) {
	.ast-primary-header-bar .main-header-menu {
		flex-wrap: wrap;
		justify-content: center;
		row-gap: 4px;
	}

	.ast-primary-header-bar .main-header-menu > .menu-item {
		white-space: nowrap;
	}
}

/* ==========================================================================
   7. Home hero — narrower desktop text block so it doesn't run across the
      product jars in the hero photo. clamp() scales with viewport since a
      flat px value that fits at 1366-1440px still reaches the jars at
      992-1280px (the photo crop narrows there too). !important needed to
      beat Elementor's own higher-specificity max-width:100% rule.
   ========================================================================== */

@media (min-width: 900px) {
	.elementor-element-ee18943 {
		max-width: clamp(440px, 39vw, 560px) !important;
	}
}

/* ==========================================================================
   7b. Home hero — hand-tuned 4-stop overlay gradient (Elementor's own
       gradient control only supports 2 stops). Strong zone extends to ~65%
       so it covers the full description text width at desktop sizes.
   ========================================================================== */

.elementor-95 .elementor-element.elementor-element-06f51c4::before {
	background-image: linear-gradient(
		90deg,
		rgba(0, 0, 0, 0.55) 0%,
		rgba(0, 0, 0, 0.42) 40%,
		rgba(0, 0, 0, 0.2) 65%,
		rgba(0, 0, 0, 0) 85%
	) !important;
	opacity: 1 !important;
}

/* ==========================================================================
   7c. Home hero — dedicated portrait photo for mobile (root-relative path,
       so it resolves correctly on any domain).
   ========================================================================== */

@media (max-width: 767px) {
	.elementor-95 .elementor-element.elementor-element-06f51c4:not(.elementor-motion-effects-element-type-background) {
		background-image: url("/wp-content/uploads/hero-mobile.png") !important;
		background-position: 62% top !important;
		background-size: cover !important;
	}

	.elementor-95 .elementor-element.elementor-element-06f51c4::before {
		background-image: linear-gradient(
			180deg,
			rgba(0, 0, 0, 0.38) 0%,
			rgba(0, 0, 0, 0.48) 25%,
			rgba(0, 0, 0, 0.58) 55%,
			rgba(0, 0, 0, 0.65) 100%
		) !important;
		opacity: 1 !important;
	}

	/* Elementor's own min_height is 100vh with no mobile override, so it
	   inherits 100vh on phones too -- with dynamic Safari chrome that leaves
	   hundreds of px of empty background below the content. Content-driven
	   height instead: the container already aligns children to the top
	   (flex_align_items: flex-start), so auto height + bottom padding is
	   enough to end the hero shortly after the CTA. */
	.elementor-element.elementor-element-06f51c4 {
		--min-height: auto !important;
		min-height: auto !important;
		padding-top: 104px !important;
		padding-bottom: 144px !important;
	}
}

/* ==========================================================================
   7d. Home hero — "magija" in the heading styled like the logo's script
       wordmark (RAGE_1.TTF). Split into a span by hero-heading-split.js.
   ========================================================================== */

@font-face {
	font-family: 'Cesnakomagija Rage';
	src: url('/wp-content/uploads/RAGE_1.TTF') format('truetype');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Cesnakomagija Brand';
	src: url('/wp-content/uploads/Tw Cen MT.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

.elementor-element-828edf6 .cesnakomagija-hero-brand {
	font-family: 'Cesnakomagija Brand', sans-serif;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 0.03em;
}

.elementor-element-828edf6 .cesnakomagija-hero-script {
	font-family: 'Cesnakomagija Rage', cursive;
	font-weight: 400;
	font-size: 1.35em;
	line-height: 1;
	vertical-align: -0.08em;
	margin-left: 0.08em;
	color: var(--cm-gold);
}

@media (max-width: 767px) {
	.elementor-element-828edf6 .cesnakomagija-hero-script {
		font-size: 1.25em;
		margin-left: 0.05em;
	}

	.elementor-element-ee18943 p {
		font-size: 14px;
		font-weight: 400;
		line-height: 1.6;
	}

	.elementor-element-ee18943 p strong {
		font-size: 19px;
		font-weight: 700;
		display: inline-block;
		margin-bottom: 4px;
	}
}

/* ==========================================================================
   8. Responsive
   ========================================================================== */

@media (max-width: 921px) {
	.woocommerce ul.products li.product .woocommerce-loop-product__title {
		font-size: 15px;
		line-height: 22px;
		min-height: 44px;
	}
}

@media (max-width: 767px) {
	.woocommerce ul.products li.product .woocommerce-loop-product__title {
		font-weight: 400;
		font-size: 14px;
		line-height: 20px;
	}

	.woocommerce ul.products li.product .astra-shop-summary-wrap {
		display: flex;
		flex-direction: column;
		flex: 1 1 auto;
	}

	.woocommerce ul.products li.product .button.add_to_cart_button,
	.woocommerce ul.products li.product .button {
		font-size: 12px;
		height: 38px;
		line-height: 38px;
		margin-top: auto;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.woocommerce ul.products li.product .price,
	.eael-product-grid .eael-product-wrap .eael-product-price {
		font-size: 18px;
	}

	.cesnakomagija-contact-page {
		padding: 48px 20px 64px;
	}

	.cesnakomagija-contact-page h1 {
		font-size: 28px;
	}
}

@media (max-width: 544px) {
	.woocommerce ul.products:not(.elementor-grid) {
		gap: 16px 12px;
	}

	.woocommerce ul.products li.product .woocommerce-loop-product__title {
		font-size: 14px;
		line-height: 20px;
		padding: 0 10px;
		min-height: 40px;
	}

	.woocommerce ul.products li.product .button.add_to_cart_button,
	.woocommerce ul.products li.product .button {
		width: calc(100% - 20px);
		margin: auto 10px 0;
	}
}

/* Very narrow phones: drop to 1 column rather than crowd 2. */
@media (max-width: 400px) {
	.woocommerce ul.products:not(.elementor-grid) {
		grid-template-columns: 1fr;
	}
}

/* ==========================================================================
   9. Modern Cart floating trigger — on mobile its default 60px bubble (site
      positions it bottom-right) sits directly over the right-column product
      card's add-to-cart button. Shrunk via Modern Cart's own CSS variable.
   ========================================================================== */

@media (max-width: 767px) {
	#moderncart-floating-cart {
		--moderncart-floating-icon-width: 46px;
		bottom: 16px;
	}
}

/* Astra's own sticky add-to-cart bar (single_add_to_cart_button scroll trigger,
   sticky-add-to-cart.js) has no logic to hide again once the footer scrolls
   into view, so it sits on top of footer content. Hidden via a class an
   IntersectionObserver toggles (sticky-add-to-cart.js in this same folder). */
.ast-sticky-add-to-cart.cesnakomagija-hide-near-footer {
	display: none !important;
}

/* Astra clones the whole form.cart into the sticky bar, including the gift-
   packaging checkboxes as a second, unsynced form -- checking a box in the
   main form and submitting via the sticky bar's button would silently drop
   that selection. Sticky bar keeps qty + add-to-cart only. */
.ast-sticky-add-to-cart .cesnakomagija-order-addons {
	display: none;
}

/* ==========================================================================
   10. Home "Produktai" EAEL Product Grid (mobile) — typography hierarchy
       between the section heading and card titles, plus equal card heights.
       EAEL positions each li.product with JS (position:absolute, masonry
       mode), so equal heights come from giving every title zone the same
       min-height up front, not from flex/grid stretch on the packed items.
   ========================================================================== */

@media (max-width: 767px) {
	.elementor-element-754f4cd .elementor-heading-title,
	.elementor-element-54b4428 .elementor-heading-title {
		font-size: 32px !important;
		line-height: 1.2 !important;
	}

	.eael-product-grid .woocommerce ul.products li.product {
		display: flex !important;
		flex-direction: column !important;
	}

	.eael-product-grid .woocommerce-loop-product__title {
		font-weight: 400 !important;
		font-size: 16px !important;
		line-height: 1.3 !important;
		min-height: 130px !important;
		padding: 0 12px !important;
		margin: 14px 0 6px !important;
	}

	.eael-product-grid .woocommerce ul.products li.product .button.add_to_cart_button,
	.eael-product-grid .woocommerce ul.products li.product .button {
		margin-top: auto !important;
	}

	/* EAEL positions each card with JS (masonry), so its right column always
	   sits flush with the grid's right edge -- the same edge the floating
	   cart bubble is fixed to. Narrowing/padding the grid to dodge it fights
	   EAEL's own column-count math (see home-grid-fab.js for why). Hiding the
	   bubble while the grid is in view is the reliable fix instead. */
	#moderncart-floating-cart.cesnakomagija-hide-near-grid {
		display: none !important;
	}

	/* Home "Dovanų kuponas" section — this container's desktop padding
	   (100px left / 40px right) is built for the 2-column layout sitting
	   beside the coupon image. On mobile the columns stack, so that leftover
	   asymmetry shifts its already-centered heading/description/CTA text off
	   center. Equalized so the centering has a centered box to work in. */
	.elementor-element-80d7f4c {
		padding-left: 20px !important;
		padding-right: 20px !important;
	}
}

.moderncart-cart-line-items__addon-value {
	gap: 6px;
}

/* ==========================================================================
   11. Astra mobile off-canvas menu (#ast-mobile-popup) — dark continuation
       of the black header instead of the default transparent/gold-on-white.
   ========================================================================== */

#ast-mobile-popup.ast-mobile-popup-drawer,
#ast-mobile-popup .ast-mobile-popup-inner,
#ast-mobile-popup .ast-mobile-popup-header {
	background-color: #000000;
}

/* .ast-mobile-popup-content is 90vw right-aligned (not full drawer width),
   so a full-width border-bottom sits flush on the right but ~10vw off on
   the left. ::after inset by 10vw on the right keeps both gaps equal. */
#ast-mobile-popup #ast-hf-mobile-menu .menu-item {
	position: relative;
	border-bottom: 0;
}

#ast-mobile-popup #ast-hf-mobile-menu .menu-item::after {
	content: "";
	position: absolute;
	left: 0;
	right: 10vw;
	bottom: 0;
	height: 1px;
	background: rgba(208, 154, 64, 0.45);
}

#ast-mobile-popup #ast-hf-mobile-menu .menu-link {
	display: block;
	min-height: 46px;
	padding: 14px 24px;
	color: #ffffff;
	font-weight: 400;
}

#ast-mobile-popup #ast-hf-mobile-menu .menu-link:hover,
#ast-mobile-popup #ast-hf-mobile-menu .menu-link:focus,
#ast-mobile-popup #ast-hf-mobile-menu .current-menu-item > .menu-link,
#ast-mobile-popup #ast-hf-mobile-menu .current-menu-ancestor > .menu-link {
	color: var(--cm-gold);
}

#ast-mobile-popup [data-section="section-header-search"] {
	display: none;
}

#ast-mobile-popup #menu-toggle-close {
	color: #ffffff;
}

/* margin:auto centers within .ast-mobile-popup-content, but Astra renders
   that box at 90vw right-aligned inside the drawer (10vw gap on the left),
   not full width -- translateX(-5vw) recenters on the true drawer/viewport
   width instead. */
.cesnakomagija-mobile-menu-logo {
	display: block;
	max-width: 135px;
	height: auto;
	margin: 24px auto 20px;
	transform: translateX(-5vw);
}

