@import url('DM_Sans.css');
:root {
    --navy:#1e3d59;
    --blue:#087b9b;
    --cyan:#b4e740;
   /* --red:#0BB6BE;*/
   --red:#01aef8;
    --mint:#d9f2ef;
    --ink:#20333c;
    --muted:#64747b;
    --paper:#fff;
    --soft:#f3f7f7;
    --line:#dce6e7;
    --orange:#e6a66b;
    --radius:8px;
    --shadow:0 18px 50px rgba(16,45,59,.10)
}

* {
    box-sizing:border-box
}

html {
    scroll-behavior:smooth;
    scroll-padding-top:90px
}

body {
    margin:0;
    background:var(--paper);
    color:var(--ink);
    font-family:'DM Sans',Arial,sans-serif;
    font-size:16px;
    line-height:1.65
}

a {
    color:inherit;
    text-decoration:none
}

button,input,textarea,select {
    font:inherit
}

.container {
    width:min(1160px,calc(100% - 48px));
    margin-inline:auto
}

.hero-book-button {
    display:none
}

.topbar {
    position:sticky;
    top:0;
    z-index:30;
    background:var(--navy);
    color:#e7f5f6;
    font-size:12px;
    letter-spacing:.02em
}

.topbar-inner {
    display:flex;
    justify-content:space-between;
    gap:20px;
    padding:9px 0
}

.site-header {
    position:sticky;
    top:38px;
    z-index:20;
    background:rgba(255,255,255,.96);
    backdrop-filter:blur(12px);
    border-bottom:1px solid rgba(220,230,231,.8)
}

.header-inner {
    height:80px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px
}

.brand {
    display:inline-flex;
    align-items:center;
    gap:11px;
    flex-shrink:0
}

.brand-mark {
    display:grid;
    place-items:center;
    width:44px;
    height:44px;
    background:var(--cyan);
    color:var(--navy);
    font:800 27px Manrope,sans-serif;
    border-radius:5px;
    transform:skew(-5deg)
}

.brand-name {
    font:800 25px Manrope,sans-serif;
    letter-spacing:-1.3px;
    color:var(--navy);
    line-height:1.05
}

.brand-name>span {
    color:var(--cyan)
}

.brand-name small {
    display:block;
    margin-top:6px;
    font:700 8px 'DM Sans',sans-serif;
    letter-spacing:1.6px;
    color:var(--muted)
}

.main-nav {
    display:flex;
    align-items:center;
    gap:30px;
    font-size:14px;
    font-weight:600
}

.main-nav>a:not(.button) {
    transition:color .2s
}

.main-nav>a:not(.button):hover {
    color:var(--blue)
}

.button {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:24px;
    background:var(--cyan);
    color:var(--navy);
    padding:15px 21px;
    border:0;
    border-radius:4px;
    font-weight:700;
    font-size:14px;
    cursor:pointer;
    transition:transform .2s,background .2s
}

.button:hover {
    background:#50d2d8;
    transform:translateY(-2px)
}

.button span {
    font-size:19px;
    line-height:1
}

.button-small {
    padding:12px 15px;
    gap:12px
}

.menu-toggle {
    display:none;
    border:0;
    background:none;
    color:var(--navy);
    font-size:27px
}

.hero {
    min-height:610px;
    position:relative;
    display:flex;
    align-items:center;
    overflow:hidden;
    background:var(--navy);
    color:white
}

.hero-image {
    position:absolute;
    inset:0 0 0 34%;
    background-image:url('./NAK_Start.jpg?auto=format&fit=crop&w=2000&q=0');
    background-size:cover;
    background-position:center 42%;
    filter:saturate(.80)
}

.hero-team {
    position:absolute;
    inset:0 0 0 34%;
    background-image:url('./img/team.jpg?auto=format&fit=crop&w=2000&q=85');
    background-size:cover;
    background-position:center 42%;
    filter:saturate(.80)
}

.hero-kurs {
    position:absolute;
    inset:0 0 0 34%;
    background-image:url('./img/kurs_start.jpg?auto=format&fit=crop&w=2000&q=85');
    background-size:cover;
    background-position:center 42%;
    filter:saturate(.80)
}


