/*
 * 2026 Flex Blocks
 *
 * Styles for the "* 2026" layouts in the Flexible Content ACF group.
 * Blocks are ported from the Instore theme and rethemed for packaging.
 *
 * Instore -> Packaging color mapping:
 *   --rebrand-yellow      -> --b26-green  (buttons, accents) / --b26-tan (bands)
 *   --rebrand-black       -> --b26-dark
 *   --rebrand-light-gray  -> --b26-light
 */

 :root {
	--b26-green: #006548;
	--b26-green-dark: #004a35;
	--b26-tan: #a98a5b;
	--b26-dark: #2d2826;
	--b26-dark-alt: #322f31;
	--b26-light: #efefef;
	--b26-light-alt: #f1f1f2;
	--b26-grey: #c8c8ca;
	--b26-grey-dark: #9e9fa3;
	--b26-white: #ffffff;
	--b26-font-heading: "DIN-RegularAlternate", sans-serif;
	--b26-btn-radius: 999px;
}

/* -------------------------------------------------------------------------
 * Flexible Content 2026 template: wider container
 *
 * The PDF is designed on a 1920px canvas with content spanning ~1612px.
 * template-home-v2.css caps .container at 1360px; this overrides it only on
 * pages using page-flexiblecontent-2026.php (header and footer included).
 * ---------------------------------------------------------------------- */
@media (min-width: 992px) {
	.page-template-page-flexible-content-2026 .container {
		max-width: min(1612px, 84%);
	}
}

/* template-home-v2.css forces `h2, h2 span { font-weight: 500 !important }`; the PDF uses bold. */
.page-template-page-flexible-content-2026 h2,
.page-template-page-flexible-content-2026 h2 span {
	font-weight: 700 !important;
}
.button,
.btn ,
.site-header .header-bottom-nav .ubermenu li.header-mobile-cta .ubermenu-target .ubermenu-target-text ,
.frm_submit input[type="submit"]{
	border-radius: 999px !important;
}

/* -------------------------------------------------------------------------
 * Shared button
 * ---------------------------------------------------------------------- */
.b26-btn,
.header-block-2026__btn {
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	box-sizing: border-box;
	min-height: 48px;
	padding: 12px 24px;
	border: 2px solid var(--b26-green);
	border-radius: var(--b26-btn-radius);
	background-color: var(--b26-green);
	color: var(--b26-white);
	font-size: 16px;
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none;
	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.b26-btn:hover,
.b26-btn:focus,
.header-block-2026__btn:hover,
.header-block-2026__btn:focus {
	background-color: var(--b26-green-dark);
	border-color: var(--b26-green-dark);
	color: var(--b26-white);
	text-decoration: none;
}

.b26-btn svg,
.header-block-2026__btn-icon {
	flex: 0 0 auto;
	width: 10px;
	height: 16px;
}

/* -------------------------------------------------------------------------
 * Header Block 2026
 * ---------------------------------------------------------------------- */
/* style.min.css sets `section { padding: 50px 0 }` and loads after this file */
#flexible-container section.header-block-2026,
section.header-block-2026 {
	padding: 0;
}

.header-block-2026 {
	position: relative;
	background-color: var(--b26-dark);
	color: var(--b26-white);
}

.header-block-2026__row {
	align-items: stretch;
}

.header-block-2026__content-col,
.header-block-2026__media-col {
	min-width: 0; /* let flex columns shrink below their content width */
}

.header-block-2026__content-col {
	display: flex;
	align-items: center;
}

.header-block-2026__content {
	width: 100%;
	max-width: 700px;
	padding: 56px 0 48px;
}

.header-block-2026__title {
	margin: 0 0 20px;
	color: var(--b26-white) !important;
	font-family: var(--b26-font-heading);
	font-size: clamp(40px, 3.4vw, 64px);
	font-weight: 300;
	line-height: 1.1;
	text-transform: none !important;
}

.header-block-2026__title--no-margin {
	margin-bottom: 0;
}

.header-block-2026__text {
	margin-bottom: 28px;
	color: var(--b26-white);
	font-size: 18px;
	line-height: 1.45;
}

.header-block-2026__text p {
	color: inherit;
	font-size: inherit;
	line-height: inherit;
}

.header-block-2026__text p:last-child {
	margin-bottom: 0;
}

.header-block-2026__text a {
	color: var(--b26-white);
	text-decoration: underline;
}

/* Image panel fills the column and centers the image */
.header-block-2026__media-col {
	display: flex;
	flex-direction: column;
	align-self: stretch;
}

.header-block-2026__media {
	display: flex;
	flex: 1 1 auto;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 280px;
	padding: 32px;
	/* Light panel — avoid dark mats that read as black borders around cutouts. */
	background-color: var(--b26-light);
}

.header-block-2026__img {
	/* Flex centering (no transform) keeps high-res assets crisp on retina. */
	display: block;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: min(520px, 100%);
	object-fit: contain;
	object-position: center;
}

/* Mobile: stack, text first then image panel (PDF page 2) */
@media (max-width: 991.98px) {
	.header-block-2026__content {
		max-width: none;
		padding: 48px 0 40px;
	}

	.header-block-2026__title {
		font-size: clamp(40px, 11vw, 56px);
	}

	.header-block-2026__media-col {
		padding-bottom: 0;
	}

	.header-block-2026__media {
		min-height: 320px;
	}

	.header-block-2026__btn {
		width: 100%;
		max-width: 320px;
	}
}

/* Desktop: 50/50 columns. The title uses the full column width so it can sit
   on one line when there is room; only the paragraph is capped for readability. */
@media (min-width: 992px) {
	.header-block-2026__content {
		max-width: none;
		padding: 72px 32px 72px 0;
	}

	.header-block-2026__text {
		max-width: 620px;
	}

	.header-block-2026__media-col,
	.header-block-2026__media {
		min-height: 100%;
	}
}

/* -------------------------------------------------------------------------
 * Number Counter 2026
 * Tan stats bar. Dark bold type. Four across on desktop; slick slider below.
 * style.min.css adds 50px of section padding, so the bar's own padding is set
 * with the same #flexible-container specificity to win over it.
 * PDF (1920 canvas): ~171px bar, ~54px above the numbers, ~46px below labels.
 * ---------------------------------------------------------------------- */
#flexible-container section.number-counter-2026,
section.number-counter-2026 {
	padding: 32px 0;
	background-color: var(--b26-tan);
	color: var(--b26-dark);
}

.number-counter-2026__heading {
	margin: 0 0 24px;
	color: var(--b26-dark);
	text-align: center;
}

/* Static grid: 2×2 on mobile, one row from tablet up. No Slick scroll. */
.number-counter-2026__slider {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 28px 16px;
	margin: 0;
}

.number-counter-2026__slide {
	height: auto;
	padding: 0 8px;
	min-width: 0;
}

.number-counter-2026__item {
	display: block;
	height: 100%;
	color: inherit;
	text-align: center;
	text-decoration: none;
}

a.number-counter-2026__item {
	cursor: pointer;
	transition: opacity 0.2s ease, transform 0.2s ease, color 0.2s ease;
}

a.number-counter-2026__item .number-counter-2026__label {
	transition: text-decoration-color 0.2s ease;
	text-decoration: underline;
	text-decoration-color: transparent;
	text-underline-offset: 3px;
}

a.number-counter-2026__item:hover,
a.number-counter-2026__item:focus {
	color: var(--b26-dark);
	text-decoration: none;
	opacity: 0.45;
	transform: scale(1.06);
	outline: none;
}

a.number-counter-2026__item:hover .number-counter-2026__label,
a.number-counter-2026__item:focus .number-counter-2026__label {
	text-decoration-color: currentColor;
}

.number-counter-2026__value {
	margin-bottom: 2px;
	color: var(--b26-dark);
	font-family: var(--b26-font-heading);
	font-size: 40px;
	font-weight: 700;
	line-height: 1;
}

.number-counter-2026__prefix,
.number-counter-2026__suffix,
.number-counter-2026__text,
.number-counter-2026__number {
	display: inline;
}

.number-counter-2026__label {
	color: var(--b26-dark);
	font-size: 15px;
	font-weight: 700;
	line-height: 1.3;
}

@media (min-width: 768px) {
	.number-counter-2026__slider {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 16px 12px;
	}

	.number-counter-2026__slide {
		padding: 0 12px;
	}

	.number-counter-2026__value {
		font-size: 44px;
	}

	.number-counter-2026__label {
		font-size: 16px;
	}
}

@media (min-width: 992px) {
	#flexible-container section.number-counter-2026,
	section.number-counter-2026 {
		padding: clamp(32px, 2.6vw, 50px) 0 clamp(30px, 2.3vw, 44px);
	}

	.number-counter-2026__value {
		font-size: clamp(44px, 2.9vw, 56px);
	}

	.number-counter-2026__label {
		font-size: clamp(16px, 1.05vw, 20px);
	}
}

/* -------------------------------------------------------------------------
 * Button List 2026 (anchor links)
 * PDF (1920 canvas): six equal-width light-grey pills spanning the container,
 * 46px tall, 14px apart, bold dark 16px text, ~70px above / ~58px below.
 * Below 768px the pills collapse into a dropdown.
 * style.min.css adds 50px of section padding; match specificity to override.
 * ---------------------------------------------------------------------- */
#flexible-container section.button-list-2026,
section.button-list-2026 {
	padding: 40px 0;
	background-color: var(--b26-white);
}

.button-list-2026__heading {
	margin: 0 0 24px;
	color: var(--b26-dark);
	font-family: var(--b26-font-heading);
	font-size: 24px;
	font-weight: 700;
	text-align: center;
}

.button-list-2026__items {
	list-style: none !important;
	margin: 0;
	padding: 0;
	flex-wrap: wrap;
	justify-content: center;
	gap: 14px;
}

/* Equal widths; a pill never shrinks below its label, so the row wraps instead.
   max-width keeps pills that wrap onto a short row from stretching edge to edge. */
.button-list-2026__item {
	flex: 1 1 0;
	max-width: 300px;
	margin: 0;
}

.button-list-2026__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 46px;
	padding: 10px 20px;
	border: 0;
	border-radius: var(--b26-btn-radius);
	background-color: var(--b26-light);
	color: var(--b26-dark);
	font-family: var(--b26-font-heading);
	font-size: 15px;
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	white-space: nowrap;
	transition: background-color 0.2s ease, color 0.2s ease;
}

