@import url('https://fonts.googleapis.com/css2?family=Marcellus&family=Pinyon+Script&display=swap');

/* ==========================================================================
   Ladies Night · Champagne Soirée (1b)
   Campaign page ladies-night-champagne-soiree. Every rule is scoped to the page's own sections (section.lad26),
   so nothing else on the store changes. Display type is Marcellus; body copy, labels and buttons stay
   in the store's own fonts. Plain CSS (no nesting, no .min): the file is served exactly as written.

   Color comes in two layers:
   - signature: the look's palette below, the same on every store
   - store roles: where the store's palette may show through. Their defaults below are the look's; a store's
     judgement pass sets them in ladies-night-champagne-soiree-store.css (loaded after this sheet, plain hex).
   Photo slots ship as flat tiles with a caption naming the shot; the caption hides as soon as the store sets a
   real photo in the page editor.
   ========================================================================== */

/* Tokens */
/* ----------------------------- */
section[data-pagebuilder="section"].lad26 {
	--lad26-canvas: #f2eee8;
	--lad26-band: #e8e1d9;
	--lad26-ink: #272523;
	--lad26-muted: #4a4541;
	--lad26-line: #cec5bb;
	--lad26-brand: #784f57;
	--lad26-on-brand: #ffffff;
	--lad26-brand-hover: #603f46;
	--lad26-deep: #272523;
	--lad26-on-deep: #f2eee8;
	--lad26-tile: #e1dad2;
	--lad26-field: #ffffff;
	--lad26-caption-ink: #4a4541;
	--lad26-display: 'Marcellus', var(--bs-h1-family, serif), serif;
	--lad26-body: var(--bs-body-font-family, system-ui, sans-serif);
	--lad26-label: var(--bs-body-font-family, system-ui, sans-serif);
	--lad26-note: 'Pinyon Script', cursive;
	--lad26-display-weight: 400;
	--lad26-radius: 0;
	--lad26-radius-input: 0;
	--lad26-note-rotate: 0deg;
	--lad26-note-gap: 20px;
	--lad26-field-border: #B9AC9C;
	--lad26-note-size: 48px;
	--lad26-note-weight: 400;
	--lad26-display-transform: none;
	--lad26-display-tracking: 0;
	--lad26-btn-size: 13px;
	--lad26-btn-tracking: .08em;
	--lad26-btn-transform: uppercase;
	--lad26-fact-weight: 700;
	--lad26-inset: clamp(20px, 5vw, 60px);
}

.wf-active section[data-pagebuilder="section"].lad26 {
	--lad26-body: var(--bs-p-family, sans-serif), var(--bs-body-font-family, system-ui, sans-serif);
	--lad26-label: var(--bs-p-family, sans-serif), var(--bs-body-font-family, system-ui, sans-serif);
}

/* Shared: ground, container, rows, widgets */
/* ----------------------------- */
section[data-pagebuilder="section"].lad26 {
	margin: 0;
	padding: 0; /* the platform pads every section; the container carries this page's spacing */
	background-color: var(--lad26-canvas);
	color: var(--lad26-ink);
	font-family: var(--lad26-body);
	font-size: 17px;
	line-height: 1.6;
	--bs-gutter-x: 0;
	--bs-gutter-y: 0;
	--lad26-text: var(--lad26-ink); /* what text outside a field reads as: the ink, or the deep band's light text */
}

section[data-pagebuilder="section"].lad26.lad26-band {
	background-color: var(--lad26-band);
}

section[data-pagebuilder="section"].lad26.lad26-deep {
	background-color: var(--lad26-deep);
	color: var(--lad26-on-deep);
	--lad26-text: var(--lad26-on-deep);
}

section[data-pagebuilder="section"].lad26 > .container,
section[data-pagebuilder="section"].lad26 > .container-fluid {
	display: flex;
	flex-direction: column;
	gap: var(--lad26-stack, 32px);
	max-width: 1320px;
	padding: var(--lad26-pad-top, 56px) var(--lad26-inset) var(--lad26-pad-bottom, 56px);
}

section[data-pagebuilder="section"].lad26 .row {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: var(--lad26-row-gap, 32px);
	margin: 0;
}

section[data-pagebuilder="section"].lad26 .row > * {
	width: auto;
	max-width: none;
	min-width: 0;
	flex: none;
	margin: 0;
	padding: 0;
}

