/*
 * OakCrew sun-wear design system (v3). Loads last on storefront pages.
 * Direction from the leading UPF stores: white pages, daylight photography, navy + sky palette,
 * one clean sans-serif, pill buttons, trust strip, shop-by-who and shop-by-season sections.
 */

:root {
	--sun-navy: #12324d;
	--sun-navy-deep: #0b2236;
	--sun-ink: #13202c;
	--sun-slate: #5b6b79;
	--sun-sky: #eaf3f9;
	--sun-sky-strong: #cfe3f1;
	--sun-sand: #f7f2ea;
	--sun-accent: #f2a93b;
	--sun-line: rgba(19, 32, 44, 0.12);
	--sun-white: #ffffff;
	--sun-radius: 14px;
	--sun-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;

	/* Re-point the earlier tokens so product, collection and checkout pages follow. */
	--oak-ink: var(--sun-ink);
	--oak-forest: var(--sun-navy);
	--oak-moss: var(--sun-slate);
	--oak-cream: var(--sun-sky);
	--oak-paper: var(--sun-white);
	--oak-line: var(--sun-line);
	--oak-gold: var(--sun-accent);
	--oak-serif: var(--sun-font);
	--oak-sans: var(--sun-font);

	/* …and the responsive layer's own tokens. */
	--oc-page: var(--sun-white);
	--oc-surface: var(--sun-white);
	--oc-ink: var(--sun-ink);
	--oc-copy: var(--sun-slate);
	--oc-muted: var(--sun-slate);
	--oc-line: var(--sun-line);
	--oc-green: var(--sun-navy);
	--oc-accent: var(--sun-accent);
	--oc-serif: var(--sun-font);
	--oc-sans: var(--sun-font);
}

body.oakcrew-premium-home,
body.oakcrew-premium-pdp {
	background: var(--sun-white);
	color: var(--sun-ink);
	font-family: var(--sun-font);
	font-size: 16px;
	line-height: 1.6;
}

.oakcrew-premium-home h1,
.oakcrew-premium-home h2,
.oakcrew-premium-home h3,
.oakcrew-premium-pdp h1,
.oakcrew-premium-pdp h2,
.oakcrew-premium-pdp h3,
.oakcrew-premium-pdp .product_title,
.oakcrew-premium-pdp .oakcrew-mobile-product-title {
	font-family: var(--sun-font);
	font-weight: 650;
	letter-spacing: -0.02em;
}

/* Announcement bar. */
.oakcrew-announcement {
	background: var(--sun-navy);
	color: #fff;
	font-family: var(--sun-font);
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.01em;
	padding: 9px 16px;
	text-align: center;
}

/* Header: white, calm, sans. */
.oakcrew-premium-home .navigation-top,
.oakcrew-premium-pdp .navigation-top {
	background: rgba(255, 255, 255, 0.97);
	border-bottom: 1px solid var(--sun-line);
}

.oakcrew-premium-home .main-navigation a,
.oakcrew-premium-pdp .main-navigation a {
	color: var(--sun-ink);
	font-family: var(--sun-font);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.04em;
}

.oakcrew-premium-home .main-navigation a:hover,
.oakcrew-premium-pdp .main-navigation a:hover {
	color: var(--sun-navy);
}

/* Buttons. */
.oakcrew-sun-button,
.oakcrew-button {
	align-items: center;
	border: 1.5px solid transparent;
	border-radius: 999px;
	display: inline-flex;
	font-family: var(--sun-font);
	font-size: 15px;
	font-weight: 600;
	justify-content: center;
	letter-spacing: 0;
	min-height: 50px;
	padding: 0.8rem 1.6rem;
	text-decoration: none;
	text-transform: none;
	transition: background 160ms ease, color 160ms ease, border-color 160ms ease;
}

.oakcrew-sun-button-dark,
.oakcrew-button-dark {
	background: var(--sun-navy);
	color: #fff;
}

.oakcrew-sun-button-dark:hover,
.oakcrew-button-dark:hover {
	background: var(--sun-navy-deep);
	color: #fff;
}

.oakcrew-sun-button-light {
	background: #fff;
	color: var(--sun-navy);
}

.oakcrew-sun-button-light:hover {
	background: var(--sun-sky);
	color: var(--sun-navy);
}

.oakcrew-sun-button-ghost {
	border-color: rgba(255, 255, 255, 0.8);
	color: #fff;
}

.oakcrew-sun-button-ghost:hover {
	background: rgba(255, 255, 255, 0.14);
	color: #fff;
}

.oakcrew-sun-link {
	color: var(--sun-navy);
	font-size: 15px;
	font-weight: 600;
	text-decoration: none;
}

.oakcrew-sun-link:hover {
	text-decoration: underline;
	text-underline-offset: 0.25em;
}

.oakcrew-sun-link-light {
	color: #fff;
}

.oakcrew-sun-kicker {
	color: var(--sun-navy);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.08em;
	margin: 0 0 0.6rem;
	text-transform: uppercase;
}

/* Hero: full-bleed daylight photo, copy on a soft navy gradient. */
.oakcrew-sun-main {
	font-family: var(--sun-font);
}

.oakcrew-sun-hero {
	align-items: center;
	display: flex;
	min-height: min(82vh, 760px);
	overflow: hidden;
	position: relative;
}

.oakcrew-sun-hero-image {
	height: 100%;
	inset: 0;
	object-fit: cover;
	object-position: 60% 40%;
	position: absolute;
	width: 100%;
}

.oakcrew-sun-hero::after {
	background: linear-gradient(90deg, rgba(11, 34, 54, 0.72) 0%, rgba(11, 34, 54, 0.45) 42%, rgba(11, 34, 54, 0) 72%);
	content: "";
	inset: 0;
	position: absolute;
}

.oakcrew-sun-hero-copy {
	color: #fff;
	margin: 0 auto;
	max-width: 1240px;
	padding: 4rem 16px;
	position: relative;
	width: 100%;
	z-index: 1;
}

.oakcrew-sun-hero-copy > * {
	max-width: 560px;
}

.oakcrew-sun-pill {
	background: rgba(255, 255, 255, 0.16);
	border: 1px solid rgba(255, 255, 255, 0.35);
	border-radius: 999px;
	display: inline-block;
	font-size: 13px;
	font-weight: 600;
	margin: 0 0 1.25rem;
	padding: 0.35rem 0.9rem;
}

.oakcrew-sun-hero h1 {
	color: #fff;
	font-size: clamp(2.3rem, 5vw, 3.9rem);
	line-height: 1.05;
	margin: 0 0 1.1rem;
}

.oakcrew-sun-lede {
	color: rgba(255, 255, 255, 0.92);
	font-size: clamp(1rem, 1.4vw, 1.15rem);
	line-height: 1.6;
	margin: 0 0 1.75rem;
}

.oakcrew-sun-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
}

/* Trust strip. */
.oakcrew-sun-trust {
	border-bottom: 1px solid var(--sun-line);
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	list-style: none;
	margin: 0 auto;
	max-width: 1240px;
	padding: 1.4rem 16px;
}

.oakcrew-sun-trust li {
	align-items: center;
	display: flex;
	gap: 0.75rem;
	margin: 0;
}

.oakcrew-sun-trust .oakcrew-icon {
	background: var(--sun-sky);
	border-radius: 50%;
	box-sizing: content-box;
	color: var(--sun-navy);
	flex: 0 0 auto;
	padding: 9px;
}

.oakcrew-sun-trust span {
	color: var(--sun-slate);
	font-size: 13px;
	line-height: 1.35;
}

.oakcrew-sun-trust strong {
	color: var(--sun-ink);
	display: block;
	font-size: 15px;
	font-weight: 650;
}

/* Section scaffolding. */
.oakcrew-sun-section {
	margin: 0 auto;
	max-width: 1240px;
	padding: clamp(3.5rem, 7vw, 6rem) 16px 0;
}

.oakcrew-sun-heading {
	margin-bottom: 2rem;
	text-align: center;
}

.oakcrew-sun-heading h2 {
	color: var(--sun-ink);
	font-size: clamp(1.8rem, 3.2vw, 2.6rem);
	line-height: 1.12;
	margin: 0 0 0.5rem;
}

.oakcrew-sun-heading p:not(.oakcrew-sun-kicker) {
	color: var(--sun-slate);
	font-size: 1.05rem;
	margin: 0;
}

