/*
 Theme Name:	Divi Child
 Theme URI:     http://www.elegantthemes.com/gallery/divi/
 Description:	Child theme for Divi
 Author: 		NORTHBRIDGE
 Author URI: 	https://northbridge.gr
 Template:		Divi
 Version:		1.0
License:		GNU General Public License v2 or later
License URI:	https://www.gnu.org/licenses/gpl-2.0.html
Text Domain:	divi-child
 */



/*
 *  CSS developed by NORTHBRIDGE
 * 
 */

@media (max-width: 480px) {
    .et_pb_row {
        width: 87%;
    }
}


/*  Colors
 * 
 *  Fonts: Syne (headings) + DM Sans (body) — όλα σε px
 *	Χρώματα: 
		Charcoal #141414
		Off-white #F5F4F0
		Gold accent #B8945F
 *  
 * rgb(139, 26, 43)
 */


/**
 * MENU
 * 
 * *********************************************/

#top-menu li.current-section > a {
  color: #8b1a2b !important;
}
#top-menu li > a { transition: color .25s ease; }

@media (max-width: 980px) {
    .et_header_style_left #logo {
        max-width: 60% !important;
    }
}

@media (max-width: 480px) {
	#main-header .container {
    	width: 87% !important;
	}
}




/**
 * HOME
 * 
 * *********************************************/
.number-block span {
	font-family: Syne, sans-serif;
	font-size: 72px; 
	font-weight: 700;
	line-height: 1em;
	color: rgb(232, 230, 225); 
}
.number-block {
	display: flex;
	flex-direction: row;
	gap: .5rem;
}

/*
#home-hero .et_pb_module_header:before {
	display: block;
	content: "";
	width: 48px;
	height: 3px;
	background: rgb(139, 26, 43);
	margin-bottom: 24px;
}
*/

#home-hero .et_pb_fullwidth_header {
	min-height: calc(100vh - 66px);
	display: flex;
	flex-direction: column;
	justify-content: center;
}

@media (max-width: 480px) {
	#home-hero .et_pb_fullwidth_header_container {
    	width: 90% !important;
	}
}

.external-link {
	font-size: 14px;
	display: block;
    margin-top: 6px;
}
.external-link::after {
	content: "";
	display: inline-block;
	width: 16px;
	height: 16px;
	margin-left: 6px;
	margin-bottom: 1px;
	vertical-align: middle;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%238b1a2b' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6'/%3E%3Cpolyline points='15 3 21 3 21 9'/%3E%3Cline x1='10' y1='14' x2='21' y2='3'/%3E%3C/svg%3E") no-repeat center;
	background-size: contain;
}




/**
 * PROJECT
 * 
 * *********************************************/

#project-details p {
	font-weight: 500 !important;
}

ul.project-list {
	display: flex;
	flex-direction: column;
	gap: 12px;
}
ul.project-list li::marker {
  color: #b08a57;
}
ul.project-list li {
	font-size: 16px; 
	color: rgb(107, 107, 107); 
	line-height: 1.8;
}





/**
 * FOOTER
 * 
 * *********************************************/

#footer-bottom {
	padding: 15px 0 5px;
}
#footer-info {
	padding-bottom: 10px;
}




/**
 * IMAGES
 * 
 * *********************************************/
.fixed-ratio-img .et_pb_image_wrap {
	display: block;
	width: 100% !important;
	aspect-ratio: 3 / 2;
	overflow: hidden;
}
.fixed-ratio-img img {
	width: 100% !important;
	height: 100%;
	object-fit: cover;
	display: block;
}




/**
 * MOBILE COLUMN ORDER
 * 
 * *********************************************/

@media all and (max-width: 980px) {
	.custom_row {
		display: -webkit-box;
		display: -moz-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	.first-on-mobile {
		-webkit-order: 1;
		order: 1;
	}
	.second-on-mobile {
		-webkit-order: 2;
		order: 2;
	}
	.third-on-mobile {
		-webkit-order: 3;
		order: 3;
	}
	.fourth-on-mobile {
		-webkit-order: 4;
		order: 4;
	}
	.custom_row:last-child .et_pb_column:last-child {
		margin-bottom: 30px;
	}
}



/**
 * PADDING AND MARGIN
 * 
 * *********************************************/
.mt-0 {
	margin-top: 0 !important;
}
.mt-10 {
	margin-top: 10px !important;
}
.mt-20 {
	margin-top: 20px !important;
}
.mt-30 {
	margin-top: 30px !important;
}
.mt-40 {
	margin-top: 40px !important;
}
.mb-0 {
	margin-bottom: 0 !important;
}
.mb-10 {
	margin-bottom: 10px !important;
}
.mb-20 {
	margin-bottom: 20px !important;
}
.mb-30 {
	margin-bottom: 30px !important;
}
.mb-40 {
	margin-bottom: 40px !important;
}
.pt-0 {
	padding-top: 0 !important;
}
.pt-10 {
	padding-top: 10px !important;
}
.pt-20 {
	padding-top: 20px !important;
}
.pt-30 {
	padding-top: 30px !important;
}
.pt-40 {
	padding-top: 40px !important;
}
.pb-0 {
	padding-bottom: 0 !important;
}
.pb-10 {
	padding-bottom: 10px !important;
}
.pb-20 {
	padding-bottom: 20px !important;
}
.pb-30 {
	padding-bottom: 30px !important;
}
.pb-40 {
	padding-bottom: 40px !important;
}