/*
Theme Name: Lumen
Description: Creative & Design Agency Divi Theme
Author: Divi Layouts Pro
Author URI: https://divi-layouts-pro.com/
Template: Divi
Version: 1.0
*/

/** GENERAL **/
body .container, body .et_pb_row, body .et_pb_slider .et_pb_container, body .et_pb_fullwidth_section .et_pb_title_container, body .et_pb_fullwidth_section .et_pb_title_featured_container, body .et_pb_fullwidth_header:not(.et_pb_fullscreen) .et_pb_fullwidth_header_container {
    max-width: calc(100vw - 80px);
}
.et_pb_row{
	width: 100%;
}
.et-fb-root-ancestor body.single-project #lum-sidebar,
.et-fb-root-ancestor body.single-post #lum-sidebar,
.et-fb-root-ancestor body.page #lum-sidebar{
	display: none !important;
}
.lum-vertical-center{
	display: flex;
	flex-direction: column;
	justify-content: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -moz-box;
	display: -ms-flexbox;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-moz-box-orient: vertical;
	-moz-box-direction: normal;
	-ms-flex-direction: column;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-moz-box-pack: center;
	-ms-flex-pack: center;
}
.lum-fullwidth-row{
	max-width:100% !important;
	width: 100% !important;
}
@media only screen and (min-width:767px) {
	.lum-title .et_pb_text_inner{
		display: flex;
		align-items: baseline;
		gap: 15px;
	}
}
.lum-pb-0{
	padding-bottom: 0px;
}
@keyframes lum-rotating {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
.lum-rotating{
	animation: lum-rotating 10s linear infinite;
}
.lum-subtitle-dot{
	position:relative;
}
.lum-subtitle-dot:before,
.lum-subtitle-dot-little:before,
.lum-services-list .et_pb_module_header:before{
	content: '';
    width: 10px;
    height: 10px;
    border-radius: 100%;
    background: black;
    display: block;
    position: absolute;
    top: 40%;
    left: 20px;
    transform: translateY(-50%);
}
.lum-subtitle-dot-little:before,
.lum-services-list .et_pb_module_header:before{
	width: 7px;
    height: 7px;
    position: relative;
    display: inline-flex;
    transform: none;
    left: auto;
    margin-right: 10px;
}
.lum-services-list .et_pb_module_header:before{
	vertical-align: middle;
	transition: all 0.3s ease;
}
.lum-services-list:hover .et_pb_module_header:before{
	width: 10px;
    height: 10px;
}
.lum-services-list span.et-pb-icon{
	transition: all 0.3s ease;
}
.lum-services-list:hover span.et-pb-icon{
    transform: rotate(45deg);
}

.lum-li li{
	list-style: none !important;
	border-bottom: 1px solid black;
	padding: 5px 0;
}
.lum-li li:before{
	content: '';
    width: 4px;
    height: 4px;
    display: inline-flex;
    border-radius: 100%;
    background: currentColor;
    margin-right: 10px;
    transition: all 0.2s ease-out;
}
.lum-li li:hover{
	border-width:2px;
}
.lum-li li:hover:before{
	width: 6px;
    height: 6px;
}
/* lateral menu */
#lum-sidebar {
	position: fixed;
	top: 0;
	right: -480px;
	width: 480px;
	height: 100%;
	transition: all .4s cubic-bezier(.77, 0, .175, 1);
	z-index: 1000;
	padding: 1em;
}
#lum-sidebar.lum-active {
	right: 0;
}
#lum-overlay.lum-active {
	display: block;
}
#lum-menu-toggle {
	z-index: 1100;
	cursor:pointer;
}
/*Hamburger Menu Icon*/
.mk-hamburger-icon { position: relative; cursor: pointer; display:inline-flex; }
.mk-hamburger-icon-holder { width:46px; height:46px; border-radius:100%; background:black; display:flex; justify-content:center; align-items:center; }
.mk-hamburger-icon .mk-hamburger-icon-lines { display:flex; justify-content:space-between; flex-direction:column; align-items:center; transform: rotate(45deg); transition: all 0.3s cubic-bezier(0.25, 0.46, 0.35, 0.94); }
.mk-hamburger-icon .mk-hamburger-icon-line { width:14px; height:2px; display:block; background:white;  }
.mk-hamburger-icon .mk-hamburger-icon-line-m { width:28px; margin:4px 0; }

.mk-hamburger-icon:hover .mk-hamburger-icon-lines { transform: rotate(0deg);  }

@media only screen and (max-width:1024px) {
    .mk-hamburger-icon-holder { width:40px; height:40px; }
    .mk-hamburger-icon .mk-hamburger-icon-line { width:11px; }
    .mk-hamburger-icon .mk-hamburger-icon-line-m { width:22px; margin:3px 0; }

}
@media only screen and (max-width:767px) {
    .mk-hamburger-icon-holder { width:36px; height:36px; }
    .mk-hamburger-icon .mk-hamburger-icon-line { width:9px; }
    .mk-hamburger-icon .mk-hamburger-icon-line-m { width:19px; margin:3px 0; }
}
/* highlight */
::selection {
    background: black;
    color: white;
}
/* typography */
body h1{
	font-size: 3.8vw;
}
body h2{
	font-size: 3.1vw;
}
.lum-fw-500 h4,
.lum-fw-500 h2,
.lum-fw-500 h1,
.lum-fw-500 h6,
.lum-fw-500{
	font-weight:500 !important;
}
.lum-stroke{
	-webkit-text-stroke-color: #000000;
	color: #FFFFFF00;
	-webkit-text-stroke-width: 1px;
	font-size: 70px;
	font-weight: 600;
}
@media (max-width:767px){
	.lum-stroke{
		font-size:35px;
	}
}
/* search */
.lum-search-icon::after {
    content: '\55';
    font-family: ETModules;
    font-size: 20px;
    color: #000;
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%) scaleX(-1);
    pointer-events: none;
    z-index: 9;
}

