/*****************************************************************
Accessibility (One Click Accessibility / Pojo) fixes
- font resize rules are gated behind body[class*="pojo-a11y-resize-font-"]
- contrast rules are gated behind the plugin's contrast body classes
- nothing here applies when no accessibility option is selected
*****************************************************************/


/* ================================================================
   Section 1: scale curves
   ================================================================ */
:root {
	--a11y-scale: 1;
	--a11y-scale-form: 1;
	--a11y-scale-menu: 1;
}
body.pojo-a11y-resize-font-130 { --a11y-scale: 1.15; --a11y-scale-form: 1.30; --a11y-scale-menu: 1.12; }
body.pojo-a11y-resize-font-140 { --a11y-scale: 1.22; --a11y-scale-form: 1.40; --a11y-scale-menu: 1.18; }
body.pojo-a11y-resize-font-150 { --a11y-scale: 1.28; --a11y-scale-form: 1.48; --a11y-scale-menu: 1.24; }
body.pojo-a11y-resize-font-160 { --a11y-scale: 1.35; --a11y-scale-form: 1.55; --a11y-scale-menu: 1.30; }
body.pojo-a11y-resize-font-170 { --a11y-scale: 1.42; --a11y-scale-form: 1.62; --a11y-scale-menu: 1.35; }
body.pojo-a11y-resize-font-180 { --a11y-scale: 1.48; --a11y-scale-form: 1.68; --a11y-scale-menu: 1.40; }
body.pojo-a11y-resize-font-190 { --a11y-scale: 1.54; --a11y-scale-form: 1.72; --a11y-scale-menu: 1.45; }
body.pojo-a11y-resize-font-200 { --a11y-scale: 1.60; --a11y-scale-form: 1.75; --a11y-scale-menu: 1.50; }


/* ================================================================
   Section 2: base pin on <body> (theme body = 18px)
   ================================================================ */
html body[class*="pojo-a11y-resize-font-"] {
	font-size: calc(18px * var(--a11y-scale)) !important;
}


/* ================================================================
   Section 3: stop % compounding inside the content roots
   (.elementor pages/popups, .description-section = page.php/single.php/404/search)
   ================================================================ */
html body[class*="pojo-a11y-resize-font-"] :is(.elementor, .description-section) :is(p, li, span, label, blockquote, legend, code, pre, dd, dt) {
	font-size: inherit !important;
}

/* headings without an Elementor size: bootstrap sizes x scale */
html body[class*="pojo-a11y-resize-font-"] :is(.elementor, .description-section) h1 { font-size: calc((1.375rem + 1.5vw) * var(--a11y-scale)) !important; }
html body[class*="pojo-a11y-resize-font-"] :is(.elementor, .description-section) h2 { font-size: calc((1.325rem + 0.9vw) * var(--a11y-scale)) !important; }
html body[class*="pojo-a11y-resize-font-"] :is(.elementor, .description-section) h3 { font-size: calc((1.3rem + 0.6vw) * var(--a11y-scale)) !important; }
html body[class*="pojo-a11y-resize-font-"] :is(.elementor, .description-section) h4 { font-size: calc((1.275rem + 0.3vw) * var(--a11y-scale)) !important; }
html body[class*="pojo-a11y-resize-font-"] :is(.elementor, .description-section) h5 { font-size: calc(1.25rem * var(--a11y-scale)) !important; }
html body[class*="pojo-a11y-resize-font-"] :is(.elementor, .description-section) h6 { font-size: calc(1rem * var(--a11y-scale)) !important; }
@media (min-width: 1200px) {
	html body[class*="pojo-a11y-resize-font-"] :is(.elementor, .description-section) h1 { font-size: calc(2.5rem * var(--a11y-scale)) !important; }
	html body[class*="pojo-a11y-resize-font-"] :is(.elementor, .description-section) h2 { font-size: calc(2rem * var(--a11y-scale)) !important; }
	html body[class*="pojo-a11y-resize-font-"] :is(.elementor, .description-section) h3 { font-size: calc(1.75rem * var(--a11y-scale)) !important; }
	html body[class*="pojo-a11y-resize-font-"] :is(.elementor, .description-section) h4 { font-size: calc(1.5rem * var(--a11y-scale)) !important; }
}


/* ================================================================
   Section 4: forms + validation / response messages (--a11y-scale-form)
   ================================================================ */