.hero-shade {
    position:absolute;
    inset:0;
    background:linear-gradient(90deg,#102d3b 0%,rgba(16,45,59,.98) 30%,rgba(16,45,59,.77) 53%,rgba(16,45,59,.1) 80%)
}

.hero-content {
    position:relative;
    z-index:1;
    padding-top:60px;
    padding-bottom:68px
}

.eyebrow {
    font-size:11px;
    line-height:1.4;
    letter-spacing:2px;
    font-weight:700;
    color:var(--blue);
    margin:0 0 22px
}

.eyebrow span {
    display:inline-block;
    width:24px;
    height:3px;
    background:var(--red);
    vertical-align:middle;
    margin-right:10px
}

.hero .eyebrow {
    color:#a6e7e8
}

.hero h1,h2 {
    font:700 clamp(38px,5vw,64px)/1.08 Manrope,sans-serif;
    letter-spacing:-2.5px;
    margin:0;
    color:var(--navy)
}

.hero h1 {
    font-size:clamp(48px,6.4vw,78px);
    color:white;
    max-width:850px
}

.hero h1 em,h2 em {
    font-style:normal;
    color:var(--red)
}
.eyebrow h3 em{
  font-style:normal;
    color:var(--cyan)
 }   
.hero-copy {
    font-size:18px;
    max-width:430px;
    color:#e1ecef;
    margin:24px 0 29px
}

.hero-actions {
    display:flex;
    align-items:center;
    gap:28px;
    flex-wrap:wrap
}

.text-link {
    
    font-weight:700;
    color:var(--navy);
    text-decoration: underline;
    
}

.text-link span {
    margin-left:10px;
    color:var(--cyan);
    font-size:20px
}

.hero-note {
    display:flex;
    align-items:center;
    gap:13px;
    margin-top:54px;
    padding-top:22px;
    border-top:1px solid rgba(255,255,255,.24);
    width:min(380px,100%)
}

.note-icon {
    display:grid;
    place-items:center;
    border:1px solid var(--paper);
    color:var(--red);
    width:42px;
    height:42px;
    font-size:24px;
    border-radius:50%
}

.hero-note strong,.hero-note small {
    display:block
}

.hero-note strong {
    font-size:13px
}

.hero-note small {
    font-size:11px;
    color:#b7cbd0;
    margin-top:3px
}

.hero-caption {
    position:absolute;
    right:28px;
    bottom:24px;
    color:white;
    font-size:9px;
    letter-spacing:2px;
    writing-mode:vertical-rl;
    opacity:.8
}

.section {
    padding:100px 0
}

.intro-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:80px;
    align-items:start
}

.intro h2,.section-heading h2,.dates-intro h2,.location-copy h2,.team-copy h2,.contact-grid h2 {
    font-size:clamp(36px,4.3vw,53px)
}

.intro-copy {
    padding-top:26px;
    max-width:510px
}

.lead {
    font:600 21px/1.45 Manrope,sans-serif;
    color:var(--navy);
    margin:0 0 16px
}

.intro-copy>p:not(.lead),.location-copy>p:not(.eyebrow),.team-copy>p:not(.eyebrow),.contact-grid>div>p:not(.eyebrow) {
    color:var(--muted);
    font-size:15px
}

.underlined-link {
    display:inline-flex;
    align-items:center;
    gap:18px;
    margin-top:17px;
    padding-bottom:6px;
    border-bottom:1px solid var(--cyan);
    font-size:13px;
    font-weight:700;
    color:var(--cyan)
}

.underlined-link span {
    font-size:19px;
    color:var(--blue)
}

.stats {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    margin-top:75px;
    padding-top:31px;
    border-top:1px solid var(--line)
}

.stat {
    padding:0 24px;
    border-right:1px solid var(--line)
}

.stat:first-child {
    padding-left:0
}

.stat:last-child {
    border:0
}

.stat strong {
    display:block;
    font:800 36px Manrope,sans-serif;
    color:var(--blue);
    letter-spacing:-1px
}

.stat span {
    display:block;
    max-width:160px;
    color:var(--muted);
    font-size:12px;
    margin-top:6px
}

.fineprint {
    font-size:10px;
    color:#7d8b90;
    margin-top:18px
}

.text {
    font-size:10px;
    color:#7d8b90;
    margin-top:18px
}

.course-section {
    background:var(--soft)
}

.section-heading {
    display:flex;
    align-items:end;
    justify-content:space-between;
    gap:50px;
    margin-bottom:42px
}

.section-heading>p {
    max-width:340px;
    color:var(--muted);
    font-size:14px;
    margin:0 0 5px
}

.feature-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px
}