.lum-search-icon .et_pb_searchsubmit {
    z-index: 10;
}
/* button */
html body #page-container .et_pb_section .lum-btn.et_pb_promo .et_pb_promo_button.et_pb_button,
html body #page-container .et_pb_section .lum-btn:not(.lum-slide-text),
.lum-blog .more-link,
html body #page-container .et_pb_section .lum-pricing-tables .et_pb_pricing_table .et_pb_button{
	padding-right: 40px !important;
	overflow:hidden !important;
	transition: all 0.4s ease-in-out;
	-webkit-transition: all 0.4s ease-in-out;
	-moz-transition: all 0.4s ease-in-out;
}
html body #page-container .et_pb_section .lum-btn.et_pb_promo .et_pb_promo_button.et_pb_button:hover,
html body #page-container .et_pb_section .lum-btn:not(.lum-slide-text):hover,
.lum-blog .more-link:hover,
html body #page-container .et_pb_section .lum-pricing-tables .et_pb_pricing_table .et_pb_button:hover{
	padding-left: 40px !important;
}
html body #page-container .et_pb_section .lum-btn.et_pb_promo .et_pb_promo_button.et_pb_button:after,
html body #page-container .et_pb_section .lum-btn.et_pb_promo .et_pb_promo_button.et_pb_button:before,
html body #page-container .et_pb_section .lum-btn:not(.lum-slide-text):after,
html body #page-container .et_pb_section .lum-btn:not(.lum-slide-text):before,
.lum-blog .more-link:before,
.lum-blog .more-link:after,
html body #page-container .et_pb_section .lum-pricing-tables .et_pb_pricing_table a.et_pb_button:before,
html body #page-container .et_pb_section .lum-pricing-tables .et_pb_pricing_table a.et_pb_button:after{
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	opacity: 1;
	position: absolute;
	right: -1px;
    top: -1px;
	border: 1px solid black;
	border-radius: 50%;
	color: black;
	content: "•";
	font-size: 25px;
	font-family: 'Poppins' !important;
	line-height: 1em;
	transition: all 0.4s ease-in-out;
	-webkit-transition: all 0.4s ease-in-out;
	-moz-transition: all 0.4s ease-in-out;
}
html body #page-container .et_pb_section .lum-btn.et_pb_promo .et_pb_promo_button.et_pb_button:before,
html body #page-container .et_pb_section .lum-btn:not(.lum-slide-text):before,
html body #page-container .et_pb_section .lum-pricing-tables .et_pb_pricing_table .et_pb_button:before{
	right:auto;
	left:-17px;
}
html body #page-container .et_pb_section .lum-btn.et_pb_promo .et_pb_promo_button.et_pb_button:hover:before,
html body #page-container .et_pb_section .lum-btn:not(.lum-slide-text):hover:before,
html body #page-container .et_pb_section .lum-pricing-tables .et_pb_pricing_table .et_pb_button:hover:before{
	left:24px;
}
html body #page-container .et_pb_section .lum-btn.et_pb_promo .et_pb_promo_button.et_pb_button:hover:after,
html body #page-container .et_pb_section .lum-btn:not(.lum-slide-text):hover:after,
.more-link:hover:after,
html body #page-container .et_pb_section .lum-pricing-tables .et_pb_pricing_table .et_pb_button:hover:after{
	right:-45px;
}
.lum-blog .more-link{
	width: fit-content;
    border: 1px solid black;
    border-radius: 25px;
    position: relative;
	padding-left: 15px;
	margin-top:25px;
	display: block;
}
.lum-blog .more-link:hover{
	padding-right: 15px !important;
}
.lum-blog .more-link:before{
	right:auto;
	left:-35px;
}
.lum-blog .more-link:hover:before {
    left: -1px;
}
/* testimonials */
.et_pb_testimonial_description{
	margin-left:0px !important;
}
.lum-testimonial .et_pb_testimonial_portrait {
    position: absolute;
    bottom: 6%;
}
.lum-testimonial  span.et_pb_testimonial_author{
	margin-top:20px !important;
}
.lum-testimonial  span.et_pb_testimonial_author, 
.lum-testimonial .et_pb_testimonial_meta {
    padding-left: 90px !important;
	margin-top: 0px;
}
.lum-testimonial:before{
	border-radius: 0px !important;
    background-size: 32px !important;
    content: "" !important;
    background: url(/wp-content/uploads/2025/04/double-quotes.png);
    width: 32px;
    height: 30px;
    top: 50px;
    background-repeat: no-repeat;
    right: 60px;
    left: auto;
}
@media (max-width:1500px){
	body .et_pb_testimonial.lum-testimonial{
		padding-top: 100px !important;
		padding-right: 20px !important;
		padding-left: 20px !important;
	}
}

