/*
 Theme Name:   Bricks Child Theme
 Theme URI:    https://bricksbuilder.io/
 Description:  Use this child theme to extend Bricks.
 Author:       Bricks
 Author URI:   https://bricksbuilder.io/
 Template:     bricks
 Version:      1.1
 Text Domain:  bricks
*/


/* Slider */

.splide .splide__slide img{
	pointer-events: none;
}



/* From ************************************************************/

.fluentform .ff-el-group .ff-el-input--label label{
	font-size: var(--text-m);
	color: var(--primary-dark);
	font-weight: 400;
}
.fluentform .ff-el-group .ff-el-input--label{
	margin-bottom: 10px;
}

.fluentform .ff-el-group .ff-el-input--content input{
	border: 1px solid var(--tertiary);
	border-radius: 10px;
	font-size: 18px;
}
.fluentform .ff-el-group .ff-el-input--content input::placeholder{
	font-style: italic !important;
	
}
.fluentform .ff-el-group:has(.ff-btn-submit) {
	margin-bottom: 0px !important;
	margin-top: var(--space-l);
}
.fluentform .ff-el-group .ff-btn-submit{
	background: var(--secondary) !important;
    color: var(--white) !important;
    padding-block: var(--btn-padding-block);
    padding-inline: var(--btn-padding-inline);
    min-inline-size: var(--btn-min-width);
    line-height: var(--btn-line-height);
    font-size: var(--btn-font-size, var(--text-m));
    font-weight: var(--btn-font-weight);
    font-style: var(--btn-font-style);
    text-transform: var(--btn-text-transform);
    letter-spacing: var(--btn-letter-spacing);
    text-decoration: var(--btn-text-decoration);
    border-width: var(--btn-border-width);
    border-style: var(--btn-border-style);
    border-radius: var(--btn-radius);
    border-color: var(--secondary) !important;
    transition: var(--btn-transition, var(--transition));
    justify-content: var(--btn-justify-content, center);
    text-align: var(--btn-text-align, center);
}
.fluentform .ff-el-group .ff-btn-submit:hover{
	background: var(--secondary-hover);
    color: var(--white);
    border-color: var(--secondary-hover);
}


/* Pagination ********************************************************/

.splide__pagination.splide__pagination {
  display: flex;
  gap: 12px;
}

.splide__pagination.splide__pagination .splide__pagination__page {
  width: 28px;
	height: 3px;
  margin: 0px;
  border-radius: 0px;
  opacity: 1;
  margin: 0px;
 background: var(--splide-dots-bg, var(--white));
}
.splide__pagination.splide__pagination .splide__pagination__page.is-active{
   opacity: 1;
  background: var(--splide-dots-bg-active, var(--primary)) !important;
}
.splide__pagination.splide__pagination li {
  display: flex;
}
@media only screen and (max-width: 991px) {
  .splide__pagination.splide__pagination .splide__pagination__page {
    width: 20px;
  }
}

@media only screen and (max-width: 650px) {
  .splide__pagination.splide__pagination .splide__pagination__page {
    width: 14px;
  }
}





/* Image Gradient **********************/

.is-style-img_gradient_rb{
    padding-right: var(--space-xs);
    padding-bottom: var(--space-xs);
	position: relative;
}
.is-style-img_gradient_rb img{
    border-radius: 0px;
	width: 100%;
}
.is-style-img_gradient_rb:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    background-image: linear-gradient(90deg, var(--secondary) 0%, var(--primary) 49%, var(--primary) 100%);
    height: var(--space-xs);
}
.is-style-img_gradient_rb:after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    background-image: linear-gradient(180deg, var(--secondary) 0%, var(--primary) 49%, var(--primary) 100%);
    width: var(--space-xs);
}

.is-style-img_gradient_lb{
    padding-left: var(--space-xs);
    padding-bottom: var(--space-xs);
	position: relative;
}
.is-style-img_gradient_lb img{
    border-radius: 0px;
	width: 100%;
}
.is-style-img_gradient_lb:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    background-image: linear-gradient(90deg, var(--primary) 0%, var(--primary) 51%, var(--secondary) 100%);
    height: var(--space-xs);
}
.is-style-img_gradient_lb:after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    background-image: linear-gradient(180deg, var(--secondary) 0%, var(--primary) 51%, var(--primary) 100%);
    width: var(--space-xs);
}














