*{ margin: 0px; padding: 0px; font-family: 'Roboto', sans-serif; }

/* HTML elements */
body, td{ font-size: 10pt; text-align: justify; }
table{ width: 100%; }
td{ position: relative; vertical-align: top; }

h1, h2, h3, h4{ margin-bottom: 10px; }

h1{ font-family: 'Roboto Slab', serif; text-transform: uppercase; color: #EF7D00; font-weight: 700; text-align: center; font-size: 20pt; margin-top: 0px; }
h2{ font-family: 'Roboto', sans-serif; font-weight: 500; text-align: center;  font-size: 14pt; margin-bottom: 30px; }
h3{ font-family: 'Roboto Slab', serif; font-weight: 600; }
h4{ font-family: 'Arizonia', cursive; }

a{ color: #EF7D00; text-decoration: none; font-weight: 700; text-transform: uppercase; }
a:hover{ color: #000; }

.design-td-1 a, .design-td-2 .a{ text-transform: none !important; }

ul{ margin-left: 20px; }

.cruse_img_home{ width: calc(50% - 11px); margin-right: 10px; }
.carrent_img_home{ width: calc(50% - 11px); }

/* IDs */
#header{ position: relative; }
#header a{ font-family: 'Roboto Slab', serif; }

#headerimg{ height: 650px; background-position: center center; background-size: 100% auto; }

#logo{ padding-top: 20px; height: 100px; display: inline-block; }
#logo img{ height: 100%; }

#tel_mail_links{ position: absolute; top: 28px; left: 250px; }
#tel_mail_links a{ margin-right: 50px; }
#tel_mail_links a img{ height: 30px; margin-bottom: -10px; padding-right: 5px;}

#slogan{ margin-bottom: 50px; }

#search_field{ width: 365px; margin: auto; border-radius: 24px; background-color: #FFF; padding: 15px; position: absolute; top: 5px; right: 0px; }

#attributes{ margin-top: -120px; margin-bottom: 25px; margin-bottom: 80px; }
#attributes div{ text-align: center; float: left; width: 284px; margin-right: 20px; border-radius: 24px; background-color: #FFF; padding: 15px 0px; }
#attributes div.last{ margin-right: 0px; }
#attributes div h2{ color: #EF7D00; font-family: 'Arizonia', cursive; font-size: 36pt; font-weight: 400; margin-bottom: 15px; }



#newsletter{ margin: 100px 0px; padding: 50px 0px; background-position: center center; background-repeat: no-repeat; background-size: 100% auto; }
#newsletter_form{ width: 740px; margin: auto; border-radius: 24px; background-color: #FFF; padding: 15px; }
#newsletter_form h1, #newsletter_form h2{ text-align: left; }
#newsletter_form input{ border: 2px solid #EF7D00; border-radius: 16px; padding-left: 20px; }
#newsletter_form .entry__field{ border: 0px !important; }

#footer{ margin-bottom: 35px; }
#footer img{ height: 15px; }
#footer img.logo{ width: 200px; height: auto; }
#footer h2{ font-family: 'Roboto Slab', serif; text-transform: uppercase; text-align: left; font-weight: 700; font-size: 16pt; }
#footer a{ color: #000; text-transform: none; font-weight: 500; }
#footer a:hover{ color: #555; }

#sharebtns{ position: absolute; right: 0px; top: 5px; }
    #sharebtns img{ height: 30px; margin-left: 16px; }


/* NAVI */
#ssi_navi{ font-size: 8pt; margin-top: 10px; margin-bottom: 55px; position: relative; }
#ssi_navi a{ color: #555; }
#ssi_navi a:hover{ color: #000; }
    #js_info_box{ display: none; font-size: 10pt; color: #444; position: relative; top: -10px; }

#showHideMenu{ display: none; }

#primary_nav_wrap{ display: block; position: absolute; bottom: 6px; left: 240px; z-index: 997; }
#primary_nav_wrap ul{ list-style:none; 	position:relative; float:left; margin:0; padding:0; margin-top: 15px; }
#primary_nav_wrap ul a{ display:block; color: #EF7D00; text-decoration:none; font-weight:700; font-size:14px; line-height:32px; padding:0 10px; text-transform: uppercase; }
#primary_nav_wrap ul li{ position:relative; float:left; margin:0; padding:0; }
#primary_nav_wrap ul li.current-menu-item a{ color: #AF1816; }
#primary_nav_wrap ul li a:hover{ color: #AF1816; }
#primary_nav_wrap ul li ul li:hover{ background:#f6f6f6; border-bottom: 0px; }
#primary_nav_wrap ul ul{ visibility:hidden; position:absolute; top:100%; left:0; background-color: #fff; padding:0; margin-top: 0px; }
#primary_nav_wrap ul ul ul{ margin-top: 0px; }
#primary_nav_wrap ul ul li{ float:none; width:250px; }
#primary_nav_wrap ul ul a{ line-height:120%; padding:10px 15px; }
#primary_nav_wrap ul ul ul{ top:0; left:100%; border-top: 0px; }
#primary_nav_wrap ul li:hover > ul{ visibility:visible; transition-property: opacity, visibility; transition-duration: 0.9s, 0.9s; transition-delay: 0.5s, 0s; }

#kontaktForm input[type=text], #kontaktForm input[type=tel], #kontaktForm input[type=email], #kontaktForm textarea{ border: 2px solid #EF7D00; border-radius: 10px; padding: 5px; padding-left: 15px; width: calc(100% - 44px); margin-bottom: 12px; }

#btn_tabelle{ margin-top: -28px; margin-bottom: 56px; }
    #btn_tabelle h2{ margin-top: 30px; margin-bottom: 10px; }
    #btn_tabelle h3{ display: inline-block; background-color: #FFF; }
    #btn_tabelle img{ height: 40px; margin-right: 12px; }
    #btn_tabelle td{ padding-bottom: 30px; text-align: center !important; }

#price_calc{ display: none; }

#social_media{ position: absolute; bottom: 10px; right: 15px; }
    #social_media img{ height: 24px; margin-left: 8px; }

#servicepa_tbl{ border-spacing: 0px; }
#servicepa_tbl td{ padding: 7px 0px; }
#servicepa_tbl tr td:last-child{ text-align: right; padding-left: 20px; }

/* Classes */
.mainwrapper{ width: 1200px; margin: auto; }

.seperatorline{ width: 160px; height: 2px; margin: auto; margin-top: 60px; margin-bottom: 10px; }
.seperatorline_prod_list{ width: 100%; height: 2px; margin: auto; margin-top: 10px; margin-bottom: 10px; }

.rubrik_block{ width: calc(calc(100% / 2) - 43px); height: 360px; float: left; margin-right: 20px; margin-bottom: 20px; position: relative; display: block;  
               background-position: center center; background-size: 100% auto; }


/* Design-Table for main-pages */
.design-table-1{ border-spacing: 10px; width: 100%; }
.design-td-1{ width: 25%; background-position: center center; background-size: 110% auto; }
.design-td-1h{ width: 25%; background-position: center center; background-size: auto 110%; }
.design-td-2{ width: 50%; background-position: center center; background-size: 110% auto; }
.design-td-1, .design-td-2{ height: 206px; }

.design-td-1 a, .design-td-2 a{ display: block; width: 100%; height: 100%; position: relative; }

a.red, .design-td-2 a.red{ color: #AF1816; }
a.blue, .design-td-2 a.blue{ color: #00A4B7; }

a.red2{ background-color: #AF1816 !important; }
a.blue2{ background-color: #00A4B7 !important; }

a.red:hover, a.blue:hover{ color: #000; }

.design-td-headline{ position: absolute; width: 100%; bottom: 0px; left: 0px; background-color: rgba(255,255,255,.8); text-align: center; padding: 10px 0px; 
                     font-family: 'Roboto Slab', serif; font-weight: 700; font-size: 17pt; }

.text_3_cols{ column-count: 3; column-gap: 24px; }

.inlineBockElement3{ width: 380px; margin-right: 19px; float: left; text-align: center; margin-bottom: 80px; }
.inlineBockElement3 h3{ margin-bottom: 0px; }
.img_prod_list{ width: 100%; height: 240px; background-position: center center; background-size: 100% auto; }

    .preisZeile{ position: relative; text-align: right; line-height: 32px; height: 36px; }
    .buttons{ position: absolute; top: 0px; left: 0px; }
    .buttons img{ height: 28px; margin-right: 5px; }
    .preis_ab b{ font-size: 180%; }

    .infoSymbol{ text-align: center; margin-bottom: 20px; }
    .infoSymbol a, .button{ background-color: #EF7D00; border-radius: 12px; padding: 8px; color: #FFF; border: 0px; font-weight: 700; }

    .einleitungstext{ padding: 10px 5px; text-align: justify; }
    .einleitungDet{ text-align: justify }

.popup-gallery{ width: 100%; overflow: hidden; position: relative; height: 276px;}
    .bildLeiste{ white-space: nowrap; position: absolute; top: 0px; left: 0px;}
    .bildLeiste a, .bildLeiste a{ margin-right: 24px; }
    .bildLeiste a img, .bildLeiste video{ height: 256px; }
    .bildLeiste video{ margin-right: 24px; }
    .popup-gallery .arrow{ color: #FFF; font-family: MATH; font-size: 56px; opacity: .8; text-shadow: 3px 3px 5px #000; position: absolute; top: 100px; cursor: pointer; }
        #gal_left{ left: 5px; }
        #gal_right{ right: 5px; }

.accordeon{ background-color: #DDD; cursor: pointer; padding: 5px; position: relative; }
    .accordeon img{ position: absolute; top: 8px; right: 8px; height: 16px; }
    #leistungen, #teilnehmer, #all_inkl, #not_inkl, #honeymoon, #aktivit, #besonderh, #hinweise, #kinder, #kulinarik{ display: none; }

#preisliste td{ padding: 10px 3px; }
.spacing_top{ border-top: 20px solid #FFF; }
.border_gruen_unten{ background-color: #DDD; }

.unterk_infos{ margin-bottom: 40px; }
.unterk_infos tr td{ padding-right: 24px; }
.unterk_infos tr td:last-child{ padding-right: 0px; }

.price_h2{ text-align: left; color: #333;}

.reiseverlauf tr td:first-child{ width: 33%; }
.reiseverlauf tr td{ padding-top: 24px; }
.reiseverlauf tr:first-child td{ padding-top: 0px; }

.karte{ width: 45%; }

.unterk_infos h2{ margin-bottom: 10px; }

.onethird{ width: 33%; }

.ta_left{ text-align: left; }