/*
Theme Name: Hello Elementor Child
Template: hello-elementor
Version: 1.0.0
Text Domain: hello-elementor-child
*/

/* Add your custom CSS below */

/* Pulld Noodles: stylesheet extracted from the artifact.
   The original embedded the fonts as base64 woff2. They are loaded from Google Fonts here instead. */


@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;700&family=Josefin+Sans:wght@600;700&display=swap');

.elementor-element.elementor-element-7e323cf.e-con.e-atomic-element.e-flexbox-base.e-default-div.e-601a55b.header_pos {
	position: fixed;
    top: env(safe-area-inset-top, 0px);
    left: 0;
    right: 0;
    z-index: 50;
    height: 88px;
    padding: 0 64px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    box-sizing: border-box;
    background: rgba(27, 21, 21, 0.82);
    backdrop-filter: blur(10px);
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

/* ---------- Base ---------- */
:root{color-scheme:light}
html{scroll-behavior:smooth}
body{margin:0;font-family:'DM Sans',system-ui,sans-serif;background:#F6EFE4;color:#1B1515}
a{color:inherit;text-decoration:none}
a:hover{opacity:.85}
img{max-width:100%}
.pd-display{font-family:'Josefin Sans',sans-serif}
[id]{scroll-margin-top:88px}

/* ---------- Subpages (Kontakt / Impressum / Datenschutz) ---------- */
.subpage{display:none!important}
body[data-page="seite-kontakt"] #seite-kontakt,
body[data-page="seite-impressum"] #seite-impressum,
body[data-page="seite-datenschutz"] #seite-datenschutz{display:flex!important}
body[data-page^="seite-"] #home{display:none!important}
#home{height:auto!important}

/* ---------- Responsive: tablet & mobile (≤ 900px) ---------- */
@media only screen and (min-width: 1025px) and (max-width: 1280px) {
    
	.text_tab article h2 {
    font-size: 24px !important;
}
	.tab_height {
		width: 715px !important;
	}
.height_370 {
		height: 400px !important;
	}
}
@media only screen and (min-width: 1025px) and (max-width: 1200px) {
  
.tab_height {
		width: 715px !important;
	}
	.pulld_txt .pd-display {
		font-size: 220px !important;
	}
	.height_370 {
		height: 400px !important;
	}

}
@media only screen and (min-width: 901px) and (max-width: 1024px) {
	.grid_template1 {
		grid-template-columns: 1fr 1fr !important;
	}
    .tab_height {
		width: 715px !important;
	}
	.tab_flex {
		grid-template-columns: 1fr 1fr !important;
	}
	.pulld_txt .pd-display {
		font-size: 220px !important;
	}
	.height_370 {
		height: 400px !important;
	}

}
@media (min-width: 901px){
.sticky_ele {
	position: relative;
}
nav.table_of {
	position: sticky;
	top: 50px;
}
}
@media (max-width: 500px){
	.mob_wrap {
		flex-wrap: nowrap !important;
	}
}
@media (max-width: 767px){
	.padding_tab_eve {
    padding: 30px !important;
}
	.padding_tab_eve h3.pd-display {
    font-size: 28px !important;
}
	.text_tab article h2 {
    font-size: 24px !important;
}
	.tab_flex.text_tab article {
    padding: 20px !important;
}
	.font-small {
		font-size: 44px !important;
	}
}

@media (max-width: 900px){
	.elementor-element.elementor-element-7e323cf.e-con.e-atomic-element.e-flexbox-base.e-default-div.e-601a55b.header_pos {
    padding: 0 !important;
}
	.height_370 img {
		display: none !important;
	}
	.height_370 {
           height: auto !important;
        padding: 40px 24px !important;
}
	.elementor-element.elementor-element-534fb27.e-con.e-atomic-element.e-div-block-base.e-default-div.hide_tablet.e-534fb27-0e29a03 {
		display: none !important;
	}
  /* Header */
  header[data-sticky]{padding:0 16px!important;height:72px!important}
  header[data-sticky] nav{display:none!important}
  header[data-sticky] img{width:120px!important}
  [id]{scroll-margin-top:72px}
  .subpage{padding-top:72px!important}

  /* Typography */
  h1{font-size:clamp(40px,12vw,64px)!important;line-height:1!important}
  h2.pd-display{font-size:clamp(32px,9vw,48px)!important}

  /* Generic layout collapse */
  [style*="grid-template-columns"]{grid-template-columns:minmax(0,1fr)!important}
  [style*="display: flex"]:not([style*="flex-direction: column"]){flex-wrap:wrap}
  .pd-display[style*="white-space: nowrap"]{flex-wrap:nowrap!important}

  /* Hero */
  #top{height:auto!important;min-height:640px}
  #top [style*="bottom: 96px"]{position:absolute;left:16px!important;right:16px;width:auto!important;bottom:40px!important}
  #top a[href="#bewertungen"],
  #top [style*="top: 40%"]{display:none!important}

  /* Bewertungen (reviews) */
  #bewertungen > div:first-child{height:auto!important;padding-block:32px!important;gap:24px!important}
  #bewertungen > div:first-child > div[style*="width: 1px"]{display:none!important}

  /* Speisekarte (menu) */
  #speisekarte > div[style*="height: 600px"]{height:320px!important}

  /* Galerie */
  #galerie [style*="grid-template-rows"]{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:none!important;grid-auto-rows:180px}
  #galerie [style*="grid-template-rows"] > *{grid-column:auto!important;grid-row:auto!important}
  #galerie [style*="grid-template-rows"] > *:first-child{grid-column:1 / -1!important}

  /* Footer */
  .footer_div_el [style*="height: 340px"]{height:auto!important;padding:40px 24px!important}
  .footer_div_el [style*="height: 340px"] > img{display:none!important}
  footer .pd-display[style*="font-size: 300px"]{font-size:26vw!important}
	.footer_div .pd-display[style*="font-size: 300px"]{font-size:26vw!important}
  footer > div[style*="height: 72px"]{height:auto!important;padding-block:20px!important;gap:12px}
  footer [style*="padding-right: 24px"]{padding-right:0!important}
  footer nav{padding-left:0!important}

  /* Section spacing */
  [style*="padding: 96px"]{padding-top:48px!important}
  [style*="padding: 120px"]{padding-top:72px!important;padding-bottom:72px!important}
  div[style*="height: 480px"]{height:260px!important}
}
.pd-track{
    display:flex;
    width:max-content;
    animation:pdMarquee 20s linear infinite;
}

@keyframes pdMarquee{
    from{transform:translateX(0);}
    to{transform:translateX(-50%);}
}
@media (max-width: 450px){
.font-small {
    font-size: 34px !important;
}
}