/*!
Theme Name:    Dreamland Preview Theme
Author:        Dreamland GmbH &amp; Co. KG
Author URI:    https://www.dreamland.de
Description:   Dreamland Preview Theme
Version:       1.0.0
License:       GNU General Public License v3 or later
License URI:   https://www.gnu.org/licenses/gpl-3.0.html
Template:      page-builder-framework
Text Domain:   page-builder-framework-child
*/

html {
  scroll-behavior: smooth;
}

@media (prefers-reduced-motion: reduce) {
  html{
    scroll-behavior: auto;
  }
}



/* LP */

.st_head h3{
    text-transform: none;
    letter-spacing: 0.8px;
}

.st_head p{
    color:#fff;
    font-size:16px;
}

.vc_btn3-color-grey {
    background-color: #b19b83 !important;
    border-color: #b19b83 !important;
    color: #fff !important;
    padding: 15px 40px !important;
}


.feature-content {
  display: flex;
  align-items: flex-start; /* Standard: Icon bleibt oben ausgerichtet */
  gap: 12px;               /* Abstand zwischen Icon und Text */
}

.feature-icon {
    width: 35px;
    height: auto;
    flex-shrink: 0;
    display: block;
    padding-top: 13px;
}

.feature-text {
  font-size: 13px;
  line-height: 2;
  color: #3a4048;
}

.feature-text strong {
    display: block;
    font-weight: 700;
    font-size: 23px;
    color: #000;
    padding-bottom: 10px;
}

.content_head p {
line-height:1.4;
}


/* --- Bild mit abgerundeten Ecken --- */
.vc_single_image-wrapper img {
  border-radius: 15px; /* abgerundete Ecken */
}

/* --- Weißer Content-Kasten --- */
.hardfacts_content .vc_column-inner {
  background: #fff;
  border-radius: 15px;
  box-shadow: 0 2px 5px rgba(0,0,0,0.08);
  padding-top: 20px;
  text-align: center; /* Inhalte mittig */
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 85%;
  margin: 0 auto;
    margin-top: -85px;
}

/* --- Headline (h3, rote Zeile) --- */
.hardfacts_content h3 {
  font-size: 15px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-bottom: 10px;
}

/* --- Zweite Zeile (stark betont) --- */
.hardfacts_content strong {
  display: block;
  font-size: 23px;
  font-weight: 700;
  color: #000;
  margin-bottom: 10px;
  line-height: 1.3;
}

/* --- Fließtext darunter --- */
.hardfacts_content p {
  font-size: 13px;
  line-height: 1.6;
  color: #3a4048;
  margin: 0 0 20px 0;
}

/* --- Optional: Button-Stil wie in der Vorlage --- */
.hardfacts_content .btn,
.hardfacts_content a.button {
  display: inline-block;
  background: #bfa48c;
  color: #fff;
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
  padding: 10px 22px;
  border-radius: 6px;
  transition: background 0.2s ease;
}

.hardfacts_content .btn:hover,
.hardfacts_content a.button:hover {
  background: #a58a73;
}




/* ---- Spalten-Styling für die weißen Boxen ---- */
.home_ql .vc_column-inner {
  background: #fff;                /* Weißer Hintergrund */
  border-radius: 15px;             /* Abgerundete Ecken */
  box-shadow: 0 2px 5px rgba(0,0,0,0.08); /* Sanfter Schatten */
  padding-top:25px !important;
}

/* ---- Optional: gleichmäßige Abstände zwischen Spalten ---- */
.home_ql .vc_row {
}

/* ---- Optionale kleine Anpassung für kleinere Bildschirme ---- */
@media (max-width: 768px) {
  .home_ql .vc_column-inner {
    padding: 20px;
    border-radius: 12px;
  }
}


/* VIDEO */

.video-button {
  background: #c00;
  color: #fff;
  border: none;
  padding: 12px 24px;
  cursor: pointer;
  font-size: 1rem;
  border-radius: 6px;
}

.video-modal {
  display: none;
  position: fixed;
  z-index: 9999;
  inset: 0;
  background-color: rgba(0,0,0,0.8);
  justify-content: center;
  align-items: center;
}

