/*!
 * Legacy Override Stylesheet — übernommen aus Live's ascend-child/style.css (1:1)
 * Quelle: https://www.hammerl-landbaeckerei.at/wp-content/themes/ascend-child/style.css
 * Stand:  2026-05-16
 *
 * Zweck:  Live-Stand emulieren auf Staging, bis Refactor vollständig ist.
 * Wartung: pragmatischer Override-Layer, 64 !important-Declarations bewusst übernommen.
 *
 * Änderungen ggü. Original:
 *   - Webfont-Pfade umgeschrieben: webfonts/X.woff2 → ../webfonts/X.woff2
 *   - Theme-Header (Theme Name/URI etc.) entfernt — gehört in style.css, nicht hier
 */


@font-face {
  font-family: 'Amatic SC';
  font-style: normal;
  font-weight: 400;
  font-display: swap; /* A11y/Perf: kein FOIT, Text bleibt während Font-Load sichtbar */
  src: url('../webfonts/amatic-sc-v24-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../webfonts/amatic-sc-v24-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../webfonts/amatic-sc-v24-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../webfonts/amatic-sc-v24-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../webfonts/amatic-sc-v24-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../webfonts/amatic-sc-v24-latin-regular.svg#AmaticSC') format('svg'); /* Legacy iOS */
}

@font-face {
  font-family: 'Amatic SC';
  font-style: normal;
  font-weight: 700;
  font-display: swap; /* A11y/Perf: kein FOIT, Text bleibt während Font-Load sichtbar */
  src: url('../webfonts/amatic-sc-v24-latin-700.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../webfonts/amatic-sc-v24-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../webfonts/amatic-sc-v24-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('../webfonts/amatic-sc-v24-latin-700.woff') format('woff'), /* Modern Browsers */
       url('../webfonts/amatic-sc-v24-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../webfonts/amatic-sc-v24-latin-700.svg#AmaticSC') format('svg'); /* Legacy iOS */
}

@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300;
  font-display: swap; /* A11y/Perf: kein FOIT */
  src: url('../webfonts/montserrat-v25-latin-300.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../webfonts/montserrat-v25-latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../webfonts/montserrat-v25-latin-300.woff2') format('woff2'), /* Super Modern Browsers */
       url('../webfonts/montserrat-v25-latin-300.woff') format('woff'), /* Modern Browsers */
       url('../webfonts/montserrat-v25-latin-300.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../webfonts/montserrat-v25-latin-300.svg#Montserrat') format('svg'); /* Legacy iOS */
}

@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap; /* A11y/Perf: kein FOIT */
  src: url('../webfonts/montserrat-v25-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../webfonts/montserrat-v25-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../webfonts/montserrat-v25-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../webfonts/montserrat-v25-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../webfonts/montserrat-v25-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../webfonts/montserrat-v25-latin-regular.svg#Montserrat') format('svg'); /* Legacy iOS */
}

@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  font-display: swap; /* A11y/Perf: kein FOIT */
  src: url('../webfonts/montserrat-v25-latin-700.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../webfonts/montserrat-v25-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../webfonts/montserrat-v25-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('../webfonts/montserrat-v25-latin-700.woff') format('woff'), /* Modern Browsers */
       url('../webfonts/montserrat-v25-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../webfonts/montserrat-v25-latin-700.svg#Montserrat') format('svg'); /* Legacy iOS */
}

.kt_item_fade_in {
	opacity: 1 !important;
}

.facetwp-type-pager {
	text-align: center;
}

#catapult-cookie-bar .x_close, #catapult-cookie-bar .x_close span{
width:20px;
}
#catapult-cookie-bar .ctcc-left-side{
margin-right:40px;
}
#catapult-cookie-bar, #catapult-cookie-bar .x_close, #catapult-cookie-bar .use_x_close .x_close{
transition:none !important;
-webkit-transition:none !important;
    -moz-transition:none !important;
}
#catapult-cookie-bar .x_close:hover span:nth-child(1){
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
-o-transform: rotate(45deg);
transform: rotate(45deg);
}
#catapult-cookie-bar .x_close:hover span:nth-child(2){
-webkit-transform: rotate(-45deg);
-moz-transform: rotate(-45deg);
-o-transform: rotate(-45deg);
transform: rotate(-45deg);
}
#catapult-cookie-bar a{
        border-bottom: 1px solid #fff;
}

/* -- Überschriften -- */
h1, h2, h3, h4, h5{
    text-transform:uppercase;
}

.single-article header h1{
    margin: 35px 0;
    text-align:center;
}

.error-not-found > h5{
	color:#000;
}

h1{
	font-size:3em !important;
	line-height:120% !important;
}

h2{
	font-size:2.5em !important;
	line-height:120% !important;
}

