/**
Theme Name: iweco-child
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: iweco-child
Template: astra
*/
html { scroll-behavior: smooth; }
:root{
    --bg: #FAFAF8;
    --heading: #111111;
    --body: #5F6460;
    --accent: #6F8C79;
    --border: #E7E8E3;
}


body{
    background: var(--bg);
    color: var(--body);
}

h1,h2,h3,h4,h5,h6{
    color: var(--heading);
}

.accent{
    color: var(--accent);
}

.home-fix-height2, .home-fix-height{
	height: 570px;
	max-height: 570px;
}

/* Mobile */
@media (max-width: 767px) {
    .home-fix-height2,
    .home-fix-height {
        height: auto;
        max-height: none;
    }
}

.iweco-news-card{
    background:#fff;
    border:1px solid #ECECEC;
    overflow:hidden;
    height:100%;

    display:flex;
    flex-direction:column;
}

.iweco-news-image{
    display:block;
    overflow:hidden;
}

.iweco-news-image img{
    width:100%;
    height:260px !important;
    min-height:260px;
    max-height:260px;

    object-fit:cover;
    object-position:center;

    display:block;
}

.iweco-news-content{
    padding:20px;
    flex:1;

    display:flex;
    flex-direction:column;
}

.iweco-news-meta{

	font-family: 'Inter', sans-serif;

    color:#5a6b7c;

    font-size:13px;
    font-weight:500;
    letter-spacing:.05em;
    text-transform:uppercase;

    display:flex;
    gap:8px;
}

.iweco-news-title{
    margin:0;
    flex:1;
}

.iweco-news-title a{
    color:#0c2d5c;
    text-decoration:none !important;

    font-family:'Barlow Condensed',sans-serif;
    font-size:22px;
    font-weight:800;
    line-height:1.25;
}

.iweco-news-arrow{
	color: #0c2d5c;
    width:44px;
    height:44px;

    display:flex;
    align-items:center;
    text-decoration:none;
    transition:.3s ease;
}

.iweco-news-arrow:hover{
    border-color:#323F34;
}

.center-icon{
    position:relative;
}

.center-icon::before{
    content:'';
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);

    width:120px;
    height:120px;

    background:#fff;
    border-radius:999px;

    box-shadow:0 15px 40px rgba(0,0,0,.12);

    z-index:999;
}

.center-icon::after{
    content:'';
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);

    width:80px;
    height:80px;

    background:url('https://iweco.devprojects.gr/wp-content/uploads/2026/06/Media__2_-removebg-preview-1-e1780915307321.png') center center / contain no-repeat;

    z-index:1000;
}

/* New Hero */
/* New Hero */
.hero-overlay{
    position:relative;
    min-height:100vh;
    overflow:hidden;
}

/* Simple Blue Overlay */
.hero-overlay::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:1;
    background:rgba(12,45,92,.55); /* #0C2D5C */
}

/* Content */
.hero-overlay > .e-con-inner{
    position:relative;
    z-index:2;
}


.section-label{
 padding-left: 40px;
   
    
}

.section-label:before{
    content:"";
	top: 5px;
    width:28px;
    height:2px;
    background:#27784B;
    display:block;
}

/* Header - Lang Switch */
.lang-switch {
	z-index:200;
}

.lang-switcher{
	
    display:flex;
    align-items:center;
    gap:0;
}

.lang-switcher a{
    color:#fff;
    text-decoration:none;
    font-size:14px;
    font-weight:600;
    padding:0 8px;
    opacity:.7;
    transition:.3s;
}

.lang-switcher a.active{
    opacity:1;
}

.lang-switcher a:not(:last-child){
    border-right:1px solid rgba(255,255,255,.3);
}

/* --- News Slider Fluid Adjustments --- */
.iweco-news-section {
    padding: 0 15px;
    width: 100%;
    box-sizing: border-box;
}

.iweco-news-card {
    display: flex;
    flex-direction: column;
    height: 100%; /* Ensures all cards in a row match height */
    background: #ffffff;
    border-radius: 8px;
    overflow: hidden;
}