.button-list-2026__button:hover,
.button-list-2026__button:focus {
	background-color: var(--b26-green);
	color: var(--b26-white);
	text-decoration: none;
	opacity: 1;
}

.button-list-2026__button:focus-visible {
	outline: 2px solid var(--b26-dark);
	outline-offset: 2px;
}

.button-list-2026__select {
	display: block;
	width: 100%;
	min-height: 46px;
	padding: 10px 44px 10px 20px;
	border: 0;
	border-radius: var(--b26-btn-radius);
	background-color: var(--b26-light);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%232d2826' d='M1.41 0L6 4.58 10.59 0 12 1.41l-6 6-6-6z'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 20px center;
	color: var(--b26-dark);
	font-family: var(--b26-font-heading);
	font-size: 15px;
	font-weight: 700;
	line-height: 1.2;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.button-list-2026__select:focus {
	outline: 2px solid var(--b26-green);
	outline-offset: 2px;
}

@media (min-width: 768px) {
	#flexible-container section.button-list-2026,
	section.button-list-2026 {
		padding: clamp(40px, 3.6vw, 70px) 0 clamp(36px, 3vw, 58px);
	}

	.button-list-2026__heading {
		margin-bottom: 28px;
		font-size: 28px;
	}
}

/* -------------------------------------------------------------------------
 * Image Background 2026 ("How We Help You Win at Club")
 * PDF (1920 canvas): ~480px tall photo band; near-white panel fills the right
 * half of the container top to bottom; 40px bold heading, ~18px copy with a
 * ~1.8 line-height, ~60px side padding, content vertically centered.
 * Below 992px the photo sits above the panel.
 * style.min.css adds 50px of section padding; match specificity to override.
 * ---------------------------------------------------------------------- */
#flexible-container section.image-background-2026,
section.image-background-2026 {
	position: relative;
	display: flex;
	flex-direction: column;
	margin: 0;
	padding: 0;
	overflow: hidden;
	background-color: var(--b26-light);
}

.image-background-2026__media {
	position: relative;
	display: block;
	width: 100%;
	min-height: 220px;
	max-height: 320px;
}

.image-background-2026__media img,
.image-background-2026__img {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 220px;
	max-height: 320px;
	object-fit: cover;
	object-position: center;
}

.image-background-2026__inner {
	position: relative;
	z-index: 2;
	display: flex;
	width: 100%;
}

.image-background-2026__panel {
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: 100%;
	padding: 36px 24px 40px;
	background-color: rgba(255, 255, 255, 0.94);
	color: var(--b26-dark);
}

.image-background-2026__content {
	color: var(--b26-dark);
	font-size: 16px;
	font-weight: 400;
	line-height: 1.7;
}

.image-background-2026__content h2,
.image-background-2026__content h3 {
	margin: 0 0 14px;
	color: var(--b26-dark);
	font-family: var(--b26-font-heading);
	font-size: 28px;
	font-weight: 700;
	line-height: 1.2;
	text-transform: none;
}

.image-background-2026__content h3 {
	font-size: 22px;
}

.image-background-2026__content p {
	margin: 0 0 16px;
}

.image-background-2026__content > :last-child {
	margin-bottom: 0;
}

.image-background-2026__content ul {
	margin: 20px 0 0;
	padding: 0;
	list-style: none;
}

.image-background-2026__content ul li {
	position: relative;
	margin: 0 0 10px;
	padding-left: 22px;
	line-height: 1.5;
}

.image-background-2026__content ul li::before {
	content: "";
	position: absolute;
	top: 0.6em;
	left: 0;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background-color: var(--b26-green);
}

.image-background-2026__content a:not(.btn) {
	color: var(--b26-green);
	text-decoration: underline;
}

@media (min-width: 992px) {
	#flexible-container section.image-background-2026,
	section.image-background-2026 {
		flex-direction: row;
		align-items: stretch;
		min-height: clamp(380px, 25vw, 480px);
	}

	.image-background-2026__media {
		position: absolute;
		inset: 0;
		z-index: 0;
		min-height: 0;
		max-height: none;
	}

	.image-background-2026__media img,
	.image-background-2026__img {
		min-height: 0;
		max-height: none;
	}

	.image-background-2026__inner {
		align-items: stretch;
	}

	.image-background-2026--align-left .image-background-2026__inner {
		justify-content: flex-start;
	}

	.image-background-2026--align-right .image-background-2026__inner {
		justify-content: flex-end;
	}

	.image-background-2026__panel {
		width: 50%;
		max-width: 50%;
		padding: 56px clamp(32px, 3.2vw, 60px);
	}

	.image-background-2026__content {
		font-size: clamp(16px, 0.94vw, 18px);
		line-height: 1.8;
	}

	.image-background-2026__content h2 {
		font-size: clamp(32px, 2.1vw, 40px);
	}

	.image-background-2026__content h3 {
		font-size: 24px;
	}
}

/* -------------------------------------------------------------------------
 * Two Column Accordion 2026
 * Content + image (PDF "Our Solutions", 1920 canvas): ~655px red band,
 * white 40px heading, single-column accordion with white underlines and
 * down chevrons, photo filling the right half and centered against the list.
 * Accordion-only mode is the two-column FAQ layout.
 * style.min.css adds 50px of section padding; match specificity to override.
 * ---------------------------------------------------------------------- */
#flexible-container section.two-column-accordion-2026,
section.two-column-accordion-2026 {
	margin: 0;
	padding: 48px 0;
}

.two-column-accordion-2026 {
	background-color: var(--b26-green);
	color: var(--b26-white);
}

.two-column-accordion-2026--grey {
	background-color: var(--b26-light);
}

.two-column-accordion-2026--red {
	background-color: var(--b26-green);
	color: var(--b26-white);
}

.two-column-accordion-2026--dark {
	background-color: var(--b26-dark);
	color: var(--b26-white);
}

.two-column-accordion-2026__upper,
.two-column-accordion-2026__split-content {
	font-size: 16px;
	font-weight: 400;
	line-height: 1.6;
	color: inherit;
}

.two-column-accordion-2026__upper {
	max-width: 820px;
	margin: 0 auto 32px;
	text-align: center;
}

.two-column-accordion-2026__upper h2,
.two-column-accordion-2026__upper h3,
.two-column-accordion-2026__split-content h2,
.two-column-accordion-2026__split-content h3 {
	margin: 0 0 16px;
	color: inherit;
	font-family: var(--b26-font-heading);
	font-size: 32px;
	font-weight: 700;
	line-height: 1.15;
	text-transform: none;
}

.two-column-accordion-2026__upper p:last-child,
.two-column-accordion-2026__split-content p:last-child,
.two-column-accordion-2026__split-content ul:last-child {
	margin-bottom: 0;
}

.two-column-accordion-2026__split-content + .two-column-accordion-2026__list {
	margin-top: 28px;
}

/* Cancel the Bootstrap row's negative margins so items can't spill past the container. */
.two-column-accordion-2026__split {
	margin-left: 0;
	margin-right: 0;
}

.two-column-accordion-2026__content-col,
.two-column-accordion-2026__media-col {
	min-width: 0;
	padding-left: 0;
	padding-right: 0;
}

.two-column-accordion-2026__media-col {
	overflow: hidden;
}

.two-column-accordion-2026__content-col {
	margin-bottom: 28px;
}

.two-column-accordion-2026__figure {
	max-width: 100%;
	margin: 0;
}

.two-column-accordion-2026__img {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
}

.two-column-accordion-2026__list {
	display: block;
}

.two-column-accordion-2026__col {
	min-width: 0;
}

.two-column-accordion-2026__item {
	margin: 0;
	background: transparent;
	border: 0;
	border-bottom: 1px solid  rgba(255, 255, 255, 0.85);
}

.two-column-accordion-2026--red .two-column-accordion-2026__item,
.two-column-accordion-2026--dark .two-column-accordion-2026__item {
	border-bottom-color: rgba(255, 255, 255, 0.85);
}

.two-column-accordion-2026__title {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 18px 0;
	color: inherit;
	font-family: var(--b26-font-heading);
	font-size: 18px;
	font-weight: 500;
	line-height: 1.3;
	list-style: none;
	cursor: pointer;
}

.two-column-accordion-2026__title::-webkit-details-marker {
	display: none;
}

.two-column-accordion-2026__title::marker {
	content: "";
}

.two-column-accordion-2026__title-text {
	flex: 1 1 auto;
}

.two-column-accordion-2026__icon {
	flex: 0 0 10px;
	width: 10px;
	height: 10px;
	margin-right: 4px;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: rotate(45deg) translateY(-2px);
}

.two-column-accordion-2026__item[open] .two-column-accordion-2026__icon {
	transform: rotate(225deg) translateY(-2px);
}

.two-column-accordion-2026__content {
	padding: 0 28px 18px 0;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.6;
}

.two-column-accordion-2026__content p:last-child,
.two-column-accordion-2026__content ul:last-child {
	margin-bottom: 0;
}

.two-column-accordion-2026__content a {
	color: inherit;
	text-decoration: underline;
}

@media (min-width: 768px) {
	/* Fixed columns (not column-count) so expanding an FAQ does not reflow items. */
	.two-column-accordion-2026__list:not(.two-column-accordion-2026__list--single) {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 40px;
		align-items: start;
	}
}

@media (min-width: 992px) {
	#flexible-container section.two-column-accordion-2026,
	section.two-column-accordion-2026 {
		padding: clamp(56px, 4.2vw, 80px) 0;
	}

	.two-column-accordion-2026__upper h2,
	.two-column-accordion-2026__upper h3,
	.two-column-accordion-2026__split-content h2,
	.two-column-accordion-2026__split-content h3 {
		font-size: clamp(32px, 2.1vw, 40px);
	}

	.two-column-accordion-2026__title {
		padding: 20px 0;
		font-size: 20px;
	}

	.two-column-accordion-2026--content-image .two-column-accordion-2026__split {
		align-items: center;
		gap: clamp(24px, 2.5vw, 48px);
	}

	.two-column-accordion-2026--content-image .two-column-accordion-2026__content-col,
	.two-column-accordion-2026--content-image .two-column-accordion-2026__media-col {
		flex: 1 1 0;
		max-width: none;
		width: auto;
	}

	.two-column-accordion-2026__content-col {
		margin-bottom: 0;
	}

	.two-column-accordion-2026--image-left .two-column-accordion-2026__content-col {
		order: 2;
	}

	.two-column-accordion-2026--image-left .two-column-accordion-2026__media-col {
		order: 1;
	}
}

/* -------------------------------------------------------------------------
 * Text and Slider 2026 ("Samples of our Club Packaging Work")
 * PDF (1920 canvas): ~96px top / ~90px bottom; 40px bold heading top-left;
 * dark cards ~390px wide with product cutouts, 22px apart, starting at the
 * container midpoint and bleeding off the right edge; 20px red/grey dots.
 * style.min.css adds 50px of section padding; match specificity to override.
 * ---------------------------------------------------------------------- */
#flexible-container section.text-and-slider-2026,
section.text-and-slider-2026 {
	margin: 0;
	padding: 48px 0 56px;
	overflow: hidden;
}

.text-and-slider-2026 {
	background-color: var(--b26-white);
	color: var(--b26-dark);
}

.text-and-slider-2026__row {
	margin-left: 0;
	margin-right: 0;
}

.text-and-slider-2026__content-col,
.text-and-slider-2026__media-col {
	min-width: 0;
	padding-left: 0;
	padding-right: 0;
}

.text-and-slider-2026__content-col {
	margin-bottom: 28px;
}

.text-and-slider-2026__content {
	max-width: 520px;
	color: var(--b26-white);
	font-size: 16px;
	line-height: 1.6;
}

.text-and-slider-2026__content h2,
.text-and-slider-2026__content h3 {
	margin: 0 0 16px;
	color: var(--b26-dark);
	font-family: var(--b26-font-heading);
	font-size: 30px;
	font-weight: 700;
	line-height: 1.2;
	text-transform: none;
}

.text-and-slider-2026__content > :last-child {
	margin-bottom: 0;
}

.text-and-slider-2026__content .b26-btn {
	margin-top: 24px;
}

/* Let later cards peek past the column; the section's overflow clips at the viewport. */
.text-and-slider-2026__slider .slick-list {
	margin: 0 -11px;
	overflow: visible;
}

.text-and-slider-2026__slider .slick-track {
	display: flex;
}

.text-and-slider-2026__slide {
	height: auto;
	padding: 0 11px;
}

/* Without Slick, show the cards in a scrolling row instead of a tall stack. */
.text-and-slider-2026__slider:not(.slick-initialized) {
	display: flex;
	gap: 22px;
	overflow-x: auto;
}

.text-and-slider-2026__slider:not(.slick-initialized) .text-and-slider-2026__slide {
	flex: 0 0 min(390px, 80%);
	padding: 0;
}

.text-and-slider-2026__figure {
	margin: 0;
}

.text-and-slider-2026__frame {
	position: relative;
	aspect-ratio: 390 / 377;
	overflow: hidden;
	/* Light frame so PNG cutouts stay crisp; dark bg looked like black boxes/borders. */
	background-color: var(--b26-light);
}

.text-and-slider-2026__img {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	padding: 4%;
	object-fit: contain;
	object-position: center;
}

.text-and-slider-2026__caption {
	margin-top: 12px;
	color: var(--b26-dark);
	font-size: 15px;
	line-height: 1.4;
	text-align: center;
}

.text-and-slider-2026__slider.slick-dotted.slick-slider {
	margin-bottom: 0;
}

.text-and-slider-2026__slider .slick-dots {
	position: static;
	display: flex !important;
	justify-content: center;
	gap: 12px;
	margin: 32px 0 0;
	padding: 0;
	list-style: none;
}

.text-and-slider-2026__slider .slick-dots li {
	width: 16px;
	height: 16px;
	margin: 0;
}

.text-and-slider-2026__slider .slick-dots li button {
	width: 100%;
	height: 100%;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background-color: var(--b26-grey);
	font-size: 0;
	line-height: 0;
	cursor: pointer;
}

.text-and-slider-2026__slider .slick-dots li button:before {
	display: none;
}

.text-and-slider-2026__slider .slick-dots li.slick-active button {
	background-color: var(--b26-green);
}

@media (min-width: 992px) {
	#flexible-container section.text-and-slider-2026,
	section.text-and-slider-2026 {
		padding: clamp(64px, 5vw, 96px) 0 clamp(60px, 4.7vw, 90px);
	}

	.text-and-slider-2026__row {
		align-items: flex-start;
	}

	.text-and-slider-2026__content-col {
		margin-bottom: 0;
		padding-top: clamp(24px, 2.5vw, 48px);
		padding-right: 32px;
	}

	.text-and-slider-2026__content h2,
	.text-and-slider-2026__content h3 {
		font-size: clamp(32px, 2.1vw, 40px);
	}

	/* Clip cards that scroll out to the left so they never sit over the text. */
	.text-and-slider-2026__media-col {
		clip-path: inset(-20px -100vw -40px 0);
	}

	.text-and-slider-2026__slider .slick-dots {
		gap: 14px;
		margin-top: clamp(40px, 3.4vw, 66px);
	}

	.text-and-slider-2026__slider .slick-dots li {
		width: 20px;
		height: 20px;
	}

	/* Slides on the left: no bleed, so keep the cards inside their column. */
	.text-and-slider-2026--slides-left .text-and-slider-2026__media-col {
		order: 1;
		clip-path: none;
	}

	.text-and-slider-2026--slides-left .text-and-slider-2026__slider .slick-list {
		overflow: hidden;
	}

	.text-and-slider-2026--slides-left .text-and-slider-2026__content-col {
		order: 2;
		padding-right: 0;
		padding-left: 48px;
	}
}

/* -------------------------------------------------------------------------
 * Spotlight 2026 ("Success Story")
 * PDF (1920 canvas): ~407px tan band; 192x139 dark tag pinned to the top-left
 * of the container with white bold label at its base; content starts 25% in
 * (40px bold heading, 16px copy, red pill button); ~350px product image on
 * the right, vertically centered.
 * style.min.css adds 50px of section padding; match specificity to override.
 * ---------------------------------------------------------------------- */
#flexible-container section.spotlight-2026,
section.spotlight-2026 {
	margin: 0;
	padding: 0 0 40px;
}

.spotlight-2026 {
	position: relative;
	background-color: var(--b26-tan);
	color: var(--b26-dark);
}

.spotlight-2026__inner {
	position: relative;
}

.spotlight-2026__banner {
	display: inline-flex;
	align-items: flex-end;
	box-sizing: border-box;
	max-width: 168px;
	min-height: 100px;
	margin: 0 0 28px;
	padding: 20px 42px 14px;
	background-color: var(--b26-dark);
	color: var(--b26-white);
	font-family: var(--b26-font-heading);
	font-size: 14px;
	font-weight: 700;
	line-height: 1.3;
	text-transform: none;
}

.spotlight-2026__row {
	display: flex;
	flex-direction: column;
	gap: 28px;
}

.spotlight-2026__content {
	color: var(--b26-dark);
	font-size: 16px;
	line-height: 1.65;
}

.spotlight-2026__content h2,
.spotlight-2026__content h3 {
	margin: 0 0 14px;
	color: var(--b26-dark);
	font-family: var(--b26-font-heading);
	font-size: 30px;
	font-weight: 700;
	line-height: 1.2;
	text-transform: none;
}

.spotlight-2026__content p {
	margin: 0 0 16px;
}

.spotlight-2026__content > :last-child {
	margin-bottom: 0;
}

.spotlight-2026__content ul {
	margin: 0 0 16px;
	padding: 0;
	list-style: none;
}

.spotlight-2026__content ul li {
	position: relative;
	margin: 0 0 10px;
	padding-left: 22px;
}

.spotlight-2026__content ul li::before {
	content: "";
	position: absolute;
	top: 0.6em;
	left: 0;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background-color: var(--b26-dark);
}

.spotlight-2026__btn {
	margin-top: 24px;
	min-width: 220px;
}

.spotlight-2026__btn-icon {
	flex: 0 0 auto;
	width: 10px;
	height: 16px;
}

.spotlight-2026__figure {
	margin: 0;
}

.spotlight-2026__img {
	display: block;
	width: 100%;
	max-width: 360px;
	height: auto;
	margin: 0 auto;
}

@media (min-width: 992px) {
	#flexible-container section.spotlight-2026,
	section.spotlight-2026 {
		padding: 0;
	}

	.spotlight-2026__banner {
		position: absolute;
		top: 0;
		left: 15px; /* container padding */
		z-index: 2;
		width: clamp(160px, 10vw, 192px);
		max-width: 192px;
		min-height: clamp(110px, 7.25vw, 139px);
		margin: 0;
		padding: 24px 50px 16px;
		font-size: clamp(14px, 0.85vw, 16px);
	}

	.spotlight-2026__row {
		flex-direction: row;
		align-items: center;
		gap: 0;
		min-height: clamp(340px, 21.2vw, 407px);
		padding: clamp(40px, 2.6vw, 50px) 0;
	}

	.spotlight-2026__content-col {
		flex: 0 0 52%;
		max-width: 52%;
		margin-left: 25%;
		padding-right: 32px;
	}

	.spotlight-2026__content {
		font-size: clamp(16px, 0.9vw, 17px);
	}

	.spotlight-2026__content h2,
	.spotlight-2026__content h3 {
		font-size: clamp(32px, 2.1vw, 40px);
	}

	.spotlight-2026__media-col {
		flex: 1 1 0;
		min-width: 0;
		display: flex;
		align-items: center;
		justify-content: flex-end;
	}

	.spotlight-2026__img {
		max-width: 100%;
		max-height: clamp(260px, 16.5vw, 320px);
		width: auto;
		margin: 0;
		object-fit: contain;
	}
}

/* -------------------------------------------------------------------------
 * Text and Image 2026 (+ optional Lookbook form strip)
 * PDF (1920 canvas): container-wide dark card ~555px tall; copy block ~420px
 * wide (40px bold heading, 15px copy, red pill); product cutout centered in
 * the right half; 192x140 tan icon square in the bottom-right corner.
 * Lookbook strip (~239px) attached under the card: ~120px icon + 2-line 32px
 * title on the left, white 43px fields + dark pill submit on the right.
 * style.min.css adds 50px of section padding; match specificity to override.
 * ---------------------------------------------------------------------- */
#flexible-container section.text-and-image-2026,
section.text-and-image-2026 {
	margin: 0;
	padding: 32px 0;
}

.text-and-image-2026 {
	background-color: transparent;
}

.text-and-image-2026__box {
	position: relative;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	background-color: var(--b26-dark);
	color: var(--b26-white);
}

.text-and-image-2026__box--light {
	background-color: var(--b26-light);
	color: var(--b26-dark);
}

.text-and-image-2026__box--white {
	background-color: var(--b26-white);
	color: var(--b26-dark);
}

.text-and-image-2026__box--tan {
	background-color: var(--b26-tan);
	color: var(--b26-dark);
}

.text-and-image-2026__box--red {
	background-color: var(--b26-green);
	color: var(--b26-white);
}

/* Full width: the color is the section (edge to edge). The inner row stays in the container. */
.text-and-image-2026--full.text-and-image-2026--dark {
	background-color: var(--b26-dark);
	color: var(--b26-white);
}

.text-and-image-2026--full.text-and-image-2026--light {
	background-color: var(--b26-light);
	color: var(--b26-dark);
}

.text-and-image-2026--full.text-and-image-2026--white {
	background-color: var(--b26-white);
	color: var(--b26-dark);
}

.text-and-image-2026--full.text-and-image-2026--tan {
	background-color: var(--b26-tan);
	color: var(--b26-dark);
}

.text-and-image-2026--full.text-and-image-2026--red {
	background-color: var(--b26-green);
	color: var(--b26-white);
}

.text-and-image-2026--full .text-and-image-2026__box {
	background-color: transparent;
	color: inherit;
	overflow: visible;
}

.text-and-image-2026--full .text-and-image-2026__content {
	max-width: none;
}

.text-and-image-2026--full .text-and-image-2026__btn {
	width: auto;
	max-width: none;
}

.text-and-image-2026--full .text-and-image-2026__figure,
.text-and-image-2026--full .text-and-image-2026__img {
	width: 100%;
	max-width: 100%;
}

.text-and-image-2026--full .text-and-image-2026__img {
	max-height: none;
}

.text-and-image-2026--full .text-and-image-2026__media-col {
	padding-bottom: 0;
}

.text-and-image-2026__content-col {
	position: relative;
	z-index: 2;
	padding: 36px 24px 8px;
}

.text-and-image-2026__content {
	max-width: 480px;
	color: inherit;
	font-size: 15px;
	line-height: 1.75;
}

.text-and-image-2026__content h2,
.text-and-image-2026__content h3 {
	margin: 0 0 18px;
	color: inherit;
	font-family: var(--b26-font-heading);
	font-size: 30px;
	font-weight: 700;
	line-height: 1.25;
	text-transform: none;
}

.text-and-image-2026__content p {
	margin: 0 0 16px;
}

.text-and-image-2026__content > :last-child {
	margin-bottom: 0;
}

.text-and-image-2026__content a:not(.b26-btn) {
	color: inherit;
	text-decoration: underline;
}

.text-and-image-2026__btn {
	width: 100%;
	max-width: 480px;
	margin-top: 24px;
}

.text-and-image-2026__box--red .text-and-image-2026__btn {
	background-color: var(--b26-dark);
	border-color: var(--b26-dark);
}

.text-and-image-2026__box--red .text-and-image-2026__btn:hover,
.text-and-image-2026__box--red .text-and-image-2026__btn:focus {
	background-color: var(--b26-dark-alt);
	border-color: var(--b26-dark-alt);
}

.text-and-image-2026__btn-icon {
	flex: 0 0 auto;
	width: 10px;
	height: 16px;
}

.text-and-image-2026__media-col {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	/* bottom padding clears the corner icon square on small screens */
	padding: 32px 24px 112px;
}

.text-and-image-2026__figure {
	margin: 0;
	max-width: 100%;
}

.text-and-image-2026__img {
	display: block;
	width: auto;
	max-width: 100%;
	max-height: 360px;
	height: auto;
	margin: 0 auto;
	object-fit: contain;
}

/* Tan icon square in the bottom corner (the Instore version used a yellow box). */
.text-and-image-2026__icon {
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: 3;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 120px;
	height: 88px;
	background-color: var(--b26-tan);
}

.text-and-image-2026__box--image-left .text-and-image-2026__icon {
	right: auto;
	left: 0;
}

.text-and-image-2026__icon-img {
	display: block;
	width: 44px;
	max-width: 60%;
	height: auto;
	max-height: 60%;
	object-fit: contain;
}

/* ---- Lookbook strip (attached directly under the card, same width) ---- */
.text-and-image-2026__lookbook {
	display: flex;
	flex-direction: column;
	gap: 24px;
	padding: 32px 24px;
	background-color: var(--b26-green);
	color: var(--b26-white);
}

.text-and-image-2026__lookbook--dark {
	background-color: var(--b26-dark);
}

.text-and-image-2026__lookbook--tan {
	background-color: var(--b26-tan);
	color: var(--b26-dark);
}

.text-and-image-2026__lookbook-heading {
	display: flex;
	align-items: center;
	gap: 20px;
	min-width: 0;
}

.text-and-image-2026__lookbook-icon {
	display: flex;
	flex: 0 0 64px;
	align-items: center;
	justify-content: center;
	width: 64px;
}

.text-and-image-2026__lookbook-img {
	display: block;
	width: 100%;
	height: auto;
	max-height: 64px;
	object-fit: contain;
}

/* Icons are usually dark SVG/PNG; flip them to white on red/dark strips. */
.text-and-image-2026__lookbook--red .text-and-image-2026__lookbook-img,
.text-and-image-2026__lookbook--dark .text-and-image-2026__lookbook-img {
	filter: brightness(0) invert(1);
}

.text-and-image-2026__lookbook-title {
	margin: 0;
	color: inherit;
	font-family: var(--b26-font-heading);
	font-size: 26px;
	font-weight: 700;
	line-height: 1.25;
	text-transform: none;
}

.text-and-image-2026__form {
	min-width: 0;
}

/* Generic form styling so Gravity/Formidable/CF7 markup all look like the PDF fields. */
.text-and-image-2026__form form {
	margin: 0;
}

.text-and-image-2026__form label:not(.screen-reader-text) {
	display: block;
	margin: 0 0 4px;
	color: inherit;
	font-size: 13px;
	font-weight: 600;
}

.text-and-image-2026__form input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.text-and-image-2026__form select,
.text-and-image-2026__form textarea {
	display: block;
	width: 100%;
	min-height: 44px;
	margin: 0 0 14px;
	padding: 10px 14px;
	border: 0;
	border-radius: 3px;
	background-color: var(--b26-white);
	color: var(--b26-dark);
	font-size: 14px;
	line-height: 1.3;
	box-shadow: none;
}

.text-and-image-2026__form textarea {
	min-height: 96px;
}

.text-and-image-2026__form ::placeholder {
	color: var(--b26-dark);
	opacity: 0.85;
}

.text-and-image-2026__form input[type="submit"],
.text-and-image-2026__form button[type="submit"],
.text-and-image-2026__form .frm_button_submit,
.text-and-image-2026__form .gform_button,
.text-and-image-2026__form .wpcf7-submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	margin: 0;
	padding: 10px 28px;
	border: 2px solid var(--b26-dark);
	border-radius: var(--b26-btn-radius);
	background-color: var(--b26-dark);
	color: var(--b26-white);
	font-family: var(--b26-font-heading);
	font-size: 15px;
	font-weight: 700;
	line-height: 1.2;
	cursor: pointer;
	transition: background-color 0.2s ease, border-color 0.2s ease;
}

