/* hauser.reisen – Ergänzungen zum Design-System (tokens.css + bundle.css) */
@font-face{font-family:"DM Serif Display";font-style:normal;font-weight:400;font-display:swap;src:url("fonts/dm-serif-display-400.ttf") format("truetype")}
@font-face{font-family:"Plus Jakarta Sans";font-style:normal;font-weight:400;font-display:swap;src:url("fonts/plus-jakarta-sans-400.ttf") format("truetype")}
@font-face{font-family:"Plus Jakarta Sans";font-style:normal;font-weight:500;font-display:swap;src:url("fonts/plus-jakarta-sans-500.ttf") format("truetype")}
@font-face{font-family:"Plus Jakarta Sans";font-style:normal;font-weight:700;font-display:swap;src:url("fonts/plus-jakarta-sans-700.ttf") format("truetype")}
@font-face{font-family:"Plus Jakarta Sans";font-style:normal;font-weight:800;font-display:swap;src:url("fonts/plus-jakarta-sans-800.ttf") format("truetype")}

:root{
  --sk-period-primary:var(--brand-fill);--sk-period-text:var(--ink);--sk-period-muted:var(--ink-muted);--sk-period-line:var(--line-strong);--sk-period-surface:var(--surface);--sk-period-radius:var(--radius-sm);
  --sk-participants-primary:var(--brand-fill);--sk-participants-text:var(--ink);--sk-participants-muted:var(--ink-muted);--sk-participants-line:var(--line-strong);--sk-participants-surface:var(--surface);--sk-participants-radius:var(--radius-sm);
  --sk-select-primary:var(--brand-fill);--sk-select-text:var(--ink);--sk-select-muted:var(--ink-muted);--sk-select-line:var(--line-strong);--sk-select-surface:var(--surface);--sk-select-radius:var(--radius-sm);
  --sk-price-accent:var(--brand-fill);--sk-price-line:var(--line);--sk-price-surface:var(--surface);--sk-price-radius:var(--radius-sm);
  --sk-dates-primary:var(--brand-fill);--sk-dates-text:var(--ink);--sk-dates-muted:var(--ink-muted);--sk-dates-line:var(--line);--sk-dates-surface:var(--surface);--sk-dates-radius:var(--radius-md);
  --sk-calendar-primary:var(--brand-fill);--sk-calendar-text:var(--ink);--sk-calendar-muted:var(--ink-muted);--sk-calendar-line:var(--line);--sk-calendar-surface:var(--surface);--sk-calendar-soft:var(--tint);--sk-calendar-radius:var(--radius-lg);
  --sk-lightbox-overlay:rgba(15,20,70,.92);--sk-lightbox-radius:var(--radius-md);
}

html{scroll-behavior:smooth}
body.hr-page{margin:0;min-height:100vh;display:flex;flex-direction:column}
body.hr-page main{flex:1}
.hr-page img{max-width:100%;height:auto}
.hr-page a:hover{color:inherit}
.hr-skip{position:absolute;left:-9999px;top:8px;z-index:100;background:var(--surface);color:var(--brand-ink);padding:10px 16px;border-radius:var(--radius-sm);font-weight:700}
.hr-skip:focus{left:8px}
.hr-page .sk-travel-period,.hr-page .sk-travel-participants,.hr-page .sk-search-select,.hr-page .sk-price-range,.hr-page .sk-travel-dates{font-family:var(--font-sans)}
.hr-note{background:var(--tint);border-radius:var(--radius-md);padding:20px 24px;color:var(--ink);max-width:720px}
.hr-note a{text-decoration:underline;font-weight:700;color:var(--brand-ink)}
.hr-prose{max-width:68ch}
.hr-prose p,.hr-prose ul,.hr-prose ol{margin:0 0 16px}
.hr-prose h2{font:400 30px/36px var(--font-display);color:var(--brand-ink);margin:32px 0 12px}
.hr-prose h3{font-size:19px;line-height:26px;color:var(--brand-ink);margin:24px 0 8px}
.hr-prose a{color:var(--brand-ink);text-decoration:underline}

/* ---------- Top-Bar ---------- */
.hr-topbar a{display:inline-flex;align-items:center;gap:6px;color:var(--on-brand-muted)}
.hr-topbar a:hover{color:var(--on-brand)}
.hr-topbar b{white-space:nowrap}