/* Shop by who: product cards with lifestyle photos. */
.oakcrew-sun-who {
	display: grid;
	gap: clamp(1rem, 2.4vw, 1.75rem);
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.oakcrew-sun-card,
.oakcrew-front-page .oakcrew-sun-card:not(.has-post-thumbnail):not(:first-child) {
	border: 0;
	display: flex;
	flex-direction: column;
	margin: 0;
}

.oakcrew-sun-card-media {
	aspect-ratio: 4 / 5;
	background: var(--sun-sky);
	border-radius: var(--sun-radius);
	display: block;
	overflow: hidden;
	position: relative;
}

.oakcrew-sun-card-media img {
	height: 100%;
	object-fit: cover;
	transition: transform 400ms ease;
	width: 100%;
}

.oakcrew-sun-card:hover .oakcrew-sun-card-media img {
	transform: scale(1.03);
}

.oakcrew-sun-badge {
	background: #fff;
	border-radius: 999px;
	color: var(--sun-navy);
	font-size: 12px;
	font-weight: 700;
	left: 12px;
	padding: 0.3rem 0.7rem;
	position: absolute;
	top: 12px;
}

.oakcrew-sun-card-body {
	padding: 1rem 0.25rem 0;
}

.oakcrew-sun-card-label {
	color: var(--sun-slate);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.06em;
	margin: 0 0 0.2rem;
	text-transform: uppercase;
}

.oakcrew-sun-card h3 {
	font-size: 1.15rem;
	line-height: 1.3;
	margin: 0 0 0.6rem;
}

.oakcrew-sun-card h3 a {
	color: var(--sun-ink);
	text-decoration: none;
}

.oakcrew-sun-swatches {
	display: flex;
	gap: 6px;
	list-style: none;
	margin: 0 0 0.8rem;
	padding: 0;
}

.oakcrew-sun-swatches li {
	border: 2px solid #fff;
	border-radius: 50%;
	box-shadow: 0 0 0 1px var(--sun-line);
	height: 18px;
	margin: 0;
	width: 18px;
}

.oakcrew-sun-card-foot {
	align-items: center;
	display: flex;
	justify-content: space-between;
}

.oakcrew-sun-price {
	color: var(--sun-ink);
	font-size: 1.05rem;
	font-weight: 650;
}

/* Seasons. */
.oakcrew-sun-seasons {
	display: grid;
	gap: clamp(1rem, 2.4vw, 1.75rem);
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.oakcrew-sun-season {
	aspect-ratio: 4 / 3;
	border-radius: var(--sun-radius);
	color: #fff;
	display: block;
	overflow: hidden;
	position: relative;
	text-decoration: none;
}

.oakcrew-sun-season img {
	height: 100%;
	object-fit: cover;
	position: absolute;
	transition: transform 400ms ease;
	width: 100%;
}

.oakcrew-sun-season:hover img {
	transform: scale(1.04);
}

.oakcrew-sun-season::after {
	background: linear-gradient(0deg, rgba(11, 34, 54, 0.78) 0%, rgba(11, 34, 54, 0) 62%);
	content: "";
	inset: 0;
	position: absolute;
}

.oakcrew-sun-season-copy {
	bottom: 0;
	left: 0;
	padding: 1.25rem;
	position: absolute;
	right: 0;
	z-index: 1;
}

.oakcrew-sun-season-copy strong {
	display: block;
	font-size: 1.3rem;
	font-weight: 650;
	letter-spacing: -0.01em;
	margin-bottom: 0.25rem;
}

.oakcrew-sun-season-copy span {
	color: rgba(255, 255, 255, 0.9);
	font-size: 14px;
	line-height: 1.45;
}

/* Family band. */
.oakcrew-sun-family {
	align-items: center;
	background: var(--sun-sky);
	border-radius: calc(var(--sun-radius) * 1.5);
	display: grid;
	gap: clamp(1.5rem, 4vw, 4rem);
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	margin: clamp(3.5rem, 7vw, 6rem) auto 0;
	max-width: 1240px;
	overflow: hidden;
	width: calc(100% - 32px);
}

.oakcrew-sun-family-media {
	align-self: stretch;
	min-height: 420px;
	position: relative;
}

.oakcrew-sun-family-media img {
	height: 100%;
	inset: 0;
	object-fit: cover;
	position: absolute;
	width: 100%;
}

.oakcrew-sun-family-copy {
	padding: clamp(2rem, 4vw, 3.5rem) clamp(1.5rem, 4vw, 3.5rem) clamp(2rem, 4vw, 3.5rem) 0;
}

.oakcrew-sun-family h2 {
	font-size: clamp(1.8rem, 3.2vw, 2.6rem);
	line-height: 1.12;
	margin: 0 0 1rem;
}

.oakcrew-sun-family-copy > p:not(.oakcrew-sun-kicker) {
	color: var(--sun-slate);
	font-size: 1.05rem;
	margin: 0 0 1.25rem;
}

.oakcrew-sun-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	list-style: none;
	margin: 0 0 1.75rem;
	padding: 0;
}

.oakcrew-sun-chips li {
	background: #fff;
	border-radius: 999px;
	color: var(--sun-navy);
	font-size: 14px;
	font-weight: 600;
	margin: 0;
	padding: 0.45rem 0.95rem;
}

/* UPF explainer. */
.oakcrew-sun-upf {
	background: var(--sun-navy);
	color: #fff;
	margin-top: clamp(3.5rem, 7vw, 6rem);
	padding: clamp(3.5rem, 7vw, 5.5rem) 16px;
}

.oakcrew-sun-upf-inner {
	margin: 0 auto;
	max-width: 1240px;
	text-align: center;
}

.oakcrew-sun-upf .oakcrew-sun-kicker {
	color: var(--sun-accent);
}

.oakcrew-sun-upf h2 {
	color: #fff;
}

.oakcrew-sun-steps {
	display: grid;
	gap: clamp(1.25rem, 3vw, 2.5rem);
	grid-template-columns: repeat(3, minmax(0, 1fr));
	list-style: none;
	margin: 0 0 2.25rem;
	padding: 0;
	text-align: left;
}

.oakcrew-sun-steps li {
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: var(--sun-radius);
	margin: 0;
	padding: 1.5rem;
}

.oakcrew-sun-step-number {
	align-items: center;
	background: var(--sun-accent);
	border-radius: 50%;
	color: var(--sun-navy-deep);
	display: inline-flex;
	font-size: 14px;
	font-weight: 700;
	height: 30px;
	justify-content: center;
	margin-bottom: 1rem;
	width: 30px;
}

.oakcrew-sun-steps strong {
	display: block;
	font-size: 1.15rem;
	font-weight: 650;
	margin-bottom: 0.4rem;
}

.oakcrew-sun-steps p {
	color: rgba(255, 255, 255, 0.82);
	font-size: 15px;
	margin: 0;
}

/* FAQ. */
.oakcrew-sun-faq-list {
	margin: 0 auto;
	max-width: 820px;
}

.oakcrew-sun-faq details {
	border-bottom: 1px solid var(--sun-line);
}

.oakcrew-sun-faq summary {
	color: var(--sun-ink);
	cursor: pointer;
	font-size: 1.05rem;
	font-weight: 600;
	list-style: none;
	padding: 1.2rem 2.5rem 1.2rem 0;
	position: relative;
}

.oakcrew-sun-faq summary::-webkit-details-marker {
	display: none;
}

.oakcrew-sun-faq summary::after {
	color: var(--sun-navy);
	content: "+";
	font-size: 1.5rem;
	font-weight: 400;
	line-height: 1;
	position: absolute;
	right: 0.25rem;
	top: 1.1rem;
}

.oakcrew-sun-faq details[open] summary::after {
	content: "−";
}

.oakcrew-sun-faq details p {
	color: var(--sun-slate);
	margin: 0 0 1.25rem;
	max-width: 680px;
}

/* Closing. */
.oakcrew-sun-closing {
	background: var(--sun-sand);
	border-radius: calc(var(--sun-radius) * 1.5);
	margin: clamp(3.5rem, 7vw, 6rem) auto clamp(3rem, 6vw, 5rem);
	max-width: 1240px;
	padding: clamp(2.5rem, 6vw, 4.5rem) 16px;
	text-align: center;
	width: calc(100% - 32px);
}

.oakcrew-sun-closing h2 {
	font-size: clamp(1.8rem, 3.2vw, 2.6rem);
	margin: 0 0 0.6rem;
}

.oakcrew-sun-closing p {
	color: var(--sun-slate);
	margin: 0 auto 1.5rem;
	max-width: 520px;
}

/* Footer: deep navy instead of forest. */
.oakcrew-premium-home .site-footer,
.oakcrew-premium-pdp .site-footer {
	background: var(--sun-navy-deep);
}

/* Product page and collection pick up the system. */
.oakcrew-premium-pdp .single_add_to_cart_button,
.oakcrew-premium-home .single_add_to_cart_button {
	background: var(--sun-navy) !important;
	border-radius: 999px !important;
	font-family: var(--sun-font);
	font-size: 15px !important;
	font-weight: 600 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
}

.oakcrew-premium-pdp .single_add_to_cart_button.disabled {
	opacity: 0.45;
}

.oakcrew-premium-pdp .oakcrew-pdp-reassurance strong {
	font-weight: 650;
}

.oakcrew-premium-shop .oakcrew-product-card .oakcrew-product-image,
.oakcrew-premium-home .oakcrew-product-card .oakcrew-product-image {
	border-radius: var(--sun-radius);
	overflow: hidden;
}

/* Checkout buttons follow the pill style. */
.oakcrew-checkout-body .button,
.oakcrew-checkout-body #place_order,
.oakcrew-checkout-body .checkout-button {
	border-radius: 999px;
	font-size: 15px;
	font-weight: 600;
	letter-spacing: 0;
	text-transform: none;
}

/* Tablet. */
@media (max-width: 960px) {
	.oakcrew-sun-trust {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.oakcrew-sun-who,
	.oakcrew-sun-seasons,
	.oakcrew-sun-steps {
		grid-template-columns: minmax(0, 1fr);
	}

	.oakcrew-sun-who {
		gap: 2rem;
		margin: 0 auto;
		max-width: 520px;
	}

	.oakcrew-sun-family {
		grid-template-columns: minmax(0, 1fr);
	}

	.oakcrew-sun-family-media {
		min-height: 320px;
	}

	.oakcrew-sun-family-copy {
		padding: 0 1.5rem 2rem;
	}
}

/* Phone. */
@media (max-width: 600px) {
	.oakcrew-sun-hero {
		align-items: flex-end;
		min-height: 88vh;
	}

	.oakcrew-sun-hero-image {
		object-position: 62% 50%;
	}

	.oakcrew-sun-hero::after {
		background: linear-gradient(0deg, rgba(11, 34, 54, 0.85) 0%, rgba(11, 34, 54, 0.55) 45%, rgba(11, 34, 54, 0.05) 75%);
	}

	.oakcrew-sun-hero-copy {
		padding: 2rem 16px 2.25rem;
	}

	.oakcrew-sun-actions .oakcrew-sun-button {
		flex: 1 1 100%;
	}

	.oakcrew-sun-trust {
		gap: 0.9rem 0.75rem;
		padding: 1.1rem 16px;
	}

	.oakcrew-sun-trust .oakcrew-icon {
		padding: 7px;
	}

	.oakcrew-sun-trust strong {
		font-size: 14px;
	}

	.oakcrew-sun-trust span {
		font-size: 12px;
	}

	.oakcrew-sun-heading {
		text-align: left;
	}

	.oakcrew-announcement {
		font-size: 12px;
	}
}

/* Homepage editorial pass: keep the commerce clarity, restore the original's
 * authentic-photo rhythm, and avoid another row of identical cards. */
.oakcrew-premium-home .oakcrew-sun-seasons-wrap .oakcrew-sun-heading {
	margin-left: 0;
	text-align: left;
}

.oakcrew-premium-home .oakcrew-editorial-seasons {
	display: grid;
	grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.8fr);
	grid-template-rows: repeat(2, minmax(220px, 1fr));
	min-height: 560px;
}

.oakcrew-premium-home .oakcrew-editorial-seasons .oakcrew-sun-season {
	aspect-ratio: auto;
	border-radius: 14px;
	min-height: 0;
}

.oakcrew-premium-home .oakcrew-editorial-seasons .oakcrew-sun-season-1 {
	grid-row: 1 / 3;
}

.oakcrew-premium-home .oakcrew-editorial-seasons .oakcrew-sun-season img {
	transform: none;
}

.oakcrew-premium-home .oakcrew-editorial-seasons .oakcrew-sun-season:hover img {
	transform: none;
}

.oakcrew-premium-home .oakcrew-editorial-seasons .oakcrew-sun-season-copy {
	padding: clamp(1.1rem, 2vw, 2rem);
}

.oakcrew-premium-home .oakcrew-colour-story {
	align-items: stretch;
	background: #f2eee8;
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(360px, 0.65fr);
	margin: clamp(3rem, 7vw, 6rem) auto 0;
	max-width: 1440px;
	min-height: 610px;
	overflow: hidden;
	width: 100%;
}

.oakcrew-premium-home .oakcrew-colour-story-media {
	min-height: 610px;
	position: relative;
}

.oakcrew-premium-home .oakcrew-colour-story-media img {
	height: 100%;
	inset: 0;
	object-fit: cover;
	position: absolute;
	width: 100%;
}

.oakcrew-premium-home .oakcrew-colour-story-copy {
	align-self: center;
	padding: clamp(2rem, 5vw, 5rem);
}

.oakcrew-premium-home .oakcrew-colour-story-copy h2 {
	font-size: clamp(2.15rem, 4vw, 4.35rem);
	line-height: 1.02;
	margin: 0 0 1.25rem;
}

.oakcrew-premium-home .oakcrew-colour-story-copy .oakcrew-sun-kicker {
	margin: 0 0 0.85rem;
}

.oakcrew-premium-home .oakcrew-colour-story-copy > p:not(.oakcrew-sun-kicker) {
	color: var(--sun-slate);
	font-size: 1.05rem;
	line-height: 1.7;
	margin: 0 0 2rem;
}

.oakcrew-colour-story-list {
	border-bottom: 1px solid rgba(58, 46, 38, 0.18);
	list-style: none;
	margin: 0 0 1.75rem;
	padding: 0;
}

.oakcrew-colour-story-list li {
	align-items: center;
	border-top: 1px solid rgba(58, 46, 38, 0.18);
	display: flex;
	font-family: var(--sun-heading);
	font-size: 1.15rem;
	font-weight: 650;
	gap: 0.8rem;
	margin: 0;
	padding: 1rem 0;
}

.oakcrew-colour-story-list li > span {
	border: 2px solid #fff;
	border-radius: 50%;
	box-shadow: 0 0 0 1px rgba(58, 46, 38, 0.18);
	height: 30px;
	width: 30px;
}

.oakcrew-premium-home .oakcrew-sun-family {
	border-radius: 0;
	max-width: 1440px;
	width: 100%;
}

.oakcrew-premium-home .oakcrew-sun-family-media img {
	border-radius: 0;
}

@media (max-width: 820px) {
	.oakcrew-premium-home .oakcrew-editorial-seasons {
		grid-template-columns: 1fr 1fr;
		grid-template-rows: minmax(360px, 1.3fr) minmax(210px, 0.7fr);
		min-height: 0;
	}

	.oakcrew-premium-home .oakcrew-editorial-seasons .oakcrew-sun-season-1 {
		grid-column: 1 / 3;
		grid-row: auto;
	}

	.oakcrew-premium-home .oakcrew-colour-story {
	grid-template-columns: 1fr;
	min-height: 0;
	}

	.oakcrew-premium-home .oakcrew-colour-story-media {
		min-height: min(72vw, 560px);
	}

	.oakcrew-premium-home .oakcrew-colour-story-copy {
		padding: clamp(2rem, 7vw, 3.5rem);
	}
}

@media (max-width: 600px) {
	.oakcrew-premium-home .oakcrew-editorial-seasons {
		display: grid;
		gap: 12px;
		grid-template-columns: 1fr;
		grid-template-rows: none;
		overflow: visible;
		padding: 0;
		scroll-snap-type: none;
	}

	.oakcrew-premium-home .oakcrew-editorial-seasons > *,
	.oakcrew-premium-home .oakcrew-editorial-seasons .oakcrew-sun-season-1 {
		grid-column: auto;
		grid-row: auto;
		min-width: 0;
	}

	.oakcrew-premium-home .oakcrew-editorial-seasons .oakcrew-sun-season {
		aspect-ratio: 4 / 3;
	}

	.oakcrew-premium-home .oakcrew-colour-story {
		margin-top: 3.25rem;
	}

	.oakcrew-premium-home .oakcrew-colour-story-media {
		min-height: 88vw;
	}

	.oakcrew-premium-home .oakcrew-colour-story-copy h2 {
		font-size: clamp(2rem, 11vw, 3.1rem);
	}
}

/* Light editorial UV explainer. The science stays precise, while the section
 * reads as part of the shop rather than as a dark presentation slide. */
.oakcrew-premium-home .oakcrew-uv-explainer {
	background: #f7f2ea;
	border-bottom: 1px solid rgba(58, 46, 38, 0.12);
	border-top: 1px solid rgba(58, 46, 38, 0.12);
	color: var(--sun-ink);
	padding: clamp(4rem, 7vw, 6.5rem) 0;
}

.oakcrew-premium-home .oakcrew-sun-upf.oakcrew-uv-explainer::before,
.oakcrew-premium-home .oakcrew-sun-upf.oakcrew-uv-explainer::after {
	display: none;
}

.oakcrew-premium-home .oakcrew-uv-explainer .oakcrew-sun-upf-inner {
	max-width: 1240px;
}

.oakcrew-premium-home .oakcrew-sun-upf.oakcrew-uv-explainer h2,
.oakcrew-premium-home .oakcrew-uv-facts h3 {
	color: var(--sun-ink);
}

.oakcrew-premium-home .oakcrew-sun-upf.oakcrew-uv-explainer .oakcrew-sun-kicker {
	color: var(--warm-clay);
}

.oakcrew-premium-home .oakcrew-uv-heading {
	margin-left: 0;
	margin-right: 0;
	max-width: 820px;
	text-align: left;
}

.oakcrew-premium-home .oakcrew-uv-heading > p:last-child {
	color: var(--sun-slate);
	font-size: 1.05rem;
	margin: 1rem 0 0;
	max-width: 780px;
}

.oakcrew-premium-home .oakcrew-uv-layout {
	align-items: center;
	gap: clamp(2rem, 5vw, 5rem);
	grid-template-columns: minmax(0, 1.15fr) minmax(330px, 0.85fr);
	margin: clamp(2.5rem, 5vw, 4rem) 0 2rem;
}

.oakcrew-premium-home .oakcrew-uv-figure {
	background: #fff;
	border: 1px solid rgba(58, 46, 38, 0.16);
	border-radius: 12px;
	box-shadow: none;
	padding: clamp(0.75rem, 2vw, 1.5rem);
}

.oakcrew-premium-home .oakcrew-uv-figure svg {
	max-height: 430px;
}

.oakcrew-premium-home .oakcrew-uv-figure svg text {
	fill: var(--sun-ink);
}

.oakcrew-premium-home .oakcrew-uv-figure .oakcrew-uv-label rect {
	fill: var(--sun-ink);
	stroke: none;
}

.oakcrew-premium-home .oakcrew-uv-figure .oakcrew-uv-label text {
	fill: #fff;
}

.oakcrew-premium-home .oakcrew-uv-figure figcaption {
	color: var(--sun-slate);
	font-size: 0.76rem;
	margin-top: 0.4rem;
}

.oakcrew-premium-home .oakcrew-uv-facts {
	border-bottom: 1px solid rgba(58, 46, 38, 0.16);
	display: block;
}

.oakcrew-premium-home .oakcrew-uv-facts article {
	align-items: flex-start;
	background: transparent;
	border: 0;
	border-radius: 0;
	border-top: 1px solid rgba(58, 46, 38, 0.16);
	box-shadow: none;
	gap: 1rem;
	grid-template-columns: 44px minmax(0, 1fr);
	padding: 1.35rem 0;
}

.oakcrew-premium-home .oakcrew-uv-facts article > span {
	background: #ead4b7;
	color: var(--sun-ink);
	height: 44px;
	width: 44px;
}

.oakcrew-premium-home .oakcrew-uv-facts h3 {
	font-size: 1.18rem;
	margin-bottom: 0.35rem;
}

.oakcrew-premium-home .oakcrew-uv-facts p {
	color: var(--sun-slate);
	font-size: 0.9rem;
	line-height: 1.55;
}

.oakcrew-premium-home .oakcrew-sun-upf.oakcrew-uv-explainer .oakcrew-sun-link-light {
	color: var(--sun-ink);
}

@media (max-width: 960px) {
	.oakcrew-premium-home .oakcrew-uv-layout {
		align-items: stretch;
		grid-template-columns: 1fr;
	}
}

@media (max-width: 600px) {
	.oakcrew-premium-home .oakcrew-uv-explainer {
		padding: 3.5rem 16px;
	}

	.oakcrew-premium-home .oakcrew-uv-heading h2 {
		font-size: clamp(2rem, 10vw, 2.8rem);
	}

	.oakcrew-premium-home .oakcrew-uv-heading > p:last-child {
		font-size: 0.96rem;
	}

	.oakcrew-premium-home .oakcrew-uv-layout {
		gap: 1.75rem;
		margin-top: 2rem;
	}

	.oakcrew-premium-home .oakcrew-uv-figure {
		border-radius: 10px;
		padding: 0.5rem;
	}

	.oakcrew-premium-home .oakcrew-uv-facts article {
		grid-template-columns: 44px minmax(0, 1fr);
		padding: 1.15rem 0;
	}
}

/* Conversion homepage v6: one clear path from product promise to purchase. */
.oakcrew-premium-home .oakcrew-sun-hero {
	align-items: stretch;
	background: #f7f2ea;
	display: grid;
	grid-template-columns: minmax(420px, 0.82fr) minmax(0, 1.18fr);
	margin: 0 auto;
	max-width: 1440px;
	min-height: 650px;
}

.oakcrew-premium-home .oakcrew-sun-hero::after {
	display: none;
}

.oakcrew-premium-home .oakcrew-sun-hero-image {
	grid-column: 2;
	grid-row: 1;
	height: 100%;
	inset: auto;
	object-fit: cover;
	object-position: 52% 50%;
	position: relative;
	width: 100%;
}

.oakcrew-premium-home .oakcrew-sun-hero-copy {
	align-self: stretch;
	color: var(--sun-ink);
	display: flex;
	flex-direction: column;
	grid-column: 1;
	grid-row: 1;
	justify-content: center;
	margin: 0;
	max-width: none;
	padding: clamp(3.5rem, 6vw, 6rem) clamp(2rem, 6vw, 6rem);
}

.oakcrew-premium-home .oakcrew-sun-hero-copy > * {
	max-width: 520px;
}

.oakcrew-premium-home .oakcrew-sun-hero h1 {
	color: var(--sun-ink);
	font-size: clamp(3rem, 5vw, 5rem);
	line-height: 0.98;
	margin-bottom: 1.35rem;
}

.oakcrew-premium-home .oakcrew-sun-hero .oakcrew-sun-lede {
	color: var(--sun-slate);
	font-size: 1.08rem;
	line-height: 1.65;
	margin-bottom: 2rem;
}

.oakcrew-premium-home .oakcrew-sun-hero .oakcrew-sun-actions {
	align-items: center;
	gap: 1.25rem;
}

.oakcrew-premium-home .oakcrew-sun-hero .oakcrew-sun-link {
	color: var(--sun-ink);
}

.oakcrew-premium-home .oakcrew-sun-trust {
	gap: clamp(1rem, 4vw, 3rem);
	grid-template-columns: repeat(3, minmax(0, 1fr));
	padding-bottom: 1.5rem;
	padding-top: 1.5rem;
}

.oakcrew-premium-home #oakcrew-who {
	padding-top: clamp(3.5rem, 6vw, 5rem);
}