.text-and-image-2026__form input[type="submit"]:hover,
.text-and-image-2026__form button[type="submit"]:hover,
.text-and-image-2026__form .frm_button_submit:hover,
.text-and-image-2026__form .gform_button:hover,
.text-and-image-2026__form .wpcf7-submit:hover {
	background-color: var(--b26-dark-alt);
	border-color: var(--b26-dark-alt);
}

.text-and-image-2026__lookbook--dark .text-and-image-2026__form input[type="submit"],
.text-and-image-2026__lookbook--dark .text-and-image-2026__form button[type="submit"],
.text-and-image-2026__lookbook--dark .text-and-image-2026__form .frm_button_submit,
.text-and-image-2026__lookbook--dark .text-and-image-2026__form .gform_button,
.text-and-image-2026__lookbook--dark .text-and-image-2026__form .wpcf7-submit {
	background-color: var(--b26-green);
	border-color: var(--b26-green);
}

.text-and-image-2026__form iframe {
	display: block;
	width: 100%;
	min-height: 120px;
	border: 0;
	background: transparent;
}

@media (min-width: 768px) {
	.text-and-image-2026__lookbook-icon {
		flex-basis: 96px;
		width: 96px;
	}

	.text-and-image-2026__lookbook-img {
		max-height: 80px;
	}
}

