.success-title {
	color: #043364;
}
.success-checkmark svg path{
	stroke: #043364;
}
.success-checkmark svg circle{
	stroke: #043364;
}
.english-text {
	color: #FFFFFF;
}
.donna-price {
	color: #59C7D6;
}
.currency-sign {
	color: #59C7D6;
	font-size: 1.5vw;
}
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) input, textarea, select {
	border: 1px solid #000 !important;
}
body.pojo-a11y-light-background *:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) input::placeholder, textarea::placeholder{
	color: #000;
}

body.pojo-a11y-light-background *:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .submit-col .global-btn{
	border: 1px solid #000 !important;
}
body.pojo-a11y-light-background *:not(#pojo-a11y-toolbar):not(.pojo-a11y-toolbar-link) .wpcf7 form .submit-btn img{
	background: #000 !important;
}

/**** Horizontal scroll fix ****/
/* Elementor's inline icon list (footer links) puts negative side margins on the
   <ul> to offset the per-item spacing. Those negative margins push the list past
   the edge of the viewport and create the x-axis scrollbar. Zero them out and let
   the items wrap instead. */
.elementor-element-252ef87 .elementor-icon-list-items.elementor-inline-items {
	margin-left: 0 !important;
	margin-right: 0 !important;
	flex-wrap: wrap;
}
/* Elementor declares `.e-con { position: var(--position) }` in
   custom-frontend.min.css, which is enqueued AFTER main.css and has the same
   specificity (0,1,0) as `.sticky-container`. On a tie the later stylesheet
   wins, so a plain `.sticky-container { position: sticky }` was always losing
   to Elementor's container default of `relative`. Set Elementor's own variable
   and raise the specificity so the declaration actually lands. */
.elementor .sticky-container {
	--position: sticky;
	position: sticky;
	top: 0;
}

body #cc-floater {
    bottom: unset !important;
    top: 12.5vw !important;
    left: 0.5vw !important;
    right: unset !important;
    width: 2.5vw !important;
    height: 2.5vw !important;
    line-height: 2.5vw;
    text-align: center !important;
    z-index: 999 !important;
}
#cc-floater svg{
    width: 1.5vw !important;
    height: 1.5vw !important;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
#pojo-a11y-toolbar{
    z-index: 9999 !important;
    top: 9vw !important;
}
#pojo-a11y-toolbar .pojo-a11y-toolbar-toggle a {
    font-size: 1.5vw !important;
    padding: 0.6vw !important;
}
#pojo-a11y-toolbar .pojo-a11y-toolbar-toggle svg{
    width: 1.5vw !important;
}
#pojo-a11y-toolbar.pojo-a11y-toolbar-left {
  top: 8vw !important;
}


/* Remove the problematic body filter only during grayscale mode */
body.pojo-a11y-grayscale .wpcf7 form .wpcf7-not-valid-tip {
	color: #000;
}
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;
}
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;
}


/**** Contact Form css start ****/
.wpcf7-spinner{
	display: none;
}
.field-col label {
	width: 100%;
	display: flex;
	flex-wrap: nowrap;
	gap: 5px;
	align-items: end;
}
span.side-logo {
	width: 20%;
}
.wpcf7-form-control-wrap {
	position: relative !important;
	width: 80%;
}
.checkbox-group > p{
	display: flex;
	gap: 1.1vw;
	margin-top: 2vh;
}
.field-col label .wpcf7-form-control-wrap, .field-col input, .wpcf7-select{
	width: 100%;
	margin-bottom: 1vh;
	padding: 1vh 0.8vw;
	font-size: 1vw;
	line-height: 2vh;
	border-radius: 0.3vw;
	border: none;
	height: 2.5vw;
	margin-bottom: 0;
	font-family: "Heebo", Sans-serif;
	text-align: right;
}
.field-col label > span:first-child{
	min-width: fit-content;
	font-size: 25px;
	line-height: 30px;
	font-weight: var(--font-weight-regular);
	color: var(--second-color);
}
.contact-form .form-heading{
	font-size: 30px;
	line-height: 30px;
	font-weight: var(--font-weight-bold);
	color: var(--second-color);
	min-width: fit-content;
}
.form-logo {
	min-width: 6vw;
	margin-left: 0;
	margin-top: -1vh;
}
.field-col label input{
	background: none;
	border: none;
	border-bottom: 2px solid var(--second-color);
	color: var(--second-color);
	font-size: 22px;
	line-height: 30px;
	font-weight: var(--font-weight-regular);

	margin-bottom: 0;
}
.field-col label input:focus{
	outline: none;
	box-shadow: none;
}
.field-col, .submit-btn{
	margin-bottom: 1.3vh;
}
.field-col > p {
	margin-bottom: 0;
	height: 100%;
}