.oakcrew-premium-home #oakcrew-who .oakcrew-sun-heading {
	margin-bottom: 1.75rem;
}

.oakcrew-premium-home .oakcrew-sun-family {
	background: #e2e8d8;
	border-radius: 12px;
	gap: 0;
	margin-top: clamp(4rem, 7vw, 6rem);
	max-width: 1240px;
	width: calc(100% - 32px);
}

.oakcrew-premium-home .oakcrew-sun-family-media {
	min-height: 500px;
}

.oakcrew-premium-home .oakcrew-sun-family-media img {
	border-radius: 12px 0 0 12px;
}

.oakcrew-premium-home .oakcrew-sun-family-copy {
	padding: clamp(2.5rem, 5vw, 4.5rem);
}

.oakcrew-premium-home .oakcrew-sun-family h2 {
	font-size: clamp(2.35rem, 4vw, 4.2rem);
	line-height: 1.02;
}

.oakcrew-premium-home .oakcrew-sun-chips {
	display: grid;
	gap: 0;
}

.oakcrew-premium-home .oakcrew-sun-chips li {
	background: transparent;
	border-bottom: 1px solid rgba(58, 46, 38, 0.16);
	border-radius: 0;
	padding: 0.75rem 0;
}

.oakcrew-home-story {
	align-items: stretch;
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(420px, 1.1fr);
	margin: clamp(4rem, 8vw, 7rem) auto 0;
	max-width: 1240px;
	min-height: 650px;
	width: calc(100% - 32px);
}

.oakcrew-home-story-copy {
	align-self: center;
	padding: clamp(2rem, 5vw, 5rem) clamp(2rem, 6vw, 5rem) clamp(2rem, 5vw, 5rem) 0;
}

.oakcrew-home-story-copy h2 {
	font-size: clamp(2.5rem, 4.4vw, 4.4rem);
	line-height: 1.02;
	margin: 0 0 1.25rem;
}

.oakcrew-home-story-copy > p:not(.oakcrew-sun-kicker) {
	color: var(--sun-slate);
	font-size: 1.05rem;
	line-height: 1.7;
	margin: 0 0 1.75rem;
}

.oakcrew-home-story-copy ul,
.oakcrew-home-upf-copy ul {
	border-bottom: 1px solid rgba(58, 46, 38, 0.16);
	list-style: none;
	margin: 0 0 1.75rem;
	padding: 0;
}

.oakcrew-home-story-copy li,
.oakcrew-home-upf-copy li {
	border-top: 1px solid rgba(58, 46, 38, 0.16);
	font-weight: 650;
	margin: 0;
	padding: 0.8rem 0;
}

.oakcrew-home-story-media {
	min-height: 650px;
	position: relative;
}

.oakcrew-home-story-media img {
	height: 100%;
	inset: 0;
	object-fit: cover;
	object-position: 50% 48%;
	position: absolute;
	width: 100%;
}

.oakcrew-premium-home .oakcrew-reviews {
	max-width: 1240px;
	padding-top: clamp(4rem, 8vw, 7rem);
}

.oakcrew-home-proof {
	border-bottom: 1px solid var(--sun-line);
	border-top: 1px solid var(--sun-line);
	padding: clamp(2.5rem, 5vw, 4rem) 0;
}

.oakcrew-home-proof-heading {
	align-items: end;
	display: grid;
	gap: clamp(2rem, 6vw, 6rem);
	grid-template-columns: 240px minmax(0, 1fr);
	margin-bottom: clamp(2rem, 4vw, 3rem);
}

.oakcrew-home-proof .oakcrew-trustpilot-score {
	background: transparent;
	border: 0;
	border-radius: 0;
	min-width: 0;
	padding: 0;
	text-align: left;
}

.oakcrew-home-proof .oakcrew-trustpilot-score .oakcrew-review-stars {
	display: block;
	margin-bottom: 0.8rem;
}

.oakcrew-home-proof .oakcrew-trustpilot-score strong {
	font-size: 2rem;
}

.oakcrew-home-proof-intro h2 {
	font-size: clamp(2rem, 3.5vw, 3.3rem);
	line-height: 1.05;
	margin: 0;
}