/* ---------- all pages ---------- */
html body[class*="pojo-a11y-resize-font-"] :is(.elementor, .description-section) .wpcf7-checkbox input[type="checkbox"] {
	font-size: inherit !important;
}
html body[class*="pojo-a11y-resize-font-"] :is(.elementor, .description-section) .wpcf7 .wpcf7-not-valid-tip {
	line-height: 1.3 !important;
	white-space: nowrap !important;
}
html body[class*="pojo-a11y-resize-font-"] :is(.elementor, .description-section) .wpcf7 .wpcf7-response-output {
	line-height: 1.4 !important;
}

/* ---------- Home (page 1013) ---------- */
html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .form-field input {
	font-size: calc(max(14px, 0.9vw) * var(--a11y-scale-form)) !important;
	line-height: 1.2 !important;
	height: calc(3vw * var(--a11y-scale-form)) !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .submit-btn input {
	font-size: calc(max(14px, 1.4vw) * var(--a11y-scale-form)) !important;
	line-height: 1.2 !important;
	height: calc(3vw * var(--a11y-scale-form)) !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .wpcf7 .wpcf7-not-valid-tip {
	font-size: calc(max(14px, 0.9vw) * var(--a11y-scale-form)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .wpcf7 .wpcf7-response-output {
	font-size: calc(max(14px, 0.9vw) * var(--a11y-scale-form)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .wpcf7-checkbox .wpcf7-list-item-label {
	font-size: calc(max(12px, 0.7vw) * var(--a11y-scale-form)) !important;
	line-height: 1.3 !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .wpcf7 p.simple-text {
	font-size: calc(max(12px, 0.7vw) * var(--a11y-scale-form)) !important;
	line-height: 1.2 !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .cf7-success-message .success-title {
	font-size: calc(1.5vw * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .small-fonts {
	font-size: calc(1.5vw * var(--a11y-scale)) !important;
}
/* form heading: room between lines once it wraps */
html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-7feefa3 .elementor-heading-title {
	line-height: 1.2 !important;
	text-wrap: balance;
}
@media (max-width: 991px) {
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .privacy-wrapper .privacy-content h2 { font-size: calc(1.4vw * var(--a11y-scale)) !important; line-height: 1.3 !important; }
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .privacy-wrapper .privacy-content h3 { font-size: calc(1.1vw * var(--a11y-scale)) !important; line-height: 1.3 !important; }
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .privacy-wrapper .privacy-content :is(p, li, a, div) { font-size: calc(0.8vw * var(--a11y-scale)) !important; line-height: 1.5 !important; }
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 :is(.pv-links > span, .pv-link) { font-size: calc(0.8vw * var(--a11y-scale)) !important; }
}
@media (min-width: 768px) and (max-width: 991px) {
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .form-field input,
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .submit-btn input {
		height: calc(28px * var(--a11y-scale-form)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .wpcf7-checkbox .wpcf7-list-item-label {
		font-size: calc(max(12px, 0.7vw) * var(--a11y-scale-form)) !important;
		line-height: 1.3 !important;
	}
}
@media (max-width: 767px) {
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .form-field input {
		font-size: calc(16px * var(--a11y-scale-form)) !important;
		height: calc(36px * var(--a11y-scale-form)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .submit-btn input {
		font-size: calc(22px * var(--a11y-scale-form)) !important;
		height: calc(36px * var(--a11y-scale-form)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .wpcf7 .wpcf7-not-valid-tip {
		font-size: calc(14px * var(--a11y-scale-form)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .wpcf7-checkbox .wpcf7-list-item-label {
		font-size: calc(12px * var(--a11y-scale-form)) !important;
		line-height: 1.3 !important;
		height: auto !important;
		min-height: 36px;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .wpcf7 p.simple-text {
		font-size: calc(12px * var(--a11y-scale-form)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .cf7-success-message .success-title {
		font-size: calc(20px * var(--a11y-scale)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .privacy-wrapper .privacy-content h2 { font-size: calc(18px * var(--a11y-scale)) !important; }
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .privacy-wrapper .privacy-content h3 { font-size: calc(16px * var(--a11y-scale)) !important; }
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .privacy-wrapper .privacy-content :is(p, li, a) { font-size: calc(12px * var(--a11y-scale)) !important; }
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 :is(.pv-links > span, .pv-link) { font-size: calc(14px * var(--a11y-scale)) !important; }
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .small-fonts { font-size: calc(18px * var(--a11y-scale)) !important; }
}

/* ---------- new-lp (page 722) ---------- */
html body[class*="pojo-a11y-resize-font-"] .elementor-722 .field-col input {
	font-size: calc(max(14px, 1vw) * var(--a11y-scale-form)) !important;
	line-height: 1.2 !important;
	height: calc(3vw * var(--a11y-scale-form)) !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-722 .submit-btn input {
	font-size: calc(max(14px, 1.4vw) * var(--a11y-scale-form)) !important;
	line-height: 1.2 !important;
	height: calc(3vw * var(--a11y-scale-form)) !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-722 .wpcf7 .wpcf7-not-valid-tip {
	font-size: calc(max(14px, 0.7vw) * var(--a11y-scale-form)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-722 .wpcf7 .wpcf7-response-output {
	font-size: calc(max(14px, 0.9vw) * var(--a11y-scale-form)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-722 .wpcf7-checkbox .wpcf7-list-item-label {
	font-size: calc(max(12px, 0.7vw) * var(--a11y-scale-form)) !important;
	line-height: 1.3 !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-722 .contact-form-heading p {
	font-size: calc(1.5vw * var(--a11y-scale)) !important;
	line-height: 1.3 !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-722 .legal-text :is(p, a) {
	font-size: calc(max(12px, 0.7vw) * var(--a11y-scale-form)) !important;
	line-height: 1.3 !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-722 .privacy-wrapper .privacy-content h2 { font-size: calc(1.4vw * var(--a11y-scale)) !important; line-height: 1.3 !important; }
html body[class*="pojo-a11y-resize-font-"] .elementor-722 .privacy-wrapper .privacy-content h3 { font-size: calc(1.1vw * var(--a11y-scale)) !important; line-height: 1.3 !important; }
html body[class*="pojo-a11y-resize-font-"] .elementor-722 .privacy-wrapper .privacy-content :is(p, li, a, div) { font-size: calc(0.8vw * var(--a11y-scale)) !important; line-height: 1.5 !important; }
html body[class*="pojo-a11y-resize-font-"] .elementor-722 :is(.pv-links > span, .pv-link) { font-size: calc(0.8vw * var(--a11y-scale)) !important; }
html body[class*="pojo-a11y-resize-font-"] .elementor-722 .small-fonts { font-size: calc(1.5vw * var(--a11y-scale)) !important; }
@media (max-width: 991px) {
	html body[class*="pojo-a11y-resize-font-"] .elementor-722 :is(.legal-text, .legal-text a) {
		font-size: calc(13px * var(--a11y-scale-form)) !important;
		line-height: 1.6 !important;
	}
}
@media (min-width: 768px) and (max-width: 1250px) {
	html body[class*="pojo-a11y-resize-font-"] .elementor-722 .field-col input,
	html body[class*="pojo-a11y-resize-font-"] .elementor-722 .submit-btn input {
		height: calc(28px * var(--a11y-scale-form)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-722 .wpcf7 .wpcf7-not-valid-tip {
		font-size: calc(14px * var(--a11y-scale-form)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-722 :is(.legal-text, .legal-text a, .legal-text p),
	html body[class*="pojo-a11y-resize-font-"] .elementor-722 .wpcf7-checkbox .wpcf7-list-item-label {
		font-size: calc(12px * var(--a11y-scale-form)) !important;
		line-height: 1.3 !important;
	}
}
@media (max-width: 600px) {
	html body[class*="pojo-a11y-resize-font-"] .elementor-722 .field-col input {
		font-size: calc(16px * var(--a11y-scale-form)) !important;
		height: calc(52px * var(--a11y-scale-form)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-722 .submit-btn input {
		font-size: calc(24px * var(--a11y-scale-form)) !important;
		height: calc(52px * var(--a11y-scale-form)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-722 .wpcf7 .wpcf7-not-valid-tip {
		font-size: calc(14px * var(--a11y-scale-form)) !important;
		margin-bottom: 0 !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-722 .wpcf7 .wpcf7-response-output {
		font-size: calc(14px * var(--a11y-scale-form)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-722 .wpcf7-checkbox .wpcf7-list-item-label {
		font-size: calc(13px * var(--a11y-scale-form)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-722 .contact-form-heading p { font-size: calc(22px * var(--a11y-scale)) !important; }
	html body[class*="pojo-a11y-resize-font-"] .elementor-722 :is(.legal-text, .legal-text a) { font-size: calc(14px * var(--a11y-scale-form)) !important; line-height: 1.6 !important; }
	html body[class*="pojo-a11y-resize-font-"] .elementor-722 .legal-text p { font-size: calc(13px * var(--a11y-scale-form)) !important; }
	html body[class*="pojo-a11y-resize-font-"] .elementor-722 .privacy-wrapper .privacy-content h2 { font-size: calc(18px * var(--a11y-scale)) !important; }
	html body[class*="pojo-a11y-resize-font-"] .elementor-722 .privacy-wrapper .privacy-content h3 { font-size: calc(16px * var(--a11y-scale)) !important; }
	html body[class*="pojo-a11y-resize-font-"] .elementor-722 .privacy-wrapper .privacy-content :is(p, li, a) { font-size: calc(12px * var(--a11y-scale)) !important; }
	html body[class*="pojo-a11y-resize-font-"] .elementor-722 :is(.pv-links > span, .pv-link) { font-size: calc(14px * var(--a11y-scale)) !important; }
	html body[class*="pojo-a11y-resize-font-"] .elementor-722 .small-fonts { font-size: calc(18px * var(--a11y-scale)) !important; }
}

/* ---------- sample-page (page 2) ---------- */
html body[class*="pojo-a11y-resize-font-"] .elementor-2 .wpcf7 input:not([type="checkbox"]):not([type="submit"]) {
	font-size: calc(max(14px, 1vw) * var(--a11y-scale-form)) !important;
	line-height: 1.2 !important;
	height: calc(4.5vh * var(--a11y-scale-form)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-2 .submit-btn input {
	font-size: calc(max(14px, 1.2vw) * var(--a11y-scale-form)) !important;
	line-height: 1.2 !important;
	height: calc(4.5vh * var(--a11y-scale-form)) !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-2 .wpcf7 .wpcf7-not-valid-tip {
	font-size: calc(max(14px, 0.9vw) * var(--a11y-scale-form)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-2 .wpcf7 .wpcf7-response-output {
	font-size: calc(max(14px, 0.8vw) * var(--a11y-scale-form)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-2 .wpcf7-checkbox .wpcf7-list-item-label {
	font-size: calc(max(12px, 0.6vw) * var(--a11y-scale-form)) !important;
	line-height: 1.3 !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-2 h2.form-head { font-size: calc(1.2vw * var(--a11y-scale)) !important; }
html body[class*="pojo-a11y-resize-font-"] .elementor-2 .main-form-title { font-size: calc(0.93vw * var(--a11y-scale)) !important; line-height: 1.3 !important; }
html body[class*="pojo-a11y-resize-font-"] .elementor-2 .privacy-wrapper .privacy-content h2 { font-size: calc(1.4vw * var(--a11y-scale)) !important; line-height: 1.3 !important; }
html body[class*="pojo-a11y-resize-font-"] .elementor-2 .privacy-wrapper .privacy-content :is(p, li, a) { font-size: calc(0.8vw * var(--a11y-scale)) !important; line-height: 1.5 !important; }
@media (max-width: 767px) {
	html body[class*="pojo-a11y-resize-font-"] .elementor-2 .wpcf7 input:not([type="checkbox"]):not([type="submit"]),
	html body[class*="pojo-a11y-resize-font-"] .elementor-2 .submit-btn input {
		font-size: calc(16px * var(--a11y-scale-form)) !important;
		height: calc(41px * var(--a11y-scale-form)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-2 .wpcf7 .wpcf7-not-valid-tip {
		font-size: calc(14px * var(--a11y-scale-form)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-2 .wpcf7-checkbox .wpcf7-list-item-label {
		font-size: calc(12px * var(--a11y-scale-form)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-2 .privacy-wrapper .privacy-content h2 { font-size: calc(16px * var(--a11y-scale)) !important; }
	html body[class*="pojo-a11y-resize-font-"] .elementor-2 .privacy-wrapper .privacy-content :is(p, li, a) { font-size: calc(12px * var(--a11y-scale)) !important; }
}

/* CookieYes bar (sample-page) - outside .elementor */
html body[class*="pojo-a11y-resize-font-"] .cky-notice .cky-notice-group :is(.cky-notice-des > p, .cky-notice-des a) {
	font-size: calc(0.9vw * var(--a11y-scale)) !important;
	line-height: 1.4 !important;
}
html body[class*="pojo-a11y-resize-font-"] .cky-consent-container .cky-btn {
	font-size: calc(max(12px, 1vw) * var(--a11y-scale-form)) !important;
	line-height: 1.3 !important;
}
@media (max-width: 767px) {
	html body[class*="pojo-a11y-resize-font-"] .cky-notice .cky-notice-group :is(.cky-notice-des > p, .cky-notice-des a) { font-size: calc(11px * var(--a11y-scale)) !important; }
	html body[class*="pojo-a11y-resize-font-"] .cky-consent-container .cky-btn { font-size: calc(12px * var(--a11y-scale-form)) !important; }
}


/* ================================================================
   Section 4b: elements with an intentional size of their own
   ================================================================ */
/* inline-styled spans inside headings (e.g. <span style="font-size: 40px">) */
html body[class*="pojo-a11y-resize-font-"] :is(.elementor, .description-section) span[style*="font-size: 40px"],
html body[class*="pojo-a11y-resize-font-"] :is(.elementor, .description-section) span[style*="font-size:40px"] {
	font-size: calc(40px * var(--a11y-scale)) !important;
}
/* 404.php heading */
html body[class*="pojo-a11y-resize-font-"] .description-section h3[style*="font-size:30px"] {
	font-size: calc(30px * var(--a11y-scale)) !important;
}

/* accessibility menu items: grow a little less than the page text */
html body[class*="pojo-a11y-resize-font-"] #pojo-a11y-toolbar .pojo-a11y-toolbar-item :is(.pojo-a11y-toolbar-icon, .pojo-a11y-toolbar-text) {
	font-size: calc(1em * var(--a11y-scale-menu)) !important;
}


/* ================================================================
   Section 4c: cookie banner (#cc-banner-root / .cc-modal, outside .elementor)
   ================================================================ */
html body[class*="pojo-a11y-resize-font-"] :is(.cc-root, .cc-modal) :is(p, li, span, label, a) {
	font-size: inherit !important;
}
html body[class*="pojo-a11y-resize-font-"] .cc-root {
	font-size: calc(14px * var(--a11y-scale)) !important;
	line-height: 1.5 !important;
}
html body[class*="pojo-a11y-resize-font-"] .cc-modal {
	font-size: calc(14px * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .cc-title,
html body[class*="pojo-a11y-resize-font-"] .cc-root .cc-title {
	font-size: calc(18px * var(--a11y-scale-form)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .cc-body,
html body[class*="pojo-a11y-resize-font-"] .cc-root .cc-body {
	font-size: calc(14px * var(--a11y-scale-form)) !important;
	line-height: 1.5 !important;
}
html body[class*="pojo-a11y-resize-font-"] .cc-btn,
html body[class*="pojo-a11y-resize-font-"] .cc-root .cc-btn {
	font-size: calc(15px * var(--a11y-scale-form)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .cc-lang-toggle,
html body[class*="pojo-a11y-resize-font-"] .cc-root .cc-lang-toggle {
	font-size: calc(12px * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .cc-modal-head h2,
html body[class*="pojo-a11y-resize-font-"] .cc-root .cc-modal-head h2 {
	font-size: calc(18px * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .cc-modal-close,
html body[class*="pojo-a11y-resize-font-"] .cc-root .cc-modal-close {
	font-size: calc(24px * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .cc-cat-desc,
html body[class*="pojo-a11y-resize-font-"] .cc-root .cc-cat-desc {
	font-size: calc(13px * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .cc-required-badge,
html body[class*="pojo-a11y-resize-font-"] .cc-root .cc-required-badge {
	font-size: calc(11px * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] :is(.cc-cookies-list, .cc-cookies-list th, .cc-cookies-list td),
html body[class*="pojo-a11y-resize-font-"] .cc-root :is(.cc-cookies-list, .cc-cookies-list th, .cc-cookies-list td) {
	font-size: calc(12px * var(--a11y-scale)) !important;
}


/* ================================================================
   Section 4d: tip positioning
   No tip on these pages uses a fixed px anchor (home/new-lp: in flow,
   sample-page: top 50%), so only the in-flow margins are adjusted.
   ================================================================ */
@media (max-width: 767px) {
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .checkbox-group .wpcf7-not-valid-tip {
		margin-top: 4px !important;
	}
}


/* ================================================================
   Section 5: Elementor typography (post-*.css) x scale
   ================================================================ */

/* ---------- post-1013.css (home) ---------- */
html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-a5525b4 .elementor-heading-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-e8a2027 .elementor-heading-title {
	font-size: calc(1.3vw * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-c8c713e .elementor-heading-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-10ce05e .elementor-heading-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-2ad5400 .elementor-heading-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-24ec202 .elementor-heading-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-d4e2a00 .elementor-heading-title {
	font-size: calc(1.2vw * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-6a25cf9 .elementor-heading-title {
	font-size: calc(2.5vw * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-7f06c66 .elementor-heading-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-15df2ff .elementor-heading-title {
	font-size: calc(2.6vw * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-7feefa3 .elementor-heading-title {
	font-size: calc(1.6vw * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-b6fbd03 .elementor-icon-list-item > .elementor-icon-list-text,
html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-b6fbd03 .elementor-icon-list-item > a {
	font-size: calc(0.8vw * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-027810d .elementor-heading-title {
	font-size: calc(1vw * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-6abbff0 .elementor-button,
html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-bb6ca03 .elementor-button {
	font-size: calc(1.23vw * var(--a11y-scale-form)) !important;
}
@media (max-width: 1024px) {
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-6abbff0 .elementor-button,
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-bb6ca03 .elementor-button {
		font-size: calc(2.4vw * var(--a11y-scale-form)) !important;
	}
}
@media (max-width: 767px) {
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-a5525b4 .elementor-heading-title {
		font-size: calc(10px * var(--a11y-scale)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-c8c713e .elementor-heading-title,
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-7feefa3 .elementor-heading-title,
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-027810d .elementor-heading-title {
		font-size: calc(20px * var(--a11y-scale)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-e8a2027 .elementor-heading-title {
		font-size: calc(21.5px * var(--a11y-scale)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-6a25cf9 .elementor-heading-title,
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-7f06c66 .elementor-heading-title {
		font-size: calc(38px * var(--a11y-scale)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-15df2ff .elementor-heading-title {
		font-size: calc(60px * var(--a11y-scale)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-10ce05e .elementor-heading-title,
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-2ad5400 .elementor-heading-title,
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-24ec202 .elementor-heading-title,
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-d4e2a00 .elementor-heading-title {
		font-size: calc(23px * var(--a11y-scale)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-b6fbd03 .elementor-icon-list-item > .elementor-icon-list-text,
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-b6fbd03 .elementor-icon-list-item > a {
		font-size: calc(15px * var(--a11y-scale)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-6abbff0 .elementor-button,
	html body[class*="pojo-a11y-resize-font-"] .elementor-1013 .elementor-element.elementor-element-bb6ca03 .elementor-button {
		font-size: calc(4.6vw * var(--a11y-scale-form)) !important;
	}
}

/* ---------- post-722.css (new-lp) ---------- */
html body[class*="pojo-a11y-resize-font-"] .elementor-722 .elementor-element.elementor-element-90e86d6 .elementor-heading-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-722 .elementor-element.elementor-element-2b6a906 .elementor-heading-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-722 .elementor-element.elementor-element-83aaf79 .elementor-heading-title {
	font-size: calc(1.3vw * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-722 .elementor-element.elementor-element-a4c6e06 .elementor-heading-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-722 .elementor-element.elementor-element-f4714e8 .elementor-heading-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-722 .elementor-element.elementor-element-6d84d82 .elementor-heading-title {
	font-size: calc(2.6vw * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-722 .elementor-element.elementor-element-13c8538 .elementor-heading-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-722 .elementor-element.elementor-element-20737ff .elementor-heading-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-722 .elementor-element.elementor-element-0a0ffd0 .elementor-heading-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-722 .elementor-element.elementor-element-94f5b4e .elementor-heading-title {
	font-size: calc(1.2vw * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-722 .elementor-element.elementor-element-67a9c00 .elementor-heading-title {
	font-size: calc(1vw * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-722 .elementor-element.elementor-element-cf314b9 .elementor-button,
html body[class*="pojo-a11y-resize-font-"] .elementor-722 .elementor-element.elementor-element-58a9f91 .elementor-button {
	font-size: calc(1.23vw * var(--a11y-scale-form)) !important;
}
@media (max-width: 1024px) {
	html body[class*="pojo-a11y-resize-font-"] .elementor-722 .elementor-element.elementor-element-cf314b9 .elementor-button,
	html body[class*="pojo-a11y-resize-font-"] .elementor-722 .elementor-element.elementor-element-58a9f91 .elementor-button {
		font-size: calc(2.4vw * var(--a11y-scale-form)) !important;
	}
}
@media (max-width: 767px) {
	html body[class*="pojo-a11y-resize-font-"] .elementor-722 .elementor-element.elementor-element-90e86d6 .elementor-heading-title {
		font-size: calc(10px * var(--a11y-scale)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-722 .elementor-element.elementor-element-2b6a906 .elementor-heading-title,
	html body[class*="pojo-a11y-resize-font-"] .elementor-722 .elementor-element.elementor-element-67a9c00 .elementor-heading-title {
		font-size: calc(20px * var(--a11y-scale)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-722 .elementor-element.elementor-element-83aaf79 .elementor-heading-title {
		font-size: calc(21.5px * var(--a11y-scale)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-722 .elementor-element.elementor-element-a4c6e06 .elementor-heading-title,
	html body[class*="pojo-a11y-resize-font-"] .elementor-722 .elementor-element.elementor-element-f4714e8 .elementor-heading-title {
		font-size: calc(38px * var(--a11y-scale)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-722 .elementor-element.elementor-element-6d84d82 .elementor-heading-title {
		font-size: calc(60px * var(--a11y-scale)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-722 .elementor-element.elementor-element-13c8538 .elementor-heading-title,
	html body[class*="pojo-a11y-resize-font-"] .elementor-722 .elementor-element.elementor-element-20737ff .elementor-heading-title,
	html body[class*="pojo-a11y-resize-font-"] .elementor-722 .elementor-element.elementor-element-0a0ffd0 .elementor-heading-title,
	html body[class*="pojo-a11y-resize-font-"] .elementor-722 .elementor-element.elementor-element-94f5b4e .elementor-heading-title {
		font-size: calc(23px * var(--a11y-scale)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-722 .elementor-element.elementor-element-cf314b9 .elementor-button,
	html body[class*="pojo-a11y-resize-font-"] .elementor-722 .elementor-element.elementor-element-58a9f91 .elementor-button {
		font-size: calc(4.6vw * var(--a11y-scale-form)) !important;
	}
}

/* ---------- post-2.css (sample-page) ---------- */
html body[class*="pojo-a11y-resize-font-"] .elementor-2 .elementor-element.elementor-element-958d8f9 {
	font-size: calc(1vw * var(--a11y-scale)) !important;
	line-height: calc(3.2vh * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-2 .elementor-element.elementor-element-4f0ab83 .elementor-heading-title {
	font-size: calc(1.55vw * var(--a11y-scale)) !important;
	line-height: calc(3.5vh * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-2 .elementor-element.elementor-element-1ceb398 .elementor-heading-title {
	font-size: calc(1.3vw * var(--a11y-scale)) !important;
	line-height: calc(2.8vh * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-2 .elementor-element.elementor-element-07dffdc .elementor-heading-title,
html body[class*="pojo-a11y-resize-font-"] .elementor-2 .elementor-element.elementor-element-66613dc .elementor-heading-title {
	font-size: calc(1vw * var(--a11y-scale)) !important;
	line-height: calc(2.8vh * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-2 .elementor-element.elementor-element-90e4a77 .elementor-heading-title {
	font-size: calc(1.3vw * var(--a11y-scale)) !important;
	line-height: calc(3vh * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-2 .elementor-element.elementor-element-6460d93 .elementor-heading-title {
	font-size: calc(0.7vw * var(--a11y-scale)) !important;
	line-height: calc(1.8vh * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .elementor-2 .elementor-element.elementor-element-11bc4c7 .elementor-heading-title {
	font-size: calc(1.35vw * var(--a11y-scale)) !important;
	line-height: calc(3vh * var(--a11y-scale)) !important;
}
@media (max-width: 767px) {
	html body[class*="pojo-a11y-resize-font-"] .elementor-2 .elementor-element.elementor-element-958d8f9 {
		font-size: calc(3.5vw * var(--a11y-scale)) !important;
		line-height: calc(2.2vh * var(--a11y-scale)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-2 .elementor-element.elementor-element-4f0ab83 .elementor-heading-title,
	html body[class*="pojo-a11y-resize-font-"] .elementor-2 .elementor-element.elementor-element-90e4a77 .elementor-heading-title {
		font-size: calc(5.8vw * var(--a11y-scale)) !important;
		line-height: calc(3vh * var(--a11y-scale)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-2 .elementor-element.elementor-element-1ceb398 .elementor-heading-title {
		font-size: calc(4.2vw * var(--a11y-scale)) !important;
		line-height: calc(2.4vh * var(--a11y-scale)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-2 .elementor-element.elementor-element-11bc4c7 .elementor-heading-title {
		font-size: calc(17px * var(--a11y-scale)) !important;
		line-height: calc(20px * var(--a11y-scale)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-2 .elementor-element.elementor-element-3e00f43 {
		font-size: calc(15px * var(--a11y-scale)) !important;
		line-height: calc(18px * var(--a11y-scale)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-2 .elementor-element.elementor-element-6348bec .elementor-heading-title {
		font-size: calc(20px * var(--a11y-scale)) !important;
		line-height: calc(22px * var(--a11y-scale)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-2 .elementor-element.elementor-element-9f302c8 .elementor-heading-title {
		font-size: calc(14px * var(--a11y-scale)) !important;
		line-height: calc(16px * var(--a11y-scale)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-2 .elementor-element.elementor-element-66613dc .elementor-heading-title {
		font-size: calc(15px * var(--a11y-scale)) !important;
		line-height: calc(18px * var(--a11y-scale)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .elementor-2 .elementor-element.elementor-element-e41bf71 .elementor-heading-title {
		font-size: calc(11px * var(--a11y-scale)) !important;
		line-height: calc(14px * var(--a11y-scale)) !important;
	}
}


/* ================================================================
   Section 6: contrast modes (high / negative / light / grayscale)
   ================================================================ */

/* mute / unmute button: no background in any contrast mode */
html body:is(.pojo-a11y-high-contrast, .pojo-a11y-negative-contrast, .pojo-a11y-light-background, .pojo-a11y-grayscale) .mute-toggle:not(#pojo-a11y-toolbar),
html body:is(.pojo-a11y-high-contrast, .pojo-a11y-negative-contrast, .pojo-a11y-light-background, .pojo-a11y-grayscale) .mute-toggle:not(#pojo-a11y-toolbar):hover,
html body:is(.pojo-a11y-high-contrast, .pojo-a11y-negative-contrast, .pojo-a11y-light-background, .pojo-a11y-grayscale) .mute-toggle:not(#pojo-a11y-toolbar) * {
	background: transparent !important;
	background-color: transparent !important;
	box-shadow: none !important;
}

/* consent checkbox: box + check mark visible and centred in every mode */
html body:is(.pojo-a11y-high-contrast, .pojo-a11y-negative-contrast, .pojo-a11y-light-background, .pojo-a11y-grayscale) .wpcf7-form .wpcf7-checkbox input[type="checkbox"]:checked:not(#pojo-a11y-toolbar)::before {
	top: 50% !important;
	left: 50% !important;
	right: auto !important;
	margin: 0 !important;
	transform: translate(-50%, -50%) !important;
}
html body:is(.pojo-a11y-high-contrast, .pojo-a11y-negative-contrast) .wpcf7-form .wpcf7-checkbox input[type="checkbox"]:not(#pojo-a11y-toolbar) {
	background: #000 !important;
	border: 1px solid #fff !important;
}
html body:is(.pojo-a11y-high-contrast, .pojo-a11y-negative-contrast) .wpcf7-form .wpcf7-checkbox input[type="checkbox"]:checked:not(#pojo-a11y-toolbar)::before {
	background: #fff !important;
	background-color: #fff !important;
}
html body.pojo-a11y-light-background .wpcf7-form .wpcf7-checkbox input[type="checkbox"]:not(#pojo-a11y-toolbar) {
	background: #fff !important;
	border: 1px solid #000 !important;
}
html body.pojo-a11y-light-background .wpcf7-form .wpcf7-checkbox input[type="checkbox"]:checked:not(#pojo-a11y-toolbar)::before {
	background: #000 !important;
	background-color: #000 !important;
}
