@charset "UTF-8";
.layout-boxed .body-innerwrapper {
  max-width: 1450px;
  margin: 0 auto;
  box-shadow: 0 0 0px rgba(0, 0, 0, 0.01);
}
.sp-megamenu-parent > li > a,
.sp-megamenu-parent > li > span {
    display: block;
}
ul.sp-megamenu-parent .sp-dropdown {
  left: 100% !important;
  transition: 0.3s;
}
.sp-megamenu-parent .sp-dropdown {
  margin: 0;
  position: absolute;
  z-index: 10;
  display: none;
}
body.ltr .sp-megamenu-parent .sp-dropdown.sp-menu-center {
  margin-left: 0px;
}
.sp-megamenu-parent .sp-mega-group > li > a {
  display: block;
  text-transform: capitalize;
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 1px;
}
ul.sp-megamenu-parent .sp-dropdown.sp-dropdown-main {
    top: 0px;
}
ul.sp-megamenu-parent .sp-dropdown .sp-dropdown-inner {
  box-shadow: none;
  border-radius: 0px;
  position: relative;
  overflow: visible !important;
  max-height: initial;
  padding: 0;
  margin: 0;
}

ul.sp-megamenu-parent .sp-dropdown .sp-dropdown-inner ul > li > a {
    font-weight: 500 !important;
    font-size: 15px !important;
    padding: 16px;
    border-bottom: 1px solid #f1f1f1;
    width: 100%
}
body.ltr .sp-megamenu-parent > li.sp-has-child > a::after, body.ltr .sp-megamenu-parent > li.sp-has-child > span::after {
    content: "\f105";
    float: right;
    margin-left: 7px;
    font-weight: 900;
}
.sp-megamenu-parent {
    list-style: none;
    padding: 0;
    margin: 0px;
    z-index: 99;
    display: block;
    float: right;
    position: relative;
    background: #fff;
    border: 1px solid #f1f1f1
}
ul.sp-megamenu-parent > li {
  position: relative;
  border-bottom: 1px solid #f1f1f1;
  width: 100%;
}
ul.sp-megamenu-parent > li > a, ul.sp-megamenu-parent > li > span {
  font-size: 17px;
  padding: 13px;
  line-height: 30px;
  font-weight: 600;
  text-transform: initial;
}
.sp-megamenu-parent > li:last-child > a {
  padding: 13px;
}
body.ltr .sp-megamenu-parent .sp-dropdown.sp-dropdown-main.sp-menu-full {
    left: auto;
    right: 0;
    padding: 5px 0px;
    background: #fff;
    border: 1px solid #f1f1f1
}
ul.social-icons {
  list-style: none;
  padding: 0;
  margin: 0;
  float: right;
  display: inline-block;
}
ul.social-icons > li:not(:last-child) {
  margin-right: 5px;
}
ul.social-icons > li {
  display: inline-block;
  line-height: 2.5;
}
 #sp-top-header .container-inner {
	color: #333;
	background-color: #fff;
	margin: 10px auto 10px auto;
	padding: 8px;
	border: 1px solid #dcdcdc;
  -webkit-box-shadow: 0 5px 12px rgba(0, 0, 0, 0.06);
  box-shadow: 0 5px 12px rgba(0, 0, 0, 0.06);
}
#sp-top-header .container-inner, .social-icons a {
	color: #333;
	background-color: #fff;
	padding: 8px 9px;
	border: 1px solid #dcdcdc;
  -webkit-box-shadow: 0 5px 12px rgba(0, 0, 0, 0.06);
  box-shadow: 0 5px 12px rgba(0, 0, 0, 0.06);
	border-radius: 50%;
}

#sp-menu {z-index: 200; }
#sp-logo{  display: flex;  flex-wrap: wrap; justify-content: center; margin-top: 20px;}

#sp-menu .sp-column  { 
  display: flex;
  flex-direction: column;
  position: relative;
 } 
