/* Striker Style — layout: containers, header, navigation, drawer, page, footer. */

.wrap {
	width: 100%;
	max-width: calc(var(--w-max) + 2 * var(--gutter));
	margin-inline: auto;
	padding-inline: var(--gutter);
}

.wrap--text { max-width: calc(var(--w-text) + 2 * var(--gutter)); }

/* Utility bar: black announcement strip; several messages rotate (utility-bar.js). */
.utility-bar { background: var(--c-ink); color: #fff; }

.utility-bar__list {
	display: grid;
	min-height: var(--utility-h);
	margin: 0 auto;
	padding-block: 0;
	list-style: none;
	overflow: hidden;
}

.utility-bar__msg {
	display: flex;
	flex-wrap: wrap;
	grid-area: 1 / 1;
	align-items: center;
	justify-content: center;
	gap: 0 var(--s-3);
	padding-block: var(--s-2);
	font: 500 var(--fs-caption) / 1.35 var(--f-body);
	letter-spacing: 0.01em;
	text-align: center;
}

.utility-bar--rotate .utility-bar__msg {
	opacity: 0;
	visibility: hidden;
	transform: translateY(100%);
	transition: opacity var(--t-slow) var(--ease), transform var(--t-slow) var(--ease), visibility 0s linear var(--t-slow);
}

.utility-bar--rotate .utility-bar__msg.is-active {
	opacity: 1;
	visibility: visible;
	transform: none;
	transition: opacity var(--t-slow) var(--ease), transform var(--t-slow) var(--ease), visibility 0s;
}

.utility-bar--rotate .utility-bar__msg.is-leaving { transform: translateY(-100%); }

.utility-bar a {
	color: #fff;
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.utility-bar a:hover { color: var(--c-stone); }

.utility-bar a:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }

@media (max-width: 599px) {
	.utility-bar__msg { font-size: var(--fs-label); }
}

@media (prefers-reduced-motion: reduce) {
	.utility-bar--rotate .utility-bar__msg { transform: none; }
}

/* Header */
.site-header {
	position: sticky;
	top: 0;
	z-index: var(--z-header);
	background: #fff;
	transition: box-shadow var(--t-fast) var(--ease);
}

.admin-bar .site-header { top: var(--wp-admin--admin-bar--height, 0px); }

.site-header.is-scrolled { box-shadow: var(--sh-sticky); }

.header__inner {
	display: flex;
	align-items: center;
	gap: var(--s-2);
	height: var(--header-h);
}

.brand {
	display: inline-flex;
	align-items: center;
	gap: var(--s-2);
	min-height: 44px;
	color: var(--c-ink);
	text-decoration: none;
}

.brand__mark { width: 40px; height: 40px; object-fit: contain; }

/* Logo without wordmark (Customizer "Header wordmark" empty): a little larger. */
.brand--mark-only .brand__mark { width: 52px; height: 52px; }

.brand__word {
	font: 700 22px / 1 var(--f-display);
	letter-spacing: 0.01em;
	text-transform: uppercase;
	white-space: nowrap;
}

.header__actions {
	display: flex;
	align-items: center;
	gap: 2px;
	margin-left: auto;
}

.header__account,
.header__wishlist,
.header__search-pill,
.primary-nav { display: none; }

/* Phones and tablets: menu left, logo centred, search/bag right (owner request). */
@media (max-width: 1023px) {
	.site-header:not(.site-header--checkout) .header__inner { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); }

	.header__menu { grid-column: 1; justify-self: start; }

	.site-header:not(.site-header--checkout) .brand { grid-column: 2; justify-self: center; }

	.site-header:not(.site-header--checkout) .header__actions { grid-column: 3; justify-self: end; margin-left: 0; }
}

.bag-count {
	position: absolute;
	top: 4px;
	right: 0;
	min-width: 18px;
	height: 18px;
	padding: 0 5px;
	border-radius: var(--r-pill);
	background: var(--c-ink);
	color: #fff;
	font: 600 11px / 18px var(--f-body);
	text-align: center;
}

