/* Bootstrap 4 export geometry preserved on Bootstrap 5. No second framework. */
:root { --bs-body-color: #212529; --bs-body-line-height: 1.5; --bs-border-radius: .25rem; --bs-link-decoration: none; }
body { color: #212529; }
a { text-decoration: none; }
.row { --bs-gutter-x: 30px; }
.container, .container-fluid { --bs-gutter-x: 30px; }
@media (min-width: 1400px) { .container { max-width: 1140px; } }
h1,h2,h3,h4,h5,h6 { margin-top:0; margin-bottom:.5rem; line-height:1.2; }
h1 { font-size:2.5rem; } h2 { font-size:2rem; } h3 { font-size:1.75rem; }
h4,.reference-h4 { font-size:1.5rem; } h5 { font-size:1.25rem; } h6 { font-size:1rem; }
.navbar { --bs-navbar-padding-x:1rem; --bs-navbar-padding-y:.5rem; --bs-navbar-nav-link-padding-x:.5rem; }
.navbar > .container-fluid { padding-right:15px; padding-left:15px; }
.navbar-brand { padding-top:.3125rem; padding-bottom:.3125rem; margin-right:1rem; font-size:1.25rem; }
.navbar-toggler { padding:.25rem .75rem; font-size:1.25rem; line-height:1; border:1px solid rgba(0,0,0,.1); border-radius:.25rem; }
.navbar-light .navbar-toggler-icon { background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); }
.card { border-radius:.25rem; }
.card-header { padding:.75rem 1.25rem; }
.card-body { padding:1.25rem; }
.table { --bs-table-bg:transparent; color:inherit; }
.embed-responsive { position:relative; display:block; width:100%; padding:0; overflow:hidden; }
.embed-responsive::before { display:block; content:""; }
.embed-responsive-16by9::before { padding-top:56.25%; }
.embed-responsive iframe { position:absolute; top:0; left:0; bottom:0; width:100%; height:100%; border:0; }
.form-group { margin-bottom:1rem; }
.form-control { font-size:1rem; line-height:1.5; padding:.375rem .75rem; border:1px solid #ced4da; border-radius:.25rem; }
.btn { --bs-btn-padding-x:.75rem; --bs-btn-padding-y:.375rem; --bs-btn-font-size:1rem; --bs-btn-line-height:1.5; --bs-btn-border-radius:.25rem; }
.btn-sm { --bs-btn-padding-y:.25rem; --bs-btn-padding-x:.5rem; --bs-btn-font-size:.875rem; --bs-btn-border-radius:.2rem; }
.btn-outline-secondary { --bs-btn-color:#6c757d; --bs-btn-border-color:#6c757d; }
.close { float:right; font-size:1.5rem; font-weight:700; line-height:1; color:#000; text-shadow:0 1px 0 #fff; opacity:.5; padding:0; background:transparent; border:0; }
.icon-button,.back-to-top { background:transparent; border:0; padding:0; color:inherit; }
.openinghours.show { display:block; }
.back-to-top.is-visible { display:inline-block; }
.toast { z-index:1090; font-size:.875rem; max-width:min(350px,85vw); }
.toast:not(.show) { display:none; }
/* Reference checkbox is visually replaced by icons; keep the input focusable. */
input[type=checkbox] { display:block; position:absolute; width:1px; height:1px; opacity:0; }
.checkbox:focus-within { outline:2px solid #762916; outline-offset:4px; }
:focus-visible { outline:2px solid #762916; outline-offset:3px; }
[id] { scroll-margin-top:100px; }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { transition:none!important; animation:none!important; } }

.row.g-0 { --bs-gutter-x:0; --bs-gutter-y:0; }

.gzn-form-row { --bs-gutter-x:10px; }

.row > [class*="col"] { position:relative; }
ol, ul { padding-left:40px; }
.gzn-block-button + .gzn-block-button { margin-top:.5rem; }

.reference-h5 { font-size:1.25rem; }
label { display:inline-block; margin-bottom:.5rem; }

.course-day { margin-inline: 15px; padding-top: 1em; }
@media (prefers-reduced-motion: no-preference) {
  .pulse.animated.infinite { animation: sport-pulse 1s infinite; }
}
@keyframes sport-pulse { 50% { transform: scale3d(1.05, 1.05, 1.05); } }

#kursplan-status:empty { display: none; }

.gzn-recipient {
  color: white;
  background-color: #762916;
  border-color: #762916;
  --bs-form-select-bg-img: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='white' stroke-width='2' d='m2 5 6 6 6-6'/%3E%3C/svg%3E");
}