#sp-menu .sp-column .sp-megamenu-wrapper {order: 1; margin-bottom: 20px;}
#sp-menu .sp-column .sp-module {order: 2;}
#sp-menu .sp-column .sp-module h4 {font-size: 18px;}
#sp-component .sp-column .article-details, #sp-component .sp-column .blog, #sp-page-builder, .contact  {
    background: #fff;
    padding: 20px;
    box-shadow: 0 5px 20px 0 rgba(0,0,0,.09);
    border: 1px solid rgba(0,0,0,.15);
    border-radius: 6px;
}
.button-wrap li {
    padding: 4px 20px !important;
    margin: 0px 2px !important;
}
.map-container {
    position: relative;
    z-index: 1;
}

#sppb-addon-1621786411235 ul.sppb-nav.sppb-nav-modern {
    text-align: center !important;
}
#sppb-addon-1621786411235 .sppb-nav-modern > li {
    float: none;
    margin-bottom: -1px;
    display: inline-block;
}
.sppb-addon-tab .sppb-nav > li.active > a {
  background-color: #fff;
  border: none;
  box-shadow: 0 -1px 2px 0 rgba(209, 209, 209, 0.5);
}
.sppb-addon-tab .sppb-nav > li > a {
  border: none;
  text-transform: uppercase;
  padding: 15px 35px;
  color: #828282;
  background-color: transparent;
}
.sppb-addon-tab .sppb-tab-content {
  background: #fff;
  margin: 0;
  padding: 30px;
  box-shadow: 0 1px 2px 0 rgba(209, 209, 209, 0.5);
}

#sppb-addon-1632319821735{
    background-color: #cc3300;
    color: #fff;
    margin: 0 auto 10px auto;
    padding: 5px 8px;
    border: 1px solid #dcdcdc;
    -webkit-box-shadow: 0 5px 12px rgba(0, 0, 0, 0.06);
    box-shadow: 0 5px 12px rgba(0, 0, 0, 0.06);
}
.white {
	color: #333;
	background-color: #fff;
	margin: 0 auto 10px auto;
	border: 1px solid #f1f1f1;
	padding: 5px 10px;
}
.white:hover {
	color: #333;
	background-color: #f9f9f9;
}
.beige {
	color: #000;
	background-color: #e3e1df;
	margin: 0 auto 10px auto;
	padding: 5px 10px;
	border: 1px solid #fff;
}

.greys {
	color: #333;
	background-color: #fafafa;
	margin: 0 auto 5px auto;
	padding: 5px;
}
.greys:hover {
	color: #333;
	background-color: #ddd;
}

