/* Textildruck Schwarzenbek – Grundlagen: Palette, Schrift, Überschriften, Buttons, Icon-Bewegung.
   Palette (auch so in Avada → Optionen → Farben eintragen): #FFFFFF #F3F5F8 #E0E5EB #2D79BE #2367A6 #56616D #142435 #0E1A26 */
:root{
  --awb-color1:#FFFFFF;--awb-color1-h:0;--awb-color1-s:0%;--awb-color1-l:100%;--awb-color1-a:100%;
  --awb-color2:#F3F5F8;--awb-color2-h:216;--awb-color2-s:26%;--awb-color2-l:96%;--awb-color2-a:100%;
  --awb-color3:#E0E5EB;--awb-color3-h:213;--awb-color3-s:22%;--awb-color3-l:90%;--awb-color3-a:100%;
  --awb-color4:#2D79BE;--awb-color4-h:209;--awb-color4-s:62%;--awb-color4-l:46%;--awb-color4-a:100%;
  --awb-color5:#2367A6;--awb-color5-h:209;--awb-color5-s:65%;--awb-color5-l:39%;--awb-color5-a:100%;
  --awb-color6:#56616D;--awb-color6-h:211;--awb-color6-s:12%;--awb-color6-l:38%;--awb-color6-a:100%;
  --awb-color7:#142435;--awb-color7-h:211;--awb-color7-s:45%;--awb-color7-l:14%;--awb-color7-a:100%;
  --awb-color8:#0E1A26;--awb-color8-h:210;--awb-color8-s:46%;--awb-color8-l:10%;--awb-color8-a:100%;
  --tsk-blue:var(--awb-color4);--tsk-blue-6:var(--awb-color5);--tsk-blue-7:#1B528A;--tsk-blue-50:#EAF2FA;--tsk-blue-100:#D3E4F4;--tsk-sky:#7DB8EA;--tsk-sky-2:#9CC8EE;
  --tsk-navy:var(--awb-color8);--tsk-navy-2:var(--awb-color7);--tsk-on-navy:#EEF3F8;--tsk-on-navy-mu:#A9B7C6;
  --tsk-bg:var(--awb-color2);--tsk-paper:#fff;--tsk-ink:#101820;--tsk-muted:var(--awb-color6);--tsk-line:var(--awb-color3);--tsk-warn:#B4231B;
  --tsk-f:var(--awb-typography1-font-family,"Lexend"),Arial,Helvetica,sans-serif;
  --tsk-ease:cubic-bezier(.2,.8,.2,1);
}

/* Schriften für den Gestalter (lokal, kein Google-Abruf) */
@font-face{font-family:"TSK Oswald";font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/oswald-600-latin.woff2) format("woff2")}
@font-face{font-family:"TSK Pacifico";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/pacifico-400-latin.woff2) format("woff2")}
@font-face{font-family:"TSK Playfair";font-style:normal;font-weight:800;font-display:swap;src:url(../fonts/playfair-display-800-latin.woff2) format("woff2")}

/* Überschriften: Optik über Klassen, Ebene über das Avada-Element (eine H1, H2 je Abschnitt, H3 für Karten) */
.fusion-body .tsk-h1 .fusion-title-heading,.fusion-body .tsk-h1 h1{font:600 clamp(40px,5.4vw,76px)/1.04 var(--tsk-f)!important;letter-spacing:-.035em!important;text-wrap:balance}
.fusion-body .tsk-h2 .fusion-title-heading,.fusion-body .tsk-h2 h2{font:600 clamp(30px,3.6vw,48px)/1.1 var(--tsk-f)!important;letter-spacing:-.02em!important;text-wrap:balance}
.fusion-body .tsk-h3 .fusion-title-heading,.fusion-body .tsk-h3 h3{font:600 21px/1.25 var(--tsk-f)!important;letter-spacing:-.01em!important}
.fusion-body .tsk-h3s .fusion-title-heading{font:500 17px/1.3 var(--tsk-f)!important;letter-spacing:0!important}
.fusion-body .tsk-h1 .fusion-title-heading em,.fusion-body .tsk-h2 .fusion-title-heading em{font-style:normal;color:var(--tsk-sky)}
.fusion-body .tsk-light .tsk-h2 .fusion-title-heading em,.fusion-body .tsk-soft .tsk-h2 .fusion-title-heading em{color:var(--tsk-blue)}
.fusion-body .tsk-prose h2{font:600 26px/1.2 var(--tsk-f);margin:1.6em 0 .5em}
.fusion-body .tsk-prose h3{font:600 20px/1.3 var(--tsk-f);margin:1.4em 0 .4em}
.fusion-body .tsk-prose h4{font:600 17px/1.35 var(--tsk-f);margin:1.2em 0 .3em}

