:root{--lime: #a8cf1a;--yellow: #f2dc00;--bg: rgb(0, 71, 0);--surface: rgb(0, 71, 0);--surface-alt: yellow;--text: #222;--muted: #666;--border: #d9d9d9;--font-display: "Arial", sans-serif;--font-body: "Arial", sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--font-body);line-height:1.6}.hero{position:relative;overflow:hidden;min-height:70vh;display:flex;align-items:center;padding:5rem 2rem;color:#fff;background:#111}.hero-image{position:absolute;inset:-10%;background:url(https://pub-c81755f320b94f7ba5301c58104f311c.r2.dev/bilder_webp/Teams/Jugendcamp_Gruppenfoto.webp) center center / cover no-repeat;animation:heroMoveDesktop 18s ease-in-out infinite alternate;transform:scale(1.08);will-change:transform}.hero-overlay{position:absolute;inset:0;background:linear-gradient(135deg,#000000b8,#00000073);z-index:1}.hero-content{position:relative;z-index:2;max-width:1100px;margin:0 auto}.hero-content h1{font-size:clamp(3rem,7vw,5.5rem);font-weight:800;line-height:1;margin-bottom:1rem}.hero-content p{max-width:650px;margin-bottom:2rem;color:#ffffffeb}@keyframes heroMoveDesktop{0%{transform:scale(1.08) translate3d(-3%,-2%,0)}to{transform:scale(1.08) translate3d(3%,2%,0)}}@media(max-width:768px){.hero{min-height:60vh;padding:4rem 1.25rem}.hero-image{animation:heroMoveMobile 14s ease-in-out infinite alternate}.hero-content h1{font-size:clamp(2.5rem,12vw,4rem)}@keyframes heroMoveMobile{0%{transform:scale(1.12) translate(-5%)}to{transform:scale(1.12) translate(5%)}}}.team-nav{display:flex;flex-wrap:wrap;gap:.75rem}.team-pill{background:#fff;color:#111;text-decoration:none;padding:.7rem 1rem;border-radius:6px;font-size:.9rem;font-weight:700;border:2px solid transparent;transition:.2s}.team-pill:hover{border-color:var(--lime);color:var(--lime)}.hero-deco{display:none}.team-section{padding:4rem 2rem}.team-section.alt{background:var(--surface-alt)}.team-inner{max-width:1200px;margin:0 auto}.team-header{display:flex;align-items:center;gap:1.25rem;margin-bottom:2rem}.team-number-badge{font-size:3rem;font-weight:800;color:var(--lime);opacity:.3}.team-header h2{font-size:clamp(2rem,4vw,3rem);font-weight:800;color:#111}.liga-tag{display:inline-block;margin-top:.5rem;background:var(--lime);color:#111;padding:.35rem .75rem;border-radius:4px;font-size:.75rem;font-weight:700;text-transform:uppercase}.team-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:2rem;align-items:start}@media(max-width:1000px){.team-grid{grid-template-columns:1fr}}.photo-frame{background:#fff;border-radius:10px;overflow:hidden;border:1px solid var(--border);box-shadow:0 4px 14px #0000000f}.photo-frame img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.photo-accent{height:6px}.roster-block,.staff-block{background:#fff;border-radius:10px;padding:1.5rem;border:1px solid var(--border);box-shadow:0 4px 14px #0000000d}.block-title{display:flex;align-items:center;gap:.75rem;margin-bottom:1.25rem;font-size:1rem;font-weight:800;text-transform:uppercase;color:#111}.title-line{width:24px;height:4px;border-radius:2px}.player-list{display:flex;flex-direction:column;gap:.5rem}.player-row{display:grid;grid-template-columns:3rem 1fr auto;gap:.75rem;align-items:center;padding:.7rem .8rem;border-radius:6px;background:#fafafa;border:1px solid #ececec}.player-num{font-weight:800;font-size:.95rem}.player-name{font-weight:600;color:#111}.player-pos{font-size:.75rem;color:var(--muted);text-transform:uppercase}.staff-block{display:flex;flex-direction:column;gap:1rem}.contact-card{display:flex;gap:1rem;padding:1rem;border-radius:8px;background:#fafafa;border:1px solid #ececec}.contact-icon{width:42px;height:42px;border-radius:8px;border:2px solid var(--lime);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--lime);background:#a8cf1a14}.contact-info{display:flex;flex-direction:column;gap:.3rem;min-width:0}.contact-info strong{color:#111;font-size:.95rem}.contact-info em{font-style:normal;font-size:.75rem;text-transform:uppercase;color:var(--muted)}.contact-info a{display:flex;align-items:center;gap:.4rem;color:#444;text-decoration:none;font-size:.85rem}.contact-info a:hover{color:var(--lime)}.contact-info svg{flex-shrink:0}@media(max-width:768px){body,.mannschaften-page{overflow-x:hidden}.hero{min-height:58vh;padding:calc(70px + 2rem) 1rem 2.5rem;align-items:flex-end}.hero-content{width:100%}.hero-eyebrow{font-size:.68rem;padding:.35rem .7rem;margin-bottom:.8rem}.hero-content h1{font-size:clamp(2.4rem,13vw,4rem);line-height:.95;margin-bottom:.75rem}.hero-content p{font-size:.95rem;line-height:1.45;margin-bottom:1.4rem;max-width:100%}.team-nav{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;padding-bottom:.35rem;scrollbar-width:none;-webkit-overflow-scrolling:touch}.team-nav::-webkit-scrollbar{display:none}.team-pill{flex:0 0 auto;white-space:nowrap;padding:.7rem .95rem;font-size:.78rem;border-radius:999px}.team-section{padding:2.5rem 1rem}.team-inner{width:100%}.team-header{gap:.8rem;margin-bottom:1.5rem;align-items:flex-start}.team-number-badge{font-size:2rem;line-height:1}.team-header h2{font-size:1.8rem;line-height:1;margin-bottom:.4rem}.liga-tag{font-size:.62rem;padding:.28rem .55rem}.team-grid{display:flex;flex-direction:column;gap:1rem}.photo-frame{border-radius:12px}.photo-frame img{aspect-ratio:16 / 10}.roster-block,.staff-block{padding:1rem;border-radius:12px}.block-title{font-size:.9rem;margin-bottom:1rem}.player-list{gap:.45rem}.player-row{grid-template-columns:2.3rem 1fr;gap:.5rem;padding:.7rem;align-items:start}.player-pos{grid-column:2;font-size:.65rem;margin-top:-.1rem}.player-name{font-size:.9rem;line-height:1.2}.player-num{font-size:.85rem;margin-top:.1rem}.staff-block{gap:.8rem}.contact-card{gap:.8rem;padding:.9rem;align-items:flex-start}.contact-icon{width:38px;height:38px;min-width:38px}.contact-info{width:100%}.contact-info strong{font-size:.9rem;line-height:1.2}.contact-info em{font-size:.65rem;margin-bottom:.2rem}.contact-info a{font-size:.75rem;line-height:1.3;word-break:break-word}.contact-info svg{width:12px;height:12px}}@media(max-width:420px){.hero{min-height:52vh}.hero-content h1{font-size:2.2rem}.team-header h2{font-size:1.5rem}.player-row{padding:.6rem}.contact-card{padding:.8rem}.team-pill{font-size:.72rem;padding:.62rem .85rem}}
