.logo{object-fit:contain}
body{overflow-x:hidden;font-size:16px;font-family:Montserrat,sans-serif;background-color:#F5F5F5;color:#1A1A1A}
p{margin:0}
.sticky{position:fixed;top:0;left:0;width:100%;z-index:100000}
label{color:#1A1A1A}
.card-wrapper .card-sfa,.primary-button,#hero,#footer .footer-item-wrapper{display:flex;flex-direction:column;justify-content:center;align-items:center}
#novesiaCup .novesia-info .novesia-social,#footer .sponsoren-wrapper{display:flex;flex-direction:row;align-items:center;gap:10px}
#novesiaCup .novesia-info{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;align-items:center}
@media (max-width:768px){#novesiaCup .novesia-info{grid-template-columns:auto}}
.card-wrapper,#sport-team .team-wrapper{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;align-items:center}
@media (max-width:991px){.card-wrapper,#sport-team .team-wrapper{grid-template-columns:auto}}
.button-wrapper{width:50%}
@media (max-width:768px){.button-wrapper{width:100%}}
.media-border{width:100%;height:100%;border-radius:10px;position:relative}
.media-border::before{content:"";position:absolute;bottom:-20px;left:-20px;width:100%;height:100%;border:3px solid #C8102E;border-radius:10px;z-index:-1}
@media (max-width:576px){.media-border::before{bottom:-10px;left:-10px}}
.media-border .media-wrapper{overflow:hidden;width:100%;height:100%;border-radius:10px}
.media-border .media-wrapper .media-img{width:100%;height:100%;transform:scale(1.01);border-radius:10px;object-fit:cover;transition:all 0.3s ease-in-out}
.media-border .media-wrapper:hover .media-img{transform:scale(1.05)}
.card-wrapper{padding-left:12px;padding-right:12px}
.card-wrapper .card-sfa{position:relative;width:100%;height:600px;border-radius:10px;padding:30px;color:white;align-items:unset !important;justify-content:flex-end !important;gap:10px;overflow:hidden;position:relative}
@media (max-width:768px){.card-wrapper .card-sfa{height:500px}}
.card-wrapper .card-sfa .card-img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;border-radius:10px;z-index:1;transition:all 0.3s ease-in-out}
.card-wrapper .card-sfa .line-seperator,.card-wrapper .card-sfa h3,.card-wrapper .card-sfa p,.card-wrapper .card-sfa a{position:relative;z-index:4}
.card-wrapper .card-sfa:hover .card-img{transform:scale(1.1)}
.card-wrapper .card-sfa .line-seperator{width:40px;height:3px;background-color:#FFD700}
.card-wrapper .card-sfa::before{content:"";position:absolute;width:100%;height:100%;top:0;left:0;background:linear-gradient(180deg,rgba(0,0,0,0.5) 0%,rgba(0,0,0,0.5) 100%);z-index:2;border-radius:10px}
.card-wrapper .card-sfa::after{content:"";position:absolute;width:95%;height:95%;top:50%;left:50%;transform:translate(-50%,-50%);border:2px solid white;border-radius:10px;z-index:2;pointer-events:none}
.primary-button{background-color:#C8102E;color:white;padding:10px 16px;border:2px solid #C8102E;width:100%;height:auto;cursor:pointer;border-radius:10px;text-transform:uppercase;text-decoration:none;letter-spacing:0.02em;font-size:16px;transition:all 0.3s ease-in-out}
.primary-button:hover{background-color:white;color:#C8102E}
h1,h2,h3,h4,h5,h6{margin:0}
.h1{font-size:clamp(3.125rem,2.25rem + 4.375vw,7.5rem);font-weight:700;color:white;letter-spacing:-0.02em;line-height:1;hyphens:auto}
.h1 span{color:transparent;-webkit-text-stroke:3px white}
@media (max-width:576px){.h1 span{-webkit-text-stroke:2px white}}
.h2{font-size:clamp(1.75rem,1.65rem + 0.5vw,2.25rem);font-weight:600;letter-spacing:-0.01em}
.h3{font-size:clamp(1.375rem,1.3rem + 0.375vw,1.75rem);font-weight:600;letter-spacing:-0.01em}
.h4{font-size:clamp(1.125rem,1.075rem + 0.25vw,1.375rem);font-weight:500;letter-spacing:0}
.h5{font-size:clamp(1rem,0.975rem + 0.125vw,1.125rem);letter-spacing:0;font-weight:500}
.h6{font-size:16px;letter-spacing:0.02em;font-weight:600}
.header{width:100%;text-align:center;position:relative}
@media (max-width:992px){.header{text-align:start}}
.header .bg-text{position:absolute;width:100%;top:50%;left:50%;transform:translate(-50%,-50%);color:#ececec;z-index:-1}
section{padding:70px 0}
@media (max-width:992px){section{padding:50px 0}}
.navbar{height:auto;padding:10px 0;background-color:#1a1a1a}
@media (max-width:992px){.navbar{padding:20px 0}}
.navbar .navbar-toggler:focus{box-shadow:none;outline:0}
.navbar .navbar-nav{gap:30px}
.navbar .navbar-nav .nav-link{color:white;padding:0;text-decoration:none}
.navbar .navbar-nav .nav-item.dropdown{position:relative}
.navbar .navbar-nav .nav-item.dropdown .dropdown-menu{background:#1a1a1a;padding:0;border:1px solid rgba(255,255,255,0.1)}
.navbar .navbar-nav .nav-item.dropdown .dropdown-menu .dropdown-item{color:white}
.navbar .navbar-nav .nav-item.dropdown .dropdown-menu .dropdown-item:hover{background-color:rgba(255,255,255,0.1);color:white}
.navbar .navbar-nav .nav-item.dropdown .dropdown-container{display:flex;align-items:center;justify-content:center}
.navbar .navbar-nav .nav-item.dropdown .dropdown-btn{background:none;border:none;color:white;font-size:0.8rem;padding:4px 8px;cursor:pointer;transition:transform 0.3s;display:flex;align-items:center;font-family:"bootstrap-icons"}
.navbar .navbar-nav .nav-item.dropdown .dropdown-btn:focus{outline:none;box-shadow:none}
.navbar .navbar-nav .nav-item.dropdown .dropdown-btn.active{transform:rotate(180deg)}
.navbar .navbar-nav .nav-item.dropdown .dropdown-menu.show{display:block}
@media (min-width:992px){.navbar .navbar-nav .nav-item.dropdown:hover .dropdown-menu{display:block}.navbar .navbar-nav .nav-item.dropdown:hover .dropdown-btn{transform:rotate(180deg)}}
#hero{height:calc(100vh - 125px);background:linear-gradient(180deg,rgba(0,0,0,0.5) 0%,rgba(0,0,0,0.5) 100%),url("/storage/app/media/hero.webp");background-position:center;background-repeat:no-repeat;background-size:cover;color:white}
@media (max-width:991px){#hero{height:auto}}
#hero .hero-contact-wrapper{width:100%;height:100%;border-radius:10px;background-color:var(--bs-primary);box-shadow:0 0 10px darkgreen}
@media (max-width:992px){#hero .hero-contact-wrapper{width:100%}}
#hero .hero-contact-wrapper a{color:white;transition:all 0.3s ease-in-out}
#hero .hero-contact-wrapper a:hover{color:#FFD700}
#hero .hero-contact-wrapper .form-floating .form-control{height:unset}
#novesiaCup .novesia-info{word-break:break-all}
#novesiaCup .novesia-info .novesia-social p{font-weight:600}
#novesiaCup .novesia-info .novesia-social i{font-size:30px}
#trainingszeit{}
#trainingszeit .training-table{width:100%;border-collapse:collapse;font-size:1rem}
#trainingszeit .training-table th,#trainingszeit .training-table td{padding:1rem;text-align:left;border-bottom:1px solid #eee;white-space:nowrap}
#trainingszeit .training-table td{font-size:20px}
#trainingszeit .training-table tr{height:100px}
#trainingszeit .training-table .group{background-color:#111;color:white;border-bottom:5px solid #a41534}
#trainingszeit .training-table .group th{font-weight:600;font-size:28px}
#trainingszeit .training-table .dot{display:inline-block;width:10px;height:10px;background-color:#d40026;border-radius:50%;margin-right:0.5rem}
#trainingszeit .training-table .time{background-color:#C8102E1A;display:inline-block;padding:0.3rem 0.9rem;border:1px solid #C8102E;border-radius:999px;color:#C8102E;font-weight:600;font-size:20px;width:100%;text-align:center}
#trainingszeit .table-responsive{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin-bottom:2rem;background-color:white;scrollbar-width:thin;scrollbar-color:#C8102E #f0f0f0}
#trainingszeit .table-responsive::-webkit-scrollbar{height:8px}
#trainingszeit .table-responsive::-webkit-scrollbar-thumb{background-color:#C8102E;border-radius:4px}
@media (max-width:992px){#trainingszeit .training-table{font-size:0.9rem;min-width:700px}#trainingszeit .training-table tr{height:auto}#trainingszeit .training-table th,#trainingszeit .training-table td{padding:0.8rem}#trainingszeit .training-table .time{font-size:16px;padding:0.25rem 0.7rem}}
#kontakt{background:url("/storage/app/media/kontakt-background.webp");background-size:cover;background-position:bottom}
#kontakt a{color:white;transition:all 0.3s ease-in-out}
#kontakt a:hover{color:#FFD700}
#kontakt .form-floating .form-control{height:unset}
#footer{background-color:#1A1A1A;color:white;position:relative}
#footer .footer-item-wrapper{align-items:unset !important;justify-content:unset !important;gap:10px;margin-top:20px}
#footer .footer-item-wrapper a{color:#FFD700;transition:all 0.3s ease-in-out}
#footer .footer-item-wrapper a:hover{opacity:0.5}
#footer .footer-line{border-top:1px solid #1a1a1a;margin:0;height:0}
#footer .sponsoren-wrapper{width:100%;height:100%;gap:20px;justify-content:center}
#footer .sponsoren-wrapper .sponsor-logo{object-fit:cover;height:100%;width:100%}
#footer .sponsoren-wrapper a{height:auto;width:250px}
@media (max-width:768px){#footer .sponsoren-wrapper a{width:50%}}
#vorstand .header{position:relative;text-align:center}
#vorstand .header .bg-text{position:absolute;width:100%;top:50%;left:50%;transform:translate(-50%,-50%);color:#ececec;z-index:-1;font-weight:700}
#vorstand .header .h2{position:relative;z-index:2}
#vorstand .board-section{display:flex;flex-direction:column;gap:20px}
#vorstand .table-responsive{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#C8102E #f0f0f0}
#vorstand .table-responsive::-webkit-scrollbar{height:8px}
#vorstand .table-responsive::-webkit-scrollbar-thumb{background-color:#C8102E;border-radius:4px}
#vorstand .board-table{width:100%;min-width:600px;border-collapse:collapse;font-size:1rem;background-color:white}
#vorstand .board-table th,#vorstand .board-table td{padding:1rem;border-bottom:1px solid #ddd;text-align:left;vertical-align:top;white-space:nowrap}
#vorstand .board-table th{background-color:#f8f8f8;font-weight:600;color:#C8102E}
#vorstand .board-table a{color:#C8102E;text-decoration:none;transition:all 0.3s ease-in-out}
#vorstand .board-table a:hover{color:#990c23}
#vorstand .board-table tr:nth-child(even){background-color:#fafafa}
@media (max-width:767.98px){#vorstand .board-table{font-size:0.9rem}#vorstand .board-table th,#vorstand .board-table td{padding:0.7rem}}
#sport-team .team-wrapper .team-card{width:100%;height:350px;border-radius:10px;overflow:hidden}
#sport-team .team-wrapper .team-card .team-img{width:100%;height:350px;object-fit:cover;border-radius:10px;transition:all 0.3s ease-in-out}
#sport-team .team-wrapper .team-card:hover .team-img{transform:scale(1.1)}
#sport-gallery .gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
@media (max-width:991px){#sport-gallery .gallery-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:768px){#sport-gallery .gallery-grid{grid-template-columns:auto}}
#sport-gallery .gallery-grid img{width:100%;height:350px;object-fit:cover;border-radius:10px;cursor:pointer;transition:all 0.3s ease}
#sport-gallery .gallery-grid img:hover{transform:translateY(-5px);box-shadow:0 8px 20px rgba(0,0,0,0.2)}
#sponsor .sponsor-wrapper{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media (max-width:992px){#sponsor .sponsor-wrapper{grid-template-columns:repeat(2,1fr)}}
@media (max-width:768px){#sponsor .sponsor-wrapper{grid-template-columns:auto}}
#sponsor .sponsor-wrapper .sponsor-card{display:flex;flex-direction:column;gap:20px;justify-content:center;align-self:flex-start;width:100%;height:550px;background-color:white;box-shadow:0 0 10px rgba(0,0,0,0.2);border-radius:10px;border:none;padding:20px 25px;transition:all 0.3s ease-in-out}
@media (max-width:768px){#sponsor .sponsor-wrapper .sponsor-card{height:100%}}
#sponsor .sponsor-wrapper .sponsor-card:hover{transform:scale(1.02)}
#sponsor .sponsor-wrapper .sponsor-card .sponsor-head{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;border-radius:10px}
@media (max-width:992px){#sponsor .sponsor-wrapper .sponsor-card .sponsor-head{justify-content:flex-start;align-items:flex-start}}
#sponsor .sponsor-wrapper .sponsor-card .sponsor-head .sponsor-img{width:75%;height:100%;border-radius:10px;object-fit:contain}
#sponsor .sponsor-wrapper .sponsor-card .sponsor-body{width:100%;display:flex;flex-direction:column;gap:10px}
#sponsor .sponsor-wrapper .sponsor-card .sponsor-body .sponsor-body-head{display:flex;flex-direction:row;justify-content:space-between;align-items:center;width:100%;border-bottom:1px solid rgba(0,0,0,0.2);padding-bottom:10px}
#sponsor .sponsor-wrapper .sponsor-card .sponsor-body .sponsor-body-head p{margin:0}
@media (max-width:992px){#sponsor .sponsor-wrapper .sponsor-card .sponsor-body .sponsor-body-head{align-items:flex-start;flex-direction:column;gap:10px}}
#sponsor .sponsor-wrapper .sponsor-card .sponsor-body .sponsor-body-head .sponsor-sr{padding:10px;display:flex;justify-content:center;align-items:center;color:white;background-color:var(--bs-primary);border-radius:10px;font-weight:700;width:100px}
#sponsor .sponsor-wrapper .sponsor-card .sponsor-body .sponsor-sm{width:100%;height:100%;display:flex;flex-direction:column;gap:10px}
#sponsor .sponsor-wrapper .sponsor-card .sponsor-body .sponsor-sm .sponsor-icon-wrapper{display:flex;flex-direction:row;gap:10px;width:100%;align-items:center}
#sponsor .sponsor-wrapper .sponsor-card .sponsor-body .sponsor-sm .sponsor-icon-wrapper a{color:#C8102E;text-decoration:none;transition:all 0.3s ease-in-out}
#sponsor .sponsor-wrapper .sponsor-card .sponsor-body .sponsor-sm .sponsor-icon-wrapper a:hover{opacity:0.5}
#sponsor .sponsor-wrapper .sponsor-card .sponsor-body .sponsor-sm .sponsor-icon-wrapper .sponsor-icons{font-size:20px;font-family:"bootstrap-icons"}
#sponsor .sponsor-wrapper .sponsor-card .sponsor-body .sponsor-name{display:flex;flex-direction:row;gap:10px;width:100%;font-weight:600;align-items:center}
#sponsor .sponsor-wrapper .sponsor-card .sponsor-body .sponsor-name .sponsor-agency{font-family:"bootstrap-icons";font-size:20px}
#sponsor .sponsor-wrapper .sponsor-card .sponsor-body .sponsor-btn{padding-top:10px;border-top:1px solid rgba(0,0,0,0.2);text-decoration:none}