:root {
	font-size: 18px;
	--maincolor: #040256;
    --secondcolor: #8cd9ff;
    --thirdcolor: #f847c9;
  --backgroundcolor: #efeefa;
}

/*Typo START*/
p {
  margin-bottom: 1rem;
}
#preise .sppb-addon-table p{
    margin: 0px;
}
 h1,h2,h3,h4,h5,h6{  
   text-transform: initial;
 } 

 body, .timeline-panel .details, .sp-megamenu-parent > li > a, .sp-megamenu-parent > li > span, .sp-megamenu-parent > li:last-child > a, .grp-reviews-review-text, .sppb-sp-slider-text{
    font-size: 1rem !important;
 }
.grp-reviews-review-text{
    line-height: 130%;
}
h1.hero-title{
  font-size: 4rem !important;
}
h1{
    font-size: 2.9rem !important;
}
h2{
  font-size: 2.6rem !important;
}
h3{
  font-size: 2.4rem !important;
}
h4{
  font-size: 1.6rem !important;
}
h5{
    font-size: 1.4rem !important;
}
h6, .timeline-date, .sppb-panel-custom .sppb-panel-heading .sppb-panel-title, .timeline-panel .title{
   font-size: 1.2rem !important;
}
.timeline-date{
    color: #eee;
    font-weight: bold;
}
.hero-title span{
    text-transform: initial !important;
}
.contact-items h6{
  font-size: 1.1rem !important;
}
a:hover, #sppb-addon-aafda223-e4da-47a3-98fe-285b6d8d56e6 a:focus, #sppb-addon-aafda223-e4da-47a3-98fe-285b6d8d56e6 a:active {
  color: var(--thirdcolor) !important;
}
h2.sppb-addon-title{
  color: var(--maincolor);
}
.sp-slider h6 {
  display: inline-block;
  background: linear-gradient(
    135deg,
    rgba(255, 170, 0, 0.25),
    rgba(230, 0, 126, 0.25)
  );
  color: #ffffff !important;
  padding: 6px 14px;
  border-radius: 30px;
  font-weight: 600;
  letter-spacing: .5px;
  backdrop-filter: blur(6px);
  border: 1px solid rgba(255,255,255,0.2);
}
.subtitle .sppb-addon-title, 
.tour-discover-wrapper h6 {
    display: inline-block !important;
    
    background: linear-gradient(
        135deg,
        #ffcc33,
        #ff7a00
    ) !important;
    
    color: #1a1a1a !important;
  
    padding: 7px 18px !important;
    border-radius: 999px !important;
    position: relative;
    font-size: 0.9rem !important;
    font-weight: 900 !important;
    letter-spacing: .4px !important;
    border: none !important;
}
.subtitle .sppb-addon-title, 
.tour-discover-wrapper h6 {
    display: inline-flex !important;
    align-items: center;
    gap: 10px;
}

.subtitle .sppb-addon-title:before, 
.tour-discover-wrapper h6:before {
    content: '';
    display: inline-block;
    
    width: 20px;
    height: 20px;
    
    background: url(../images/palme.png) no-repeat center;
    background-size: contain;
    
    opacity: 0.9;
}
.timeline-panel .title{
    
}
.tour-discover-wrapper h6{
    font-weight: normal !important;
}
.about-icon-items svg{
  margin: 0px -15px 0px -33px;
}
.about-icon-items{
  margin-left: 30px;
}
.tour-discover-wrapper h4, .timeline-panel .title{
    color: var(--maincolor);
    font-weight: bold !important;
}
.sp-page-title .breadcrumb > li > a,
.breadcrumb > li > a {
font-size: 1.2rem !important;
  color: #fff;
}
.sp-page-title .breadcrumb > .active span, .breadcrumb > .active span{
    font-size: 1.2rem;
}
/*Typo END*/

/*Header START*/
#sp-header .logo {
  height: 120px;
}
#sp-header .logo img{
  height: 120px !important;
}
/* Logo größer */
#sp-logo .logo-image{
    height:auto !important;
    width: 100%;
    position:relative;
    z-index:3;
}

/* Logo Container vorbereiten */
#sp-logo .logo{
    position:relative;
    display:inline-block;
    padding:10px 25px 10px 25px;
}

/* Weißes Schild hinter dem Logo */
#sp-logo .logo:before{
    content:"";
    position:absolute;
    left:-10px;
    right:-10px;
    top:-20px;
    bottom:-40px;

    background:white;
    border-radius:12px;

    box-shadow:0 10px 25px rgba(0,0,0,0.25);

    z-index:1;
}