#lum-testimonials-col-fw button.slide-arrow.next-arrow.slick-arrow {
    bottom: 0px;
    top: auto;
}
#lum-testimonials-col-fw button.slide-arrow.prev-arrow.slick-arrow {
    bottom: 0;
    top: auto;
    right: 120px;
    left: auto;
}
#lum-testimonials-col-fw .slick-track {
    display: flex;
}
/* accordion */
.lum-accordion .et_pb_toggle{
    margin-bottom: 0px !important;
}
.lum-accordion .et_pb_accordion_item.et_pb_toggle_open .et_pb_toggle_title:before {
	display: block;
	content: "\4b" !important;
}
.lum-accordion .et_pb_toggle_title:before {
    border: 1px solid black;
    border-radius: 100%;
    display: flex;
    text-indent: -1px;
    padding: 5px;
}
.lum-accordion .et_pb_accordion_item:before{
	content: "01";
    position: absolute;
    left: 0;
    font-size: 12px;
}
.lum-accordion .et_pb_accordion_item:nth-child(2):before{
	content: "02";
}
.lum-accordion .et_pb_accordion_item:nth-child(3):before{
	content: "03";
}
.lum-accordion .et_pb_accordion_item:nth-child(4):before{
	content: "04";
}
.lum-accordion .et_pb_accordion_item:nth-child(5):before{
	content: "05";
}
.lum-accordion .et_pb_accordion_item {
	padding-left: 55px;
	padding-top: 40px;
	padding-bottom: 40px;
}
@media (max-width: 767px) {
	.lum-accordion .et_pb_toggle_title {
		padding-right: 30px !important;
	}
	.lum-accordion .et_pb_toggle {
		padding-left: 35px !important;
	}
	.lum-accordion .et_pb_toggle_title:before {
		padding: 4px;
		font-size: 16px !important;
	}
}
/* services */
.lum-services-col{
	min-height:60vh;
	border: 1px solid black;
    border-left: none;
}
.lum-services-col:before{
	content: "01";
    position: absolute;
    left: 50%;
    top: 2vh;
}
.lum-services-col:nth-child(2):before{
	content: "02";
}
.lum-services-col:nth-child(3):before{
	content: "03";
}
.lum-services-col:nth-child(4):before{
	content: "04";
	color:white;
}
/* person */
.lum-person .et_pb_team_member_image{
    max-width: 100%;
    text-align: left;
}
@media (min-width: 980px) {
	.lum-person .et_pb_module_header {
		padding-top: 22px;
	}
}
.lum-person ul.et_pb_member_social_links {
    margin-top: 0px !important;
}
.lum-person .et_pb_team_member_image{
	overflow:hidden;
}
.lum-person .et_pb_team_member_image img{
	transition: all 0.3s ease-in-out;
}
.lum-person:hover .et_pb_team_member_image img{
	transform: scale(1.02);
}
/* pricing tables */
.lum-pricing-tables .et_pb_pricing_table_wrap{
	gap:2%;
	justify-content: center;
}
@media (min-width:980px){
	.lum-pricing-tables .et_pb_pricing_table_wrap{
		flex-wrap: nowrap;
	}
}
@media (max-width:980px){
	html body #page-container .et_pb_section .lum-pricing-tables .et_pb_pricing_table{
		margin-top:50px !important;
	}
}
.lum-pricing-tables .et_pb_pricing{
	width:fit-content;
	margin:auto;
}
.lum-pricing-tables .et_pb_pricing_table{
	padding: 5% 3%;
}
/* email optin */
.lum-email-optin input#et_pb_signup_email {
    border-radius: 0px;
}
.lum-email-optin a.et_pb_newsletter_button.et_pb_button {
    width: auto;
    position: absolute;
    right: 0px;
    top: 10px;
}
/* navigation */
.wp-pagenavi{
	text-align: center;
}
.wp-pagenavi span.pages{
	display: none;
}
.wp-pagenavi a, .wp-pagenavi span.current{
	border-radius: 100% !important;
    background: transparent !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    width: 29px;
    height: 29px;
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
	border: none;
}
.wp-pagenavi span.current{
	border: 1px solid #000000 !important;
}
.wp-pagenavi .nextpostslink,
.wp-pagenavi .previouspostslink{
	font-size: 0px !important;
}
.wp-pagenavi .nextpostslink:before,
.wp-pagenavi .previouspostslink:before{
	content: "\24";
    font-family: ETmodules;
    font-size: 27px;
    font-weight: 100;
    margin-left: 5vw;
    top: 6px;
    position: relative;
}
.wp-pagenavi .previouspostslink:before{
	content: "\23";
	margin-left: 0px;
	margin-right: 5vw;
}
/** MENU **/
header .et-menu a, .et-menu a:hover{
	opacity:1 !important;
	background-color:unset !important;
}
header .et-menu li li a{
	font-weight:400 !important;
	transition: all 0.3s ease-in-out;
}
header .nav li ul{
	width:300px;
}
header .et-menu li li a {
    width: 250px;
}
header ul.sub-menu {
	font-family: "roboto mono";
	font-weight: 100 !important;
	box-shadow: none !important;
	left: 25px !important;
}
header ul.sub-menu a:before{
	content: '';
    position: relative;
    display: inline-block;
    top: calc(50% + 1px);
    vertical-align: middle;
    height: 1px;
    width: 0;
    background: currentColor;
    opacity: 0;
    transition: all 0.3s cubic-bezier(.25,.59,.29,.96);
}
header ul.sub-menu .current-menu-item a:before,
header ul.sub-menu a:hover:before{
	opacity: 1;
	transform: translateX(0);
	width: 17px;
	left: -9px;
}
header .et_pb_menu .et-menu>li {
	padding-left: 22px;
	padding-right: 22px;
}
header .et-menu .menu-item-has-children>a:first-child{
	padding-right:0px !important;
}
header .et-menu .menu-item-has-children>a:first-child:after{
	display: none;
}
header .et_pb_menu--without-logo .et_pb_menu__menu>nav>ul>li{
	vertical-align: middle;
    display: flex;
    align-items: center;
	padding-bottom: 30px;
}
header .et_pb_menu .et-menu>li:before{
	content: '';
    width: 6px;
    height: 6px;
    display: inline-flex;
    border-radius: 100%;
    background: currentColor;
    margin-right: 10px;
    transition: opacity .2s ease-out, transform .27s ease;
	opacity:0;
	transform:translateX(-6px);
	transition: all 0.3s ease;
}
header .et_pb_menu .et-menu>li.current-menu-parent:before,
header .et_pb_menu .et-menu>li:hover:before{
	opacity:1;
	transform:translatex(0px);
}
header .et_pb_menu--without-logo .et_pb_menu__menu>nav>ul>li>a {
    padding-bottom: 0px;
}
.mobile_nav.opened .mobile_menu_bar:before {
	content: "\4d";
}
@media (min-width:980px){
	header ul.sub-menu {
		border: 1px solid black !important;
	}
}
@media (max-width:980px){
	#lum-header-row{
		display:flex;
	}
	.et_mobile_menu li a{
		background-color:unset !important;
		opacity:1 !important;
		font-weight:500 !important;
		font-size:15px !important;
	}
	ul#mobile_menu1 {
		width: 80vw;
		left: -40vw;
		margin-top: 20px;
	}
	#lum-header-row .et_pb_menu__wrap{
		display: flex;
		justify-content: end;
	}
}