.bag-count.is-empty { display: none; }

@media (min-width: 600px) {
	.header__account,
	.header__wishlist { display: inline-flex; }
}

@media (min-width: 1024px) {
	.header__inner { display: grid; grid-template-columns: auto 1fr auto; gap: var(--s-6); }

	.header__menu { display: none; }

	.primary-nav { display: block; justify-self: center; }

	.header__actions { margin-left: 0; }
}

@media (min-width: 1280px) {
	.header__search-pill { display: block; width: 220px; margin-right: var(--s-2); }

	.header__search-toggle { display: none; }
}

/* Search pill */
.search-pill { position: relative; display: flex; align-items: center; }

.search-pill .search-pill__field {
	min-height: 40px;
	padding: 8px 44px 8px 16px;
	border: 0;
	border-radius: var(--r-search);
	background: var(--c-cloud);
	font-size: var(--fs-body);
}

.search-pill .search-pill__field:focus { box-shadow: inset 0 0 0 1.5px var(--c-ink); }

.search-pill__submit {
	position: absolute;
	right: 2px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border: 0;
	border-radius: var(--r-pill);
	background: transparent;
	color: var(--c-ink);
	cursor: pointer;
}

.search-pill__submit .icon { width: 20px; height: 20px; }

.header-search {
	position: absolute;
	top: 100%;
	right: 0;
	left: 0;
	z-index: var(--z-dropdown);
	padding-block: var(--s-4);
	border-top: 1px solid var(--c-hairline);
	background: #fff;
	box-shadow: var(--sh-overlay);
}

.header-search .search-pill { max-width: var(--w-text); margin-inline: auto; }

/* Primary navigation (desktop) */
.nav-list {
	display: flex;
	align-items: center;
	gap: var(--s-1);
	margin: 0;
	padding: 0;
	list-style: none;
}

.nav-item { position: static; display: flex; align-items: center; }

.nav-item.has-dropdown,
.nav-item.menu-item-has-children { position: relative; }

.nav-link {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 2px;
	min-height: 44px;
	padding: 0 var(--s-3);
	border: 0;
	background: none;
	color: var(--c-ink);
	font: 500 var(--fs-body) / 1.5 var(--f-body);
	text-decoration: none;
	white-space: nowrap;
	cursor: pointer;
}

.nav-link::after {
	content: "";
	position: absolute;
	right: var(--s-3);
	bottom: 4px;
	left: var(--s-3);
	height: 2px;
	background: var(--c-ink);
	transform: scaleX(0);
	transition: transform var(--t-fast) var(--ease);
}

.nav-link:hover::after,
.nav-link[aria-current="page"]::after,
.current-menu-item > .nav-link::after,
.nav-trigger[aria-expanded="true"]::after { transform: scaleX(1); }

.nav-trigger__icon { width: 16px; height: 16px; transition: transform var(--t-fast) var(--ease); }

.nav-trigger[aria-expanded="true"] .nav-trigger__icon { transform: rotate(180deg); }

.nav-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 44px;
	margin-left: -8px;
	padding: 0;
	border: 0;
	background: none;
	color: var(--c-ink);
	cursor: pointer;
}

.nav-toggle .icon { width: 16px; height: 16px; }

.nav-dropdown {
	position: absolute;
	top: 100%;
	left: 0;
	z-index: var(--z-dropdown);
	display: none;
	min-width: 240px;
	margin: 0;
	padding: var(--s-2) 0;
	border-top: 1px solid var(--c-hairline);
	background: #fff;
	box-shadow: var(--sh-overlay);
	list-style: none;
}

.nav-dropdown a {
	display: block;
	padding: 10px var(--s-5);
	color: var(--c-ink);
	text-decoration: none;
}

.nav-dropdown a:hover { background: var(--c-cloud); }