h3{
	font-size:2em !important;
	line-height:120% !important;
}

h4{
	font-size:1.75em !important;
	line-height:120% !important;
}

h5{
	font-size:1.5em !important;
	line-height:120% !important;
}

h6{
	font-size:1.25em !important;
	line-height:120% !important;
}

/* -- Homepage -- */
.home-product-carousel.home-margin.home-padding {
    padding-top: 60px;
}

.home_blog_readmore {
    border: none;
    padding-top: 0;
	padding-bottom: 10px;
	margin-top: -15px;
}

.home h1, .home h1 a{
    color:#fff;
    text-shadow: 1px 1px 20px rgba(0, 0, 0, 0.9);
    line-height:1.3em;
}

/* .home h1, .home h1 a{
    color:#fff;
    text-shadow: 1px 1px 10px rgba(0, 0, 0, 0.9);
    -webkit-transition: all .2s ease-in-out;
    -o-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
    text-decoration:underline;
    text-underline-position: under;
    text-decoration-color: rgba(255, 255, 255, 0.2);
    line-height:1.4em;
}

.home h1 a:hover{
    text-decoration-color: rgba(255, 255, 255, 1);
} */

.btn.btn-primary, input[type="submit"]{
    background-color:#000;
    -webkit-transition: all .2s ease-in-out;
    -o-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
}

.btn.btn-primary:hover, input[type="submit"]:hover{
    background-color:#999999;
    box-shadow:none;
}

#entry-description{
	text-align:center;
}


/* -- Bilder -- */
.image_menu_message_inner h4{
    text-shadow: 1px 1px 10px rgba(0, 0, 0, 0.9);
}

.image_menu_message_inner h5{
    font-size:24px !important;
    line-height:32px !important;
}

.image_menu_message{
    border:none !important;
}


/* -- Menü -- */
.kad-header-menu-inner{
    padding: 15px 0 15px 0;
}

.kad-header-menu-inner .kt-header-extras ul.sf-menu ul{
	background-color:transparent !important;
	color: #ffffff !important;
}

.widget-inner a{
	border-bottom: none !important;
	color: #ffffff !important;
	font-size: 12px;
	-webkit-transition: all .2s ease-in-out;
    -o-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
}

.widget-inner a:hover{
	color:#989898 !important;
}

.kad-right-header{
	position:absolute !important;
	width: 90%;
    max-width: 1140px;
	top:0;
}

.kad-right-header .sf-menu{
	float:right;
}

.sf-menu ul a{
	padding: 10px !important;
}

/* -- Widget -- */
.widget-inner ul{
    list-style-type:none !important;
    margin: 5px 0;
    text-transform:uppercase;
}

/* .widget-inner a{
    color: #000000;
    -webkit-transition: border .2s ease-in-out;
    -o-transition: border .2s ease-in-out;
    transition: border .2s ease-in-out;
    border-bottom: 2px solid #ccc;
} */

/* .widget-inner a:hover{
    color: #000000 !important;
    border-bottom: 2px solid #000;
} */

.kad-mobile-nav > .lang-item a{
	font-size: 12px;
}
.kad-mobile-nav li .kad-submenu-accordion{
	width:auto !important;
}
.textwidget p{
    margin: 0 0 10px 0 !important;
}

.textwidget p:first-child{
    margin: 10px 0 !important;
}

.textwidget p:last-child{
    margin: 0 !important;
}

.mfp-container, .mfp-ready.sldr-align-left .sldr-close-container{
	position:fixed;
}

.widget_media_image img{
	max-height:90px;
}


/* -- Footer -- */
#rowfooter{
    border-top:3px solid #000;
    padding-top:40px;
    padding-bottom:30px;
}

.footerclass{
    padding:0px;
}

.footerclass a, .entry-content a{
    color:#000;
    -webkit-transition: border .2s ease-in-out;
    -o-transition: border .2s ease-in-out;
    transition: border .2s ease-in-out;
    border-bottom:2px solid #ccc !important;
}

.footerclass a:hover , .entry-content a:hover{
    color:#000 !important;
    border-bottom:2px solid #000 !important;
}

.footerbase{
    margin:0;
}


/* -- Inhalt -- */
#content{
    padding-top: 0px;
}

.entry-content p{
    line-height:24px;
}

.entry-content.clearfix, .entry-content{
    max-width:750px;
    margin:auto;
}

.container.homepagecontent{
    padding-top:30px !important;
    padding-bottom:20px;
}