/** HOME **/
.lum-home-slide{
	max-width:100vw !important;
}
@media (min-width: 767px) {
	.lum-home-slide .et_pb_column{
		min-height:calc(100vh - 80px);
	}
	.lum-slide-title{
		width: 1100px;
		margin-right: auto;
		margin-left: auto;
		padding-top: 6vh;
		padding-bottom: 15vh;
	}
}
@media (max-width: 767px) {
	.lum-home-slide .et_pb_column{
		min-height: 400px;
		margin-top: 5vh;
	}
	.lum-home-slide .lum-slider-img .et_pb_image_wrap{
		text-align: center;
	}
	.lum-home-slide .lum-slider-img img{
		width:90%;
	}
}
@media only screen and (min-width:980px) {
.lum-slide-text{
	margin-top: 17.5vh !important;
	margin-bottom: -5vh !important;
	transform: translateX(18vw);
}
}
@media (min-width: 2000px) {
	.lum-slide-text{
		transform: translateX(10vw);
	}
}
@media (max-width:980px){
	.lum-slide-text{
		transform: translateX(15vw);
	}
}
.lum-slide-text:before {
    content: '';
    width: 300px;
    height: 300px;
    border-radius: 100%;
    display: block;
    background: #f2f2f2;
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
    z-index: 0;
    position: absolute;
    margin-left: -80px;
    margin-top: -80px;
}
body:not(.et-fb) .lum-slider-img{
	position: absolute; 
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-55%);
}
.lum-slider-img{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
}
body:not(.et-fb) .lum-slider-img img,
body:not(.et-fb) .lum-slide-text:before{
	transition: 2.6s cubic-bezier(.25,.46,.45,.94);
	-webkit-clip-path: circle(0 at 50% 50%);
	clip-path: circle(0 at 50% 50%);
	opacity: 0;
}
body:not(.et-fb) .lum-home-slide.slick-current .lum-slider-img img,
body:not(.et-fb) .lum-home-slide.slick-current .lum-slide-text:before{
	transition-delay: 0.5s;
    transition-duration: 0.4s;
    opacity: 1;
    -webkit-clip-path: circle(50% at 50% 50%);
    clip-path: circle(50% at 50% 50%);
}
body:not(.et-fb) .lum-home-slide .et_pb_text_inner{
	width: fit-content;
}
body:not(.et-fb) .lum-home-slide .et_pb_text_inner,
body:not(.et-fb) .lum-slide-text .et_pb_promo_description,
body:not(.et-fb) .lum-slide-text a.et_pb_button.et_pb_promo_button{
	transition: 1.6s cubic-bezier(.25,.46,.45,.94);
    -webkit-clip-path: inset(0 100% 0 0);
    clip-path: inset(0 100% 0 0);
    opacity: 0;
}
body:not(.et-fb) .lum-home-slide.slick-current .et_pb_text_inner,
body:not(.et-fb) .lum-home-slide.slick-current .lum-slide-text .et_pb_promo_description,
body:not(.et-fb) .lum-home-slide.slick-current .lum-slide-text a.et_pb_button.et_pb_promo_button{
	transition-delay: .7s;
	transition-duration: 0.4s;
	opacity: 1;
	-webkit-clip-path: inset(0 0 0 0);
	clip-path: inset(0 0 0 0);
}
body:not(.et-fb) .lum-slide-text a.et_pb_button.et_pb_promo_button{
	transition: padding 0.4s 0s cubic-bezier(0.25, 0.46, 0.45, 0.94), clip-path 0.6s 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
}
/* services 2 */
.lum-service-blurb .et_pb_image_wrap img{
	display:none;
}
.lum-service-blurb .et_pb_image_wrap:before {
    content: "01";
    font-family: "roboto mono";
    font-size: 14px;
	top: 10px;
    position: relative;
	font-weight: 400;
}
.lum-service-blurb:nth-child(2) .et_pb_image_wrap:before {
	content: "02";
}
.lum-service-blurb:nth-child(3) .et_pb_image_wrap:before {
	content: "03";
}
.lum-service-blurb:nth-child(4) .et_pb_image_wrap:before {
	content: "04";
}
.lum-service-blurb:nth-child(5) .et_pb_image_wrap:before {
	content: "05";
}
.lum-service-blurb{
	transition: none !important;	
}
.lum-services-2-img-col {
	position: relative;
	overflow: hidden;
	background-size: cover;
	background-position: 50% 50%;
	background-repeat: no-repeat;
}
.lum-slide-img {
	position: absolute;
	top: 0;
	left: 100%;
	width: 100%;
	height: 100%;
	background-size: cover;
	background-position: 50% 50%;
	background-repeat: no-repeat;
	z-index: 10;
	transition: left 0.6s ease;
	pointer-events: none;
}