.custom-select-box .wpcf7-form-control-wrap::after {
	content: '';
	display: block;
	position: absolute;
	top: 52%;
	left: 0.2vw;
	border-left: 0.5vw solid transparent;
	border-right: 0.5vw solid transparent;
	border-top: 1vh solid var(--black-color);
	transform: translateY(-50%);
}
.wpcf7 form.invalid .wpcf7-response-output{
	display: none !important;
}
.wpcf7-checkbox .wpcf7-list-item-label{
	font-family: "Heebo", Sans-serif;
	color: #043364;
	font-size: 0.79vw;
	line-height: 1.3;
	text-align: start;
	font-weight: 400;
}
.wpcf7-checkbox > span{
	margin-left: 0;
}
.wpcf7-checkbox label{
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: nowrap;
	position: relative;
	padding-right: 1.8vw;
}
.wpcf7-not-valid-tip{
	position: relative;
	font-size: 0.7vw;
	line-height: 1.5vh;
	margin-top: 0.5vh;
	margin-bottom: 0;
	text-align: start;
}
.checkbox-group .wpcf7-not-valid-tip{
	margin-top: 0.5vh !important;
	margin-bottom: 0 !important;
	padding-right: 1.8vw !important;
}

.wpcf7-checkbox input[type="checkbox"] {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	min-width: 1.3vw;
	width: 1.3vw;
	height: 1.3vw !important;
	border: 0.1vw solid #043364;
	display: inline-block;
	position: absolute;
	top: 0.4vw;
	right: 0;
	cursor: pointer;
	border-radius: 0.2vw;
	background: transparent;
}
.wpcf7-checkbox input[type="checkbox"]:checked {
	background: transparent;
	border: 0.1vw solid #043364;
}
.wpcf7-checkbox input[type="checkbox"]:checked::before {
	content: "";
	width: 0.8vw;
	height: 1.6vh;
	background-color: #043364;
	position: absolute;
	top: 50%;
	left: 49.35%;
	transform: translate(-50%, -50%);
	border-radius: 0.1vw;
}
.wpcf7-form-control.wpcf7-checkbox.wpcf7-validates-as-required {
	display: flex;
	height: auto;
}
.submit-btn > p {
	position: relative;
	height: fit-content;
	margin-bottom: 0;
}
.submit-btn img {
	position: absolute;
	top: 50%;
	left: 0.5vw;
	width: 1vw;
	/* 		height: 2.5vh; */
	height: auto;
	z-index: 2;
	transform: translateY(-50%);
}

.wpcf7 form.invalid .wpcf7-response-output{
	color: #ffb900;
}
.wpcf7 form.failed .wpcf7-response-output, .wpcf7 form.aborted .wpcf7-response-output {
	border-color: #dc3232;
	color: #dc3232;
}
.wpcf7 form.sent .wpcf7-response-output {
	color: #46b450;
}
.wpcf7-response-output {
	font-size: 0.9vw;
	padding: 1vh 0.5vw !important;
	line-height: 1.8vh;
	margin: 0.8vh auto !important;
	text-align: center;
}
.submit-btn input{
	width: 100%;
	height: 2.5vw;
	padding: 1.2vh 0.8vw;
	font-size: 1.2vw;
	line-height: 1.05;
	border-radius: 0.3vw;
	color: #fff !important;
	font-family: "Heebo", Sans-serif;
	font-weight: bold;
	background: #043364;
	border: 1px solid #043364;
}
.bottom-content-wrapper #contactform{
	display: flex;
	flex-direction: column;
	align-items: center;
}
.form-order{
	width: 80%;
}
.simple-text p {
    font-size: 0.75vw;
    margin: 0;
    font-family: "Heebo", sans-serif;
    color: #043364;
    line-height: 2vh;
}
#pojo-a11y-toolbar .pojo-a11y-toolbar-overlay ul.pojo-a11y-toolbar-items li.pojo-a11y-toolbar-item a svg {
	padding-right: 0px;
	padding-left: 6px;
}