.oakcrew-home-review-grid {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.oakcrew-front-page .oakcrew-home-review-grid article.oakcrew-home-review-card {
	background: #fff;
	border: 1px solid var(--sun-line);
	border-radius: 18px;
	display: flex;
	flex-direction: column;
	margin: 0;
	min-height: 260px;
	padding: clamp(1.35rem, 2.4vw, 2rem);
}

.oakcrew-home-review-card .oakcrew-review-stars {
	color: #00a676;
	display: block;
	font-size: 1rem;
	letter-spacing: 0.08em;
	margin-bottom: 1.25rem;
}

.oakcrew-home-review-card blockquote {
	color: var(--sun-ink);
	font-family: var(--warm-serif);
	font-size: clamp(1.25rem, 1.8vw, 1.6rem);
	line-height: 1.3;
	margin: 0 0 1.5rem;
}

.oakcrew-home-review-card p {
	color: var(--sun-slate);
	font-size: 0.85rem;
	margin: auto 0 0;
}

.oakcrew-home-review-card p strong,
.oakcrew-home-review-card p span {
	display: block;
}

.oakcrew-home-review-card p strong {
	color: var(--sun-ink);
	font-size: 0.95rem;
	margin-bottom: 0.2rem;
}

.oakcrew-home-proof-link {
	display: inline-block;
	margin-top: 1.5rem;
}

.oakcrew-premium-home .oakcrew-uv-explainer {
	margin-top: clamp(4rem, 8vw, 7rem);
}

.oakcrew-premium-home .oakcrew-uv-layout {
	grid-template-columns: minmax(0, 0.95fr) minmax(360px, 1.05fr);
	margin: 0;
}

.oakcrew-premium-home .oakcrew-uv-photo {
	background: #e9e0d3;
	border: 0;
	border-radius: 24px;
	min-height: clamp(420px, 45vw, 620px);
	overflow: hidden;
	padding: 0;
	position: relative;
}

.oakcrew-premium-home .oakcrew-uv-photo-image {
	display: block;
	height: 100%;
	inset: 0;
	object-fit: cover;
	object-position: 42% center;
	position: absolute;
	width: 100%;
}

.oakcrew-premium-home .oakcrew-uv-photo::after {
	background: linear-gradient(180deg, transparent 58%, rgba(35, 29, 25, 0.55) 100%);
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
}

.oakcrew-premium-home .oakcrew-uv-photo figcaption {
	bottom: 1.25rem;
	color: #fff;
	font-size: 0.78rem;
	font-weight: 700;
	left: 1.25rem;
	letter-spacing: 0.12em;
	margin: 0;
	max-width: calc(100% - 2.5rem);
	position: absolute;
	text-align: left;
	text-transform: uppercase;
	z-index: 1;
}

.oakcrew-home-upf-copy {
	align-self: center;
}

.oakcrew-home-upf-copy h2 {
	color: var(--sun-ink);
	font-size: clamp(2.4rem, 4vw, 4rem);
	line-height: 1.02;
	margin: 0 0 1.25rem;
}

.oakcrew-home-upf-copy > p:not(.oakcrew-sun-kicker) {
	color: var(--sun-slate);
	font-size: 1.05rem;
	line-height: 1.7;
	margin: 0 0 1.5rem;
}

.oakcrew-premium-home .oakcrew-sun-faq {
	max-width: 900px;
	padding-top: clamp(4rem, 7vw, 6rem);
}

.oakcrew-premium-home .oakcrew-sun-closing {
	border-radius: 0;
	margin-top: clamp(4rem, 7vw, 6rem);
	max-width: none;
	padding-bottom: clamp(4rem, 7vw, 6rem);
	padding-top: clamp(4rem, 7vw, 6rem);
	width: 100%;
}

@media (max-width: 900px) {
	.oakcrew-premium-home .oakcrew-sun-hero {
		display: grid;
		grid-template-columns: 1fr;
		min-height: 0;
	}

	.oakcrew-premium-home .oakcrew-sun-hero-image {
		aspect-ratio: 16 / 10;
		grid-column: 1;
		grid-row: 1;
		height: auto;
	}

	.oakcrew-premium-home .oakcrew-sun-hero-copy {
		grid-column: 1;
		grid-row: 2;
		padding: clamp(2.5rem, 8vw, 4rem) clamp(1.5rem, 7vw, 3.5rem);
	}

	.oakcrew-premium-home .oakcrew-sun-hero h1 {
		font-size: clamp(2.8rem, 9vw, 4.8rem);
	}

	.oakcrew-home-story {
		grid-template-columns: 1fr 1fr;
	}

	.oakcrew-premium-home .oakcrew-uv-layout {
		grid-template-columns: 1fr;
	}

	.oakcrew-premium-home .oakcrew-uv-photo {
		min-height: min(72vw, 560px);
	}
}

@media (max-width: 600px) {
	.oakcrew-premium-home .oakcrew-uv-photo {
		border-radius: 16px;
		min-height: 78vw;
	}

	.oakcrew-premium-home .oakcrew-uv-photo figcaption {
		bottom: 1rem;
		left: 1rem;
		max-width: calc(100% - 2rem);
	}
}

@media (min-width: 701px) and (max-width: 960px) {
	.oakcrew-premium-home .oakcrew-sun-who {
		gap: 1rem;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		max-width: none;
	}

	.oakcrew-premium-home .oakcrew-sun-card-body {
		padding: 1rem;
	}

	.oakcrew-premium-home .oakcrew-sun-card h3 {
		font-size: 1rem;
	}

	.oakcrew-premium-home .oakcrew-sun-card-foot {
		align-items: flex-start;
		flex-direction: column;
		gap: 0.5rem;
	}
}

@media (max-width: 700px) {
	.oakcrew-premium-home .oakcrew-sun-hero-image {
		aspect-ratio: 16 / 9;
		object-position: 50% 46%;
	}

	.oakcrew-premium-home .oakcrew-sun-hero-copy {
		padding: 2.15rem 16px 2.5rem;
	}

	.oakcrew-premium-home .oakcrew-sun-hero h1 {
		font-size: clamp(2.65rem, 12vw, 3.55rem);
	}

	.oakcrew-premium-home .oakcrew-sun-hero .oakcrew-sun-actions {
		align-items: flex-start;
		flex-direction: column;
	}

	.oakcrew-premium-home .oakcrew-sun-hero .oakcrew-sun-button {
		flex: none;
		text-align: center;
		width: 100%;
	}

	.oakcrew-premium-home .oakcrew-sun-trust {
		grid-template-columns: 1fr;
		padding: 1rem 16px;
	}

	.oakcrew-premium-home .oakcrew-sun-trust li {
		border-bottom: 1px solid var(--sun-line);
		padding: 0.65rem 0;
	}

	.oakcrew-premium-home .oakcrew-sun-trust li:last-child {
		border-bottom: 0;
	}

	.oakcrew-premium-home .oakcrew-sun-family {
		border-radius: 0;
		width: 100%;
	}

	.oakcrew-premium-home .oakcrew-sun-family-media {
		min-height: 320px;
	}

	.oakcrew-premium-home .oakcrew-sun-family-media img {
		border-radius: 0;
	}

	.oakcrew-premium-home .oakcrew-sun-family-copy {
		padding: 2.5rem 16px 3rem;
	}

	.oakcrew-home-story {
		display: flex;
		flex-direction: column-reverse;
		min-height: 0;
		width: 100%;
	}

	.oakcrew-home-story-media {
		min-height: 125vw;
	}

	.oakcrew-home-story-copy {
		padding: 2.75rem 16px;
	}

	.oakcrew-home-proof {
		padding: 2.5rem 0;
	}

	.oakcrew-home-proof-heading {
		align-items: start;
		gap: 2rem;
		grid-template-columns: 1fr;
	}

	.oakcrew-home-proof .oakcrew-trustpilot-score {
		border-bottom: 1px solid var(--sun-line);
		padding-bottom: 2rem;
	}

	.oakcrew-home-review-grid {
		gap: 0.85rem;
		grid-auto-columns: minmax(82%, 1fr);
		grid-auto-flow: column;
		grid-template-columns: none;
		overflow-x: auto;
		padding: 0 16px 0.75rem 0;
		scroll-padding-left: 0;
		scroll-snap-type: x mandatory;
		-webkit-overflow-scrolling: touch;
	}

	.oakcrew-front-page .oakcrew-home-review-grid article.oakcrew-home-review-card {
		min-height: 250px;
		scroll-snap-align: start;
	}

	.oakcrew-premium-home .oakcrew-uv-explainer {
		margin-top: 4rem;
	}
}

/* ---------------------------------------------------------------
 * Product page: contained two-column layout like the leading UPF stores.
 * ------------------------------------------------------------- */
.oakcrew-premium-pdp .woocommerce-breadcrumb {
	color: var(--sun-slate);
	font-family: var(--sun-font);
	font-size: 13px;
	letter-spacing: 0;
	margin: 0 auto;
	max-width: 1240px;
	padding: 1.25rem 16px 0;
	text-transform: none;
}

.oakcrew-premium-pdp .woocommerce-breadcrumb a {
	color: var(--sun-slate);
}

.oakcrew-premium-pdp div.product {
	column-gap: clamp(2rem, 5vw, 4.5rem);
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
	margin: 0 auto;
	max-width: 1240px;
	padding: 1.25rem 16px 0;
}

.oakcrew-premium-pdp div.product > * {
	grid-column: 1 / -1;
}

.oakcrew-premium-pdp div.product > .woocommerce-product-gallery {
	float: none;
	grid-column: 1;
	margin: 0;
	width: 100% !important;
}

.oakcrew-premium-pdp div.product > .summary {
	align-self: start;
	float: none;
	grid-column: 2;
	margin: 0;
	padding: 0;
	position: sticky;
	top: 90px;
	width: 100% !important;
}

.oakcrew-premium-pdp .woocommerce-product-gallery__wrapper,
.oakcrew-premium-pdp .woocommerce-product-gallery .flex-viewport {
	border-radius: var(--sun-radius);
	overflow: hidden;
}

.oakcrew-premium-pdp .woocommerce-product-gallery .flex-control-thumbs {
	display: grid;
	gap: 8px;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	margin: 10px 0 0;
	padding: 0;
}

.oakcrew-premium-pdp .woocommerce-product-gallery .flex-control-thumbs li {
	float: none;
	margin: 0;
	width: auto !important;
}

.oakcrew-premium-pdp .woocommerce-product-gallery .flex-control-thumbs img {
	aspect-ratio: 1 / 1;
	border: 2px solid transparent;
	border-radius: 10px;
	height: auto;
	object-fit: cover;
	opacity: 0.7;
	width: 100%;
}

.oakcrew-premium-pdp .woocommerce-product-gallery .flex-control-thumbs img.flex-active,
.oakcrew-premium-pdp .woocommerce-product-gallery .flex-control-thumbs img:hover {
	border-color: var(--sun-navy);
	opacity: 1;
}

.oakcrew-premium-pdp .summary .product_title {
	color: var(--sun-ink);
	font-size: clamp(1.8rem, 2.6vw, 2.4rem);
	line-height: 1.1;
	margin: 0 0 0.6rem;
}

.oakcrew-premium-pdp .summary .price {
	color: var(--sun-ink);
	font-family: var(--sun-font);
	font-size: 1.5rem;
	font-weight: 650;
	margin: 0 0 1rem;
}

.oakcrew-premium-pdp .summary .oakcrew-product-lede {
	color: var(--sun-slate);
	font-size: 1rem;
	margin: 0 0 1.25rem;
}

/* Reassurance becomes three soft tiles. */
.oakcrew-premium-pdp .oakcrew-pdp-reassurance {
	border: 0;
	gap: 8px;
	margin: 0 0 1.25rem;
	padding: 0;
}

.oakcrew-premium-pdp .oakcrew-pdp-reassurance span {
	background: var(--sun-sky);
	border-radius: 12px;
	color: var(--sun-slate);
	font-size: 12px;
	letter-spacing: 0;
	padding: 0.75rem;
	text-transform: none;
}

.oakcrew-premium-pdp .oakcrew-pdp-reassurance strong {
	color: var(--sun-navy);
	font-family: var(--sun-font);
	font-size: 15px;
}

.oakcrew-premium-pdp .oakcrew-family-note {
	background: var(--sun-sand);
	border: 0;
	border-radius: 12px;
	margin: 0 0 1.25rem;
	padding: 0.8rem 1rem;
}

.oakcrew-premium-pdp .oakcrew-size-link {
	color: var(--sun-navy);
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0;
	text-transform: none;
}

/* Variation pickers. */
.oakcrew-premium-pdp table.variations th,
.oakcrew-premium-pdp table.variations th label {
	color: var(--sun-ink);
	font-family: var(--sun-font);
	font-size: 14px;
	font-weight: 650;
	letter-spacing: 0;
	text-transform: none;
}

.oakcrew-premium-pdp .variable-items-wrapper .variable-item.button-variable-item {
	border-radius: 999px;
	box-shadow: 0 0 0 1px var(--sun-line);
	font-family: var(--sun-font);
	font-size: 14px;
	font-weight: 600;
	min-height: 42px;
	min-width: 52px;
}

.oakcrew-premium-pdp .variable-items-wrapper .variable-item.button-variable-item.selected,
.oakcrew-premium-pdp .variable-items-wrapper .variable-item.button-variable-item:hover {
	background: var(--sun-navy);
	box-shadow: 0 0 0 1px var(--sun-navy);
	color: #fff;
}

.oakcrew-premium-pdp .variable-items-wrapper .variable-item.color-variable-item {
	border-radius: 50%;
	height: 38px;
	padding: 3px;
	width: 38px;
}

.oakcrew-premium-pdp .variable-items-wrapper .variable-item.color-variable-item .variable-item-span {
	border-radius: 50%;
}

.oakcrew-premium-pdp .variable-items-wrapper .variable-item.color-variable-item.selected {
	box-shadow: 0 0 0 2px var(--sun-navy);
}

/* Add to bag: full-width pill. */
.oakcrew-premium-pdp .woocommerce-variation-add-to-cart,
.oakcrew-premium-pdp form.cart:not(.variations_form) {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.oakcrew-premium-pdp .quantity .qty {
	border: 1px solid var(--sun-line);
	border-radius: 999px;
	min-height: 54px;
	width: 76px;
}

.oakcrew-premium-pdp .single_add_to_cart_button {
	flex: 1 1 200px;
	min-height: 54px;
}

.oakcrew-premium-pdp .oakcrew-choose-hint {
	flex-basis: 100%;
	margin: 0.2rem 0 0;
}

.oakcrew-premium-pdp .oakcrew-delivery-block {
	background: var(--sun-sky);
	border: 0;
	border-radius: 12px;
	margin-top: 1.25rem;
	padding: 1rem 1.1rem 0.4rem;
}

.oakcrew-premium-pdp .oakcrew-delivery-block strong {
	color: var(--sun-navy);
	font-size: 13px;
	letter-spacing: 0;
	text-transform: none;
}

.oakcrew-premium-pdp .product_meta {
	display: none;
}

/* Tabs: clean underline style. */
.oakcrew-premium-pdp .woocommerce-tabs {
	margin-top: clamp(3rem, 6vw, 5rem);
}

.oakcrew-premium-pdp .woocommerce-tabs ul.tabs {
	border-bottom: 1px solid var(--sun-line);
	display: flex;
	gap: 1.75rem;
	margin: 0 0 1.5rem;
	overflow-x: auto;
	padding: 0;
}

.oakcrew-premium-pdp .woocommerce-tabs ul.tabs::before,
.oakcrew-premium-pdp .woocommerce-tabs ul.tabs li::before,
.oakcrew-premium-pdp .woocommerce-tabs ul.tabs li::after {
	display: none;
}

.oakcrew-premium-pdp .woocommerce-tabs ul.tabs li {
	background: transparent !important;
	border: 0 !important;
	border-radius: 0;
	margin: 0;
	padding: 0;
}

.oakcrew-premium-pdp .woocommerce-tabs ul.tabs li a {
	border-bottom: 2px solid transparent;
	color: var(--sun-slate) !important;
	display: block;
	font-family: var(--sun-font);
	font-size: 15px;
	font-weight: 600;
	letter-spacing: 0;
	padding: 0.75rem 0;
	text-transform: none;
	white-space: nowrap;
}

.oakcrew-premium-pdp .woocommerce-tabs ul.tabs li.active a {
	border-bottom-color: var(--sun-navy);
	color: var(--sun-ink) !important;
}

.oakcrew-premium-pdp .woocommerce-tabs .panel {
	color: var(--sun-ink);
	font-family: var(--sun-font);
	max-width: 760px;
}

/* Value band and related products sit in the same container rhythm. */
.oakcrew-premium-pdp .oakcrew-pdp-value {
	border-radius: calc(var(--sun-radius) * 1.5);
	margin-top: clamp(3rem, 6vw, 5rem);
}

.oakcrew-premium-pdp section.related {
	margin-top: clamp(3rem, 6vw, 5rem);
}

.oakcrew-premium-pdp section.related > h2 {
	font-size: clamp(1.5rem, 2.4vw, 2rem);
	margin-bottom: 1.25rem;
}

.oakcrew-premium-pdp section.related ul.products li.product img {
	border-radius: var(--sun-radius);
}

@media (max-width: 900px) {
	.oakcrew-premium-pdp div.product {
		display: block;
	}

	.oakcrew-premium-pdp div.product > .summary {
		margin-top: 1.25rem;
		position: static;
	}

	.oakcrew-premium-pdp .woocommerce-product-gallery .flex-control-thumbs {
		display: flex;
		gap: 8px;
		overflow-x: auto;
	}

	.oakcrew-premium-pdp .woocommerce-product-gallery .flex-control-thumbs li {
		flex: 0 0 64px;
	}
}

/* Swatch plugin and legacy overrides need extra weight. */
body.woo-variation-swatches.oakcrew-premium-pdp .variable-items-wrapper .variable-item.button-variable-item {
	border-radius: 999px !important;
	padding: 0 14px;
}

body.woo-variation-swatches.oakcrew-premium-pdp .variable-items-wrapper .variable-item.color-variable-item,
body.woo-variation-swatches.oakcrew-premium-pdp .variable-items-wrapper .variable-item.color-variable-item .variable-item-span {
	border-radius: 50% !important;
}

.oakcrew-premium-pdp .single_add_to_cart_button.disabled,
.oakcrew-premium-pdp .single_add_to_cart_button:disabled {
	background: var(--sun-navy) !important;
	color: #fff !important;
	opacity: 0.4;
}

.oakcrew-premium-pdp section.related ul.products::before,
.oakcrew-premium-pdp section.related ul.products::after {
	display: none;
}

/* Keep tabs horizontal on small screens (earlier pass stacked them). */
@media (max-width: 960px) {
	.oakcrew-premium-pdp .woocommerce-tabs ul.tabs {
		align-items: stretch;
		flex-direction: row;
		gap: 1.25rem;
	}

	.oakcrew-premium-pdp .woocommerce-tabs ul.tabs li,
	.oakcrew-premium-pdp .woocommerce-tabs ul.tabs li.active {
		border-bottom: 0 !important;
		padding: 0;
		width: auto;
	}
}

.oakcrew-premium-pdp .oakcrew-mobile-product-intro .price {
	font-family: var(--sun-font);
	font-weight: 650;
}

/* Collection page cards follow the homepage cards. */
.oakcrew-premium-shop .oakcrew-shop-intro h1 {
	font-size: clamp(2rem, 4vw, 3.2rem);
	line-height: 1.08;
}

.oakcrew-premium-shop .oakcrew-product-card .oakcrew-product-audience {
	color: var(--sun-slate);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.06em;
}

.oakcrew-premium-shop .oakcrew-product-card h2 {
	font-size: 1.15rem;
	font-weight: 650;
	letter-spacing: -0.01em;
	line-height: 1.3;
}

.oakcrew-premium-shop .oakcrew-card-meta,
.oakcrew-premium-shop .oakcrew-card-meta a {
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0;
	text-transform: none;
}

.oakcrew-premium-shop .oakcrew-card-meta .amount {
	font-size: 1.05rem;
	font-weight: 650;
}

.oakcrew-premium-shop .oakcrew-shop-promise {
	border-radius: calc(var(--sun-radius) * 1.5);
	margin: clamp(2.5rem, 5vw, 4rem) auto;
	max-width: 1240px;
	width: calc(100% - 32px);
}

.oakcrew-premium-shop .oakcrew-shop-promise strong {
	font-family: var(--sun-font);
	font-weight: 650;
}

.oakcrew-shop-seo {
	background: var(--sun-sky);
	border-radius: calc(var(--sun-radius) * 1.5);
	display: grid;
	gap: clamp(2rem, 5vw, 4.5rem);
	grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.65fr);
	margin: 0 auto clamp(4rem, 8vw, 7rem);
	max-width: 1240px;
	padding: clamp(2rem, 5vw, 4.5rem);
	width: calc(100% - 32px);
}

.oakcrew-shop-seo-intro h2 {
	color: var(--sun-navy);
	font-family: var(--warm-serif);
	font-size: clamp(2rem, 3.7vw, 3.5rem);
	font-weight: 500;
	letter-spacing: -0.035em;
	line-height: 1.05;
	margin: 0;
}

.oakcrew-shop-seo-grid {
	display: grid;
	gap: 1.75rem;
}

.oakcrew-shop-seo-grid > div {
	border-top: 1px solid rgba(18, 50, 77, 0.2);
	padding-top: 1.25rem;
}

.oakcrew-shop-seo-grid h3 {
	color: var(--sun-ink);
	font-size: 1rem;
	font-weight: 750;
	margin: 0 0 0.55rem;
}

.oakcrew-shop-seo-grid p {
	color: var(--sun-slate);
	font-size: 0.98rem;
	line-height: 1.75;
	margin: 0;
}

@media (max-width: 800px) {
	.oakcrew-shop-seo {
		grid-template-columns: 1fr;
	}
}

/* Tablet: copy sits at the bottom on a vertical gradient, like phones, so it never crosses bright walls. */
@media (max-width: 900px) {
	.oakcrew-sun-hero {
		align-items: flex-end;
		min-height: min(88vh, 820px);
	}

	.oakcrew-sun-hero::after {
		background: linear-gradient(0deg, rgba(11, 34, 54, 0.88) 0%, rgba(11, 34, 54, 0.6) 42%, rgba(11, 34, 54, 0.05) 75%);
	}

	.oakcrew-sun-hero-copy {
		padding-bottom: 2.5rem;
	}
}

/* ---------------------------------------------------------------
 * Refinement pass: header, cards, comparison, sticky buy bar, footer.
 * ------------------------------------------------------------- */

/* Header: white, sticky, sans wordmark, cart as a pill. */
.oakcrew-premium-home .site-header,
.oakcrew-premium-pdp .site-header {
	background: rgba(255, 255, 255, 0.98);
	border-bottom: 1px solid var(--sun-line);
	position: sticky;
	top: 0;
	z-index: 50;
}

.oakcrew-premium-home .navigation-top,
.oakcrew-premium-pdp .navigation-top {
	border: 0;
}

.oakcrew-premium-home .main-navigation .menu-scroll-down,
.oakcrew-premium-pdp .main-navigation .menu-scroll-down {
	color: var(--sun-navy);
	font-size: 17px;
	font-weight: 800;
	letter-spacing: 0.22em;
}

.oakcrew-premium-home #wpmenucartli a,
.oakcrew-premium-pdp #wpmenucartli a,
.oakcrew-premium-home .oakcrew-menu-cart a,
.oakcrew-premium-pdp .oakcrew-menu-cart a {
	background: var(--sun-navy);
	border-radius: 999px;
	color: #fff;
	padding: 0.45rem 0.95rem;
}

.oakcrew-premium-home #wpmenucartli a:hover,
.oakcrew-premium-pdp #wpmenucartli a:hover {
	background: var(--sun-navy-deep);
	color: #fff;
}