@media (min-width: 992px) {
	#flexible-container section.text-and-image-2026,
	section.text-and-image-2026 {
		padding: clamp(32px, 2.4vw, 46px) 0;
	}

	.text-and-image-2026__box {
		flex-direction: row;
		align-items: stretch;
		min-height: clamp(440px, 28.9vw, 555px);
	}

	.text-and-image-2026__content-col {
		display: flex;
		flex: 0 0 50%;
		flex-direction: column;
		justify-content: center;
		max-width: 50%;
		padding: clamp(56px, 3.75vw, 72px) 40px clamp(56px, 3.75vw, 72px) clamp(40px, 4.3vw, 82px);
	}

	.text-and-image-2026__content {
		max-width: clamp(520px, 34.4vw, 660px);
		font-size: clamp(15px, 0.85vw, 16px);
	}

	.text-and-image-2026__content h2,
	.text-and-image-2026__content h3 {
		font-size: clamp(32px, 2.1vw, 40px);
		line-height: 1.2;
	}

	.text-and-image-2026__btn {
		max-width: clamp(520px, 34.4vw, 660px);
	}

	.text-and-image-2026__media-col {
		flex: 1 1 0;
		min-width: 0;
		/* leave room for the icon square in the corner */
		padding: 48px clamp(60px, 5.5vw, 110px) 48px 32px;
	}

	.text-and-image-2026__box--image-left .text-and-image-2026__media-col {
		order: 1;
		padding: 48px 32px 48px clamp(60px, 5.5vw, 110px);
	}

	.text-and-image-2026__box--image-left .text-and-image-2026__content-col {
		order: 2;
		padding-left: 40px;
		padding-right: clamp(40px, 4.3vw, 82px);
	}

	.text-and-image-2026__img {
		max-height: clamp(340px, 22vw, 430px);
	}

	.text-and-image-2026__icon {
		width: clamp(150px, 10vw, 192px);
		height: clamp(110px, 7.3vw, 140px);
	}

	.text-and-image-2026__icon-img {
		width: clamp(48px, 3.4vw, 66px);
	}

	.text-and-image-2026__lookbook {
		flex-direction: row;
		align-items: center;
		gap: clamp(32px, 3vw, 56px);
		min-height: clamp(190px, 12.4vw, 239px);
		padding: clamp(40px, 3.3vw, 64px) clamp(40px, 4.3vw, 82px);
	}

	.text-and-image-2026__lookbook-heading {
		flex: 0 0 calc(50% - clamp(32px, 3vw, 56px));
		gap: clamp(24px, 2.4vw, 46px);
	}

	.text-and-image-2026__lookbook-icon {
		flex-basis: clamp(80px, 6.2vw, 120px);
		width: clamp(80px, 6.2vw, 120px);
	}

	.text-and-image-2026__lookbook-img {
		max-height: clamp(70px, 5.2vw, 100px);
	}

	.text-and-image-2026__lookbook-title {
		font-size: clamp(26px, 1.7vw, 32px);
	}

	.text-and-image-2026__form {
		flex: 1 1 0;
	}

	.text-and-image-2026__form input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
	.text-and-image-2026__form select {
		min-height: 43px;
		margin-bottom: 23px;
	}

	#flexible-container section.text-and-image-2026.text-and-image-2026--full,
	section.text-and-image-2026.text-and-image-2026--full {
		padding: clamp(56px, 4.6vw, 88px) 0;
	}

	.text-and-image-2026--full .text-and-image-2026__box {
		align-items: center;
		width: 100%;
		min-height: 0;
		gap: clamp(32px, 4vw, 72px);
	}

	.text-and-image-2026--full .text-and-image-2026__content-col,
	.text-and-image-2026--full .text-and-image-2026__media-col {
		flex: 1 1 0;
		max-width: none;
		padding: 0;
	}

	.text-and-image-2026--full .text-and-image-2026__content-col {
		align-items: flex-start;
	}

	.text-and-image-2026--full .text-and-image-2026__content {
		max-width: none;
	}

	.text-and-image-2026--full .text-and-image-2026__btn {
		width: auto;
		max-width: none;
	}

	.text-and-image-2026--full .text-and-image-2026__figure {
		width: 100%;
	}

	.text-and-image-2026--full .text-and-image-2026__img {
		width: 100%;
		max-width: 100%;
		max-height: none;
	}
}

