
/* Smoooth Scrolling */
html{scroll-behavior:smooth;}
#vision,
#mission {scroll-margin-top:100px;}





/* Responive Styles */
@media (min-width:781px) {
	.mobonly {display:none !important;}
}
@media (max-width:780px) {
	.dtonly {display:none !important;}
	.reorder .wp-block-column:first-of-type {order:2 !important;}
	.reorder .wp-block-column:last-of-type {order:1 !important;}
	
	*[style*="padding-top:15vh"] {padding-top:50px !important}  
	*[style*="padding-bottom:15vh"] {padding-bottom:50px !important}  
	
	.entry-content .wp-block-icon {margin-bottom:15px !important} 	
}





/* Mobile Fonts */
@media (max-width:1024px) {
	h1 br, h2 br {display:none !important;}
	h1,
	h2.has-x-large-font-size {font-size:50px !important}
	h2 {font-size:35px !important}
	h3 {font-size:25px !important}	
	*[style*="padding-top:200px"] {padding-top:60px !important}   	
	*[style*="padding: 120px"],
	*[style*="padding:120px"] {padding:60px !important}
	*[style*="padding: 60px"],
	*[style*="padding:60px"] {padding:40px !important}
	*[style*="padding-top:120px"] {padding-top:60px !important}
	*[style*="padding-bottom:120px"] {padding-bottom:60px !important}
	*[style*="padding-left:120px"] {padding-left:60px !important}
	*[style*="padding-right:120px"] {padding-right:60px !important}
	*[style*="padding-left:60px"] {padding-left:4vw !important}
	*[style*="padding-right:60px"] {padding-right:4vw !important}
	*[style*="padding: 120px 4vw"] {padding-top:60px !important; padding-bottom:60px !important}
	.wp-block-spacer[style*="height:120px"],
	.wp-block-spacer[style*="height:125px"] {height:60px !important}
	.wp-block-spacer[style*="height:100px"],
	.wp-block-spacer[style*="height:7.5vh"] {height:50px !important}
	.wp-block-spacer[style*="height:60px"],
	.wp-block-spacer[style*="height:50px"] {height:25px !important}
	*[style*="margin-top:120px"] {margin-top:60px !important}
	*[style*="margin-bottom:120px"] {margin-bottom:60px !important}
	.wp-block-spacer[style*="height:120px"] {height:60px !important}
}
@media (max-width:780px) {
	.dt-only {display:none !important;}
	.reorder .wp-block-column:first-of-type {order:2 !important;}
	.reorder .wp-block-column:last-of-type {order:1 !important;}
	h1,
	h2.has-x-large-font-size {font-size:40px !important}
	h2 {font-size:30px !important}
	h3 {font-size:25px !important}
	h4 {font-size:21px !important}		
	p.has-medium-font-size {font-size:100% !important;}
}
@media (min-width:780px) {
	.mob-only {display:none !important;}
}





/* Fade effects */
.entry-content .wp-block-group{opacity:0;transition:opacity 0.8s ease;}
.entry-content .wp-block-group.is-visible{opacity:1;}





/* Bullet Lists */
.entry-content ul.wp-block-list {margin:0; padding:0;}
.entry-content ul.wp-block-list li {
    list-style-type: none;
	margin:5px;
	padding:0 0 0 18px;
	position:relative;
}
.entry-content ul.wp-block-list li:before {
	content:"•";
	color: #1EA7E1 !important;
	position:absolute;
	top:0px;
	left:0px;
}