@media (max-width: 1024px) {
	/* --position must be reset too, otherwise Elementor's later
	   `.e-con { position: var(--position) }` re-applies sticky here. */
	.elementor .sticky-container {
		--position: relative;
		position: relative;
	}
}

/* Large tablets */
@media (min-width: 1025px) and (max-width: 1440px) {

	.wpcf7-checkbox input[type="checkbox"]{
		height: 1.3vw !important;
		top: 0.1vw;
	}

}

@media (min-width: 768px) and (max-width: 1080px) {


	.wpcf7-checkbox label{
		padding-right: 2.7vw;
	}
	.field-col, .submit-btn {
		margin-bottom: 0.5vh;
	}
	.field-col label .wpcf7-form-control-wrap, .field-col input, .wpcf7-select{
		padding: 0.6vh 0.8vw;
		line-height: 1.6;
		height: 30px;
	}
	.submit-btn input{
		padding: 0.58vh 0.8vw;
		line-height: 1.4;
		height: 30px;
	}
	.submit-btn img{
		left: 1vw;
		width: 1vw;
		height: 2.5vh;
		top: 50%;
		object-fit: contain;
	}
	.simple-text p, .wpcf7-checkbox .wpcf7-list-item-label{
		line-height: 1.4;
	}
	
	.checkbox-group > p{
		margin-top: 1vh;
		margin-bottom: 0.5vh;
	}
	.wpcf7-checkbox input[type="checkbox"]{
		/* 			min-width: 1.4vw;
		width: 1.4vw;
		height: 0.9vh; */
		height: 15px !important;
		width: 15px !important;
		min-width: 15px !important;
		top: 0.1vw;
	}
	.wpcf7-not-valid-tip{
		font-size: 1vw;
		line-height: 1.2;
		margin-top: 0.2vh;
	}
	.side-logo {
		width: 22vw;
	}
	.checkbox-group {
		padding: 0 0px;
	}
	.field-col, .submit-btn.form-col-pr-5 {
		padding: 0 3px !important;
	}
	.wpcf7-checkbox input[type="checkbox"]:checked::before{
		width: 9px;
		height: 9px;
	}
	.wpcf7-response-output{
		padding: 0.3vh 0.5vw !important;
		font-size: 1vw;
		line-height: 1.2;
	}
}

