/*
Theme Name: Suehiro Astra Child
Description: Site-specific presentation and behavior for Auberge Suehiro.
Author: Auberge Suehiro
Template: astra
Version: 1.0.0
Text Domain: suehiro-astra-child
*/

/* Contact Form 7 displays the required reCAPTCHA legal text in the form. */
.grecaptcha-badge {
	visibility: hidden !important;
}

/*
 * Keep Astra's transparent header over the hero at the top of each page, then
 * provide a readable, compact navigation surface after the visitor scrolls.
 */
#page #masthead {
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	z-index: 999;
	width: 100%;
	transition: background-color 180ms ease, box-shadow 180ms ease;
}

#page #masthead.suehiro-header-scrolled {
	background-color: rgb(21 54 52 / 98%);
	box-shadow: 0 6px 20px rgb(0 0 0 / 16%);
}

#page #masthead.suehiro-header-scrolled .ast-above-header.ast-above-header-bar,
#page #masthead.suehiro-header-scrolled .ast-primary-header-bar,
#page #masthead.suehiro-header-scrolled .ast-below-header-bar {
	background-color: transparent;
	background-image: none;
}

.admin-bar #page #masthead {
	top: 32px;
}

@media (max-width: 782px) {
	.admin-bar #page #masthead {
		top: 46px;
	}
}

@media (max-width: 921px) {
	#page #masthead.suehiro-header-scrolled #ast-mobile-header {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		align-items: center;
		padding: 0 20px;
	}

	#page #masthead.suehiro-header-scrolled #ast-mobile-header > .ast-main-header-wrap,
	#page #masthead.suehiro-header-scrolled #ast-mobile-header > .ast-below-header-wrap {
		width: auto;
	}

	#page #masthead.suehiro-header-scrolled #ast-mobile-header > .ast-mobile-header-content {
		grid-column: 1 / -1;
		margin-right: -20px;
		margin-left: -20px;
	}

	#page #masthead.suehiro-header-scrolled .ast-primary-header-bar,
	#page #masthead.suehiro-header-scrolled .ast-below-header-bar {
		min-height: 72px;
	}

	#page #masthead.suehiro-header-scrolled .site-header-primary-section-center {
		justify-content: flex-start;
	}

	#page #masthead.suehiro-header-scrolled .site-header-below-section-center {
		justify-content: flex-end;
	}

	#page #masthead.suehiro-header-scrolled .ast-site-identity {
		padding-top: 8px;
		padding-bottom: 8px;
	}

	#page #masthead.suehiro-header-scrolled .site-logo-img img {
		max-width: 96px;
	}
}

@media (min-width: 922px) {
	#page #masthead.suehiro-header-scrolled .site-logo-img img {
		max-width: 112px;
	}
}

/*
 * Cuisine's closing image/text panel uses a desktop overlap in Elementor.
 * Stack it on phones so the image does not cover the copy or create sideways
 * scrolling.
 */
@media (max-width: 767px) {
	.elementor-401 .elementor-element.elementor-element-2c4a5e3 {
		position: relative !important;
		top: auto !important;
		left: auto !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	.elementor-401 .elementor-element.elementor-element-2c4a5e3 > .elementor-widget-container {
		margin: 0 !important;
	}

	.elementor-401 .elementor-element.elementor-element-2c4a5e3 img {
		display: block;
		width: 100%;
		max-width: 100%;
		height: auto;
	}

	.elementor-401 .elementor-element.elementor-element-6a83226 {
		padding: 32px 20px 0;
	}
}

/* Keep Home's overlapping portrait inside the tablet viewport. */
@media (min-width: 768px) and (max-width: 1024px) {
	.elementor-398 .elementor-element.elementor-element-25696c1 > .elementor-widget-container {
		margin-right: 0 !important;
		margin-left: 0 !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	#page #masthead {
		transition: none;
	}
}
