.psv-overview-trigger,.psv-overview-close { display:inline-flex; flex:none; align-items:center; justify-content:center; gap:.5rem; border-radius:10px; padding:.6rem .8rem; font:inherit; font-weight:700; cursor:pointer; }
.psv-overview-trigger { color:#fff; background:#2e81ff; border:0; border-radius:12px; padding:8px 16px; margin-inline:.45rem; font:300 13px/1.8 Arial,Helvetica,sans-serif; text-transform:uppercase; white-space:nowrap; }
.psv-overview-trigger::before { content:""; flex:none; width:22px; height:2px; border-radius:1px; background:currentColor; box-shadow:0 -5px currentColor,0 5px currentColor; }
.psv-overview-close { color:white; background:transparent; border:1px solid #adc8e4; }
#psv-overview { position:fixed; inset:0; width:100%; height:100%; max-width:none; max-height:none; margin:0; border:0; padding:0; background:#102f51; color:#fff; overflow:auto; }
#psv-overview::backdrop { background:#102f51; }
#psv-overview[open] { display:block; overscroll-behavior:contain; }
html:has(#psv-overview[open]) { overflow:hidden; }
.psv-overview-shell { width:min(1100px,calc(100% - 36px)); margin:auto; padding:clamp(22px,5vw,62px) 0; }
.psv-overview-top { display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; }
#psv-overview h1 { color:#fff; margin:.25rem 0 .6rem; font-size:clamp(1.85rem,5vw,3.25rem); }
#psv-overview h2 { color:#fff; font-size:1.2rem; margin:0 0 .55rem; }
.psv-overview-eyebrow { color:#c3dcf4; font-size:.9rem; letter-spacing:.06em; }
.psv-overview-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,235px),1fr)); gap:1rem; margin-top:1.5rem; }
.psv-overview-group { background:#1a4066; border:1px solid #4a6a8c; border-radius:14px; padding:1rem 1.15rem; }
.psv-overview-group ul { list-style:none; margin:0; padding:0; }
.psv-overview-group a { display:block; color:#edf6ff; padding:.4rem 0; border-bottom:1px solid #527292; text-decoration:none; }
.psv-overview-group li:last-child a { border-bottom:0; }
.psv-overview-group a:hover { text-decoration:underline; }
#psv-overview :focus-visible,.psv-overview-trigger:focus-visible { outline:2px solid #ffd16a; outline-offset:4px; }
@media(max-width:991px) {
  #astroid-header .psv-overview-trigger { position:absolute; right:8px; top:50%; transform:translateY(-50%); }
  #astroid-header { position:relative; }
}
#psv-overview { --overview-blue:#00549e; --overview-accent:#a9ddff; background:rgba(228,243,255,.86); color:var(--overview-blue); font-family:inherit; container-type:inline-size; }
#psv-overview::backdrop { background:transparent; backdrop-filter:blur(4px); }
#psv-overview .psv-overview-shell { width:min(1480px,calc(100% - clamp(36px,12vw,180px))); }
#psv-overview .psv-overview-top { align-items:flex-start; gap:clamp(12px,3vw,28px); }
#psv-overview .psv-overview-brand { display:flex; align-items:flex-start; gap:clamp(18px,5vw,80px); }
#psv-overview .psv-overview-brand img { display:block; width:clamp(185px,30vw,410px); max-width:100%; aspect-ratio:2008 / 750; object-fit:cover; object-position:top; filter:url(#psv-overview-logo-transparency); transform:translateX(calc(80px - clamp(18px,6vw,90px))); }
#psv-overview h1 { color:var(--overview-blue); font-weight:700; font-size:clamp(2rem,5vw,4rem); line-height:1; margin-top:0; padding-bottom:1.45em; text-shadow:0 2px 4px rgba(9,49,86,.28); }
#psv-overview .psv-overview-tagline { position:relative; display:inline-block; margin-inline-start:30px; font:italic 400 .67em/1.2 "Segoe Script","Brush Script MT",cursive; transform:rotate(-13deg); transform-origin:left center; white-space:nowrap; }
#psv-overview .psv-overview-tagline svg { position:absolute; left:-4%; top:83%; width:108%; height:.33em; overflow:visible; filter:drop-shadow(0 1px 2px rgba(9,49,86,.28)); }
#psv-overview .psv-overview-close { color:var(--overview-blue); border-color:var(--overview-blue); }
#psv-overview .psv-overview-grid { width:min(100%,1040px); margin:clamp(2.5rem,5vw,5rem) auto 0; grid-template-columns:repeat(3,minmax(0,18rem)); justify-content:space-between; gap:1rem clamp(1.5rem,3vw,3rem); }
#psv-overview .psv-overview-group { background:var(--overview-blue); color:#fff; border:0; border-radius:14px; padding:clamp(1rem,1.5vw,1.45rem); box-shadow:0 10px 22px rgba(9,49,86,.34),0 3px 7px rgba(9,49,86,.23); }
#psv-overview .psv-overview-group h2 { color:#fff; font-weight:700; margin:0 0 .75rem; font-size:clamp(1.25rem,2vw,1.65rem); }
#psv-overview .psv-overview-group a { display:block; position:relative; color:#fff; border:0; border-bottom:1px solid #fff; padding:.42rem 0 .42rem 1.15em; text-decoration:none; }
#psv-overview .psv-overview-group a::before { content:""; position:absolute; left:0; top:.98em; width:.42em; height:.42em; border-radius:50%; background:var(--overview-accent); }
#psv-overview .psv-overview-group a:hover { color:var(--overview-accent); }
#psv-overview .psv-overview-workshop-name { font-size:.88em; }
#psv-overview :focus-visible { outline-color:var(--overview-blue); }
#psv-overview .psv-overview-group :focus-visible { outline-color:var(--overview-accent); }
@media(min-width:821px) {
  #psv-overview .psv-overview-shell {
    --shell-gutter:max(calc((100cqw - 1480px) / 2),clamp(18px,6vw,90px));
    --logo-width:clamp(185px,30vw,410px);
    --logo-gap:40px;
  }
  #psv-overview .psv-overview-brand {
    margin-left:calc(80px - var(--shell-gutter));
    gap:var(--logo-gap);
  }
  #psv-overview .psv-overview-brand img { flex:none; width:var(--logo-width); transform:none; }
}
@media(min-width:1100px) {
  #psv-overview .psv-overview-top { position:relative; padding-right:8.5rem; }
  #psv-overview .psv-overview-close { position:absolute; top:0; right:0; }
  #psv-overview .psv-overview-brand { position:relative; padding-left:calc(var(--logo-width) + var(--logo-gap)); }
  #psv-overview .psv-overview-brand img { position:absolute; top:0; left:0; }
  #psv-overview h1 { margin-bottom:0; padding-bottom:0; font-size:clamp(2rem,4vw,4rem); }
  #psv-overview .psv-overview-grid {
    --title-indent:calc(80px + var(--logo-width) + var(--logo-gap) - var(--shell-gutter));
    width:min(1040px,calc(100% - var(--title-indent)));
    margin-top:40px;
    margin-left:var(--title-indent);
    margin-right:0;
  }
}
@media(max-width:820px) { #psv-overview .psv-overview-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
#psv-overview .psv-overview-mobile-link { display:none; }
button.redim-cc-reopen.psv-cookie-badge-hidden { display:none !important; }
button.redim-cc-reopen.psv-footer-cookie {
  position:static !important;
  margin-block-start:8px;
  width:auto !important;
  height:auto !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:inherit;
  text-decoration:underline !important;
}
button.redim-cc-reopen.psv-footer-cookie:not([hidden]) { display:inline-block !important; }
@media(min-width:992px) {
  .psv-scroll-head:not(.psv-handball) #astroid-header .logo-wrapper.astroid-logo { left:-12px; }
  .psv-scroll-head:not(.psv-handball) #astroid-header .psv-scroll-emblem { width:145px; }
}
@media(min-width:1200px) {
  .psv-scroll-head:not(.psv-handball) #astroid-header .logo-wrapper.astroid-logo { left:clamp(-64px, calc(540px - 46vw), -12px); }
  .psv-scroll-head:not(.psv-handball) #astroid-header .psv-scroll-emblem { width:clamp(185px, calc(56vw - 487px), 250px); }
}
@media(max-width:767px) {
  #us-wifsx8h9d .uk-slider-items .uk-card .text-left { text-align:center !important; }
  #us-wifsx8h9d .uk-slider-items .uk-card-media-top img { display:block; margin-inline:auto; }
  #aktuelle-berichte { scroll-margin-top:120px; }
  body.mitglied-werden-alias #inhalt #sl-t4ejuea5n { display:none !important; }
  body.kinder-jugendschutz-alias #j-645f99688b539031850947 { margin-top:12px !important; }
  #ar-g5z68ruk9 { row-gap:10px; }
  body.home-alias #inhalt .blog:has(.pagination [aria-current="true"][aria-label="Seite 1"]) .blog-items .blog-item ~ .blog-item { display:none !important; }
  #tb-nonduxsnc .uk-slideshow-items { aspect-ratio:16 / 6 !important; }
  #tb-nonduxsnc .uk-slideshow-items,
  #tb-nonduxsnc .uk-slideshow-items img { border-radius:0 !important; }
  #tb-nonduxsnc #ac-ubra3h7a5 .astroid-image {
    aspect-ratio:16 / 6;
    box-sizing:border-box;
    display:flex;
    align-items:flex-end;
    padding:0 12px 10px !important;
    background-size:cover !important;
    background-repeat:no-repeat !important;
    background-position:center !important;
  }
  #tb-nonduxsnc #ac-ubra3h7a5 .astroid-image .as-image { width:auto; max-height:38px; }
  body.kontakt-hauptverein-alias #tb-nonduxsnc #ac-ubra3h7a5 { background-image:none !important; }
  body.kontakt-hauptverein-alias #tb-nonduxsnc #ac-ubra3h7a5 .astroid-image { display:block; aspect-ratio:auto; padding:0 !important; }
  body.kontakt-hauptverein-alias #tb-nonduxsnc #ac-ubra3h7a5 .astroid-image .as-image { display:block; width:100%; height:auto; max-height:none; aspect-ratio:16 / 6; object-fit:cover; object-position:10% center; }
  body.kontakt-hauptverein-alias #tb-nonduxsnc :is(.astroid-image,.as-image-wrapper,.as-image) { border-radius:0 !important; }
  #t-1529472563843 { display:none !important; }
  #astroid-header .header-mobilemenu-trigger { display:none !important; }
  #astroid-header > .justify-content-between { justify-content:flex-start !important; }
  #astroid-header .header-left-section { margin-inline:0; }
  #astroid-header .astroid-logo-mobile { width:clamp(122px,39vw,170px) !important; height:auto !important; }
  .psv-scroll-ready .psv-scroll-head:not(.psv-handball).psv-compact { padding-block:10px !important; }
  .psv-scroll-head:not(.psv-handball) #astroid-header .astroid-logo-mobile { opacity:0; transition:none; }
  .psv-scroll-head:not(.psv-handball) #astroid-header .psv-scroll-emblem { width:min(200px,calc(100vw - 140px)); opacity:1; transform:none; transition:none; }
  .scrollmenu-position:not(:has(a[href$="/schutzkonzept"])),
  .astroid-section:has(.scrollmenu-position):not(:has(.scrollmenu-position a[href$="/schutzkonzept"])):not(:has(.moduletable:not(.scrollmenu-position,.suche-position))) { display:none !important; }
  #psv-overview .psv-overview-mobile-link { display:list-item; }
  #page1 > #navigation { display:none !important; }
  #psv-overview .psv-overview-grid { grid-template-columns:minmax(0,1fr); margin-top:1.75rem; }
  #psv-overview .psv-overview-top { position:relative; padding-right:6.75rem; }
  #psv-overview .psv-overview-close { position:absolute; top:0; right:0; }
  #psv-overview .psv-overview-brand { flex-direction:column; align-items:flex-start; gap:.65rem; min-width:0; }
  #psv-overview .psv-overview-brand img { width:clamp(108px,29vw,155px); transform:none; }
  #psv-overview h1 { font-size:clamp(1.125rem,4.7vw,1.65rem); padding-bottom:0; }
  #psv-overview .psv-overview-tagline { display:block; width:max-content; margin:.4rem 0 0 .3rem; font-size:.8em; }
}
#jevents #jevents_body {
  --calendar-blue:#00549e;
  --calendar-light:#e7f3ff;
  --calendar-line:#cfdfed;
  color:#142b44;
  background:#fff;
  font:inherit;
  font-size:16px;
  line-height:1.5;
  padding:clamp(12px,2vw,24px);
  border:1px solid var(--calendar-line);
  border-radius:16px;
  box-shadow:0 6px 22px #17416c12;
}
#jevents #jevents_body .ev_navigation,
#jevents #jevents_body .ev_navigation td { background:#fff !important; }
#jevents #jevents_body .ev_navigation > tbody > tr:first-child > td { padding:0 0 12px; }
#jevents #jevents_body .ev_navigation table > tbody > tr { display:flex; flex-wrap:wrap; gap:8px; }
#jevents #jevents_body .ev_navigation table td { padding:0; }
#jevents #jevents_body .ev_navigation table td:has(> img[name="spacer"]) { display:none; }
#jevents #jevents_body .ev_navigation td.buttontext > a {
  display:inline-flex;
  align-items:center;
  min-height:44px;
  padding:6px 12px;
  border:1px solid #9bbbd8;
  border-radius:8px;
  color:var(--calendar-blue);
  font:inherit;
  font-weight:700;
  background:#fff;
  text-decoration:none;
}
#jevents #jevents_body .ev_navigation td.buttontext > a:hover { background:var(--calendar-light); }
#jevents #jevents_body .ev_navigation td.buttontext > a :is(img,br) { display:none; }
#jevents #jevents_body .maintable { background:#fff; }
#jevents #jevents_body .maintable > tbody > tr:first-child > td.tableh1 { background:#fff !important; color:#142b44; }
#jevents #jevents_body .maintable .gsl-h2 { font-size:clamp(1.25rem,2vw,1.65rem); color:var(--calendar-blue); }
#jevents #jevents_body .maintable :is(.previousmonth,.currentmonth,.nextmonth) {
  background:var(--calendar-light) !important;
  color:var(--calendar-blue);
  padding:8px 4px;
  font-size:.92rem;
  white-space:normal;
}
#jevents #jevents_body .maintable :is(.previousmonth,.nextmonth) a { color:var(--calendar-blue); font-weight:700; }
#jevents #jevents_body .maintable tr.tableh2 > td.tableh2 {
  background:var(--calendar-light) !important;
  color:var(--calendar-blue);
  padding:9px 14px;
  border-radius:10px 10px 0 0;
}
#jevents #jevents_body .maintable tr.tableh2 > td a { color:var(--calendar-blue); font-size:1.05rem; font-weight:700; }
#jevents #jevents_body .maintable tr.psv-calendar-today > td.tableh2 { background:var(--calendar-blue) !important; }
#jevents #jevents_body .maintable tr.psv-calendar-today > td a { color:#fff; }
#jevents #jevents_body .maintable td.ev_td_right { background:#fff !important; padding:0 0 12px; }
#jevents #jevents_body .ev_ul { margin:0; padding:0; list-style:none; border:1px solid var(--calendar-line); border-radius:0 0 10px 10px; }
#jevents #jevents_body .ev_ul .psv-calendar-event {
  display:grid;
  grid-template-columns:minmax(105px,auto) minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  margin:0;
  padding:11px 14px;
  border:0;
  background:#fff;
  color:#142b44;
  font:inherit;
}
#jevents #jevents_body .psv-calendar-event + .psv-calendar-event { border-top:1px solid var(--calendar-line) !important; }
#jevents #jevents_body .psv-calendar-event .ev_link_row { color:var(--calendar-blue); font-size:1rem; font-weight:700; text-decoration:underline; text-underline-offset:.2em; }
#jevents #jevents_body .psv-calendar-time { color:var(--calendar-blue); font-weight:700; font-variant-numeric:tabular-nums; }
#jevents #jevents_body .psv-calendar-category { justify-self:start; padding:3px 9px; border-radius:7px; background:var(--calendar-light); color:var(--calendar-blue); font-size:.85rem; }
#jevents #jevents_body .jev_evdt { background:#fff !important; border:1px solid var(--calendar-line); border-radius:12px; overflow:hidden; }
#jevents #jevents_body .jev_evdt_header { background:var(--calendar-light) !important; padding:12px 16px; }
#jevents #jevents_body .jev_evdt_title { color:var(--calendar-blue); font-size:clamp(1.35rem,3vw,1.85rem); font-weight:700; }
#jevents #jevents_body .jev_eventdetails_body { padding:14px 16px; }
#jevents #jevents_body .jev_evdt_summary { font-size:1rem; color:#142b44; }
#jevents #jevents_body .psv-calendar-details { margin:0 0 12px; }
#jevents #jevents_body .psv-calendar-details > div { display:grid; grid-template-columns:minmax(105px,auto) minmax(0,1fr); gap:12px; padding:8px 0; border-bottom:1px solid var(--calendar-line); }
#jevents #jevents_body .psv-calendar-details dt { color:var(--calendar-blue); }
#jevents #jevents_body .psv-calendar-details dd { margin:0; overflow-wrap:anywhere; }
#jevents #jevents_body .maintable .weekdaytopclr { background:var(--calendar-light) !important; color:var(--calendar-blue); font-weight:700; }
#jevents #jevents_body a:focus-visible { outline:2px solid var(--calendar-blue); outline-offset:2px; }
@media(max-width:600px) {
  body.view-month #jevents #jevents_body .maintable { display:block; max-width:100%; overflow-x:auto; }
  #jevents #jevents_body .ev_ul .psv-calendar-event { grid-template-columns:minmax(0,1fr); gap:4px; }
  #jevents #jevents_body .maintable > tbody > tr:first-child td.today { font-size:.82rem; white-space:normal; }
  #jevents #jevents_body .psv-calendar-details > div { grid-template-columns:minmax(0,1fr); gap:2px; }
}