@media(max-width: 767px){
	.wpcf7 form {
		--form-control-h: 40px;
	}
	#pojo-a11y-toolbar.pojo-a11y-toolbar-left {
		top: 50vw !important;
	}
    body #cc-floater{
        bottom: unset !important;
        top: 64vw !important;
        left: 2px !important;
        width: 7.5vw !important;
        height: 7.5vw !important;
        line-height: 7.5vw;
        padding: 4.5vw !important;
    }
    #cc-floater svg {
        width: 5vw !important;
        height: 5vw !important;
    }
    #pojo-a11y-toolbar .pojo-a11y-toolbar-toggle a {
        font-size: 5.5vw !important;
        padding: 2vw !important;
    }
    #pojo-a11y-toolbar .pojo-a11y-toolbar-toggle svg {
        width: 5.8vw !important;
    }
    body #pojo-a11y-toolbar {
        top: 48vw !important;
    }


    .cc-pos-right {
        left: 50%;
        right: unset !important;
        bottom: 20px !important;
        width: 95%;
        transform: translateX(-50%);
    }
    .cc-btn{
        padding: 7px 9px !important;
    }
	.currency-sign {
		font-size: 5vw;
	}
	/**** Form CSS Start ****/
	.field-col label .wpcf7-form-control-wrap, .field-col input, .wpcf7-select {
		font-size: 16px !important;
		border-radius: 8px;
	}
	.field-col label .wpcf7-form-control-wrap, .field-col input {
		margin-bottom: 10px;
		padding: 8px 16px;
		font-size: 16px;
		line-height: 24px;
		border: none;
		height: 40px !important;
	}
	.wpcf7 form.sent .wpcf7-response-output{
		font-size: 12px;
	}
	.wpcf7 form.failed .wpcf7-response-output, .wpcf7 form.aborted .wpcf7-response-output{
		font-size: 12px;
	}
	.wpcf7 form.invalid .wpcf7-response-output{
		font-size: 12px;
	}
	.simple-text{
		margin-top: 10px;
	}
	.form-order form :where(p, .wpcf7-list-item-label) {
		font-size: 13px !important;
		line-height: 18px !important;
	}
	.submit-btn input {
		padding: 6px 16px !important;
		font-size: 22px !important;
		line-height: 26px !important;
		border-radius: 8px;
		height: 40px !important;
	}
	.submit-btn img {
		left: 10px;
		width: 18px;
		height: auto;
	}
	.checkbox.checkbox-group {
		margin-bottom: 0;
		flex-wrap: wrap !important;
	}
	.form-logo {
		min-width: 150px;
	}
	.checkbox.checkbox-group > .form-logo {
		order: 2;
		width: 100%;
		max-width: 150px;
		margin: 20px auto 0;
	}
	.wpcf7-checkbox .wpcf7-list-item-label {
		font-size: 13px !important;
		line-height: 18px !important;
	}
	.wpcf7-checkbox input[type="checkbox"] {
		height: 22px !important;
		width: 22px !important;
		min-width: 22px !important;
		margin-top: 6px;
		border-radius: 5px;
	}
	.checkbox.checkbox-group {
		padding: 0;
	}
	.wpcf7-checkbox label{
		padding-right: 30px;
	}
	.wpcf7-checkbox input[type="checkbox"]:checked::before{
		width: 12px;
		height: 12px;
	}
	.form-logo {
		min-width: auto;
		margin-left: 0;
	}
	.wpcf7-not-valid-tip{
		margin: -9px 0 2px 0;
		font-size: 14px;
		line-height: 20px;
	}
	.checkbox-group .wpcf7-not-valid-tip{
		padding-right: 28px !important;
	}
	.simple-text p{
		font-size: 13px;
	}
	.image-carousel .elementor-swiper-button-prev{
		left: 10px !important;
	}
	.image-carousel{
		height: 453px;
	}
	.image-carousel .swiper-wrapper{
		height: 453px;
	}
	.image-carousel .swiper-slide-image {
		object-fit: cover;
		min-height: 453px;
	}
	.image-carousel .elementor-swiper-button-prev, .image-carousel .elementor-swiper-button-next{
		font-size: 38px !important;
		z-index: 3 !important;
	}
	.side-logo {
		width: 67%;
		margin-left: 10px;
	}

	.field-col, .submit-btn{
		margin-bottom: 0.5vh;
	}
	.remove-br {
		display: none;
	}
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.lp-video video {
		height: 100% !important;
		object-position: right center;
		transform: none;
		object-fit: cover !important;
	}
	.elementor-element-53cad41{
		justify-content: center;
		display: flex;
	}



}


@media (min-width: 2500px) {
	.wpcf7-checkbox input[type="checkbox"]{
		height: 1.2vw !important;
	}
}


/**** Form layout fixes ****/