/* -------------------------------------------------------------------------
 * Text and Form 2026 (Get Started Today)
 * PDF (1920 canvas): full-bleed warm light band. Copy (~400px) and a dark
 * pill on the left; an 800px white form card; a photo flush to the card's
 * right, filling out the container. The red Submit pill sits on the bottom
 * edge of the card and hangs into the next section, so the band stops short
 * and the following section is pulled up underneath it.
 * style.min.css adds 50px of section padding; match specificity to override.
 * ---------------------------------------------------------------------- */
#flexible-container section.text-and-form-2026,
section.text-and-form-2026 {
	position: relative;
	z-index: 2;
	margin: 0 0 -28px;
	padding: 56px 0 36px;
	background-color: transparent;
	color: var(--b26-dark);
}

.text-and-form-2026::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	height: calc(100% - 28px);
	background-color: #eeebec;
	z-index: 0;
}

.text-and-form-2026 > .container {
	position: relative;
	z-index: 1;
}

.text-and-form-2026--white::before {
	background-color: var(--b26-white);
}

.text-and-form-2026--grey::before {
	background-color: var(--b26-grey);
}

.text-and-form-2026--dark {
	color: var(--b26-white);
}

.text-and-form-2026--dark::before {
	background-color: var(--b26-dark);
}

