/* ==========================================================================
   One Click Accessibility (Pojo) – fixes for the DonnaWebz landing template
   --------------------------------------------------------------------------
   Font-resize rules are gated behind body[class*="pojo-a11y-resize-font-"]:
   with no resize step selected (or after Reset) nothing here changes size.
   Content roots on this site: .page-wrapper, .mobile-menu, #cc-banner-root,
   .cc-modal-wrap. #pojo-a11y-toolbar is never matched by generic rules.
   ========================================================================== */


/* --------------------------------------------------------------------------
   Section 1: scale curves
   --a11y-scale       general text
   --a11y-scale-form  form controls / messages (start smallest, bigger jump)
   --a11y-scale-cc    cookie banner + modal (a bit smaller than the page)
   --a11y-scale-tb    accessibility toolbar items (a bit smaller than the page)
   -------------------------------------------------------------------------- */
:root { --a11y-scale: 1; --a11y-scale-form: 1; --a11y-scale-cc: 1; --a11y-scale-tb: 1; }
body.pojo-a11y-resize-font-130 { --a11y-scale:1.15; --a11y-scale-form:1.30; --a11y-scale-cc:1.10; --a11y-scale-tb:1.05; }
body.pojo-a11y-resize-font-140 { --a11y-scale:1.22; --a11y-scale-form:1.40; --a11y-scale-cc:1.14; --a11y-scale-tb:1.09; }
body.pojo-a11y-resize-font-150 { --a11y-scale:1.28; --a11y-scale-form:1.48; --a11y-scale-cc:1.18; --a11y-scale-tb:1.13; }
body.pojo-a11y-resize-font-160 { --a11y-scale:1.35; --a11y-scale-form:1.55; --a11y-scale-cc:1.22; --a11y-scale-tb:1.17; }
body.pojo-a11y-resize-font-170 { --a11y-scale:1.42; --a11y-scale-form:1.62; --a11y-scale-cc:1.26; --a11y-scale-tb:1.20; }
body.pojo-a11y-resize-font-180 { --a11y-scale:1.48; --a11y-scale-form:1.68; --a11y-scale-cc:1.30; --a11y-scale-tb:1.23; }
body.pojo-a11y-resize-font-190 { --a11y-scale:1.54; --a11y-scale-form:1.72; --a11y-scale-cc:1.33; --a11y-scale-tb:1.27; }
body.pojo-a11y-resize-font-200 { --a11y-scale:1.60; --a11y-scale-form:1.75; --a11y-scale-cc:1.36; --a11y-scale-tb:1.30; }


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


/* --------------------------------------------------------------------------
   Section 3: stop the plugin's % compounding inside the content roots
   -------------------------------------------------------------------------- */
html body[class*="pojo-a11y-resize-font-"] .page-wrapper :is(p, li, span, label, blockquote, legend, code, pre, dd, dt),
html body[class*="pojo-a11y-resize-font-"] .mobile-menu :is(p, li, span, label, blockquote, legend, code, pre, dd, dt),
html body[class*="pojo-a11y-resize-font-"] .page-wrapper :is(h1, h2, h3, h4, h5, h6) span {
	font-size: inherit !important;
}
html body[class*="pojo-a11y-resize-font-"] .page-wrapper input[type="checkbox"] {
	font-size: calc(16px * var(--a11y-scale)) !important;
}


/* --------------------------------------------------------------------------
   Section 4: form controls + messages (--a11y-scale-form)
   Input and submit share one height so they stay level on every device.
   -------------------------------------------------------------------------- */
html body[class*="pojo-a11y-resize-font-"] .page-wrapper .field-col input,
html body[class*="pojo-a11y-resize-font-"] .page-wrapper .wpcf7-select {
	font-size: calc(max(14px, 1vw) * var(--a11y-scale-form)) !important;
	line-height: 1.2 !important;
	height: calc(max(28px, 2vw) * var(--a11y-scale-form)) !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}
html body[class*="pojo-a11y-resize-font-"] .page-wrapper .submit-btn input {
	font-size: calc(max(16px, 1.2vw) * var(--a11y-scale-form)) !important;
	line-height: 1.2 !important;
	height: calc(max(28px, 2vw) * var(--a11y-scale-form)) !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}