/* spacing fixes ******************************************************************************************/
.brxe-post-content *:first-child{
	margin-top: 0px !important;
}
.brxe-post-content *:last-child{
	margin-bottom: 0px !important;
}
.brxe-post-content p:not([class*="margin-bottom--"]){
	margin-bottom:0px;
}


.brxe-post-content > section:first-child,
.brxe-post-content > section + section,
.brxe-post-content p:first-child{
	margin-top: 0px;
}

main > section:has(.brxe-post-content > :is(section, div, figure):is(.content--full, .alignfull, .alignfull.has-background, .alignfull[class*="bg--"], .alignfull[style*="background-color"], .alignfull[class*="background-color"]):first-child){
	padding-top: 0px !important;
}

main > section:has(.brxe-post-content > :is(section, div, figure):is(.content--full, .alignfull, .alignfull.has-background, .alignfull[class*="bg--"], .alignfull[style*="background-color"], .alignfull[class*="background-color"]):last-child){
	padding-bottom: 0px !important;
}




:root{
	--margin-before-section: var(--section-padding-block, var(--section-space-l));
	--margin-after-section: var(--section-padding-block, var(--section-space-l));
	--padding-inside-full-width-sections: var(--section-padding-block);
}



/* Elements directly before full sections should have a gap between them and the section */
/* .brxe-post-content > *:not(:is(section, div):is(.content--full, .alignfull, .content--full.has-background, .content--full[class*="bg--"], .alignfull.has-background, .alignfull[class*="bg--"])):has(+ :is(section, div):is(.content--full, .alignfull, .content--full.has-background, .content--full[class*="bg--"], .alignfull.has-background, .alignfull[class*="bg--"])){
margin-bottom: var(--section-space-l);
} */

.brxe-post-content > *:not(:is(section, div, figure):is(.content--full, .alignfull, .content--full.has-background, .content--full[class*="bg--"], .alignfull.has-background, .alignfull[class*="bg--"])) + *:is(section, div, figure):is(.content--full, .alignfull, .content--full.has-background, .content--full[class*="bg--"], .alignfull.has-background, .alignfull[class*="bg--"]){
	/* 	--flow-spacing: var(--section-space-l); */
	margin-top: var(--r-flow-spacing, var(--margin-before-section));
}
.brxe-post-content > *:not(:is(section, div, figure):is(.content--full, .alignfull, .content--full.has-background, .content--full[class*="bg--"], .alignfull.has-background, .alignfull[class*="bg--"])):has(+ :is(section, div, figure):is(.content--full, .alignfull, .content--full.has-background, .content--full[class*="bg--"], .alignfull.has-background, .alignfull[class*="bg--"])){
	margin-bottom: 0px;
	margin-block-end: 0px;
}


/* Elements directly after full sections should have a gap between them and the section */
.brxe-post-content > :is(section, div, figure):is(.content--full, .alignfull, .content--full.has-background, .content--full[class*="bg--"], .alignfull.has-background, .alignfull[class*="bg--"]) + *:not(:is(section, div, figure):is(.content--full, .alignfull, .content--full.has-background, .content--full[class*="bg--"], .alignfull.has-background, .alignfull[class*="bg--"])){
	margin-top: var(--r-flow-spacing, var(--margin-after-section));
}

.brxe-post-content :is(section, div):is(.content--full, .alignfull):is(.has-background, [class*="bg--"], [style*='background']):not(:is([class*="padding--"], [class*="section--"])){
	padding-block: var(--padding-inside-full-width-sections, var(--section-space-l));
}







/* Group Styles ******************************************************************************************/

.wp-block-group:not([class*="gap--"]){
	gap:0;
}

section.wp-block-group.alignfull{
	padding-inline: var(--gutter);
}

.wp-block-group.alignwide {
    margin-left: 0;
    margin-right: 0;
    width: 100%;
    max-width: 100%;
}