/** OUR SERVICES  **/
.lum-services-list .et_pb_blurb_content{
	display:flex;
	margin-bottom: 10px;
}
.lum-services-list .et_pb_blurb_container{
	order: 1;
	width: 100%;
}
.lum-services-list .et_pb_main_blurb_image{
	order: 2;
	margin-bottom: 0px;
	display: flex;
	align-items: center;
}
/** PORTFOLIO **/
/* overlay animation*/
@keyframes top-to-bot-in {
	0% { top: -100%; left: 0; visibility: visible; }
	100% { top: 0; left: 0; visibility: visible; }
}
@keyframes bot-to-top-in {
	0% { top: 100%; left: 0; visibility: visible; }
	100% { top: 0; left: 0; visibility: visible; }
}
@keyframes right-to-left-in {
	0% { top: 0; left: 100%; visibility: visible; }
	100% { top: 0; left: 0; visibility: visible; }
}
@keyframes left-to-right-in {
	0% { top: 0; left: -100%; visibility: visible; }
	100% { top: 0; left: 0; visibility: visible; }
}
@keyframes top-to-bot-out {
	0% { top: 0; left: 0; visibility: visible; }
	100% { top: -100%; left: 0; visibility: visible; }
}
@keyframes bot-to-top-out  {
	0% { top: 0; left: 0; visibility: visible; }
	100% { top: 100%; left: 0; visibility: visible; }
}
@keyframes right-to-left-out  {
	0% { top: 0; left: 0; visibility: visible; }
	100% { top: 0; left: 100%; visibility: visible; }
}
@keyframes left-to-right-out  {
	0% { top: 0; left: -0; visibility: visible; }
	100% { top: 0; left: -100%; visibility: visible; }
}

.et_pb_portfolio .et_portfolio_image:after{
	content: "See more";
	font-size: 16px;
	top: 0;
	left: 0;
	width: max-content;
	transform: translateX(-50%) translateY(-50%);
	position: absolute;
	margin: 0 50%;
	margin-top: 215px;
	background: rgba(0,0,0,.7);
	color: #fff;
	font-weight: 600;
	padding: .5em 1em;
	border-radius: 5px;
	z-index: 10;
	visibility: visible;
	animation-timing-function: ease;
	animation-duration: 0.3s;
	animation-fill-mode: forwards;
	visibility:hidden;
}
.et_pb_portfolio .et_portfolio_image:before{
	background: rgb(0 0 0 / 10%);
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	z-index: 9;
	visibility:hidden;
	animation-timing-function: ease;
	animation-duration: 0.3s;
	animation-fill-mode: forwards;
}
.top-to-bot-in:before,.top-to-bot-in:after{animation-name:top-to-bot-in;}
.bot-to-top-in:before,.bot-to-top-in:after{animation-name:bot-to-top-in;}
.right-to-left-in:before,.right-to-left-in:after{animation-name:right-to-left-in;}
.left-to-right-in:before,.left-to-right-in:after{animation-name:left-to-right-in;}
.top-to-bot-out:before,.top-to-bot-out:after{animation-name:top-to-bot-out;}
.bot-to-top-out:before,.bot-to-top-out:after{animation-name:bot-to-top-out;}
.right-to-left-out:before,.right-to-left-out:after{animation-name:right-to-left-out;}
.left-to-right-out:before,.left-to-right-out:after{animation-name:left-to-right-out;}