.video-modal-content {
  position: relative;
  background: #000;
  padding: 0;
  border-radius: 10px;
  max-width: 90%;
}

.video-wrapper iframe {
  width: 100%;
  height: 60vh;
  border: 0;
  border-radius: 10px;
}

.video-close {
  position: absolute;
  top: 8px;
  right: 14px;
  color: #fff;
  font-size: 30px;
  cursor: pointer;
  z-index: 10;
}




/* FOOTER */


.wpbf-footer-widget-2 h4, .wpbf-footer-widget-4 h4{
	visibility: hidden;
}


.wpbf-widget-footer .wpbf-padding-large {
    padding-top: 40px;
    padding-bottom: 20px;
}

.wpbf-inner-footer {
}


.wpbf-social-icon {
    font-size:50px;
}

.wpbf-social-icons.wpbf-social-shape-plain a {
    margin: 0px 10px;
    line-height: 1;
}

.home_ql .wpb_text_column{
    margin-top: -25%;
    background-color: #fff;
}

.wpbf-widget-footer .wpbf-footer-widget {
    margin-bottom: 0px !important;
}

.wpbf-widget-footer .wpbf-padding-large {
    padding-top: 40px;
    padding-bottom: 0px;
}


/* Liste */

.custom-bullets ul{
  list-style: none; /* Standardpunkte entfernen */
  padding-left: 0;
  margin: 0;
}

.custom-bullets ul li {
  position: relative;
  padding-left: 34px; /* Platz für das Icon */
  margin-bottom: 20px;
  line-height: 1.6;
  min-height:40px;
}

/* Icon als Bullet */
.custom-bullets ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 30%;
  width: 20px;
  height: 20px;
  transform: translateY(-50%);
  background-image: url("/wp-content/uploads/2025/11/icon_list.webp");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: top;
}




/* CF7 FORMULAR */

.cf7kontakt-form-outer div{
    display:inline-block;
    width:49.5%;
    margin-bottom:10px;

}

.cf7kontakt-form-outer p, .cf7kontakt-datenschutz p{
	margin-bottom:0px;
}

.cf7kontakt-form-outer div:nth-child(odd) {
    margin-right:7px;
}

.cf7kontakt-form-outer div:nth-child(even) {
    margin-right:0px;
}


.cf7kontakt-form-outer div input, .cf7kontakt-textfeld{
    /* border:1px solid #B5D059; */
    border:none;
    background-color: #f5f5f5;
}


.wpcf7 input::placeholder, .cf7kontakt-textfeld::placeholder {
	color: #262B2B !important;
	opacity: 1;
}


 .cf7kontakt-textfeld {
    width:100%;
}

.cf7optional-text {
    color: #262B2B;
    padding-top: 40px;
    padding-bottom: 10px;
    margin-bottom: 15px;
    border-bottom: 1px solid #262B2B;
    width: 97%;
}

.wpcf7-file {
    color: #262B2B;
    padding-bottom:40px;
}


.cf7kontakt-datenschutz {
    font-size: 13px;
    padding: 10px 0px 10px 0px;
    color: #262B2B;
}

.cf7kontakt-datenschutz .wpcf7-list-item {
	margin:0px;
	padding-top:2px;
}

.cf7kontakt-datenschutz a{
    color: #262B2B;
    text-decoration: underline;
}

 .wpcf7-submit {
	color: #2B2B2B !important;
	text-transform:uppercase;
    border:2px solid #262B2B !important;
    background-color: transparent !important;
    font-weight:400 !important;
    margin-top:15px;
    min-width:200px;
    padding:13px 19px !important;
 }

.wpcf7-submit:hover {
	transition: all 0.2s ease;
	color: #fff !important;
    border:2px solid #262B2B !important;
    background-color: #262B2B !important;
}



/* MOBILE FORM*/

@media screen and (max-width: 767px) { 

	h1{
font-size:40px !important
	}
	
	
.cf7kontakt-form-outer div{
    width:100%;
}

.cf7kontakt-form-outer {
    margin-bottom: 10px;
}

}