.wp-block-group:has(section.brxe-section.content--full),
.wp-block-group.alignfull,
.brxe-post-content .alignfull,
.wp-block-group.alignwide,
.brxe-post-content .alignwide{
	max-width: 100% !important;
	grid-column: full;
	/* 	position: static; */
	position: relative;
	overflow: hidden;
	left: auto;
	right: auto;
	bottom: auto;
	top: auto;
	margin: 0;
}

.wp-block-group.alignwide,
.brxe-post-content .alignwide{
    width: 100%;
    grid-column: feature;
}

.wp-block-group.alignfull .wp-block-group__inner-container:not(:has(section)){
	margin-left: auto;
	margin-right: auto;
	max-width: var(--content-width);
	width: 100%;
}

.brxe-post-content div.wp-block-group:is(.has-background, [class*='bg--'], [style*='background']):not(.alignfull):not([class*="padding--"]) {
	padding: var(--space-l);
}

.brxe-post-content div.wp-block-group:is(.has-background, [class*='bg--'], [style*='background']):not(.alignfull):not([class*="radius--"]) {
	border-radius: var(--radius-m);
}

.wp-block-group[class*="gap--"] > *{
	--flow-spacing: var(--col-gap, var(--grid-gap));
	--flow-spacing: var(--r-flow-spacing, var(--col-gap, var(--grid-gap)));
}

.wp-block-group[class*="gap--"] .wp-block-buttons{
		--paragraph-spacing: var(--r-flow-spacing, var(--col-gap, var(--grid-gap)));
}

.wp-block-group:not(:is(.content--full, .alignfull)) + *:not([class*="margin-top--"]){
	margin-block-start: var(--flow-spacing, initial);
}




/* Column Styles ******************************************************************************************/

.wp-block-columns.is-layout-flex:not([class*="gap--"]){
	gap: var(--space-l);
}
.wp-block-columns{
	margin-bottom: 0px;
}

.wp-block-columns + *:is(p){
	--paragraph-spacing: var(--flow-spacing);
}

.brxe-post-content div.wp-block-column:is(.has-background, [class*='bg--'], [style*='background']):not(.alignfull):not([class*="padding--"]) {
	padding: var(--space-l);
}

.brxe-post-content div.wp-block-column:is(.has-background, [class*='bg--'], [style*='background']):not(.alignfull):not([class*="radius--"]) {
	border-radius: var(--radius-m);
}




/* Button Styles ******************************************************************************************/

:is(h1,h2,h3,h4,h5,h6,p,div,span, figure) + .wp-block-buttons:not([class*="margin-top--"]),
.wp-block-buttons:not([class*="margin-top--"]){
	--flow-spacing: var(--paragraph-spacing);
	margin-block-start: var(--flow-spacing, initial);
	margin-block-end: 0;
}

/* Button with Images */
/* .wp-block-button > .wp-block-button__link.wp-element-button > img:first-child{
	margin-right: var(--r-btn-img-gap, var(--space-s));
}

.wp-block-button > .wp-block-button__link.wp-element-button > img:last-child{
	margin-left: var(--r-btn-img-gap, var(--space-s));
}
.wp-block-button > .wp-block-button__link.wp-element-button > img:not(:first-child):not(:last-child){
	margin-left: var(--r-btn-img-gap, var(--space-s));
	margin-right: var(--r-btn-img-gap, var(--space-s));
} */
/* .wp-block-button > .wp-block-button__link.wp-element-button > img:has(+ img),
.wp-block-button > .wp-block-button__link.wp-element-button > img:first-child:last-child{
	--r-btn-img-gap:0;
} */

.wp-block-button.is-style-r-large-btn > .wp-block-button__link.wp-element-button > img:is(:not([style*="width:"]), [style*="width:NaN"], [style*="width: NaN"]){
	width: 50px !important;
	aspect-ratio: 1;
	height: auto;
	max-height: 56px;
}
.wp-block-button.is-style-r-large-btn .wp-block-button__link.wp-element-button{
	--btn-font-size: var(--text-xl);
	--btn-font-weight: 500;
	--btn-padding-block: var(--space-s);
	--btn-padding-inline: var(--space-m);
	--btn-text-transform: none;
	--btn-letter-spacing: 0px;
	--btn-justify-content: space-between;
}

