/*!
 * Buss & Tensing GmbH
 * Complete custom frontend stylesheet
 * Contao 5.3.49 + RockSolid Custom Elements
 *
 * Covers:
 * - Global typography and colors
 * - Header / logo / native Contao navigation
 * - Homepage hero, facts, company intro, services, team teaser
 * - Subpage header
 * - Team overview
 * - Training intro, accordion and contact/process section
 * - Inspection intro, inspection spectrum, inspection badge and process section
 * - Contact strip
 * - Footer
 * - Responsive breakpoints
 *
 * Dependency:
 * Bootstrap 5.x provides .container, .row, .col-* and utility classes.
 * Font:
 * "Source Sans 3" should be loaded separately in the Contao page layout.
 *
 * Navigation:
 * Styled for Contao .mod_navigation.main-nav with .level_1,
 * including active/trail states and responsive horizontal scrolling.
 */

:root {
  --blue: #315b76;
  --blue-dark: #24465d;
  --gold: #c8932f;
  --dark: #293036;
  --text: #586168;
  --muted: #7b848a;
  --line: #dfe4e7;
  --light: #f7f8f8;

  /* Aliases used by the subpage modules */
  --bt-blue: var(--blue);
  --bt-blue-dark: var(--blue-dark);
  --bt-gold: var(--gold);
  --bt-dark: var(--dark);
  --bt-text: var(--text);
  --bt-muted: var(--muted);
  --bt-line: var(--line);
  --bt-light: var(--light);

  /* Logo stripe */
  --bt-red: #d71920;
  --bt-yellow: #e0aa22;
  --bt-green: #579447;
}
html{scroll-behavior:smooth}body{margin:0;font-family:"Source Sans 3",Arial,sans-serif;color:var(--text);background:#fff;line-height:1.65;-webkit-font-smoothing:antialiased}h1,h2,h3{color:var(--dark);font-weight:600;letter-spacing:-.02em}a{color:var(--blue);text-decoration:none}a:hover{color:var(--blue-dark)}
/* =========================================================
   Header / Contao Navigation
   ========================================================= */

.site-header {
  position: relative;
  z-index: 1030;
  background: rgba(255, 255, 255, .98);
  border-bottom: 1px solid var(--line);
}

.site-header > .inside {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

/* obere Kontaktleiste */
.topbar {
  flex: 0 0 100%;
  width: 100%;
  border-bottom: 1px solid var(--line);
  background: #f8f9f9;
  color: var(--muted);
  font-size: .82rem;
}

.topbar .container {
  min-height: 36px;
}

.topbar a {
  color: var(--muted);
  text-decoration: none;
}

.topbar a:hover,
.topbar a:focus-visible {
  color: var(--blue);
}

/* Logo */
.navbar-brand {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  margin: 0;
  margin-left: max(12px, calc((100vw - 1320px) / 2 + 12px));
  padding: 30px 0;
  text-decoration: none;
}

.site-logo {
  display: block;
  width: 310px;
  max-width: 100%;
  height: auto;
}

/* Contao-Navigationsmodul */
.mod_navigation.main-nav {
  flex: 1 1 auto;
  min-width: 0;
  min-height: 88px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  margin-right: max(12px, calc((100vw - 1320px) / 2 + 12px));
  padding-left: 2.25rem;
  background: #fff;
}

.mod_navigation.main-nav > .level_1 {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 1.65rem;
}

.mod_navigation.main-nav li {
  position: relative;
  margin: 0;
  padding: 0;
  list-style: none;
}

/* normale Links */
.mod_navigation.main-nav a,
.mod_navigation.main-nav strong {
  position: relative;
  display: inline-block;
  padding: .35rem 0;
  color: #434b50;
  font-size: .93rem;
  font-weight: 600;
  line-height: 1.4;
  text-decoration: none;
  white-space: nowrap;
}

.mod_navigation.main-nav a:hover,
.mod_navigation.main-nav a:focus-visible {
  color: var(--blue);
}

/* aktiver bzw. übergeordneter Menüpunkt in Contao */
.mod_navigation.main-nav li.active > strong,
.mod_navigation.main-nav li.active > a,
.mod_navigation.main-nav a.active,
.mod_navigation.main-nav a.trail,
.mod_navigation.main-nav strong.active,
.mod_navigation.main-nav strong.trail {
  color: var(--blue);
}

.mod_navigation.main-nav li.active > strong::after,
.mod_navigation.main-nav li.active > a::after,
.mod_navigation.main-nav a.active::after,
.mod_navigation.main-nav a.trail::after,
.mod_navigation.main-nav strong.active::after,
.mod_navigation.main-nav strong.trail::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -.35rem;
  height: 2px;
  background: var(--gold);
}

/* Kontakt als letzter Menüpunkt */
.mod_navigation.main-nav .level_1 > li:last-child {
  margin-left: .3rem;
}

.mod_navigation.main-nav .level_1 > li:last-child > a,
.mod_navigation.main-nav .level_1 > li:last-child > strong {
  padding: .55rem .9rem;
  border: 1px solid var(--blue);
  color: var(--blue);
}

.mod_navigation.main-nav .level_1 > li:last-child > a:hover,
.mod_navigation.main-nav .level_1 > li:last-child > a:focus-visible {
  background: var(--blue);
  color: #fff;
}

.mod_navigation.main-nav .level_1 > li:last-child > a::after,
.mod_navigation.main-nav .level_1 > li:last-child > strong::after {
  display: none;
}

/* Contao Skip-Navigation bleibt nur für Screenreader sichtbar */
.mod_navigation.main-nav > .invisible,
.mod_navigation.main-nav .invisible {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* Tastatur: Skip-Link beim Fokus sichtbar machen */
.mod_navigation.main-nav > a.invisible:focus {
  position: fixed !important;
  top: .75rem;
  left: .75rem;
  z-index: 9999;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: .65rem .9rem !important;
  overflow: visible !important;
  clip: auto !important;
  white-space: normal !important;
  background: #fff;
  color: var(--blue);
  border: 1px solid var(--blue);
}

.hero{position:relative;min-height:470px;display:flex;align-items:center;color:#fff;background:linear-gradient(90deg,rgba(26,34,39,.72) 0%,rgba(26,34,39,.50) 45%,rgba(26,34,39,.16) 74%,rgba(26,34,39,.06) 100%),url("https://www.buss-tensing.de/images/startseite.jpg") center/cover no-repeat;border-bottom:0}.hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:10px;background:linear-gradient(90deg,#d71920 0%,#d71920 25%,#315b76 25%,#315b76 50%,#e0aa22 50%,#e0aa22 75%,#579447 75%,#579447 100%)}.hero-content{max-width:650px;padding:4.5rem 0}.kicker{margin-bottom:.75rem;color:rgba(255,255,255,.88);font-size:.78rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.hero h1{max-width:620px;margin:0 0 1rem;color:#fff;font-size:clamp(2.6rem,5vw,4.25rem);font-weight:600;line-height:1.02}.hero p{max-width:570px;margin:0 0 1.6rem;color:rgba(255,255,255,.88);font-size:1.05rem}.hero-links{display:flex;flex-wrap:wrap;gap:.75rem 1.1rem;align-items:center}.hero-links a{color:#fff;font-weight:600;border-bottom:1px solid rgba(255,255,255,.55);padding-bottom:.15rem}.hero-links .primary-link{padding:.65rem .95rem;border:1px solid rgba(255,255,255,.78)}
.facts{border-bottom:1px solid var(--line);background:#fff}.fact{padding:1.45rem 0}.fact+.fact{border-left:1px solid var(--line);padding-left:2rem}.fact-label{display:block;margin-bottom:.25rem;color:var(--muted);font-size:.71rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase}.fact-value{color:var(--dark);font-size:.98rem;font-weight:600}
.section{padding:5rem 0}.section-light{background:var(--light)}.section-heading{margin-bottom:2rem}.section-heading small,.team-copy small{display:block;margin-bottom:.45rem;color:var(--blue);font-size:.78rem;font-weight:600;letter-spacing:.10em;text-transform:uppercase}.section-heading h2{margin:0;max-width:720px;font-size:clamp(1.9rem,3vw,2.55rem);line-height:1.15}.intro-copy{max-width:820px}.intro-copy p{margin-bottom:1.05rem}.motto{margin-top:1.6rem;padding-left:1rem;border-left:3px solid var(--gold);color:var(--dark);font-weight:600}
.side-info{padding-left:1.2rem;border-left:1px solid var(--line)}.side-info-block+.side-info-block{margin-top:2rem;padding-top:1.7rem;border-top:1px solid var(--line)}.side-info h3{margin-bottom:.85rem;font-size:1rem}.hours-row{display:flex;justify-content:space-between;gap:1rem;padding:.3rem 0;font-size:.92rem}.hours-row strong{color:var(--dark);font-weight:600}.contact-meta{font-size:.92rem}.contact-meta p{margin-bottom:.75rem}
.services{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.service-item{height:100%;padding:.3rem 2.2rem .3rem 0}.service-item.second{border-left:1px solid var(--line);padding-left:2.2rem}.service-number{display:block;margin-bottom:.6rem;color:var(--gold);font-size:.78rem;font-weight:600;letter-spacing:.08em}.service-item h3{margin-bottom:.6rem;font-size:1.35rem}.service-item p{max-width:520px;margin-bottom:.85rem;color:var(--muted);font-size:.95rem}.service-item a{font-size:.92rem;font-weight:600}
.team-section{padding:5rem 0}.team-image{width:100%;min-height:390px;height:100%;object-fit:cover}.team-copy{height:100%;padding:2.4rem 0 2.4rem 2.8rem;display:flex;flex-direction:column;justify-content:center}.team-copy h2{max-width:430px;margin-bottom:1rem;font-size:clamp(1.9rem,3vw,2.5rem);line-height:1.15}.team-copy p{max-width:480px;margin-bottom:1.2rem}.simple-link{display:inline-block;width:fit-content;padding-bottom:.12rem;border-bottom:1px solid var(--blue);font-weight:600}
.contact-strip{padding:2.5rem 0;border-top:1px solid var(--line);background:#fff}.contact-strip h2{margin-bottom:.25rem;font-size:1.6rem}.contact-strip p{margin-bottom:0}.contact-strip-links{display:flex;gap:1.2rem;flex-wrap:wrap}.contact-strip-links a{font-weight:600}
footer{position:relative;padding:calc(2.8rem + 10px) 0 1.2rem;background:#232a2f;color:rgba(255,255,255,.67)}footer::before{content:"";position:absolute;left:0;right:0;top:0;height:10px;background:linear-gradient(90deg,#d71920 0%,#d71920 25%,#315b76 25%,#315b76 50%,#e0aa22 50%,#e0aa22 75%,#579447 75%,#579447 100%)}footer h3{margin-bottom:.8rem;color:#fff;font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}footer p,footer a{color:rgba(255,255,255,.70);font-size:.88rem}footer a:hover{color:#fff}.footer-bottom{margin-top:2rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.08);font-size:.78rem}

@media (max-width: 991.98px) {
  .topbar {
    display: none;
  }

  .site-header > .inside {
    display: flex;
    flex-wrap: wrap;
  }

  .navbar-brand {
    flex: 0 0 100%;
    justify-content: center;
    margin: 0;
    padding: 13px 16px 10px;
  }

  .site-logo {
    width: 255px;
  }

  .mod_navigation.main-nav {
    flex: 0 0 100%;
    width: 100%;
    min-height: auto;
    margin: 0;
    padding: 0;
    border-top: 1px solid var(--line);
  }

  .mod_navigation.main-nav > .level_1 {
    width: 100%;
    padding: .3rem 16px;
    gap: 0;
    justify-content: flex-start;
    overflow-x: auto;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }

  .mod_navigation.main-nav > .level_1::-webkit-scrollbar {
    display: none;
  }

  .mod_navigation.main-nav .level_1 > li {
    flex: 0 0 auto;
  }

  .mod_navigation.main-nav .level_1 > li + li {
    margin-left: 1.35rem;
  }

  .mod_navigation.main-nav a,
  .mod_navigation.main-nav strong {
    padding: .65rem 0;
    font-size: .92rem;
  }

  .mod_navigation.main-nav li.active > strong::after,
  .mod_navigation.main-nav li.active > a::after,
  .mod_navigation.main-nav a.active::after,
  .mod_navigation.main-nav a.trail::after,
  .mod_navigation.main-nav strong.active::after,
  .mod_navigation.main-nav strong.trail::after {
    bottom: .2rem;
  }

  /* Kontakt verhält sich mobil wie die übrigen Navigationspunkte */
  .mod_navigation.main-nav .level_1 > li:last-child {
    margin-left: 1.35rem;
  }

  .mod_navigation.main-nav .level_1 > li:last-child > a,
  .mod_navigation.main-nav .level_1 > li:last-child > strong {
    padding: .65rem 0;
    border: 0;
    color: #434b50;
  }

  .mod_navigation.main-nav .level_1 > li:last-child > a:hover,
  .mod_navigation.main-nav .level_1 > li:last-child > a:focus-visible,
  .mod_navigation.main-nav .level_1 > li:last-child.active > strong {
    background: transparent;
    color: var(--blue);
  }

  .mod_navigation.main-nav .level_1 > li:last-child.active > strong::after,
  .mod_navigation.main-nav .level_1 > li:last-child > a.active::after,
  .mod_navigation.main-nav .level_1 > li:last-child > a.trail::after {
    display: block;
  }

  .hero {
    min-height: 420px;
    background-position: 48% center;
  }

  .hero-content {
    padding: 3.7rem 0;
  }

  .facts {
    padding: .4rem 0;
  }

  .fact + .fact {
    border-left: 0;
    border-top: 1px solid var(--line);
    padding-left: 0;
  }

  .section,
  .team-section {
    padding: 4rem 0;
  }

  .side-info {
    margin-top: .5rem;
    padding-left: 0;
    border-left: 0;
    border-top: 1px solid var(--line);
    padding-top: 1.8rem;
  }

  .service-item.second {
    margin-top: 2rem;
    padding-top: 2rem;
    padding-left: 0;
    border-left: 0;
    border-top: 1px solid var(--line);
  }

  .team-copy {
    padding: 2rem 0 0;
  }
}
@media (max-width: 575.98px) {
  .navbar-brand {
    padding-top: 11px;
    padding-bottom: 9px;
  }

  .site-logo {
    width: 225px;
  }

  .mod_navigation.main-nav > .level_1 {
    padding-left: 14px;
    padding-right: 14px;
  }

  .mod_navigation.main-nav .level_1 > li + li,
  .mod_navigation.main-nav .level_1 > li:last-child {
    margin-left: 1.1rem;
  }

  .mod_navigation.main-nav a,
  .mod_navigation.main-nav strong {
    font-size: .88rem;
  }

  .hero {
    min-height: 390px;
  }

  .hero h1 {
    font-size: 2.45rem;
  }

  .hero p {
    font-size: .98rem;
  }

  .section,
  .team-section {
    padding: 3.4rem 0;
  }

  .contact-strip {
    padding: 2rem 0;
  }

  .contact-strip-links {
    margin-top: 1rem;
    gap: .75rem 1rem;
  }
}

.subpage-head {
      position: relative;
      padding: 4.8rem 0 4.3rem;
      background: #f5f6f6;
    }

    .subpage-head::after {
      content: "";
      position: absolute;
      left: 0;
      right: 0;
      bottom: 0;
      height: 10px;
      background: linear-gradient(
        90deg,
        #d71920 0%,
        #d71920 25%,
        #315b76 25%,
        #315b76 50%,
        #e0aa22 50%,
        #e0aa22 75%,
        #579447 75%,
        #579447 100%
      );
    }

    .subpage-head-inner {
      max-width: 720px;
    }

    .subpage-kicker {
      margin-bottom: .6rem;
      color: var(--bt-blue);
      font-size: .78rem;
      font-weight: 600;
      letter-spacing: .12em;
      text-transform: uppercase;
    }

    .subpage-head h1 {
      margin: 0 0 .85rem;
      font-size: clamp(2.55rem, 5vw, 4rem);
      font-weight: 600;
      line-height: 1.05;
    }

    .subpage-head p {
      max-width: 650px;
      margin: 0;
      font-size: 1.03rem;
      color: #677077;
    }

    .team-overview {
      padding: 5rem 0 5.5rem;
    }

    .team-group + .team-group {
      margin-top: 5rem;
      padding-top: 4.6rem;
      border-top: 1px solid var(--bt-line);
    }

    .team-heading {
      margin-bottom: 0;
    }

    .team-heading small {
      color: var(--bt-gold);
    }

    .team-heading h2 {
      font-size: clamp(1.85rem, 3vw, 2.4rem);
    }

    .group-contact {
      padding-bottom: .35rem;
      color: var(--bt-muted);
      font-size: .9rem;
    }

    .group-contact a {
      font-weight: 600;
    }

    .person {
      height: 100%;
    }

    .person img,
    .person-placeholder {
      display: block;
      width: 100%;
      aspect-ratio: 1 / 1;
      object-fit: cover;
      background: #eef0f1;
    }

    .person-placeholder {
      display: grid;
      place-items: center;
      border: 1px solid var(--bt-line);
      color: #969da2;
      font-size: .8rem;
      font-weight: 600;
      letter-spacing: .1em;
      text-transform: uppercase;
    }

    .person-copy {
      padding-top: 1rem;
    }

    .person-copy h3 {
      margin: 0 0 .18rem;
      font-size: 1.08rem;
      font-weight: 600;
    }

    .person-copy p {
      margin: 0;
      color: var(--bt-muted);
      font-size: .9rem;
      line-height: 1.45;
    }

    .person-copy a {
      display: inline-block;
      margin-top: .4rem;
      font-size: .88rem;
      font-weight: 600;
    }

    @media (max-width: 991.98px) {
      .subpage-head {
        padding: 4rem 0 3.7rem;
      }

      .team-overview {
        padding: 4rem 0 4.5rem;
      }

      .team-group + .team-group {
        margin-top: 4rem;
        padding-top: 3.8rem;
      }

      .group-contact {
        margin-top: .75rem;
        text-align: left;
      }
    }

    @media (max-width: 575.98px) {
      .subpage-head {
        padding: 3.2rem 0 3rem;
      }

      .subpage-head h1 {
        font-size: 2.5rem;
      }

      .team-overview {
        padding: 3.4rem 0 3.8rem;
      }

      .team-group + .team-group {
        margin-top: 3.4rem;
        padding-top: 3.2rem;
      }

      .person-copy {
        padding-top: .8rem;
      }
    }

.training-intro {
      padding: 5rem 0;
    }

    .training-heading {
      margin-bottom: 1.8rem;
    }

    .training-copy {
      max-width: 760px;
    }

    .training-copy p {
      margin-bottom: 1.05rem;
    }

    .training-room {
      margin: 0;
    }

    .training-room img {
      display: block;
      width: 100%;
      height: auto;
    }

    .training-room figcaption {
      margin-top: .55rem;
      color: var(--bt-muted);
      font-size: .8rem;
    }

    .training-types {
      padding: 5rem 0;
      background: var(--bt-light);
      border-top: 1px solid var(--bt-line);
      border-bottom: 1px solid var(--bt-line);
    }

    .training-list {
      border-top: 1px solid var(--bt-line);
    }

    .training-row {
      display: grid;
      grid-template-columns: 70px minmax(0, 1fr) auto;
      align-items: center;
      gap: 1.2rem;
      min-height: 82px;
      border-bottom: 1px solid var(--bt-line);
      color: var(--bt-dark);
      transition: color .18s ease;
    }

    .training-number {
      color: var(--bt-gold);
      font-size: .76rem;
      font-weight: 600;
      letter-spacing: .08em;
    }

    .training-title {
      font-size: 1.18rem;
      font-weight: 600;
      letter-spacing: -.015em;
    }

    .training-title em {
      margin-left: .35rem;
      color: var(--bt-muted);
      font-size: .88rem;
      font-style: normal;
      font-weight: 400;
    }

    .training-link {
      color: var(--bt-blue);
      font-size: .88rem;
      font-weight: 600;
      white-space: nowrap;
    }

    .training-row:hover {
      color: var(--bt-blue);
    }

    .training-row:hover .training-link {
      color: var(--bt-blue-dark);
    }

    .training-process {
      padding: 5rem 0;
    }

    .process-copy {
      max-width: 700px;
      margin: 0;
    }

    .training-contact {
      padding-left: 1.7rem;
      border-left: 1px solid var(--bt-line);
    }

    .training-contact-label {
      display: block;
      margin-bottom: .45rem;
      color: var(--bt-muted);
      font-size: .74rem;
      font-weight: 600;
      letter-spacing: .09em;
      text-transform: uppercase;
    }

    .training-phone {
      display: block;
      color: var(--bt-dark);
      font-size: 1.45rem;
      font-weight: 600;
      letter-spacing: -.02em;
    }

    .training-mail {
      display: inline-block;
      margin-top: .25rem;
      font-size: .92rem;
      font-weight: 600;
    }

    .training-hours {
      display: grid;
      grid-template-columns: 1fr auto;
      gap: .3rem 1.25rem;
      margin-top: 1.3rem;
      padding-top: 1rem;
      border-top: 1px solid var(--bt-line);
      font-size: .86rem;
    }

    .training-hours strong {
      color: var(--bt-dark);
      font-weight: 600;
    }

    @media (max-width: 991.98px) {
      .training-intro,
      .training-types,
      .training-process {
        padding: 4rem 0;
      }

      .training-room {
        max-width: 620px;
      }

      .training-contact {
        padding-left: 0;
        padding-top: 1.8rem;
        border-left: 0;
        border-top: 1px solid var(--bt-line);
      }
    }

    @media (max-width: 575.98px) {
      .training-intro,
      .training-types,
      .training-process {
        padding: 3.4rem 0;
      }

      .training-row {
        grid-template-columns: 38px minmax(0, 1fr);
        gap: .7rem;
        min-height: 74px;
        padding: .7rem 0;
      }

      .training-link {
        grid-column: 2;
        margin-top: -.35rem;
        font-size: .82rem;
      }

      .training-title {
        font-size: 1.08rem;
      }

      .training-title em {
        display: block;
        margin: .1rem 0 0;
      }

      .training-phone {
        font-size: 1.3rem;
      }
    }

.training-accordion {
      border-top: 1px solid var(--bt-line);
    }

    .training-accordion-item {
      border-bottom: 1px solid var(--bt-line);
    }

    .training-accordion-trigger {
      width: 100%;
      min-height: 84px;
      display: grid;
      grid-template-columns: 70px minmax(0, 1fr) 32px;
      align-items: center;
      gap: 1.2rem;
      padding: 0;
      border: 0;
      background: transparent;
      text-align: left;
      color: var(--bt-dark);
      cursor: pointer;
    }

    .training-accordion-trigger:hover .training-accordion-title,
    .training-accordion-trigger[aria-expanded="true"] .training-accordion-title {
      color: var(--bt-blue);
    }

    .training-accordion-number {
      color: var(--bt-gold);
      font-size: .76rem;
      font-weight: 600;
      letter-spacing: .08em;
    }

    .training-accordion-title {
      font-size: 1.2rem;
      font-weight: 600;
      letter-spacing: -.015em;
      transition: color .18s ease;
    }

    .training-accordion-title em {
      margin-left: .35rem;
      color: var(--bt-muted);
      font-size: .88rem;
      font-style: normal;
      font-weight: 400;
    }

    .training-accordion-icon {
      position: relative;
      width: 22px;
      height: 22px;
      justify-self: end;
    }

    .training-accordion-icon::before,
    .training-accordion-icon::after {
      content: "";
      position: absolute;
      top: 10px;
      left: 4px;
      width: 14px;
      height: 1px;
      background: var(--bt-dark);
      transition: transform .2s ease;
    }

    .training-accordion-icon::after {
      transform: rotate(90deg);
    }

    .training-accordion-trigger[aria-expanded="true"] .training-accordion-icon::after {
      transform: rotate(0deg);
    }

    .training-accordion-panel {
      display: grid;
      grid-template-rows: 0fr;
      transition: grid-template-rows .28s ease;
    }

    .training-accordion-panel.is-open {
      grid-template-rows: 1fr;
    }

    .training-accordion-content {
      overflow: hidden;
    }

    .training-accordion-content > p,
    .training-details {
      max-width: 920px;
      margin-left: 70px;
    }

    .training-accordion-content > p {
      margin-top: -.2rem;
      margin-bottom: 1.25rem;
      padding-right: 3rem;
      color: var(--bt-muted);
      font-size: .96rem;
    }

    .training-details {
      padding: 0 3rem 1.8rem 0;
    }

    .training-details > div {
      display: grid;
      grid-template-columns: 110px 1fr;
      gap: 1.2rem;
      padding: .5rem 0;
      border-top: 1px solid rgba(223, 228, 231, .75);
      font-size: .9rem;
    }

    .training-details strong {
      color: var(--bt-dark);
      font-weight: 600;
    }

    .training-details span {
      color: var(--bt-muted);
    }

    @media (max-width: 767.98px) {
      .training-accordion-trigger {
        min-height: 74px;
        grid-template-columns: 38px minmax(0, 1fr) 26px;
        gap: .7rem;
      }

      .training-accordion-title {
        font-size: 1.08rem;
      }

      .training-accordion-title em {
        display: block;
        margin: .1rem 0 0;
      }

      .training-accordion-content > p,
      .training-details {
        margin-left: 38px;
      }

      .training-accordion-content > p,
      .training-details {
        padding-right: 0;
      }

      .training-details > div {
        grid-template-columns: 1fr;
        gap: .15rem;
      }
    }

/* Accordion polish: clearly interactive, still restrained */
    .training-accordion {
      border-top: 1px solid var(--bt-line);
    }

    .training-accordion-item {
      position: relative;
      border-bottom: 1px solid var(--bt-line);
      background: transparent;
      transition: background-color .18s ease;
    }

    .training-accordion-item:hover {
      background: rgba(49, 91, 118, .035);
    }

    .training-accordion-item:has(.training-accordion-trigger[aria-expanded="true"]) {
      background: #fff;
    }

    .training-accordion-trigger {
      position: relative;
      min-height: 88px;
      grid-template-columns: 70px minmax(0, 1fr) auto;
      padding: 0 1rem 0 0;
      cursor: pointer;
    }


    .training-accordion-trigger[aria-expanded="true"] .training-accordion-title {
      color: var(--bt-blue);
    }

    .training-accordion-action {
      display: inline-flex;
      align-items: center;
      justify-content: flex-end;
      gap: .7rem;
      min-width: 132px;
      color: var(--bt-muted);
      font-size: .8rem;
      font-weight: 600;
    }

    .training-accordion-action i {
      width: 30px;
      height: 30px;
      display: inline-grid;
      place-items: center;
      border: 1px solid var(--bt-line);
      border-radius: 50%;
      color: var(--bt-blue);
      background: #fff;
      font-size: .72rem;
      transition: transform .22s ease, background-color .18s ease, color .18s ease, border-color .18s ease;
    }

    .training-accordion-trigger:hover .training-accordion-action i {
      border-color: var(--bt-blue);
      background: var(--bt-blue);
      color: #fff;
    }

    .training-accordion-trigger[aria-expanded="true"] .training-accordion-action i {
      transform: rotate(180deg);
      border-color: var(--bt-blue);
      background: var(--bt-blue);
      color: #fff;
    }

    .training-accordion-trigger[aria-expanded="true"] .training-accordion-hint {
      color: var(--bt-blue);
    }

    .training-accordion-trigger[aria-expanded="true"] .training-accordion-hint::after {
      content: " schließen";
    }

    .training-accordion-panel.is-open {
      border-top: 1px solid rgba(223, 228, 231, .7);
    }

    .training-accordion-content {
      padding-top: 1.15rem;
    }

    .training-details {
      padding-bottom: 2rem;
    }

    @media (max-width: 767.98px) {
      .training-accordion-trigger {
        min-height: 78px;
        grid-template-columns: 38px minmax(0, 1fr) 36px;
        padding-right: 0;
      }

      .training-accordion-action {
        min-width: 0;
      }

      .training-accordion-hint {
        display: none;
      }

      .training-accordion-action i {
        width: 32px;
        height: 32px;
      }

      .training-accordion-trigger::before {
        left: -.75rem;
      }
    }

/* Refined accordion interaction */
    .training-accordion-item {
      position: relative;
      overflow: hidden;
      transition:
        background-color .18s ease,
        box-shadow .18s ease;
    }

    .training-accordion-item:hover {
      background: rgba(49, 91, 118, .045);
    }

    .training-accordion-trigger {
      transition: padding-left .18s ease;
    }




    .training-accordion-trigger[aria-expanded="true"]::before {
      background: var(--bt-blue);
      transform: scaleY(1);
    }

    .training-accordion-title {
      transition: color .18s ease;
    }

    .training-accordion-trigger:hover .training-accordion-title {
      color: var(--bt-blue);
    }

    .training-accordion-action {
      gap: .75rem;
      min-width: 145px;
      color: var(--bt-muted);
    }

    .training-accordion-hint {
      font-size: .79rem;
      font-weight: 600;
      white-space: nowrap;
      transition: color .18s ease;
    }

    .hint-open {
      display: none;
    }

    .training-accordion-trigger[aria-expanded="true"] .hint-closed {
      display: none;
    }

    .training-accordion-trigger[aria-expanded="true"] .hint-open {
      display: inline;
    }

    .training-accordion-trigger:hover .training-accordion-hint,
    .training-accordion-trigger[aria-expanded="true"] .training-accordion-hint {
      color: var(--bt-blue);
    }

    .training-accordion-chevron {
      flex: 0 0 auto;
      width: 32px;
      height: 32px;
      display: grid;
      place-items: center;
      border: 1px solid #cfd7dc;
      border-radius: 50%;
      background: #fff;
      color: var(--bt-blue);
      transition:
        background-color .18s ease,
        border-color .18s ease,
        color .18s ease,
        transform .22s ease,
        box-shadow .18s ease;
    }

    .training-accordion-chevron svg {
      width: 16px;
      height: 16px;
      display: block;
      overflow: visible;
      fill: none;
      stroke: currentColor;
      stroke-width: 1.8;
      stroke-linecap: round;
      stroke-linejoin: round;
      pointer-events: none;
    }

    .training-accordion-trigger:hover .training-accordion-chevron {
      border-color: var(--bt-blue);
      background: #f7fafb;
      color: var(--bt-blue-dark);
      box-shadow: 0 2px 8px rgba(49, 91, 118, .10);
      transform: translateY(1px);
    }

    .training-accordion-trigger[aria-expanded="true"] .training-accordion-chevron {
      border-color: var(--bt-blue);
      background: var(--bt-blue);
      color: #fff;
      transform: rotate(180deg);
      box-shadow: none;
    }

    .training-accordion-trigger[aria-expanded="true"]:hover .training-accordion-chevron {
      background: var(--bt-blue-dark);
      border-color: var(--bt-blue-dark);
      color: #fff;
      transform: rotate(180deg) translateY(-1px);
    }

    /* Override obsolete Font-Awesome icon rules from the previous version. */
    .training-accordion-action i {
      display: none !important;
    }

    .training-accordion-trigger[aria-expanded="true"] .training-accordion-hint::after {
      content: none !important;
    }

    @media (max-width: 767.98px) {
      .training-accordion-action {
        min-width: 32px;
      }

      .training-accordion-hint {
        display: none;
      }

      .training-accordion-chevron {
        width: 32px;
        height: 32px;
      }

      .training-accordion-trigger::before {
        left: 0;
      }
    }

.inspection-intro {
      padding: 5rem 0;
    }

    .inspection-heading {
      margin-bottom: 1.8rem;
    }

    .inspection-copy {
      max-width: 800px;
    }

    .inspection-copy p {
      margin-bottom: 1.05rem;
    }

    .inspection-note {
      margin-top: .25rem;
      padding-left: 1.6rem;
      border-left: 1px solid var(--bt-line);
    }

    .inspection-note-label {
      display: block;
      margin-bottom: .25rem;
      color: var(--bt-muted);
      font-size: .74rem;
      font-weight: 600;
      letter-spacing: .09em;
      text-transform: uppercase;
    }

    .inspection-note strong {
      display: block;
      margin-bottom: .6rem;
      color: var(--bt-blue);
      font-size: 2.6rem;
      font-weight: 600;
      line-height: 1;
      letter-spacing: -.04em;
    }

    .inspection-note p {
      margin: 0;
      max-width: 320px;
      color: var(--bt-muted);
      font-size: .88rem;
    }

    .inspection-services {
      padding: 5rem 0 5.4rem;
      background: var(--bt-light);
      border-top: 1px solid var(--bt-line);
      border-bottom: 1px solid var(--bt-line);
    }

    .inspection-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      border-top: 1px solid var(--bt-line);
    }

    .inspection-item {
      display: grid;
      grid-template-columns: 42px minmax(0, 1fr);
      gap: 1rem;
      min-height: 142px;
      padding: 1.45rem 2.1rem 1.45rem 0;
      border-bottom: 1px solid var(--bt-line);
    }

    .inspection-item:nth-child(even) {
      padding-left: 2.1rem;
      border-left: 1px solid var(--bt-line);
    }

    .inspection-number {
      padding-top: .12rem;
      color: var(--bt-gold);
      font-size: .72rem;
      font-weight: 600;
      letter-spacing: .07em;
    }

    .inspection-item h3 {
      margin: 0 0 .4rem;
      font-size: 1.08rem;
      line-height: 1.3;
    }

    .inspection-item h3 em {
      display: inline-block;
      margin-left: .3rem;
      color: var(--bt-blue);
      font-size: .73rem;
      font-style: normal;
      font-weight: 600;
      letter-spacing: .04em;
      text-transform: uppercase;
    }

    .inspection-item p {
      margin: 0;
      color: var(--bt-muted);
      font-size: .89rem;
      line-height: 1.55;
    }

    .inspection-item-wide {
      grid-column: 1 / -1;
      min-height: auto;
      padding-right: 2rem;
    }

    .inspection-process {
      padding: 5rem 0;
    }

    .inspection-process p {
      max-width: 720px;
      margin: 0;
    }

    .inspection-contact {
      padding-left: 1.7rem;
      border-left: 1px solid var(--bt-line);
    }

    .inspection-contact > span {
      display: block;
      margin-bottom: .4rem;
      color: var(--bt-muted);
      font-size: .74rem;
      font-weight: 600;
      letter-spacing: .09em;
      text-transform: uppercase;
    }

    .inspection-contact a {
      display: block;
      width: fit-content;
      margin-top: .25rem;
      font-weight: 600;
    }

    .inspection-phone {
      color: var(--bt-dark);
      font-size: 1.4rem;
      letter-spacing: -.02em;
    }

    @media (max-width: 991.98px) {
      .inspection-intro,
      .inspection-services,
      .inspection-process {
        padding: 4rem 0;
      }

      .inspection-note {
        padding-top: 1.7rem;
        padding-left: 0;
        border-top: 1px solid var(--bt-line);
        border-left: 0;
      }

      .inspection-grid {
        grid-template-columns: 1fr;
      }

      .inspection-item,
      .inspection-item:nth-child(even) {
        min-height: auto;
        padding: 1.35rem 0;
        border-left: 0;
      }

      .inspection-item-wide {
        grid-column: auto;
      }

      .inspection-contact {
        padding-top: 1.8rem;
        padding-left: 0;
        border-top: 1px solid var(--bt-line);
        border-left: 0;
      }
    }

    @media (max-width: 575.98px) {
      .inspection-intro,
      .inspection-services,
      .inspection-process {
        padding: 3.4rem 0;
      }

      .inspection-item {
        grid-template-columns: 34px minmax(0, 1fr);
        gap: .65rem;
      }

      .inspection-note strong {
        font-size: 2.25rem;
      }

      .inspection-phone {
        font-size: 1.25rem;
      }
    }

/* Highlighted inspection note */
    .inspection-note {
      margin-top: 0;
      padding: 1.7rem 0 0 2rem;
      border-left: 1px solid var(--bt-line);
    }

    .inspection-note-label {
      display: block;
      margin-bottom: 1.05rem;
      color: var(--bt-muted);
      font-size: .73rem;
      font-weight: 600;
      letter-spacing: .11em;
      text-transform: uppercase;
    }

    .inspection-badge {
      width: 176px;
      height: 176px;
      margin-bottom: 1.25rem;
      padding: 7px;
      background: conic-gradient(
        #d71920 0 25%,
        #315b76 25% 50%,
        #e0aa22 50% 75%,
        #579447 75% 100%
      );
      box-shadow: 0 10px 28px rgba(35, 49, 58, .10);
    }

    .inspection-badge-inner {
      width: 100%;
      height: 100%;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      border-radius: 50%;
      background: var(--bt-blue);
      color: #fff;
    }

    .inspection-badge-value {
      display: block;
      margin-bottom: -.15rem;
      font-size: 4.1rem;
      font-weight: 900;
      line-height: .95;
      letter-spacing: -.055em;
    }

    .inspection-badge-unit {
      display: block;
      margin-top: .35rem;
      font-size: .92rem;
      font-weight: 600;
      letter-spacing: .02em;
    }

    .inspection-note p {
      max-width: 300px;
      margin: 0;
      color: var(--bt-muted);
      font-size: .88rem;
      line-height: 1.6;
    }

    /* Override the old text-based 12-month styling */
    .inspection-note > strong {
      display: none;
    }

    @media (max-width: 991.98px) {
      .inspection-note {
        padding: 1.8rem 0 0;
        border-left: 0;
        border-top: 1px solid var(--bt-line);
      }

      .inspection-badge {
        width: 160px;
        height: 160px;
      }

      .inspection-badge-value {
        font-size: 3rem;
      }

      .inspection-note p {
        max-width: 420px;
      }
    }

    @media (max-width: 575.98px) {
      .inspection-badge {
        width: 148px;
        height: 148px;
        padding: 6px;
      }

      .inspection-badge-value {
        font-size: 2.75rem;
      }
    }

/* Inspection note – final alignment */
    .inspection-note {
      display: flex;
      flex-direction: column;
      align-items: center;
      text-align: center;
    }

    .inspection-note-label {
      width: 100%;
      text-align: center;
    }


    .inspection-note p {
      margin-left: auto;
      margin-right: auto;
      text-align: center;
    }

    @media (max-width: 991.98px) {
      .inspection-note {
        align-items: center;
        text-align: center;
      }

      .inspection-note p {
        margin-left: auto;
        margin-right: auto;
      }
    }
    
    /* Rechtliche Seiten */
.legal-page {
  padding: 4.8rem 0 5.5rem;
}

.legal-page-head {
  max-width: 850px;
  margin-bottom: 3rem;
}

.legal-kicker {
  margin-bottom: .65rem;
  color: var(--gold);
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.legal-page h1 {
  margin: 0;
  color: var(--dark);
  font-size: clamp(2.2rem, 4vw, 3.8rem);
  font-weight: 650;
  line-height: 1.04;
  letter-spacing: -.035em;
}

.legal-intro {
  max-width: 760px;
  margin: 1.25rem 0 0;
  color: var(--text);
  font-size: 1.08rem;
  line-height: 1.75;
}

.legal-updated {
  display: flex;
  gap: .35rem;
  margin-top: 1.25rem;
  color: var(--muted);
  font-size: .88rem;
}

.legal-updated strong {
  color: var(--text);
  font-weight: 600;
}

.legal-content {
  max-width: 920px;
}

.legal-section {
  padding: 2rem 0;
  border-top: 1px solid var(--line);
  scroll-margin-top: 140px;
}

.legal-section:last-child {
  border-bottom: 1px solid var(--line);
}

.legal-section h2 {
  margin: 0 0 1rem;
  color: var(--dark);
  font-size: 1.45rem;
  font-weight: 650;
  line-height: 1.25;
}

.legal-section-copy {
  color: var(--text);
  line-height: 1.75;
}

.legal-section-copy > :last-child {
  margin-bottom: 0;
}

.legal-section-copy h3 {
  margin: 1.6rem 0 .65rem;
  color: var(--dark);
  font-size: 1.08rem;
  font-weight: 650;
}

.legal-section-copy p {
  margin: 0 0 1rem;
}

.legal-section-copy ul,
.legal-section-copy ol {
  margin: 0 0 1rem;
  padding-left: 1.35rem;
}

.legal-section-copy li + li {
  margin-top: .35rem;
}

.legal-section-copy a {
  color: var(--blue);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.legal-section-copy a:hover,
.legal-section-copy a:focus-visible {
  color: var(--blue-dark);
}

.legal-section-copy address {
  margin: 0 0 1rem;
  font-style: normal;
}

@media (max-width: 991.98px) {
  .legal-page {
    padding: 4rem 0 4.5rem;
  }

  .legal-page-head {
    margin-bottom: 2.4rem;
  }
}

@media (max-width: 575.98px) {
  .legal-page {
    padding: 3.3rem 0 3.8rem;
  }

  .legal-section {
    padding: 1.6rem 0;
  }

  .legal-section h2 {
    font-size: 1.3rem;
  }
}

/* =========================================================
   Buss & Tensing – Kontaktseite RSCE
   Ergänzung zur bestehenden buss-tensing CSS
   ========================================================= */

.contact-page {
  padding: 5rem 0 5.5rem;
}

.contact-copy {
  max-width: 470px;
  margin-bottom: 2rem;
}

.contact-details {
  margin-top: 2.2rem;
  border-top: 1px solid var(--line);
}

.contact-detail {
  display: grid;
  grid-template-columns: 115px 1fr;
  gap: 1rem;
  padding: 1.05rem 0;
  border-bottom: 1px solid var(--line);
}

.contact-detail > span {
  color: var(--muted);
  font-size: .86rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.contact-detail strong,
.contact-detail a {
  color: var(--dark);
  font-weight: 600;
}

.contact-detail a:hover {
  color: var(--blue);
}

.office-hours {
  margin-top: 2.7rem;
}

.office-hours h3 {
  margin: 0 0 .9rem;
  font-size: 1.15rem;
}

.office-hours .hours-row {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  padding: .65rem 0;
  border-bottom: 1px solid var(--line);
}

.office-hours .hours-row strong {
  color: var(--dark);
  font-weight: 600;
  white-space: nowrap;
}

.contact-form-wrap {
  padding-left: 3.4rem;
  border-left: 1px solid var(--line);
}

.contact-form-wrap .section-heading {
  margin-bottom: 2.1rem;
}

/* Contao Formulargenerator */
.contact-form form {
  margin: 0;
}

.contact-form .formbody {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 1rem;
}

.contact-form .widget {
  min-width: 0;
  margin-bottom: 1rem;
}

.contact-form .widget-textarea,
.contact-form .widget-select,
.contact-form .widget-checkbox,
.contact-form .widget-radio,
.contact-form .widget-explanation,
.contact-form .widget-submit,
.contact-form .widget-captcha {
  grid-column: 1 / -1;
}

.contact-form label,
.contact-form legend {
  display: block;
  margin-bottom: .45rem;
  color: var(--dark);
  font-size: .9rem;
  font-weight: 600;
}

.contact-form input[type="text"],
.contact-form input[type="email"],
.contact-form input[type="tel"],
.contact-form input[type="url"],
.contact-form input[type="number"],
.contact-form input[type="date"],
.contact-form select,
.contact-form textarea {
  display: block;
  width: 100%;
  min-height: 50px;
  padding: .72rem .85rem;
  color: var(--dark);
  background: #fff;
  border: 1px solid #cfd6da;
  border-radius: 0;
  outline: 0;
  box-shadow: none;
  font: inherit;
  font-size: .98rem;
}

.contact-form textarea {
  min-height: 160px;
  resize: vertical;
}

.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus {
  border-color: var(--blue);
  box-shadow: 0 0 0 2px rgba(49,91,118,.08);
}

.contact-form .widget-checkbox label,
.contact-form .widget-radio label {
  display: inline;
  margin: 0;
  color: var(--muted);
  font-size: .88rem;
  font-weight: 400;
  line-height: 1.5;
}

.contact-form .widget-checkbox input,
.contact-form .widget-radio input {
  margin-right: .4rem;
}

.contact-form .widget-checkbox a,
.contact-form .widget-explanation a {
  color: var(--blue);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.contact-form button[type="submit"],
.contact-form input[type="submit"],
.contact-form .submit {
  display: inline-flex;
  align-items: center;
  margin-top: .25rem;
  padding: .72rem 1.1rem;
  border: 1px solid var(--blue);
  border-radius: 0;
  background: var(--blue);
  color: #fff;
  font: inherit;
  font-weight: 600;
  cursor: pointer;
}

.contact-form button[type="submit"]:hover,
.contact-form input[type="submit"]:hover,
.contact-form .submit:hover {
  background: var(--blue-dark);
  border-color: var(--blue-dark);
}

.contact-form p.error,
.contact-form .error {
  color: #a82b2f;
}

.contact-form-empty {
  padding: 1rem 0;
  color: var(--muted);
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.location-section {
  padding: 4.4rem 0;
  background: var(--light);
  border-top: 1px solid var(--line);
}

.location-copy {
  max-width: 670px;
}

.location-meta {
  padding-left: 2.5rem;
  border-left: 1px solid var(--line);
}

.location-meta address {
  margin: 0 0 1.4rem;
  color: var(--dark);
  font-style: normal;
  font-weight: 600;
  line-height: 1.65;
}

@media (max-width: 991.98px) {
  .contact-page {
    padding: 4rem 0 4.5rem;
  }

  .contact-form-wrap {
    margin-top: .5rem;
    padding-left: 0;
    padding-top: 2.8rem;
    border-left: 0;
    border-top: 1px solid var(--line);
  }

  .location-meta {
    margin-top: .5rem;
    padding-left: 0;
    padding-top: 2rem;
    border-left: 0;
    border-top: 1px solid var(--line);
  }
}

@media (max-width: 575.98px) {
  .contact-page {
    padding: 3.3rem 0 3.8rem;
  }

  .contact-detail {
    grid-template-columns: 1fr;
    gap: .2rem;
  }

  .office-hours .hours-row {
    flex-direction: column;
    gap: .1rem;
  }

  .contact-form .formbody {
    grid-template-columns: 1fr;
  }

  .contact-form .widget {
    grid-column: 1 / -1;
  }

  .location-section {
    padding: 3.4rem 0;
  }
}
.footer-bottom.footer-meta {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 2rem;

    margin-top: 2.6rem;
    padding-top: 1.3rem;

    border-top: 1px solid rgba(255,255,255,.11);

    color: rgba(255,255,255,.42);
    font-size: .78rem;
}

.footer-meta-copyright {
    justify-self: start;
}

.footer-meta-slogan {
    justify-self: center;
    color: rgba(255,255,255,.38);
}

.footer-webdesign {
    justify-self: end;

    display: flex;
    align-items: center;
    gap: .55rem;

    white-space: nowrap;
}

.footer-webdesign > span {
    color: rgba(255,255,255,.35);
    font-size: .72rem;
}

.footer-webdesign a {
    display: inline-flex;
    align-items: center;

    opacity: .65;
    transition: opacity .2s ease;
}

.footer-webdesign a:hover {
    opacity: 1;
}

.footer-webdesign img {
    display: block;
    width: auto;
    height: 24px;
}


/* Tablet */
@media (max-width: 767.98px) {

    .footer-bottom.footer-meta {
        grid-template-columns: 1fr auto;
        gap: .8rem 1.5rem;
    }

    .footer-meta-copyright {
        justify-self: start;
    }

    .footer-meta-slogan {
        display: none;
    }

    .footer-webdesign {
        justify-self: end;
    }

}


/* Smartphone */
@media (max-width: 575.98px) {

    .footer-bottom.footer-meta {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: .65rem;
    }

    .footer-webdesign {
        justify-self: auto;
    }

    .footer-webdesign img {
        height: 22px;
    }

}