/* Logo leicht nach unten ziehen */
#sp-logo{
    transform:translateY(-10px);
}

#sp-top .topbar-contact{
    display: flex;
    align-items: center;
    justify-content: flex-end;   /* 🔥 alles nach rechts */
    gap: 24px;
    width: 100%;
    min-height: 52px;
}

/* Kontakt-Items */
#sp-top .topbar-contact__item{
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: rgba(255,255,255,0.72);
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    white-space: nowrap;
    transition: color 0.2s ease;
}

#sp-top .topbar-contact__item i{
    font-size: 14px;
}

/* Hover */
#sp-top .topbar-contact__item:hover{
    color: #ffffff;
}

/* Social Icons direkt daneben */
#sp-top .topbar-contact__social{
    display: flex;
    align-items: center;
    gap: 12px;
    margin-left: 10px;
}

#sp-top .topbar-contact__social a{
    color: rgba(255,255,255,0.72);
    font-size: 16px;
    transition: color 0.2s ease;
}

#sp-top .topbar-contact__social a:hover{
    color: #ffffff;
}

#sp-menu .justify-content-end{
    justify-content: center !important;
}

#sp-header.header-sticky #sp-logo .logo::before {
 display: none;
}
#sp-header.header-sticky #sp-logo .logo-image{
    height:80px !important;
}
#sp-header.header-sticky .sppb-btn-primary{
    padding: 10px 30px 10px 30px !important;
}
#sp-header.header-sticky #sp-logo {
  transform: translateY(0px);
}
#sp-header.header-sticky #sp-logo .logo{
    position: relative;
  display: inline-block;
  padding: 0px 0px 0px 0px;
    height: auto
}
#sp-header.header-sticky{
    padding: 10px 50px;
}
/*Header END*/


/*Navi START*/



/*Navi END*/


/*Buttons START*/
body .sppb-btn, body .sppb-sp-slider-button .sp-slider-btn-text, .login .btn, .registration form > div .btn, .reset form > div .btn, .hikashop_vote_form .button .btn, .hikashop_vote_form .button, .article-list .article .readmore a, .sppb-readmore{
  background-color: var(--thirdcolor);
}

body .sppb-btn::after, body .sppb-sp-slider-button .sp-slider-btn-text::after, .login .btn::after, .registration form > div .btn::after, .reset form > div .btn::after, .hikashop_vote_form .button .btn::after, .article-list .article .readmore a::after, .sppb-readmore::after{
  background-color: var(--maincolor) !important;
}
.contact-items .sppb-img-container {
  background-color: var(--maincolor) !important;

}


.shortcuts .sppb-icon-inner {
  background-color: var(--thirdcolor) !important;
}
.shortcuts .sppb-dynamic-content-text.content-span{
display: none;
}

.sppb-btn-primary:hover{
  color: #fff !important;
}

.slide-btn span{
    border-radius: 10px !important;
}
.slide-btn i{
    margin-right: 8px;
}

.sppb-btn-primary, .sppb-btn-secondary, .sppb-btn-dark{
    border-radius: 10px !important;
    border: none;
    transition: all .25s ease;
}
.sppb-btn-primary i, .sppb-btn-secondary i, .sppb-btn-dark i{
    margin-left: 15px;
}

.sppb-btn-secondary{
    background: #f37235 !important;
}
.sppb-btn-dark{
    background: #333 !important;
}
.sppb-btn-secondary:hover, .sppb-btn-dark:hover{
    color: #fff !important;
}
.sppb-btn-primary:hover{
    transform: translateY(-2px);
    box-shadow:0 8px 18px rgba(0,0,0,0.25);
}
body .sppb-btn, body .sppb-sp-slider-button .sp-slider-btn-text, .login .btn, .registration form > div .btn, .reset form > div .btn, .hikashop_vote_form .button .btn, .hikashop_vote_form .button, .article-list .article .readmore a, .sppb-readmore {

  padding: 9px 30px 9px 30px;
}
body .sppb-btn, body .sppb-sp-slider-button .sp-slider-btn-text, .login .btn, .registration form > div .btn, .reset form > div .btn, .hikashop_vote_form .button .btn, .hikashop_vote_form .button, .article-list .article .readmore a, .sppb-readmore{
    text-transform: initial;
}
/*Buttons END*/


/*Inhalt START*/
.sppb-addon-timeline .timeline-panel {
  background-color: rgba(255,255,255,0.9) !important;
}
.tour-content ul li i {
  color: var(--maincolor) !important;
}
.faq-box{
    margin-top: 130px;
}
/* Slider Inhalt vertikal zentrieren */
#slide .sp-item .sppb-row {
    height: 100%;
    display: flex;
    align-items: center;
}