.oakcrew-premium-home #wpmenucartli i,
.oakcrew-premium-pdp #wpmenucartli i {
	margin-right: 0.35rem;
}

.main-navigation a.oakcrew-mobile-cart {
	display: none;
}

@media (max-width: 767px) {
	.oakcrew-announcement-extra {
		display: none;
	}
}

@media (max-width: 900px) {
	.oakcrew-premium-home .main-navigation .menu-scroll-down,
	.oakcrew-premium-pdp .main-navigation .menu-scroll-down {
		border: 0;
		box-shadow: none;
		text-decoration: none;
	}

	.oakcrew-mobile-cart {
		align-items: center;
		color: var(--sun-navy);
		display: inline-flex;
		gap: 2px;
		position: absolute;
		right: 64px;
		text-decoration: none;
		top: 50%;
		transform: translateY(-50%);
	}

	.oakcrew-mobile-cart span {
		background: var(--sun-navy);
		border-radius: 999px;
		color: #fff;
		font-size: 11px;
		font-weight: 700;
		line-height: 1;
		min-width: 18px;
		padding: 3px 5px;
		text-align: center;
	}
}

@media (max-width: 900px) {
	body.oakcrew-premium-home .main-navigation a.menu-scroll-down,
	body.oakcrew-premium-pdp .main-navigation a.menu-scroll-down {
		border-bottom: 0;
		width: auto;
	}
}

@media (max-width: 900px) {
	body.oakcrew-premium-home .main-navigation a.oakcrew-mobile-cart,
	body.oakcrew-premium-pdp .main-navigation a.oakcrew-mobile-cart {
		border: 0;
		display: inline-flex;
		left: auto;
		padding: 6px;
		width: auto;
	}
}

/* Size range on cards. */
.oakcrew-sun-sizes {
	color: var(--sun-slate);
	font-size: 13px;
	margin: -0.3rem 0 0.6rem;
}