.entry-content-homepage{
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.postcontent h5{
    font-family: 'Droid Serif', serif;
    color:#000;
    font-size:24px;
    font-weight:700;
    line-height:28px;
    padding-bottom:5px;
}

.postcontent h5 a:hover{
    color:#989898;
}

.service-columns{
	column-count: 2;
	column-gap: 1em;
}

.category-neu-u-frisch .kt-upper-head-content, .category-current-news .kt-upper-head-content{
	display:none;
}

/* -- Grid -- */
.blog_item.grid_item .post-grid-footer-meta{
    border-top:none;
}

.grid_item{
    margin-bottom:0px;
}

#rowfooter .col-md-4{
    padding: 0 30px;
    border-left:1.5px dotted #000;
    min-height: 110px;
}

#rowfooter .col-md-4:first-child{
    padding: 10px 30px;
    border-left:0px;
}

#rowfooter  .col-md-4:first-child a{
	border-bottom:0 !important;
}

#rowfooter .content_block p{
    padding: 0 0 10px 0;
}

#rowfooter .content_block p:first-child{
    padding: 10px 0 10px 0;
}

.rowtight {
    margin-left: -15px;
    margin-right: -15px;
}

.rowtight [class*=" col-"], .rowtight [class^=col-]{
    padding: 0 15px;
}


/* -- Top-Button -- */
#topcontrol .to_the_top{
    border:3px solid #000;
    color:#000;
}


/* -- Login-Form -- */
#ewd-feup-login-username-div, #ewd-feup-login-password-div{
    text-align: left;
    margin-top: 0;
    width: 100%;
    max-width: 250px;
    float:none;
    padding: 10px 10px 10px 0;
    margin:auto;
}

.feup-pure-form-aligned .feup-pure-control-group{
    float:none;
    text-align:center;
}

.feup-pure-control-group .ewd-feup-text-input{
    float:none;
    width: 100% !important;
    max-width: 250px;
}

.ewd-feup-text-input, .ewd-feup-login-field, .ewd-feup-login-email-input{
    width: 100%;
    max-width: 250px;
    float:none;
    margin:auto;
}

.feup-pure-form-aligned .feup-pure-control-group:last-child label{
	display: none;
}

.logout{
	text-align:center;
	padding-left:20px;
}

.logout:before{
	font-family: "Dashicons";
	content: "\f310";
	position:absolute;
	margin-left:-20px;
}

/* -- Portfolio -- */
.portfolio-poststyle-content{
    border: none;
	min-height: 140px;
}

.portfolio-overlay-color{
    display: none;
}

.portfolio-hover-item-inner{
    border-radius: 50%;
    background-color: rgba(0, 0, 0, 0.75);
}

.portfolio-overlay-border{
    display: none;
}

.portfolio-loop-title{
    color: #000000 !important;
}

.post-footer-section{
    border:none;
    padding: 30px 0 0 0;
}


/* -- Logo -- */
.ascend-logo{
    margin:auto !important;
	max-height:107px !important;
	height:100% !important;
}

#logo{
	width:300px !important;
}

.kad-mobile-logo-center{
	padding: 0 80px;
}

/* Mobile-Logo Patch (hinzugefügt 2026-05-16):
   Nach SVG-Metadata-Fix hat das Bild explizite width/height-Attribute (438×156).
   Browser respektiert die als "intrinsic" und fittet auf Container-Breite, statt
   proportional zur Mobile-Header-Höhe (100px) zu skalieren. Live verhält sich
   nur deshalb richtig, weil dort width="1" height="1" im HTML steht und der
   Browser den viewBox-Aspect als Fallback nimmt.
   Mit !important überschreiben wir die Attribute. */
#mobile-logo a .ascend-mobile-logo {
	max-height: 80px !important;
	width: auto !important;
	height: auto !important;
	max-width: 100% !important;
}

/* .kt-header-position-above #logo a .ascend-logo{
	flex:none !important;
} */

/* Sticky-Header-Init Patch (hinzugefügt 2026-05-17):
   Auf Single-Posts (post + portfolio) ist der Header beim ersten Page-Render nicht
   sichtbar. Ursache: jQuery-Slick (.postfeat-Slider) lädt async und verursacht
   Layout-Shift. ascend_sticky-min.js wrappt den Header gleichzeitig in
   .sticky-wrapper — wenn Sticky-Init die Page-Höhe vor Slick-Init misst, ist die
   Header-Position falsch. Erst beim Scroll korrigiert sich's.

   Lösungen kombiniert:
   1. .sticky-wrapper bekommt min-height = data-start-height (140px Desktop, 100px Mobile).
      Verhindert dass der Wrapper kollabiert und den Header aus dem Viewport drückt.
   2. .headerclass-outer höherer z-index als .postfeat — falls Slick-Slider absolut
      gestyled wird, überlagert er den Header nicht.
   3. .postfeat-Carousel bekommt eine min-height-Reservierung, damit der initiale
      Layout-Shift kleiner wird (cumulative-layout-shift Verbesserung). */
