/**
Theme Name: Astra 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: astra-child
Template: astra
*/

/*@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,600;0,700;1,100;1,200;1,300;1,400;1,600;1,700&display=swap');*/

/*@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,600;0,700;1,100;1,200;1,300;1,400;1,600;1,700&family=Source+Sans+Pro:ital,wght@0,200;0,300;0,400;0,600;0,700;1,200;1,300;1,400;1,600;1,700&display=swap');*/

/*@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300;0,400;0,600;0,700;1,300;1,400;1,600;1,700&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,600;0,700;1,100;1,200;1,300;1,400;1,600;1,700&family=Source+Sans+Pro:ital,wght@0,200;0,300;0,400;0,600;0,700;1,200;1,300;1,400;1,600;1,700&display=swap');
*/



/*body {
	margin-top: -56px;  
}

.ast-page-builder-template .site-content > .ast-container {
    margin-top: -52px;
}*/ 



/* Varmista, että tavutus on käytössä kaikissa selaimissa */
html {
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
}

body, p, a {
    /*font-family: 'Poppins', sans-serif !important;*/
	font-family: 'Source Sans Pro', sans-serif;
	/*font-family: 'Open Sans', sans-serif !important;*/
}

h1, h2, h3, h4, h5, h6 {
	font-weight: 600;
	font-family: 'Montserrat', sans-serif !important;
}

p {
	font-weight: 300;
	
	word-break: break-word;
    hyphens: auto;
    overflow-wrap: break-word;
}


.elementor-widget-text-editor p,
.entry-content p {
	margin-bottom: 1em !important;
}



.posted-by.vcard.author {
	display: none;
}





.elementor-nav-menu .lang-item-sv {
	display: none !important;
}





.elementor-nav-menu--layout-horizontal ul li.buttoni a {
	background: #fff;
	color: #000 !important;
	-webkit-border-radius: 25px; /* Chrome <5, Safari <5 */
    -moz-border-radius: 25px;    /* Firefox <4 */
    border-radius: 25px;
	padding:10px 25px;
}
.elementor-nav-menu--layout-horizontal ul li.buttoni a:hover {
	background: #cbcbcb !important;
	color: #000;
	padding: 10px 25px !important;
}




.elementor-nav-menu li .sub-menu li a sup {
	top: -0.3em !important;
}


.elementor-nav-menu li.lang-item a {
	padding-left: 10px !important;
	padding-right: 10px !important;
}



.elementor-testimonial__text {
    color: #000000;
    font-size: 20px !important;
    font-weight: 300 !important;
    line-height: 1.5em !important;
}

.elementor-testimonial__title {
    color: #000000;
    font-weight: 400;
    line-height: 1.2em !important;
}


footer a {
	font-weight: 300 !important;
}


body.single-post .ast-container {
	margin-top: 69px; 
}

#qs-palkki .elementor-element.elementor-element-9b38c51 {
	margin-bottom: 0px;
}
#qs-palkki .elementor-element.elementor-element-9b38c51 .elementor-heading-title {
	/*font-weight: bold !important; */
	padding-top: 4px;  
	padding-bottom: 8px; 
	margin-bottom: 0px;
}

 




/* 1) Aseta sub-menu:lle auto-leveys ja pakota sana-katkaisut */
.elementor-nav-menu--layout-horizontal .menu-item-has-children > .sub-menu.elementor-nav-menu--dropdown {
  position: absolute !important;  /* varmistetaan absoluuttinen asettelu */
  top: 100% !important; 
  left: 0 !important;
  width: auto !important;         /* anna sen mukailla sisältöä */
  min-width: 170px !important;    /* säädä mieleiseksi */
  max-width: 330px !important;    /* valinnainen, estää yliviivyn */
  box-sizing: border-box !important;
  white-space: normal !important;  /* teksti saa rikkoa rivin */
  overflow-wrap: break-word !important; /* sanojen välistä katkaisu */
  padding: 0.5em 0 !important;     /* ylä-/alaväliä */
  z-index: 999 !important;
}