.blues {
	color: #f1f1f1;
	margin: 0 auto 10px auto;
	padding: 5px 10px;
    background: #006699;
    background: -moz-linear-gradient(45deg, #006699 0%, #3399cc 100%);
    background: -webkit-linear-gradient(45deg, #006699 0%,#3399cc 100%);
    background: linear-gradient(45deg, #006699 0%,#3399cc 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#006699', endColorstr='#3399cc',GradientType=1 );
}

.greens {
	color: #f1f1f1;
	margin: 0 auto 10px auto;
	padding: 5px 10px;
	background: #669933;
    background: -moz-linear-gradient(45deg, #669933 0%, #66cc33 100%);
    background: -webkit-linear-gradient(45deg, #669933 0%,#66cc33 100%);
    background: linear-gradient(45deg, #669933 0%,#66cc33 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#669933', endColorstr='#66cc33',GradientType=1 );
}
.oranges {
	color: #f1f1f1;
	margin: 0 auto 10px auto;
	padding: 5px 10px;
	background: #ff7b26;
    background: -moz-linear-gradient(45deg, #ff7b26 0%, #ffc108 100%);
    background: -webkit-linear-gradient(45deg, #ff7b26 0%,#ffc108 100%);
    background: linear-gradient(45deg, #ff7b26 0%,#ffc108 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff7b26', endColorstr='#ffc108',GradientType=1 );
}

.reds {
	color: #f1f1f1;
	margin: 0 auto 10px auto;
	padding: 5px 10px;
	background: #f32328;
    background: -moz-linear-gradient(45deg, #f32328 0%, #fe583c 100%);
    background: -webkit-linear-gradient(45deg, #f32328 0%,#fe583c 100%);
    background: linear-gradient(45deg, #f32328 0%,#fe583c 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f32328', endColorstr='#fe583c',GradientType=1 );}

.colors {
	color: #f1f1f1;
	margin: 0 auto 10px auto;
	padding: 5px 10px;
	border: 1px solid #d7d7d7;
	background: #ff7b26;
}
.reds h3::before,.oranges h3::before,.greens h3::before,.blues h3::before,.dark h3::before,.colors h3::before   {background-color:#fff !important;}

.dark {
	background-color: #444;
	margin: 0 auto 10px auto;
	color: #ddd;
	padding: 5px 10px;
}
.dark ul, .mcolor ul, .white ul {
	padding-left: 10px;
}

.dark a, .colors a { color: #ddd !important;}

body {
    background-image: url('https://totrenakitisxaras.gr/images/background.jpg?1777374790000') !important; 
    background-size: cover !important;
    background-attachment: fixed !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
}

#sp-component .sp-column .article-details, 
#sp-component .sp-column .blog, 
#sp-page-builder, 
.contact,
#sp-main-body {
    background: rgba(255, 255, 255, 0.85) !important;
    border: 1px solid rgba(0,0,0,0.1) !important;
}

.sp-megamenu-parent {
    background: rgba(255, 255, 255, 0.9) !important;
}
#sp-logo img {
    max-height: 170px !important; /* Αλλάξτε το 150px ανάλογα με το πόσο μεγάλο το θέλετε */
    width: auto !important; 
    height: auto !important;
}


#sp-logo {
    margin-top: 10px !important;
    margin-bottom: 10px !important;
}

/* Μετακίνηση λογοτύπου αριστερά */
#sp-logo {
    justify-content: flex-start !important; /* Σπρώχνει το λογότυπο αριστερά */
    margin-left: 10 !important;
    padding-left: 50px; /* Μικρή απόσταση από την άκρη για να μην "κολλάει" */
}

/* Ευθυγράμμιση της εικόνας μέσα στο logo container */
#sp-logo a {
    display: flex;
    justify-content: flex-start;
}

/* --- Διόρθωση Responsive για το Header --- */

/* 1. Για μεγάλες οθόνες (Desktop) */
@media (min-width: 992px) {
    #sp-header > .container > .row {
        display: flex !important;
        align-items: center !important;
        flex-wrap: nowrap !important; /* Κρατάει logo και μενού στην ίδια ευθεία */
    }
    #sp-logo {
        flex: 0 0 auto !important;
        width: 250px !important; /* Σταθερό πλάτος για το logo */
    }
    #sp-menu {
        flex: 1 !important;
        justify-content: flex-end !important;
    }
}

/* 2. Για μεσαίες οθόνες (Tablets) */
@media (min-width: 768px) and (max-width: 991px) {
    #sp-logo img {
        max-height: 80px !important; /* Μικραίνει λίγο το logo για να χωρέσει */
    }
    .sp-megamenu-parent > li > a {
        font-size: 14px !important; /* Μικραίνει η γραμματοσειρά του μενού */
        padding: 10px !important;
    }
}

/* 3. Για κινητά (Mobile) */
@media (max-width: 767px) {
    #sp-header > .container > .row {
        flex-wrap: wrap !important; /* Εδώ επιτρέπουμε να αλλάξει η σειρά αν δεν χωράνε */
    }
    #sp-logo {
        width: 100% !important;
        text-align: center !important;
        justify-content: center !important;
        margin-bottom: 10px;
    }
    #sp-logo img {
        max-height: 60px !important;
    }
    #sp-menu {
        width: 100% !important;
        justify-content: center !important;
    }
}

/* Διόρθωση για πολύ μεγάλες οθόνες (Desktop Full Screen) */
@media (min-width: 1200px) {
    #sp-header .container {
        max-width: 1320px !important; /* Περιορίζει το πλάτος για να μην "ανοίγουν" πολύ οι άκρες */
        margin: 0 auto !important;
    }

    #sp-header .row {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: flex-start !important; /* Ευθυγραμμίζει logo και μενού προς τα αριστερά */
    }

    #sp-logo {
        margin-right: 40px !important; /* Δίνει μια σταθερή απόσταση ανάμεσα σε logo και μενού */
        flex: 0 0 auto !important;
    }

    #sp-menu {
        flex: 0 0 auto !important;
        width: auto !important;
    }

    /* Αν το μενού είναι κάθετο, βεβαιωνόμαστε ότι οι επιλογές μένουν η μία κάτω από την άλλη */
    ul.sp-megamenu-parent {
        display: flex !important;
        flex-direction: column !important; 
        border: none !important;
        background: transparent !important;

    }
  /* Ρυθμίσεις για Ultrawide οθόνες (2560px) */
