@font-face{font-family:'Josefin Sans';font-weight:300;font-style:normal;font-display:swap;src:url(../fonts/josefin-sans-300.woff2) format('woff2')}
@font-face{font-family:'Josefin Sans';font-weight:400;font-style:normal;font-display:swap;src:url(../fonts/josefin-sans-400.woff2) format('woff2')}
@font-face{font-family:'Manrope';font-weight:400;font-style:normal;font-display:swap;src:url(../fonts/manrope-400.woff2) format('woff2')}
@font-face{font-family:'Manrope';font-weight:500;font-style:normal;font-display:swap;src:url(../fonts/manrope-500.woff2) format('woff2')}
@font-face{font-family:'Manrope';font-weight:600;font-style:normal;font-display:swap;src:url(../fonts/manrope-600.woff2) format('woff2')}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:#EFEDE6;color:#1E1E1C;font-family:'Manrope',system-ui,sans-serif}
img{max-width:100%}
a{color:#1E1E1C}a:hover{color:#3F5A35}
input,textarea,select,button{font:inherit}
:focus-visible{outline:2px solid #3F5A35;outline-offset:3px}
.skip-link{position:absolute;left:-9999px;top:8px;z-index:100;background:#F6F3EA;padding:10px 16px}
.skip-link:focus{left:8px}
#inhalt{display:block;height:0}
/* navigation */
.site-nav{position:relative;z-index:20;font-family:'Josefin Sans',sans-serif;font-size:15px;letter-spacing:.1em;color:#F6F3EA}
.site-nav.dark{color:#1E1E1C;border-bottom:1px solid #CFCBBE}
.nav-inner{max-width:1360px;margin:0 auto;padding:26px 32px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.site-nav a{color:inherit;text-decoration:none}
.site-nav a:hover{opacity:.75}
.brand{font-size:20px;letter-spacing:.22em}
.nav-links{display:flex;flex-wrap:wrap;gap:26px;align-items:center}
.nav-links a[aria-current=page]{text-decoration:underline;text-underline-offset:6px}
.nav-cta{padding:9px 18px;border:1px solid currentColor}
.lang{display:flex;gap:10px;font-size:14px}.lang a{opacity:.7}.lang a[aria-current=true]{opacity:1;text-decoration:underline;text-underline-offset:6px}
@media (max-width:960px){.lang{padding:14px 4px;border-bottom:1px solid #E1DDD1;gap:22px}.lang a{padding:0 !important;border:0 !important}}
.nav-toggle{display:none;width:48px;height:48px;border:0;background:transparent;color:inherit;cursor:pointer;padding:12px;flex-direction:column;justify-content:space-between}
.nav-toggle span{display:block;height:1.5px;background:currentColor}
@media (max-width:960px){
 .nav-toggle{display:flex}
 .nav-inner{padding:18px 20px}
 .nav-links{display:none;position:absolute;left:12px;right:12px;top:calc(100% - 6px);flex-direction:column;align-items:stretch;gap:0;background:#F6F3EA;color:#1E1E1C;border-radius:20px;padding:12px 20px;box-shadow:0 18px 40px rgba(0,0,0,.18)}
 .nav-links a{padding:14px 4px;border-bottom:1px solid #E1DDD1}
 .nav-links a:last-child{border-bottom:0}
 .nav-cta{margin-top:8px;text-align:center;border:1px solid #1E1E1C}
 .site-nav.open .nav-links{display:flex}
}
/* phone adjustments for inline layouts */
@media (max-width:700px){
 header[style*="height: 900px"]{height:88vh !important;min-height:560px}
 header[style*="height: 640px"],header[style*="height: 800px"]{height:70vh !important;min-height:440px}
 section[style*="padding: 0 32px"],section[style*="padding: 110px 32px"],section[style*="padding: 120px 32px"],section[style*="padding: 100px 32px"],section[style*="padding: 90px 32px"]{padding-left:16px !important;padding-right:16px !important}
 div[style*="border-radius: 48px"]{border-radius:28px !important;padding-left:22px !important;padding-right:22px !important}
 div[style*="outline-offset: 6px"]{padding:40px 22px !important;outline-offset:4px !important}
 img[style*="height: 720px"],img[style*="height: 600px"],img[style*="height: 560px"]{height:340px !important}
 a[style*="height: 520px"]{height:380px !important}
 div[style*="height: 520px"],div[style*="height: 460px"]{height:380px !important}
 footer > div{padding-left:20px !important;padding-right:20px !important}
}
/* calendar */
h1,h2,h3,h4{hyphens:manual;-webkit-hyphens:manual;overflow-wrap:break-word}
@media (max-width:700px){.mosaic img{min-height:0 !important}}
.kalender{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}
@media (max-width:760px){.kalender{grid-template-columns:1fr}}
.kal-month h3{margin:0 0 14px;text-align:center;font-family:'Josefin Sans',sans-serif;font-weight:400;font-size:22px;letter-spacing:.08em}
.kal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.kal-dow{text-align:center;font-size:12px;color:#5F5D55;margin-bottom:2px}
.kal-day{height:42px;border-radius:8px;border:1px solid #C9C6BA;background:transparent;color:#1E1E1C;font-size:14px;cursor:pointer}
.kal-day:hover:not(:disabled){border-color:#3F5A35}
.kal-day.past{color:#B3B0A6;border-color:transparent;cursor:default}
.kal-day.booked{background:#D6D2C4;border-color:#D6D2C4;color:#8C8A80;text-decoration:line-through;cursor:not-allowed}
.kal-day.range{background:#CBD6C4;border-color:#CBD6C4}
.kal-day.edge{background:#3F5A35;border-color:#3F5A35;color:#F6F3EA}