section[data-pagebuilder="section"].lad26 .widget {
	margin: 0;
}

section[data-pagebuilder="section"].lad26 .widget-image-wrapper:empty {
	display: none;
}

section[data-pagebuilder="section"].lad26 .content-block {
	margin: 0;
	padding: 0;
	background: none !important;
}

section[data-pagebuilder="section"].lad26 span.content-block,
section[data-pagebuilder="section"].lad26 span.content-block > span {
	display: block;
}

section[data-pagebuilder="section"].lad26 .content-block > .d-flex {
	gap: var(--lad26-text-gap, 14px);
}

/* Type */
/* ----------------------------- */
/* the platform sets its own paragraph color, size, spacing and font; inside the page they follow the section */
section[data-pagebuilder="section"].lad26 p,
section[data-pagebuilder="section"].lad26 .p {
	margin: 0;
	color: inherit;
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
	letter-spacing: normal;
}

section[data-pagebuilder="section"].lad26 .lad26-h1,
section[data-pagebuilder="section"].lad26 .lad26-h2,
section[data-pagebuilder="section"].lad26 .lad26-h3 {
	margin: 0;
	color: inherit;
	font-family: var(--lad26-display);
	font-weight: var(--lad26-display-weight, 500);
	font-style: normal;
	letter-spacing: var(--lad26-display-tracking, 0);
	text-transform: var(--lad26-display-transform, none);
	text-wrap: balance;
}

section[data-pagebuilder="section"].lad26 .lad26-h3 {
	font-size: 20px;
	line-height: 1.15;
}

section[data-pagebuilder="section"].lad26 .lad26-eyebrow,
section[data-pagebuilder="section"].lad26 .lad26-label,
section[data-pagebuilder="section"].lad26 .lad26-fact-label {
	display: block;
	margin: 0 0 var(--lad26-text-gap, 14px);
	color: var(--lad26-muted);
	font: 600 12px/1.3 var(--lad26-label);
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

section[data-pagebuilder="section"].lad26.lad26-deep .lad26-eyebrow {
	color: inherit;
}

section[data-pagebuilder="section"].lad26 .lad26-body,
section[data-pagebuilder="section"].lad26 .lad26-small {
	margin: 0;
	max-width: 62ch;
	color: var(--lad26-muted);
}

section[data-pagebuilder="section"].lad26 .lad26-small {
	font-size: 14px;
}

section[data-pagebuilder="section"].lad26.lad26-deep .lad26-body {
	color: inherit;
	max-width: 64ch;
}

/* Links: widget links render as .btn; strip the theme's button frame, then style each kind */
/* ----------------------------- */
section[data-pagebuilder="section"].lad26 a.btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: auto;
	height: auto;
	min-width: 0;
	min-height: 0;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: none;
	box-shadow: none;
	color: inherit;
	font-family: var(--lad26-body);
	text-decoration: none;
	text-transform: none;
	letter-spacing: normal;
	white-space: normal;
	transition: background-color 200ms ease, color 200ms ease, border-color 200ms ease;
}

section[data-pagebuilder="section"].lad26 a.lad26-link,
section[data-pagebuilder="section"].lad26 a.btn.lad26-link {
	display: inline;
	color: inherit;
	font-size: inherit;
	font-weight: 600;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 4px;
}

section[data-pagebuilder="section"].lad26 a.lad26-link:hover {
	opacity: 0.8;
}

section[data-pagebuilder="section"].lad26 .link-container {
	display: flex !important; /* the link container carries Bootstrap's d-block (!important) */
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 28px;
	margin: 0;
}

section[data-pagebuilder="section"].lad26 a.btn.lad26-btn {
	min-height: 48px;
	padding: 0 28px;
	border: 1.5px solid transparent;
	border-radius: var(--lad26-radius, 2px);
	font-size: var(--lad26-btn-size, 15px);
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: var(--lad26-btn-tracking, normal);
	text-transform: var(--lad26-btn-transform, none);
}

section[data-pagebuilder="section"].lad26 a.btn.lad26-btn-solid,
section[data-pagebuilder="section"].lad26 .lad26-form button.lad26-btn-solid {
	border-color: var(--lad26-brand);
	background-color: var(--lad26-btn-bg, var(--lad26-brand));
	color: var(--lad26-btn-ink, var(--lad26-on-brand));
}