/* Container volle Höhe */
#slide .sp-item .sppb-container {
    height: 100%;
}

/* Hintergrundbild korrekt */
#slide .sp-background {
    height: 100%;
    background-size: cover;
    background-position: center;
}

/* Sicherheit: Slide selbst volle Höhe */
#slide .sp-item {
    height: 100%;
}
#slide .sp-slider-content-align-center {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
}
.sppb-sp-slider-text{
    width: 70%;
}
.c-image img {
    border-radius: 0.56rem;
    box-shadow: 0 0.8rem 2rem rgba(0,0,0,0.12);
    transition: transform 0.4s ease, box-shadow 0.4s ease;
    display: block;
}

.c-image {
    overflow: hidden;
    border-radius: 0.56rem;
}

.c-image:hover img {
    transform: scale(1.05);
    box-shadow: 0 1.2rem 2.8rem rgba(0,0,0,0.18);
}
.ba-gallery-row-wrapper .row-fluid{
    margin-bottom: -20px !important;
}

.destination-image-items-4::before {
  background: linear-gradient(180deg, rgba(21, 20, 21, 0) 0%, rgba(21, 20, 21, 0.92) 100%) !important;
}

.shortcuts{
    position: relative;
    margin-top: -200px;
    padding-bottom: 120px;
    background: transparent;
}

.shortcuts::before{
    content:"";
    position:absolute;
    left:0;
    right:0;
    top:200px; /* exakt Höhe des negativen Margins */
    bottom:0;
    background:var(--backgroundcolor); /* deine neue Hintergrundfarbe */
    z-index:-1;
}

#preise .sppb-addon-table-main{
    width:100%;
    border-collapse:separate;
    border-spacing:0;
    overflow:hidden;
    border-radius:0.8rem;
    box-shadow:0 0.7rem 1.7rem rgba(0,0,0,0.08);
    background:white;
}


/* Tabellenkopf */

#preise .sppb-addon-table-main thead th{
    background:#0b0f63;
    color:white;
    font-weight:600;
    padding:1rem 1.1rem;
   
}

#preise .sppb-addon-table-main thead th:first-child{
    text-align:left;
}


/* Tabellenzeilen */

#preise .sppb-addon-table-main tbody tr{
    transition:all .2s ease;
}


/* Zebra Effekt */

#preise .sppb-addon-table-main tbody tr:nth-child(odd){
    background:#f6f9fc;
}

#preise .sppb-addon-table-main tbody tr:nth-child(even){
    background:#eef4f9;
}


/* Hover Effekt */

#preise .sppb-addon-table-main tbody tr:hover{
    background:#e4f2ff;
    transform:scale(1.01);
}


/* Zellen */

#preise .sppb-addon-table-main td{
    padding:1rem 1.1rem;
    border:none;
}


/* erste Spalte */

#preise .sppb-addon-table-main td:first-child{
    font-weight:600;
    color:#0b0f63;
}


/* Preise */

#preise .sppb-addon-table-main td:nth-child(2),
#preise .sppb-addon-table-main td:nth-child(3){
    font-weight:700;
}


#faq .sppb-panel-group{
    display:flex;
    flex-direction:column;
 
}


/* Accordion Card */

#faq .sppb-panel{
    border-radius:0.8rem;
    background:white;
    border:0.05rem solid rgba(0,0,0,0.06);
    overflow:hidden;
    transition:all .25s ease;
}


/* Header */

#faq .sppb-panel-heading{
    padding:1rem 1.3rem;
    background:white;
    color:var(--maincolor);

    border-left:0.25rem solid rgba(0,0,0,0.1);


    transition:all .25s ease;
}


/* Hover */

#faq .sppb-panel-heading:hover{
    background:var(--backgroundcolor);
    border-left-color:var(--thirdcolor);
}


/* Active */

#faq .sppb-panel-heading.active{
    background:var(--backgroundcolor);
    border-left-color:var(--thirdcolor);
}


/* Icon rechts */

#faq .sppb-accordion-icon-wrap{
    width:2rem;
    height:2rem;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:var(--backgroundcolor);
    color:var(--maincolor);
    transition:all .25s ease;
}


/* Icon Hover */

#faq .sppb-panel-heading:hover .sppb-accordion-icon-wrap{
    background:var(--thirdcolor);
    color:white;
}


/* Icon Active */