/* Mega panels: full width under the header. */
.mega {
	position: absolute;
	top: 100%;
	right: 0;
	left: 0;
	z-index: var(--z-dropdown);
	display: none;
	border-top: 1px solid var(--c-hairline);
	background: #fff;
	box-shadow: var(--sh-overlay);
}

.nav-item.is-open > .mega,
.nav-item.is-open > .nav-dropdown,
html:not(.js) .nav-item:focus-within > .mega,
html:not(.js) .nav-item:hover > .mega,
html:not(.js) .nav-item:focus-within > .nav-dropdown,
html:not(.js) .nav-item:hover > .nav-dropdown { display: block; animation: striker-panel 160ms var(--ease); }

@keyframes striker-panel {
	from { opacity: 0; transform: translateY(-4px); }
}

.mega__inner {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 2.2fr);
	gap: var(--s-6);
	max-width: calc(var(--w-max) + 2 * var(--gutter));
	margin-inline: auto;
	padding: var(--s-6) var(--gutter) var(--s-7);
}

.mega__inner--clubs { display: block; }

.mega__title {
	margin: 0 0 var(--s-3);
	color: var(--c-mute);
	font: 600 var(--fs-label) / 1.4 var(--f-body);
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.mega__list { margin: 0; padding: 0; list-style: none; }

.mega__list--columns { columns: 4 180px; column-gap: var(--s-6); }

.mega__list a {
	display: flex;
	align-items: baseline;
	gap: var(--s-2);
	padding: 6px 0;
	color: var(--c-ink);
	font-weight: 500;
	text-decoration: none;
	break-inside: avoid;
}

.mega__list a:hover .term-name,
.mega__list a:hover { text-decoration: underline; text-decoration-thickness: 2px; }

.mega__count { color: var(--c-mute); font-size: var(--fs-caption); font-variant-numeric: tabular-nums; }

.mega__tile { display: block; color: var(--c-ink); text-decoration: none; }

.mega__tile-media {
	display: block;
	aspect-ratio: 1;
	margin-bottom: var(--s-2);
	background: var(--c-stage);
}

.mega__tile-media img { width: 100%; height: 100%; object-fit: cover; }

.mega__new { display: grid; gap: var(--s-3); align-content: start; }

.mega__new > .mega__tile-label { color: var(--c-ink); text-decoration: none; }

.mega__new > .mega__tile-label:hover { text-decoration: underline; text-decoration-thickness: 2px; }

.mega__new-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--s-3); margin: 0; padding: 0; list-style: none; }

.mega__tile-name { display: block; font-size: var(--fs-caption); font-weight: 500; line-height: 1.3; }

.mega__tile:hover .mega__tile-name { text-decoration: underline; }

.mega__tile-label {
	display: inline-flex;
	align-items: center;
	gap: var(--s-2);
	font: 600 1.375rem / 1 var(--f-display);
	text-transform: uppercase;
}

/* Drawer (native modal dialog) */
dialog { color: var(--c-ink); }

dialog::backdrop { background: rgba(17, 17, 17, 0.4); }

.drawer {
	position: fixed;
	inset: 0 auto 0 0;
	width: min(400px, 92vw);
	max-width: none;
	height: 100dvh;
	max-height: none;
	margin: 0;
	padding: 0 0 var(--s-6);
	overflow-y: auto;
	border: 0;
	background: #fff;
	box-shadow: var(--sh-overlay);
}

.drawer[open] { animation: striker-drawer var(--t-slow) var(--ease); }

@keyframes striker-drawer {
	from { transform: translateX(-100%); }
}

.drawer__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: var(--s-2) var(--s-2) var(--s-2) var(--s-5);
}

.drawer__title { margin: 0; font: 700 var(--fs-h3) / 1 var(--f-display); text-transform: uppercase; }

.drawer__search { padding: 0 var(--s-5) var(--s-4); }

.drawer-list {
	margin: 0;
	padding: 0;
	list-style: none;
	border-top: 1px solid var(--c-hairline-soft);
}