/* min-height NUR auf den Sticky-Wrapper des Desktop-Headers (kad-header-menu).
   Vorher (zu pauschal) hat es auch den Mobile-Banner-Wrapper auf 140px aufgeblasen,
   was auf Desktop einen leeren grauen Balken über dem Content verursacht hat. */
.sticky-wrapper:has(> #kad-header-menu) {
	min-height: 140px;
}
@media (max-width: 991px) {
	.sticky-wrapper:has(> #kad-header-menu) {
		min-height: 100px;
	}
}

/* Mobile-Banner-Wrapper auf Desktop ausblenden — sonst rendert er als leerer
   Container (jQuery-Sticky wrappt ihn, default-display:none des Inhalts wirkt
   nicht auf den Wrapper). */
@media (min-width: 992px) {
	.sticky-wrapper:has(> #kad-mobile-banner) {
		display: none !important;
		height: 0 !important;
		min-height: 0 !important;
	}
}
.headerclass-outer {
	position: relative;
	z-index: 100;
}
.postfeat.post-carousel-upper {
	min-height: 400px;
	position: relative;
	z-index: 1;
}
.postfeat .slick-slider.loading {
	min-height: 400px;
	background: transparent;
}


/* -- Misc -- */
.kt_color_gray{
    color:#999999;
}

.single-footer{
    border-top:1px solid #000;
}

.slick-dots{
    position:relative;
}

.slick-arrow{
    top: calc(50% - 12.5px) !important;
}

/* SPEC G: Breadcrumbs sitewide ausgeblendet (Kundenwunsch 06-02) */
#kadbreadcrumbs,
.kadbreadcrumbs,
.breadcrumbs{
    display:none !important;
}

/* Falls Breadcrumbs wieder aktiviert werden sollen, Block oben entfernen: */
#kadbreadcrumbs.kt-show{
    background-color:#ffffff !important;
    color:#000 !important;
}

#kadbreadcrumbs a{
    color:#000 !important;
    border: none !important;
}

#kadbreadcrumbs a:hover{
    color:#999999  !important;
    border:none !important;
}

.kt-upper-head-content{
    margin-top:0;
}

.kt-mnt span{
    border-radius:0px
}

.sldr-menu-animi.mfp-ready .sldr-close span{
    border-radius:0px;
}

.sldr-close, .sldr-menu-animi.mfp-ready .sldr-close{
    top: calc(50%);
}


/* -- Sprache -- */
.sprachswitch{
    font-size:11px;
    padding:0px;
    color:#000;
    font-weight:300;
    background:none;
    border:none;
    text-decoration:none;
    }

.sprachswitch:hover{
    font-size:11px;
    color:#9a9a9a;
    border:none;
    text-decoration:none;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    }

.sprachswitch:focus{
    font-size:11px;
    color:#9a9a9a;
    border:none;
    text-decoration:none;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    }

.sprachswitch:last-child:before{
    content:"|";
    color:#000;
    padding:0 3px 0 5px;
    }


/* -- Media -- */
@media (max-width: 992px){

#rowfooter .col-md-4{
    padding: 20px 30px;
    border-bottom:1.5px dotted #000;
    border-left:0px;
    text-align:center;
}

.footerclass img{
    padding: 0 0 10px 0;
}


#rowfooter .col-md-4:first-child{
    padding: 0 30px 20px 30px;
    border-bottom:1.5px dotted #000;
    border-left:0px;
    text-align:center;
}

#rowfooter .col-md-4:last-child{
    padding: 20px 30px 0 30px;
    border:none;
}



}

@media (max-width: 768px){

.rowtight [class*=" col-"], .rowtight [class^=col-]{
    padding: 15px 0;
}

.rowtight [class*=" col-"]:first-child, .rowtight [class^=col-]:first-child{
    padding: 0 0 15px 0;
}

.rowtight [class*=" col-"]:last-child, .rowtight [class^=col-]:last-child{
    padding: 15px 0 0 0;
}

.kt-basic-fullslide{
    height:300px !important;
}

h1, h2, h3, h4, h5{
	word-wrap: break-word;
}

h1{
	font-size:2.5em !important;
	line-height:120% !important;
}

h2{
	font-size:2em !important;
	line-height:120% !important;
}

h3{
	font-size:1.5em !important;
	line-height:120% !important;
}

h4{
	font-size:1.25em !important;
	line-height:120% !important;
}

h5{
	font-size:1em !important;
	line-height:120% !important;
}

h6{
	font-size:0.75em !important;
	line-height:120% !important;
}

#entry-description{
	padding: 0 15px;
}

.service-columns{
	column-count: 2;
}

.col-xs-12 {
    width: 100%;

}

@media (max-width: 560px){

.service-columns{
	column-count: 2;
}
}

@media (max-width: 544px);
.portfolio-poststyle-content{
	min-height: 0;
}
}