.iweco-news-image {
    width: 100%;
    aspect-ratio: 16 / 10; /* Maintains rigid responsive aspect ratios */
    overflow: hidden;
    display: block;
}

.iweco-news-thumb {
    width: 100%;
    height: 100%;
    object-fit: cover; /* Prevents squishing images */
    transition: transform 0.3s ease;
}

.iweco-news-card:hover .iweco-news-thumb {
    transform: scale(1.03);
}

.iweco-news-content {
    padding: 24px;
    display: flex;
    flex-direction: column;
    flex-grow: 1; /* Pushes links/arrows evenly to the bottom */
}

.iweco-news-title {
    font-size: clamp(18px, 2vw, 22px); /* Scales font smoothly based on viewport width */
    line-height: 1.4;
    margin: 12px 0 20px 0;
}

/* Responsive Navigation Positioning */
.iweco-news-nav {
    display: none;
    justify-content: center;
    gap: 15px;
    margin-top: 30px;
}

@media (max-width: 768px) {
    .iweco-news-content {
        padding: 16px;
    }
    .iweco-news-swiper {
        padding-bottom: 10px;
    }
}

.stats-section {
    background: #0C2D5C;
    padding: 80px 24px;
    box-sizing: border-box;
}

.stats-grid {
    max-width: 1240px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    width: 100%;
    gap: 20px;
}

.stat {
    text-align: center;
    border-right: 1px solid rgba(255, 255, 255, 0.15);
    padding: 10px 0;
}

.stat:last-child {
    border-right: none;
}

.stat-number {
    font-family: 'Barlow Condensed', sans-serif;
    font-size: clamp(40px, 4.5vw, 64px); /* Fluid typography */
    font-weight: 800;
    color: #fff;
    line-height: 1.05;
}

.unit {
    color: #27784B;
    font-size: 0.5em;
    margin-left: 2px;
}

.stat-label {
    margin-top: 12px;
    color: rgba(255, 255, 255, 0.7);
    font-size: clamp(12px, 1vw, 14px);
    letter-spacing: 1px;
    padding: 0 10px;
}

/* Tablet Layout Breakpoint */
@media (max-width: 992px) {
    .stats-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 40px 20px;
    }
    .stat {
        border-right: none;
    }
    /* Adds a subtle separation on tablet views */
    .stats-grid .stat:nth-child(odd) {
        border-right: 1px solid rgba(255, 255, 255, 0.1); 
    }
}

/* Mobile Small Smart Phone Breakpoint */
@media (max-width: 480px) {
    .stats-section {
        padding: 50px 16px;
    }
    .stats-grid {
        grid-template-columns: 1fr; /* Shifts to single column stack */
        gap: 32px;
    }
    .stat {
        border-right: none !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.1);
        padding-bottom: 24px;
    }
    .stat:last-child {
        border-bottom: none;
        padding-bottom: 0;
    }
}

.header-cont1 {
    position: fixed !important;
    top: 0;
    left: 0;
    width: 100%;
    background-color: transparent !important;
    transition: background-color 0.4s cubic-bezier(0.25, 1, 0.5, 1) !important;
    z-index: 99999;
}

.header-cont1.scrolled {
    background-color: #0C2D5C !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
}

/* WordPress Admin Bar Displacement Fix */
.admin-bar .header-cont1 {
    top: 32px;
}
@media (max-width: 782px) {
    .admin-bar .header-cont1 {
        top: 46px;
    }
}

/* --- Fullscreen Overlay Structural Patch --- */
.nav-class nav.hfe-dropdown-expandible {
    background-color: #0C2D5C !important;
    height: 100vh !important;
    height: -webkit-fill-available !important; /* Fixes mobile Safari shifting bars */
    width: 100vw !important;
    max-width: 100vw !important;
    display: flex !important;
    flex-direction: column;
    padding: 80px 40px 40px 40px !important; /* Extra top clearance for close button */
    box-sizing: border-box !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: auto !important; 
    transform: none !important;
    margin: 0 !important;
    z-index: 99999 !important;
    overflow-y: auto !important; /* Enables smooth scrolling if screen is too short */
    -webkit-overflow-scrolling: touch;
}