.feature-card {
    position:relative;
    background:white;
    padding:33px 30px 31px;
    min-height:285px;
    border:1px solid var(--line);
    border-radius:var(--radius);
    transition:transform .25s,box-shadow .25s
}

.feature-card:hover {
    transform:translateY(-5px);
    box-shadow:var(--shadow)
}

.feature-card.featured {
    background:var(--navy);
    color:white;
    border-color:var(--navy)
}

.feature-number {
    position:absolute;
    right:25px;
    top:22px;
    font:700 12px Manrope,sans-serif;
    color:#a6b9bd
}

.feature-icon {
    width:48px;
    height:48px;
    border-radius:50%;
    display:grid;
    place-items:center;
    background:#e5f7f5;
    color:var(--blue);
    font-size:28px;
    margin-bottom:27px
}

.featured .feature-icon {
    background:rgba(19,184,200,.15);
    color:var(--cyan)
}

.feature-card h3 {
    font:700 20px Manrope,sans-serif;
    margin:0 0 12px;
    color:var(--navy)
}

.featured h3 {
    color:white
}

.feature-card p {
    font-size:13px;
    color:var(--muted);
    margin:0;
    max-width:300px
}

.featured p {
    color:#c6d5d9
}

.feature-card>a {
    position:absolute;
    right:28px;
    bottom:22px;
    color:var(--blue);
    font-size:20px
}

.featured>a {
    color:var(--cyan)
}

.dates-section {
    background:var(--navy);
    color:white
}

.dates-layout {
    display:grid;
    grid-template-columns:.72fr 1.28fr;
    gap:65px
}

.dates-intro .eyebrow {
    color:#9ee1e3
}

.dates-intro h2 {
    color:white
}

.dates-intro>p:not(.eyebrow) {
    font-size:14px;
    color:#bdcdd1;
    max-width:320px;
    margin:25px 0
}

.dark-link {
    display:inline-block;
    margin-top:12px
}

.date-list {
    display:flex;
    flex-direction:column;
    gap:12px
}

.date-card {
    display:grid;
    grid-template-columns:72px 1fr auto;
    gap:22px;
    align-items:center;
    background:white;
    color:var(--ink);
    padding:24px;
    border-radius:5px
}

.date-month {
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    border-right:1px solid var(--line);
    padding-right:18px;
    color:var(--blue)
}

.date-month span {
    font-size:10px;
    letter-spacing:2px;
    font-weight:700
}

.date-month strong {
    font:800 31px Manrope,sans-serif;
    line-height:1.3
}

.tag {
    font-size:9px;
    letter-spacing:1.5px;
    color:var(--blue);
    font-weight:700
}

.date-info h3 {
    font:700 17px Manrope,sans-serif;
    margin:4px 0
}

.date-info p {
    font-size:12px;
    color:var(--muted);
    margin:3px 0
}

.date-info small {
    display:block;
    font-size:10px;
    color:#87949a;
    margin-top:7px
}

.date-price {
    display:grid;
    grid-template-columns:auto 24px;
    align-items:center;
    column-gap:15px;
    text-align:right
}

.date-price strong {
    font:800 19px Manrope,sans-serif;
    color:var(--navy)
}

.date-price span {
    grid-column:1;
    font-size:10px;
    color:var(--muted)
}

.date-price a {
    grid-column:2;
    grid-row:1/3;
    display:grid;
    place-items:center;
    width:30px;
    height:30px;
    background:var(--mint);
    color:var(--blue);
    border-radius:50%;
    font-size:18px
}

.date-list>.fineprint {
    color:#9eb2b7;
    margin:3px 0
}

.location-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:80px;
    align-items:center
}

.location-photo {
    min-height:480px;
    position:relative;
    background:linear-gradient(0deg,rgba(16,45,59,.55),transparent 50%),url('./img/ort_start.jpg?auto=format&fit=crop&w=1200&q=85') center/cover;
    border-radius:5px
}

.location-photo span {
    position:absolute;
    bottom:24px;
    left:25px;
    color:white;
    font-size:10px;
    letter-spacing:2px
}

.location-copy h2 {
    margin-bottom:24px
}

.location-copy>p:not(.eyebrow) {
    max-width:460px
}

.address {
    display:flex;
    gap:15px;
    align-items:start;
    margin-top:26px;
    color:var(--muted);
    font-size:13px
}

.address strong {
    color:var(--navy);
    font-size:14px
}

.address-icon {
    font-size:24px;
    color:var(--blue)
}

.team-section {
    background:#eaf6f5
}