.drawer-list--secondary { margin-top: var(--s-4); }

.drawer-item { position: relative; border-bottom: 1px solid var(--c-hairline-soft); }

.drawer-link {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	min-height: 52px;
	padding: 0 var(--s-5);
	border: 0;
	background: none;
	color: var(--c-ink);
	font: 500 var(--fs-body) / 1.5 var(--f-body);
	text-align: left;
	text-decoration: none;
	cursor: pointer;
}

.drawer-toggle {
	position: absolute;
	top: 4px;
	right: var(--s-2);
	width: 44px;
	height: 44px;
	border: 0;
	background: none;
	color: var(--c-ink);
	cursor: pointer;
}

.drawer-trigger__icon,
.drawer-toggle .icon { transition: transform var(--t-fast) var(--ease); }

[aria-expanded="true"] > .drawer-trigger__icon,
.drawer-toggle[aria-expanded="true"] .icon { transform: rotate(45deg); }

.drawer-sublist { margin: 0; padding: 0 0 var(--s-3); list-style: none; }

/* Drawer "New in": the same three model-photo tiles as the desktop Shop panel. */
.drawer-new { display: grid; gap: var(--s-3); padding: var(--s-1) var(--s-5) var(--s-4); }

.drawer-new__label { display: inline-flex; align-items: center; gap: var(--s-1); font: 700 1.125rem / 1 var(--f-display); text-transform: uppercase; color: var(--c-ink); text-decoration: none; }

.drawer-new__list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--s-2); margin: 0; padding: 0; list-style: none; }

.drawer-new .mega__tile-name { margin-top: var(--s-1); font-size: var(--fs-label); }

.drawer-sublist a,
.drawer-sublink {
	display: flex;
	align-items: center;
	min-height: 44px;
	padding: 0 var(--s-5) 0 var(--s-7);
	color: var(--c-ink);
	text-decoration: none;
}

/* Main / pages */
.site-main { display: block; min-height: 50vh; padding-bottom: var(--section); }

.site-main--home { padding-bottom: 0; }

.page-header {
	max-width: calc(var(--w-text) + 2 * var(--gutter));
	margin: 0 auto;
	padding: var(--s-7) var(--gutter) var(--s-5);
}

.wrap > .page-header,
.is-wide .page-header,
.site-main--shop .page-header { max-width: none; padding-inline: 0; }

.is-wide .page-header { max-width: calc(var(--w-max) + 2 * var(--gutter)); padding-inline: var(--gutter); }

.page-title { margin: 0; }

.archive-description,
.page-header__search { margin-top: var(--s-4); color: var(--c-charcoal); }

/* Block content measure: text 720, wide 1440, full bleed. */
.entry-content > * { max-width: min(var(--w-text), 100% - 2 * var(--gutter)); margin-inline: auto; }

.entry-content > * + * { margin-top: var(--s-5); }

.entry-content > .alignwide,
.is-wide .entry-content > *,
.page-article--home .entry-content > *:not(.alignfull) {
	max-width: min(var(--w-max), 100% - 2 * var(--gutter));
}

.entry-content > .alignfull { max-width: none; }

.entry-content > .alignfull + .alignfull,
.entry-content > .alignfull + .section,
.entry-content > .section + .alignfull { margin-top: 0; }

.entry-content > :last-child { margin-bottom: 0; }

.entry-content .alignleft { float: left; margin: 0 var(--s-5) var(--s-4) 0; }

.entry-content .alignright { float: right; margin: 0 0 var(--s-4) var(--s-5); }

.entry-content p,
.entry-content li { color: var(--c-charcoal); }

.post-hero {
	max-width: calc(var(--w-max) + 2 * var(--gutter));
	margin: 0 auto var(--s-6);
	padding-inline: var(--gutter);
}

.post-hero img { display: block; width: 100%; height: auto; max-height: 80vh; object-fit: cover; }

.entry-content .wp-block-image img { display: block; width: 100%; height: auto; }