/* Gradient Text */
h1 mark, 
h2 mark {
  background: linear-gradient(to right, #1EA7E1, #A6CE39);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  color: transparent;
}







/* Arrow on Buttons */
.wp-block-button__link,
.wp-block-read-more {
    display: inline-flex;
    align-items: center;
    gap: 12px;
}
.wp-block-button__link::after,
.wp-block-read-more::after {
    content: "→";
    font-size: 1em;
	font-weight:400 !important;
    line-height: 1;
    transition: transform 0.2s ease;
}





/* Logo for mobile */
@media (max-width:540px) {
	.custom-logo {width:180px !important;}
}





/* Call us link in header */
.callus {position:relative; padding-left:50px;}
.callus p {line-height:1.3em !important;}
.callus a {text-decoration:none; font-weight:500;}
.callus::before {
    content: "";
	background-image:url('data:image/svg+xml,<svg width="492" height="550" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M139.662 19.325S131.412 0 118.812 0c-12.4 0-18.85 5.725-23.15 9.675-4.3 3.95-76.25 63.075-76.25 63.075S-1.513 91.025.087 125.4c1.35 34.375 8.075 83.3 42.975 151.45 34.65 68 121.375 171.9 176.175 208.425 0 0 50.775 38.95 98.025 54.775 13.725 4.325 41.175 9.95 47.575 9.95 6.5 0 17.975 0 31.15-9.625 13.4-9.725 88.575-70.175 88.575-70.175s18.4-16.625-2.975-35.95c-21.475-19.325-86.675-62.3-100.625-73.6-13.975-11.475-33.875-6.425-42.475 1.35-8.575 7.825-23.9 20.7-25.775 22.325-2.8 2.15-10.475 9.125-19.075 5.65-10.95-4.325-55.85-28.7-97.475-85.65-41.375-56.9-45.925-75.5-52.1-95.6a14.005 14.005 0 0 1 5.625-16.425c6.2-4.3 29.025-23.325 29.025-23.325s14.775-14.575 8.6-31.75c-6.175-17.175-47.65-117.9-47.65-117.9Z" fill="%231EA7E1"/></svg>');
	background-size:40%;
	background-position:center center;
	background-repeat:no-repeat;
	position:absolute; 
	left:0px;
	top:0px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    margin-right: 10px;
    border-radius: 50%;
    background-color: rgba(30,167,225,0.08);
    font-size: 10px;
    line-height: 1;
}






/* Left Menu */
.sidebar .wp-block-navigation.is-vertical .wp-block-navigation__container {width:100%;}
.sidebar .wp-block-navigation.is-vertical .wp-block-navigation-item{width:100%;border-bottom:1px solid rgba(255,255,255,0.1);}
.sidebar .wp-block-navigation.is-vertical .wp-block-navigation-item__content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 2vh 1rem;
    text-decoration: none;
    transition: all 0.25s ease;
	opacity:0.75;
	background:rgba(255,255,255,0);
	border-left:4px solid transparent;
}

/* Arrow */
.sidebar .wp-block-navigation.is-vertical .wp-block-navigation-item__content::after {
    content: "→";
    opacity: 0;
    transform: translateX(-8px);
    transition: all 0.3s ease;
}
.sidebar .wp-block-navigation.is-vertical .wp-block-navigation-item__content:hover,
.sidebar .wp-block-navigation.is-vertical .current-menu-item .wp-block-navigation-item__content {
    opacity:1;
	background:rgba(255,255,255,0.1);
	border-left:4px solid var(--wp--preset--color--custom-light-green);
}
.sidebar .wp-block-navigation.is-vertical .wp-block-navigation-item__content:hover::after,
.sidebar .wp-block-navigation.is-vertical .current-menu-item .wp-block-navigation-item__content::after {
    opacity: 1;
    transform: translateX(0);
}

@media (min-width:781px) {
	.sticky-sidebar{position:sticky;top:3vh;align-self:flex-start;height:fit-content;}	
}
@media (max-width:780px) {
	.wp-block-column.sidebar { padding:10px !important;}
}








/* Curves at edge of blocks */
.dark-curve-bottom,
.light-curve-top,
.light-curve-bottom {position:relative;overflow:hidden;}
.dark-curve-bottom::after,
.light-curve-top::before,
.light-curve-bottom::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 102%;
    aspect-ratio: 1060 / 37;
    transform: translateX(-50%);
    background: url("/wp-content/uploads/2026/09/dark-curve-bottom.svg") center / 100% 100% no-repeat;
    pointer-events: none;
}
.light-curve-top::before {
  	bottom:auto;
    top: 0;
    background: url("/wp-content/uploads/2026/09/light-curve-top.svg") center / 100% 100% no-repeat;
}
.light-curve-bottom::after {
    background: url("/wp-content/uploads/2026/09/light-curve-bottom.svg") bottom center / 100% 100% no-repeat;
}






/* SVG backgrounds */
svg.has-custom-blue-color,
svg.has-custom-blue-color {position:relative;}

svg.has-custom-green-color,
svg.has-custom-blue-color {
	border-radius:10px;    
	padding:4px;   
}
svg.has-custom-green-color {background:rgba(122,170,31,0.1);}
svg.has-custom-blue-color {background:rgba(30,167,225,0.1);}







/* Form Elements */
.wpcf7 p {padding:0}
.wpcf7-form-control-wrap {padding:0; display:block}
.wpcf7-list-item {display:block !important; padding:0; margin:0}
.wpcf7-form-control-wrap {display:block;position:relative}