.team-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:90px;
    align-items:center
}

.team-copy>p:not(.eyebrow) {
    max-width:480px
}

.team-copy .button {
    margin-top:20px
}

.team-visual {
    min-height:340px;
    background:var(--navy);
    display:grid;
    place-items:center;
    padding:30px;
    position:relative;
    overflow:hidden;
    border-radius:5px
}

.team-visual:before,.team-visual:after {
    content:'';
    position:absolute;
    width:280px;
    height:280px;
    border:1px solid rgba(19,184,200,.25);
    border-radius:50%
}

.team-visual:after {
    width:390px;
    height:390px
}

.team-visual-inner {
    position:relative;
    z-index:1;
    text-align:center;
    color:white
}

.cross {
    display:block;
    font-size:52px;
    color:var(--red);
    line-height:1.2;
    margin-bottom:22px
}

.team-visual-inner p {
    font:500 20px/1.5 Manrope,sans-serif;
    letter-spacing:1px
}

.team-visual-inner strong {
    color:var(--red)
}

.team-visual-inner small {
    font-size:9px;
    letter-spacing:2px;
    color:#a7c3c8
}

.contact-section {
    background:white
}

.contact-grid {
    display:grid;
    grid-template-columns:1fr .85fr;
    gap:90px
}

.contact-grid h2 {
    margin-bottom:24px
}

.contact-grid>div>p:not(.eyebrow) {
    max-width:450px
}

.contact-details {
    display:flex;
    gap:45px;
    margin-top:35px
}

.contact-details p {
    margin:0
}

.contact-details span,.contact-details a {
    display:block
}

.contact-details span {
    font-size:11px;
    color:var(--muted);
    margin-bottom:4px
}

.contact-details a {
    font-weight:700;
    color:var(--blue)
}

.contact-form {
    display:flex;
    flex-direction:column;
    gap:8px;
    padding:30px;
    background:var(--soft);
    border-radius:5px
}

.contact-form label {
    font-size:12px;
    font-weight:700;
    color:var(--navy);
    margin-top:6px
}

.contact-form input,.contact-form textarea,.contact-form select {
    width:100%;
    padding:12px 13px;
    border:1px solid var(--line);
    background:white;
    border-radius:3px;
    color:var(--ink);
    outline-color:var(--cyan);
    font-size:13px
}

.contact-form textarea {
    resize:vertical
}

.contact-form .button {
    margin-top:10px;
    align-self:flex-start
}

.contact-form small {
    font-size:10px;
    color:var(--muted);
    line-height:1.5
}

.site-footer {
    background:#0b222e;
    color:white;
    padding:34px 0 0
}

.footer-top {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    padding-bottom:28px
}

.footer-brand .brand-name {
    color:white
}

.footer-top>p {
    font-size:13px;
    color:#9eb5bb
}

.back-top {
    font-size:12px;
    color:var(--cyan);
    font-weight:700
}

.footer-bottom {
    border-top:1px solid rgba(255,255,255,.15);
    display:flex;
    justify-content:space-between;
    gap:20px;
    padding:18px 0;
    color:#9eb5bb;
    font-size:10px
}

.footer-bottom div {
    display:flex;
    gap:24px
}

.footer-bottom a:hover {
    color:white
}

