/* Lagar adapter: never applies to the homepage, native products or checkout. */
body.chmp-theme-page {
	--chmp-page-ink: var(--e-global-color-vamtam_accent_2, #545d5c);
	--chmp-page-gold: #c89b3c;
	--chmp-page-paper: var(--e-global-color-vamtam_accent_8, #f9f8f4);
	--chmp-page-line: var(--e-global-color-vamtam_accent_7, #deddd9);
	--chmp-page-serif: var(--e-global-typography-vamtam_primary_font-font-family, 'Cormorant Infant'), serif;
	--chmp-page-label: var(--e-global-typography-vamtam_h6-font-family, 'Alata'), sans-serif;
}

/* Keep the existing white wordmark/menu legible from the very first frame.
   Only the actual section is made visible, never Elementor's sticky spacer. */
body.chmp-theme-page .elementor-location-header > .elementor-section:not(.elementor-sticky__spacer) {
	visibility: visible !important;
	opacity: 1 !important;
	animation: none !important;
}
/* An explicit transparent-header choice uses that template's own backgrounds. */
body.chmp-theme-page:not(.chmp-page-header-template-316) .elementor-location-header > .elementor-section:not(.elementor-sticky__spacer) {
	background-color: var(--chmp-page-ink);
}
body.chmp-theme-page .elementor-location-header { position: relative; z-index: 11000; }
body.chmp-theme-page .elementor-location-header .elementor-nav-menu--main > .elementor-nav-menu { flex-wrap: nowrap; }
body.chmp-theme-page .elementor-location-header nav.elementor-nav-menu--dropdown { max-height: calc(100dvh - 90px); overflow-y: auto; }
body.chmp-theme-page .elementor-location-header .elementor-item:focus-visible,
body.chmp-theme-page .elementor-location-header .elementor-menu-toggle:focus-visible { outline: 2px solid var(--chmp-page-gold); outline-offset: 3px; }
body.chmp-own-page-title #sub-header { display: none; }
body.chmp-theme-page #main .page-wrapper { padding-top: clamp(36px, 5vw, 76px); padding-bottom: clamp(48px, 6vw, 88px); }
body.chmp-theme-page #sub-header .meta-header { padding-top: 44px; padding-bottom: 36px; }
body.chmp-theme-page #sub-header h1 { font-size: clamp(44px, 5vw, 72px); }

body.chmp-theme-page :is(.chmp-page-intro, .chmp-business-page__intro, .chmp-special-club-page__intro, .chmp-editorial-page, .chmp-legacy-collection__intro) {
	max-width: 900px;
	margin: 0 0 clamp(32px, 4vw, 56px);
}
body.chmp-theme-page :is(.chmp-page-intro, .chmp-business-page__intro, .chmp-special-club-page__intro, .chmp-editorial-page, .chmp-legacy-collection__intro) h1 {
	font-family: var(--chmp-page-serif);
	font-size: clamp(44px, 5vw, 72px);
	font-weight: 300;
	line-height: 1.06;
	letter-spacing: -.015em;
	margin: 12px 0 22px;
	text-wrap: balance;
}
body.chmp-theme-page :is(.chmp-page-intro, .chmp-business-page__intro, .chmp-special-club-page__intro, .chmp-editorial-page, .chmp-legacy-collection__intro) > p:not([class$="eyebrow"]) {
	font-size: 22px;
	line-height: 1.45;
	max-width: 740px;
}
body.chmp-theme-page :is(.chmp-page-eyebrow, .chmp-business-page__eyebrow, .chmp-editorial-page__eyebrow, .chmp-special-club-page__eyebrow, .chmp-legacy-collection__eyebrow) {
	font-family: var(--chmp-page-label);
	font-size: 11px;
	font-weight: 400;
	line-height: 1.7;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: #171A21;
	margin: 0 0 12px;
}

body.chmp-theme-page :is(.chmp-b2b,.chmp-events,.chmp-special-club,.chmp-catalogue,.chmp-ai-search,.chmp-producer-profile) {
	--chmp-ink: var(--chmp-page-ink);
	--chmp-muted: var(--chmp-page-ink);
	--chmp-gold: var(--chmp-page-gold);
	--chmp-cream: var(--chmp-page-paper);
	--chmp-paper: var(--chmp-page-paper);
	--chmp-line: var(--chmp-page-line);
}
body.chmp-theme-page :is(.chmp-event-card__title,.chmp-special-club__header h1,.chmp-special-club__body h2,.chmp-producer-profile h2,.chmp-ai-search label) { font-family: var(--chmp-page-serif); font-weight: 400; }
body.chmp-theme-page .chmp-ai-search { background: var(--chmp-page-ink); border-radius: 0; padding: clamp(24px, 3vw, 40px); }
body.chmp-theme-collection .chmp-ai-search { background: #33513e; }
body.chmp-theme-page .chmp-ai-search label { color: white; font-size: clamp(28px, 3vw, 40px); }
body.chmp-theme-page .chmp-ai-search input[type="search"] { background: var(--chmp-page-paper); color: #171A21; font-family: var(--chmp-page-serif); font-size: 20px; }
body.chmp-theme-page .chmp-ai-search input[type="search"]::placeholder { color: #171A21; opacity: 1; }
body.chmp-theme-page .chmp-ai-search :is(button,.chmp-ai-search__hint,.chmp-ai-search__status) { color: white; }
body.chmp-theme-page :is(.chmp-ai-search button,.chmp-map-button,.chmp-filter-toggle,.chmp-filter-submit) { font-family: var(--chmp-page-label); font-size: 11px; font-weight: 400; letter-spacing: .1em; text-transform: uppercase; min-height: 48px; }
body.chmp-theme-page .chmp-map-button { background: transparent; color: #171A21; padding: 14px 22px; }
body.chmp-theme-page .chmp-map-button:hover { background: var(--chmp-page-ink); border-color: var(--chmp-page-ink); color: white; }
body.chmp-theme-page .chmp-filter-dropdown__summary,
body.chmp-theme-page .chmp-filter-group > label { font-family: var(--chmp-page-label); font-size: 10px; font-weight: 400; letter-spacing: .06em; }
body.chmp-theme-page .chmp-collection-intro { max-width: 1240px; margin: 0 auto 44px; padding: 0 10px; }
body.chmp-theme-page .chmp-card {
	background: #fff;
	--chmp-ink: var(--e-global-color-vamtam_accent_3, #242e35);
}
body.chmp-theme-page .chmp-card__image img { display: block; width: 100%; height: 100%; max-height: 100%; object-fit: contain; }
body.chmp-theme-page .chmp-card__title { font-family: var(--chmp-page-serif); }
body.chmp-theme-page .chmp-event-card__title { font-size: clamp(26px, 2.3vw, 32px); line-height: 1.15; margin: 12px 0; }
body.chmp-theme-page .chmp-event-card__image:not(:has(img)) { aspect-ratio: auto; min-height: 120px; border-bottom: 1px solid var(--chmp-page-line); }
body.chmp-theme-page .chmp-event-card__date { font-family: var(--chmp-page-label); font-size: 10px; font-weight: 400; }
body.chmp-theme-page .chmp-card__producer { font-family: var(--chmp-page-label); font-weight: 400; font-size: .75rem; letter-spacing: .1em; color: #c89b3c; }
body.chmp-theme-page .chmp-empty-state { background: transparent; border: 0; border-top: 1px solid var(--chmp-page-line); border-bottom: 1px solid var(--chmp-page-line); padding: 40px 0; text-align: left; }
body.chmp-theme-page .chmp-empty-state h2 { font-family: var(--chmp-page-serif); font-weight: 400; font-size: clamp(28px, 3vw, 40px); margin: 0 0 12px; }
body.chmp-theme-page .chmp-page-followup { margin-top: 32px; }
body.chmp-theme-page .chmp-story-list { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 32px; }
body.chmp-theme-page .chmp-story-list h2 { font-size: 32px; }
body.chmp-theme-map .chmp-map { --chmp-map-ink: var(--chmp-page-ink); --chmp-map-gold: var(--chmp-page-gold); --chmp-map-cream: var(--chmp-page-paper); margin-top: 0; }
body.chmp-theme-map .chmp-map__header h2 { display: none; }

/* Hospitality enquiry: open editorial column + restrained theme-like form. */
body.chmp-theme-page .chmp-b2b {
	display: grid;
	grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr);
	gap: clamp(32px, 5vw, 80px);
	border: 0;
	border-top: 1px solid var(--chmp-page-line);
	background: transparent;
	padding: 40px 0 0;
}
body.chmp-theme-page .chmp-b2b__intro h2,
body.chmp-theme-page .chmp-b2b__enquiry h2 { font-family: var(--chmp-page-serif); font-size: clamp(30px,3vw,40px); line-height: 1.12; font-weight: 400; margin: 0 0 20px; }
body.chmp-theme-page .chmp-b2b__offers { grid-template-columns: repeat(2,minmax(0,1fr)); background: transparent; gap: 24px; margin: 28px 0 0; }
body.chmp-theme-page .chmp-b2b__offer { background: transparent; border-top: 1px solid var(--chmp-page-line); padding: 16px 0 0; }
body.chmp-theme-page .chmp-b2b__offer h3 { font-family: var(--chmp-page-serif); font-size: 24px; font-weight: 500; margin: 0 0 8px; }
body.chmp-theme-page .chmp-b2b__offer p { color: #171A21; font-size: 18px; line-height: 1.4; }
body.chmp-theme-page .chmp-b2b__enquiry { min-width: 0; padding-left: 32px; border-left: 1px solid var(--chmp-page-line); }
body.chmp-theme-page .chmp-b2b:not(:has(.chmp-b2b__services)) { grid-template-columns: 1fr; }
body.chmp-theme-page .chmp-b2b:not(:has(.chmp-b2b__services)) .chmp-b2b__enquiry { border-left: 0; padding-left: 0; }
body.chmp-theme-page #chmp-business-enquiry { scroll-margin-top: 110px; }
body.chmp-theme-page .chmp-b2b__form-help { font-size: 17px; margin: -8px 0 24px; }
body.chmp-theme-page .chmp-form-grid { gap: 24px 20px; }
body.chmp-theme-page .chmp-b2b label { color: #171A21; font-family: var(--chmp-page-label); font-size: 11px; font-weight: 400; letter-spacing: .07em; line-height: 1.5; margin: 0 0 9px; }
body.chmp-theme-page .chmp-b2b label small { font-family: var(--chmp-page-serif); font-size: 15px; letter-spacing: 0; text-transform: none; }
body.chmp-theme-page .chmp-b2b input:not([type="checkbox"]):not([type="hidden"]),
body.chmp-theme-page .chmp-b2b textarea { border: 1px solid var(--chmp-page-line); background: transparent; color: #171A21; font-family: var(--chmp-page-serif); font-size: 20px; line-height: 1.4; padding: 12px 16px; border-radius: 0; min-height: 52px; }
body.chmp-theme-page .chmp-b2b textarea { min-height: 100px; resize: vertical; }
body.chmp-theme-page .chmp-b2b input:focus-visible,
body.chmp-theme-page .chmp-b2b textarea:focus-visible { outline: 2px solid var(--chmp-page-ink); outline-offset: 2px; }
body.chmp-theme-page .chmp-b2b__consent { margin: 24px 0; }
body.chmp-theme-page .chmp-b2b__consent label { display: flex; align-items: flex-start; gap: 12px; font-family: var(--chmp-page-serif); font-size: 18px; line-height: 1.4; text-transform: none; letter-spacing: 0; }
body.chmp-theme-page .chmp-b2b__consent input { flex: 0 0 18px; width: 18px; height: 18px; margin: 4px 0 0; padding: 0; accent-color: var(--chmp-page-ink); }
body.chmp-theme-page :is(.chmp-b2b__submit,.chmp-page-followup .button,.chmp-business-page__intro .button) {
	font-family: var(--chmp-page-label); font-size: 11px; font-weight: 400; letter-spacing: .12em; text-transform: uppercase;
	display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 16px 28px;
	border: 1px solid var(--chmp-page-ink); border-radius: 0; color: #171A21; background: transparent; text-decoration: none; line-height: 1.4;
}
body.chmp-theme-page :is(.chmp-b2b__submit,.chmp-page-followup .button,.chmp-business-page__intro .button):hover { color: white; background: var(--chmp-page-ink); }
body.chmp-theme-page :is(.chmp-b2b__submit,.chmp-page-followup .button,.chmp-business-page__intro .button):focus-visible { outline: 2px solid var(--chmp-page-gold); outline-offset: 4px; }
body.chmp-theme-page .chmp-business-page__jump { display: none; }

@media (max-width: 1100px) and (min-width: 1025px) {
	body.chmp-theme-page .elementor-location-header .elementor-nav-menu--main .elementor-item { padding-left: 8px; padding-right: 8px; }
}
@media (max-width: 900px) {
	body.chmp-theme-page .chmp-b2b { grid-template-columns: 1fr; gap: 36px; }
	body.chmp-theme-page .chmp-b2b__enquiry { border-left: 0; border-top: 1px solid var(--chmp-page-line); padding: 32px 0 0; }
	body.chmp-theme-page .chmp-business-page__jump { display: block; margin-top: 24px; }
	body.chmp-theme-page .chmp-story-list { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
	body.chmp-theme-page #main .page-wrapper { padding-top: 32px; }
	body.chmp-theme-page :is(.chmp-page-intro,.chmp-business-page__intro,.chmp-editorial-page) > p:not([class$="eyebrow"]) { font-size: 20px; }
	body.chmp-theme-page .chmp-form-grid { grid-template-columns: 1fr; gap: 20px; }
	body.chmp-theme-page .chmp-b2b__offers { gap: 20px 18px; }
	body.chmp-theme-page .chmp-b2b__offer h3 { font-size: 22px; }
	body.chmp-theme-page .chmp-b2b__submit { width: 100%; }
	/* Keep the three shared footer blocks one-per-row at phone widths in every
	   language; translated text lengths must not change their visual order. */
	body.chmp-theme-page .elementor-location-footer .elementor-inner-section:first-of-type .elementor-widget-text-editor {
		flex: 0 0 100%;
		width: 100%;
	}
}