.entry-footer,
.comments-area,
.page-links {
	max-width: calc(var(--w-text) + 2 * var(--gutter));
	margin: var(--s-7) auto 0;
	padding-inline: var(--gutter);
}

.post-navigation .nav-links { display: grid; gap: var(--s-4); margin-top: var(--s-5); }

.nav-subtitle { display: block; color: var(--c-mute); font-size: var(--fs-caption); }

/* Post lists */
.post-grid {
	display: grid;
	gap: var(--s-6) var(--s-4);
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr));
}

.post-card__media {
	display: block;
	aspect-ratio: 16 / 10;
	margin-bottom: var(--s-3);
	overflow: hidden;
	background: var(--c-stage);
}

.post-card__media img { width: 100%; height: 100%; object-fit: cover; }

.post-card__meta { margin: 0 0 var(--s-2); color: var(--c-mute); font-size: var(--fs-caption); }

.post-card__title { font-size: var(--fs-h3); font-weight: 600; }

.post-card__title a { text-decoration: none; }

.post-card__excerpt { color: var(--c-charcoal); }

.comment-list { padding: 0; list-style: none; }

.comment-list .comment-body { padding: var(--s-4) 0; border-bottom: 1px solid var(--c-hairline); }

/* Footer */
.site-footer { margin-top: 0; padding-top: var(--s-7); background: var(--c-cloud); }

.footer-cols { display: grid; gap: 0; border-top: 1px solid var(--c-hairline); }

.footer-col { border-bottom: 1px solid var(--c-hairline); }

.footer-col__title {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 52px;
	font: 600 var(--fs-label) / 1.4 var(--f-body);
	letter-spacing: 0.06em;
	text-transform: uppercase;
	list-style: none;
	cursor: pointer;
}

.footer-col__title::-webkit-details-marker { display: none; }

.footer-col__title::after,
.disclosure__summary::after,
.filter-group__summary::after,
.wp-block-details.is-style-disclosure > summary::after {
	content: "";
	flex: none;
	width: 20px;
	height: 20px;
	background: currentColor;
	-webkit-mask: var(--i-plus) center / contain no-repeat;
	mask: var(--i-plus) center / contain no-repeat;
	transition: transform var(--t-fast) var(--ease);
}

details[open] > .footer-col__title::after,
details[open] > .disclosure__summary::after,
details[open] > .filter-group__summary::after,
.wp-block-details.is-style-disclosure[open] > summary::after {
	-webkit-mask-image: var(--i-minus);
	mask-image: var(--i-minus);
}


.footer-links { margin: 0; padding: 0 0 var(--s-4); list-style: none; }

.footer-links li { color: var(--c-mute); font-size: var(--fs-caption); font-weight: 500; }

.footer-links a {
	display: inline-flex;
	min-height: 32px;
	align-items: center;
	color: var(--c-mute);
	text-decoration: none;
}

.footer-links a:hover { color: var(--c-ink); text-decoration: underline; }

.footer-contact { padding-top: var(--s-2); border-top: 1px solid var(--c-hairline); }

.footer-contact__company { color: var(--c-ink); font-weight: 600; }

@media (min-width: 600px) {
	.footer-cols { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--s-6); border-top: 0; }

	.footer-col { border-bottom: 0; }

	.footer-col__title { min-height: 0; margin-bottom: var(--s-3); pointer-events: none; }

	.footer-col__title::after { display: none; }
}