.wp-block-button.is-style-r-large-btn .wp-block-button__link.wp-element-button *{
	font-size: var(--btn-font-size) !important;
}

.wp-block-button.is-style-r-large-btn .wp-block-button__link.wp-element-button:has(img):has(.btn-text-wrapper){
	display:flex;
	align-items:center;
	flex-direction: row;
	gap: var(--r-btn-img-gap, var(--space-xs));
}







/* Image styling ******************************************************************************************/

.wp-block-image:not(.is-resized) img{
	height:auto;
}

.wp-block-image.is-resized{
	--object-fit:contain;
  width: auto;
}

.wp-block-image.is-resized img[style*="width"]:not([style*="height"]){
	height: auto;
}
.wp-block-image.is-resized img[style*="height"]:not([style*="width"]){
	width: auto;
}

figure.size-full img{
	width:100%;
	object-fit: var(--object-fit, cover);
	object-position: center;
}

.wp-block-image{
	margin-left:0px;
	margin-right:0px;
	display: flex;
	flex-direction: column;
}
/* .wp-block-image:not([class*="margin-bottom--"]){
margin-bottom:0px;
}
.wp-block-image:not([class*="margin-top--"]){
margin-top:0px;
} */

/* .wp-block-image:is([class*="margin-top--"], [class*="margin-bottom--"]) + *{
margin-top:0px;
} */
div.wp-block-image{
	margin-block: var(--figure-spacing, var(--flow-spacing));
}
.wp-block-image figcaption{
	margin-bottom: 0px;
	font-size: 15px;
	font-style: italic;
	padding-left: 12px;
	padding-right: 12px;
	margin-top: 0.75em;
}
.wp-block-image:not(.alignfull) + *{
	margin-top: 0px !important;
}






/* Spacers ******************************************************************************************/

.wp-block-spacer,
.wp-block-spacer + *,
.wp-block-fsb-flexible-spacer,
.wp-block-fsb-flexible-spacer + *{
	margin-top: 0px !important;
}




/* Separators ******************************************************************************************/

.brxe-post-content *:has(+ .wp-block-separator):not([class*="margin-bottom--"]){
	margin-block-end: 0px !important;
}

.wp-block-separator + *:not([class*="margin-top--"]){
	margin-block-start: var(--flow-spacing, initial) !important;
}



/* Gallery ******************************************************************************************/

.wp-block-gallery{
	--gallery-block--gutter-size: var(--grid-gap, var(--space-m));
	display: grid !important;
	grid-template-columns: var(--grid-3);
}
.wp-block-gallery > .wp-block-image{
	width:100% !important;
}
.wp-block-gallery:not(.is-cropped) > .wp-block-image a{
	display: flex;
	align-items: center;
	justify-content: center;
}

.wp-block-gallery:not(.is-cropped) figure.wp-block-image{
	margin:0px !important;
}

.wp-block-gallery.is-cropped .wp-block-image{
	border-radius: var(--radius-l);
	border: 1px solid var(--base-trans-10);
	box-shadow: 0px 0px 14px -3px rgba(0, 0, 0, 0.1);
	overflow: hidden;
	transition: 0.3s ease-in-out;
}
.wp-block-gallery.is-cropped .wp-block-image:hover{
	box-shadow: 0px 0px 14px 0px rgba(0, 0, 0, 0.35);
}

.wp-block-gallery.wp-block-gallery.wp-block-gallery .wp-block-image figcaption{
	background: var(--primary);
	margin: 0;
	padding: var(--space-xxs, var(--space-xs));
	position: static;
	flex-grow: 0;
	flex-basis: auto;
}

@media only screen and (max-width: 767px) {
	.wp-block-gallery{
		grid-template-columns: var(--grid-2);
		--gallery-block--gutter-size: var(--space-s);
	}
}

@media only screen and (max-width: 479px) {
	.wp-block-gallery{
		grid-template-columns: var(--grid-1);
	}
}





/*  Cover ******************************************************************************************/

.wp-block-cover{
	padding: var(--section-space-m) var(--gutter) !important;
}
.wp-block-cover.alignfull .wp-block-cover__inner-container{
	max-width: var(--content-width);
}