/* Sunscreen vs UPF comparison. */
.oakcrew-sun-compare-table {
	border: 1px solid var(--sun-line);
	border-radius: var(--sun-radius);
	margin: 0 auto;
	max-width: 920px;
	overflow: hidden;
}

.oakcrew-sun-compare-row {
	align-items: center;
	border-top: 1px solid var(--sun-line);
	display: grid;
	gap: 1rem;
	grid-template-columns: 1fr 1.2fr 1.2fr;
	padding: 1rem 1.5rem;
}

.oakcrew-sun-compare-row:first-child {
	border-top: 0;
}

.oakcrew-sun-compare-head {
	background: var(--sun-sky);
	color: var(--sun-navy);
	font-size: 14px;
	font-weight: 700;
}

.oakcrew-sun-compare-row strong {
	color: var(--sun-ink);
	font-size: 15px;
	font-weight: 650;
}

.oakcrew-sun-compare-row span {
	color: var(--sun-slate);
	font-size: 15px;
}

.oakcrew-sun-compare-row span:last-child {
	color: var(--sun-ink);
	font-weight: 500;
}

.oakcrew-sun-compare-row:not(.oakcrew-sun-compare-head) span:last-child::before {
	color: var(--sun-navy);
	content: "✓ ";
	font-weight: 700;
}

/* Phones: swipeable card rows like the reference stores, stacked comparison. */
@media (max-width: 600px) {
	.oakcrew-sun-who,
	.oakcrew-sun-seasons {
		display: flex;
		gap: 12px;
		margin: 0 -16px;
		max-width: none;
		overflow-x: auto;
		padding: 0 16px 6px;
		scroll-padding: 0 16px;
		scroll-snap-type: x mandatory;
		scrollbar-width: none;
	}

	.oakcrew-sun-who::-webkit-scrollbar,
	.oakcrew-sun-seasons::-webkit-scrollbar {
		display: none;
	}

	.oakcrew-sun-who > *,
	.oakcrew-sun-seasons > * {
		flex: 0 0 80%;
		scroll-snap-align: start;
	}

	.oakcrew-sun-compare-head {
		display: none;
	}

	.oakcrew-sun-compare-row {
		gap: 0.35rem;
		grid-template-columns: 1fr;
		padding: 1rem 1.1rem;
	}

	.oakcrew-sun-compare-row span::before {
		color: var(--sun-slate);
		content: attr(data-label) ": ";
		font-weight: 600;
	}

	.oakcrew-sun-compare-row:not(.oakcrew-sun-compare-head) span:last-child::before {
		color: var(--sun-navy);
		content: "✓ " attr(data-label) ": ";
	}
}

/* Sticky buy bar (phones only). */
.oakcrew-buy-bar {
	display: none;
}

@media (max-width: 767px) {
	.oakcrew-buy-bar:not([hidden]) {
		align-items: center;
		background: #fff;
		border-top: 1px solid var(--sun-line);
		bottom: 0;
		box-shadow: 0 -6px 20px rgba(19, 32, 44, 0.08);
		display: flex;
		font-family: var(--sun-font);
		gap: 12px;
		left: 0;
		padding: 10px 16px calc(10px + env(safe-area-inset-bottom));
		position: fixed;
		right: 0;
		z-index: 60;
	}

	.oakcrew-buy-bar-info {
		flex: 1 1 auto;
		line-height: 1.25;
		min-width: 0;
	}

	.oakcrew-buy-bar-info strong {
		color: var(--sun-ink);
		display: block;
		font-size: 13px;
		font-weight: 650;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	.oakcrew-buy-bar-info span {
		color: var(--sun-ink);
		font-size: 15px;
		font-weight: 650;
	}

	.oakcrew-buy-bar-button {
		background: var(--sun-navy);
		border: 0;
		border-radius: 999px;
		color: #fff;
		flex: 0 0 auto;
		font-family: var(--sun-font);
		font-size: 15px;
		font-weight: 600;
		min-height: 48px;
		padding: 0 1.4rem;
	}

	body.oakcrew-buy-bar-visible .site-footer {
		padding-bottom: 80px;
	}

	body.oakcrew-buy-bar-visible #cookie-law-info-bar {
		bottom: 80px !important;
	}
}

/* Store footer. */
.oakcrew-premium-home .site-footer .site-info,
.oakcrew-premium-pdp .site-footer .site-info {
	display: none;
}

.oakcrew-premium-home .site-footer .wrap,
.oakcrew-premium-pdp .site-footer .wrap {
	max-width: 1240px;
	padding: clamp(3rem, 6vw, 4.5rem) 16px 1.5rem;
}

.oakcrew-footer {
	display: grid;
	font-family: var(--sun-font);
	gap: 2.5rem;
	grid-template-columns: 1.6fr repeat(3, 1fr);
}

.oakcrew-footer-logo {
	color: #fff !important;
	display: inline-block;
	font-size: 17px;
	font-weight: 800;
	letter-spacing: 0.22em;
	margin-bottom: 1rem;
	text-decoration: none;
}

.oakcrew-footer-brand p {
	color: rgba(255, 255, 255, 0.72);
	font-size: 14px;
	line-height: 1.6;
	margin: 0 0 1rem;
	max-width: 360px;
}

.oakcrew-footer-brand .oakcrew-footer-delivery {
	color: var(--sun-accent);
	font-weight: 600;
}

.oakcrew-footer-title {
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.08em;
	margin: 0 0 1rem;
	text-transform: uppercase;
}

.oakcrew-footer-column ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.oakcrew-footer-column li {
	margin: 0 0 0.6rem;
}

.oakcrew-footer a {
	color: rgba(255, 255, 255, 0.78);
	font-size: 14px;
	text-decoration: none;
}

.oakcrew-footer a:hover,
.oakcrew-footer-bottom a:hover {
	color: #fff;
	text-decoration: underline;
	text-underline-offset: 0.25em;
}

.oakcrew-footer-bottom {
	border-top: 1px solid rgba(255, 255, 255, 0.14);
	color: rgba(255, 255, 255, 0.6);
	display: flex;
	flex-wrap: wrap;
	font-family: var(--sun-font);
	font-size: 13px;
	gap: 1rem;
	justify-content: space-between;
	margin-top: 2.5rem;
	padding-top: 1.25rem;
}

.oakcrew-footer-social {
	display: flex;
	gap: 1.25rem;
}

.oakcrew-footer-bottom a {
	color: rgba(255, 255, 255, 0.78);
	text-decoration: none;
}

@media (max-width: 900px) {
	.oakcrew-footer {
		grid-template-columns: repeat(3, 1fr);
	}

	.oakcrew-footer-brand {
		grid-column: 1 / -1;
	}
}

@media (max-width: 600px) {
	.oakcrew-footer {
		gap: 2rem 1.5rem;
		grid-template-columns: repeat(2, 1fr);
	}
}

/* WooCommerce's ".woocommerce a.button" (empty cart "return to shop") outranks the checkout button rule. */
.oakcrew-checkout-body .woocommerce a.button,
.oakcrew-checkout-body .woocommerce a.button:hover {
	background: var(--sun-navy);
	border-radius: 999px;
	color: #fff;
	font-family: var(--sun-font);
	font-size: 15px;
	font-weight: 600;
	padding: 0.85rem 1.6rem;
	text-transform: none;
}

/* ===============================================================
 * Warm & soft direction (v4). Re-points the sun tokens to cosy, natural tones
 * after feedback that navy felt cold and "engineered". References: Kyte Baby,
 * Konges Sløjd, Jamie Kay, Boody (bamboo and family apparel).
 * ============================================================= */
:root {
	--sun-navy: #4a3a30;        /* warm cocoa: primary buttons, headings accents */
	--sun-navy-deep: #382b23;
	--sun-ink: #3a2e27;
	--sun-slate: #7a6a5f;
	--sun-sky: #f6efe4;         /* oat */
	--sun-sky-strong: #eadcc8;  /* sand */
	--sun-sand: #f3e6d6;
	--sun-accent: #d99b5b;      /* honey */
	--warm-clay: #c9785b;
	--warm-sage: #dfe5d3;
	--warm-sage-deep: #8c9a7c;
	--warm-cream: #fbf7f1;
	--sun-line: rgba(74, 58, 48, 0.14);
	--sun-white: #fffdf9;
	--sun-radius: 26px;
	--sun-font: "Nunito", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--warm-serif: "Fraunces", Georgia, serif;
	--oak-serif: var(--warm-serif);
	--oc-serif: var(--warm-serif);
}