/* grid */
.et_pb_portfolio .et_pb_ajax_pagination_container, .et_pb_portfolio .et_pb_portfolio_items, .et_pb_portfolio .et_pb_portfolio_grid_items{
	display: grid;
	grid-auto-columns: 1fr;
	grid-template-rows: 1fr;
	gap: 60px 30px;
}
.pagination{
	grid-column-start: 1;
}
@media only screen and (min-width: 1400px){
	.et_pb_portfolio .et_pb_ajax_pagination_container, .et_pb_portfolio .et_pb_portfolio_items, .et_pb_portfolio .et_pb_portfolio_grid_items{
		grid-template-columns: 1fr 1fr 1fr;
	}
	.pagination{
		grid-column-end: 4;
	}
}
@media only screen and (min-width: 980px) and (max-width: 1400px){
	.et_pb_portfolio .et_pb_ajax_pagination_container, .et_pb_portfolio .et_pb_portfolio_items, .et_pb_portfolio .et_pb_portfolio_grid_items{
		grid-template-columns: 1fr 1fr; 
	}
	.pagination{
		grid-column-end: 3;
	}
}
@media only screen and (max-width: 980px){
	.et_pb_portfolio .et_pb_ajax_pagination_container, .et_pb_portfolio .et_pb_portfolio_items, .et_pb_portfolio .et_pb_portfolio_grid_items{
		grid-template-columns: 1fr; 
	}
	.pagination{
		grid-column-end: 2;
	}
}
@media only screen and (max-width: 450px){
	.et_pb_portfolio .et_portfolio_image{
		max-height: 350px !important;
	}
	.et_pb_portfolio .et_portfolio_image:after{
		margin-top: 175px !important;
	}
}

/* portfolio item*/
.et_pb_portfolio .et_pb_portfolio_item{
	transition: all 0.3s ease;
}
.et_pb_portfolio .et_portfolio_image{
	overflow: hidden;
	background: rgb(255,255,255);
}
.et_pb_portfolio .et_portfolio_image img{
	transition: transform ease-in-out 7s;
	margin-left: -1px;
	max-width: calc(100% + 1px);
}

.et_pb_portfolio .et_pb_portfolio_item .et_pb_module_header{
	border-top: 1px solid #d3d3d359;
	margin-top: 0px;
	padding: 13px 0px;
	letter-spacing: 0px;  
}
.lum-portfolio-gallery .post-meta a{
	font-weight: 400 !important;
}
.lum-portfolio-gallery .et_pb_module_header{
	padding-top: 30px !important;
	padding-bottom: 0px !important;
}
.lum-portfolio-gallery .post-meta:before {
    content: '';
    width: 18px;
    height: 1px;
    background: black;
    margin-right: 10px;
    display: inline-block;
    vertical-align: middle;
}
/* filters */
.et_pb_portfolio_filters a.active{
    border-color: black !important;
}
.et_pb_portfolio_filters a{
	border-radius: 30px !important;
    background: none !important;
	border: 1px solid !important;
	border-color: transparent !important;
	text-align: center;
}
.et_pb_filterable_portfolio .et_pb_portfolio_filters li a {
    background-color: unset !important;
    margin: 0 5px;
}
.et_pb_portfolio_filters ul{
	display:table;
	margin:auto;
}
/* pagination */
.et_pb_filterable_portfolio  .et_pb_portofolio_pagination {
  margin-top: 30px;
}
.et_pb_portfolio .pagination{
  padding-top: 20px;
  border-top: 1px solid #e2e2e2;
}
/** BLOG **/
.lum-separator {
    font-size: 47px;
    margin: 0 5px 0 5px;
}
.lum-blog article{
    display: flex;
    flex-wrap: wrap;
}
.lum-blog .post-meta {
    order: 1;
}
.lum-blog .post-content {
    order: 3;
}
.lum-blog .entry-title {
    order: 2;
}

.lum-blog-grid .et_pb_image_container{
	width: 100%;
	margin: 0;
	order: 3;
}
.lum-blog-grid article:hover img{
	transform: scale(1.1);
}
.lum-blog-grid a.entry-featured-image-url{
	overflow: hidden;
}
.lum-blog-grid article img{
	transition: all .5s cubic-bezier(.785, .135, .15, .860) 0ms;
}
.lum-blog-grid .post-meta {
    flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
	.lum-blog-grid .post-meta:before{
		width:25px !important;
	}
	.lum-blog-grid article{
		padding:0px !important;
	}
}
/** TEMPLATE POST **/
.lum-post-date:before, .lum-recent-posts .post-meta:before, .lum-blog .post-meta:before{
	content: "";
    border-radius: 50%;
    background-color: black;
    height: 1px;
    width: 42px;
    margin: 0 15px 0 0;
	display: inline-flex;
}
.lum-recent-posts .post-meta:before{
	width: 24px;
}
.lum-cats:after, .lum-cats:before, .lum-cats .et_pb_text_inner a:not(:first-child):before{
	content: '';
    margin: 0 15px 0 15px;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background-color: black;
    position: relative;
    display: inline-flex;
}
.lum-cats, .lum-cats .et_pb_text_inner, .lum-cats .et_pb_text_inner a, .lum-post-date, .lum-recent-posts .post-meta, body .lum-blog .et_pb_post .post-meta{
	display: flex !important;
	align-items: center;
	flex-wrap: wrap;
}
.lum-post-date, .lum-recent-posts .post-meta{
	flex-wrap: wrap;
}
.lum-recent-posts a.entry-featured-image-url {
    width: 100px;
    grid-row-start: 1;
    grid-row-end: 13;
	margin-bottom: 0px;
	height: 100px;
}
.lum-recent-posts article img {
    width: 100px;
    height: 100px;
    object-fit: cover;
}
.lum-recent-posts article{
    display: grid;
    grid-template-columns: 100px 1fr;
    grid-template-rows: 0.5fr 1fr;
    grid-column-gap: 20px;
    grid-row-gap: 0px;
    margin-bottom: 20px;
    padding-bottom: 0px !important;
}
.lum-recent-posts p.post-meta {
    grid-row: 1;
    grid-column: 2;
    height: fit-content;
}
.lum-recent-posts .entry-title {
    grid-row: 2;
    grid-column: 2;
}

