/**
 * ZARE Theme shell-set presentation.
 *
 * Core/FSE owns structure and behavior. This tranche stylesheet owns only the
 * tokenized presentation/responsive adapters for curated Header/Footer sets.
 */
.zare-shell-a-header__main {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
	align-items: center;
	gap: var(--wp--preset--spacing--4);
}
.zare-shell-a-header__brand {
	justify-self: start;
}
.zare-shell-a-header__navigation {
	justify-self: center;
	align-self: center;
	margin-block: 0 !important;
	margin-inline-start: 0 !important;
}
.zare-shell-a-header__navigation .wp-block-navigation__container {
	gap: var(--wp--preset--spacing--2);
}
.zare-shell-a-header__action {
	justify-self: end;
	margin: 0;
}
.zare-shell-a-footer__main {
	gap: var(--wp--preset--spacing--6);
}
.zare-shell-a-footer__primary {
	display: grid;
	grid-template-columns: minmax(0, 1.25fr) auto;
	align-items: start;
	gap: var(--wp--preset--spacing--6);
}
.zare-shell-a-footer__brand {
	justify-self: start;
}
.zare-shell-a-footer__actions {
	display: flex;
	align-items: flex-start;
	justify-content: flex-end;
	justify-self: end;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--4);
	margin: 0;
}
.zare-shell-a-footer__navigation {
	justify-self: auto;
	margin: 0;
}
.zare-shell-a-footer__navigation .wp-block-navigation__container {
	flex-wrap: wrap;
}
.zare-shell-a-footer__socials {
	justify-self: auto;
	margin: 0;
}
@container zare-global-header (max-width: 72rem) {
	.zare-shell-a-header__main {
		grid-template-columns: minmax(0, 1fr) auto auto;
		gap: var(--wp--preset--spacing--2);
	}
	.zare-shell-a-header__navigation {
		justify-self: end;
	}
}
@media (max-width: 781px) {
	.zare-shell-a-footer__primary {
		grid-template-columns: minmax(0, 1fr);
		gap: var(--wp--preset--spacing--4);
	}
	.zare-shell-a-footer__actions {
		width: 100%;
		flex-direction: column;
		align-items: flex-start;
		justify-content: flex-start;
		justify-self: stretch;
		gap: var(--wp--preset--spacing--3);
	}
	.zare-shell-a-footer__navigation,
	.zare-shell-a-footer__socials {
		justify-self: start;
	}
	.zare-shell-a-footer__navigation,
	.zare-shell-a-footer__navigation .wp-block-navigation__container,
	.zare-shell-a-footer__legal,
	.zare-shell-a-footer__legal .wp-block-navigation__container {
		width: 100%;
		justify-content: flex-start;
	}
	.zare-shell-a-footer__meta {
		gap: var(--wp--preset--spacing--3);
	}
}
@media (max-width: 479px) {
	.zare-shell-a-header__action .wp-block-button__link {
		min-height: var(--wp--custom--zare-experience--touch--target, 44px);
		padding-inline: var(--wp--preset--spacing--3);
		font-size: var(--wp--preset--font-size--sm);
	}
}
.zare-shell-a-footer__description {
	max-width: 30rem;
	margin-block: var(--wp--preset--spacing--2) 0;
}
.zare-shell-b-header__utility-wrap,
.zare-shell-b-header__capability-wrap {
	margin-inline-start: calc(-1 * var(--zare-layout-gutter-start));
	margin-inline-end: calc(-1 * var(--zare-layout-gutter-end));
	padding-inline-start: var(--zare-layout-gutter-start);
	padding-inline-end: var(--zare-layout-gutter-end);
	border-block-end: 1px solid var(--wp--preset--color--border);
}
.zare-shell-b-header__utility-wrap {
	background: var(--wp--preset--color--foreground);
	color: var(--wp--preset--color--background);
}
.zare-shell-b-header__capability-wrap {
	background: var(--wp--preset--color--secondary);
	color: var(--wp--preset--color--secondary-foreground);
}
.zare-shell-b-header__utility {
	display: grid;
	grid-template-columns: auto auto;
	align-items: center;
	justify-content: center;
	min-height: 2.5rem;
	gap: var(--wp--preset--spacing--2) var(--wp--preset--spacing--4);
	padding-block: var(--wp--preset--spacing--1);
}
.zare-shell-b-header__utility-message,
.zare-shell-b-header__utility-nav,
.zare-shell-b-header__utility-socials,
.zare-shell-b-header__utility-actions {
	margin: 0;
}
.zare-shell-b-header__utility-actions {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--1) var(--wp--preset--spacing--2);
}
.zare-shell-b-header__main {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) minmax(20rem, auto);
	align-items: center;
	gap: var(--wp--preset--spacing--4);
	padding-block: var(--wp--preset--spacing--3);
}
.zare-shell-b-header__brand {
	justify-self: start;
}
.zare-shell-b-header__navigation {
	justify-self: center;
	margin: 0 !important;
}
.zare-shell-b-header__actions {
	display: grid;
	grid-template-columns: minmax(12rem, 1fr) auto;
	align-items: center;
	justify-self: end;
	width: min(100%, 32rem);
	gap: var(--wp--preset--spacing--2);
	margin: 0;
}
.zare-shell-b-header__search {
	width: 100%;
	margin: 0;
}
.zare-shell-b-header__search .wp-block-search__inside-wrapper {
	min-height: var(--wp--custom--zare-experience--touch--target, 44px);
	border-color: var(--wp--preset--color--border);
	border-radius: var(--wp--custom--zare-experience--shape--control, var(--wp--custom--zare-experience--radius--md, 0.5rem));
}
.zare-shell-b-header__primary-action {
	margin: 0;
}
.zare-shell-b-header__capability-bar {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 21.25rem;
	align-items: center;
	gap: var(--wp--preset--spacing--4) var(--wp--preset--spacing--5);
	min-height: 4rem;
	padding-block: var(--wp--preset--spacing--2);
}
.zare-shell-b-header__capabilities {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--1) var(--wp--preset--spacing--4);
	margin: 0;
}
.zare-shell-b-header__contact-details {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--3);
	margin: 0;
}
.zare-shell-b-header__capability-item,
.zare-shell-b-header__contact-item {
	display: inline-flex;
	align-items: center;
	flex-wrap: nowrap;
	min-width: 0;
	gap: var(--zare-theme-icon-standard-inline-gap, 0.375rem);
	margin: 0;
}
.zare-shell-b-header__capability-item .wp-block-icon,
.zare-shell-b-header__contact-item .wp-block-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	inline-size: var(--zare-theme-icon-standard-inline-size, 1.25rem);
	block-size: var(--zare-theme-icon-standard-inline-size, 1.25rem);
	margin: 0;
	color: currentColor;
}
.zare-shell-b-header__capability-item > p,
.zare-shell-b-header__contact-copy,
.zare-shell-b-header__contact-copy > p {
	margin: 0;
}
.zare-shell-b-header__capability-item a {
	display: inline-flex;
	align-items: center;
	min-height: var(--wp--custom--zare-experience--touch--target, 44px);
	padding-inline: var(--wp--preset--spacing--1);
	border-radius: var(--wp--custom--zare-experience--shape--control, var(--wp--custom--zare-experience--radius--md, 0.5rem));
}
@media (hover: hover) and (pointer: fine) {
	.zare-shell-b-header__capability-item a:hover {
		background: var(--wp--preset--color--accent);
		color: var(--wp--preset--color--accent-foreground);
	}
}
.zare-shell-b-header__capability-item a:focus-visible {
	background: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--accent-foreground);
	outline: 2px solid transparent;
	outline-offset: var(--zare-theme-focus-ring-offset);
	box-shadow: 0 0 0 var(--zare-theme-focus-ring-width) var(--zare-theme-focus-ring-color);
}
.zare-shell-b-header__capability-item a:active {
	transform: translateY(1px);
}
.zare-shell-b-header__contact-copy {
	min-width: 0;
}
.zare-shell-b-header__contact-copy .is-style-label {
	line-height: 1.2;
}
.zare-shell-b-header__utility-nav .wp-block-navigation__container {
	flex-wrap: wrap;
}
.zare-shell-b-footer__main {
	gap: var(--wp--preset--spacing--6);
}
.zare-shell-b-footer__primary {
	display: grid;
	grid-template-columns: minmax(15rem, 0.85fr) minmax(0, 2.15fr);
	align-items: start;
	gap: var(--wp--preset--spacing--7);
}
.zare-shell-b-footer__brand {
	justify-self: start;
}
.zare-shell-b-footer__description {
	max-width: 28rem;
	margin-block: var(--wp--preset--spacing--2) 0;
}
.zare-shell-b-footer__socials {
	margin-block: var(--wp--preset--spacing--4) 0;
	margin-inline: 0;
}
.zare-shell-b-footer__directory {
	display: grid;
	grid-template-columns: minmax(14rem, 1.35fr) minmax(7rem, 0.8fr) minmax(9rem, 0.9fr) minmax(11rem, 1.1fr);
	align-items: start;
	gap: var(--wp--preset--spacing--5);
}
.zare-shell-b-footer__directory-column,
.zare-shell-b-footer__contact {
	min-width: 0;
}
.zare-shell-b-footer__directory > * {
	margin-block-start: 0;
}
.zare-shell-b-footer__directory-column > .wp-block-heading,
.zare-shell-b-footer__contact > .wp-block-heading {
	margin-block: 0 var(--wp--preset--spacing--2);
}
.zare-shell-b-footer__directory-nav,
.zare-shell-b-footer__legal {
	margin: 0;
}
.zare-shell-b-footer__directory-nav .wp-block-navigation__container {
	align-items: flex-start;
	gap: 0;
}
@container zare-global-header (max-width: 72rem) {
	.zare-shell-b-header__main {
		grid-template-columns: minmax(0, 1fr) auto;
		gap: var(--wp--preset--spacing--3);
	}
	.zare-shell-b-header__navigation {
		justify-self: end;
	}
	.zare-shell-b-header__actions {
		grid-column: 1 / -1;
		justify-self: stretch;
		width: 100%;
	}
}
@media (max-width: 1023px) {
	.zare-shell-b-footer__primary {
		grid-template-columns: minmax(13rem, 0.75fr) minmax(0, 1.75fr);
		gap: var(--wp--preset--spacing--5);
	}
	.zare-shell-b-footer__directory {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: var(--wp--preset--spacing--5);
	}
}
@container zare-global-header (max-width: 48.8125rem) {
	.zare-shell-b-header__utility,
	.zare-shell-b-header__capability-bar {
		grid-template-columns: minmax(0, 1fr);
		align-items: start;
	}
	.zare-shell-b-header__utility-actions {
		justify-content: flex-start;
	}
	.zare-shell-b-header__capabilities {
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(9rem, 1fr));
		width: 100%;
	}
	.zare-shell-b-header__actions {
		grid-template-columns: minmax(0, 1fr) auto;
	}
}
@container zare-global-header (max-width: 30rem) {
	.zare-shell-b-header__main {
		gap: var(--wp--preset--spacing--2);
		padding-block: var(--wp--preset--spacing--2);
	}
	.zare-shell-b-header__actions { grid-template-columns: minmax(0, 1fr) auto; }
	.zare-shell-b-header__search {
		justify-self: end;
		width: var(--wp--custom--zare-experience--touch--target, 44px);
		min-width: var(--wp--custom--zare-experience--touch--target, 44px);
	}
	.zare-shell-b-header__search:focus-within { width: 100%; }
	.zare-shell-b-header__search .wp-block-search__inside-wrapper {
		position: relative;
		overflow: hidden;
		padding: 0;
	}
	.zare-shell-b-header__search .wp-block-search__input {
		position: absolute;
		inset: 0;
		z-index: 2;
		opacity: 0;
	}
	.zare-shell-b-header__search .wp-block-search__button {
		min-width: var(--wp--custom--zare-experience--touch--target, 44px);
		min-height: var(--wp--custom--zare-experience--touch--target, 44px);
		margin: 0;
		pointer-events: none;
	}
	.zare-shell-b-header__search:focus-within .wp-block-search__input {
		position: static;
		opacity: 1;
	}
	.zare-shell-b-header__search:focus-within .wp-block-search__button { pointer-events: auto; }
}
@media (max-width: 781px) {
	.zare-shell-b-footer__primary {
		grid-template-columns: minmax(0, 1fr);
		gap: var(--wp--preset--spacing--5);
	}
	.zare-shell-b-footer__directory {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.zare-shell-b-footer__meta {
		gap: var(--wp--preset--spacing--3);
	}
}
@media (max-width: 479px) {
	.zare-shell-b-footer__directory {
		grid-template-columns: minmax(0, 1fr);
	}
	.zare-shell-b-footer__legal,
	.zare-shell-b-footer__legal .wp-block-navigation__container {
		width: 100%;
		justify-content: flex-start;
	}
}
