@font-face{font-family:"Ethnocentric";src:url("./Ethnocentric-Regular.otf") format("opentype");font-display:swap}
:root{--bg:#020812;--bg2:#041526;--panel:#07182a;--panel2:#0a2138;--text:#f5f9ff;--muted:#aebfd0;--cyan:#54ddff;--blue:#1b8fff;--blue2:#0d50ff;--line:rgba(74,190,255,.25);--line2:rgba(255,255,255,.09);--wrap:min(1480px,calc(100% - 48px));--display:"Ethnocentric",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0;min-width:320px;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;z-index:-3;pointer-events:none;background:radial-gradient(circle at 16% 9%,rgba(24,113,255,.22),transparent 29%),radial-gradient(circle at 88% 22%,rgba(22,162,255,.11),transparent 26%),linear-gradient(180deg,#020812 0%,#041628 49%,#020812 100%)}body:after{content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;opacity:.13;background-image:linear-gradient(30deg,rgba(53,156,255,.1) 12%,transparent 12.5%,transparent 87%,rgba(53,156,255,.1) 87.5%),linear-gradient(150deg,rgba(53,156,255,.1) 12%,transparent 12.5%,transparent 87%,rgba(53,156,255,.1) 87.5%);background-size:68px 118px}a{color:inherit;text-decoration:none}.wrap{width:var(--wrap);margin:0 auto}.section{padding:94px 0}.eyebrow{margin:0 0 15px;color:var(--cyan);font-size:12px;font-weight:900;letter-spacing:.24em;text-transform:uppercase}.display{font-family:var(--display);font-weight:400;letter-spacing:.035em;text-transform:uppercase}.section-title{margin:0;font-family:var(--display);font-size:clamp(31px,4.3vw,62px);line-height:1.07;letter-spacing:.035em;text-transform:uppercase}.section-title .accent,.hero-title .accent{
  color:transparent;
  background:linear-gradient(180deg,#76cfff 0%,#3aa9ff 32%,#1a82ff 66%,#0f62ff 100%);
  -webkit-background-clip:text;background-clip:text;
  text-shadow:0 0 3px rgba(61,169,255,.26),0 0 10px rgba(24,113,255,.20);
}.section-copy{margin:20px 0 0;max-width:760px;color:var(--muted);font-size:17px;line-height:1.75}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:0 21px;border-radius:12px;border:1px solid transparent;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;transition:.2s ease}.btn.primary{background:linear-gradient(135deg,#27adff,#1557ff);box-shadow:0 16px 34px rgba(13,86,255,.22)}.btn.primary:hover{transform:translateY(-2px);filter:brightness(1.07)}.btn.ghost{border-color:rgba(78,196,255,.35);background:rgba(14,58,93,.12);color:#d9f6ff}.btn.ghost:hover{border-color:rgba(90,220,255,.65);background:rgba(22,107,168,.16)}
.site-header{position:sticky;top:0;z-index:100;border-bottom:1px solid rgba(83,190,255,.14);background:rgba(2,9,20,.87);backdrop-filter:blur(18px)}.head{min-height:88px;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:13px}.brand img{width:64px;height:64px;object-fit:contain;filter:drop-shadow(0 10px 22px rgba(21,116,255,.35))}.brand span{font-family:var(--display);font-size:21px;letter-spacing:.06em;white-space:nowrap}.nav{justify-self:center;display:flex;align-items:center;gap:24px}.nav a{position:relative;padding:34px 0 30px;color:#c5d5e5;font-size:14px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.nav a:after{content:"";position:absolute;left:0;right:100%;bottom:20px;height:2px;background:var(--cyan);box-shadow:0 0 10px var(--cyan);transition:.2s}.nav a:hover{color:#fff}.nav a:hover:after{right:0}.menu-btn{display:none;width:44px;height:44px;border-radius:11px;border:1px solid var(--line);background:rgba(15,70,110,.16);color:white;font-size:20px}
.hero{padding:62px 0 72px;min-height:680px;display:flex;align-items:center}.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(520px,.9fr);gap:62px;align-items:center}.hero-kicker{display:inline-flex;align-items:center;gap:12px;color:#78e4ff;font-size:11px;font-weight:900;letter-spacing:.22em;text-transform:uppercase}.hero-kicker:before{content:"";width:9px;height:9px;border-radius:50%;background:#42dbff;box-shadow:0 0 18px rgba(66,219,255,.85)}.hero-title{margin:22px 0 0;font-family:var(--display);font-size:clamp(31px,4.3vw,62px);line-height:1.07;letter-spacing:.035em;text-transform:uppercase}.hero-copy{margin:28px 0 0;max-width:710px;color:#c4d2df;font-size:18px;line-height:1.75}.hero-copy strong{color:#fff}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.quick-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin-top:38px}.quick-point{padding:14px;border:1px solid var(--line2);border-radius:14px;background:rgba(255,255,255,.025)}.quick-point small{display:block;color:#78dfff;font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.quick-point b{display:block;margin-top:6px;font-size:13px}.hero-visual{position:relative;min-height:520px;overflow:visible}.hero-visual:before{content:"";position:absolute;inset:8% -6% 2% 2%;background:radial-gradient(circle at 54% 48%,rgba(35,157,255,.20),rgba(11,79,151,.08) 30%,transparent 68%);filter:blur(24px);pointer-events:none}.hero-card{position:relative;height:100%;min-height:520px;background:transparent;border:0;border-radius:0;box-shadow:none;overflow:visible}.hero-card:before{content:"";position:absolute;left:8%;right:2%;bottom:3%;height:26%;border-radius:50%;background:radial-gradient(ellipse at center,rgba(24,139,255,.20),transparent 68%);filter:blur(18px);pointer-events:none}.hero-card img{position:absolute;z-index:2;left:-8%;top:-92px;width:118%;height:124%;object-fit:contain;object-position:center;filter:drop-shadow(0 34px 38px rgba(0,0,0,.46)) drop-shadow(0 0 36px rgba(20,124,255,.18))}
.offer{border-top:1px solid rgba(255,255,255,.05);border-bottom:1px solid rgba(255,255,255,.05);background:linear-gradient(180deg,rgba(4,19,35,.64),rgba(2,10,19,.24))}.offer-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:44px}.offer-card{position:relative;min-height:260px;padding:27px;border:1px solid var(--line);border-radius:19px;background:linear-gradient(145deg,rgba(11,39,65,.72),rgba(5,20,35,.82));overflow:hidden;transition:.22s}.offer-card:before{content:"";position:absolute;width:180px;height:180px;border-radius:50%;right:-70px;top:-60px;background:radial-gradient(circle,rgba(32,162,255,.15),transparent 67%)}.offer-card:hover{transform:translateY(-5px);border-color:rgba(80,213,255,.53);box-shadow:0 22px 50px rgba(0,0,0,.24)}.offer-icon{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;border:1px solid #1baeff;color:#55ddff;background:rgba(14,120,190,.10);font-size:24px}.offer-card h3{margin:22px 0 10px;font-family:var(--display);font-size:17px;line-height:1.25;letter-spacing:.04em;text-transform:uppercase}.offer-card p{margin:0;color:#aebfd0;line-height:1.65;font-size:14px}.offer-card .more{position:absolute;left:27px;bottom:24px;color:#63ddff;font-size:10px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.club{position:relative}.club-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:center}.club-panel{padding:30px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(145deg,rgba(8,29,49,.85),rgba(3,15,27,.92));box-shadow:0 28px 70px rgba(0,0,0,.22)}.club-points{display:grid;gap:11px}.club-point{display:flex;gap:14px;align-items:flex-start;padding:15px;border:1px solid var(--line2);border-radius:15px;background:rgba(255,255,255,.02)}.club-point i{width:30px;height:30px;flex:0 0 auto;border-radius:9px;display:grid;place-items:center;background:rgba(37,152,255,.12);color:#5bdbff;font-style:normal;font-weight:900}.club-point b{display:block;font-size:14px}.club-point span{display:block;color:#9fb2c4;font-size:13px;line-height:1.55;margin-top:3px}
.events{border-top:1px solid rgba(255,255,255,.05);border-bottom:1px solid rgba(255,255,255,.05);background:linear-gradient(135deg,rgba(4,20,36,.82),rgba(7,31,53,.62))}.events-grid{display:grid;grid-template-columns:1fr .9fr;gap:60px;align-items:center}.shirt-stage{position:relative;min-height:430px;border:1px solid var(--line);border-radius:24px;background:radial-gradient(circle at 50% 35%,rgba(42,168,255,.15),transparent 44%),linear-gradient(145deg,#071b2d,#030d18);overflow:hidden}.shirt{position:absolute;width:230px;height:260px;top:75px;border-radius:24px 24px 42px 42px;background:linear-gradient(160deg,#f8fbff,#a7bbc9);box-shadow:0 30px 50px rgba(0,0,0,.35)}.shirt:before,.shirt:after{content:"";position:absolute;top:10px;width:96px;height:90px;background:inherit}.shirt:before{left:-68px;clip-path:polygon(100% 0,0 35%,25% 100%,100% 72%)}.shirt:after{right:-68px;clip-path:polygon(0 0,100% 35%,75% 100%,0 72%)}.shirt.one{left:18%;transform:rotate(-7deg)}.shirt.two{right:17%;top:95px;transform:rotate(7deg);background:linear-gradient(160deg,#18314b,#07101a)}.shirt-print{position:absolute;inset:82px 20px auto;text-align:center;color:#071727;font-family:var(--display);font-size:20px;line-height:1.2}.shirt.two .shirt-print{color:#62dcff}.event-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:27px}.event-tag{padding:9px 12px;border:1px solid rgba(87,204,255,.22);border-radius:999px;background:rgba(18,85,135,.11);color:#cbefff;font-size:11px;font-weight:800}
.brands{padding:48px 0 54px;border-bottom:1px solid rgba(255,255,255,.05);overflow:hidden}.brands-head{text-align:center;margin-bottom:22px}.brands-head p{margin:0;color:#7e9bb2;font-size:10px;font-weight:900;letter-spacing:.20em;text-transform:uppercase}.marquee{position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}.marquee-track{display:flex;width:max-content;animation:marquee 42s linear infinite;align-items:stretch}.brand-word{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;height:104px;min-width:190px;padding:12px 24px;color:#fff;opacity:.86;white-space:nowrap;border-right:1px solid rgba(255,255,255,.06);transition:opacity .2s ease,transform .2s ease,background .2s ease;cursor:pointer}.brand-word:hover{opacity:1;transform:translateY(-2px) scale(1.035);background:rgba(31,133,211,.07)}.brand-logo-box{height:43px;min-width:92px;display:flex;align-items:center;justify-content:center}.brand-logo{display:block;max-width:124px;max-height:42px;width:auto;height:auto;object-fit:contain;filter:none;opacity:.98}.brand-logo-erima{max-width:90px}.brand-logo-errea{max-width:110px}.brand-logo-adidas{max-width:110px}.brand-logo-nike{max-width:100px}.brand-logo-derbystar{max-width:125px}.brand-logo-kempa{max-width:112px}.brand-logo-jako{max-width:108px}.brand-logo-promodoro{max-width:128px}.brand-logo-puma{max-width:112px}.brand-logo-uhlsport{max-width:125px}.brand-inline-svg{display:block;width:auto;height:40px;max-width:118px}.brand-inline-erima{height:43px;max-width:112px}.brand-inline-kempa{height:38px;max-width:118px}.brand-fallback{display:flex;align-items:center;justify-content:center;color:#fff;font-size:22px;font-weight:900;line-height:1}.brand-fallback.erima{font-family:Arial Black,Arial,sans-serif;text-transform:lowercase;letter-spacing:-.08em}.brand-fallback.kempa{font-family:Arial Black,Arial,sans-serif;text-transform:lowercase;letter-spacing:-.06em}.brand-label{font-size:11px;font-weight:900;letter-spacing:.10em;text-transform:uppercase;color:#d9efff}.brand-promodoro .brand-label{letter-spacing:.07em}.promodoro-logo{display:flex;align-items:center;gap:7px;color:#fff;font-family:Arial,Helvetica,sans-serif;font-size:19px;letter-spacing:-.04em}.promodoro-logo i{position:relative;width:17px;height:17px;border-radius:50%;background:#fff;display:block}.promodoro-logo i:before{content:"";position:absolute;left:6px;top:-5px;width:7px;height:6px;border-left:2px solid #fff;border-top:2px solid #fff;transform:rotate(28deg)}.promodoro-logo b{font-weight:700}.marquee:hover .marquee-track{animation-play-state:paused}@keyframes marquee{to{transform:translateX(-50%)}}
.about{background:linear-gradient(180deg,rgba(2,10,19,.15),rgba(4,23,41,.58))}.about-head{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:end}.people{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:44px}.person-card{display:grid;grid-template-columns:230px 1fr;min-height:330px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(145deg,rgba(9,33,55,.84),rgba(4,17,30,.94));overflow:hidden}.person-photo{min-height:330px;background:#07182a}.person-photo img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block}.person-body{padding:30px}.person-body h3{margin:0;font-family:var(--display);font-size:19px;line-height:1.25;text-transform:uppercase;letter-spacing:.04em}.person-role{margin-top:8px;color:#59dcff;font-size:10px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.person-body p{color:#afc0d1;font-size:14px;line-height:1.7;margin:20px 0}.person-links{display:grid;gap:6px}.person-links a{color:#d9f3ff;font-size:13px}.person-links a:hover{color:#5bddff}
.contact{padding-bottom:115px}.contact-box{position:relative;padding:54px;border:1px solid rgba(58,189,255,.42);border-radius:25px;background:linear-gradient(145deg,rgba(9,35,60,.91),rgba(3,14,26,.96));overflow:hidden}.contact-box:after{content:"";position:absolute;width:530px;height:530px;border-radius:50%;right:-150px;top:-230px;background:radial-gradient(circle,rgba(29,145,255,.16),transparent 65%)}.contact-box>*{position:relative;z-index:2}.contact-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.contact-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:34px}.meta{display:block;padding:16px;border:1px solid var(--line2);border-radius:14px;background:rgba(255,255,255,.025);transition:.2s ease}.meta[href]{cursor:pointer}.meta[href]:hover{border-color:rgba(83,216,255,.55);background:rgba(25,112,177,.10);transform:translateY(-2px)}.meta small{display:block;color:#7f9bb1;font-size:9px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.meta b{display:block;margin-top:6px;font-size:13px}.site-footer{border-top:1px solid rgba(255,255,255,.06);background:#01070e}.footer-main{display:grid;grid-template-columns:1.3fr .8fr .9fr .8fr;gap:40px;padding:48px 0 36px}.footer-logo{width:92px}.footer-claim{font-family:var(--display);font-size:12px;line-height:1.4;letter-spacing:.04em;text-transform:uppercase}.footer-text,.footer-col a,.footer-col div{color:#8096aa;font-size:12px;line-height:1.8}.footer-col h3{margin:0 0 12px;color:#d7eafa;font-size:11px;letter-spacing:.14em;text-transform:uppercase}.footer-links{display:grid;gap:4px}.footer-links a:hover{color:#58ddff}.footer-bottom{min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid rgba(255,255,255,.06);color:#5f7589;font-size:10px}.footer-legal{display:flex;gap:16px}
.legal-page{padding:72px 0 100px}.legal-card{max-width:1050px;border:1px solid var(--line);background:linear-gradient(145deg,rgba(10,33,55,.94),rgba(4,16,29,.97));border-radius:24px;padding:38px;box-shadow:0 24px 60px rgba(0,0,0,.25)}.legal-card h1{font-family:var(--display);font-size:clamp(36px,5vw,64px);line-height:1.05;text-transform:uppercase}.legal-card h2{margin:32px 0 10px;font-size:18px}.legal-card p,.legal-card li{color:#afc0d1;line-height:1.75}.legal-note{margin-top:28px;padding:16px;border:1px solid rgba(255,188,85,.26);border-radius:14px;background:rgba(255,173,53,.06);color:#d8bd8e;font-size:13px;line-height:1.6}
@media(max-width:1200px){.nav{gap:13px}.nav a{font-size:12.5px}.hero-grid,.club-grid,.events-grid{grid-template-columns:1fr}.hero-visual{max-width:850px}.offer-grid{grid-template-columns:1fr 1fr}.about-head{grid-template-columns:1fr}.people{grid-template-columns:1fr}.footer-main{grid-template-columns:1.3fr 1fr 1fr}}
@media(max-width:900px){.head{grid-template-columns:auto auto}.nav{display:none;position:absolute;left:14px;right:14px;top:80px;padding:14px;border:1px solid var(--line);border-radius:16px;background:rgba(2,11,21,.98);box-shadow:0 22px 45px rgba(0,0,0,.4)}.nav.open{display:grid}.nav a{padding:12px 10px;font-size:13px}.nav a:after{display:none}.menu-btn{display:block;justify-self:end}.hero{padding-top:42px}.hero-grid{gap:35px}.quick-points{grid-template-columns:1fr}.hero-card{min-height:460px}.hero-card img{top:-68px;height:120%;width:116%;left:-8%}.contact-meta{grid-template-columns:1fr 1fr}.footer-main{grid-template-columns:1fr 1fr}}
@media(max-width:650px){:root{--wrap:min(100% - 26px,1480px)}.site-header .head{min-height:74px}.brand img{width:54px;height:54px}.brand span{font-size:16px}.hero{min-height:0;padding:34px 0 54px}.hero-title{font-size:clamp(28px,9vw,44px)}.hero-copy{font-size:16px}.hero-actions{display:grid}.hero-actions .btn{width:100%}.hero-visual,.hero-card{min-height:390px}.hero-card img{left:-10%;width:120%;height:116%;top:-46px}.offer-grid{grid-template-columns:1fr}.section{padding:68px 0}.section-title{font-size:clamp(28px,9vw,44px)}.events-grid{gap:34px}.shirt-stage{min-height:360px}.shirt{width:160px;height:205px;top:72px}.shirt.one{left:20%}.shirt.two{right:18%;top:94px}.shirt-print{inset:68px 12px auto;font-size:14px}.brand-word{min-width:150px;height:94px;padding:10px 17px}.brand-logo-box{height:38px}.brand-logo{max-width:94px;max-height:34px}.brand-label{font-size:9px}.person-card{grid-template-columns:1fr}.person-photo{height:360px;min-height:0}.person-body{padding:24px}.contact-box{padding:30px 22px}.contact-meta{grid-template-columns:1fr}.footer-main{grid-template-columns:1fr;padding-top:36px}.footer-bottom{padding:18px 0;min-height:0;align-items:flex-start;flex-direction:column}.footer-legal{flex-wrap:wrap}.legal-card{padding:26px 22px}.marquee-track{animation-duration:24s}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.marquee-track{animation:none;transform:none}.marquee{overflow-x:auto;-webkit-mask-image:none;mask-image:none}}

/* V8 – Kontaktformular und lokale Markenlogos */
.person-body p{margin-top:17px}
.contact-form{margin-top:30px;padding-top:30px;border-top:1px solid rgba(255,255,255,.08)}
.form-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:20px}
.form-head h3{margin:0;font-family:var(--display);font-size:20px;letter-spacing:.04em;text-transform:uppercase}
.form-head p{margin:0;max-width:590px;color:#8fa7ba;font-size:13px;line-height:1.6}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form-grid label{display:grid;gap:8px}
.form-grid label>span:first-child{color:#93a9bc;font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:1px solid rgba(77,184,255,.24);border-radius:12px;background:rgba(2,13,24,.70);color:#eef8ff;font:inherit;font-size:14px;padding:13px 14px;outline:none;transition:border-color .2s,box-shadow .2s,background .2s}
.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:rgba(63,173,255,.66);box-shadow:0 0 0 3px rgba(31,128,255,.10);background:rgba(4,20,36,.86)}
.form-grid textarea{resize:vertical;min-height:135px}
.form-grid select option{background:#061728;color:#eef8ff}
.form-wide{grid-column:1/-1}
.consent{display:flex!important;grid-template-columns:20px 1fr!important;align-items:flex-start;gap:10px!important;color:#849caf;font-size:11px;line-height:1.5}
.consent input{width:17px!important;height:17px;margin:1px 0 0;padding:0;accent-color:#1b8fff}
.consent a{color:#65c5ff;text-decoration:underline;text-underline-offset:2px}
.form-submit-row{display:flex!important;align-items:center;gap:15px;flex-wrap:wrap;margin-top:2px}
.form-note{color:#708ba1;font-size:11px}
@media(max-width:650px){.form-head{display:block}.form-head p{margin-top:10px}.form-grid{grid-template-columns:1fr}.form-wide{grid-column:auto}.form-submit-row{align-items:flex-start}.brand span{font-size:16px}}

/* V9 – production polish */
.brand-logo{image-rendering:auto}
.brand-logo-adidas{max-height:40px;max-width:78px}
.brand-logo-erima{max-height:42px;max-width:94px}
.brand-logo-errea{max-height:37px;max-width:112px}
.brand-logo-hummel{max-height:36px;max-width:126px}
.brand-logo-jako{max-height:40px;max-width:122px}
.brand-logo-kempa{max-height:36px;max-width:116px}
.brand-logo-nike{max-height:38px;max-width:104px}
.brand-logo-promodoro{max-height:30px;max-width:134px}
.brand-logo-puma{max-height:42px;max-width:94px}
.brand-logo-uhlsport{max-height:34px;max-width:124px}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #48b7ff;outline-offset:3px}
code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;color:#cfeaff;background:rgba(255,255,255,.04);padding:.08em .28em;border-radius:4px}

/* V10 – Angebotskarten gemäß freigegebenem Layout */
.offer-grid.offer-grid-visual{gap:18px;margin-top:46px;align-items:stretch}
.offer-card.offer-card-visual{min-height:490px;padding:0;border:1px solid rgba(39,149,213,.48);border-radius:19px;background:linear-gradient(180deg,rgba(8,36,61,.97),rgba(3,20,35,.98));overflow:hidden;display:flex;flex-direction:column;box-shadow:0 18px 45px rgba(0,0,0,.14)}
.offer-card.offer-card-visual:before{display:none}
.offer-card.offer-card-visual:hover{transform:translateY(-4px);border-color:rgba(49,184,255,.72);box-shadow:0 24px 58px rgba(0,0,0,.28),0 0 28px rgba(21,141,226,.08)}
.offer-visual{height:268px;flex:0 0 268px;overflow:hidden;background:#051d31}
.offer-visual img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center}
.offer-card-body{position:relative;display:flex;flex:1;flex-direction:column;padding:8px 30px 25px}
.offer-card.offer-card-visual h3{margin:0 0 18px;font-family:var(--display);font-size:18px;line-height:1.13;letter-spacing:.035em;text-transform:uppercase;color:#f5f7fb;text-shadow:0 1px 0 rgba(255,255,255,.12)}
.offer-card.offer-card-visual p{margin:0;color:#b8c7d7;font-size:14px;line-height:1.72}
.offer-card.offer-card-visual .more{position:static;margin-top:auto;padding-top:25px;color:#4cd5ff;font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;transition:.2s}
.offer-card.offer-card-visual .more:hover{color:#a6ecff;transform:translateX(3px)}
@media(max-width:1200px){.offer-card.offer-card-visual{min-height:470px}.offer-visual{height:255px;flex-basis:255px}}
@media(max-width:650px){.offer-card.offer-card-visual{min-height:0}.offer-visual{height:auto;flex-basis:auto;aspect-ratio:466/268}.offer-card-body{padding:8px 23px 24px}.offer-card.offer-card-visual h3{font-size:17px}.offer-card.offer-card-visual p{font-size:14px}.offer-card.offer-card-visual .more{padding-top:22px}}

/* V11 – vom Nutzer bereitgestellte Original-Markenlogos */
.brand-logo-adidas{max-width:102px;max-height:40px;filter:brightness(0) invert(1);}
.brand-logo-errea{max-width:116px;max-height:42px;filter:brightness(0) invert(1);}
.brand-logo-uhlsport{width:auto!important;height:auto!important;max-width:132px!important;max-height:38px!important;object-fit:contain;object-position:center center;filter:none;mix-blend-mode:normal;}

/* V12 – Angebot exakt nach Referenz */
.offer-card.offer-card-visual .offer-visual{height:261px;flex-basis:261px;background:#04182b}
.offer-card.offer-card-visual .offer-visual img{width:100%;height:100%;object-fit:cover;object-position:center center}
.offer-card.offer-card-visual .offer-card-body{padding-top:10px}
@media(max-width:1200px){.offer-card.offer-card-visual .offer-visual{height:auto;flex-basis:auto;aspect-ratio:462/261}}

/* V13 – Original-Logos aus den vom Nutzer bereitgestellten Dateien */
.brand-logo-derbystar,
.brand-logo-erima,
.brand-logo-hummel,
.brand-logo-jako,
.brand-logo-nike,
.brand-logo-puma{
  filter:brightness(0) invert(1) !important;
}
.brand-logo-kempa{
  filter:none !important;
}

/* V14 – regionale SEO-Sektion & produktionsreifes Kontaktformular */
.region{position:relative;background:linear-gradient(180deg,rgba(4,18,33,.42),rgba(5,27,46,.28));border-top:1px solid rgba(255,255,255,.04);border-bottom:1px solid rgba(255,255,255,.05)}
.region-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:72px;align-items:start}
.region-copy{padding-top:10px;color:#b7c8d8;font-size:16px;line-height:1.8}
.region-copy p{margin:0 0 16px}.region-copy strong{color:#edf8ff}
.region-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.region-tags span{display:inline-flex;align-items:center;min-height:36px;padding:8px 13px;border:1px solid rgba(65,182,255,.25);border-radius:999px;background:rgba(18,83,132,.10);color:#9ddcff;font-size:10px;font-weight:900;letter-spacing:.10em;text-transform:uppercase}
.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
.privacy-note{margin:2px 0 0;color:#7893a8;font-size:11px;line-height:1.6}.privacy-note a{color:#65c5ff;text-decoration:underline;text-underline-offset:2px}
.form-submit-row .btn[disabled]{opacity:.6;cursor:wait;transform:none!important}
.form-note.success{color:#91e6bc}.form-note.error{color:#ffc5a1}
@media(max-width:900px){.region-grid{grid-template-columns:1fr;gap:22px}.region-copy{padding-top:0}}


/* V15 – Hero-Vorteile, Markenhinweis und kompakter Vereinstitel */
.quick-points{gap:14px;margin-top:40px}
.quick-point{position:relative;display:grid;grid-template-columns:42px 1fr;align-items:center;gap:12px;min-height:82px;padding:15px 16px;overflow:hidden;border:1px solid rgba(72,183,255,.24);border-radius:16px;background:linear-gradient(145deg,rgba(8,31,52,.90),rgba(3,17,31,.80));box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 12px 30px rgba(0,0,0,.12);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.quick-point:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,#35d8ff,#197dff);box-shadow:0 0 14px rgba(43,176,255,.45)}
.quick-point:after{content:"";position:absolute;right:-30px;top:-38px;width:95px;height:95px;border-radius:50%;background:radial-gradient(circle,rgba(49,174,255,.13),transparent 68%);pointer-events:none}
.quick-point:hover{transform:translateY(-3px);border-color:rgba(74,201,255,.48);box-shadow:0 18px 38px rgba(0,0,0,.20),0 0 22px rgba(27,135,255,.07)}
.quick-icon{position:relative;z-index:1;width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(67,202,255,.45);border-radius:13px;background:linear-gradient(145deg,rgba(14,75,119,.34),rgba(5,27,48,.60));color:#64ddff;box-shadow:inset 0 0 18px rgba(38,163,255,.06)}
.quick-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.quick-point small{font-size:10px;letter-spacing:.16em;color:#5edaff}
.quick-point b{margin-top:5px;font-size:13px;line-height:1.35;color:#edf8ff}
.quick-individual{transform:translateY(-5px)}
.quick-individual:hover{transform:translateY(-8px)}
.quick-individual .quick-icon{color:#8fe8ff}
.quick-flex .quick-icon{color:#48b5ff}

.brands-head{margin-bottom:25px}
.brands-head p{font-size:14px;line-height:1.4;letter-spacing:.16em;color:#9ebdd3}

.club-title{font-size:clamp(29px,3.25vw,48px);line-height:1.12}
.club-title>span{display:block;white-space:nowrap}

@media(max-width:900px){
  .quick-individual{transform:none}
  .quick-individual:hover{transform:translateY(-3px)}
  .brands-head p{font-size:13px}
  .club-title{font-size:clamp(28px,6.2vw,44px)}
}
@media(max-width:650px){
  .quick-point{min-height:76px}
  .club-title>span{white-space:normal}
  .brands-head{padding:0 18px}
  .brands-head p{font-size:12px;letter-spacing:.12em}
}

/* V16 – homogene Typografie */
/* Alle großen Abschnittsüberschriften entsprechen nun der Größe von
   „Nicht irgendein Shop. / Euer Ansprechpartner.“. Der Hero bleibt bewusst größer. */
.section-title,
.club-title{
  font-size:clamp(29px,3.25vw,48px);
  line-height:1.12;
}

/* Einheitliche Lesetext-Größe nach dem Hero-Einleitungstext. */
.hero-copy,
.section-copy,
.region-copy,
.offer-card.offer-card-visual p,
.person-body p,
.club-point span,
.form-head p{
  font-size:18px;
  line-height:1.75;
}

@media(max-width:900px){
  .section-title,
  .club-title{
    font-size:clamp(28px,6.2vw,44px);
  }
}

@media(max-width:650px){
  .hero-copy,
  .section-copy,
  .region-copy,
  .offer-card.offer-card-visual p,
  .person-body p,
  .club-point span,
  .form-head p{
    font-size:16px;
    line-height:1.7;
  }
}


/* V17 – klarere Bereichstrennung und orange Navigation */
:root{--orange:#ff8a2a}

/* Jeder Inhaltsbereich erhält am Übergang einen klaren orangefarbenen Trenner. */
main>section+section{position:relative}
main>section+section:before{
  content:"";
  position:absolute;
  z-index:5;
  top:-1px;
  left:50%;
  width:min(1480px,calc(100% - 48px));
  height:2px;
  transform:translateX(-50%);
  border-radius:999px;
  background:linear-gradient(90deg,transparent 0%,rgba(255,138,42,.38) 7%,var(--orange) 18%,var(--orange) 82%,rgba(255,138,42,.38) 93%,transparent 100%);
  box-shadow:0 0 10px rgba(255,138,42,.24);
  pointer-events:none;
}

/* Menü: türkisfarbener Unterstrich bleibt, der Text wird beim Hover orange. */
.nav a{transition:color .2s ease}
.nav a:hover{color:var(--orange)}

@media(max-width:650px){
  main>section+section:before{width:calc(100% - 26px)}
}


/* V19 – erweitertes Textildruck- & Stick-Sortiment */
.finish-range{
  position:relative;
  margin-top:30px;
  max-width:1180px;
  padding:19px 24px 20px 28px;
  border:1px solid rgba(65,182,255,.22);
  border-radius:16px;
  background:linear-gradient(135deg,rgba(8,35,58,.72),rgba(4,20,35,.62));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
  overflow:hidden;
}
.finish-range:before{
  content:"";
  position:absolute;
  left:0;top:0;bottom:0;
  width:3px;
  background:linear-gradient(180deg,#ff9c42,#ff6f1f);
  box-shadow:0 0 16px rgba(255,122,35,.45);
}
.finish-range-label{
  display:block;
  margin-bottom:8px;
  color:#ff9a43;
  font-size:11px;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.finish-range p{
  margin:0;
  color:#d6e4ef;
  font-size:18px;
  line-height:1.75;
}
@media(max-width:650px){
  .finish-range{margin-top:24px;padding:17px 18px 18px 21px}
  .finish-range p{font-size:16px;line-height:1.7}
  .finish-range-label{font-size:10px}
}


/* V20 – Textilveredelung als eigener Geschäftsbereich */
.finishing-business{
  background:
    radial-gradient(circle at 82% 18%,rgba(255,132,35,.075),transparent 26%),
    radial-gradient(circle at 15% 75%,rgba(29,151,255,.10),transparent 30%),
    linear-gradient(180deg,rgba(2,13,25,.70),rgba(5,24,40,.72));
}
.finishing-head{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);
  gap:70px;
  align-items:end;
}
.finishing-intro{
  border-left:2px solid var(--orange);
  padding:2px 0 2px 26px;
}
.finishing-intro p{
  margin:0;
  color:#b9cad9;
  font-size:18px;
  line-height:1.75;
}
.finishing-intro p+p{margin-top:13px}
.finishing-intro strong{color:#fff}

.finishing-methods{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
  margin-top:48px;
}
.finish-method{
  position:relative;
  min-height:330px;
  padding:34px 36px 32px;
  overflow:hidden;
  border:1px solid rgba(62,178,244,.28);
  border-radius:22px;
  background:linear-gradient(145deg,rgba(9,42,69,.88),rgba(4,19,33,.95));
  box-shadow:0 20px 50px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.03);
}
.finish-method:before{
  content:"";
  position:absolute;
  width:280px;height:280px;
  right:-95px;top:-110px;
  border-radius:50%;
  pointer-events:none;
}
.finish-print:before{background:radial-gradient(circle,rgba(31,168,255,.20),transparent 66%)}
.finish-embroider:before{background:radial-gradient(circle,rgba(255,137,42,.18),transparent 66%)}
.finish-method-top{display:flex;align-items:center;gap:13px;margin-bottom:27px}
.finish-method-no{
  width:42px;height:42px;
  display:grid;place-items:center;
  border-radius:12px;
  background:rgba(34,169,255,.12);
  border:1px solid rgba(65,190,255,.34);
  color:#67ddff;
  font-size:13px;font-weight:900;letter-spacing:.08em;
}
.finish-embroider .finish-method-no{
  background:rgba(255,138,42,.10);
  border-color:rgba(255,138,42,.38);
  color:#ff9e4a;
}
.finish-method-kicker{
  color:#eef8ff;
  font-size:12px;font-weight:900;letter-spacing:.18em;text-transform:uppercase;
}
.finish-method h3{
  margin:0 0 17px;
  font-family:var(--display);
  font-size:clamp(22px,2.15vw,32px);
  line-height:1.16;
  letter-spacing:.025em;
  text-transform:uppercase;
}
.finish-method p{
  margin:0;
  max-width:640px;
  color:#b9cad9;
  font-size:18px;
  line-height:1.75;
}
.finish-method-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:23px}
.finish-method-tags span{
  padding:7px 10px;
  border-radius:999px;
  border:1px solid rgba(78,197,255,.20);
  background:rgba(18,80,121,.13);
  color:#d6efff;
  font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;
}
.finish-embroider .finish-method-tags span{
  border-color:rgba(255,138,42,.20);
  background:rgba(104,54,17,.12);
  color:#ffe3cd;
}

.finishing-products{
  margin-top:22px;
  padding:31px 34px 30px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:22px;
  background:linear-gradient(180deg,rgba(7,31,52,.72),rgba(3,17,30,.72));
}
.finishing-products-head{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:40px;
  align-items:end;
}
.finishing-products-kicker{
  display:block;
  margin-bottom:7px;
  color:var(--orange);
  font-size:11px;font-weight:900;letter-spacing:.17em;text-transform:uppercase;
}
.finishing-products h3{
  margin:0;
  font-family:var(--display);
  font-size:clamp(24px,2.6vw,38px);
  line-height:1.15;
  letter-spacing:.03em;
  text-transform:uppercase;
}
.finishing-products-head>p{
  margin:0;
  color:#b9cad9;
  font-size:18px;
  line-height:1.75;
}
.finishing-product-grid{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:10px;
  margin-top:26px;
}
.finishing-product-grid span{
  position:relative;
  min-height:58px;
  display:flex;
  align-items:center;
  padding:12px 15px 12px 28px;
  border:1px solid rgba(58,180,250,.18);
  border-radius:12px;
  background:rgba(6,38,63,.52);
  color:#edf8ff;
  font-size:14px;
  font-weight:800;
}
.finishing-product-grid span:before{
  content:"";
  position:absolute;
  left:13px;
  width:6px;height:6px;
  border-radius:50%;
  background:var(--orange);
  box-shadow:0 0 10px rgba(255,138,42,.55);
}
.finishing-action{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  margin-top:28px;
  padding-top:24px;
  border-top:1px solid rgba(255,255,255,.07);
}
.finishing-action p{
  margin:0;
  max-width:760px;
  color:#b9cad9;
  font-size:16px;
  line-height:1.65;
}
.finishing-action strong{color:#fff}

/* Etwas mehr Platz für den zusätzlichen Hauptmenüpunkt. */
@media(min-width:1201px){.nav{gap:18px}}

@media(max-width:1200px){
  .finishing-head{grid-template-columns:1fr;gap:28px}
  .finishing-intro{max-width:900px}
  .finishing-product-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:800px){
  .finishing-methods{grid-template-columns:1fr}
  .finishing-products-head{grid-template-columns:1fr;gap:14px}
  .finishing-product-grid{grid-template-columns:repeat(2,1fr)}
  .finishing-action{align-items:flex-start;flex-direction:column}
}
@media(max-width:650px){
  .finishing-intro{padding-left:18px}
  .finishing-intro p,.finish-method p,.finishing-products-head>p{font-size:16px;line-height:1.7}
  .finish-method{min-height:0;padding:26px 22px 24px}
  .finishing-products{padding:25px 20px 24px}
  .finishing-product-grid{grid-template-columns:1fr 1fr;gap:8px}
  .finishing-product-grid span{min-height:52px;padding-left:26px;font-size:13px}
}

/* V21 – Bereich „Für Vereine“ an die restliche Designsprache angepasst */
.club-new{
  background:
    radial-gradient(circle at 12% 18%,rgba(28,145,255,.09),transparent 27%),
    radial-gradient(circle at 88% 82%,rgba(255,138,42,.055),transparent 24%),
    linear-gradient(180deg,rgba(3,17,31,.58),rgba(5,24,40,.44));
}
.club-head{
  display:grid;
  grid-template-columns:minmax(0,.95fr) minmax(420px,1.05fr);
  gap:72px;
  align-items:end;
}
.club-intro{
  border-left:2px solid var(--orange);
  padding:2px 0 2px 26px;
}
.club-intro p{
  margin:0;
  color:#b9cad9;
  font-size:18px;
  line-height:1.75;
}
.club-feature-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px;
  margin-top:48px;
}
.club-feature{
  position:relative;
  min-height:288px;
  padding:31px 34px 30px;
  overflow:hidden;
  border:1px solid rgba(63,179,245,.26);
  border-radius:21px;
  background:linear-gradient(145deg,rgba(9,40,66,.88),rgba(4,19,33,.95));
  box-shadow:0 20px 48px rgba(0,0,0,.17),inset 0 1px 0 rgba(255,255,255,.025);
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;
}
.club-feature:before{
  content:"";
  position:absolute;
  width:220px;height:220px;
  right:-78px;top:-92px;
  border-radius:50%;
  pointer-events:none;
}
.club-feature-blue:before{background:radial-gradient(circle,rgba(31,168,255,.17),transparent 67%)}
.club-feature-orange:before{background:radial-gradient(circle,rgba(255,138,42,.14),transparent 67%)}
.club-feature:hover{
  transform:translateY(-4px);
  border-color:rgba(69,194,255,.48);
  box-shadow:0 25px 58px rgba(0,0,0,.24),0 0 24px rgba(24,132,255,.06);
}
.club-feature-top{display:flex;align-items:center;gap:13px;margin-bottom:25px}
.club-feature-no{
  width:42px;height:42px;
  display:grid;place-items:center;
  border-radius:12px;
  border:1px solid rgba(65,190,255,.34);
  background:rgba(34,169,255,.12);
  color:#67ddff;
  font-size:13px;font-weight:900;letter-spacing:.08em;
}
.club-feature-orange .club-feature-no{
  border-color:rgba(255,138,42,.38);
  background:rgba(255,138,42,.10);
  color:#ff9e4a;
}
.club-feature-kicker{
  color:#dff2ff;
  font-size:11px;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.club-feature h3{
  margin:0 0 16px;
  font-family:var(--display);
  font-size:clamp(22px,2.05vw,31px);
  line-height:1.17;
  letter-spacing:.025em;
  text-transform:uppercase;
}
.club-feature p{
  margin:0;
  max-width:640px;
  color:#b9cad9;
  font-size:18px;
  line-height:1.75;
}
.club-action{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  margin-top:20px;
  padding:24px 28px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  background:linear-gradient(135deg,rgba(8,34,56,.70),rgba(4,19,33,.72));
}
.club-action-label{
  display:block;
  margin-bottom:5px;
  color:var(--orange);
  font-size:11px;
  font-weight:900;
  letter-spacing:.17em;
  text-transform:uppercase;
}
.club-action p{
  margin:0;
  color:#c3d2df;
  font-size:18px;
  line-height:1.6;
}
@media(max-width:900px){
  .club-head{grid-template-columns:1fr;gap:22px}
  .club-intro{padding-left:20px}
  .club-feature-grid{grid-template-columns:1fr;margin-top:34px}
  .club-action{align-items:flex-start;flex-direction:column}
}
@media(max-width:650px){
  .club-feature{min-height:0;padding:25px 22px 24px}
  .club-feature h3{font-size:22px}
  .club-feature p,.club-intro p,.club-action p{font-size:16px;line-height:1.7}
  .club-action{padding:21px}
  .club-action .btn{width:100%}
}

/* V22 – Layout-Bereinigung: keine Überlappungen, einheitliche Bereiche & Abstände */
:root{
  --section-pad:92px;
  --card-radius:20px;
  --card-border:rgba(65,182,255,.24);
  --card-bg:linear-gradient(145deg,rgba(8,34,57,.84),rgba(3,17,30,.92));
}

/* Einheitliche Abschnittsarchitektur */
.section{padding:var(--section-pad) 0}
.section .wrap{min-width:0}
.section-title,
.club-title,
.finish-method h3,
.club-feature h3,
.finishing-products h3,
.person-body h3{
  max-width:100%;
  overflow-wrap:normal;
  word-break:normal;
}
.section-copy,
.region-copy,
.finishing-intro,
.club-intro,
.finish-method,
.club-feature,
.person-body,
.form-head,
.meta{min-width:0}

/* Überschriften dürfen nie in die Nachbarspalte hineinragen. */
.finishing-head > *,
.club-head > *,
.region-grid > *,
.about-head > *,
.events-grid > *{min-width:0}
.club-title>span{white-space:normal!important}

/* Einheitliche Kopfbereiche für die zweispaltigen Sektionen */
.finishing-head,
.club-head,
.region-grid,
.about-head{
  gap:64px;
}
.finishing-intro,
.club-intro{
  border-left:2px solid var(--orange);
  padding:4px 0 4px 24px;
}

/* Angebot: gleiche Kartenhöhen, sichere Textbereiche */
.offer-grid.offer-grid-visual{grid-auto-rows:1fr}
.offer-card.offer-card-visual{
  height:100%;
  min-height:0;
  border-radius:var(--card-radius);
}
.offer-card.offer-card-visual .offer-card-body{
  min-height:245px;
  padding:18px 28px 26px;
}
.offer-card.offer-card-visual h3{
  min-height:46px;
  display:flex;
  align-items:flex-start;
  margin:0 0 14px;
  font-size:clamp(16px,1.18vw,18px);
  line-height:1.22;
}
.offer-card.offer-card-visual p{
  margin:0;
  font-size:17px;
  line-height:1.65;
}
.offer-card.offer-card-visual .more{
  margin-top:auto;
  padding-top:22px;
  line-height:1.35;
}

/* Veredelung und Vereine: gleiche Kartenlogik und keine festen Höhen. */
.finishing-methods,
.club-feature-grid{align-items:stretch}
.finish-method,
.club-feature{
  min-height:0;
  height:100%;
  border-radius:var(--card-radius);
}
.finish-method-top,
.club-feature-top{
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  align-items:center;
  gap:13px;
}
.finish-method-kicker,
.club-feature-kicker{
  min-width:0;
  line-height:1.35;
}
.finish-method h3,
.club-feature h3{
  font-size:clamp(21px,1.85vw,29px);
  line-height:1.2;
}
.finish-method p,
.club-feature p,
.finishing-products-head>p,
.club-intro p,
.finishing-intro p,
.club-action p{
  font-size:17px;
  line-height:1.7;
}

/* Produktliste: gleichmäßige, robuste Kacheln */
.finishing-product-grid{grid-auto-rows:1fr}
.finishing-product-grid span{
  height:100%;
  min-height:58px;
  line-height:1.35;
}

/* Region, Events und Über uns optisch angleichen */
.region,
.events,
.about,
.club-new,
.finishing-business,
.offer{
  background-color:transparent;
}
.events-grid{gap:64px}
.shirt-stage,
.person-card,
.contact-box,
.finishing-products,
.club-action{
  border-radius:var(--card-radius);
}
.person-card{height:100%}
.people{align-items:stretch}
.person-body{display:flex;flex-direction:column}
.person-links{margin-top:auto}

/* Kontakt: lange Daten umbrechen statt herauszulaufen. */
.meta b,
.person-links a,
.footer-col a{
  overflow-wrap:anywhere;
}
.form-grid>*{min-width:0}
input,select,textarea{max-width:100%}

/* Footer sauber ausrichten */
.footer-main{align-items:start}
.footer-col{min-width:0}

/* Frühere Umstellung auf kompaktere Layouts verhindert Überlappungen auf Laptops. */
@media(max-width:1320px){
  .finishing-head,
  .club-head,
  .region-grid,
  .about-head{
    grid-template-columns:1fr;
    gap:24px;
  }
  .finishing-intro,
  .club-intro{max-width:980px}
  .offer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .offer-card.offer-card-visual .offer-visual{
    height:auto;
    flex-basis:auto;
    aspect-ratio:462/261;
  }
  .offer-card.offer-card-visual .offer-card-body{min-height:225px}
  .section-title,.club-title{max-width:1050px}
}

/* Navigation rechtzeitig einklappen, bevor Menüpunkte und Logo kollidieren. */
@media(max-width:1120px){
  .head{grid-template-columns:auto auto}
  .nav{
    display:none;
    position:absolute;
    left:14px;right:14px;top:80px;
    padding:14px;
    border:1px solid var(--line);
    border-radius:16px;
    background:rgba(2,11,21,.98);
    box-shadow:0 22px 45px rgba(0,0,0,.4)
  }
  .nav.open{display:grid}
  .nav a{padding:12px 10px;font-size:13px}
  .nav a:after{display:none}
  .menu-btn{display:block;justify-self:end}
}

@media(max-width:900px){
  :root{--section-pad:76px}
  .finishing-methods,
  .club-feature-grid{grid-template-columns:1fr}
  .finishing-products-head{grid-template-columns:1fr;gap:14px}
  .events-grid{grid-template-columns:1fr;gap:36px}
  .offer-card.offer-card-visual .offer-card-body{min-height:0}
  .person-card{grid-template-columns:220px minmax(0,1fr)}
}

@media(max-width:700px){
  :root{--section-pad:64px}
  .offer-grid{grid-template-columns:1fr}
  .offer-card.offer-card-visual h3{min-height:0;font-size:17px}
  .offer-card.offer-card-visual p,
  .finish-method p,
  .club-feature p,
  .finishing-products-head>p,
  .club-intro p,
  .finishing-intro p,
  .club-action p{font-size:16px;line-height:1.68}
  .finishing-product-grid{grid-template-columns:1fr 1fr}
  .person-card{grid-template-columns:1fr}
  .person-photo{height:340px}
  .club-action,.finishing-action{align-items:stretch}
  .club-action .btn,.finishing-action .btn{width:100%}
}

@media(max-width:460px){
  .section-title,.club-title{font-size:clamp(25px,8.2vw,34px);line-height:1.15}
  .finishing-product-grid{grid-template-columns:1fr}
  .finish-method,.club-feature{padding:24px 20px}
  .finishing-products{padding:23px 18px}
  .contact-box{padding:27px 18px}
  .brand span{font-size:14px}
}


/* V24 – Maps-Link & kompakte Fußzeile */
.footer-main{
  grid-template-columns:minmax(230px,1.15fr) minmax(145px,.7fr) minmax(255px,1fr) minmax(135px,.65fr);
  gap:28px;
  padding:28px 0 22px;
}
.footer-logo{
  width:62px;
  height:auto;
  max-height:88px;
  object-fit:contain;
  object-position:left center;
}
.footer-claim{margin:8px 0 5px}
.footer-text{margin:0;max-width:360px;line-height:1.55}
.footer-col h3{margin-bottom:8px}
.footer-col div,.footer-col a{line-height:1.55}
.footer-links{gap:2px;margin-top:5px}
.footer-bottom{min-height:48px}
.footer-address,.legal-address{
  color:#8096aa;
  text-decoration:none;
  transition:color .2s ease;
}
.footer-address:hover,.legal-address:hover{color:var(--orange)}
.meta[href*="google.com/maps"] b{color:#e8f4ff}
.meta[href*="google.com/maps"]:hover{
  border-color:rgba(255,139,44,.55);
  background:rgba(255,139,44,.07);
}

@media(max-width:1200px){
  .footer-main{grid-template-columns:1fr 1fr 1fr;gap:24px}
  .footer-main>div:first-child{grid-column:1/-1;display:grid;grid-template-columns:auto 1fr;column-gap:16px;align-items:center}
  .footer-main>div:first-child .footer-logo{grid-row:1/3}
  .footer-main>div:first-child .footer-claim,.footer-main>div:first-child .footer-text{margin:0}
}
@media(max-width:760px){
  .footer-main{grid-template-columns:1fr 1fr;padding:24px 0 18px}
  .footer-main>div:first-child{grid-column:1/-1}
}
@media(max-width:520px){
  .footer-main{grid-template-columns:1fr;gap:18px}
  .footer-main>div:first-child{display:grid;grid-template-columns:auto 1fr}
  .footer-bottom{padding:15px 0}
}

/* V25 – Typografie-Feinschliff, Region, Firmen & Schulen */
/* Display-Schrift etwas schärfer rendern; besonders Umlautpunkte bleiben sauber erkennbar. */
.section-title,
.club-title,
.finish-method h3,
.club-feature h3,
.finishing-products h3,
.business-outfits h3,
.offer-card h3,
.person-body h3,
.hero-title{
  -webkit-font-smoothing:antialiased;
  text-rendering:geometricPrecision;
  font-kerning:normal;
}
/* Der Glow bleibt, aber ohne weichen Schleier direkt an den Glyphen. */
.section-title .accent,
.hero-title .accent,
.club-title .accent{
  text-shadow:0 0 1px rgba(61,169,255,.34),0 0 7px rgba(24,113,255,.16);
}

/* Für Vereine: mehr Sicherheitsabstand zwischen Überschrift und orangefarbener Intro-Linie. */
@media(min-width:1321px){
  .club-head{
    grid-template-columns:minmax(0,1.16fr) minmax(360px,.84fr);
    gap:96px;
  }
  .club-intro{margin-left:16px}
}

/* Region: linke Headline bekommt mehr Raum; rechte Textspalte rückt bewusst weiter nach rechts. */
@media(min-width:1321px){
  .region-grid{
    grid-template-columns:minmax(0,1.23fr) minmax(340px,.77fr);
    gap:96px;
  }
  #region-title .accent{white-space:nowrap}
}
.finishing-product-grid small{
  font:inherit;
  font-size:.8em;
  color:#9fb7c9;
  white-space:nowrap;
}

/* Eigener Teil für Firmen-, Schul- und Organisationsoutfits. */
.business-outfits{
  margin-top:24px;
  padding:28px 30px;
  border:1px solid rgba(65,182,255,.24);
  border-radius:var(--card-radius);
  background:
    radial-gradient(circle at 88% 22%,rgba(255,138,42,.08),transparent 28%),
    linear-gradient(145deg,rgba(8,34,57,.82),rgba(3,17,30,.90));
}
.business-outfits-head{
  display:grid;
  grid-template-columns:minmax(0,.95fr) minmax(360px,1.05fr);
  gap:56px;
  align-items:center;
}
.business-outfits-kicker{
  display:block;
  margin-bottom:10px;
  color:var(--orange);
  font-size:11px;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.business-outfits h3{
  margin:0;
  font-family:var(--display);
  font-size:clamp(23px,2.15vw,32px);
  line-height:1.18;
  letter-spacing:.025em;
  text-transform:uppercase;
}
.business-outfits h3 span{color:#56d6ff}
.business-outfits-head>p{
  margin:0;
  padding-left:24px;
  border-left:2px solid var(--orange);
  color:#b9cad9;
  font-size:17px;
  line-height:1.7;
}
.business-outfits-grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:9px;
  margin-top:24px;
}
.business-outfits-grid span{
  min-height:48px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:10px 12px;
  border:1px solid rgba(65,182,255,.20);
  border-radius:12px;
  background:rgba(13,57,91,.22);
  color:#d9edf9;
  font-size:13px;
  font-weight:800;
  text-align:center;
}
@media(max-width:1320px){
  .business-outfits-head{grid-template-columns:1fr;gap:18px}
  .business-outfits-head>p{max-width:980px}
  .business-outfits-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:650px){
  .business-outfits{padding:23px 18px}
  .business-outfits-head>p{padding-left:18px;font-size:16px}
  .business-outfits-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  #region-title .accent{white-space:normal}
}

/* V25b – Umlaute in der Display-Schrift bewusst klarer zeichnen */
.section-title,
.club-title,
.finish-method h3,
.club-feature h3,
.finishing-products h3,
.business-outfits h3,
.offer-card.offer-card-visual h3,
.person-body h3{
  -webkit-text-stroke:.18px rgba(245,249,255,.32);
}
.section-title .accent,
.club-title .accent,
.hero-title .accent{
  -webkit-text-stroke:.22px rgba(85,184,255,.72);
}


/* V26 – Footer: Logo größer, Claim rechts daneben, Spalten homogen */
.footer-main{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:34px;
  align-items:start;
  padding:30px 0 24px;
}
.footer-brand{
  display:grid;
  grid-template-columns:112px minmax(0,1fr);
  gap:18px;
  align-items:center;
  min-width:0;
}
.footer-brand .footer-logo{
  width:112px;
  max-width:100%;
  max-height:none;
  height:auto;
  object-fit:contain;
  object-position:center;
  margin:0;
}
.footer-brand-copy{
  min-width:0;
  align-self:center;
}
.footer-brand .footer-claim{
  margin:0 0 7px;
  font-size:12px;
  line-height:1.45;
}
.footer-brand .footer-text{
  margin:0;
  max-width:none;
  font-size:12px;
  line-height:1.55;
}
.footer-col{
  min-width:0;
  padding-top:5px;
}
.footer-col h3{margin-top:0}

@media(max-width:1200px){
  .footer-main{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:28px 34px;
  }
  .footer-main>.footer-brand{
    grid-column:auto;
    display:grid;
    grid-template-columns:100px minmax(0,1fr);
    column-gap:16px;
    align-items:center;
  }
  .footer-main>.footer-brand .footer-logo{
    grid-row:auto;
    width:100px;
  }
  .footer-main>.footer-brand .footer-claim,
  .footer-main>.footer-brand .footer-text{margin-left:0;margin-right:0}
}
@media(max-width:760px){
  .footer-main{
    grid-template-columns:1fr 1fr;
    gap:24px 28px;
    padding:26px 0 20px;
  }
  .footer-main>.footer-brand{grid-column:1/-1}
}
@media(max-width:520px){
  .footer-main{grid-template-columns:1fr;gap:18px}
  .footer-main>.footer-brand{
    grid-column:auto;
    display:grid;
    grid-template-columns:92px minmax(0,1fr);
    gap:14px;
  }
  .footer-main>.footer-brand .footer-logo{width:92px}
  .footer-col{padding-top:0}
}

/* V27 – Header & Footer im Carbon/Waben-Look der freigegebenen Designvorlage */
.site-header,
.site-footer{
  --tech-blue:#079cff;
  --tech-cyan:#39d8ff;
  --tech-orange:#ff8a2a;
  position:relative;
  isolation:isolate;
  background-color:#02070d;
  background-image:
    linear-gradient(90deg,rgba(1,7,14,.93),rgba(2,10,19,.86) 44%,rgba(1,7,14,.94)),
    linear-gradient(120deg,transparent 0 7%,rgba(49,69,88,.18) 7.2% 8.4%,transparent 8.7% 20%,rgba(17,72,119,.12) 20.2% 21.2%,transparent 21.5% 100%),
    linear-gradient(30deg,rgba(8,20,31,.92) 12%,transparent 12.5%,transparent 87%,rgba(8,20,31,.92) 87.5%),
    linear-gradient(150deg,rgba(8,20,31,.92) 12%,transparent 12.5%,transparent 87%,rgba(8,20,31,.92) 87.5%),
    linear-gradient(30deg,rgba(8,20,31,.92) 12%,transparent 12.5%,transparent 87%,rgba(8,20,31,.92) 87.5%),
    linear-gradient(150deg,rgba(8,20,31,.92) 12%,transparent 12.5%,transparent 87%,rgba(8,20,31,.92) 87.5%),
    linear-gradient(60deg,rgba(21,40,58,.48) 25%,transparent 25.5%,transparent 75%,rgba(21,40,58,.48) 75%);
  background-size:auto,auto,28px 49px,28px 49px,28px 49px,28px 49px,28px 49px;
  background-position:0 0,0 0,0 0,0 0,14px 25px,14px 25px,0 0;
}
.site-header:before,
.site-footer:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  opacity:.62;
  background:
    repeating-linear-gradient(128deg,transparent 0 82px,rgba(255,255,255,.025) 83px 85px,rgba(0,119,255,.09) 86px 89px,transparent 90px 168px),
    linear-gradient(90deg,rgba(0,140,255,.05),transparent 24%,transparent 76%,rgba(0,140,255,.05));
}
.site-header{
  position:sticky;
  top:0;
  z-index:100;
  border-bottom:0;
  box-shadow:0 10px 36px rgba(0,0,0,.38);
  backdrop-filter:blur(18px) saturate(120%);
}
.site-header:after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:-1px;
  height:2px;
  z-index:3;
  pointer-events:none;
  background:linear-gradient(90deg,transparent 0%,#087cff 8%,#48ddff 32%,#087cff 62%,#48ddff 86%,transparent 100%);
  box-shadow:0 0 7px rgba(0,157,255,.95),0 0 18px rgba(0,133,255,.58);
}
.head{
  min-height:94px;
  grid-template-columns:minmax(350px,auto) 1fr auto;
  gap:28px;
  position:relative;
  z-index:2;
}
.brand{
  gap:14px;
  min-width:0;
}
.brand img{
  width:76px;
  height:76px;
  flex:0 0 76px;
  filter:drop-shadow(0 0 9px rgba(17,137,255,.42)) drop-shadow(0 12px 20px rgba(0,0,0,.28));
}
.brand .header-brand-copy{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  min-width:0;
  font-family:inherit;
  font-size:inherit;
  letter-spacing:normal;
  white-space:normal;
  line-height:1.05;
}
.header-brand-copy strong{
  font-family:var(--display);
  font-size:21px;
  font-weight:400;
  letter-spacing:.035em;
  color:#f4f7fb;
  text-transform:uppercase;
  white-space:nowrap;
}
.header-brand-copy strong em{
  color:#168dff;
  font-style:normal;
  text-shadow:0 0 10px rgba(17,136,255,.32);
}
.header-brand-copy small{
  margin-top:5px;
  color:#f2f7fc;
  font-size:8.5px;
  font-weight:900;
  letter-spacing:.23em;
  text-transform:uppercase;
  white-space:nowrap;
}
.header-brand-copy b{
  margin-top:4px;
  color:#94adc0;
  font-size:7.5px;
  font-weight:700;
  letter-spacing:.02em;
  white-space:nowrap;
}
.nav{
  justify-self:end;
  gap:21px;
}
.nav a{
  padding:36px 0 31px;
  color:#eef4f8;
  font-size:11.5px;
  font-weight:900;
  letter-spacing:.09em;
  text-shadow:0 1px 0 rgba(0,0,0,.55);
  transition:color .18s ease,text-shadow .18s ease,transform .18s ease;
}
.nav a:after{
  left:50%;
  right:50%;
  bottom:22px;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,#087cff,#54ddff,#087cff);
  box-shadow:0 0 7px rgba(50,207,255,.9),0 0 14px rgba(0,133,255,.52);
  transition:left .18s ease,right .18s ease;
}
.nav a:hover,
.nav a:focus-visible{
  color:var(--tech-orange);
  text-shadow:0 0 10px rgba(255,138,42,.22);
}
.nav a:hover:after,
.nav a:focus-visible:after{left:0;right:0}
.header-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  min-height:42px;
  padding:0 15px;
  border:1px solid rgba(61,213,255,.9);
  border-radius:6px;
  background:linear-gradient(180deg,rgba(4,29,51,.78),rgba(2,13,25,.84));
  color:#f7fbff;
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  box-shadow:inset 0 0 18px rgba(26,148,255,.06),0 0 14px rgba(0,133,255,.18);
  transition:.18s ease;
  white-space:nowrap;
}
.header-cta span{color:var(--tech-cyan);font-size:14px}
.header-cta:hover,
.header-cta:focus-visible{
  color:var(--tech-orange);
  border-color:var(--tech-orange);
  transform:translateY(-1px);
  box-shadow:inset 0 0 18px rgba(255,138,42,.05),0 0 16px rgba(255,138,42,.18);
}
.menu-btn{
  border-radius:7px;
  border-color:rgba(72,212,255,.52);
  background:linear-gradient(145deg,rgba(9,42,68,.86),rgba(2,14,26,.94));
  box-shadow:0 0 12px rgba(0,133,255,.14);
}

/* Footer: gleiche Carbon/Waben-Welt, mit leuchtender oberer Trennlinie. */
.site-footer{
  border-top:0;
  overflow:hidden;
  box-shadow:inset 0 22px 42px rgba(0,0,0,.16);
}
.site-footer:after{
  content:"";
  position:absolute;
  left:0;right:0;top:0;
  height:2px;
  z-index:3;
  pointer-events:none;
  background:linear-gradient(90deg,transparent 0%,#087cff 7%,#4bdcff 28%,#0e76ff 54%,#4bdcff 84%,transparent 100%);
  box-shadow:0 0 8px rgba(35,195,255,.95),0 0 22px rgba(0,121,255,.55);
}
.footer-main{
  position:relative;
  z-index:2;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:42px;
  padding:34px 0 26px;
}
.footer-main:before{
  content:"";
  position:absolute;
  left:0;right:0;top:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(53,201,255,.18),transparent);
}
.footer-brand{
  grid-template-columns:104px minmax(0,1fr);
  gap:16px;
}
.footer-brand .footer-logo{
  width:104px;
  filter:drop-shadow(0 0 9px rgba(18,137,255,.38)) drop-shadow(0 12px 20px rgba(0,0,0,.25));
}
.footer-wordmark{
  font-family:var(--display);
  color:#f4f8fc;
  font-size:17px;
  line-height:1.1;
  letter-spacing:.035em;
  text-transform:uppercase;
  white-space:nowrap;
}
.footer-wordmark span{
  color:#168dff;
  text-shadow:0 0 8px rgba(17,136,255,.3);
}
.footer-brand .footer-claim{
  margin:7px 0 5px;
  color:#eef6fd;
  font-size:10px;
  letter-spacing:.15em;
}
.footer-brand .footer-text{
  color:#7890a4;
  font-size:11px;
  line-height:1.45;
}
.footer-col{
  position:relative;
  padding-top:4px;
  padding-left:28px;
}
.footer-col:before{
  content:"";
  position:absolute;
  left:0;top:5px;bottom:4px;
  width:1px;
  background:linear-gradient(180deg,transparent,rgba(41,180,255,.36) 15%,rgba(41,180,255,.16) 85%,transparent);
}
.footer-col h3{
  margin:0 0 11px;
  color:#e9f4fc;
  font-size:10px;
  letter-spacing:.13em;
}
.footer-col div,
.footer-col a{
  color:#91a8ba;
  font-size:11px;
  line-height:1.55;
}
.footer-links{gap:3px;margin-top:4px}
.footer-links a{
  transition:color .18s ease,text-shadow .18s ease,transform .18s ease;
}
.footer-links a:hover,
.footer-links a:focus-visible{
  color:var(--tech-orange);
  text-shadow:0 0 8px rgba(255,138,42,.18);
  transform:translateX(2px);
}
.footer-address:hover,
.footer-address:focus-visible{color:var(--tech-orange)}
.footer-bottom{
  position:relative;
  z-index:2;
  min-height:46px;
  border-top:1px solid rgba(59,184,255,.16);
  color:#617c91;
  font-size:9.5px;
}
.footer-bottom:before{
  content:"";
  position:absolute;
  left:0;right:0;top:-1px;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(48,206,255,.34),transparent);
  box-shadow:0 0 8px rgba(0,150,255,.25);
}
.footer-legal a{transition:color .18s ease}
.footer-legal a:hover{color:var(--tech-orange)}

/* Desktop bis Tablet: rechtzeitig in das kompakte Menü wechseln. */
@media(max-width:1360px){
  .head{grid-template-columns:auto auto;min-height:88px}
  .header-cta{display:none}
  .nav{
    display:none;
    position:absolute;
    left:18px;right:18px;top:82px;
    padding:13px;
    border:1px solid rgba(57,205,255,.35);
    border-radius:9px;
    background-color:#020a12;
    background-image:
      linear-gradient(90deg,rgba(2,11,20,.97),rgba(4,18,31,.97)),
      repeating-linear-gradient(135deg,rgba(255,255,255,.02) 0 2px,transparent 2px 7px);
    box-shadow:0 20px 42px rgba(0,0,0,.46),0 0 16px rgba(0,133,255,.12)
  }
  .nav.open{display:grid}
  .nav a{padding:11px 10px;font-size:12px}
  .nav a:after{display:none}
  .menu-btn{display:block;justify-self:end}
}
@media(max-width:900px){
  .header-brand-copy b{display:none}
  .header-brand-copy strong{font-size:18px}
  .header-brand-copy small{font-size:7.5px}
  .brand img{width:66px;height:66px;flex-basis:66px}
  .footer-main{grid-template-columns:1fr 1fr;gap:26px 30px}
  .footer-main>.footer-brand{grid-column:1/-1}
  .footer-col:nth-child(2):before{display:none}
}
@media(max-width:650px){
  .site-header .head{min-height:76px}
  .brand{gap:10px}
  .brand img{width:56px;height:56px;flex-basis:56px}
  .header-brand-copy strong{font-size:15px}
  .header-brand-copy small{font-size:6.5px;letter-spacing:.15em}
  .nav{top:72px;left:10px;right:10px}
  .footer-main{grid-template-columns:1fr;gap:18px;padding:26px 0 20px}
  .footer-main>.footer-brand{grid-column:auto;grid-template-columns:88px minmax(0,1fr)}
  .footer-brand .footer-logo{width:88px}
  .footer-wordmark{font-size:15px}
  .footer-col{padding-left:0;padding-top:12px;border-top:1px solid rgba(54,185,255,.12)}
  .footer-col:before{display:none}
  .footer-bottom{padding:14px 0;min-height:0}
}


/* V28: second local clothing-brands marquee */
.brands-divider{width:min(92%,1180px);height:1px;margin:34px auto 30px;position:relative;background:linear-gradient(90deg,transparent,rgba(255,128,25,.25) 10%,rgba(255,128,25,.95) 50%,rgba(255,128,25,.25) 90%,transparent);box-shadow:0 0 14px rgba(255,128,25,.28)}
.brands-divider:before,.brands-divider:after{content:"";position:absolute;top:50%;width:7px;height:7px;border-radius:50%;background:#ff8a1f;box-shadow:0 0 12px rgba(255,138,31,.7);transform:translateY(-50%)}
.brands-divider:before{left:10%}.brands-divider:after{right:10%}
.brands-head-clothing{margin-bottom:18px}.marquee-clothing{margin-bottom:2px}.clothing-track{animation-duration:176s;animation-direction:reverse}.clothing-brand{min-width:210px;height:96px;padding:10px 20px;cursor:default;gap:0}.clothing-brand:hover{transform:translateY(-2px);background:rgba(255,138,31,.045)}.clothing-logo-box{height:62px;min-width:170px}.clothing-logo{display:block;width:176px;max-width:176px;height:58px;object-fit:contain;filter:drop-shadow(0 0 8px rgba(0,152,255,.08));opacity:.96}.clothing-brand:hover .clothing-logo{opacity:1;filter:drop-shadow(0 0 10px rgba(23,198,255,.18))}
@media(max-width:650px){.brands-divider{margin:26px auto 23px}.clothing-brand{min-width:165px;height:82px;padding:8px 14px}.clothing-logo-box{height:50px;min-width:140px}.clothing-logo{width:145px;max-width:145px;height:48px}.clothing-track{animation-duration:104s}}

/* V29: original uploaded clothing-brand logos */
.clothing-brand{min-width:188px}
.clothing-logo-box{width:166px;min-width:166px;height:64px}
.clothing-logo{display:block;width:auto;max-width:160px;height:auto;max-height:54px;object-fit:contain;opacity:.97;filter:drop-shadow(0 0 8px rgba(20,164,255,.10))}
.clothing-brand:hover .clothing-logo{opacity:1;filter:drop-shadow(0 0 10px rgba(23,198,255,.18))}
@media(max-width:650px){.clothing-brand{min-width:154px}.clothing-logo-box{width:132px;min-width:132px;height:52px}.clothing-logo{max-width:126px;max-height:44px}}

/* V30: Bekleidungsmarken mit gleicher visueller Laufgeschwindigkeit wie Sportmarken */
.clothing-track{animation-duration:176s}
@media(max-width:650px){.clothing-track{animation-duration:104s}}


/* V32: neues Hero-Logo + blaue Wortmarke + größere Footer-Typografie */
.header-brand-copy strong{
  color:#168dff;
  text-shadow:0 0 10px rgba(17,136,255,.28);
}
.header-brand-copy strong em{color:inherit;text-shadow:inherit}
.header-brand-copy b{display:none!important}

.footer-wordmark{
  color:#168dff;
  text-shadow:0 0 8px rgba(17,136,255,.30);
}
.footer-wordmark span{color:inherit;text-shadow:inherit}
.footer-brand .footer-claim{font-size:11px}
.footer-brand .footer-text{font-size:12.5px;line-height:1.55}
.footer-col h3{font-size:11.5px}
.footer-col div,
.footer-col a{font-size:12.5px;line-height:1.65}
.footer-bottom{font-size:11.5px}

.hero-card img[src$="pr-logo-3d-v2.png"]{
  left:-3%;
  top:-40px;
  width:108%;
  height:112%;
  object-fit:contain;
  border-radius:30px;
  -webkit-mask-image:radial-gradient(ellipse 69% 74% at 52% 50%,#000 62%,rgba(0,0,0,.92) 72%,rgba(0,0,0,.28) 88%,transparent 100%);
  mask-image:radial-gradient(ellipse 69% 74% at 52% 50%,#000 62%,rgba(0,0,0,.92) 72%,rgba(0,0,0,.28) 88%,transparent 100%);
  filter:drop-shadow(0 34px 38px rgba(0,0,0,.46)) drop-shadow(0 0 36px rgba(20,124,255,.18));
}
@media(max-width:900px){
  .hero-card img[src$="pr-logo-3d-v2.png"]{left:0;top:-24px;width:100%;height:108%}
}
@media(max-width:650px){
  .footer-brand .footer-claim{font-size:10.5px}
  .footer-brand .footer-text,.footer-col div,.footer-col a{font-size:12px}
  .footer-col h3{font-size:11px}
  .footer-bottom{font-size:11px}
  .hero-card img[src$="pr-logo-3d-v2.png"]{left:-2%;top:-12px;width:104%;height:104%}
}

/* V33: Hero-Logo, identische Header/Footer-Navigation, beide Marquees rechts->links, größeres Footer-Logo */
.clothing-track{animation-direction:normal!important;}

.hero-card img[src$="pr-logo-3d-v3.png"]{
  left:-3%;
  top:-40px;
  width:108%;
  height:112%;
  object-fit:contain;
  border-radius:30px;
  -webkit-mask-image:radial-gradient(ellipse 69% 74% at 52% 50%,#000 62%,rgba(0,0,0,.92) 72%,rgba(0,0,0,.28) 88%,transparent 100%);
  mask-image:radial-gradient(ellipse 69% 74% at 52% 50%,#000 62%,rgba(0,0,0,.92) 72%,rgba(0,0,0,.28) 88%,transparent 100%);
  filter:drop-shadow(0 34px 38px rgba(0,0,0,.46)) drop-shadow(0 0 36px rgba(20,124,255,.18));
}

.footer-brand{
  grid-template-columns:170px minmax(0,1fr);
  gap:20px;
  align-items:center;
}
.footer-brand .footer-logo{
  width:170px;
  height:170px;
  object-fit:contain;
  align-self:start;
}

@media(max-width:900px){
  .hero-card img[src$="pr-logo-3d-v3.png"]{left:0;top:-24px;width:100%;height:108%;}
  .footer-main>.footer-brand{grid-template-columns:145px minmax(0,1fr);}
  .footer-brand .footer-logo{width:145px;height:145px;}
}
@media(max-width:650px){
  .hero-card img[src$="pr-logo-3d-v3.png"]{left:-2%;top:-12px;width:104%;height:104%;}
  .footer-main>.footer-brand{grid-template-columns:112px minmax(0,1fr);}
  .footer-brand .footer-logo{width:112px;height:112px;}
}


/* V34: neue Hero-Grafik + vollständige Navigation */
@media(min-width:1361px){
  .nav{gap:12px}
  .nav a{font-size:10.2px;letter-spacing:.055em}
  .header-cta{padding:0 12px;font-size:9.5px}
}
.hero-card img[src$="pr-logo-3d-v4.png"]{
  left:-3%;top:-40px;width:108%;height:112%;object-fit:contain;border-radius:30px;
  -webkit-mask-image:radial-gradient(ellipse 70% 76% at 52% 51%,#000 64%,rgba(0,0,0,.94) 73%,rgba(0,0,0,.34) 88%,transparent 100%);
  mask-image:radial-gradient(ellipse 70% 76% at 52% 51%,#000 64%,rgba(0,0,0,.94) 73%,rgba(0,0,0,.34) 88%,transparent 100%);
  filter:drop-shadow(0 34px 38px rgba(0,0,0,.46)) drop-shadow(0 0 36px rgba(20,124,255,.18));
}
@media(max-width:900px){.hero-card img[src$="pr-logo-3d-v4.png"]{left:0;top:-24px;width:100%;height:108%}}
@media(max-width:650px){.hero-card img[src$="pr-logo-3d-v4.png"]{left:-2%;top:-12px;width:104%;height:104%}}


/* V35: Footer aufgeräumt, breiter aufgeteilt, ohne Überlappungen */
.site-footer{position:relative}
.footer-main{
  grid-template-columns:minmax(300px,1.45fr) repeat(4,minmax(0,.82fr));
  gap:30px 28px;
  align-items:start;
  padding:36px 0 28px;
}
.footer-brand{
  display:grid;
  grid-template-columns:132px minmax(0,1fr);
  gap:18px;
  align-items:start;
  min-width:0;
}
.footer-brand-copy,
.footer-col{min-width:0}
.footer-brand .footer-logo{
  width:132px;
  height:132px;
  object-fit:contain;
  align-self:start;
}
.footer-wordmark{
  display:block;
  margin-bottom:6px;
  font-size:18px;
  line-height:1.05;
  white-space:normal;
  overflow-wrap:anywhere;
}
.footer-brand .footer-claim{
  margin:0 0 8px;
  font-size:11px;
  line-height:1.45;
}
.footer-brand .footer-text{
  margin:0;
  max-width:260px;
  font-size:12.5px;
  line-height:1.65;
}
.footer-col{
  padding-top:2px;
  padding-left:20px;
}
.footer-col:before{
  top:2px;
  bottom:2px;
}
.footer-col h3{
  margin:0 0 12px;
  font-size:12px;
  line-height:1.2;
}
.footer-col div,
.footer-col a{
  font-size:12.5px;
  line-height:1.7;
  overflow-wrap:anywhere;
}
.footer-links{
  display:grid;
  gap:4px;
  margin-top:6px;
}
.footer-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:14px 0 16px;
  min-height:0;
}
.footer-legal{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:18px;
}
@media(max-width:1280px){
  .footer-main{
    grid-template-columns:minmax(280px,1.2fr) repeat(2,minmax(0,1fr));
    gap:26px 24px;
  }
  .footer-main>.footer-brand{grid-column:1/-1}
  .footer-col:nth-child(2):before{display:none}
}
@media(max-width:900px){
  .footer-main{
    grid-template-columns:1fr 1fr;
    gap:24px 24px;
  }
  .footer-main>.footer-brand{grid-column:1/-1}
  .footer-col:nth-child(2):before{display:none}
}
@media(max-width:650px){
  .footer-main{
    grid-template-columns:1fr;
    gap:18px;
    padding:26px 0 20px;
  }
  .footer-main>.footer-brand{
    grid-template-columns:92px minmax(0,1fr);
    gap:14px;
  }
  .footer-brand .footer-logo{width:92px;height:92px}
  .footer-wordmark{font-size:16px}
  .footer-brand .footer-text{max-width:none}
  .footer-col{
    padding-left:0;
    padding-top:12px;
    border-top:1px solid rgba(54,185,255,.12);
  }
  .footer-col:before{display:none}
  .footer-bottom{
    flex-direction:column;
    align-items:flex-start;
    gap:10px;
  }
  .footer-legal{justify-content:flex-start;gap:14px}
}


/* V36: Über-uns-Bereich – zwei kompakte Ansprechpartnerkarten + gemeinsamer Text */
.people-v36{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:24px;
  align-items:stretch;
}
.person-card-v36{
  display:grid;
  grid-template-columns:1fr;
  min-height:0;
  overflow:hidden;
  border-radius:20px;
  background:linear-gradient(145deg,rgba(8,34,57,.88),rgba(3,17,30,.96));
  box-shadow:0 16px 38px rgba(0,0,0,.18),inset 0 0 24px rgba(27,136,255,.035);
}
.person-card-v36 .person-photo{
  height:300px;
  min-height:0;
  position:relative;
  overflow:hidden;
}
.person-card-v36 .person-photo:after{
  content:"";
  position:absolute;left:0;right:0;bottom:0;height:38%;
  background:linear-gradient(180deg,transparent,rgba(3,17,30,.82));
  pointer-events:none;
}
.person-card-v36 .person-photo img{object-position:center top}
.person-card-v36 .person-body{
  padding:24px 26px 26px;
  min-height:162px;
}
.person-card-v36 .person-body h3{font-size:20px}
.person-card-v36 .person-role{
  margin:7px 0 18px;
  color:#55d8ff;
  font-size:10.5px;
  line-height:1.3;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.person-card-v36 .person-links{margin-top:auto;gap:7px}
.people-shared{
  grid-column:1/-1;
  position:relative;
  padding:26px 30px 27px 34px;
  border:1px solid rgba(65,182,255,.25);
  border-radius:18px;
  background:linear-gradient(135deg,rgba(7,31,52,.72),rgba(3,16,28,.90));
  overflow:hidden;
}
.people-shared:before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:3px;
  background:linear-gradient(180deg,#ff9a39,#ff7a1a);
  box-shadow:0 0 14px rgba(255,132,32,.36);
}
.people-shared-kicker{
  margin-bottom:9px;
  color:#ff9a39;
  font-size:11px;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.people-shared p{
  margin:0;
  color:#afc0d1;
  font-size:17px;
  line-height:1.75;
  max-width:1150px;
}
@media(max-width:900px){
  .people-v36{grid-template-columns:1fr 1fr}
  .person-card-v36 .person-photo{height:270px}
}
@media(max-width:700px){
  .people-v36{grid-template-columns:1fr}
  .person-card-v36 .person-photo{height:340px}
  .people-shared{grid-column:auto;padding:23px 22px 24px 26px}
  .people-shared p{font-size:16px;line-height:1.7}
}


/* V37: Über uns – gemeinsames Bild links, gemeinsamer Text rechts */
.about-head-duo{
  grid-template-columns:1fr;
  margin-bottom:28px;
}
.about-duo-grid{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(360px,.85fr);
  gap:26px;
  align-items:stretch;
}
.about-duo-photo-card,
.about-duo-copy-card{
  position:relative;
  min-width:0;
  border:1px solid rgba(64,184,255,.30);
  border-radius:22px;
  overflow:hidden;
  background:linear-gradient(145deg,rgba(7,31,52,.88),rgba(2,15,27,.97));
  box-shadow:0 18px 42px rgba(0,0,0,.22),inset 0 0 28px rgba(22,126,255,.035);
}
.about-duo-photo-card{
  min-height:470px;
  isolation:isolate;
}
.about-duo-photo{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  z-index:0;
}
.about-duo-photo-shade{
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(180deg,transparent 55%,rgba(1,9,18,.16) 70%,rgba(1,8,16,.90) 100%),
    linear-gradient(90deg,rgba(1,10,20,.08),transparent 25%,transparent 75%,rgba(1,10,20,.08));
  pointer-events:none;
}
.about-duo-photo-card:after{
  content:"";
  position:absolute;
  left:22px;right:22px;bottom:79px;
  height:1px;
  z-index:2;
  background:linear-gradient(90deg,rgba(58,215,255,.0),rgba(58,215,255,.56),rgba(255,138,42,.46),rgba(58,215,255,.56),rgba(58,215,255,.0));
  box-shadow:0 0 12px rgba(36,180,255,.22);
}
.about-duo-contact{
  position:absolute;
  bottom:22px;
  z-index:3;
  display:grid;
  gap:5px;
  min-width:0;
  max-width:43%;
  padding:12px 15px 11px;
  border:1px solid rgba(86,206,255,.20);
  border-radius:12px;
  background:rgba(1,12,23,.74);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
}
.about-duo-contact-left{left:22px}
.about-duo-contact-right{right:22px;text-align:right}
.about-duo-contact strong{
  color:#f4f8fc;
  font-family:var(--display);
  font-size:15px;
  line-height:1.2;
  letter-spacing:.02em;
  text-transform:uppercase;
  overflow-wrap:anywhere;
}
.about-duo-contact a{
  color:#57d9ff;
  font-size:13px;
  font-weight:800;
  line-height:1.25;
  transition:color .18s ease,text-shadow .18s ease;
}
.about-duo-contact a:hover,
.about-duo-contact a:focus-visible{
  color:#ff9a39;
  text-shadow:0 0 8px rgba(255,138,42,.20);
}
.about-duo-copy-card{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:38px 36px 34px;
}
.about-duo-copy-card:before{
  content:"";
  position:absolute;
  left:0;top:0;bottom:0;
  width:3px;
  background:linear-gradient(180deg,#ff9a39,#ff7819 46%,#38cfff 100%);
  box-shadow:0 0 16px rgba(255,132,32,.25);
}
.about-duo-lead{
  margin:0;
  color:#e6eef6;
  font-size:18px;
  line-height:1.65;
  font-weight:700;
}
.about-duo-divider{
  width:90px;
  height:2px;
  margin:24px 0 20px;
  background:linear-gradient(90deg,#ff8a1f,#42d7ff);
  box-shadow:0 0 12px rgba(34,180,255,.22);
}
.about-duo-copy-card h3{
  margin:0 0 14px;
  color:#ff9a39;
  font-family:var(--display);
  font-size:16px;
  line-height:1.25;
  letter-spacing:.045em;
  text-transform:uppercase;
}
.about-duo-copy-card>p:not(.about-duo-lead){
  margin:0;
  color:#afc0d1;
  font-size:17px;
  line-height:1.75;
}
.about-duo-actions{margin-top:26px}
@media(max-width:1050px){
  .about-duo-grid{grid-template-columns:1fr}
  .about-duo-photo-card{min-height:520px}
  .about-duo-copy-card{padding:32px 30px}
}
@media(max-width:700px){
  .about-duo-photo-card{min-height:430px}
  .about-duo-contact{
    bottom:14px;
    max-width:calc(50% - 20px);
    padding:10px 11px;
  }
  .about-duo-contact-left{left:14px}
  .about-duo-contact-right{right:14px}
  .about-duo-photo-card:after{left:14px;right:14px;bottom:72px}
  .about-duo-contact strong{font-size:11px}
  .about-duo-contact a{font-size:11.5px}
  .about-duo-copy-card{padding:27px 23px 26px}
  .about-duo-lead{font-size:16px;line-height:1.65}
  .about-duo-copy-card>p:not(.about-duo-lead){font-size:16px;line-height:1.7}
}
@media(max-width:460px){
  .about-duo-photo-card{min-height:390px}
  .about-duo-contact{
    max-width:none;
    left:12px;
    right:12px;
    text-align:left;
  }
  .about-duo-contact-left{bottom:66px}
  .about-duo-contact-right{bottom:12px}
  .about-duo-photo-card:after{display:none}
}


/* V38 events showcase image */
.events-showcase{position:relative;min-height:430px;border:1px solid var(--line);border-radius:24px;background:radial-gradient(circle at 50% 35%,rgba(42,168,255,.15),transparent 44%),linear-gradient(145deg,#071b2d,#030d18);overflow:hidden;box-shadow:0 24px 54px rgba(0,0,0,.28)}
.events-showcase img{display:block;width:100%;height:100%;min-height:430px;object-fit:cover;object-position:center;border-radius:24px}
@media(max-width:650px){.events-showcase{min-height:300px}.events-showcase img{min-height:300px}}


/* V39: Facebook im Footer */
.footer-facebook{display:inline-flex!important;align-items:center;gap:9px;margin-top:13px;width:max-content;color:#9ddfff!important;font-weight:800;letter-spacing:.02em;transition:color .18s ease,transform .18s ease,text-shadow .18s ease}
.footer-facebook-icon{display:grid;place-items:center;width:30px;height:30px;border:1px solid rgba(64,201,255,.38);border-radius:50%;background:linear-gradient(145deg,rgba(10,58,95,.72),rgba(3,18,31,.92));box-shadow:inset 0 0 12px rgba(35,165,255,.07),0 0 12px rgba(0,134,255,.10)}
.footer-facebook-icon svg{width:18px;height:18px;fill:currentColor}
.footer-facebook:hover,.footer-facebook:focus-visible{color:#ff9a39!important;transform:translateY(-1px);text-shadow:0 0 8px rgba(255,138,42,.18)}
.footer-facebook:hover .footer-facebook-icon,.footer-facebook:focus-visible .footer-facebook-icon{border-color:rgba(255,154,57,.60);box-shadow:0 0 14px rgba(255,138,42,.16)}


/* V49 – Mobile Breitenfix: echte Textumbrueche statt seitlichem Abschneiden.
   Gilt bewusst nur auf schmalen Displays. Desktop-Layout bleibt unveraendert. */
@media (max-width:700px){
  html,body{max-width:100%;overflow-x:clip}
  .wrap{max-width:calc(100% - 26px)}
  .head{grid-template-columns:minmax(0,1fr) auto;gap:10px}
  .brand,.header-brand-copy{min-width:0}
  .menu-btn{flex-shrink:0}

  /* Keine Grid-Mindestbreiten durch lange Woerter oder Bilder erzwungen. */
  .hero-grid,.club-grid,.events-grid,.region-grid,.finishing-head,
  .club-head,.about-head,.about-duo-grid{grid-template-columns:minmax(0,1fr)}
  .hero-grid>*,.club-grid>*,.events-grid>*,.region-grid>*,
  .club-feature,.finish-method,.offer-card,.business-outfits,
  .about-duo-copy-card,.about-duo-photo-card,.contact-box,.legal-card{
    min-width:0;max-width:100%;
  }
  img,svg,video{max-width:100%}

  /* Die breite Ethnocentric-Schrift muss bei kleinen Displays kleiner werden. */
  .hero-title{font-size:clamp(21px,6.7vw,30px);letter-spacing:.012em;line-height:1.2}
  .section-title,.club-title{
    font-size:clamp(23px,5.7vw,34px);
    line-height:1.2;letter-spacing:.012em;
    overflow-wrap:anywhere;
  }
  .club-title>span,.section-title .accent{max-width:100%;white-space:normal}
  .finish-method h3,.club-feature h3,.business-outfits h3,
  .finishing-products h3,.about-duo-copy-card h3{
    max-width:100%;overflow-wrap:anywhere;hyphens:auto;
  }
  .offer-card.offer-card-visual h3,.form-head h3{
    max-width:100%;overflow-wrap:anywhere;
  }
  .section-copy,.hero-copy,.region-copy,.club-intro p,
  .finishing-intro p,.people-shared p,.legal-card p,.legal-card li,
  .footer-col a,.about-duo-copy-card p{
    overflow-wrap:break-word;
  }
  .contact-meta,.form-grid,.footer-main{max-width:100%}
  .legal-card h1{font-size:clamp(28px,6.8vw,40px);overflow-wrap:anywhere}
}
@media (max-width:460px){
  .brand{gap:8px}
  .brand img{width:48px;height:48px;flex:0 0 48px}
  .header-brand-copy strong{font-size:clamp(10px,3.5vw,15px);letter-spacing:.01em}
  .header-brand-copy small{font-size:clamp(5px,1.55vw,6.5px);letter-spacing:.08em}
  .site-header .head{min-height:68px}
  .nav{top:66px}
  .menu-btn{width:42px;height:42px}
  .section-title,.club-title{font-size:clamp(18.5px,5.9vw,26px);line-height:1.22;letter-spacing:.012em}
  .club-feature h3,.finish-method h3{font-size:clamp(16px,4.5vw,21px);line-height:1.3}
  .offer-card.offer-card-visual h3{font-size:clamp(15px,4.8vw,17px)}
  .form-head h3{font-size:clamp(16px,5.2vw,19px)}
  /* Lange Firmen-Ueberschrift darf nicht mitten im Wort umbrechen. */
  .business-outfits h3{font-size:clamp(18px,5.6vw,23px);line-height:1.23;overflow-wrap:normal}
  .legal-card h1{font-size:clamp(22px,7vw,32px);line-height:1.18}
  .legal-card{padding:24px 18px}
}

/* Der dekorative Hero-Glow darf auf Tablet/Handy nicht ueber die Seite ragen. */
@media(max-width:900px){
  .hero-visual:before{right:0}
}


/* V50 – Facebook-Icon vom Footer in den Header verschoben.
   Die originale blaue runde Icon-Gestaltung bleibt erhalten. */
.header-facebook{
  display:inline-grid;
  place-items:center;
  justify-self:end;
  flex:0 0 auto;
  width:42px;
  height:42px;
  color:#9ddfff;
  border-radius:50%;
  transition:transform .18s ease,color .18s ease;
}
.header-facebook-icon{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border:1px solid rgba(64,201,255,.38);
  border-radius:50%;
  background:linear-gradient(145deg,rgba(10,58,95,.72),rgba(3,18,31,.92));
  box-shadow:inset 0 0 12px rgba(35,165,255,.07),0 0 12px rgba(0,134,255,.10);
  transition:border-color .18s ease,box-shadow .18s ease;
}
.header-facebook-icon svg{width:21px;height:21px;fill:currentColor}
.header-facebook:hover,.header-facebook:focus-visible{
  color:#ff9a39;
  transform:translateY(-1px);
}
.header-facebook:hover .header-facebook-icon,
.header-facebook:focus-visible .header-facebook-icon{
  border-color:rgba(255,154,57,.60);
  box-shadow:0 0 14px rgba(255,138,42,.16);
}
.header-facebook:focus-visible{outline:2px solid #54ddff;outline-offset:3px}

/* Breiter Desktop: Navigation und Facebook stehen in eigenen Grid-Spalten. */
@media(min-width:1361px){
  .head{grid-template-columns:minmax(0,auto) minmax(0,1fr) auto auto;gap:clamp(10px,1.1vw,24px)}
  .nav{gap:clamp(6px,.7vw,12px)}
}
/* Bis 1490 px bekommt das Facebook-Symbol Vorrang gegenüber dem Anfrage-CTA. */
@media(min-width:1361px) and (max-width:1490px){
  .header-cta{display:none}
  .head{grid-template-columns:minmax(0,auto) minmax(0,1fr) auto}
}
/* Kompakter Header: Firmenlogo | Facebook | Menue. */
@media(max-width:1360px){
  .head{grid-template-columns:minmax(0,1fr) auto auto;gap:12px}
  .header-facebook{grid-column:2}
  .menu-btn{grid-column:3}
}
@media(max-width:700px){
  .head{grid-template-columns:minmax(0,1fr) 40px 42px;gap:8px}
  .header-facebook{width:40px;height:40px}
  .header-facebook-icon{width:36px;height:36px}
  .header-facebook-icon svg{width:20px;height:20px}
}
@media(max-width:360px){
  .head{gap:5px;grid-template-columns:minmax(0,1fr) 36px 42px}
  .header-facebook{width:36px;height:38px}
  .header-facebook-icon{width:34px;height:34px}
}


/* V51 – einheitliches PR-Wordmark-Blau und schlanker Smartphone-Footer. */
.header-brand-copy strong,
.header-brand-copy strong em,
.footer-wordmark,
.footer-wordmark span{
  color:#3593fc;
  text-shadow:none;
}

@media(max-width:650px){
  /* Nur wirklich wichtige Footer-Inhalte: Navigation steckt im Handy-Menue. */
  .footer-main{
    grid-template-columns:minmax(0,1fr);
    gap:13px;
    padding:20px 0 13px;
  }
  .footer-main>.footer-brand{
    grid-column:auto;
    grid-template-columns:62px minmax(0,1fr);
    align-items:center;
    gap:11px;
  }
  .footer-brand .footer-logo{
    width:62px;
    height:62px;
    object-fit:contain;
  }
  .footer-wordmark{
    margin:0;
    font-size:clamp(10px,3.5vw,13px);
    line-height:1.25;
    letter-spacing:.015em;
    white-space:normal;
    overflow-wrap:normal;
  }
  .footer-brand .footer-claim{
    margin:5px 0 0;
    font-size:10px;
    line-height:1.3;
    letter-spacing:.07em;
  }
  .footer-brand .footer-text{display:none}
  .footer-main>.footer-col:not(.footer-contact){display:none}
  .footer-main>.footer-contact{
    display:block;
    padding:12px 0 0;
    margin:0;
    border-top:1px solid rgba(54,185,255,.16);
  }
  .footer-contact:before{display:none}
  .footer-contact h3{
    margin:0 0 5px;
    font-size:10px;
    letter-spacing:.15em;
    color:#9ed4ff;
  }
  .footer-contact-address{
    margin:0 0 4px;
    line-height:1.4;
  }
  .footer-contact-address>strong,
  .footer-contact-address>br{display:none}
  .footer-contact .footer-address{
    font-size:12px;
    line-height:1.5;
    color:#a4bad0;
  }
  .footer-contact .footer-links{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:3px;
    margin:0;
  }
  .footer-contact .footer-links a{
    display:block;
    width:max-content;
    max-width:100%;
    padding:1px 0;
    font-size:12px;
    line-height:1.5;
    overflow-wrap:anywhere;
  }
  .footer-contact .footer-links a:first-child{color:#b7deff}
  .footer-bottom{
    flex-direction:column;
    align-items:flex-start;
    justify-content:center;
    gap:7px;
    min-height:0;
    padding:12px 0 14px;
    font-size:10px;
    line-height:1.4;
  }
  .footer-bottom .footer-rights{display:none}
  .footer-legal{
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-start;
    gap:14px;
  }
  .footer-legal a{font-size:11px;line-height:1.4;color:#a7bed1}
}


/* V52: regionale Leistungsseiten & verlinkte Startseitenangebote */
.hero-seo-line{max-width:700px;margin:19px 0 -8px;color:#80d5ff;font-size:clamp(14px,1.3vw,17px);font-weight:750;line-height:1.5;letter-spacing:.018em}
.seo-home-services{padding-top:50px;background:linear-gradient(180deg,rgba(6,24,42,.5),transparent)}
.seo-home-services .section-title{max-width:1050px}
.seo-home-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:32px}
.seo-home-card{display:flex;min-width:0;flex-direction:column;gap:13px;padding:27px 23px;border:1px solid rgba(74,190,255,.23);border-radius:18px;background:linear-gradient(145deg,rgba(11,38,61,.94),rgba(3,17,31,.96));transition:transform .2s,border-color .2s,box-shadow .2s}
.seo-home-card:hover,.seo-home-card:focus-visible{transform:translateY(-3px);border-color:rgba(74,190,255,.65);box-shadow:0 17px 40px rgba(0,0,0,.22)}
.seo-home-card-kicker{font-size:10px;font-weight:800;color:#69d7ff;letter-spacing:.17em;text-transform:uppercase}
.seo-home-card h3{margin:0;overflow-wrap:break-word;font-family:var(--display);font-size:clamp(13px,1.05vw,17px);line-height:1.45;letter-spacing:.008em;text-transform:uppercase}
.seo-home-card p{flex:1;margin:0;color:#b5c6d6;font-size:14px;line-height:1.65}
.seo-card-link{color:#64dfff;font-size:11px;letter-spacing:.08em;font-weight:850;text-transform:uppercase}
.seo-page{min-width:0}
.seo-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:28px;color:#95b3c9;font-size:12px;line-height:1.5}
.seo-breadcrumb a:hover{color:#6ddcff}.seo-breadcrumb [aria-current]{color:#e2f3ff}
.seo-hero{padding:34px 0 78px;border-bottom:1px solid rgba(74,190,255,.12)}
.seo-hero-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:clamp(28px,5vw,75px);align-items:center}
.seo-hero-text{min-width:0}.seo-page-title{margin:0;max-width:900px;font-family:var(--display);font-size:clamp(30px,3.15vw,54px);line-height:1.19;letter-spacing:.014em;text-transform:uppercase;overflow-wrap:normal;hyphens:auto}
.seo-tagline{margin:23px 0 0;color:#79d9ff;font-size:clamp(18px,2vw,26px);font-weight:850;line-height:1.4}
.seo-lead{max-width:740px;color:#bfd0de;margin:15px 0 0;font-size:17px;line-height:1.8}
.seo-local-note{margin:26px 0 0;color:#89a9c1;font-size:12px;font-weight:800;line-height:1.5;letter-spacing:.04em}
.seo-hero-image{min-width:0;border:1px solid rgba(74,190,255,.28);border-radius:22px;overflow:hidden;aspect-ratio:1.15;background:#081c2f;box-shadow:0 22px 60px rgba(0,0,0,.2)}
.seo-hero-image img{display:block;width:100%;height:100%;object-fit:cover}
.seo-content-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:clamp(24px,5vw,80px);align-items:start}
.seo-intro h2,.seo-steps-layout h2,.seo-faq-layout h2,.seo-more-section h2,.seo-contact-box h2{font-family:var(--display);font-size:clamp(23px,2.35vw,37px);font-weight:400;line-height:1.25;letter-spacing:.007em;text-transform:uppercase;overflow-wrap:break-word;margin:0}
.seo-intro>p:last-child,.seo-steps-layout>div>p:not(.eyebrow),.seo-faq-layout>div>p:not(.eyebrow){font-size:16px;line-height:1.85;color:#b9cad7;margin:20px 0 0}
.seo-benefit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.seo-benefit{border:1px solid rgba(74,190,255,.2);border-radius:17px;background:rgba(9,33,55,.76);padding:24px;min-width:0}
.seo-benefit-mark{color:#4dc6ff;font-size:12px;letter-spacing:.12em;font-weight:900}
.seo-benefit h3{margin:15px 0 10px;font-size:17px;line-height:1.4}.seo-benefit p{margin:0;color:#b1c1cf;font-size:14px;line-height:1.7}
.seo-steps-section{background:linear-gradient(130deg,rgba(7,33,55,.9),rgba(3,16,27,.8));border-block:1px solid rgba(74,190,255,.10)}
.seo-steps-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,7vw,100px)}
.seo-text-link{display:inline-block;margin-top:22px;color:#66daff;font-weight:900;font-size:13px}
.seo-steps{counter-reset:step;list-style:none;margin:0;padding:0;display:grid;gap:14px}
.seo-steps li{position:relative;display:grid;gap:7px;padding:20px 23px 20px 76px;border:1px solid rgba(74,190,255,.2);border-radius:16px;background:rgba(6,23,40,.78)}
.seo-steps li:before{counter-increment:step;content:counter(step,decimal-leading-zero);position:absolute;left:23px;top:21px;color:#59d1ff;font-weight:900;font-size:17px}
.seo-steps strong{font-size:16px}.seo-steps span{color:#b4c8d9;font-size:14px;line-height:1.6}
.seo-faq-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,6vw,95px)}
.seo-faq-list{display:grid;gap:12px}.seo-faq{border:1px solid rgba(74,190,255,.24);border-radius:14px;background:rgba(8,32,53,.7);padding:18px 22px}
.seo-faq summary{cursor:pointer;font-size:15px;font-weight:850;line-height:1.5;padding-right:18px}.seo-faq summary::marker{color:#62d6ff}
.seo-faq p{font-size:14px;line-height:1.75;color:#b6c9da;margin:13px 0 0}
.seo-more-section{padding-top:54px;padding-bottom:54px;border-top:1px solid rgba(74,190,255,.1)}
.seo-more-links{margin-top:25px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.seo-more-links a{min-width:0;display:flex;justify-content:space-between;gap:10px;align-items:center;border:1px solid rgba(74,190,255,.25);border-radius:13px;padding:19px 20px;background:rgba(6,26,44,.9);color:#e2f4ff;font-size:14px;font-weight:800;line-height:1.5}
.seo-more-links a:hover{border-color:#58cbff}.seo-more-links a span:last-child{color:#60d4ff}
.seo-contact-section{padding-top:30px}.seo-contact-box{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:40px;border:1px solid rgba(74,190,255,.4);border-radius:23px;background:linear-gradient(115deg,rgba(9,44,73,.94),rgba(3,19,33,.96))}
.seo-contact-box p:not(.eyebrow){font-size:15px;line-height:1.6;color:#b9ccd9;margin:14px 0 0}
.seo-contact-actions{display:flex;flex-direction:column;align-items:flex-start;gap:12px;flex:0 0 auto}.seo-contact-actions>a:not(.btn){font-size:13px;color:#b9d9ed}.seo-contact-actions>a:hover{color:white}
@media(max-width:1250px){.seo-home-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.seo-home-card h3{font-size:17px}}
@media(max-width:900px){.seo-hero-grid{grid-template-columns:1fr}.seo-hero-image{max-width:650px;aspect-ratio:1.7}.seo-content-grid,.seo-steps-layout,.seo-faq-layout{grid-template-columns:1fr}.seo-contact-box{align-items:stretch;flex-direction:column}.seo-contact-actions{align-items:flex-start}}
@media(max-width:650px){.seo-home-grid{grid-template-columns:1fr;gap:11px}.seo-home-card{padding:22px}.seo-home-card h3{font-size:clamp(14px,4.7vw,17px)}.seo-home-services{padding-top:20px}.seo-hero{padding:22px 0 45px}.seo-breadcrumb{margin-bottom:21px}.seo-page-title{font-size:clamp(21px,6.3vw,30px);line-height:1.27}.seo-tagline{margin-top:15px;font-size:19px}.seo-lead{font-size:15px;line-height:1.72}.seo-hero-image{aspect-ratio:1.4}.seo-content-section,.seo-steps-section,.seo-faq-section{padding-block:55px}.seo-benefit-grid{grid-template-columns:1fr;gap:10px}.seo-benefit{padding:18px 20px}.seo-steps li{padding:18px 18px 18px 60px}.seo-steps li:before{left:17px;top:18px}.seo-more-section{padding-block:50px}.seo-more-links{grid-template-columns:1fr}.seo-contact-section{padding-top:5px;padding-bottom:65px}.seo-contact-box{padding:25px 20px}.seo-contact-actions,.seo-contact-actions .btn{width:100%}.seo-intro h2,.seo-steps-layout h2,.seo-faq-layout h2,.seo-more-section h2,.seo-contact-box h2{font-size:clamp(19px,5.7vw,27px);line-height:1.3}.hero-seo-line{margin-top:15px;margin-bottom:-8px;font-size:14px}}
@media(max-width:360px){.seo-page-title{font-size:20px}.seo-home-card h3{font-size:14px}}
/* Prevent decorative hero artwork from enlarging page width on tablets / desktops. */
.hero{overflow-x:clip}