.lum-tags a:after{
	content: '|';
	padding-left: 14px;
	padding-right: 14px;	
}

@media screen and (max-width: 767px) {
	blockquote {
		padding:30px;
		font-size: 16px
	}
}
.single-post-text p{
	padding-bottom:0px;
}
.single-post-text>*:first-child,.single-post-text>div>*:first-child {
	margin-top: 0
}
.single-post-text>*:last-child {
	margin-bottom: 0
}
.single-post-text ul,.single-post-text ol {
	line-height: 2
}
.single-post-text ul {
	display: block;
	list-style-type: disc;
	margin-inline-start:0px;
	margin-inline-end:0px;
	padding-inline-start:0px
}
.single-post-text ul>li {
	list-style-type: disc
}
.single-post-text li {
	display: list-item;
	text-align: -webkit-match-parent
}
.single-post-text ol {
	display: block;
	list-style-type: decimal;
	margin-inline-start:0px;
	margin-inline-end:0px;
	padding-inline-start:1.25rem
}
.single-post-text ol>li {
	list-style-type: decimal
}
.single-post-text p {
	margin-top: 30px;
	margin-bottom: 30px
}
.single-post-text img {
	max-width: 100%
}
.single-post-text img+figure {
	margin-top: 30px
}
.single-post-text table {
	width: 100%;
	margin: 0;
	padding: 0;
	border-collapse: collapse;
	background: 0 0;
	border: 1px solid rgba(0,0,0,.3)
}
.single-post-text table th {
	padding: 15px 20px;
	font-size: 15px;
	font-weight: 700;
	background: #fff;
	border: 1px solid #f2f3f5;
	text-align: left
}
.single-post-text table tbody th {
	background: #fff
}
.single-post-text table td {
	border: none;
	padding: 10px;
	font-size: 17px;
	background: #fff;
	border: 1px solid #f2f3f5
}
.single-post-text table td#today {
	background: rgba(0,0,0,.3);
	font-weight: 700
}
.single-post-text table caption {
	margin: 0 0 10px;
	padding: 0;
	font-size: 15px;
	font-weight: 600;
	caption-side: top;
	text-align: center
}
@media screen and (max-width: 720px) {
	.single-post-text table th {
		padding:10px;
		font-size: 13px
	}

	.single-post-text table td {
		padding: 10px;
		font-size: 13px
	}
}
.single-post-text {
	line-height: 1.6;
	word-wrap: break-word
}
.single-post-text:after {
	content: '';
	position: relative;
	clear: both;
	display: block
}
.single-post-text img {
	max-width: 100%;
	height: auto
}
.single-post-text p a:hover {
	text-decoration: underline
}
.single-post-text dt {
	margin-bottom: 5px;
	font-weight: 700;
	color: #000
}
.single-post-text dd {
	margin-top: 0;
	margin-bottom: 20px;
	margin-left: 20px
}
.single-post-text blockquote p {
	margin-bottom: .5rem!important;
	font-style: normal;
	font-weight: 600
}
.single-post-text blockquote p:first-child {
	margin-top: 0
}
.single-post-text blockquote cite {
	font-size: 17px;
	font-style: normal
}
.single-post-text blockquote cite:before {
	margin-right: 5px;
	content: '-'
}
.single-post-text blockquote cite br {
	display: none
}
.single-post-text blockquote.has-text-align-right cite:before {
	display: none
}
.single-post-text blockquote.has-text-align-right cite:after {
	margin-left: 5px;
	content: '-'
}
.wp-block-file__button {
	padding: 0 1rem
}
.single-post-text figure {
	margin-bottom: 30px;
	max-width: 100%;
	overflow: auto
}
.single-post-text figure .wp-caption-text,.gallery-caption {
	font-style: italic
}
.single-post-text .gallery {
	margin-bottom: 0
}
.single-post-text h1,.single-post-text h2,.single-post-text h3,.single-post-text h4,.single-post-text h5,.single-post-text h6 {
	margin-top: 30px;
	margin-bottom: 30px
}
.single-post-text h1+h2,.single-post-text h2+h3,.single-post-text h3+h4,.single-post-text h4+h5,.single-post-text h5+h6,.single-post-text h6 {
	margin-top: 30px
}
.single-post-text pre.wp-block-code,.single-post-text pre {
	padding: 20px;
	overflow: auto;
	white-space: pre-wrap;
	background: linear-gradient(159deg,#000 0%,#23232d 100%);
	background: -webkit-linear-gradient(159deg,#000 0%,#23232d 100%);
	color: #f2f3f5;
	font-size: 15px
}
.single-post-text blockquote {
	margin: 20px 0;
    color: black;
    border: none;
    background: 0 0;
    padding: 30px 30px 30px 60px;
    font-style: italic;
    position: relative;
    font-size: 20px;
}
@media (max-width:767px){
	.single-post-text blockquote {
		padding: 0px 0px 0px 50px;
		font-size: 16px;
	}
	.single-post-text h2{
		font-size:30px;
	}
}
.single-post-text blockquote p:last-child {
	margin-bottom: 0!important
}
.single-post-text blockquote:before {
	content: "";
    background: url(/wp-content/uploads/2025/04/double-quotes-black.png);
    width: 30px;
    height: 25px;
    background-size: 30px;
    display: block;
    left: 0;
    margin-right: 20px;
    position: absolute;
    margin-top: 10px;
}
.single-post-text footer {
	width: auto
}

.single-post-title {
	max-width: 800px;
	margin-left: auto;
	margin-right: auto;
	word-break: break-word
}

.single-post-text ul {
	padding: 0;
	margin: 0
}

.single-post-text h1 {
	font-size: 48px
}

.single-post-text h2 {
	font-size: 36px
}

.single-post-text h3 {
	font-size: 24px
}

.single-post-text h4 {
	font-size: 17px
}
.single-post-text h5 {
	font-size: 16px
}
.single-post-text h6 {
	font-size: 15px
}
.single-post-text ul>li,.single-post-text ol>li {
	margin-bottom: .25rem
}
.single-post-text ul ul,.single-post-text ol ol,.single-post-text ul ol,.single-post-text ol ul {
	margin-top: .25rem
}
.single-post-text ul>li {
	display: block;
	line-height: 150%;
	list-style-type: none;
	position: relative;
	padding-left: 27px
}
.single-post-text ul>li:before {
	content: "";
	position: absolute;
	top: 10px;
	left: 0;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background-color: var(--divi-secondary-color);
}
.single-post-text ol {
	padding: 0;
	margin: 0 0 0 1.25rem
}
.single-post-text ol>li {
	line-height: 150%;
	list-style-type: decimal
}
.single-post-text ol>li::marker {
	color: #000
}
.single-post-text p,.single-post-text ul,.single-post-text ol,.single-post-text h1,.single-post-text h2,.single-post-text h3,.single-post-text h4,.single-post-text h5,.single-post-text h6,.single-post-text iframe,.single-post-text table,.single-post-text object,.single-post-text blockquote {
	margin-bottom: 30px
}
.single-post-text p:last-child,.single-post-text ul:last-child,.single-post-text ol:last-child,.single-post-text h1:last-child,.single-post-text h2:last-child,.single-post-text h3:last-child,.single-post-text h4:last-child,.single-post-text h5:last-child,.single-post-text h6:last-child,.single-post-text iframe:last-child,.single-post-text table:last-child,.single-post-text object:last-child,.single-post-text blockquote:last-child {
	margin-bottom: 0
}

/** FOOTER **/
.lum-footer-txt h5 {
    padding-bottom: 20px;
}
.lum-footer-txt li {
    margin-bottom: 9px;
}

/** Slick CSS **/
.slick-slide {
	float: left;
}
.slick-list{
	overflow:hidden;
}
ul.slick-dots {
	display: flex;
	justify-content: center;
	list-style: none;
	margin-top: 20px;
}
ul.slick-dots button {
	background-color: #9f9f9f4d;
	width: 8px;
	height: 8px;
	padding: 0;
	margin: 4px;
	border-radius: 100%;
	font-size: 0px;
	cursor: pointer;
	transition: all 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
ul.slick-dots .slick-active button{
	background-color: var(--divi-primary-color);
	transform: scale(1.2);
}
button{
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
.slide-arrow{
	position: absolute;
	top: calc(50% - 50px);
	transform: translateY(-50%);
	transition: all 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955);
	z-index: 5;
}
.prev-arrow{
	width: 50px;
	height: 50px;
	left: 50px;
}
.slide-arrow:before, .lum-arrows .et-pb-arrow-next:before, .lum-arrows .et-pb-arrow-prev:before{
	content: "5";
	content: "\24";
	font-family: ETmodules;
	color: black;
	font-weight: 100;
	font-size: 32px;
	border: 1px solid black;
	border-radius: 100%;
	border-radius: 100%;
	content: "\24";
	font-family: ETmodules;
	font-size: 25px;
	font-weight: 100;
	display: flex;
	justify-content: center;
	-webkit-transition: .3s cubic-bezier(0,0,.3642,1);
	transition: .3s cubic-bezier(0,0,.3642,1);
	cursor: pointer;
	border: 1px solid #000000;
	width: 50px;
	padding-top: 13px;
	padding-bottom: 12px;
	align-items: center;
	position: relative;
}
.slide-arrow.prev-arrow:before, .lum-arrows .et-pb-arrow-prev:before{
	content: "\23";
}
.slide-arrow:hover:before{
	color: var(--divi-primary-color);
}
.next-arrow{
	right: 50px;
	width: 50px;
	height: 50px;
}