/* 1. Fields were sticking out past the edges of the form.
   The .row inside the form carries Bootstrap's gutter compensation
   (--bs-gutter-x: 1.5rem => margin: 0 -12px), but the columns inside it had
   their padding overridden to values that no longer cancel it out: 8px from
   .px-2, 3px from the tablet block, and 0 on .checkbox-group. The form itself
   has no padding, so whatever was left over leaked outside it -- 4px per side
   on desktop/mobile, 9px per side between 768px and 1080px, and 12px for the
   consent text. Derive every column's padding from the gutter so the two
   always cancel, at every breakpoint. */
.wpcf7 form .row {
	--bs-gutter-x: 1rem;
}
.wpcf7 form .row > * {
	padding-left: calc(var(--bs-gutter-x) * 0.5) !important;
	padding-right: calc(var(--bs-gutter-x) * 0.5) !important;
}

/* 2. Input and submit heights must match on every device.
   They were sized with `height: 2.5vw` but padded with `1vh`/`1.2vh`. vw and vh
   scale on different axes, so on a tall window the vertical padding grew past
   the height and box-sizing: border-box forced the button taller than the
   inputs (33.2px vs 27.5px at 1100x1300, with both clipping their text).
   Drive both off one variable and drop the vertical padding -- the browser
   centres an input's text in its content box on its own. */
.wpcf7 form {
	--form-control-h: 2.5vw;
}
.wpcf7 form .field-col input,
.wpcf7 form .wpcf7-select,
.wpcf7 form .submit-btn input {
	height: var(--form-control-h);
	min-height: var(--form-control-h);
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	line-height: normal;
}

/* 3. Submit arrow.
   Elementor's `.elementor img { height: auto }` loads after main.css and has
   the same specificity as `.submit-btn img`, so the `height: 2.5vh` in the
   tablet block never actually applied. Keep the arrow's own aspect ratio and
   cap it against the button height so it can never outgrow the button. */
.wpcf7 form .submit-btn img {
	top: 50%;
	transform: translateY(-50%);
	height: auto;
	max-height: 55%;
}

@media (min-width: 768px) and (max-width: 1080px) {
	.wpcf7 form {
		--form-control-h: 30px;
	}
	.wpcf7 form .row {
		--bs-gutter-x: 6px;
	}
}


/**** Undo the Customizer CSS that bleeds onto this page ****/

/* Appearance > Customize > Additional CSS carries two rules written for the
   home-page form. Contact Form 7 renders the same markup here, so both also
   land on this page, and because the Customizer prints its <style> after every
   enqueued stylesheet they beat main.css's own rules on a specificity tie:

     .wpcf7-not-valid-tip { position: absolute; bottom: -28px; width: 100%; right: 0 }
     input[type="checkbox"]:checked + .wpcf7-list-item-label::after { content: "✔" }

   The first lifts every validation message out of the flow and drops it onto
   whatever sits ~28px below: the name/phone errors land on the e-mail input and
   the submit button, and the consent error lands on the footer links. The
   second paints a white checkmark on top of the filled square this form already
   draws for :checked -- the two checkmarks in one box.

   Both are neutralised here rather than in the Customizer, because the home
   page still needs them. */
.wpcf7 form .wpcf7-not-valid-tip {
	position: relative !important;
	right: auto !important;
	bottom: auto !important;
	width: auto !important;
}
.wpcf7-checkbox input[type="checkbox"]:checked + .wpcf7-list-item-label::after {
	content: none !important;
}

/* Error text and the response banner are sized in vw with no floor, so they
   render at ~7px on a tablet and ~10px on a laptop. Same 14px readability floor
   accessibility.css already applies to these two selectors. Margins are left to
   the per-breakpoint rules above. */
.wpcf7-not-valid-tip {
	font-size: max(14px, 0.7vw);
	line-height: 1.35;
}
.wpcf7-response-output {
	font-size: max(14px, 0.9vw);
	line-height: 1.4;
}


/**** Video column matches the content column ****/