/* 2) Tee jokaisesta linkistä täytelinkki, jotta padding kohdistuu oikein */
.elementor-nav-menu--layout-horizontal 
  .menu-item-has-children 
  > .sub-menu.elementor-nav-menu--dropdown 
  .menu-link {
  display: block !important;
  padding: 0.5em 1em !important;
  white-space: normal !important;  /* varmistaa rivinaukaisun */
}

/* 3) Estä overflow, jos haluat leikata yli menevän tekstin */
.elementor-nav-menu--layout-horizontal 
  .menu-item-has-children 
  > .sub-menu.elementor-nav-menu--dropdown {
  overflow: hidden !important;
}






  








/* Muuttaa lomakekenttien tekstit mustaksi ja lisää välistystä */
.wpcf7 label,
.wpcf7 p {
  color: #000000;
  margin-bottom: 0.5em;
  font-weight: normal !important;
  display: block;
}
.wpcf7 label span {
	margin-top: 5px;
}

.wpcf7 ul,
.wpcf7 ul li {
	color: #000000 !important;
	font-weight: normal !important;
}


.wpcf7 ul li {
  margin: 5px 0px;
}


.wpcf7 .info {
	
	padding: 25px 30px;
	background: #d7d7d7;
	-webkit-border-radius: 25px; /* Chrome <5, Safari <5 */
    -moz-border-radius: 25px;    /* Firefox <4 */
    border-radius: 25px;
	
}

.wpcf7-not-valid-tip {
    color: red;
    font-size: 0.8em;
    font-weight: normal;
    display: block;
	border: 1px solid red;
	padding: 7px 15px;
}

.wpcf7 input[type="text"],
.wpcf7 input[type="email"], 
.wpcf7 input[type="tel"], 
.wpcf7 input[type="number"], 
.wpcf7 textarea {
  color: #000 !important;
  margin-bottom: 1em; /* Lisää välistystä */
  border: 1px solid #555 !important; /* Lisää kevyt reunus */
  border-radius: 15px;
  padding: 10px; /* Lisää tilaa sisäpuolelle */
  background: #fff !important;
  transition: background-color 0.2s, color 0.2s;
}
.wpcf7 input[type="text"]:focus,
.wpcf7 input[type="email"]:focus,
.wpcf7 textarea:focus {
  background-color: #ffffff;
  color: #000;
}

.wpcf7 input[type="number"] {
	
	min-width: 100px;
	
}

/* Määrittelee lomakenappulan tyylit */
.wpcf7 input[type="submit"] {
  background-color: #000000;
  color: #ffffff;
  text-transform: uppercase;
  font-size: 18px;
  padding: 12px 35px;
  border-radius: 30px;
  cursor: pointer;
  transition: background-color 0.3s, color 0.3s;
}


/* Määrittelee lomakenappulan tyylit hiiren ollessa päällä */ 
.wpcf7 input[type="submit"]:hover,
.wpcf7 input[type="submit"]:focus {
  background-color: #ffffff;
  color: #000000;
}

/* Varmistaa, että GDPR-checkbox näkyy selkeästi */
.wpcf7 input[type="checkbox"] + span {
  color: #000000;
  padding-left: 5px;
}

/* Muuttaa GDPR-checkboxin rastin väriä */
.wpcf7 input[type="checkbox"]:checked + span::before {
  color: #000000;
}

/* Lisää välistystä GDPR-tekstin ja checkboxin väliin */
.wpcf7 .wpcf7-list-item {
  margin-bottom: 0.2em;
}

/* Jos käytät placeholder-tekstiä, voit muuttaa sen väriä seuraavasti */
.wpcf7 input::placeholder,
.wpcf7 textarea::placeholder {
  color: #666666;
}














#valkonenlomake .wpcf7 label,
#valkonenlomake .wpcf7 p,
#valkonenlomake .wpcf7 h4,
#valkonenlomake .wpcf7 h5 {
  color: #fff;
}
#valkonenlomake .wpcf7 label span {
	
}

#valkonenlomake .wpcf7 ul,
#valkonenlomake .wpcf7 ul li {
	color: #fff !important;
}