/* ---------- Header ---------- */
.hr-header .hr-container{position:relative}
.hr-header .hr-wordmark{display:inline-flex;align-items:center;min-height:44px}
.hr-nav a::after{display:none}
.hr-nav a[aria-current="page"]{background:var(--tint);color:var(--brand-ink)}
.hr-header .hr-actions .menu-search{margin:0;flex-shrink:0}
.hr-navtoggle{position:absolute;opacity:0;pointer-events:none}
.hr-burger{display:none;cursor:pointer}
.hr-burger span,.hr-burger span::before,.hr-burger span::after{display:block;width:20px;height:2px;background:currentColor;border-radius:2px;position:relative;transition:transform .18s ease-out}
.hr-burger span::before,.hr-burger span::after{content:"";position:absolute;left:0}
.hr-burger span::before{top:-6px}.hr-burger span::after{top:6px}
.hr-navtoggle:focus-visible+.hr-burger{outline:2px solid var(--focus);outline-offset:2px}

@media (max-width:1100px){
  .hr-topbar .hr-hide-md{display:none}
  .hr-header .hr-container{gap:16px}
  .hr-nav a{padding:0 8px;font-size:14px}
}
@media (max-width:960px){
  .hr-topbar .hr-container{gap:16px;overflow:hidden}
  .hr-topbar .hr-sp{margin-left:0}
  .hr-topbar .hr-hide-sm{display:none}
  .hr-header .hr-container{height:68px}
  .hr-header .hr-wordmark{font-size:22px}
  .hr-burger{display:inline-flex}
  .hr-nav{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:stretch;background:var(--surface);border-bottom:1px solid var(--line);box-shadow:var(--shadow-raised);padding:8px 16px 16px;white-space:normal}
  .hr-nav a{height:48px;font-size:16px;padding:0 12px}
  .hr-navtoggle:checked~.hr-nav{display:flex}
  .hr-navtoggle:checked+.hr-burger span{background:transparent}
  .hr-navtoggle:checked+.hr-burger span::before{transform:translateY(6px) rotate(45deg)}
  .hr-navtoggle:checked+.hr-burger span::after{transform:translateY(-6px) rotate(-45deg)}
  .hr-header .hr-actions .hr-btn{display:none}
}

/* ---------- Footer ---------- */
.hr-footer a:hover{color:var(--on-brand)}
.hr-footer .hr-footer-h{color:var(--on-brand);font:700 15px/1.3 var(--font-sans);margin:0 0 14px}
.hr-footer ul a,.hr-footer .hr-bottom nav a,.hr-footer .hr-bottom nav button{display:inline-flex;align-items:center;min-height:32px}
.hr-footer .hr-bottom nav{flex-wrap:wrap;align-items:center}
.hr-footer .hr-bottom nav button,.hr-footer .sk-consent-settings{background:none;border:0;color:inherit;font:inherit;cursor:pointer;padding:0}
.hr-footer .hr-contactline a{color:var(--on-brand)}
.hr-footer p{color:var(--on-brand-muted)}
@media (max-width:960px){
  .hr-footer .hr-cols{grid-template-columns:1fr 1fr;gap:32px;padding:48px 0 32px}
  .hr-footer .hr-cols>div:first-child{grid-column:1/-1}
  .hr-footer .hr-bottom{flex-direction:column;align-items:flex-start;gap:12px}
}
@media (max-width:480px){
  .hr-footer .hr-cols{grid-template-columns:1fr}
}

/* ---------- Allgemein responsiv ---------- */
@media (max-width:960px){
  .hr-section{padding:var(--space-7) 0}
  .hr-sechead{flex-direction:column;align-items:flex-start;margin-bottom:var(--space-6)}
  .hr-sechead h2{font-size:28px;line-height:34px}
  .hr-grid--3,.hr-grid--4{grid-template-columns:repeat(2,1fr)}
  .hr-pagehead h1{font-size:34px;line-height:40px}
  .hr-pagehead p{font-size:17px;line-height:27px}
}
@media (max-width:640px){
  .hr-container{padding:0 16px}
  .hr-grid--2,.hr-grid--3,.hr-grid--4{grid-template-columns:1fr}
}