.wpcf7 input, .wpcf7 textarea, .wpcf7 select { font-family:inherit; display:block; width:100%; min-width:100%; padding:calc(0.667em + 2px) 0; margin:0.25em 0; text-indent:1em; border:1px solid black; background:white; color:black; font-size:100%; border-radius:0.5rem; }
.wpcf7 textarea {text-indent:0; padding:calc(0.667em + 2px); width:calc(100% - 1.6em); min-width:calc(100% - 1.6em);}
.wpcf7 input:focus, .wpcf7 textarea:focus, .wpcf7 select:focus {background:white}

.wpcf7 input.wpcf7-date,
.wpcf7 select {height:45px; line-height:45px; padding:0; text-indent:0.5em; 
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

/* Custom select dropdown arrow */
.wpcf7 select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%230d223b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 16px center;
    background-size: 16px 16px;
    padding-right: 35px;
}


input[type="date"]::-webkit-calendar-picker-indicator{width:45px; height:45px; background:white; font-size:45px; display:inline-block;}

input.wpcf7-not-valid {border-color:red}

::-webkit-input-placeholder {color:#777}
:-moz-placeholder {color:#777}
::-moz-placeholder {color:#777}
:-ms-input-placeholder {color:#777}
.wpcf7 p br {display:none}
.wpcf7 input[type=submit] {margin:0 !important; padding:calc(0.667em + 2px) 0; width:auto; min-width:100%; border:0;  display:block; background:black; color:white; font-weight:bold; text-indent:0; font-family:var(--wp--preset--font-family--body)}

	/* Contact Form 7 output */
	div.wpcf7-response-output {font-weight:bold; font-size:100%; line-height:125%; border:0 !important; padding:0 !important; margin:0 !important; color:#171819; text-align:center;}
	.invalid div.wpcf7-response-output {color:red}
	.wpcf7-not-valid-tip {display:block; padding:0; color:red !important; font-size:90%}





/* Check lists */
.wp-block-list.checks{list-style:none !important; margin:2rem 0  !important;padding:0  !important;}
.wp-block-list.checks li{list-style:none !important; position:relative;padding-left:33px  !important;margin:10px 0  !important;}
.wp-block-list.checks li::before {
	content: ""  !important;
	background: url('data:image/svg+xml,<svg width="11" height="9" viewBox="0 0 11 9" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M10 0L3.5 6.4L1 4L0 5L3.5 8.6L11 1L10 0Z" fill="%23A6CE39"/></svg>');
	background-repeat: no-repeat;
	background-size: 100%;
	background-position: center center;
	position: absolute;
	width: 18px;
	height: 18px;
	left: 0;
	top: 3px  !important;
	line-height: 1;
	color: #A6CE39;
}
	
	
	



/* Carousel container */
.carousel {
  --carousel-gap:30px;
  --carousel-slides: 3;
  position: relative;
  width: 100%;
}

/* Scrolling track */
.carousel .wp-block-post-template {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: var(--carousel-gap) !important;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  margin: 0 !important;
  padding: 0 0 10px !important;
  cursor: grab;
}

.carousel .wp-block-post-template::-webkit-scrollbar {
  display: none;
}

.carousel .wp-block-post-template.is-dragging {
  cursor: grabbing;
  scroll-snap-type: none;
  scroll-behavior: auto;
  user-select: none;
}

/* Individual slides, including a peek of the next slide */
.carousel .wp-block-post-template > li {
  flex: 0 0 calc(
    (100% - var(--carousel-gap) * (var(--carousel-slides) - 1))
    / var(--carousel-slides)
  ) !important;
  min-width: 0;
  box-sizing: border-box;
  scroll-snap-align: start;
}

/* Top-right arrows */
.carousel-controls{display:flex;justify-content:flex-end;gap:10px;margin-bottom:24px;}
.carousel-arrow{display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px solid currentColor;border-radius:50%;background:transparent;color:inherit;font-size:24px;line-height:1;cursor:pointer;transition:background 0.2s,color 0.2s;}
.carousel-arrow:hover{background:#0a1a2e;color:#fff;}
.carousel-arrow:disabled{opacity:0.3;cursor:default;}

/* Pagination bullets */
.carousel-pagination{display:flex;justify-content:center;align-items:center;gap:9px;margin-top:20px;}
.carousel-dot{width:9px;height:9px;padding:0;border:0;border-radius:50%;background:white;opacity:0.3;cursor:pointer;transition:opacity 0.2s,transform 0.2s;}
.carousel-dot.is-active{opacity:1;transform:scale(1.25);}




/* Tablet */
@media (max-width: 1024px) {
	.carousel{--carousel-slides:2.2;}
}

/* Mobile */
@media (max-width: 600px) {
	.carousel{--carousel-slides:1.15;--carousel-gap:16px;}
	.carousel {margin-top:25px !important;}
	.carousel-controls{display:none !important;}
}

/* Accessibility */
@media (prefers-reduced-motion: reduce) {
	.carousel .wp-block-post-template{scroll-behavior:auto;}
}




	
	

/* Yoast FAQ */
.schema-faq-section {border-radius:20px; border:1px solid rgba(255,255,255,0.1); background:rgba(255,255,255,0.05); margin-bottom:1rem; }
.schema-faq-question {display: block;padding:1.5rem 4rem 1.5rem 1.5rem; border-radius:30px; cursor: pointer;font-weight:600; font-size: 112%; line-height: 125%; position: relative; }
.schema-faq-question:after {content: "+";position: absolute;right:1rem; top:1.5rem; width:20px; height:20px; background:rgba(255,255,255,0.1); color:white; border-radius:20px; text-align:center; font-size:16px; line-height:16px; padding:0; transition: transform .3s}
.schema-faq-question.active:after {content:"−"; background-color:#1EA7E1;}
.schema-faq-question.active {}
.schema-faq-section:has(.schema-faq-question.active){border-color:rgba(30,167,225,0.5) !important;}
.schema-faq-answer {display:none;margin: 0;padding:0 1.5rem 1.5rem ;border-top: none;}

	@media screen and (max-width:780px) {
		.schema-faq-section {border-radius:20px;}
		.schema-faq-question {padding:0.75rem 3rem 0.75rem 1.25rem; border-radius:15px; font-size:100%;}
		.schema-faq-question:after {top:1rem}
		.schema-faq-answer {padding:0 1.25rem 1.5rem }	
	}	
	
	
	
	


/* Blog Feed */
.taxonomy-category a {text-decoration:none;}


/* Single Blog */
.wp-block-categories-list,
.wp-block-categories-list li {list-style-type:none !important; margin:0; padding:2px 0;}

.single-post .entry-content h2,
.single-post .entry-content h3,
.single-post .entry-content h4,
.single-post .entry-content h5 {margin-top:2rem !important;}

/* Pagination */
.wp-block-query-pagination,
.wp-block-query-pagination-numbers,
.pagination,
.nav-links {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 15px;
}

/* Page numbers and navigation links */
.wp-block-query-pagination a,
.wp-block-query-pagination-numbers a,
.pagination a,
.nav-links a,
.page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 32px;
    min-height: 32px;
    padding: 8px;
    border: 1px solid #0c1e361c;
    border-radius: 10px;
    text-decoration: none;
    line-height: 1;
	background-color:white;
    transition: background-color 0.2s ease,
                color 0.2s ease,
                border-color 0.2s ease;
}

/* Hover effect */
.wp-block-query-pagination a:hover,
.wp-block-query-pagination-numbers a:hover,
.pagination a:hover,
.nav-links a:hover,
.page-numbers:hover {
    background-color: #222;
    color: #fff;
    border-color: #222;
}

/* Current page */
.page-numbers.current,
.wp-block-query-pagination-numbers .current {
    background-color: #222;
    color: #fff;
    border-color: #222;
    font-weight: 600;
}

/* Previous and next links */
.wp-block-query-pagination-previous,
.wp-block-query-pagination-next {
    padding-left: 18px;
    padding-right: 18px;
}


@media screen and (max-width:780px) {
	.is-position-sticky { padding-top:50px;}
}







/* Download File */
.wp-block-file {display: flex;
	display: flex;
	    flex-wrap: wrap;
	    justify-content: space-between;
	    align-items: center;
	    align-content: center;
	    overflow: auto;
	    flex-direction: row;

}
.wp-block-file a {font-weight:bold !important; text-decoration:none; font-size:1.25rem !important;}
.wp-block-file .wp-element-button {
    font-size: 1rem !important;
background: linear-gradient(0deg, rgb(22, 144, 196) 0%, rgb(30, 167, 225) 100%) !important;
	border-radius: 10px;
    font-family: var(--wp--preset--font-family--plus-jakarta-sans);
    font-style: normal;
    font-weight: 600;
    line-height: 1.1;
    padding: 15px 25px 15px 25px;
	margin: 0 !important;
}

.wp-block-file .wp-element-button::after {
    content: "↓";
    font-size: 1em;
    font-weight: 400 !important;
    line-height: 1;
    transition: transform 0.2s ease;
	margin-left:12px;
}