#faq .sppb-panel-heading.active .sppb-accordion-icon-wrap{
    background:var(--thirdcolor);
    color:white;
    transform:rotate(180deg);
}
#faq  .sppb-panel-body{
    margin-top: 40px !important;
}

/* Content */

#faq .sppb-panel-body{
    padding:0.8rem 1.3rem 1.4rem 1.3rem;
    background:white;
}


/* Abstand zwischen Frage und Antwort */

#faq .sppb-panel-heading.active + .sppb-panel-collapse .sppb-panel-body{
    margin-top:0.6rem;
}
#column-id-858d72e3-318e-493b-bf6b-58d588d98671{
    position: relative;
    overflow: hidden;
    clip-path: polygon(
        18% 0,
        100% 0,
        100% 100%,
        8% 100%
    );
}

/* Text */

#faq .sppb-panel-body p{
    margin:0;
    line-height:1.6;
}

.c-item .sppb-addon-header{
    padding-left: 20px;
}
.c-item i{
    font-size: 1.5rem;
    line-height: 70px !important;
    color: var(--secondcolor) ;
}

.sp-dots{
    display: none;
}

.bookbox .sppb-column{
    -webkit-border-radius: 30px !important;
-moz-border-radius: 30px !important;
border-radius: 30px !important;
    padding: 30px;
}
/*Inhalt END*/
#kontakt .icon svg path{
    fill: var(--secondcolor) !important;
}

#kontakt  .c-item{
    border-bottom: 1px solid #ccc;
    padding-bottom: 20px;
}
#kontakt  .c-item.last{
    border-bottom: 0px
}
.listing .sppb-addon-content ul{
    padding-left: 50px;
    margin-top: 10px;
}
.listing .sppb-addon-content ul li:before{
    font-family: 'Font Awesome 5 Free';
font-weight: bold;
content: '\f00c';
margin:0 10px 0 -25px;
    color: var(--maincolor);
}
/*Forms START*/



/*Forms END*/


/*Footer START*/
.travil-footer{
    background-position: bottom center !important;
}
.travil-footer h5{
    margin-bottom: 40px !important;
    color: #fff !important;
}
.travil-footer h5:after{
    content: '';
    background: #fff;
    height: 3px;
    width: 50px;
    display: block;
    margin-top: 10px;
}

.travil-footer a{
    color: #fff !important;
}

.travil-footer{
     border-bottom: 8px solid var(--thirdcolor);
}
/*Footer END*/


/*Offcanvas START*/



/*Offcanvas END*/
@media screen and (max-width: 1500px) {
     body, .timeline-panel .details, .sp-megamenu-parent > li > a, .sp-megamenu-parent > li > span, .sp-megamenu-parent > li:last-child > a, .grp-reviews-review-text, .sppb-sp-slider-text{
    font-size: 0.9rem !important;
 }

    
}

@media screen and (max-width: 1400px) {
    .shortcuts .sppb-row-container{
        max-width: 100%;
    }
    #sp-menu .justify-content-end{
    justify-content: flex-end !important;
      
}
    
    #sp-position1{
        display: none;
    }
    #sp-menu{
        width: 80% !important;
        padding-left: 50px;
        padding-right: 50px;
    }
    #sp-logo{
        width: 20% !important;
    }
    body.ltr .sp-megamenu-parent > li.sp-has-child > a::after, body.ltr .sp-megamenu-parent > li.sp-has-child > span::after{
        display: inherit;
    }
      .sp-megamenu-parent > li + li > a {
    margin-left: 24px;
  }
.faq-box{
    margin-top: 185px;
}
    .three-btn .sppb-row-column{
        max-width: 50% !important;
  flex-basis: 50% !important;
    }
}

@media screen and (max-width: 1320px) {
.destination-image-items-4 {
    width: 270px !important;
  }
}

@media (max-width: 1199px) {
  #sppb-addon-edcd371d-2947-427b-a358-c353dd8733d0 .destination-wrapper-4 .sppb-dynamic-content-collection__item .destination-image-items-4 {
    width: 210px !important;
  }
}

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


    .sp-megamenu-parent{
        display: none !important;
        
    }
    #offcanvas-toggler{
        display: inherit !important;
    }
    #sp-logo{
        width: 80% !important;
    }
    #sp-menu{
        width: 20% !important;
        padding-left: 0px;
        padding-right: 40px;
    }
}