.text-and-form-2026__row {
	display: flex;
	flex-direction: column;
	gap: 28px;
}

.text-and-form-2026__content {
	max-width: 460px;
	font-size: 16px;
	line-height: 1.6;
}

.text-and-form-2026__content h2,
.text-and-form-2026__content h3 {
	margin: 0 0 16px;
	color: inherit;
	font-family: var(--b26-font-heading);
	font-size: 30px;
	font-weight: 700;
	line-height: 1.2;
	text-transform: none;
}

.text-and-form-2026__content p {
	margin: 0 0 14px;
}

.text-and-form-2026__content > :last-child {
	margin-bottom: 0;
}

.text-and-form-2026__content a:not(.b26-btn) {
	color: inherit;
	text-decoration: underline;
}

.text-and-form-2026__phone-btn {
	width: 100%;
	max-width: 460px;
	margin-top: 28px;
	background-color: var(--b26-dark);
	border-color: var(--b26-dark);
}

.text-and-form-2026__phone-btn:hover,
.text-and-form-2026__phone-btn:focus {
	background-color: var(--b26-dark-alt);
	border-color: var(--b26-dark-alt);
	color: var(--b26-white);
}

.text-and-form-2026--dark .text-and-form-2026__phone-btn {
	background-color: var(--b26-green);
	border-color: var(--b26-green);
}

.text-and-form-2026__phone-icon {
	flex: 0 0 auto;
	width: 10px;
	height: 16px;
}

.text-and-form-2026__form-col {
	display: flex;
	flex-direction: column;
	gap: 20px;
	min-width: 0;
}

.text-and-form-2026__form {
	position: relative;
	box-sizing: border-box;
	padding: 24px 22px 40px;
	border: 1px solid #d5d5d7;
	background-color: var(--b26-white);
	color: var(--b26-dark);
}

.text-and-form-2026__form form {
	margin: 0;
}

.text-and-form-2026__form .frm_form_fields,
.text-and-form-2026__form fieldset,
.text-and-form-2026__form .gform_body {
	width: 100%;
	min-width: 0;
	margin: 0;
	padding: 0;
	border: 0;
}

.text-and-form-2026__form .frm_fields_container,
.text-and-form-2026__form .gform_fields,
.text-and-form-2026__form form:not(:has(.frm_fields_container)):not(:has(.gform_fields)) {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 16px 20px;
	width: 100%;
	margin: 0;
}

.text-and-form-2026__form .frm_form_field,
.text-and-form-2026__form .gfield,
.text-and-form-2026__form p {
	flex: 1 1 100%;
	max-width: 100%;
	margin: 0;
}

.text-and-form-2026__form .frm_half,
.text-and-form-2026__form .gfield--width-half {
	flex: 1 1 calc(50% - 10px);
	max-width: calc(50% - 10px);
}

.text-and-form-2026__form label,
.text-and-form-2026__form .frm_primary_label,
.text-and-form-2026__form .gfield_label {
	display: block;
	margin: 0 0 4px;
	color: var(--b26-dark);
	font-size: 13px;
	font-weight: 600;
}

.text-and-form-2026__form .frm_screen_reader,
.text-and-form-2026__form .gfield_label_before_complex,
.text-and-form-2026__form .hidden_label > .gfield_label,
.text-and-form-2026__form .frm_none_container > label {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

.text-and-form-2026__form input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.text-and-form-2026__form select,
.text-and-form-2026__form textarea {
	display: block;
	width: 100%;
	box-sizing: border-box;
	min-height: 46px;
	margin: 0;
	padding: 10px 14px;
	border: 1px solid #c8c8ca;
	border-radius: 0;
	background-color: var(--b26-white);
	color: var(--b26-dark);
	font-size: 15px;
	line-height: 1.3;
	box-shadow: none;
}

.text-and-form-2026__form textarea {
	min-height: 128px;
	resize: vertical;
}

.text-and-form-2026__form ::placeholder {
	color: #8d8d90;
	opacity: 1;
}

/* Submit hangs on the bottom-right edge of the card, half on the next section. */
.text-and-form-2026__form .frm_submit,
.text-and-form-2026__form .gform_footer,
.text-and-form-2026__form p:has(> input[type="submit"]),
.text-and-form-2026__form p:has(> button[type="submit"]),
.text-and-form-2026__form p:has(> .wpcf7-submit) {
	position: absolute;
	right: 22px;
	bottom: 0;
	z-index: 2;
	flex: none;
	width: auto;
	max-width: none;
	margin: 0;
	transform: translateY(50%);
}

.text-and-form-2026__form input[type="submit"],
.text-and-form-2026__form button[type="submit"],
.text-and-form-2026__form .frm_button_submit,
.text-and-form-2026__form .gform_button,
.text-and-form-2026__form .wpcf7-submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	margin: 0;
	padding: 10px 46px 10px 28px;
	border: 2px solid var(--b26-green);
	border-radius: var(--b26-btn-radius);
	background-color: var(--b26-green);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 16'%3E%3Cpath d='M1.5 1l7 7-7 7' fill='none' stroke='%23ffffff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 18px center;
	background-size: 10px 16px;
	color: var(--b26-white);
	font-family: var(--b26-font-heading);
	font-size: 16px;
	font-weight: 700;
	line-height: 1.2;
	cursor: pointer;
	transition: background-color 0.2s ease, border-color 0.2s ease;
}

.text-and-form-2026__form input[type="submit"]:hover,
.text-and-form-2026__form button[type="submit"]:hover,
.text-and-form-2026__form .frm_button_submit:hover,
.text-and-form-2026__form .gform_button:hover,
.text-and-form-2026__form .wpcf7-submit:hover {
	background-color: var(--b26-green-dark);
	border-color: var(--b26-green-dark);
}

.text-and-form-2026__figure {
	margin: 8px 0 0;
}

.text-and-form-2026__img {
	display: block;
	width: 100%;
	height: auto;
	object-fit: cover;
}

/* The card and its submit overlap the next block, so that block needs room. */
#flexible-container section.text-and-form-2026 + section,
section.text-and-form-2026 + section {
	padding-top: 88px;
}

@media (min-width: 992px) {
	#flexible-container section.text-and-form-2026,
	section.text-and-form-2026 {
		margin-bottom: -56px;
		padding: clamp(72px, 4.6vw, 88px) 0 0;
	}

	.text-and-form-2026::before {
		height: calc(100% - 56px);
	}

	.text-and-form-2026__row {
		flex-direction: row;
		align-items: flex-start;
		gap: 0;
	}

	.text-and-form-2026__content-col {
		flex: 0 0 30%;
		max-width: 480px;
		padding: 6px clamp(40px, 4vw, 72px) 0 0;
	}

	.text-and-form-2026__content,
	.text-and-form-2026__phone-btn {
		/* PDF copy is three lines inside a column about this wide. */
		max-width: 360px;
	}

	.text-and-form-2026__content {
		font-size: 20px;
		line-height: 1.45;
	}

	.text-and-form-2026__content h2,
	.text-and-form-2026__content h3 {
		font-size: clamp(30px, 1.85vw, 36px);
	}

	.text-and-form-2026__phone-btn {
		margin-top: clamp(24px, 2vw, 36px);
	}

	.text-and-form-2026__form-col {
		flex: 1 1 0;
		flex-direction: row;
		align-items: stretch;
		gap: 0;
	}

	.text-and-form-2026--form-left .text-and-form-2026__content-col {
		order: 2;
		padding: 6px 0 0 clamp(40px, 4vw, 72px);
	}

	.text-and-form-2026--form-left .text-and-form-2026__form-col {
		order: 1;
	}

	.text-and-form-2026--has-image .text-and-form-2026__form {
		flex: 1 1 70%;
		min-width: 0;
	}

	.text-and-form-2026__form {
		padding: clamp(24px, 1.8vw, 32px) clamp(22px, 1.6vw, 28px) 48px;
	}

	.text-and-form-2026__form .frm_submit,
	.text-and-form-2026__form .gform_footer,
	.text-and-form-2026__form p:has(> input[type="submit"]),
	.text-and-form-2026__form p:has(> button[type="submit"]),
	.text-and-form-2026__form p:has(> .wpcf7-submit) {
		right: clamp(22px, 1.6vw, 28px);
	}

	.text-and-form-2026__figure {
		position: relative;
		flex: 0 0 29.5%;
		margin: 0;
		min-height: 100%;
	}

	.text-and-form-2026__img {
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
	}

	#flexible-container section.text-and-form-2026 + section,
	section.text-and-form-2026 + section {
		padding-top: clamp(110px, 7.5vw, 140px);
	}
}