body.oakcrew-premium-home,
body.oakcrew-premium-pdp {
	background-color: var(--warm-cream);
	/* faint paper grain for softness */
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .35 0 0 0 0 .27 0 0 0 0 .2 0 0 0 .045 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

.oakcrew-premium-home h1,
.oakcrew-premium-home h2,
.oakcrew-premium-pdp h1,
.oakcrew-premium-pdp h2,
.oakcrew-premium-pdp .product_title,
.oakcrew-premium-pdp .oakcrew-mobile-product-title,
.oakcrew-sun-season-copy strong,
.oakcrew-sun-steps strong {
	font-family: var(--warm-serif);
	font-variation-settings: "SOFT" 100, "opsz" 72;
	font-weight: 500;
	letter-spacing: -0.015em;
}

.oakcrew-premium-home h3,
.oakcrew-premium-pdp h3 {
	font-family: var(--sun-font);
	font-weight: 800;
	letter-spacing: -0.005em;
}

.oakcrew-sun-heading h2 em,
.oakcrew-sun-hero h1 em {
	color: var(--warm-clay);
	font-style: italic;
}

.oakcrew-announcement {
	background: var(--sun-navy);
	color: #fbeee0;
	font-weight: 600;
}

.oakcrew-premium-home .site-header,
.oakcrew-premium-pdp .site-header {
	background: rgba(251, 247, 241, 0.96);
}

.oakcrew-premium-home .main-navigation .menu-scroll-down,
.oakcrew-premium-pdp .main-navigation .menu-scroll-down {
	color: var(--sun-navy);
	font-family: var(--warm-serif);
	font-size: 19px;
	font-variation-settings: "SOFT" 100;
	font-weight: 600;
	letter-spacing: 0.12em;
}

.oakcrew-sun-kicker {
	color: var(--warm-clay);
	font-weight: 800;
	letter-spacing: 0.12em;
}

/* Buttons: soft cocoa pills with a gentle lift. */
.oakcrew-sun-button,
.oakcrew-button {
	box-shadow: 0 6px 18px -8px rgba(74, 58, 48, 0.45);
	font-weight: 700;
}

.oakcrew-sun-button:hover {
	transform: translateY(-1px);
}

.oakcrew-sun-button-light {
	background: var(--warm-cream);
	color: var(--sun-navy);
}

.oakcrew-sun-button-ghost {
	box-shadow: none;
}

/* Trust strip: icons in soft sand circles. */
.oakcrew-sun-trust {
	border: 0;
}

.oakcrew-sun-trust .oakcrew-icon {
	background: var(--sun-sky-strong);
	color: var(--sun-navy);
}

/* Cards: rounded, warm, sticker badge. */
.oakcrew-sun-card-media {
	background: var(--sun-sky-strong);
	border-radius: var(--sun-radius);
}

.oakcrew-sun-badge {
	align-items: center;
	background: var(--sun-accent);
	border-radius: 50%;
	box-shadow: 0 4px 12px -4px rgba(74, 58, 48, 0.4);
	color: #fff;
	display: flex;
	font-size: 11px;
	font-weight: 800;
	height: 58px;
	justify-content: center;
	left: auto;
	line-height: 1.05;
	padding: 0;
	right: 14px;
	text-align: center;
	top: 14px;
	transform: rotate(-10deg);
	width: 58px;
}

.oakcrew-sun-card-label {
	color: var(--warm-clay);
	font-weight: 800;
}

.oakcrew-sun-swatches li {
	box-shadow: 0 0 0 1px var(--sun-line), 0 2px 4px rgba(74, 58, 48, 0.12);
}

/* Seasons: arched tops like soft windows. */
.oakcrew-sun-season {
	border-radius: 200px 200px var(--sun-radius) var(--sun-radius);
}

.oakcrew-sun-season::after {
	background: linear-gradient(0deg, rgba(56, 43, 35, 0.78) 0%, rgba(56, 43, 35, 0) 60%);
}

/* Family band: soft sage. */
.oakcrew-sun-family {
	background: var(--warm-sage);
	border-radius: calc(var(--sun-radius) * 1.4);
}

.oakcrew-sun-family-media img {
	border-radius: 0 200px 200px 0;
}

.oakcrew-sun-chips li {
	background: var(--warm-cream);
	color: var(--sun-navy);
}

.oakcrew-sun-family .oakcrew-sun-kicker {
	color: var(--warm-sage-deep);
}

/* UPF explainer: warm sand instead of navy, with wavy edges. */
.oakcrew-sun-upf {
	background: var(--sun-sand);
	color: var(--sun-ink);
	position: relative;
}

.oakcrew-sun-upf::before,
.oakcrew-sun-upf::after {
	background: no-repeat center / 100% 100% url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 40' preserveAspectRatio='none'%3E%3Cpath d='M0 40 C240 0 480 0 720 20 C960 40 1200 40 1440 10 L1440 40 Z' fill='%23f3e6d6'/%3E%3C/svg%3E");
	content: "";
	height: 40px;
	left: 0;
	position: absolute;
	right: 0;
	top: -39px;
}

.oakcrew-sun-upf::after {
	bottom: -39px;
	top: auto;
	transform: rotate(180deg);
}

.oakcrew-sun-upf h2 {
	color: var(--sun-ink);
}

.oakcrew-sun-upf .oakcrew-sun-kicker {
	color: var(--warm-clay);
}

.oakcrew-sun-steps li {
	background: var(--warm-cream);
	border: 0;
	box-shadow: 0 10px 30px -18px rgba(74, 58, 48, 0.35);
}

.oakcrew-sun-steps p {
	color: var(--sun-slate);
}

.oakcrew-sun-step-number {
	background: var(--sun-accent);
	color: #fff;
}

.oakcrew-sun-link-light {
	color: var(--sun-navy);
}

/* Comparison and FAQ in warm tones. */
.oakcrew-sun-compare-table {
	background: var(--sun-white);
	border: 0;
	box-shadow: 0 16px 40px -28px rgba(74, 58, 48, 0.45);
}

.oakcrew-sun-compare-head {
	background: var(--sun-sky-strong);
}

.oakcrew-sun-compare-row:not(.oakcrew-sun-compare-head) span:last-child::before {
	color: var(--warm-sage-deep);
}

.oakcrew-sun-faq summary::after {
	color: var(--warm-clay);
}

/* Closing: honey-sand band. */
.oakcrew-sun-closing {
	background: var(--sun-sky-strong);
	border-radius: calc(var(--sun-radius) * 1.4);
}

/* Footer: warm cocoa. */
.oakcrew-premium-home .site-footer,
.oakcrew-premium-pdp .site-footer {
	background: var(--sun-navy-deep);
}

.oakcrew-footer-logo {
	font-family: var(--warm-serif);
	letter-spacing: 0.12em;
}

/* One shared typography and navigation system across every public page. */
body.oakcrew-premium-site {
	color: var(--sun-ink);
	font-family: var(--sun-font);
	font-weight: 400;
}

body.oakcrew-premium-site button,
body.oakcrew-premium-site input,
body.oakcrew-premium-site select,
body.oakcrew-premium-site textarea,
body.oakcrew-premium-site .elementor-widget-text-editor,
body.oakcrew-premium-site .elementor-widget-text-editor p {
	font-family: var(--sun-font) !important;
}

body.oakcrew-premium-site .elementor h1,
body.oakcrew-premium-site .elementor h2,
body.oakcrew-premium-site .entry-title,
body.oakcrew-premium-site .page-title {
	font-family: var(--warm-serif) !important;
	font-variation-settings: "SOFT" 100, "opsz" 72;
	font-weight: 500;
}

body.oakcrew-premium-site .elementor h3,
body.oakcrew-premium-site .elementor h4,
body.oakcrew-premium-site .elementor h5,
body.oakcrew-premium-site .elementor h6 {
	font-family: var(--sun-font) !important;
}

body.oakcrew-premium-site #wpmenucartli a,
body.oakcrew-premium-site .oakcrew-menu-cart a {
	align-items: center;
	-webkit-text-fill-color: #fff !important;
	color: #fff !important;
	display: inline-flex;
	justify-content: center;
	min-height: 36px;
	min-width: 108px;
	padding: 0.45rem 0.95rem !important;
	white-space: nowrap;
}

@media (min-width: 901px) {
	body.oakcrew-premium-site .main-navigation #top-menu > .menu-item-has-children {
		position: relative;
	}

	body.oakcrew-premium-site .main-navigation ul ul {
		align-items: stretch;
		background: var(--sun-white);
		border: 1px solid var(--sun-line);
		border-radius: 0 0 16px 16px;
		box-shadow: 0 18px 36px -24px rgba(56, 43, 35, 0.45);
		display: block;
		gap: 0;
		left: -999em;
		padding: 8px;
		right: auto;
		text-align: left;
		width: 310px;
	}

	body.oakcrew-premium-site .main-navigation #top-menu > li:hover > ul,
	body.oakcrew-premium-site .main-navigation #top-menu > li.focus > ul {
		left: auto;
		right: 0;
	}

	body.oakcrew-premium-site .main-navigation ul ul li {
		display: block;
		width: 100%;
	}

	body.oakcrew-premium-site .main-navigation ul ul a {
		border-radius: 10px;
		line-height: 1.35;
		padding: 11px 13px;
		white-space: normal;
		width: 100%;
	}

	body.oakcrew-premium-site .main-navigation ul ul li:hover,
	body.oakcrew-premium-site .main-navigation ul ul li.focus {
		background: var(--sun-sky);
	}

	body.oakcrew-premium-site .main-navigation ul ul li:hover > a,
	body.oakcrew-premium-site .main-navigation ul ul li.focus > a {
		color: var(--sun-navy);
	}
}

/* Product cards read as one object: image, copy and purchase information. */
body.oakcrew-premium-site .oakcrew-product-card,
body.oakcrew-premium-site .oakcrew-sun-card,
body.oakcrew-premium-site .woocommerce ul.products li.product {
	background: var(--sun-white);
	border: 1px solid var(--sun-line);
	border-radius: calc(var(--sun-radius) + 2px);
	box-shadow: 0 14px 34px -28px rgba(56, 43, 35, 0.5);
	overflow: hidden;
	transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

body.oakcrew-premium-site .oakcrew-product-card:hover,
body.oakcrew-premium-site .oakcrew-sun-card:hover,
body.oakcrew-premium-site .woocommerce ul.products li.product:hover {
	border-color: rgba(74, 58, 48, 0.28);
	box-shadow: 0 20px 42px -28px rgba(56, 43, 35, 0.55);
	transform: translateY(-2px);
}

body.oakcrew-premium-site .oakcrew-product-card .oakcrew-product-image,
body.oakcrew-premium-site .oakcrew-sun-card .oakcrew-sun-card-media,
body.oakcrew-premium-site .woocommerce ul.products li.product img {
	border-radius: 0;
	margin: 0;
}

body.oakcrew-premium-site .oakcrew-product-card:hover .oakcrew-product-image img,
body.oakcrew-premium-site .oakcrew-sun-card:hover .oakcrew-sun-card-media img {
	transform: none;
}

body.oakcrew-premium-site .oakcrew-product-card-copy {
	padding: 18px 20px 20px;
}

body.oakcrew-premium-site .oakcrew-sun-card-body {
	padding: 18px 20px 20px;
}

body.oakcrew-premium-site .woocommerce ul.products li.product .woocommerce-loop-product__title,
body.oakcrew-premium-site .woocommerce ul.products li.product .price {
	margin-left: 18px;
	margin-right: 18px;
}

body.oakcrew-premium-site .woocommerce ul.products li.product .price {
	margin-bottom: 18px;
}

/* Customer proof without presenting company reviews as product ratings. */
.oakcrew-reviews-heading {
	align-items: end;
	display: flex;
	justify-content: space-between;
	max-width: none;
}

.oakcrew-reviews-heading > div > p:last-child {
	color: var(--sun-slate);
	margin: 0;
}

.oakcrew-trustpilot-score {
	background: #f1f8f4;
	border: 1px solid #d7e9de;
	border-radius: 14px;
	color: var(--sun-ink);
	display: flex;
	flex-direction: column;
	min-width: 190px;
	padding: 14px 18px;
	text-decoration: none;
}

.oakcrew-trustpilot-score strong {
	font-family: var(--warm-serif);
	font-size: 1.45rem;
	font-weight: 600;
}

.oakcrew-trustpilot-score span {
	color: var(--sun-slate);
	font-size: 0.82rem;
}

.oakcrew-review-grid {
	display: grid;
	gap: clamp(1rem, 2vw, 1.5rem);
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: 2rem;
}

.oakcrew-review-card {
	background: var(--sun-white);
	border: 1px solid var(--sun-line);
	border-radius: 18px;
	box-shadow: 0 14px 34px -28px rgba(56, 43, 35, 0.5);
	display: flex;
	flex-direction: column;
	margin: 0 !important;
	min-height: 210px;
	padding: clamp(1.25rem, 2vw, 1.75rem);
}

.oakcrew-review-stars {
	color: #00a878;
	font-size: 1rem;
	letter-spacing: 0.08em;
}

.oakcrew-review-card blockquote {
	border: 0;
	color: var(--sun-ink);
	font-family: var(--warm-serif);
	font-size: clamp(1.3rem, 2vw, 1.75rem);
	font-style: normal;
	line-height: 1.25;
	margin: 1rem 0 1.5rem;
	padding: 0;
}

.oakcrew-review-card > p {
	display: flex;
	flex-direction: column;
	margin: auto 0 0;
}

.oakcrew-review-card > p span {
	color: var(--sun-slate);
	font-size: 0.8rem;
}

.oakcrew-reviews-link {
	display: inline-flex;
	margin-top: 1.5rem;
}

/* Desktop PDP: a stable media frame with every thumbnail visible beside it. */
@media (min-width: 901px) {
	body.oakcrew-premium-pdp .woocommerce-product-gallery {
		display: grid;
		gap: 14px;
		grid-template-columns: 64px minmax(0, 1fr);
		grid-template-rows: clamp(500px, 65vh, 640px);
	}

	body.oakcrew-premium-pdp .woocommerce-product-gallery .flex-viewport {
		background: #f1ede5;
		grid-column: 2;
		grid-row: 1;
		height: 100% !important;
		width: 100%;
	}

	body.oakcrew-premium-pdp .woocommerce-product-gallery__wrapper,
	body.oakcrew-premium-pdp .woocommerce-product-gallery__image,
	body.oakcrew-premium-pdp .woocommerce-product-gallery__image > a {
		height: 100%;
	}

	body.oakcrew-premium-pdp .woocommerce-product-gallery__image > a {
		align-items: center;
		display: flex;
		justify-content: center;
	}

	body.oakcrew-premium-pdp .woocommerce-product-gallery__image img:not(.zoomImg) {
		height: 100% !important;
		object-fit: contain;
		width: 100% !important;
	}

	body.oakcrew-premium-pdp .woocommerce-product-gallery .flex-control-thumbs {
		display: flex;
		flex-direction: column;
		gap: 8px;
		grid-column: 1;
		grid-row: 1;
		margin: 0;
		overflow-x: hidden;
		overflow-y: auto;
		padding: 0 4px 0 0;
	}

	body.oakcrew-premium-pdp .woocommerce-product-gallery .flex-control-thumbs li {
		flex: 0 0 60px;
		height: 60px;
		width: 60px !important;
	}

	body.oakcrew-premium-pdp .woocommerce-product-gallery .flex-control-thumbs img {
		height: 60px;
		width: 60px;
	}

	body.oakcrew-premium-pdp .woocommerce-product-gallery__trigger {
		grid-column: 2;
		grid-row: 1;
	}
}

body.oakcrew-premium-pdp .woocommerce-product-gallery .zoomImg {
	display: none !important;
}

@media (max-width: 900px) {
	body.oakcrew-premium-pdp .woocommerce-product-gallery .flex-control-thumbs {
		overflow-x: auto !important;
		overflow-y: hidden !important;
		-webkit-overflow-scrolling: touch;
	}
}

@media (max-width: 767px) {
	.oakcrew-review-grid {
		grid-auto-columns: minmax(82vw, 1fr);
		grid-auto-flow: column;
		grid-template-columns: none;
		overflow-x: auto;
		padding-bottom: 8px;
		scroll-snap-type: x mandatory;
	}

	.oakcrew-review-card {
		scroll-snap-align: start;
	}

	.oakcrew-reviews-heading {
		align-items: stretch;
		flex-direction: column;
		gap: 1.25rem;
	}

	.oakcrew-trustpilot-score {
		min-width: 0;
	}
}

/* Shop proof strip: keep facts legible instead of squeezing three columns. */
.oakcrew-premium-shop .oakcrew-shop-promise {
	gap: 0;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	padding: 28px clamp(22px, 4vw, 48px);
}

.oakcrew-premium-shop .oakcrew-shop-promise > div {
	min-width: 0;
	padding: 4px clamp(18px, 3vw, 34px);
}

.oakcrew-premium-shop .oakcrew-shop-promise strong {
	font-size: clamp(1.2rem, 2vw, 1.5rem);
	line-height: 1.18;
	white-space: nowrap;
}

.oakcrew-premium-shop .oakcrew-shop-promise span {
	line-height: 1.5;
	margin-top: 8px;
}

@media (max-width: 760px) {
	.oakcrew-premium-shop .oakcrew-shop-promise {
		grid-template-columns: 1fr;
		padding: 8px 22px;
	}

	.oakcrew-premium-shop .oakcrew-shop-promise > div {
		align-items: center;
		border-bottom: 1px solid rgba(255, 255, 255, 0.18);
		border-right: 0;
		display: grid;
		gap: 18px;
		grid-template-columns: 170px minmax(0, 1fr);
		padding: 17px 0;
	}

	.oakcrew-premium-shop .oakcrew-shop-promise > div:last-child {
		border-bottom: 0;
	}

	.oakcrew-premium-shop .oakcrew-shop-promise strong,
	.oakcrew-premium-shop .oakcrew-shop-promise span {
		margin: 0;
	}
}

@media (max-width: 390px) {
	.oakcrew-premium-shop .oakcrew-shop-promise > div {
		gap: 12px;
		grid-template-columns: 145px minmax(0, 1fr);
	}

	.oakcrew-premium-shop .oakcrew-shop-promise strong {
		font-size: 1.05rem;
	}
}

/* Product add confirmation: localized copy in a calm, contained surface. */
body.oakcrew-premium-pdp .woocommerce-notices-wrapper {
	margin: 18px auto 0;
	max-width: 1240px;
	padding: 0 28px;
}

body.oakcrew-premium-pdp .woocommerce-message {
	align-items: center;
	background: var(--sun-sand);
	border: 1px solid var(--sun-line);
	border-radius: 14px;
	color: var(--sun-ink);
	display: flex;
	font-size: 0.92rem;
	gap: 1rem;
	margin: 0;
	min-height: 58px;
	padding: 10px 12px 10px 18px;
}

body.oakcrew-premium-pdp .woocommerce-message::before {
	display: none;
}

body.oakcrew-premium-pdp .woocommerce-message .button {
	background: var(--sun-navy-deep);
	border: 0;
	border-radius: 999px;
	color: #fff;
	float: none;
	margin-left: auto;
	order: 2;
	padding: 10px 18px;
	text-decoration: none;
	white-space: nowrap;
}

/* Keep useful collection copy, but bring products into the first screen. */
.oakcrew-premium-shop .oakcrew-shop-intro {
	margin-bottom: 32px;
	padding: 42px 0 34px;
}

.oakcrew-premium-shop .oakcrew-shop-intro .oakcrew-kicker {
	margin-bottom: 14px;
}

.oakcrew-premium-shop .oakcrew-shop-intro h1 {
	margin-bottom: 14px;
}

.oakcrew-premium-shop .oakcrew-shop-intro > p:last-child {
	margin-bottom: 0;
}

@media (max-width: 820px) {
	#cookie-law-info-again {
		display: none !important;
	}
}