@media (min-width: 1024px) {
	.footer-cols { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

.footer-bottom {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--s-3) var(--s-6);
	margin-top: var(--s-6);
	padding-block: var(--s-5);
	border-top: 1px solid var(--c-hairline);
	color: var(--c-mute);
	font-size: var(--fs-caption);
	font-weight: 500;
}

.footer-bottom__mark { width: 32px; height: 32px; object-fit: contain; }

.footer-meta,
.footer-legal__list {
	display: flex;
	flex-wrap: wrap;
	gap: var(--s-2) var(--s-5);
	margin: 0;
	padding: 0;
	list-style: none;
}

.footer-legal { margin-left: auto; }

.footer-pay { display: flex; flex-wrap: wrap; gap: var(--s-2); margin: 0; padding: 0; list-style: none; }

.footer-pay img { display: block; width: 38px; height: 24px; border-radius: 4px; box-shadow: 0 0 0 1px var(--c-hairline-soft); }



.footer-legal a { color: var(--c-mute); }

/* Simplified checkout header */
.site-header--checkout { box-shadow: var(--sh-sticky); }

.site-header--checkout .header__inner { display: flex; }

.header__secure {
	display: inline-flex;
	align-items: center;
	gap: var(--s-2);
	margin: 0 auto;
	font: 600 var(--fs-label) / 1.4 var(--f-body);
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.header__back { font-size: var(--fs-caption); font-weight: 500; }

@media (max-width: 599px) {
	.site-header--checkout .brand__word,
	.header__secure .icon { display: none; }
}

/* Footer "More clubs" toggle (long Clubs column) */
.footer-more details > summary {
	display: inline-flex;
	align-items: center;
	gap: var(--s-1);
	min-height: 32px;
	color: var(--c-ink);
	font-size: var(--fs-caption);
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 3px;
	cursor: pointer;
	list-style: none;
	pointer-events: auto;
}

.footer-more details > summary::-webkit-details-marker { display: none; }

.footer-more details > summary::after { content: "+"; font-weight: 500; text-decoration: none; }

.footer-more details[open] > summary::after { content: "−"; }

.footer-links--more { padding: var(--s-2) 0 0; }

/* Live product search dropdown (assets/js/live-search.js) */
.live-search {
	position: absolute;
	top: calc(100% + 8px);
	right: 0;
	z-index: 60;
	width: min(420px, calc(100vw - 32px));
	max-height: min(70vh, 560px);
	overflow-y: auto;
	padding: var(--s-2);
	border-radius: 20px;
	background: var(--c-canvas);
	box-shadow: 0 12px 40px rgba(17, 17, 17, 0.16), 0 0 0 1px var(--c-hairline-soft);
	text-align: left;
}

.header-search .live-search,
.site-drawer .live-search,
.drawer .live-search { left: 0; right: 0; width: auto; }

.live-search__list { margin: 0; padding: 0; list-style: none; }

.live-search__item {
	display: grid;
	grid-template-columns: 64px 1fr;
	gap: var(--s-3);
	align-items: center;
	padding: var(--s-2);
	border-radius: 12px;
	color: var(--c-ink);
	text-decoration: none;
}

.live-search__list [aria-selected="true"] .live-search__item,
.live-search__item:hover { background: var(--c-cloud); }

.live-search__media { width: 64px; height: 64px; overflow: hidden; border-radius: 8px; background: var(--c-stage); }

.live-search__media img { display: block; width: 100%; height: 100%; object-fit: cover; }

.live-search__text { display: grid; gap: 2px; min-width: 0; }

.live-search__name { font-weight: 500; line-height: 1.3; }

.live-search__price { font-size: var(--fs-caption); }

.live-search__price .screen-reader-text { position: absolute; }

.live-search__status { margin: 0; padding: var(--s-2) var(--s-2) 0; color: var(--c-mute); font-size: var(--fs-caption); }

.live-search__status:empty { display: none; }

.live-search__all {
	position: sticky;
	bottom: 0;
	display: block;
	margin: var(--s-2) var(--s-2) var(--s-1);
	box-shadow: 0 -12px 16px var(--c-canvas);
	padding: 10px 16px;
	border-radius: 999px;
	background: var(--c-ink);
	color: #fff;
	font-weight: 500;
	text-align: center;
	text-decoration: none;
}

.live-search__all:hover { background: var(--c-charcoal); color: #fff; }

.search-pill.is-loading .search-pill__submit { opacity: 0.5; }