@media(max-width:900px) {
    .main-nav {
        gap:17px
    }

.main-nav .button {
        display:none;
    }

.hero-book-button {
        display:inline-flex;
        position:absolute;
        top:20px;
        right:24px;
        z-index:5
    }

.hero {
        min-height:570px
    }

.hero-image {
        left:20%
    }

.hero-shade {
        background:linear-gradient(90deg,#102d3b 0%,rgba(16,45,59,.92) 45%,rgba(16,45,59,.28) 100%)
    }

.section {
        padding:78px 0
    }

.intro-grid,.location-grid,.team-grid {
        gap:45px
    }

.dates-layout {
        gap:35px
    }

.date-card {
        grid-template-columns:55px 1fr auto;
        gap:14px;
        padding:18px
    }

.date-price {
        column-gap:6px
    }

.date-price strong {
        font-size:16px
    }

.team-grid {
        gap:40px
    }

}

@media(max-width:700px) {
    .container {
        width:min(100% - 36px,560px)
    }

.topbar-inner {
        justify-content:center
    }

.topbar-inner span:first-child {
        display:none
    }

.header-inner {
        height:90px
    }

.brand-mark {
        width:39px;
        height:39px
    }

.brand-name {
        font-size:23px
    }

.menu-toggle {
        display:block
    }

.main-nav {
        display:none;
        position:absolute;
        top:72px;
        left:0;
        right:0;
        background:white;
        padding:15px 24px 24px;
        box-shadow:0 15px 25px rgba(16,45,59,.12);
        align-items:stretch;
        gap:0;
        flex-direction:column
    }

.main-nav.is-open {
        display:flex
    }

.main-nav>a {
        padding:12px 0;
        border-bottom:1px solid var(--line)
    }

.main-nav .button {
        display:none
    }

.hero-book-button {
        top:14px;
        right:18px;
        margin:0;
        padding:11px 13px
    }

.hero {
        min-height:620px;
        align-items:flex-end
    }

.hero-image {
        inset:0;
        background-position:58% center
    }

.hero-shade {
        background:linear-gradient(0deg,rgba(16,45,59,.99) 0%,rgba(16,45,59,.88) 46%,rgba(16,45,59,.18) 100%)
    }

.hero-content {
        padding-top:100px;
        padding-bottom:40px
    }

.hero h1 {
        font-size:51px;
        letter-spacing:-2px
    }

.hero-copy {
        font-size:16px
    }

.hero-note {
        margin-top:37px
    }

.hero-caption {
        display:none
    }

.section {
        padding:65px 0
    }

.intro-grid,.location-grid,.team-grid,.contact-grid,.dates-layout {
        grid-template-columns:1fr;
        gap:28px
    }

.intro-copy {
        padding-top:0
    }

.stats {
        grid-template-columns:1fr 1fr;
        gap:24px;
        margin-top:48px
    }

.stat {
        padding:0 14px;
        border-right:0
    }

.stat:nth-child(odd) {
        padding-left:0;
        border-right:1px solid var(--line)
    }

.stat strong {
        font-size:31px
    }

.section-heading {
        display:block;
        margin-bottom:30px
    }

.section-heading>p {
        margin-top:18px
    }

.feature-grid {
        grid-template-columns:1fr
    }

.feature-card {
        min-height:245px
    }

.dates-intro>p:not(.eyebrow) {
        max-width:500px
    }

.date-card {
        grid-template-columns:52px 1fr;
        gap:14px;
        padding:17px
       
    }

.date-price {
        grid-column:2;
        display:flex;
        justify-content:space-between;
        align-items:center;
        text-align:left;
        border-top:1px solid var(--line);
        padding-top:12px;
        margin-top:3px
    }

.date-price span {
        display:none
    }

.date-price a {
        margin-left:auto
    }

.date-info h3 {
        font-size:15px
    }

.date-info p {
        font-size:11px
    }

.location-photo {
        min-height:320px;
        order:2
    }

.location-copy {
        order:1
    }

.team-visual {
        min-height:280px
    }

.contact-details {
        gap:25px;
        flex-wrap:wrap
    }

.contact-form {
        padding:22px
    }

.footer-top {
        align-items:flex-start;
        flex-wrap:wrap
    }

.footer-top>p {
        width:100%;
        order:3;
        margin:0
    }

.footer-bottom {
        flex-direction:column;
        gap:10px
    }

.footer-bottom div {
        gap:20px
    }

}

@media(prefers-reduced-motion:reduce) {
    html {
        scroll-behavior:auto
    }

*,*:before,*:after {
        transition:none!important
    }

}

/* Bildergalerie */.gallery-section {
    background:var(--paper)
}

.gallery-heading {
    margin-bottom:34px
}

.gallery-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px
}

.gallery-item {
    position:relative;
    display:block;
    overflow:hidden;
    aspect-ratio:4/3;
    padding:0;
    border:0;
    border-radius:5px;
    background:var(--soft);
    cursor:zoom-in;
    text-align:left
}

.gallery-item img {
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .35s ease
}

.gallery-item:hover img {
    transform:scale(1.045)
}

.gallery-zoom {
    position:absolute;
    right:13px;
    bottom:13px;
    display:grid;
    place-items:center;
    width:37px;
    height:37px;
    border-radius:50%;
    background:var(--cyan);
    color:var(--navy);
    font-size:21px;
    opacity:0;
    transform:translateY(5px);
    transition:opacity .2s,transform .2s
}

.gallery-item:hover .gallery-zoom,.gallery-item:focus-visible .gallery-zoom,.gallery-slide-image:hover .gallery-zoom {
    opacity:1;
    transform:translateY(0)
}