section[data-pagebuilder="section"].lad26 a.btn.lad26-btn-solid:hover,
section[data-pagebuilder="section"].lad26 .lad26-form button.lad26-btn-solid:hover {
	border-color: var(--lad26-brand-hover);
	background-color: var(--lad26-brand-hover);
	color: var(--lad26-btn-hover-ink, var(--lad26-on-brand));
}

section[data-pagebuilder="section"].lad26 a:focus-visible,
section[data-pagebuilder="section"].lad26 button:focus-visible,
section[data-pagebuilder="section"].lad26 input:focus-visible {
	outline: 2px solid var(--lad26-brand);
	outline-offset: 3px;
}

/* Photo slots: the design's flat tile and caption until the store sets a photo */
/* ----------------------------- */
section[data-pagebuilder="section"].lad26 .lad26-photo .widget-inner,
section[data-pagebuilder="section"].lad26 .lad26-tile .widget-inner,
section[data-pagebuilder="section"].lad26 .lad26-service .widget-inner {
	position: relative;
	display: block;
	width: 100%;
	overflow: hidden;
	background-color: var(--lad26-tile);
}

section[data-pagebuilder="section"].lad26 .lad26-photo .widget-image-wrapper,
section[data-pagebuilder="section"].lad26 .lad26-tile .widget-image-wrapper,
section[data-pagebuilder="section"].lad26 .lad26-service .widget-image-wrapper {
	position: absolute;
	inset: 0;
	display: block;
}

section[data-pagebuilder="section"].lad26 .lad26-photo .widget-image-wrapper img,
section[data-pagebuilder="section"].lad26 .lad26-tile .widget-image-wrapper img,
section[data-pagebuilder="section"].lad26 .lad26-service .widget-image-wrapper img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	max-width: none;
	margin: 0;
	object-fit: cover;
}

section[data-pagebuilder="section"].lad26 .widget img.placeholder {
	opacity: 0 !important;
}

section[data-pagebuilder="section"].lad26 .widget-image-wrapper:has(> img.placeholder)::after {
	content: var(--lad26-caption, "photo");
	position: absolute;
	inset: 0;
	display: flex;
	align-items: flex-end;
	justify-content: flex-start;
	padding: 14px 16px;
	color: var(--lad26-caption-ink);
	font: 400 11px/1.4 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
	letter-spacing: 0;
	text-align: left;
	text-transform: none;
	pointer-events: none;
}

@media (prefers-reduced-motion: reduce) {
	section[data-pagebuilder="section"].lad26 a.btn {
		transition: none;
	}
}

/* Desktop: the comps' 1200px layout, growing to a 1200px measure */
/* ----------------------------- */
@media (min-width: 992px) {
	section[data-pagebuilder="section"].lad26 {
		--lad26-text-gap: 20px;
		--lad26-inset: clamp(20px, 5vw, 60px);
		--lad26-pad-top: 88px;
		--lad26-pad-bottom: 88px;
	}
}

/* Hero, details strip, form and FAQ: shared by every campaign page */
/* ----------------------------- */
/* 1 Hero */
/* ----------------------------- */
section[data-pagebuilder="section"].lad26.lad26-hero > .container,
section[data-pagebuilder="section"].lad26.lad26-hero > .container-fluid {
	--lad26-pad-top: 0;
	--lad26-pad-bottom: 0;
}

section[data-pagebuilder="section"].lad26.lad26-hero .row {
	row-gap: 0;
}

section[data-pagebuilder="section"].lad26 .lad26-col-hero-copy {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding: 44px 0 24px;
}

section[data-pagebuilder="section"].lad26 .lad26-hero-copy .content-block > .d-flex {
	gap: 14px;
}

section[data-pagebuilder="section"].lad26 .lad26-h1 {
	font-size: clamp(38px, 6vw, 56px);
	line-height: 1.04;
}

section[data-pagebuilder="section"].lad26 .lad26-hero-text {
	margin: 0;
	font-size: 16px;
}

section[data-pagebuilder="section"].lad26 .lad26-when {
	display: block;
	margin-bottom: 14px;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.55;
}

section[data-pagebuilder="section"].lad26 .lad26-lede {
	display: block;
	max-width: 46ch;
	color: var(--lad26-muted);
}

section[data-pagebuilder="section"].lad26 .lad26-actions {
	margin-top: 8px;
}

