#ctins-landing-cta-2:hover {
  color: white !important;
}

/* 
 * Homepage about me
*/
.ctins-about-home.e-con-boxed > .e-con-inner,
.ctins-about-alex-card.e-con.e-child > .elementor-element.elementor-widget.elementor-widget-image
{
  max-width: 100%;
  margin: 0;
  padding-left: 0;
  padding-right: 0;
}

.ctins-about-home > .e-con-inner,
.ctins-about-alex-card.e-con.e-child > .elementor-element.elementor-widget.elementor-widget-image
{
  display: flex;           /* ήδη είναι flex, το βάζουμε για σιγουριά */
  align-items: stretch;    /* ίσο ύψος ανάμεσα στις 2 στήλες */
  gap: 24px;               /* απόσταση μεταξύ των δύο στηλών (προαιρετικό) */
}

/* 3) Κάνε τα children να μοιράζονται σωστά το πλάτος (αν έχεις ποσοστά, δεν πειράζει) */
.ctins-about-home > .e-con-inner > .e-con{
  flex: 1 1 0;
  min-width: 0;            /* αποφυγή overflow από μεγάλα κείμενα */
}

.ctins-about-home > .e-con-inner > .e-con:first-child{
  overflow: hidden;
}

/* 5) Το image widget να πάρει ΟΛΟ το ύψος της στήλης εικόνας */
.ctins-about-home > .e-con-inner > .e-con:first-child .elementor-widget-image,
.ctins-about-home > .e-con-inner > .e-con:first-child .elementor-widget-image .elementor-widget-container{
  height: 100%;
}

/* 6) Η ίδια η εικόνα: cover ώστε να έχει ίδιο ύψος με το κείμενο και να «κόβεται» σωστά */
.ctins-about-home > .e-con-inner > .e-con:first-child .elementor-widget-image img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}


/* Mobile: σε στοίχιση κάθετη μην τεντώνεις το ύψος */
@media (max-width: 1100px){
  .ctins-about-home > .e-con-inner{
    flex-direction: column !important;
    gap: 16px;
  }
  .ctins-about-home > .e-con-inner > .e-con{
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
  }
  /* Η εικόνα να μην τεντώνει σε ύψος στο mobile */
  .ctins-about-home > .e-con-inner > .e-con:first-child .elementor-widget-image img{
    height: auto;
  }
}

@media (min-width: 1024px) and (max-width: 1620px) {
  .ctins-about-home{
    width:95vw !important;
  }

  .ctins-about-home.e-con-boxed > .e-con-inner{
    max-width: 100% !important;
    margin: 0;
    padding-left: 0;
    padding-right: 0;
  }
}
@media (min-width: 1024px) {
  .ctins-about-home{
    width:80vw !important;
  }
}

/*
 * home contact
*/
@media (max-width: 1200px) {
	#ctins-home-contact {
        grid-template-columns: repeat(1, 1fr) !important;
    }
}

/* contact form */
/* 2 στήλες με ωραία απόσταση, σπάει σε 1 στήλη σε μικρές οθόνες */
.elementor-element-08311cc .wpcf7-form label,
.elementor-element-08311cc .wpcf7-form legend,
.elementor-element-08311cc .wpcf7-form .wpcf7-list-item-label,
.elementor-element-08311cc .wpcf7-form p,
.elementor-element-08311cc .wpcf7-form a {
  color: #fff;
  margin-bottom: 0;
}

/* Προαιρετικά: τα μηνύματα λάθους να μείνουν κόκκινα */
.elementor-element-08311cc .wpcf7-not-valid-tip {
  color: #ff6b6b;
}

/* Πράσινο κουμπί Υποβολή */
.elementor-element-08311cc .wpcf7-submit {
  background: var(--accent);
  color: #fff;
  border: 0;
  border-radius: 10px;
  padding: 12px 18px;
  font-weight: 700;
  cursor: pointer;
  margin-top: 1em;
}

.elementor-element-08311cc .wpcf7-submit:hover {
  background: #ff6d5a;
  /* πιο σκούρο στο hover */
}

/* (προαιρετικά) το link στην Πολιτική Απορρήτου λίγο πιο φωτεινό */
.elementor-element-08311cc .wpcf7-form a:hover {
  text-decoration: underline;
}
.wpcf7 form .ctins-contact-form-flex-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin-bottom: 6px;
}
.wpcf7-list-item-label,
.ctins-contact-form label {
  color: var(--ctins-off-white) !important;
}

.ctins-contact-form {
  width: 35vw;
  box-shadow: 0 10px 28px rgb(0 0 0 / 74%);
  border-color: rgba(0, 0, 0, .12);
  margin: 0 auto;
}

@media (max-width: 1350px) {
  .ctins-contact-form {
    width: 50vw;
  }
}

@media (max-width: 1190px) {
  .ctins-contact-form {
    width: 65vw;
  }
}

@media (max-width: 880px) {
  .ctins-contact-form {
    width: 90vw;
  }
}

.wpcf7 form .ctins-contact-form-flex-row label {
  display: block;
}

/* Mobile */
@media (max-width: 640px) {
  .wpcf7 form .ctins-contact-form-flex-row {
    grid-template-columns: 1fr;
  }
}

.ctins-contact-form-flex-row p {
  margin-bottom: 0em;
}

.ctins-contact-form-flex-row label {
  margin-bottom: 0.5em;
  color: var(--ctins-white) !important;
}
.ctins-contact-form-flex-row br {
  display: none;
}

/* lading image */
.hero-cover-fix{
  background-repeat: no-repeat;
  background-position: 70% 35%;
  background-size: cover;
}

@media (min-width: 1600px){
  .hero-cover-fix{
    background-size: contain;
    background-color: #111; /* ή ό,τι ταιριάζει */
  }
}
