@font-face{font-family:'Archivo';font-style:normal;font-weight:500;font-display:swap;src:url('archivo-latin-500-normal.woff2') format('woff2')}
@font-face{font-family:'Archivo';font-style:normal;font-weight:600;font-display:swap;src:url('archivo-latin-600-normal.woff2') format('woff2')}
@font-face{font-family:'Archivo';font-style:normal;font-weight:700;font-display:swap;src:url('archivo-latin-700-normal.woff2') format('woff2')}
@font-face{font-family:'Archivo';font-style:normal;font-weight:800;font-display:swap;src:url('archivo-latin-800-normal.woff2') format('woff2')}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:400;font-display:swap;src:url('source-sans-3-latin-400-normal.woff2') format('woff2')}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:600;font-display:swap;src:url('source-sans-3-latin-600-normal.woff2') format('woff2')}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:700;font-display:swap;src:url('source-sans-3-latin-700-normal.woff2') format('woff2')}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:700;font-display:swap;src:url('barlow-condensed-latin-700-normal.woff2') format('woff2')}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:800;font-display:swap;src:url('barlow-condensed-latin-800-normal.woff2') format('woff2')}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:#F3F5F4}
a{color:#1F4E5A}a:hover{color:#13272C}
img{max-width:100%}
h1,h2,h3,p{max-width:100%}
details summary{cursor:pointer;list-style:none}
details summary::-webkit-details-marker{display:none}
details[open] summary span{transform:rotate(45deg)}
details summary span{transition:transform .2s}
@media (max-width:760px){
  body *{max-width:100%}
  [style*="width: 750px"],[style*="width: 334px"],[style*="width: 529px"],[style*="width: 570px"],[style*="width: 585px"],[style*="width: 739px"]{width:100%!important}
  [style*="height: 104px"],[style*="height: 55px"],[style*="height: 199px"]{height:auto!important}
  #ueber-mich img{height:auto!important;aspect-ratio:4/5}
  header nav{gap:14px!important}
}

/* accessibility */
.skip-link{position:absolute;left:-9999px;top:0;z-index:1000;background:#13272C;color:#fff;padding:12px 18px;border-radius:0 0 8px 0;font-weight:600}
.skip-link:focus{left:0}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #E8833A;outline-offset:3px;border-radius:4px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
/* sticky mobile booking bar */
.mobile-cta{display:none}
@media (max-width:760px){
  .mobile-cta{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:900;padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));background:rgba(19,39,44,.97);box-shadow:0 -6px 20px rgba(0,0,0,.25)}
  .mobile-cta a{flex:1;text-align:center;font-size:.95rem;display:flex;align-items:center;justify-content:center;min-height:50px;border-radius:6px;background:#E8833A;color:#13201F;font-family:'Archivo',sans-serif;font-weight:700;letter-spacing:.04em;text-decoration:none}
  body.has-cta{padding-bottom:76px}
}
/* status banner (withdrawal form) */
.status-banner{display:none;margin:0;padding:16px 18px;border-radius:10px;font-weight:600}
.status-banner.ok{display:block;background:#E6F4EA;border:1px solid #2E7D4F;color:#1E5233}
.status-banner.err{display:block;background:#FDECEA;border:1px solid #B3261E;color:#7A1A14}