.nav-class ul.hfe-nav-menu {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: clamp(16px, 3vh, 32px); /* Dynamic spacing based on screen height */
    margin: auto 0;
    list-style: none;
    padding: 0;
    max-width: 1240px;
    width: 100%;
}

.nav-class ul.hfe-nav-menu li a.hfe-menu-item {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    color: rgba(255, 255, 255, 0.85) !important;
    transition: color 0.2s, transform 0.2s !important;
    text-decoration: none;
    display: inline-block;
    padding: 5px 0 !important;
}

footer .hfe-nav-menu .sub-menu > li {
    background: #06121f !important;
}

/* Fluid Adaptive Footer Row */
.nav-class .overlay-foot {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    border-top: 1px solid rgba(255, 255, 255, 0.12);
    padding-top: 24px;
    font-size: 14px;
    font-family: 'Inter', sans-serif;
    color: rgba(255, 255, 255, 0.6);
    width: 100%;
    max-width: 1240px;
    margin-top: 40px;
}

/* Mobile Layout Tweaks for Menu Overlays */
@media (max-width: 768px) {
    .nav-class nav.hfe-dropdown-expandible {
        padding: 80px 24px 32px 24px !important;
    }
    .nav-class .custom-menu-close {
        top: 20px;
        right: 20px;
    }
    .nav-class .overlay-foot {
        flex-direction: column; /* Stacks links beautifully on tiny viewports */
        align-items: flex-start;
        gap: 12px;
    }
}

/* Contact Form */

.cf7-row {
    display: flex;
    gap: 20px;
    margin-bottom: 20px;
}

.cf7-half {
    width: 50%;
}

.cf7-full {
    margin-bottom: 20px;
}

input.wpcf7-form-control.wpcf7-submit.has-spinner {
	border-radius: 10px
}

@media (max-width: 768px) {
    .cf7-row {
        flex-direction: column;
        gap: 15px;
    }

    .cf7-half {
        width: 100%;
    }
}


.part-cont{
    position:relative;
}

.part-cont .inner-cont{
    position:absolute;
    left:30px;
    bottom:30px;

    width:320px;
    background:#0C2D5C;
    color:#fff;
    padding:30px;
    z-index:90;
}
/* IWECO – Contact Form 7 notifications */

.wpcf7 form .wpcf7-response-output {
    margin: 24px 0 0;
    padding: 16px 20px;
    border: 0;
    border-radius: 8px;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.6;
    box-shadow: 0 3px 12px rgba(35, 48, 39, 0.08);
}

/* Επιτυχής αποστολή */
.wpcf7 form.sent .wpcf7-response-output {
    background-color: #edf7ef;
    border-left: 4px solid #5b9368;
    color: #285c34;
}

/* Λάθη συμπλήρωσης */
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
    background-color: #fff8e8;
    border-left: 4px solid #d49a29;
    color: #6d4b0b;
}

/* Αποτυχία αποστολής ή spam */
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output,
.wpcf7 form.spam .wpcf7-response-output {
    background-color: #fff1f1;
    border-left: 4px solid #c94a4a;
    color: #7b2424;
}

/* Μήνυμα λάθους κάτω από κάθε πεδίο */
.wpcf7-not-valid-tip {
    display: block;
    margin-top: 7px;
    color: #a83232;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.45;
}

/* Πεδίο με λάθος */
.wpcf7-form-control.wpcf7-not-valid {
    border-color: #c94a4a !important;
    box-shadow: 0 0 0 2px rgba(201, 74, 74, 0.1);
}

/* Προσβασιμότητα στο focus */
.wpcf7-form-control:focus-visible {
    outline: 3px solid rgba(91, 147, 104, 0.25);
    outline-offset: 2px;
}