/* -------------------------------------------------------------------------
 * Shopper Insights 2026 (Related Resources)
 * PDF (1920 canvas): white section, ~92px top / ~78px bottom. 32px bold
 * heading in a 25% column; three 389px cards 21px apart. Card: light-grey
 * image box (92% of width tall) with a 2px dark rule under it and a 142x67
 * dark flag in the top-left; 20px bold title, 14px copy, 45px red pill.
 * Three cards fit on desktop; extra cards (and all cards on mobile) slide.
 * style.min.css adds 50px of section padding; match specificity to override.
 * ---------------------------------------------------------------------- */
#flexible-container section.shopper-insights-2026,
section.shopper-insights-2026 {
	margin: 0;
	padding: 56px 0 48px;
}

.shopper-insights-2026 {
	background-color: var(--b26-white);
	color: var(--b26-dark);
}

.shopper-insights-2026__row {
	display: flex;
	flex-direction: column;
	gap: 28px;
}

.shopper-insights-2026__content {
	max-width: 420px;
	font-size: 16px;
	line-height: 1.6;
}

.shopper-insights-2026__content h2,
.shopper-insights-2026__content h3 {
	margin: 0 0 12px;
	color: inherit;
	font-family: var(--b26-font-heading);
	font-size: 28px;
	font-weight: 700;
	line-height: 1.25;
	text-transform: none;
}

.shopper-insights-2026__content > :last-child {
	margin-bottom: 0;
}

.shopper-insights-2026__media-col {
	min-width: 0;
}

.shopper-insights-2026__slider .slick-list {
	margin: 0 -10px;
	overflow: visible;
}

.shopper-insights-2026__slider .slick-track {
	display: flex;
}

.shopper-insights-2026__slide {
	height: auto;
	padding: 0 10px;
}

/* Before slick runs: keep cards side by side and scrollable, no layout jump. */
.shopper-insights-2026__slider:not(.slick-initialized) {
	display: flex;
	gap: 21px;
	overflow-x: auto;
}

.shopper-insights-2026__slider:not(.slick-initialized) .shopper-insights-2026__slide {
	flex: 0 0 min(389px, 86%);
	padding: 0;
}

.shopper-insights-2026__card {
	display: flex;
	flex-direction: column;
	height: 100%;
	background-color: var(--b26-white);
}

.shopper-insights-2026__figure {
	position: relative;
	margin: 0;
	padding-top: 92%;
	border-bottom: 2px solid var(--b26-dark);
	background-color: var(--b26-light);
	overflow: hidden;
}

.shopper-insights-2026__img {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.shopper-insights-2026__flag {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	min-width: 120px;
	min-height: 56px;
	padding: 14px 24px;
	background-color: var(--b26-dark);
	color: var(--b26-white);
	font-family: var(--b26-font-heading);
	font-size: 15px;
	font-weight: 700;
	line-height: 1.2;
}

.shopper-insights-2026__body {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	align-items: flex-start;
	padding: 24px 0 4px;
}

.shopper-insights-2026__heading {
	margin: 0 0 6px;
	color: inherit;
	font-family: var(--b26-font-heading);
	font-size: 19px;
	font-weight: 700;
	line-height: 1.4;
	text-transform: none;
}

.shopper-insights-2026__description {
	flex: 1 1 auto;
	color: inherit;
	font-size: 14px;
	line-height: 1.6;
}

.shopper-insights-2026__description p:last-child,
.shopper-insights-2026__description ul:last-child {
	margin-bottom: 0;
}

.shopper-insights-2026__btn {
	width: auto;
	min-width: 200px;
	min-height: 45px;
	margin-top: 26px;
	padding: 10px 24px 10px 28px;
	font-size: 16px;
}

.shopper-insights-2026__btn--dark {
	background-color: var(--b26-dark);
	border-color: var(--b26-dark);
}

.shopper-insights-2026__btn--dark:hover,
.shopper-insights-2026__btn--dark:focus {
	background-color: var(--b26-dark-alt);
	border-color: var(--b26-dark-alt);
}

.shopper-insights-2026__btn-icon {
	flex: 0 0 auto;
	width: 10px;
	height: 16px;
}

.shopper-insights-2026__slider.slick-dotted.slick-slider {
	margin-bottom: 0;
}

.shopper-insights-2026__slider .slick-dots {
	position: static;
	display: flex !important;
	justify-content: center;
	gap: 12px;
	margin: 32px 0 0;
	padding: 0;
	list-style: none;
}

.shopper-insights-2026__slider .slick-dots li {
	width: 16px;
	height: 16px;
	margin: 0;
}

.shopper-insights-2026__slider .slick-dots li button {
	width: 100%;
	height: 100%;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background-color: var(--b26-grey);
	font-size: 0;
	line-height: 0;
}

.shopper-insights-2026__slider .slick-dots li button:before {
	display: none;
}

.shopper-insights-2026__slider .slick-dots li.slick-active button {
	background-color: var(--b26-green);
}

/* All cards fit: nothing to page through, so drop the lone dot. */
.shopper-insights-2026__slider .slick-dots:has(li:only-child) {
	display: none !important;
}

@media (min-width: 992px) {
	#flexible-container section.shopper-insights-2026,
	section.shopper-insights-2026 {
		padding: clamp(64px, 4.8vw, 92px) 0 clamp(56px, 4vw, 78px);
	}

	.shopper-insights-2026__row {
		flex-direction: row;
		align-items: flex-start;
		gap: 0;
	}

	.shopper-insights-2026__content-col {
		flex: 0 0 25%;
		max-width: 25%;
		padding: clamp(32px, 2.5vw, 48px) 32px 0 0;
	}

	.shopper-insights-2026__content {
		/* PDF heading column is ~280px wide, so "Related Resources" sits on two lines. */
		max-width: clamp(240px, 15vw, 290px);
	}

	.shopper-insights-2026__content h2,
	.shopper-insights-2026__content h3 {
		font-size: clamp(28px, 1.7vw, 32px);
	}

	.shopper-insights-2026__media-col {
		flex: 1 1 0;
	}

	.shopper-insights-2026--slides-left .shopper-insights-2026__media-col {
		order: 1;
	}

	.shopper-insights-2026--slides-left .shopper-insights-2026__content-col {
		order: 2;
		padding-right: 0;
		padding-left: 32px;
	}

	.shopper-insights-2026--content-top .shopper-insights-2026__row {
		flex-direction: column;
		gap: clamp(28px, 2.4vw, 40px);
	}

	.shopper-insights-2026--content-top .shopper-insights-2026__content-col {
		flex: 0 0 auto;
		max-width: none;
		padding: 0;
	}

	.shopper-insights-2026--content-top .shopper-insights-2026__content {
		max-width: none;
	}

	.shopper-insights-2026--content-top .shopper-insights-2026__media-col {
		flex: 0 0 auto;
		width: 100%;
	}

	.shopper-insights-2026__slider .slick-list {
		margin: 0 -10.5px;
		overflow: hidden;
	}

	.shopper-insights-2026__slide {
		padding: 0 10.5px;
	}

	.shopper-insights-2026__flag {
		min-width: clamp(120px, 7.4vw, 142px);
		min-height: clamp(56px, 3.5vw, 67px);
		padding: 16px 28px;
		font-size: 16px;
	}

	.shopper-insights-2026__body {
		padding-top: 28px;
	}

	.shopper-insights-2026__heading {
		font-size: clamp(18px, 1.05vw, 20px);
	}

	.shopper-insights-2026__btn {
		margin-top: 28px;
	}

	.shopper-insights-2026__slider .slick-dots {
		gap: 14px;
		margin-top: 40px;
	}

	.shopper-insights-2026__slider .slick-dots li {
		width: 20px;
		height: 20px;
	}
}

/* -------------------------------------------------------------------------
 * Icon Cards 2026 (What Makes Us Different)
 * Dark band. Title in the left quarter. Two independent accordion columns
 * on the right: a row shows its icon and title, and opens to the
 * description and pills. Opening one row never stretches the other column.
 * style.min.css adds 50px of section padding; match specificity to override.
 * ---------------------------------------------------------------------- */
#flexible-container section.icon-cards-2026,
section.icon-cards-2026 {
	margin: 0;
	padding: 48px 0;
}

.icon-cards-2026 {
	--ic-icon-size: 44px;
	--ic-icon-gap: 16px;
	--ic-border: rgba(255, 255, 255, 0.45);
	background-color: var(--b26-dark);
	color: var(--b26-white);
}

.icon-cards-2026--light {
	background-color: var(--b26-light);
	color: var(--b26-dark);
	--ic-border: rgba(45, 40, 38, 0.28);
}

.icon-cards-2026--white {
	background-color: var(--b26-white);
	color: var(--b26-dark);
	--ic-border: rgba(45, 40, 38, 0.28);
}

.icon-cards-2026--tan {
	background-color: var(--b26-tan);
	color: var(--b26-dark);
	--ic-border: rgba(45, 40, 38, 0.28);
}

.icon-cards-2026--red {
	background-color: var(--b26-green);
	color: var(--b26-white);
}

.icon-cards-2026__row {
	display: flex;
	flex-direction: column;
	gap: 28px;
}

.icon-cards-2026__title {
	margin: 0;
	max-width: 280px;
	color: inherit;
	font-family: var(--b26-font-heading);
	font-size: 32px;
	font-weight: 700;
	line-height: 1.2;
	text-transform: none;
}

.icon-cards-2026__grid {
	display: grid;
	grid-template-columns: 1fr;
	column-gap: clamp(28px, 3vw, 56px);
	align-items: start;
}

.icon-cards-2026__column {
	min-width: 0;
	border-top: 1px solid var(--ic-border);
}

.icon-cards-2026__item {
	border-bottom: 1px solid var(--ic-border);
	background: transparent;
}

.icon-cards-2026__item.is-animating {
	pointer-events: none;
}

.icon-cards-2026__trigger {
	display: flex;
	align-items: flex-start;
	gap: var(--ic-icon-gap);
	width: 100%;
	padding: 22px 8px;
	color: inherit;
	list-style: none;
	text-align: left;
	background: transparent;
	box-sizing: border-box;
}

.icon-cards-2026__item:not(.icon-cards-2026__item--static) > .icon-cards-2026__trigger {
	cursor: pointer;
}

.icon-cards-2026__trigger::-webkit-details-marker {
	display: none;
}

.icon-cards-2026__trigger::marker {
	content: "";
	display: none;
}

.icon-cards-2026__item[open],
.icon-cards-2026__item[open] .icon-cards-2026__trigger,
.icon-cards-2026__trigger:hover {
	color: inherit;
	background: transparent;
}

.icon-cards-2026__icon {
	display: flex;
	flex: 0 0 var(--ic-icon-size);
	align-items: center;
	justify-content: center;
	width: var(--ic-icon-size);
	height: var(--ic-icon-size);
}

.icon-cards-2026__img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: var(--ic-icon-size);
	max-height: var(--ic-icon-size);
	object-fit: contain;
}