#valkonenlomake .wpcf7 ul li {
  
}


#valkonenlomake .wpcf7 .info {
	
	background: transparent;
	-webkit-border-radius: 5px; /* Chrome <5, Safari <5 */
    -moz-border-radius: 5px;    /* Firefox <4 */
    border-radius: 5px;
	
	border: 1px solid #fff;
	
}


#valkonenlomake .wpcf7 input[type="text"],
#valkonenlomake .wpcf7 input[type="email"], 
#valkonenlomake .wpcf7 input[type="tel"], 
#valkonenlomake .wpcf7 input[type="number"], 
#valkonenlomake .wpcf7 textarea {
  color: #000 !important;
  border: 1px solid #f5f5f5 !important; /* Lisää kevyt reunus */
  border-radius: 0px;
  background: #f5f5f5 !important;
}
#valkonenlomake .wpcf7 input[type="text"]:focus,
#valkonenlomake .wpcf7 input[type="email"]:focus,
#valkonenlomake .wpcf7 textarea:focus {
  background-color: #fff;
  color: #000;
}

#valkonenlomake .wpcf7 input[type="number"] {
		
}

/* Määrittelee lomakenappulan tyylit */
#valkonenlomake .wpcf7 input[type="submit"] {
  background-color: #fff;
  color: #000;
}


/* Määrittelee lomakenappulan tyylit hiiren ollessa päällä */ 
#valkonenlomake .wpcf7 input[type="submit"]:hover,
#valkonenlomake .wpcf7 input[type="submit"]:focus {
  background-color: #444;
  color: #fff;
}

/* Varmistaa, että GDPR-checkbox näkyy selkeästi */
#valkonenlomake .wpcf7 input[type="checkbox"] + span {
  color: #fff;
}

/* Muuttaa GDPR-checkboxin rastin väriä */
#valkonenlomake .wpcf7 input[type="checkbox"]:checked + span::before {
  color: #fff;
}

/* Lisää välistystä GDPR-tekstin ja checkboxin väliin */
#valkonenlomake .wpcf7 .wpcf7-list-item {
  
}

/* Jos käytät placeholder-tekstiä, voit muuttaa sen väriä seuraavasti */
#valkonenlomake .wpcf7 input::placeholder,
#valkonenlomake .wpcf7 textarea::placeholder {
  color: #eee;
}









/* 1) Yleiset mobiilisäännöt (swipeable) */
.tablepress {
  width: 100% !important;
  display: block !important;
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch !important; 
}

/* Ota käyttöön, kun haluat korostaa TablePress-taulukon ensimmäisen rivin */
.tablepress thead th,
.tablepress tbody tr:first-child td {
  font-weight: bold !important;            /* lihavointi */
  background-color: #f5f5f5 !important;    /* vaalea harmaa tausta */
}


/* 2) Työpöytä: palauta table-layout ja pakota 100 % leveys */
@media (min-width: 768px) {
  .tablepress {
    display: table !important;           /* käytä normaalia table-renderöintiä */
    table-layout: auto !important;       /* sarakkeet mukautuvat sisältöön */
    width: 100% !important;              /* ota koko kontainerin leveys */
    overflow-x: visible !important;      /* ei rajoiteta leveyttä */
  }
}




 







@media screen and (min-width: 1600px) {
	.elementor-16806 .elementor-element.elementor-element-fa209b2 .elementor-nav-menu .elementor-item {

		font-size: 1.2em !important;

	}


  }

@media only screen and (max-width: 991px) {
	.elementor-nav-menu--main .elementor-nav-menu a {
		/*padding: 13px 15px !important;*/
	}
}



@media only screen and (max-width: 768px) {
	
	body {
		margin-top: -63px;
	}
	
	body.blog .site-content {
		margin-top: 64px;
	}
	

	
	body.cartflows_step-template-default .cartflows_step .elementor-top-section {
		/*padding-top: 100px;*/
	}
	
	.elementor-column-gap-narrow>.elementor-row>.elementor-column>.elementor-element-populated {
		padding: 0px;
	}
	
	
	
	
	
	

	
	
	
	

}