@media screen and (max-width: 991px) {
  	:root {
		font-size: 16px;
   }
    
  h1.hero-title{
  font-size: 3.6rem !important;
}
   h1{
    font-size: 2.6rem !important;
}
h2{
  font-size: 2.2rem !important;
}
h3{
  font-size: 1.8rem !important;
}
h4{
  font-size: 1.6rem !important;
}
h5{
    font-size: 1.4rem !important;
}
h6, .sppb-panel-custom .sppb-panel-heading .sppb-panel-title{
   font-size: 1.1rem !important;
}
  #sp-header .logo .d-none{
        display: inherit !important;
    }
    #sp-header .logo-image-phone{
        display: none !important;
    }
   #sp-header.header-sticky #sp-logo .logo-image {
  height: 70px !important;
}
    #sp-logo .logo::before{
    display: none;    
    }
    #sp-header{
        padding: 10px 50px;
    }
    #sp-header .logo img{
        width: auto !important;
        max-width: 100px;
        height: auto !important;
    }
    #sp-header .logo {
  height: auto;
}
    #sp-logo .logo::before{
        display: none;
    }
    #sp-logo {
  transform: translateY(0px);
}
    #sp-logo .logo {

  padding: 0px 25px 0px 25px;
}
    #column-id-858d72e3-318e-493b-bf6b-58d588d98671{
        clip-path: none;
    }
.faq-box{
    margin-top: 30px;
}
    .listing .sppb-addon-content ul {
  padding-left: 0px;

}
    .adresse{
        display: none !important;
    }
}

@media screen and (max-width: 767px) {
  	:root {
		font-size: 15px;
   }
  h1.hero-title{
  font-size: 3rem !important;
}
      h1{
    font-size: 2.2rem !important;
}
h2{
  font-size: 2rem !important;
}
h3{
  font-size: 1.6rem !important;
}
h4{
  font-size: 1.4rem !important;
}
h5{
    font-size: 1.2rem !important;
}
h6{
   font-size: 1rem !important;
}
    #sp-top{
        display: none;
    }
   #faq .sppb-panel-custom .sppb-panel-heading {
  padding-top: 15px !important;
  padding-right: 15px;
  padding-bottom: 15px;
  padding-left: 15px;
}
}

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

  h1.hero-title{
  font-size: 2.4rem !important;
}
      h1{
    font-size: 2rem !important;
}
h2{
  font-size:1.8rem !important;
}
h3{
  font-size: 1.4rem !important;
}
h4{
  font-size: 1.2rem !important;
}
h5{
    font-size: 1.1rem !important;
}
    #sp-header{
        padding: 10px 30px;
    }
    #sp-header .logo{
        padding: 0px;
    }
    #sp-header.header-sticky .logo{
        height: auto !important;
    }
    
    #sp-header.header-sticky #sp-logo .logo-image {
    height: 55px !important;
  }
    
.sp-dots{
    display: inherit;
}
    .sp-nav-control{
        display: none;
    }
    .btn-group-wrap .sppb-btn{
        display: block;
    }
    .c-item i{
       line-height: 50px !important;
        font-size: 1.3rem !important;
   
    }
    .c-item .icon{
  width: 50px !important;
  height: 50px !important;
        line-height: 50px !important;
}
body .sppb-btn i, body .sppb-sp-slider-button .sp-slider-btn-text i, .login .btn i, .registration form > div .btn i, .reset form > div .btn i, .hikashop_vote_form .button .btn i, .hikashop_vote_form .button i, .article-list .article .readmore a i, .sppb-readmore i, .sppb-form-builder-btn button span, .sppb-ajax-contact-content button span{
    height: 30px;
    width: 30px;
    line-height: 30px;
    }
}



@media screen and (max-width: 565px) {
    .btn-wrapper{
     display: block !important;    
    }
    .btn-wrapper .sppb-btn{
        width: 100%;
        margin-bottom: 10px;
    }
   #preise .sppb-addon-table-main.bt tbody td::before{
        background: none !important;
    }
     #preise .sppb-addon-table-main.bt tbody td::before{
    content: attr(data-th) "";
         font-weight: 900 !important;
    }
#preise.sppb-section div.sppb-row-container div.sppb-row .sppb-row-column .sppb-column div.sppb-column-addons .sppb-addon-wrapper.addon-root-table-advanced .clearfix div.sppb-addon.sppb-addon-text-block div.sppb-addon-content p{
    font-weight: 900;
    }
}

@media screen and (max-width: 480px) {
body .sppb-btn, body .sppb-sp-slider-button .sp-slider-btn-text, .login .btn, .registration form > div .btn, .reset form > div .btn, .hikashop_vote_form .button .btn, .hikashop_vote_form .button, .article-list .article .readmore a, .sppb-readmore {

  padding: 9px 15px 9px 15px;
}
}