@media (min-width: 1400px) {
    /* Περιορίζουμε το πλάτος του header για να μη σκορπάνε τα στοιχεία */
    #sp-header .container {
        max-width: 1400px !important; 
        margin-left: 50px !important; /* Το κρατάμε προς τα αριστερά με μια μικρή απόσταση */
        margin-right: auto !important;
    }

    #sp-header .row {
        display: flex !important;
        justify-content: flex-start !important; /* Τα σπρώχνει όλα αριστερά */
        align-items: flex-start !important;
    }

    #sp-logo {
        margin-right: 30px !important; /* Σταθερή απόσταση ανάμεσα σε Logo και Μενού */
        flex: 0 0 auto !important;
    }

    #sp-menu {
        flex: 0 0 auto !important;
        margin-top: 20px !important; /* Προσαρμόστε το για να ευθυγραμμιστεί με το Logo */
    }

    /* Διασφάλιση ότι το μενού παραμένει κάθετο */
    ul.sp-megamenu-parent {
        flex-direction: column !important;
        display: flex !important;
    }
}
/* Σταθεροποίηση Logo και Menu για μεγάλες οθόνες */
@media (min-width: 1200px) {
    /* Δημιουργούμε ένα σταθερό "κουτί" για το Header */
    #sp-header .container {
        width: 1200px !important; /* Σταθερό πλάτος ανεξάρτητα από την οθόνη */
        max-width: 1200px !important;
        margin-left: 100px !important; /* Σταθερή απόσταση από την αριστερή άκρη */
        margin-right: auto !important;
        display: flex !important;
        flex-direction: row !important;
        align-items: flex-start !important;
    }

    /* 1. Διορθώνουμε τη θέση του Logo για να μην κολλάει αριστερά */
#sp-logo {
    display: flex !important;
    justify-content: flex-start !important;
    padding-left: 60px !important; /* Δίνει απόσταση από την άκρη της οθόνης */
    margin-top: 20px !important;
}

/* --- ΚΑΘΑΡΟΣ ΚΩΔΙΚΑΣ ΓΙΑ LOGO & MENU --- */

/* 1. Ρυθμίσεις Λογοτύπου */
#sp-logo {
    display: flex !important;
    justify-content: flex-start !important;
    padding-left: 60px !important; /* Δίνει απόσταση από την άκρη για να μη "κόβεται" */
    margin-top: 20px !important;
    margin-bottom: 10px !important;
}

#sp-logo img {
    max-height: 180px !important; /* Μεγαλώνει το λογότυπο */
    width: auto !important;
    height: auto !important;
}

/* 2. Ρυθμίσεις Μενού (Για να είναι κάθετο κάτω από το Logo) */
#sp-menu .sp-column {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    padding-left: 60px !important; /* Ίδια απόσταση με το logo για τέλεια ευθυγράμμιση */
}

/* 3. Μορφοποίηση Μενού (Κάθετη διάταξη με λευκό φόντο) */
ul.sp-megamenu-parent {
    display: flex !important;
    flex-direction: column !important;
    background-color: #ffffff !important; /* Εδώ μπαίνει το λευκό χρώμα */
    border: 1px solid #f1f1f1 !important; /* Το διακριτικό περίγραμμα */
    box-shadow: 0 5px 20px rgba(0,0,0,0.1) !important; /* Η σκιά για να "πετάει" */
    padding: 10px !important;
    border-radius: 6px !important;
    width: 250px !important; /* Σταθερό πλάτος */
}

/* Προσθήκη γραμμής ανάμεσα στα στοιχεία του μενού */
ul.sp-megamenu-parent > li {
    border-bottom: 1px solid #f1f1f1 !important;
}

ul.sp-megamenu-parent > li:last-child {
    border-bottom: none !important;
}