.icon-cards-2026--dark .icon-cards-2026__img,
.icon-cards-2026--red .icon-cards-2026__img {
	filter: brightness(0) invert(1);
}

.icon-cards-2026--light .icon-cards-2026__img,
.icon-cards-2026--white .icon-cards-2026__img,
.icon-cards-2026--tan .icon-cards-2026__img {
	filter: brightness(0);
}

.icon-cards-2026__main {
	display: block;
	flex: 1 1 auto;
	min-width: 0;
	padding-top: 8px;
}

.icon-cards-2026__heading {
	display: block;
	margin: 0;
	color: inherit;
	font-family: var(--b26-font-heading);
	font-size: 18px;
	font-weight: 700;
	line-height: 1.3;
	text-transform: none;
}

.icon-cards-2026__panel {
	height: 0;
	overflow: hidden;
	opacity: 0;
	color: inherit;
}

.icon-cards-2026__item[open]:not(.js-ic-enhanced) .icon-cards-2026__panel {
	height: auto;
	overflow: visible;
	opacity: 1;
}

.icon-cards-2026__panel-inner {
	padding: 0 8px 22px calc(8px + var(--ic-icon-size) + var(--ic-icon-gap));
}

.icon-cards-2026__text {
	font-size: 15px;
	line-height: 1.55;
}

.icon-cards-2026__text p:last-child {
	margin-bottom: 0;
}

.icon-cards-2026__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 16px;
}

.icon-cards-2026__btn {
	width: auto;
	min-height: 44px;
	padding: 10px 18px;
	font-size: 15px;
	white-space: nowrap;
}

.icon-cards-2026__btn-icon {
	flex: 0 0 auto;
	width: 10px;
	height: 16px;
}

.icon-cards-2026--red .icon-cards-2026__btn {
	background-color: var(--b26-dark);
	border-color: var(--b26-dark);
}

@media (min-width: 768px) {
	.icon-cards-2026__grid {
		grid-template-columns: 1fr 1fr;
	}
}

@media (min-width: 992px) {
	#flexible-container section.icon-cards-2026,
	section.icon-cards-2026 {
		padding: clamp(56px, 4.5vw, 84px) 0;
	}

	.icon-cards-2026 {
		--ic-icon-size: 48px;
		--ic-icon-gap: 20px;
	}

	.icon-cards-2026__row {
		flex-direction: row;
		align-items: flex-start;
		gap: clamp(32px, 4vw, 72px);
	}

	.icon-cards-2026__title-col {
		flex: 0 0 24%;
		max-width: 24%;
		padding-top: 18px;
	}

	.icon-cards-2026__title {
		font-size: clamp(32px, 2.1vw, 40px);
	}

	.icon-cards-2026__grid {
		flex: 1 1 0;
	}

	.icon-cards-2026__trigger {
		padding: 26px 12px;
	}

	.icon-cards-2026__panel-inner {
		padding: 0 12px 26px calc(12px + var(--ic-icon-size) + var(--ic-icon-gap));
	}

	.icon-cards-2026__heading {
		font-size: 20px;
	}
}

/* -------------------------------------------------------------------------
 * Great Expectations 2026
 * PDF: tan band, copy on the left, two stacked dark pills on the right,
 * tree pattern fading in along the right edge.
 * style.min.css adds 50px of section padding; match specificity to override.
 * ---------------------------------------------------------------------- */
#flexible-container section.expectations-2026,
section.expectations-2026 {
	position: relative;
	margin: 0;
	padding: 48px 0;
	overflow: hidden;
}

.expectations-2026 {
	background-color: var(--b26-tan);
	color: var(--b26-dark);
}

.expectations-2026--dark {
	background-color: var(--b26-dark);
	color: var(--b26-white);
}

.expectations-2026--red {
	background-color: var(--b26-green);
	color: var(--b26-white);
}

.expectations-2026__pattern {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 0;
	width: min(52%, 780px);
	height: 100%;
	object-fit: cover;
	object-position: right center;
	opacity: 0.14;
	pointer-events: none;
}

.expectations-2026 > .container {
	position: relative;
	z-index: 1;
}

.expectations-2026__row {
	display: flex;
	flex-direction: column;
	gap: 28px;
}

.expectations-2026__content {
	max-width: 760px;
	font-size: 16px;
	line-height: 1.6;
}

.expectations-2026__content h2,
.expectations-2026__content h3 {
	margin: 0 0 16px;
	color: inherit;
	font-family: var(--b26-font-heading);
	font-size: 32px;
	font-weight: 700;
	line-height: 1.2;
	text-transform: none;
}

.expectations-2026__content p:last-child {
	margin-bottom: 0;
}

.expectations-2026__actions {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 12px;
}

.expectations-2026__btn {
	width: 100%;
	max-width: 280px;
	min-height: 48px;
	background-color: var(--b26-dark);
	border-color: var(--b26-dark);
}

.expectations-2026__btn:hover,
.expectations-2026__btn:focus {
	background-color: var(--b26-dark-alt);
	border-color: var(--b26-dark-alt);
	color: var(--b26-white);
}

.expectations-2026__btn--red {
	background-color: var(--b26-green);
	border-color: var(--b26-green);
}

.expectations-2026__btn--red:hover,
.expectations-2026__btn--red:focus {
	background-color: var(--b26-green-dark);
	border-color: var(--b26-green-dark);
}

.expectations-2026--dark .expectations-2026__btn--dark,
.expectations-2026--red .expectations-2026__btn--dark {
	background-color: var(--b26-white);
	border-color: var(--b26-white);
	color: var(--b26-dark);
}

.expectations-2026__btn-icon {
	flex: 0 0 auto;
	width: 10px;
	height: 16px;
}

@media (min-width: 992px) {
	#flexible-container section.expectations-2026,
	section.expectations-2026 {
		padding: clamp(48px, 3.6vw, 68px) 0;
	}

	.expectations-2026__row {
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
		gap: clamp(32px, 4vw, 80px);
	}

	.expectations-2026__content h2,
	.expectations-2026__content h3 {
		font-size: clamp(32px, 2vw, 36px);
	}

	.expectations-2026__actions {
		flex: 0 0 auto;
		align-items: stretch;
	}

	.expectations-2026__btn {
		min-width: 240px;
	}
}