@media (max-width: 760px) {
	body.oakcrew-premium-pdp .woocommerce-notices-wrapper {
		padding: 0 16px;
	}

	body.oakcrew-premium-pdp .woocommerce-message {
		align-items: stretch;
		flex-direction: column;
		padding: 14px;
	}

	body.oakcrew-premium-pdp .woocommerce-message .button {
		margin: 0;
		order: 2;
		text-align: center;
		width: 100%;
	}

	.oakcrew-premium-shop .oakcrew-shop-intro {
		margin-bottom: 24px;
		padding: 30px 0 26px;
	}
}

/* Science-led UV explainer and calm health context. */
.oakcrew-uv-explainer {
	background: var(--sun-navy-deep);
	color: #fff;
	padding-bottom: clamp(4rem, 8vw, 7rem);
}

.oakcrew-sun-upf.oakcrew-uv-explainer::before,
.oakcrew-sun-upf.oakcrew-uv-explainer::after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 40' preserveAspectRatio='none'%3E%3Cpath d='M0 40 C240 0 480 0 720 20 C960 40 1200 40 1440 10 L1440 40 Z' fill='%230b2236'/%3E%3C/svg%3E");
}

.oakcrew-sun-upf.oakcrew-uv-explainer h2 {
	color: #fff;
}

.oakcrew-sun-upf.oakcrew-uv-explainer .oakcrew-sun-kicker {
	color: var(--sun-accent);
}

.oakcrew-sun-upf.oakcrew-uv-explainer .oakcrew-sun-link-light {
	color: #fff;
}

.oakcrew-uv-heading {
	margin-left: auto;
	margin-right: auto;
	max-width: 790px;
}

.oakcrew-uv-heading > p:last-child {
	color: rgba(255, 255, 255, 0.76);
	font-size: 1.05rem;
	margin: 1rem auto 0;
	max-width: 690px;
}

.oakcrew-uv-layout {
	align-items: stretch;
	display: grid;
	gap: clamp(1.25rem, 3vw, 2.25rem);
	grid-template-columns: minmax(0, 1.45fr) minmax(310px, 0.8fr);
	margin: clamp(2.25rem, 5vw, 4rem) 0 2.25rem;
	text-align: left;
}

.oakcrew-uv-figure {
	background: rgba(255, 255, 255, 0.075);
	border: 1px solid rgba(255, 255, 255, 0.15);
	border-radius: 24px;
	margin: 0;
	min-width: 0;
	padding: clamp(1rem, 2.4vw, 1.75rem);
}

.oakcrew-uv-figure svg {
	display: block;
	height: auto;
	max-height: 470px;
	width: 100%;
}

.oakcrew-uv-figure svg text {
	fill: rgba(255, 255, 255, 0.88);
	font-family: var(--sun-font);
	font-size: 16px;
	font-weight: 650;
}

.oakcrew-uv-figure .oakcrew-uv-label rect {
	fill: var(--sun-navy-deep);
	stroke: rgba(255, 255, 255, 0.22);
}

.oakcrew-uv-figure .oakcrew-uv-label text {
	font-size: 14px;
}

.oakcrew-uv-figure figcaption {
	color: rgba(255, 255, 255, 0.68);
	font-size: 0.78rem;
	line-height: 1.55;
	margin: 0.75rem auto 0;
	max-width: 690px;
	text-align: center;
}

.oakcrew-uv-facts {
	display: grid;
	gap: 1rem;
}

.oakcrew-uv-facts article {
	align-items: flex-start;
	background: rgba(255, 255, 255, 0.085);
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: 18px;
	display: grid;
	gap: 1rem;
	grid-template-columns: 54px minmax(0, 1fr);
	padding: 1.25rem;
}

/* The legacy front-page stylesheet adds 100px side margins to every article
 * after the first. Reset it here so all three science cards stay equal. */
.oakcrew-front-page .oakcrew-uv-facts article {
	margin-left: 0 !important;
	margin-right: 0 !important;
	width: auto !important;
}

.oakcrew-uv-facts article > span {
	align-items: center;
	background: var(--sun-accent);
	border-radius: 50%;
	color: var(--sun-navy-deep);
	display: inline-flex;
	font-size: 0.78rem;
	font-weight: 800;
	height: 54px;
	justify-content: center;
	letter-spacing: 0.03em;
	width: 54px;
}

.oakcrew-uv-facts h3 {
	color: #fff;
	font-family: var(--warm-serif);
	font-size: 1.25rem;
	font-weight: 600;
	line-height: 1.2;
	margin: 0 0 0.45rem;
}

.oakcrew-uv-facts p {
	color: rgba(255, 255, 255, 0.72);
	font-size: 0.9rem;
	line-height: 1.6;
	margin: 0;
}

.oakcrew-uv-risks {
	padding-bottom: clamp(4rem, 8vw, 7rem);
	padding-top: clamp(4rem, 8vw, 7rem);
}

.oakcrew-uv-risks-heading {
	max-width: 790px;
}

.oakcrew-uv-risk-path {
	display: grid;
	gap: clamp(0.8rem, 2vw, 1.25rem);
	grid-template-columns: repeat(4, minmax(0, 1fr));
	list-style: none;
	margin: clamp(2.5rem, 5vw, 4rem) 0 0;
	padding: 0;
	position: relative;
}

.oakcrew-uv-risk-path::before {
	background: linear-gradient(90deg, var(--sun-accent), #d48b6b);
	content: "";
	height: 2px;
	left: 7%;
	position: absolute;
	right: 7%;
	top: 22px;
}

.oakcrew-uv-risk-path li {
	background: var(--sun-white);
	border: 1px solid var(--sun-line);
	border-radius: 18px;
	box-shadow: 0 16px 36px -30px rgba(56, 43, 35, 0.55);
	margin: 0;
	padding: 1.25rem;
	position: relative;
}

.oakcrew-uv-risk-number {
	align-items: center;
	background: var(--sun-accent);
	border: 5px solid var(--sun-white);
	border-radius: 50%;
	color: var(--sun-navy-deep);
	display: flex;
	font-size: 0.78rem;
	font-weight: 800;
	height: 44px;
	justify-content: center;
	margin: -2.65rem 0 1.25rem;
	position: relative;
	width: 44px;
	z-index: 1;
}

.oakcrew-uv-risk-path h3 {
	font-family: var(--warm-serif);
	font-size: 1.25rem;
	line-height: 1.2;
	margin: 0 0 0.7rem;
}

.oakcrew-uv-risk-path p {
	color: var(--sun-slate);
	font-size: 0.9rem;
	line-height: 1.6;
	margin: 0;
}

.oakcrew-uv-reassurance {
	background: var(--sun-sky);
	border-radius: 18px;
	display: grid;
	gap: 1.25rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-top: 1.25rem;
	padding: clamp(1.25rem, 3vw, 2rem);
}

.oakcrew-uv-reassurance p {
	color: var(--sun-slate);
	line-height: 1.6;
	margin: 0;
}

.oakcrew-uv-reassurance strong {
	color: var(--sun-ink);
	font-weight: 650;
}

.oakcrew-uv-sources {
	border-bottom: 1px solid var(--sun-line);
	margin-top: 1.25rem;
}

.oakcrew-uv-sources summary {
	color: var(--sun-ink);
	cursor: pointer;
	font-size: 0.88rem;
	font-weight: 700;
	list-style-position: outside;
	padding: 0.8rem 0;
}

.oakcrew-uv-sources ul {
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem 1.25rem;
	list-style: none;
	margin: 0;
	padding: 0 0 1rem;
}

.oakcrew-uv-sources li {
	margin: 0;
}

.oakcrew-uv-sources a {
	color: var(--sun-slate);
	font-size: 0.78rem;
	text-underline-offset: 0.2em;
}

@media (max-width: 960px) {
	.oakcrew-uv-layout {
		grid-template-columns: 1fr;
	}

	.oakcrew-uv-facts {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.oakcrew-uv-facts article {
		grid-template-columns: 1fr;
	}

	.oakcrew-uv-risk-path {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		row-gap: 2.25rem;
	}

	.oakcrew-uv-risk-path::before {
		display: none;
	}
}

@media (max-width: 600px) {
	.oakcrew-uv-explainer {
		padding-left: 16px;
		padding-right: 16px;
	}

	.oakcrew-uv-layout {
		margin-top: 2rem;
	}

	.oakcrew-uv-figure {
		border-radius: 18px;
		padding: 0.75rem;
	}

	.oakcrew-uv-figure .oakcrew-uv-label text {
		font-size: 17px;
	}

	.oakcrew-uv-facts,
	.oakcrew-uv-risk-path,
	.oakcrew-uv-reassurance {
		grid-template-columns: 1fr;
	}

	.oakcrew-uv-facts article {
		grid-template-columns: 48px minmax(0, 1fr);
		padding: 1rem;
	}

	.oakcrew-uv-facts article > span {
		height: 48px;
		width: 48px;
	}

	.oakcrew-uv-risk-path {
		gap: 2.25rem;
	}

	.oakcrew-uv-sources ul {
		align-items: flex-start;
		flex-direction: column;
	}
}