.gallery-slider {
    display:none
}

.lightbox[hidden] {
    display:none
}

.lightbox {
    position:fixed;
    inset:0;
    z-index:1000;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:22px;
    padding:70px 28px 54px;
    background:rgba(5,17,23,.94);
    color:#fff
}

.lightbox figure {
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:12px;
    max-width:min(1100px,78vw);
    max-height:100%;
    margin:0
}

.lightbox-image {
    display:block;
    max-width:100%;
    max-height:calc(100vh - 150px);
    object-fit:contain;
    border-radius:3px
}

.lightbox-caption {
    font-size:13px;
    color:#e0ebee;
    text-align:center
}

.lightbox-close,.lightbox-prev,.lightbox-next {
    display:grid;
    place-items:center;
    flex-shrink:0;
    border:1px solid rgba(255,255,255,.35);
    background:rgba(255,255,255,.08);
    color:white;
    cursor:pointer;
    border-radius:50%
}

.lightbox-close {
    position:absolute;
    right:24px;
    top:20px;
    width:46px;
    height:46px;
    font-size:32px;
    line-height:1
}

.lightbox-prev,.lightbox-next {
    width:48px;
    height:48px;
    font-size:34px
}

.lightbox-count {
    position:absolute;
    bottom:18px;
    left:0;
    right:0;
    text-align:center;
    font-size:12px;
    color:#c8d6da
}

body.lightbox-open {
    overflow:hidden
}

@media(max-width:700px) {
     .gallery-grid {
        display:none
    }

 .gallery-section .section-heading {
        margin-bottom:24px
    }

 .gallery-slider {
        display:block
    }

 .gallery-slide-image {
        position:relative;
        display:block;
        width:100%;
        padding:0;
        border:0;
        border-radius:5px;
        overflow:hidden;
        aspect-ratio:4/3;
        background:var(--soft);
        cursor:zoom-in
    }

 .gallery-slide-image img {
        display:block;
        width:100%;
        height:100%;
        object-fit:cover
    }

 .gallery-slide-image .gallery-zoom {
        opacity:1;
        transform:none
    }

 .gallery-controls {
        display:flex;
        align-items:center;
        justify-content:space-between;
        margin-top:15px
    }

 .gallery-controls button {
        width:42px;
        height:42px;
        border:1px solid var(--line);
        border-radius:50%;
        background:white;
        color:var(--navy);
        font-size:22px;
        cursor:pointer
    }

 .gallery-counter {
        font-size:12px;
        font-weight:700;
        color:var(--muted)
    }

 .gallery-dots {
        display:flex;
        justify-content:center;
        gap:9px;
        margin-top:17px
    }

 .gallery-dot {
        width:8px;
        height:8px;
        padding:0;
        border:0;
        border-radius:50%;
        background:#b9c8ca;
        cursor:pointer
    }

 .gallery-dot.is-active {
        background:var(--blue);
        outline:3px solid rgba(19,184,200,.22);
        outline-offset:2px
    }

 .lightbox {
        gap:8px;
        padding:65px 10px 48px
    }

 .lightbox figure {
        max-width:calc(100vw - 84px)
    }

 .lightbox-image {
        max-height:calc(100vh - 160px)
    }

 .lightbox-prev,.lightbox-next {
        width:34px;
        height:34px;
        font-size:25px
    }

 .lightbox-close {
        right:13px;
        top:12px;
        width:40px;
        height:40px
    }

.team-container
{
    box-sizing: border-box;
    background-color: var(--soft);
    margin: 10px 0 0 0;
    padding: 10px 10px 10px 10%;
    width: 100%;
    
}

}

@media(prefers-reduced-motion:reduce) {
    .gallery-item img,.gallery-zoom {
        transition:none
    }

}
.kurs-titel {
  color: #005987;
}

.a-mit-punkten {
  position: relative;
  display: inline-block;
}

.a-mit-punkten::before {
  content: "\00A8";
  position: absolute;
  left: 50%;
  top: 0em;
  transform: translateX(-50%);
  color: var(--cyan);
  font-size: 1em;
  line-height: 1;
}

.gender-markierung {
  color: var(--cyan);
}

.team-container
{
    box-sizing: border-box;
    background-color: var(--soft);
    margin: 10px 0 0 0;
    padding: 10px 10px 0 10%;
    
}
.radio
{
    width:24px;
    height:24px;
    top:6px
}

@media(min-width:900px) 
{
    .buchung
    {
        width: 70%;
    }
}