section[data-pagebuilder="section"].lad26 .lad26-slot-hero .widget-inner {
	height: 230px;
}

/* 2 Details strip */
/* ----------------------------- */
section[data-pagebuilder="section"].lad26.lad26-facts > .container,
section[data-pagebuilder="section"].lad26.lad26-facts > .container-fluid {
	--lad26-pad-top: 8px;
	--lad26-pad-bottom: 24px;
	--lad26-stack: 16px;
}

section[data-pagebuilder="section"].lad26 .row:has(> .lad26-col-fact) {
	gap: 0;
}

section[data-pagebuilder="section"].lad26 .lad26-col-fact {
	padding: 12px 0;
	border-bottom: 1px solid var(--lad26-line);
}

section[data-pagebuilder="section"].lad26 .lad26-fact-text {
	display: grid !important; /* the paragraph carries Bootstrap's d-block (!important) */
	grid-template-columns: 132px minmax(0, 1fr);
	column-gap: 12px;
	align-items: baseline;
	margin: 0;
	font-size: 15px;
}

section[data-pagebuilder="section"].lad26 .lad26-fact-label {
	margin: 0;
	line-height: 27.2px;
}

section[data-pagebuilder="section"].lad26 .lad26-fact-main {
	font-weight: var(--lad26-fact-weight, 700);
}

section[data-pagebuilder="section"].lad26 .lad26-fact-note {
	display: none;
	grid-column: 2;
	color: var(--lad26-muted);
	font-size: 15px;
}

section[data-pagebuilder="section"].lad26 .lad26-summary-text {
	max-width: 90ch;
	margin: 0;
	color: var(--lad26-muted);
	font-size: 16px;
}