html body[class*="pojo-a11y-resize-font-"] .page-wrapper .wpcf7-response-output {
	font-size: calc(max(14px, 0.9vw) * var(--a11y-scale-form)) !important;
	line-height: 1.4 !important;
}
/* validation tip: always one line */
html body[class*="pojo-a11y-resize-font-"] .page-wrapper .wpcf7-not-valid-tip {
	font-size: min(calc(max(12px, 0.7vw) * var(--a11y-scale-form)), max(1.15vw, 11px)) !important;
	line-height: 1.3 !important;
	white-space: nowrap !important;
}
html body[class*="pojo-a11y-resize-font-"] .page-wrapper .wpcf7-list-item-label {
	font-size: calc(0.77vw * var(--a11y-scale-form)) !important;
	line-height: 1.45 !important;
}
html body[class*="pojo-a11y-resize-font-"] .page-wrapper .simple-text p {
	font-size: calc(0.77vw * var(--a11y-scale-form)) !important;
	line-height: 1.45 !important;
}

@media (max-width: 767px) {
	html body[class*="pojo-a11y-resize-font-"] .page-wrapper .wpcf7 form .wpcf7-response-output {
		font-size: calc(14px * var(--a11y-scale-form)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .page-wrapper .field-col input,
	html body[class*="pojo-a11y-resize-font-"] .page-wrapper .wpcf7-select {
		font-size: calc(16px * var(--a11y-scale-form)) !important;
		height: calc(26px * var(--a11y-scale-form) + 16px) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .page-wrapper .submit-btn input {
		font-size: calc(22px * var(--a11y-scale-form)) !important;
		height: calc(26px * var(--a11y-scale-form) + 16px) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .page-wrapper .simple-text p,
	html body[class*="pojo-a11y-resize-font-"] .page-wrapper .wpcf7-list-item-label {
		font-size: calc(13px * var(--a11y-scale-form)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .page-wrapper .wpcf7-not-valid-tip {
		font-size: min(calc(14px * var(--a11y-scale-form)), 5.8vw) !important;
		margin-top: -6px !important;
	}
}


/* --------------------------------------------------------------------------
   Section 4b: accessibility toolbar items – grow a bit less than the page and
   always stay on one line in the fixed 180px panel (longest label bold ≈ 9px of
   width per 1px of font → 16.6px max with 12px side padding)
   -------------------------------------------------------------------------- */
#pojo-a11y-toolbar .pojo-a11y-toolbar-overlay ul.pojo-a11y-toolbar-items li.pojo-a11y-toolbar-item a {
	white-space: nowrap;
}
html body[class*="pojo-a11y-resize-font-"] #pojo-a11y-toolbar .pojo-a11y-toolbar-overlay ul.pojo-a11y-toolbar-items li.pojo-a11y-toolbar-item a {
	font-size: calc(12.8px * var(--a11y-scale-tb)) !important;
	padding-left: 12px !important;
	padding-right: 12px !important;
}
html body[class*="pojo-a11y-resize-font-"] #pojo-a11y-toolbar .pojo-a11y-toolbar-overlay ul.pojo-a11y-toolbar-items li.pojo-a11y-toolbar-item a span {
	font-size: inherit !important;
}


/* --------------------------------------------------------------------------
   Section 4c: cookie banner + settings modal (--a11y-scale-cc, a bit smaller)
   -------------------------------------------------------------------------- */
html body[class*="pojo-a11y-resize-font-"] .cc-root :is(p, li, span, label, a),
html body[class*="pojo-a11y-resize-font-"] .cc-modal-wrap :is(p, li, span, label, a, summary) {
	font-size: inherit !important;
}
html body[class*="pojo-a11y-resize-font-"] .cc-root {
	font-size: calc(14px * var(--a11y-scale-cc)) !important;
	line-height: 1.5 !important;
}
html body[class*="pojo-a11y-resize-font-"] .cc-title,
html body[class*="pojo-a11y-resize-font-"] .cc-root .cc-title {
	font-size: calc(16px * var(--a11y-scale-cc)) !important;
	line-height: 1.3 !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-cc)) !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(14px * var(--a11y-scale-cc)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .cc-modal-wrap {
	font-size: calc(16px * var(--a11y-scale-cc)) !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-cc)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .cc-modal-head h2,
html body[class*="pojo-a11y-resize-font-"] .cc-modal-wrap .cc-modal-head h2 {
	font-size: calc(18px * var(--a11y-scale-cc)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .cc-modal-close,
html body[class*="pojo-a11y-resize-font-"] .cc-modal-wrap .cc-modal-close {
	font-size: calc(24px * var(--a11y-scale-cc)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .cc-cat-desc,
html body[class*="pojo-a11y-resize-font-"] .cc-modal-wrap .cc-cat-desc {
	font-size: calc(13px * var(--a11y-scale-cc)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .cc-required-badge,
html body[class*="pojo-a11y-resize-font-"] .cc-modal-wrap .cc-required-badge {
	font-size: calc(11px * var(--a11y-scale-cc)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .cc-cookies-list,
html body[class*="pojo-a11y-resize-font-"] .cc-modal-wrap .cc-cookies-list,
html body[class*="pojo-a11y-resize-font-"] .cc-cookies-list th,
html body[class*="pojo-a11y-resize-font-"] .cc-cookies-list td,
html body[class*="pojo-a11y-resize-font-"] .cc-modal-wrap .cc-cookies-list th,
html body[class*="pojo-a11y-resize-font-"] .cc-modal-wrap .cc-cookies-list td {
	font-size: calc(12px * var(--a11y-scale-cc)) !important;
}


/* --------------------------------------------------------------------------
   Section 5: theme font sizes (style.css + responsive.css), × --a11y-scale
   -------------------------------------------------------------------------- */
html body[class*="pojo-a11y-resize-font-"] .page-wrapper .text-content h1 {
	font-size: calc(2.5vw * var(--a11y-scale)) !important;
	line-height: 1.2 !important;
}
html body[class*="pojo-a11y-resize-font-"] .page-wrapper .main-description {
	font-size: calc(0.8vw * var(--a11y-scale)) !important;
	line-height: 1.7 !important;
}
html body[class*="pojo-a11y-resize-font-"] .page-wrapper .feature-text {
	font-size: calc(0.7vw * var(--a11y-scale)) !important;
	line-height: 1.4 !important;
}
html body[class*="pojo-a11y-resize-font-"] .page-wrapper .img-notice {
	font-size: calc(0.8vw * var(--a11y-scale)) !important;
	line-height: 1.5 !important;
}
html body[class*="pojo-a11y-resize-font-"] .page-wrapper .bottom-content-wrapper .main-form-title {
	font-size: calc(1vw * var(--a11y-scale)) !important;
	line-height: 1.5 !important;
}
html body[class*="pojo-a11y-resize-font-"] .page-wrapper .in-privacy-ytr-wrap li,
html body[class*="pojo-a11y-resize-font-"] .page-wrapper .in-privacy-ytr-wrap li a {
	font-size: calc(0.9vw * var(--a11y-scale)) !important;
	line-height: 1.5 !important;
}
html body[class*="pojo-a11y-resize-font-"] .page-wrapper .modal-content p,
html body[class*="pojo-a11y-resize-font-"] .page-wrapper .modal-content li {
	font-size: calc(1vw * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .page-wrapper .modal-content h2 {
	font-size: calc(2vw * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .page-wrapper .modal-content :is(h3, h4, h5, h6) {
	font-size: calc(1.3vw * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .page-wrapper .close-modal {
	font-size: calc(3vw * var(--a11y-scale)) !important;
}
html body[class*="pojo-a11y-resize-font-"] .mobile-menu .detail-mob a,
html body[class*="pojo-a11y-resize-font-"] .mobile-menu .phone-mob a {
	font-size: calc(16px * var(--a11y-scale)) !important;
}

/* Desktop layout while text is enlarged: the decorative corners are sized as a %
   of the whole column, so they grow with the text and cover it. */
@media (min-width: 768px) {
	/* top white triangle keeps its default size; heading starts below it */
	html body[class*="pojo-a11y-resize-font-"] .page-wrapper .top-white-corner {
		height: min(19%, 13vw) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .page-wrapper .text-content h1 {
		margin-top: max(7vh, 7vw) !important;
	}
	/* features: last row back in normal flow (absolute items overlapped the row above) */
	html body[class*="pojo-a11y-resize-font-"] .page-wrapper .features-grid {
		display: flex !important;
		flex-wrap: wrap;
		justify-content: center;
		align-items: flex-start;
		padding-bottom: 0 !important;
		z-index: 2;
	}
	html body[class*="pojo-a11y-resize-font-"] .page-wrapper .features-grid .feature-item {
		position: static !important;
		right: auto !important;
		flex: 0 0 25%;
		max-width: 25% !important;
		padding: 0 0.6vw;
	}
	/* grey form background: drawn on the form area itself (same slant + line image)
	   so it always covers the whole form */
	html body[class*="pojo-a11y-resize-font-"] .page-wrapper .bottom-grey-corner {
		display: none !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .page-wrapper .bottom-content-wrapper {
		position: relative;
		background: #EAE6E2;
		margin-top: calc(6vh + 8vw) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .page-wrapper .bottom-content-wrapper::before {
		content: "";
		position: absolute;
		left: 0;
		right: 0;
		bottom: calc(100% - 1px);
		height: calc(10vw + 1px);
		background: inherit;
		clip-path: polygon(0 0, 100% 100%, 0 100%);
		pointer-events: none;
	}
	html body[class*="pojo-a11y-resize-font-"] .page-wrapper .bottom-content-wrapper::after {
		content: "";
		position: absolute;
		left: 0;
		top: calc(2vh - 10vw);
		width: 40%;
		aspect-ratio: 249 / 64;
		background: url("/wp-content/uploads/sites/47/2025/11/slant-line.png") no-repeat 0 0 / 100% 100%;
		pointer-events: none;
	}
}

/* Mobile: same grey form background approach (theme slant = 14% of the corner) */
@media (max-width: 767px) {
	html body[class*="pojo-a11y-resize-font-"] .page-wrapper .bottom-grey-corner {
		display: none !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .page-wrapper .bottom-content-wrapper {
		position: relative;
		background: #EAE6E2;
		margin-top: calc(62px + 22vw) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .page-wrapper .bottom-content-wrapper::before {
		content: "";
		position: absolute;
		left: 0;
		right: 0;
		bottom: calc(100% - 1px);
		height: calc(28vw + 1px);
		background: inherit;
		clip-path: polygon(0 0, 100% 100%, 0 100%);
		pointer-events: none;
	}
	html body[class*="pojo-a11y-resize-font-"] .page-wrapper .bottom-content-wrapper::after {
		content: "";
		position: absolute;
		left: 0;
		top: calc(2vh - 28vw);
		width: 45%;
		aspect-ratio: 249 / 64;
		background: url("/wp-content/uploads/sites/47/2025/11/slant-line.png") no-repeat 0 0 / 100% 100%;
		pointer-events: none;
	}
}

@media (max-width: 767px) {
	html body[class*="pojo-a11y-resize-font-"] .page-wrapper .img-notice {
		font-size: calc(8px * var(--a11y-scale)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .page-wrapper .text-content h1 {
		font-size: calc(30px * var(--a11y-scale)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .page-wrapper .main-description {
		font-size: calc(14px * var(--a11y-scale)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .page-wrapper .feature-text {
		font-size: calc(12px * var(--a11y-scale)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .page-wrapper .bottom-content-wrapper {
		padding-bottom: calc(90px * var(--a11y-scale)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .page-wrapper .bottom-content-wrapper .main-form-title {
		font-size: calc(18px * var(--a11y-scale)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .page-wrapper .in-privacy-ytr-wrap li,
	html body[class*="pojo-a11y-resize-font-"] .page-wrapper .in-privacy-ytr-wrap li a {
		font-size: calc(14px * var(--a11y-scale)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .page-wrapper .close-modal {
		font-size: calc(27px * var(--a11y-scale)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .page-wrapper .modal-content p,
	html body[class*="pojo-a11y-resize-font-"] .page-wrapper .modal-content li {
		font-size: calc(14px * var(--a11y-scale)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .page-wrapper .modal-content h2 {
		font-size: calc(25px * var(--a11y-scale)) !important;
	}
	html body[class*="pojo-a11y-resize-font-"] .page-wrapper .modal-content :is(h3, h4, h5, h6) {
		font-size: calc(18px * var(--a11y-scale)) !important;
	}
}

@media (max-width: 380px) {
	html body[class*="pojo-a11y-resize-font-"] .mobile-menu .detail-mob a,
	html body[class*="pojo-a11y-resize-font-"] .mobile-menu .phone-mob a {
		font-size: calc(14px * var(--a11y-scale)) !important;
	}
}


/* ==========================================================================
   Contact form – default mobile view fix (inputs were 16px / submit 12px tall
   because height:2vw has no mobile override). Input and submit share one height.
   ========================================================================== */
/* submit text vertically centred (theme padding filled the whole 2vw height) */
.wpcf7 .submit-btn input.wpcf7-submit {
	padding-top: 0;
	padding-bottom: 0;
}
/* arrow icon stays centred on the button when a validation message makes the
   row (and the stretched column) taller */
.wpcf7 .submit-btn > p {
	display: flex;
	height: auto;
}
@media (max-width: 767px) {
	.wpcf7 .field-col input,
	.wpcf7 .submit-btn input {
		height: 42px;
	}
	.wpcf7 .submit-btn input.wpcf7-submit {
		padding-top: 0 !important;
		padding-bottom: 0 !important;
	}
	.wpcf7 .wpcf7-checkbox input[type="checkbox"]:checked::before {
		width: auto;
		height: auto;
		font-size: 14px;
		line-height: 1;
	}
}


/* ==========================================================================
   Contrast modes
   ========================================================================== */

/* high contrast: page background black */
body.pojo-a11y-high-contrast {
	background: #000 !important;
	background-color: #000 !important;
}

/* decorative / overlay images keep a transparent background in every mode */
html body :not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .top-white-corner > img,
html body :not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .bottom-grey-corner > img,
html body :not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .slider-bottom-img,
html body :not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .slider-bottom-img img,
html body .page-wrapper:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) img,
html body .mobile-menu:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) img {
	background: transparent !important;
	background-color: transparent !important;
}

/* top white corner (line image + mobile logo): transparent in every contrast mode */
html body:is(.pojo-a11y-high-contrast, .pojo-a11y-negative-contrast, .pojo-a11y-light-background) .page-wrapper:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .top-white-corner,
html body:is(.pojo-a11y-high-contrast, .pojo-a11y-negative-contrast, .pojo-a11y-light-background) .page-wrapper:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .top-white-corner .top-logo {
	background: transparent !important;
	background-color: transparent !important;
}

/* decorative line images (Line-img.png, slant-line.png): solid black on the light
   background, solid white on the black backgrounds; the thin outline keeps the part
   that crosses the slider photo visible */
html body.pojo-a11y-light-background .page-wrapper:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .top-white-corner > img,
html body.pojo-a11y-light-background .page-wrapper:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .bottom-grey-corner > img {
	filter: brightness(0) drop-shadow(0 0 1px #fff) drop-shadow(0 0 1px #fff) !important;
}
html body:is(.pojo-a11y-high-contrast, .pojo-a11y-negative-contrast) .page-wrapper:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .top-white-corner > img,
html body:is(.pojo-a11y-high-contrast, .pojo-a11y-negative-contrast) .page-wrapper:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .bottom-grey-corner > img {
	filter: brightness(0) invert(1) drop-shadow(0 0 1px #000) drop-shadow(0 0 1px #000) !important;
}
/* same line when it is drawn on the form area (text enlarged, desktop) */
html body.pojo-a11y-light-background[class*="pojo-a11y-resize-font-"] .page-wrapper .bottom-content-wrapper::after {
	filter: brightness(0) drop-shadow(0 0 1px #fff) drop-shadow(0 0 1px #fff);
}
html body:is(.pojo-a11y-high-contrast, .pojo-a11y-negative-contrast)[class*="pojo-a11y-resize-font-"] .page-wrapper .bottom-content-wrapper::after {
	filter: brightness(0) invert(1) drop-shadow(0 0 1px #000) drop-shadow(0 0 1px #000);
}
/* feature boxes sit on top of the slant line – keep them see-through */
html body:is(.pojo-a11y-high-contrast, .pojo-a11y-negative-contrast, .pojo-a11y-light-background) .page-wrapper:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) :is(.features-wrap, .features-wrap div) {
	background: transparent !important;
	background-color: transparent !important;
}
/* validation tips: no background box over the field's bottom border */
html body:is(.pojo-a11y-high-contrast, .pojo-a11y-negative-contrast, .pojo-a11y-light-background) .page-wrapper:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .wpcf7-not-valid-tip {
	background: transparent !important;
	background-color: transparent !important;
}
@media (max-width: 767px) {
	html body:is(.pojo-a11y-high-contrast, .pojo-a11y-negative-contrast, .pojo-a11y-light-background) .page-wrapper:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .wpcf7-not-valid-tip {
		margin-top: -6px !important;
	}
}

/* slider: image containers stay transparent (text keeps its own background) */
html body[class*="pojo-a11y-"] :not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .banner-slider,
html body[class*="pojo-a11y-"] :not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .banner-slider .slick-list,
html body[class*="pojo-a11y-"] :not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .banner-slider .slick-track,
html body[class*="pojo-a11y-"] :not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .banner-slider .slide {
	background: transparent !important;
	background-color: transparent !important;
}

/* slider prev/next arrows: no square / focus box behind the arrow */
.banner-slider .slick-arrow,
.banner-slider .slick-arrow:hover,
.banner-slider .slick-arrow:focus,
html body :not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .banner-slider .slick-arrow,
html body :not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .banner-slider .slick-arrow:focus,
html body :not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .banner-slider .slick-arrow i {
	background: transparent !important;
	background-color: transparent !important;
	border: 0 !important;
	outline: none !important;
	box-shadow: none !important;
}

/* "לירושלים" gradient text – same as default in every mode */
html body :not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .text-content h1 .gradient-text {
	background: linear-gradient(90deg, #CA6A62 0%, #E3AB2C 100%) !important;
	-webkit-background-clip: text !important;
	background-clip: text !important;
	-webkit-text-fill-color: transparent !important;
}

/* form fields visible on black backgrounds */
html body.pojo-a11y-high-contrast :not(#pojo-a11y-toolbar) .wpcf7 .field-col input,
html body.pojo-a11y-negative-contrast :not(#pojo-a11y-toolbar) .wpcf7 .field-col input {
	border: 1px solid #fff !important;
}

/* consent checkbox: visible box + visible tick in every mode */
html body.pojo-a11y-high-contrast :not(#pojo-a11y-toolbar) .wpcf7-checkbox input[type="checkbox"],
html body.pojo-a11y-negative-contrast :not(#pojo-a11y-toolbar) .wpcf7-checkbox input[type="checkbox"] {
	background: #000 !important;
	border: 1px solid #fff !important;
}
html body.pojo-a11y-light-background :not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .wpcf7-checkbox input[type="checkbox"],
html body.pojo-a11y-grayscale :not(#pojo-a11y-toolbar) .wpcf7-checkbox input[type="checkbox"]:checked {
	background: #fff !important;
	border: 1px solid #000 !important;
}
html body.pojo-a11y-high-contrast .wpcf7-checkbox input[type="checkbox"]:checked::before,
html body.pojo-a11y-negative-contrast .wpcf7-checkbox input[type="checkbox"]:checked::before {
	color: #fff !important;
}
html body.pojo-a11y-light-background .wpcf7-checkbox input[type="checkbox"]:checked::before,
html body.pojo-a11y-grayscale .wpcf7-checkbox input[type="checkbox"]:checked::before {
	color: #000 !important;
}

/* white arrow icons would disappear on the light background */
html body.pojo-a11y-light-background :not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .submit-btn img,
html body.pojo-a11y-light-background .mobile-menu:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .detail-mob img {
	filter: brightness(0) !important;
}
html body.pojo-a11y-high-contrast .mobile-menu:not(#pojo-a11y-toolbar) a svg,
html body.pojo-a11y-negative-contrast .mobile-menu:not(#pojo-a11y-toolbar) a svg {
	color: #fff !important;
	fill: #fff !important;
}

/* buttons: border in every contrast mode */
html body.pojo-a11y-high-contrast :not(#pojo-a11y-toolbar) .wpcf7-submit,
html body.pojo-a11y-high-contrast .mobile-menu:not(#pojo-a11y-toolbar) .detail-mob,
html body.pojo-a11y-high-contrast .mobile-menu:not(#pojo-a11y-toolbar) .phone-mob,
html body.pojo-a11y-high-contrast :not(#pojo-a11y-toolbar) .cc-btn,
html body.pojo-a11y-high-contrast :not(#pojo-a11y-toolbar) .cc-modal-close,
html body.pojo-a11y-high-contrast #cc-floater#cc-floater,
html body.pojo-a11y-negative-contrast :not(#pojo-a11y-toolbar) .wpcf7-submit,
html body.pojo-a11y-negative-contrast .mobile-menu:not(#pojo-a11y-toolbar) .detail-mob,
html body.pojo-a11y-negative-contrast .mobile-menu:not(#pojo-a11y-toolbar) .phone-mob,
html body.pojo-a11y-negative-contrast :not(#pojo-a11y-toolbar) .cc-btn,
html body.pojo-a11y-negative-contrast :not(#pojo-a11y-toolbar) .cc-modal-close,
html body.pojo-a11y-negative-contrast #cc-floater#cc-floater {
	border: 1px solid #fff !important;
}
html body.pojo-a11y-light-background :not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .wpcf7-submit,
html body.pojo-a11y-light-background .mobile-menu:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .detail-mob,
html body.pojo-a11y-light-background .mobile-menu:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .phone-mob,
html body.pojo-a11y-light-background :not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .cc-modal-close,
html body.pojo-a11y-light-background #cc-floater#cc-floater,
html body.pojo-a11y-grayscale :not(#pojo-a11y-toolbar) .wpcf7-submit,
html body.pojo-a11y-grayscale .mobile-menu:not(#pojo-a11y-toolbar) .detail-mob,
html body.pojo-a11y-grayscale .mobile-menu:not(#pojo-a11y-toolbar) .phone-mob,
html body.pojo-a11y-grayscale :not(#pojo-a11y-toolbar) .cc-modal .cc-btn,
html body.pojo-a11y-grayscale :not(#pojo-a11y-toolbar) .cc-modal-close {
	border: 1px solid #000 !important;
}
html body.pojo-a11y-grayscale :not(#pojo-a11y-toolbar) .cc-banner .cc-btn,
html body.pojo-a11y-grayscale #cc-floater#cc-floater {
	border: 1px solid #fff !important;
}

/* cookie settings toggles: active state clearly different in every mode */
.cc-toggle input:checked + .cc-slider {
	background: #10b981 !important;
}
html body.pojo-a11y-grayscale .cc-toggle input:checked + .cc-slider {
	background: #1f2937 !important;
}
html body.pojo-a11y-high-contrast .cc-toggle input:checked + .cc-slider {
	background: #ffff00 !important;
}
html body.pojo-a11y-high-contrast .cc-toggle input:checked + .cc-slider::before {
	background: #000 !important;
}
html body.pojo-a11y-negative-contrast :not(#pojo-a11y-toolbar) .cc-toggle input:checked + .cc-slider {
	background: #fff !important;
}
html body.pojo-a11y-negative-contrast :not(#pojo-a11y-toolbar) .cc-toggle input:checked + .cc-slider::before {
	background: #000 !important;
}
html body.pojo-a11y-light-background :not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .cc-toggle input:checked + .cc-slider {
	background: #000 !important;
}
html body.pojo-a11y-light-background :not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .cc-toggle input:checked + .cc-slider::before {
	background: #fff !important;
}


/* ==========================================================================
   Site-wide additions (supplied)
   ========================================================================== */
body.pojo-a11y-light-background *:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) input,
body.pojo-a11y-light-background *:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) textarea,
body.pojo-a11y-light-background *:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) select {
	border: 1px solid #000 !important;
}
body.pojo-a11y-light-background *:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) input::placeholder,
body.pojo-a11y-light-background *:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) textarea::placeholder {
	color: #000;
}

/* Remove the problematic body filter only during grayscale mode */
body.pojo-a11y-grayscale {
	-webkit-filter: none !important;
	filter: none !important;
	overflow-x: hidden !important;
}
/* Reapply grayscale to the document root */
html:has(body.pojo-a11y-grayscale) {
	-webkit-filter: grayscale(100%) !important;
	filter: grayscale(100%) !important;
}
/* Change toolbar positioning only during grayscale mode */
body.pojo-a11y-grayscale #pojo-a11y-toolbar {
	position: fixed !important;
	z-index: 99999 !important;
}

.cc-slider, body.pojo-a11y-high-contrast .cc-slider, body.pojo-a11y-grayscale .cc-slider,
body.pojo-a11y-negative-contrast :not(#pojo-a11y-toolbar) .cc-slider,
body.pojo-a11y-light-background :not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .cc-slider {
	background: #ababff !important;
}
body.pojo-a11y-grayscale .wpcf7-not-valid-tip {
	color: #fff;
}
/* this site's form sits on a light background – white tips would be invisible */
html body.pojo-a11y-grayscale .page-wrapper .wpcf7-not-valid-tip {
	color: #dc3232 !important;
}
body.pojo-a11y-light-background *:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .cc-btn {
	border: 1px solid #000 !important;
}
body.pojo-a11y-light-background :not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .cc-slider {
	background: gray !important;
}
body.pojo-a11y-high-contrast .cc-slider {
	background: gray !important;
}
body.pojo-a11y-negative-contrast :not(#pojo-a11y-toolbar) .cc-slider {
	background: gray !important;
}
body.pojo-a11y-light-background :not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .black-bg img {
	background: #000 !important;
}
body.pojo-a11y-light-background :not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .transparent-bg {
	background: transparent !important;
}
body.pojo-a11y-high-contrast .transparent-bg {
	background: transparent !important;
}
body.pojo-a11y-negative-contrast :not(#pojo-a11y-toolbar) .transparent-bg {
	background: transparent !important;
}
body.pojo-a11y-light-background :not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .transparent-bg img {
	background: transparent !important;
}
body.pojo-a11y-high-contrast .transparent-bg img {
	background: transparent !important;
}
body.pojo-a11y-negative-contrast :not(#pojo-a11y-toolbar) .transparent-bg img {
	background: transparent !important;
}
body.pojo-a11y-high-contrast .wpcf7-checkbox input[type="checkbox"]:checked::before {
	color: #fff;
}
body.pojo-a11y-negative-contrast :not(#pojo-a11y-toolbar) .wpcf7-checkbox input[type="checkbox"]:checked::before {
	color: #fff;
}

/* cookie icon: same side and same size as the accessibility icon (1.5vw icon +
   2 × 0.6vw padding = 2.7vw, top 9vw), sitting just below it */
body #cc-floater {
	bottom: unset !important;
	top: 12.5vw !important;
	left: unset !important;
	right: 0 !important;
	width: 2.7vw !important;
	height: 2.7vw !important;
	padding: 0 !important;
	line-height: 2.7vw;
	text-align: center !important;
	z-index: 999 !important;
}
/* cookie icon: same colours as the accessibility button, in every mode */
#cc-floater#cc-floater {
	background: #222121 !important;
	color: #fff !important;
}
#cc-floater#cc-floater svg {
	color: #fff !important;
	background: transparent !important;
}
body #cc-floater svg {
	width: 1.5vw !important;
	height: 1.5vw !important;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
body #pojo-a11y-toolbar {
	z-index: 9999 !important;
	top: 9vw !important;
}
body #pojo-a11y-toolbar .pojo-a11y-toolbar-toggle a {
	font-size: 1.5vw !important;
	padding: 0.6vw !important;
}
body #pojo-a11y-toolbar .pojo-a11y-toolbar-toggle svg {
	width: 1.5vw !important;
}
#pojo-a11y-toolbar .pojo-a11y-toolbar-overlay ul.pojo-a11y-toolbar-items li.pojo-a11y-toolbar-item a svg {
	padding-right: 0 !important;
	padding-left: 6px !important;
}

@media (max-width: 767px) {
	/* accessibility icon here: 5.8vw icon + 2 × 2vw padding = 9.8vw, top 48vw */
	body #cc-floater {
		bottom: unset !important;
		top: 60vw !important;
		left: unset !important;
		right: 0 !important;
		width: 9.8vw !important;
		height: 9.8vw !important;
		line-height: 9.8vw;
		padding: 0 !important;
	}
	body #cc-floater svg {
		width: 5vw !important;
		height: 5vw !important;
	}
	body #pojo-a11y-toolbar .pojo-a11y-toolbar-toggle a {
		font-size: 5.5vw !important;
		padding: 2vw !important;
	}
	body #pojo-a11y-toolbar .pojo-a11y-toolbar-toggle svg {
		width: 5.8vw !important;
	}
	body #pojo-a11y-toolbar {
		top: 48vw !important;
	}
	/* cookie banner centred on mobile */
	.cc-banner {
		padding: 16px !important;
	}
	.cc-pos-right {
		left: 50% !important;
		right: unset !important;
		bottom: 10px !important;
		width: 95%;
		transform: translateX(-50%);
	}
	.cc-btn {
		padding: 7px 9px !important;
	}
}