.tsk-kicker p,.tsk-kicker{display:inline-flex;align-items:center;gap:10px;font:600 12.5px/1.3 var(--tsk-f);letter-spacing:.14em;text-transform:uppercase;color:var(--tsk-blue-6);margin:0}
.tsk-kicker p::before{content:"";width:12px;height:14px;background:currentColor;clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%)}
.tsk-dark .tsk-kicker p{color:var(--tsk-sky-2)}
.tsk-lead p{font:300 18px/1.6 var(--tsk-f);color:var(--tsk-muted);max-width:62ch;margin:0}
.tsk-dark .tsk-lead p{color:var(--tsk-on-navy-mu)}
@media (max-width:640px){.tsk-lead p{font-size:16.5px}}

/* Buttons (native Avada-Buttons bekommen die Klasse tsk-press) */
.tsk-press{transition:transform .18s var(--tsk-ease),box-shadow .25s,background-color .2s!important}
.tsk-press:active{transform:scale(.97)}
.tsk-press.tsk-p:hover{box-shadow:0 12px 28px -12px rgba(45,121,190,.8)}
.tsk-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:0 24px;border-radius:12px;border:0;font:500 15.5px/1 var(--tsk-f);text-decoration:none;cursor:pointer;transition:transform .18s var(--tsk-ease),background-color .2s,box-shadow .25s,color .2s}
.tsk-btn:active{transform:scale(.97)}
.tsk-btn .tsk-ico{width:18px;height:18px;transition:transform .3s var(--tsk-ease)}
.tsk-btn:hover .tsk-ico{transform:translateX(3px)}
.tsk-btn-p{background:var(--tsk-blue);color:#fff!important}
.tsk-btn-p:hover{background:var(--tsk-blue-6);box-shadow:0 12px 28px -12px rgba(45,121,190,.8)}
.tsk-btn-g{background:transparent;color:inherit;box-shadow:inset 0 0 0 1.5px currentColor}
.tsk-btn-g:hover{box-shadow:inset 0 0 0 1.5px var(--tsk-blue);background:rgba(45,121,190,.08)}

/* Icons */
.tsk-ico{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;overflow:visible;flex:none}
.tsk-ico *{transform-box:fill-box;transform-origin:center;transition:transform .5s var(--tsk-ease),opacity .4s}
.tsk-ib{width:48px;height:48px;border-radius:14px;background:var(--tsk-blue-50);color:var(--tsk-blue-6);display:inline-grid;place-items:center;flex:none;transition:background-color .25s,color .25s}
.tsk-ib .tsk-ico{width:26px;height:26px}
.tsk-hov:hover .tsk-ib{background:var(--tsk-blue);color:#fff}
.tsk-hov:hover .a-print{animation:tsk-print 1s var(--tsk-ease)}
.tsk-hov:hover .a-swing{animation:tsk-swing 1s var(--tsk-ease)}
.tsk-hov:hover .a-lift{transform:translateY(-2px) rotate(-6deg)}
.tsk-hov:hover .a-up{animation:tsk-up 1.2s ease-out infinite}
.tsk-hov:hover .a-up2{animation:tsk-up 1.2s ease-out .35s infinite}
.tsk-hov:hover .a-beat{animation:tsk-beat .9s var(--tsk-ease)}
.tsk-hov:hover .a-spin{transform:rotate(144deg)}
.tsk-hov:hover .a-press{animation:tsk-pressi .8s var(--tsk-ease)}
.tsk-hov:hover .a-wig{animation:tsk-wig .8s var(--tsk-ease)}
.tsk-hov:hover .a-flip{animation:tsk-flip .8s var(--tsk-ease)}
.tsk-hov:hover .a-pop{animation:tsk-pop .7s var(--tsk-ease)}
@keyframes tsk-print{0%{transform:scaleY(0);opacity:.2}60%{transform:scaleY(1.1);opacity:1}100%{transform:scaleY(1)}}
@keyframes tsk-swing{0%,100%{transform:rotate(0)}30%{transform:rotate(14deg)}65%{transform:rotate(-8deg)}}
@keyframes tsk-up{0%{transform:translateY(2px);opacity:0}40%{opacity:1}100%{transform:translateY(-4px);opacity:0}}
@keyframes tsk-beat{0%,100%{transform:scale(1)}30%{transform:scale(1.18)}55%{transform:scale(.94)}}
@keyframes tsk-pressi{0%,100%{transform:translateY(0)}40%{transform:translateY(3px)}}
@keyframes tsk-wig{0%,100%{transform:rotate(0)}25%{transform:rotate(-10deg)}60%{transform:rotate(7deg)}}
@keyframes tsk-flip{0%{transform:scaleX(1)}50%{transform:scaleX(-1)}100%{transform:scaleX(1)}}
@keyframes tsk-pop{0%{transform:scale(.4);opacity:0}70%{transform:scale(1.15);opacity:1}100%{transform:scale(1)}}
@keyframes tsk-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.tsk-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (prefers-reduced-motion:reduce){.tsk-chrome *,.ws-baked *,.tsk-ico *{animation:none!important;transition:none!important}}
