/* GT Merch – header search bar (shop pages) */
.gtm-sbar {
	--gtm-ink: #12303a; --gtm-teal-d: #146b5d; --gtm-teal-soft: #dcf1ec; --gtm-coral: #f7845c; --gtm-coral-d: #d4553a;
	--gtm-cream: #fff7ea; --gtm-line: #f0dcc0; --gtm-muted: #5c6e72;
	padding: 14px 0; background: transparent; position: relative; z-index: 50;
}
.gtm-sbar__in { position: relative; max-width: 1200px; margin: 0 auto; padding: 0 20px; box-sizing: border-box; }
.gtm-sbar__in.grid-container { padding-left: 40px; padding-right: 40px; }
.gtm-sbar__form { position: relative; display: flex; align-items: center; margin: 0; }
.gtm-sbar__form svg { position: absolute; left: 18px; top: 50%; width: 19px; height: 19px; transform: translateY(-50%); fill: none; stroke: var(--gtm-muted); stroke-width: 2.2; stroke-linecap: round; pointer-events: none; }
.gtm-sbar__form input[type="search"] {
	flex: 1 1 auto; width: 100%; height: 50px; margin: 0; padding: 0 118px 0 48px; border-radius: 999px; border: 2px solid var(--gtm-line) !important;
	background: #fff; color: var(--gtm-ink); font-size: 16px; box-shadow: 0 3px 0 var(--gtm-line); -webkit-appearance: none; appearance: none; box-sizing: border-box;
}
.gtm-sbar__form input[type="search"]::-webkit-search-cancel-button { -webkit-appearance: none; }
.gtm-sbar__form input[type="search"]:focus { outline: 0; border-color: var(--gtm-ink) !important; box-shadow: 0 3px 0 var(--gtm-ink), 0 0 0 4px var(--gtm-teal-soft); }
.gtm-sbar__go {
	position: absolute; right: 6px; top: 6px; height: 38px; margin: 0; padding: 0 18px; border-radius: 999px; border: 0; background: var(--gtm-coral); color: var(--gtm-ink);
	font-size: 14.5px; font-weight: 800; line-height: 1; text-transform: none; letter-spacing: 0; cursor: pointer;
}
.gtm-sbar__go:hover, .gtm-sbar__go:focus { background: #ff9672; color: var(--gtm-ink); }

.gtm-sbar__list {
	position: absolute; left: 20px; right: 20px; top: calc(100% + 8px); max-height: min(70vh, 460px); overflow-y: auto;
	background: #fff; border: 2px solid var(--gtm-ink); border-radius: 18px; box-shadow: 0 5px 0 var(--gtm-ink), 0 18px 40px rgba(18, 48, 58, .16); padding: 6px;
}
.grid-container + .gtm-sbar__list, .gtm-sbar__in.grid-container .gtm-sbar__list { left: 40px; right: 40px; }
.gtm-sbar__list[hidden] { display: none; }
.gtm-sbar__opt {
	display: grid; grid-template-columns: 48px minmax(0, 1fr) auto; align-items: center; gap: 12px; padding: 8px 10px; border-radius: 12px;
	color: var(--gtm-ink); text-decoration: none; box-shadow: none;
}
.gtm-sbar__opt:hover, .gtm-sbar__opt.is-active { background: var(--gtm-cream); color: var(--gtm-ink); }
.gtm-sbar__opt img, .gtm-sbar__ph { width: 48px; height: 48px; border-radius: 10px; object-fit: cover; background: var(--gtm-cream); margin: 0; }
.gtm-sbar__txt { display: flex; flex-direction: column; min-width: 0; }
.gtm-sbar__name { font-size: 15px; font-weight: 700; line-height: 1.3; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.gtm-sbar__name mark { background: #fff0c9; color: inherit; padding: 0 1px; border-radius: 3px; }
.gtm-sbar__txt small { font-size: 12.5px; color: var(--gtm-muted); }
.gtm-sbar__price { font-size: 14px; font-weight: 800; color: var(--gtm-coral-d); white-space: nowrap; }
.gtm-sbar__all { display: block; margin-top: 4px; padding: 11px 12px; border-top: 1.5px dashed var(--gtm-line); font-size: 14px; font-weight: 700; color: var(--gtm-teal-d); text-decoration: none; box-shadow: none; border-radius: 0 0 12px 12px; }
.gtm-sbar__all:hover, .gtm-sbar__all.is-active { background: var(--gtm-teal-soft); color: var(--gtm-ink); }
.gtm-sbar__none { margin: 0; padding: 12px; font-size: 14px; color: var(--gtm-muted); }

@media (max-width: 768px) {
	.gtm-sbar { padding: 10px 0 12px; }
	.gtm-sbar__in, .gtm-sbar__in.grid-container { padding-left: 16px; padding-right: 16px; }
	.gtm-sbar__list, .gtm-sbar__in.grid-container .gtm-sbar__list { left: 12px; right: 12px; }
	.gtm-sbar__form input[type="search"] { height: 46px; padding-right: 50px; font-size: 16px; }
	.gtm-sbar__go { top: 5px; right: 5px; width: 36px; height: 36px; padding: 0; font-size: 0; }
	.gtm-sbar__go::before { content: "→"; font-size: 18px; }
	.gtm-sbar__opt { grid-template-columns: 42px minmax(0, 1fr) auto; gap: 10px; }
	.gtm-sbar__opt img, .gtm-sbar__ph { width: 42px; height: 42px; }
}

/* ---------- inside the GeneratePress header: its own full row under logo + menu (desktop and phones) ---------- */
.site-header .inside-header { flex-wrap: wrap; }
.inside-header > .gtm-sbar--hdr { order: 20; flex: 1 0 100%; max-width: none; min-width: 0; margin: 14px 0 0; padding: 0; }
.gtm-sbar--hdr .gtm-sbar__in { max-width: none; padding: 0; }
.gtm-sbar--hdr .gtm-sbar__form input[type="search"] { height: 46px; padding-right: 50px; box-shadow: none; background: #fffaf2; }
.gtm-sbar--hdr .gtm-sbar__form input[type="search"]:focus { background: #fff; box-shadow: 0 0 0 4px var(--gtm-teal-soft); }
.gtm-sbar--hdr .gtm-sbar__go { top: 6px; right: 6px; width: 34px; height: 34px; padding: 0; font-size: 0; }
.gtm-sbar--hdr .gtm-sbar__go::before { content: ""; width: 14px; height: 14px; display: inline-block; background: no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2312303a' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E"); }
.gtm-sbar--hdr .gtm-sbar__list, .gtm-sbar--hdr .gtm-sbar__in .gtm-sbar__list { left: 0; right: 0; width: auto; }
.inside-header > .site-logo, .inside-header > .site-branding, .inside-header > .site-branding-container { order: 1; }
.inside-header > .main-navigation, .inside-header > .mobile-menu-control-wrapper { order: 3; margin-left: auto; }
@media (max-width: 768px) {
	.inside-header > .gtm-sbar--hdr { margin-top: 12px; }
	.has-inline-mobile-toggle .inside-header > #site-navigation { order: 30; }
}
@media (max-width: 520px) {
	.gtm-sbar__opt { grid-template-columns: 42px minmax(0, 1fr); row-gap: 0; }
	.gtm-sbar__opt img, .gtm-sbar__ph { grid-row: span 2; }
	.gtm-sbar__price { grid-column: 2; font-size: 13px; }
	.gtm-sbar__txt small { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
}

/* desktop: no search bar (phones and tablets only) */
@media (min-width: 769px) {
	.gtm-sbar { display: none !important; }
}