/* The video is an HTML widget whose own <style> sets `.hero-video { height:
   100vh }` on desktop and `height: auto` + `object-fit: contain` at <=1024px.
   Neither ever agrees with the text column: the 1:1 video is taller than the
   content in tablet landscape and shorter in tablet portrait, and the 100vh
   version leaves a strip under the video whenever validation errors push the
   content past the viewport.

   Take the video out of the row's height calculation -- absolute wrapper, so
   the column contributes nothing -- and the row is measured from the content
   column alone. The column then stretches (Elementor's row defaults to
   align-items: stretch) and the video fills it with `cover`.

   Every selector here is the same shape Elementor uses for its own per-element
   rules, and each layout property is set through Elementor's variable as well.
   That is not decoration: custom-frontend.min.css declares

     .elementor-widget  { position:   relative        }
     .elementor-element { align-self: var(--align-self) }
     .e-con             { height:     var(--height)     }
     .e-con             { min-height: var(--min-height) }

   and it is enqueued AFTER main.css. A single-class selector like
   `.elementor-element-739bdca` ties on specificity (0,1,0) and loses to the
   later sheet, so the declaration silently never lands -- the same trap
   documented for `.sticky-container` at the top of this file. Plain
   `.sticky-container { height: 100% }` / `.html-widget { height: 100% }` lose
   for exactly this reason and are no-ops. */
@media (min-width: 768px) {
	/* video column */
	.elementor .elementor-element.elementor-element-94aeca3 {
		--align-self: stretch;
		align-self: stretch;
	}
	/* .sticky-container inside it */
	.elementor .elementor-element.elementor-element-3feae95 {
		--height: 100%;
		--min-height: 0px;
		height: 100%;
		min-height: 0;
	}
	/* .html-widget -- the HTML widget holding <section class="hero-video"> */
	.elementor .elementor-element.elementor-element-739bdca {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
	}
	.hero-video {
		height: 100% !important;
	}
	.hero-video__media {
		height: 100% !important;
		object-fit: cover !important;
	}
}

/* Above the site's 1200px breakpoint the hero is still meant to fill the
   viewport, which used to come from the video's own 100vh. Now that the video
   no longer sets the height, put that floor on the row itself so desktop is
   unchanged while the video still follows the content when it grows past it. */
@media (min-width: 1201px) {
	.elementor .elementor-element.elementor-element-6193e7b {
		--min-height: 100vh;
		min-height: 100vh;
	}
}


/**** Tablet: form controls sized in px ****/

/* Every control in this form is sized in vw. Between 768px and 1200px that
   puts the inputs at 8-12px, the consent paragraph at 6-9px and the checkbox
   label at 6-9px -- unreadable on the device the form is actually used on.
   Pin them to px through the whole tablet range and give the controls a little
   more height to sit with the larger text. There is room for it: the section
   is content-driven and finishes well inside the viewport at every tablet size,
   errors shown or not. */
@media (min-width: 768px) and (max-width: 1200px) {
	.wpcf7 form {
		--form-control-h: 36px;
	}
	.wpcf7 form .field-col input,
	.wpcf7 form .wpcf7-select {
		font-size: 15px;
	}
	.wpcf7 form .submit-btn input {
		font-size: 17px;
	}
	.simple-text p {
		font-size: 12px;
		line-height: 1.45;
	}
	.wpcf7-checkbox .wpcf7-list-item-label {
		font-size: 12px;
		line-height: 1.45;
	}
	.wpcf7-checkbox input[type="checkbox"] {
		width: 17px !important;
		min-width: 17px !important;
		height: 17px !important;
		top: 2px;
		border-radius: 4px;
	}
	.wpcf7-checkbox input[type="checkbox"]:checked::before {
		width: 10px;
		height: 10px;
	}
	.wpcf7-checkbox label {
		padding-right: 26px;
	}
	.checkbox-group .wpcf7-not-valid-tip {
		padding-right: 26px !important;
	}
}

/* Tablet portrait only. The column is narrower here than in landscape, so the
   36px controls above read as too tall next to the text beside them. Trim them
   without touching the font sizes -- 15px/17px still clear the shorter box. */
@media (min-width: 768px) and (max-width: 1200px) and (orientation: portrait) {
	.wpcf7 form {
		--form-control-h: 32px;
	}
}