/* Form widget */
/* ----------------------------- */
section[data-pagebuilder="section"].lad26 .lad26-form form {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

section[data-pagebuilder="section"].lad26 .lad26-form .form-control,
section[data-pagebuilder="section"].lad26 .lad26-form .form-select {
	min-height: 48px;
	border: 1.5px solid var(--lad26-field-border, var(--lad26-muted));
	border-radius: var(--lad26-radius-input, 0);
	background-color: var(--lad26-field);
	color: var(--lad26-ink);
}

section[data-pagebuilder="section"].lad26 .lad26-form .form-check-label {
	font-size: 14px;
}

/* the platform's floating labels and phone dial code sit inside the fields, so they take the field's text color */
section[data-pagebuilder="section"].lad26 .lad26-form .form-floating > label,
section[data-pagebuilder="section"].lad26 .lad26-form .dial-code {
	color: var(--lad26-ink) !important; /* the platform's form styles pin their own selectors and colors */
}

/* the captcha text sits outside the fields, on the band, so it takes the band's text color */
section[data-pagebuilder="section"].lad26 .lad26-form .realperson-text {
	color: var(--lad26-text) !important;
}

section[data-pagebuilder="section"].lad26 .lad26-form button.lad26-btn {
	min-height: 50px;
	padding: 0 32px;
	border-width: 1.5px;
	border-style: solid;
	border-radius: var(--lad26-radius, 2px);
	font-size: 15px;
	font-weight: 700;
	letter-spacing: normal;
	text-transform: none;
}

/* 9 FAQ */
/* ----------------------------- */
section[data-pagebuilder="section"].lad26.lad26-faq > .container,
section[data-pagebuilder="section"].lad26.lad26-faq > .container-fluid {
	--lad26-stack: 28px;
}

section[data-pagebuilder="section"].lad26.lad26-faq .lad26-h2 {
	font-size: clamp(28px, 3.6vw, 38px);
}

section[data-pagebuilder="section"].lad26 .lad26-col-faq {
	max-width: 820px;
}

section[data-pagebuilder="section"].lad26 .lad26-faq-item .question {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin: 0;
	padding: 18px 0 !important;
	border: 0 !important;
	border-top: 1px solid var(--lad26-line) !important;
	background: none;
	box-shadow: none !important;
	color: var(--lad26-ink);
	text-decoration: none;
}

section[data-pagebuilder="section"].lad26 .lad26-faq-item .question > span {
	display: block;
	padding: 0 !important;
	border: 0 !important;
}

/* the platform draws its own triangle on the question's span; the design's plus and minus replace it */
section[data-pagebuilder="section"].lad26 .lad26-faq-item .question > span::after {
	display: none;
}

section[data-pagebuilder="section"].lad26 .lad26-faq-item .question::after {
	content: "\2212";
	flex: none;
	font-size: 20px;
	line-height: 1;
}

section[data-pagebuilder="section"].lad26 .lad26-faq-item .question.collapsed::after {
	content: "+";
}

section[data-pagebuilder="section"].lad26 .lad26-faq-item .question .lad26-faq-q {
	display: block !important;
	margin: 0;
	color: inherit;
	font: 700 17px/1.6 var(--lad26-body);
	letter-spacing: 0;
	text-align: left !important;
	text-transform: none;
}

section[data-pagebuilder="section"].lad26 .lad26-faq-item .question:not(.collapsed) .lad26-faq-q {
	font-weight: 700;
}

section[data-pagebuilder="section"].lad26 .lad26-faq-item .answer > div {
	padding: 0 0 18px !important;
}

section[data-pagebuilder="section"].lad26 .lad26-faq-answer {
	max-width: 62ch;
	margin: 0;
	color: var(--lad26-muted);
}

section[data-pagebuilder="section"].lad26 .lad26-col-faq .lad26-faq-item:last-child {
	border-bottom: 1px solid var(--lad26-line);
}

/* Tablet and up */
/* ----------------------------- */
@media (min-width: 768px) {
	section[data-pagebuilder="section"].lad26 .lad26-fact-note {
		display: block;
	}

	section[data-pagebuilder="section"].lad26 .lad26-slot-hero .widget-inner {
		height: 360px;
	}

	section[data-pagebuilder="section"].lad26 .row:has(> .lad26-col-fact) {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 32px;
	}

	section[data-pagebuilder="section"].lad26 .lad26-fact-text {
		display: flex !important;
		flex-direction: column;
		gap: 4px;
	}
}

/* Desktop */
/* ----------------------------- */
@media (min-width: 992px) {
	section[data-pagebuilder="section"].lad26.lad26-hero .row {
		grid-template-columns: 5fr 7fr;
		column-gap: 56px;
		min-height: 640px;
	}

	section[data-pagebuilder="section"].lad26 .lad26-col-hero-copy {
		padding: 80px 0 64px;
	}

	section[data-pagebuilder="section"].lad26 .lad26-hero-copy .content-block > .d-flex {
		gap: 20px;
	}

	section[data-pagebuilder="section"].lad26 .lad26-when {
		margin-bottom: 20px;
		font-size: 18px;
	}

	section[data-pagebuilder="section"].lad26 .lad26-lede {
		font-size: 18px;
	}

	section[data-pagebuilder="section"].lad26 .lad26-actions {
		margin-top: 8px;
	}

	section[data-pagebuilder="section"].lad26 .lad26-col-hero-photo,
	section[data-pagebuilder="section"].lad26 .lad26-col-hero-photo .widget,
	section[data-pagebuilder="section"].lad26 .lad26-slot-hero .widget-inner {
		height: 100%;
	}

	section[data-pagebuilder="section"].lad26.lad26-facts > .container,
	section[data-pagebuilder="section"].lad26.lad26-facts > .container-fluid {
		--lad26-pad-top: 0;
		--lad26-pad-bottom: 40px;
	}

	section[data-pagebuilder="section"].lad26 .row:has(> .lad26-col-fact) {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		column-gap: 0;
		border-top: 1px solid var(--lad26-line);
		border-bottom: 1px solid var(--lad26-line);
	}

	section[data-pagebuilder="section"].lad26 .lad26-col-fact {
		padding: 20px;
		border-bottom: 0;
		border-left: 1px solid var(--lad26-line);
	}

	section[data-pagebuilder="section"].lad26 .lad26-col-fact:first-child {
		padding-left: 0;
		border-left: 0;
	}

	section[data-pagebuilder="section"].lad26 .lad26-col-fact:last-child {
		padding-right: 0;
	}

	section[data-pagebuilder="section"].lad26 .lad26-fact-text {
		font-size: 17px;
	}
}

/* Headings */
/* ----------------------------- */
section[data-pagebuilder="section"].lad26 .lad26-h2 {
	font-size: clamp(28px, 3.7vw, 44px);
	line-height: 1.05;
}

/* the handwritten note is a real, decorative span in the heading, so the page editor can change or remove it */
section[data-pagebuilder="section"].lad26 .lad26-note {
	display: block;
	margin: 0 0 var(--lad26-note-gap, 16px) 2px;
	color: var(--lad26-muted);
	font: var(--lad26-note-weight, 400) var(--lad26-note-size, 44px)/1 var(--lad26-note);
	letter-spacing: 0;
	text-transform: none;
	transform: rotate(var(--lad26-note-rotate, -3deg));
	transform-origin: left bottom;
}

/* 3 Play dress up */
/* ----------------------------- */
section[data-pagebuilder="section"].lad26 .lad26-col-dress-copy,
section[data-pagebuilder="section"].lad26 .lad26-col-wall-copy,
section[data-pagebuilder="section"].lad26 .lad26-col-partner-copy {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

section[data-pagebuilder="section"].lad26 .lad26-slot-dress .widget-inner {
	height: 320px;
	border-radius: var(--lad26-dress-radius, 0);
}

section[data-pagebuilder="section"].lad26 .lad26-dress-head .lad26-h2 {
	font-size: clamp(28px, 3.7vw, 44px);
}

/* 4 Photo wall */
/* ----------------------------- */
section[data-pagebuilder="section"].lad26 .lad26-col-wall-copy {
	gap: 18px;
}

section[data-pagebuilder="section"].lad26 .lad26-wall-head .content-block > .d-flex {
	gap: 18px;
}

section[data-pagebuilder="section"].lad26 .lad26-wall-head .lad26-body {
	font-size: 16px;
}

section[data-pagebuilder="section"].lad26 .lad26-tags-text {
	display: flex !important;
	flex-direction: column;
	gap: 18px;
	margin: 0;
}

section[data-pagebuilder="section"].lad26 .lad26-hashtag {
	font: var(--lad26-display-weight, 400) 36px/1 var(--lad26-display);
	letter-spacing: var(--lad26-display-tracking, 0);
	text-transform: var(--lad26-display-transform, none);
}

section[data-pagebuilder="section"].lad26 .lad26-handle {
	font-size: 20px;
}

section[data-pagebuilder="section"].lad26 .lad26-col-collage {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	grid-template-rows: 220px 150px;
	gap: 16px;
}

section[data-pagebuilder="section"].lad26 .lad26-col-collage .widget {
	height: 100%;
}

section[data-pagebuilder="section"].lad26 .lad26-col-collage .widget-inner {
	height: 100%;
}

section[data-pagebuilder="section"].lad26 .lad26-slot-collage-1 {
	grid-column: 1 / -1;
}

/* 5 Pieces to try on */
/* ----------------------------- */
section[data-pagebuilder="section"].lad26.lad26-picks .lad26-h2 {
	font-size: clamp(26px, 3.4vw, 40px);
}

section[data-pagebuilder="section"].lad26 .row:has(> .lad26-col-tile) {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px 16px;
}

section[data-pagebuilder="section"].lad26 .lad26-tile {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

section[data-pagebuilder="section"].lad26 .lad26-tile .widget-inner {
	aspect-ratio: 1;
}

section[data-pagebuilder="section"].lad26 .lad26-tile .content-block > .d-flex {
	gap: 6px;
}

section[data-pagebuilder="section"].lad26 .lad26-tile .lad26-h3 {
	font-size: 22px;
}

section[data-pagebuilder="section"].lad26 .lad26-offer-text {
	margin: 0;
	padding-top: 18px;
	border-top: 1px solid var(--lad26-line);
}

/* 6 Partner */
/* ----------------------------- */
section[data-pagebuilder="section"].lad26 .lad26-slot-partner .widget-inner {
	height: 300px;
}

section[data-pagebuilder="section"].lad26 .lad26-partner-head .lad26-h2 {
	font-size: clamp(28px, 3.5vw, 42px);
}

section[data-pagebuilder="section"].lad26 .lad26-partner-more .content-block > .d-flex {
	gap: 20px;
}

/* 7 RSVP */
/* ----------------------------- */
section[data-pagebuilder="section"].lad26.lad26-rsvp .lad26-h2 {
	font-size: clamp(30px, 4.4vw, 52px);
}

section[data-pagebuilder="section"].lad26 .lad26-rsvp-head .content-block > .d-flex {
	gap: 16px;
}

section[data-pagebuilder="section"].lad26 .lad26-rsvp-head .lad26-body {
	font-size: 16px;
}

/* Tablet and up */
/* ----------------------------- */
@media (min-width: 768px) {
	section[data-pagebuilder="section"].lad26 .lad26-slot-dress .widget-inner {
		height: 420px;
	}

	section[data-pagebuilder="section"].lad26 .lad26-slot-partner .widget-inner {
		height: 380px;
	}

	section[data-pagebuilder="section"].lad26 .lad26-col-collage {
		grid-template-columns: 7fr 5fr;
		grid-template-rows: 252px 252px;
	}

	section[data-pagebuilder="section"].lad26 .lad26-slot-collage-1 {
		grid-column: auto;
		grid-row: 1 / 3;
	}

	section[data-pagebuilder="section"].lad26 .row:has(> .lad26-col-tile) {
		gap: 24px;
	}
}

/* Desktop: the comp's 1200px layout, growing to a 1200px measure */
/* ----------------------------- */
@media (min-width: 992px) {
	section[data-pagebuilder="section"].lad26.lad26-dress .row {
		grid-template-columns: 7fr 5fr;
		column-gap: 56px;
		align-items: center;
	}

	section[data-pagebuilder="section"].lad26 .lad26-slot-dress .widget-inner {
		height: 560px;
	}

	section[data-pagebuilder="section"].lad26.lad26-wall > .container,
	section[data-pagebuilder="section"].lad26.lad26-wall > .container-fluid {
		--lad26-pad-top: 96px;
		--lad26-pad-bottom: 96px;
	}

	section[data-pagebuilder="section"].lad26.lad26-wall .row {
		grid-template-columns: 4fr 8fr;
		column-gap: 56px;
		align-items: center;
	}

	section[data-pagebuilder="section"].lad26 .lad26-hashtag {
		font-size: 44px;
	}

	section[data-pagebuilder="section"].lad26 .row:has(> .lad26-col-tile) {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	section[data-pagebuilder="section"].lad26 .lad26-tile .widget-inner {
		height: 250px;
		aspect-ratio: auto;
	}

	section[data-pagebuilder="section"].lad26.lad26-partner .row {
		grid-template-columns: 5fr 7fr;
		column-gap: 56px;
		align-items: center;
	}

	section[data-pagebuilder="section"].lad26 .lad26-slot-partner .widget-inner {
		height: 460px;
	}

	section[data-pagebuilder="section"].lad26.lad26-rsvp > .container,
	section[data-pagebuilder="section"].lad26.lad26-rsvp > .container-fluid {
		--lad26-pad-top: 96px;
		--lad26-pad-bottom: 96px;
	}

	section[data-pagebuilder="section"].lad26.lad26-rsvp .row {
		grid-template-columns: 4fr 8fr;
		column-gap: 56px;
		align-items: start;
	}
}

/* Photo captions: the shot each slot wants */
/* ----------------------------- */
section[data-pagebuilder="section"].lad26 .lad26-slot-hero { --lad26-caption: "photo · friends at the counter trying on stacks, laughing, bright and warm (client event photo)"; }
section[data-pagebuilder="section"].lad26 .lad26-slot-dress { --lad26-caption: "photo · close crop, hand in a statement diamond ring beside a glass of bubbly"; }
section[data-pagebuilder="section"].lad26 .lad26-slot-collage-1 { --lad26-caption: "photo · past event, photo wall group shot"; }
section[data-pagebuilder="section"].lad26 .lad26-slot-collage-2 { --lad26-caption: "photo · props close-up"; }
section[data-pagebuilder="section"].lad26 .lad26-slot-collage-3 { --lad26-caption: "photo · guest selfie with a statement ring"; }
section[data-pagebuilder="section"].lad26 .lad26-slot-pick-1 { --lad26-caption: "photo · stackable rings on a hand"; }
section[data-pagebuilder="section"].lad26 .lad26-slot-pick-2 { --lad26-caption: "photo · diamond studs, macro"; }
section[data-pagebuilder="section"].lad26 .lad26-slot-pick-3 { --lad26-caption: "photo · statement earrings on a model"; }
section[data-pagebuilder="section"].lad26 .lad26-slot-pick-4 { --lad26-caption: "photo · fashion pieces on linen"; }
section[data-pagebuilder="section"].lad26 .lad26-slot-partner { --lad26-caption: "photo · [PARTNER] owner portrait, logo in frame"; }
