/* Schrift: Inter, selbst gehostet. Maße aus der Onepage-Version gemessen, Handy zuerst. */
@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/inter-400.woff2) format("woff2")}
@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/inter-600.woff2) format("woff2")}
@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/inter-700.woff2) format("woff2")}
@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(/assets/fonts/inter-800.woff2) format("woff2")}

:root{
  --dark:#1a2238;
  --dark-rgb:26,34,56;
  --key:#ffbf00;
  --light:#f8f9fa;
  --white:#fff;
  /* Fließende Überschriften zwischen 320 und 768 px, Werte wie im Original */
  --fs-big:clamp(25px,calc(5.03vw + 9.36px),48px);
  --fs-sub:clamp(16px,calc(.6285vw + 15.17px),20px);
  --gutter:24px;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:var(--white);color:var(--dark);font:400 16px/24px Inter,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
h1,h2,h3,p,ul{margin:0;padding:0}
h1,h2,h3{font-weight:800}
ul{list-style:none}
img,video,svg{display:block;max-width:100%}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
a{color:inherit}
main:focus{outline:0}

.skip{position:fixed;left:16px;top:-100px;z-index:1000;background:var(--white);padding:8px 16px;border-radius:4px}
.skip:focus{top:16px}
.key{color:var(--key)}
.only-d{display:none!important}
.wrap{width:calc(100% - var(--gutter)*2);margin-inline:auto}
.big{font-size:var(--fs-big);line-height:1.0824}

/* Kopfbereich */
.s-pre{background:#000;padding:15px 0 14px;text-align:center;color:var(--key);font-size:var(--fs-sub);line-height:1.1132;font-weight:800}
.s-head{background:#000;color:var(--white);padding:13px 0 0;text-align:center}
.s-head h1{font-size:var(--fs-big);line-height:1.0824;margin-bottom:19px}
.step-line{font-size:var(--fs-sub);line-height:1.1132;font-weight:800}
.s-hero{background:#000;padding:9px 0 0;position:relative;z-index:1}
.video-m-wrap{position:relative;width:100%;max-width:350px;margin:0 auto -97px}
.video-m{width:100%;height:auto;aspect-ratio:9/16;object-fit:cover;border-radius:15px;box-shadow:0 10px 20px rgba(0,0,0,.1);background:#000}
/* Fläche über dem Video: Der erste Tipp schaltet den Ton an. Unten bleibt die Steuerleiste bedienbar. */
.video-tap{position:absolute;left:0;right:0;top:0;bottom:64px;display:block;border-radius:15px 15px 0 0;-webkit-tap-highlight-color:transparent}
.video-sound{position:absolute;top:12px;right:12px;width:40px;height:40px;border-radius:50%;background:rgba(0,0,0,.55);display:flex;align-items:center;justify-content:center}
.video-sound svg{width:24px;height:24px;fill:#fff}
.video-sound .x{fill:none;stroke:#fff;stroke-width:2;stroke-linecap:round}

/* Schritt 2 */
.s-book{background:var(--light);padding:142px 0 19px;text-align:center}
.book-title{font-size:24px;line-height:1.1088;margin-bottom:28px}
.cta-block{text-align:center}
.btn{position:relative;display:flex;align-items:center;justify-content:center;width:80%;min-width:fit-content;max-width:100%;min-height:72px;margin:0 auto;padding:17px 36px;border-radius:4px;background-color:var(--key);background-image:radial-gradient(100% 100% at 100% 0,#ffef3d 0,var(--key) 100%);color:#000;font-size:18px;line-height:21.6px;font-weight:600;transform:translate3d(0,-4px,0);box-shadow:#a5831d 0 4px 0,rgba(45,35,66,.4) 0 2px 4px,rgba(45,35,66,.3) 0 7px 13px -3px;transition:filter .3s,background .3s,transform .3s,box-shadow .3s;-webkit-tap-highlight-color:transparent}
.btn:active{transform:translateZ(0);box-shadow:0 1px 0 #a5831d}
@media(hover:hover){.btn:hover{filter:brightness(1.1)}}
.free{margin-top:8px}
.s-cta .free{margin-top:12px}

/* Leander */
.s-team{background:var(--light);padding:18px 0 34px;margin-top:-1px}
.team-box{background:var(--white);border-radius:4px;padding:24px;text-align:center}
.team-name{font-size:var(--fs-big);line-height:1.0824;margin-bottom:5px}
.team-photo{width:100%;height:auto;aspect-ratio:279/229;object-fit:cover;object-position:50% 14%;margin-bottom:10px}
.team-role{color:var(--key);font-size:15px;line-height:22.5px;font-weight:700;margin:1px 0 11px}
.team-claim{font-size:20px;line-height:30px;margin-bottom:14px}
.team-note{color:rgba(var(--dark-rgb),.49);margin-bottom:35px}
.team-logo{width:133px;height:133px;margin:0 auto}

/* Wie wir arbeiten */
.s-steps{background:var(--white);padding:36px 0 22px;margin-top:-1px}
.s-steps .big{margin-bottom:40px}
.step{margin-bottom:42.5px}
.step:last-child{margin-bottom:0}
.step-no{color:var(--key);font-size:20px;line-height:28px;font-weight:800;margin-bottom:10px}
.step h3{font-size:24px;line-height:1.1088;margin-bottom:20px}
.step img{width:100%;height:auto;aspect-ratio:327/219;object-fit:cover;border-radius:4px;margin-bottom:15px}

.s-cta{background:var(--white);margin-top:-1px}
.s-cta-1{padding:27px 0 69px}
.s-cta-2{padding:32px 0 70px}

/* FAQ */
.s-faq{background:var(--light);padding:23px 0 50px;margin-top:-1px}
.wrap-faq{width:calc(100% - var(--gutter)*2);margin-inline:auto}
.s-faq .big{text-align:center;margin-bottom:54px}
.faq-cols{display:grid;gap:24px}
.faq-col{display:grid;gap:16px;align-content:start}
.faq{background:var(--white);border-radius:4px}
.faq-head{display:grid;grid-template-columns:1fr 26px;align-items:center;width:100%;padding:24px 24px 24px;text-align:left;font-size:20px;line-height:1.1132;font-weight:800;-webkit-tap-highlight-color:transparent}
.faq-head svg{width:26px;height:26px;transform:scale(.7);overflow:visible;transition:transform .3s}
.faq-head line{stroke:currentColor;stroke-width:2;stroke-linecap:square;transform-origin:16px 16px;transition:transform .3s}
.faq-open .faq-head svg{transform:scale(.7) rotate(180deg)}
.faq-open .faq-head line:first-child{transform:rotate(90deg)}
.faq-body{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .3s,opacity .3s,margin-top .3s}
.faq-body>div{overflow:hidden;min-height:0;visibility:hidden;transition:visibility .3s}
.faq-open .faq-body{grid-template-rows:1fr;opacity:1;margin-top:-16px}
.faq-open .faq-body>div{visibility:visible}
.faq-body p{padding:0 24px 24px;font-size:14px;line-height:21px}

/* Dunkler Abschluss */
.s-dark{background:var(--dark);color:var(--white);padding:50px 0 41px;margin-top:-1px;text-align:center}
.s-dark .big{margin-bottom:30px}
.s-dark p{font-size:18px;line-height:27px;color:rgba(255,255,255,.51)}

/* Fuß */
.s-foot{background:var(--light);padding:25px 0 45px;margin-top:-1px;text-align:center}
.copy{font-size:18px;line-height:27px;font-weight:700;margin-bottom:10px}
.foot-links{display:flex;flex-direction:column;align-items:center;gap:24px;margin-bottom:23px}
.foot-links a{display:block;position:relative;font-size:16.8px;line-height:18.48px;font-weight:800;text-decoration:none}
.foot-links a::before{content:"";position:absolute;left:0;right:0;bottom:-4.8px;height:2px;background:#d7dbe2}
.disclaimer{white-space:pre-line}

/* Modal */
.modal{position:fixed;inset:0;z-index:600;display:flex;align-items:flex-end;justify-content:center;background:rgba(0,0,0,.45);animation:fade .25s ease}
.modal[hidden]{display:none}
.modal-sheet{width:100%;max-height:calc(100dvh - 96px);overflow-y:auto;-webkit-overflow-scrolling:touch;background:var(--white);border-radius:6px 6px 0 0;padding:32px 24px 29px;animation:rise .3s cubic-bezier(.165,.84,.44,1)}
.modal-close{position:absolute;top:24px;right:24px;width:48px;height:48px;border-radius:100px;background:#273354;color:var(--white);display:flex;align-items:center;justify-content:center;z-index:2}
.modal-close svg{width:18px;height:18px;fill:currentColor}
@keyframes fade{from{opacity:0}to{opacity:1}}
@keyframes rise{from{transform:translateY(24px)}to{transform:none}}
.lead h2{font-size:32px;line-height:35.2px;text-align:center;margin-bottom:21px}
.field{margin-bottom:20px}
.field input[type=text],.field input[type=email],.field input[type=tel]{display:block;width:100%;height:56px;border:1px solid rgba(var(--dark-rgb),.15);border-radius:6px;background:var(--white);color:var(--dark);font:400 15px Inter,sans-serif;padding:13.25px 17px 14.75px;outline:0;-webkit-appearance:none;appearance:none;transition:border-color .2s,box-shadow .2s}
.field input::placeholder{color:rgba(var(--dark-rgb),.3);opacity:1}
.field input:focus{border-color:rgba(var(--dark-rgb),.45)}
.field-invalid input[type=email]{border-color:#e4572e;box-shadow:0 0 0 1px #e4572e}
.field-error{color:#e4412b;font-size:13px;line-height:16px;margin-top:6px}
.tel-wrap{position:relative}
.tel-wrap input[type=tel]{padding-left:57px}
.flag{position:absolute;left:17px;top:50%;transform:translateY(-50%);width:24px;height:18px;display:block;z-index:1}
.flag img{width:24px;height:18px;object-fit:cover}
.flag select{position:absolute;inset:-12px -8px;width:40px;height:42px;opacity:0;cursor:pointer;font-size:16px}
.field-consent{margin-bottom:21px}
.consent{display:grid;grid-template-columns:22px 1fr;column-gap:10px;font-size:15px;line-height:19.5px;cursor:pointer}
.consent input{position:absolute;opacity:0;width:22px;height:22px;margin:0}
.box{display:block;width:22px;height:22px;border:1px solid rgba(var(--dark-rgb),.35);border-radius:4px;background:rgba(var(--dark-rgb),.05);margin-top:0}
.box svg{width:100%;height:100%;fill:none;stroke:var(--dark);stroke-width:2.5;opacity:0;transition:opacity .15s}
.consent input:checked + .box svg{opacity:1}
.consent input:focus-visible + .box{outline:2px solid rgba(var(--dark-rgb),.6);outline-offset:1px}
.field-invalid .box{border-color:#e4572e}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.form-error{color:#e4412b;font-size:14px;line-height:20px;margin-bottom:12px;text-align:center}
.btn-send{width:100%;min-height:56px;border-radius:8px;background-image:radial-gradient(100% 100% at 100% 0,#ffef3d 0,var(--key) 100%);color:var(--dark);font-size:15px;line-height:18px;transform:translate3d(0,-4px,0)}
.btn-send[disabled]{opacity:.7;cursor:progress}
.lead-done{text-align:center;padding-bottom:16px}
.lead-anim{width:40%;max-width:220px;aspect-ratio:1;margin:0 auto 20px}
.lead-done h2{font-size:24px;line-height:1.1088;margin-bottom:8px}
.lead-done p{font-size:18px;line-height:27px}
body.modal-locked{overflow:hidden}

/* Cookie-Banner */
.cc-banner{position:fixed;left:0;right:0;bottom:0;z-index:999;padding:8px;font-size:13px;color:var(--dark)}
.cc-box{background:var(--white);border-radius:8px;box-shadow:rgba(0,0,0,.1) 0 20px 140px 20px}
.cc-main{padding:12px 20px 20px}
.cc-title{font-size:16px;line-height:24px;font-weight:700;margin-bottom:8px}
.cc-text{line-height:18.2px;color:rgba(var(--dark-rgb),.7)}
.cc-actions{border-top:1px solid #e9e9eb;padding:20px;display:grid;gap:8px}
.cc-btn{display:flex;align-items:center;justify-content:center;width:100%;min-height:40px;padding:5px 12px;white-space:nowrap;border-radius:4px;background:#f2f2f2;color:var(--dark);font-size:13px;line-height:15.6px;font-weight:600;transition:filter .2s}
.cc-btn:hover{filter:brightness(.96)}
.cc-primary{background:var(--key)}
.cc-link{display:inline-block;margin-top:0;color:var(--dark);opacity:.6;line-height:19px;text-decoration:none;box-shadow:0 1px 0 rgba(var(--dark-rgb),.5)}
.cc-policy{margin-top:0}
.cc-policy-m{padding-top:4px}
.cc-policy-d{display:none}
.cc-lock{position:fixed;right:20px;bottom:20px;z-index:500;width:54px;height:54px;border-radius:54px;background:rgba(255,255,255,.7);box-shadow:rgba(0,0,0,.2) 0 20px 140px 20px;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.cc-modal{position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.4);display:flex;align-items:flex-end;justify-content:center;font-size:14px;line-height:21px;color:var(--dark);animation:fade .25s ease}
.cc-sheet{width:100%;max-height:calc(100dvh - 20px);background:var(--white);border-radius:12px 12px 0 0;display:flex;flex-direction:column;animation:rise .3s cubic-bezier(.165,.84,.44,1)}
.cc-scroll{overflow-y:auto;-webkit-overflow-scrolling:touch;padding:32px 40px 24px 32px;flex:1;min-height:0}
.cc-cat{margin-bottom:40px}
.cc-cat:last-child{margin-bottom:8px}
.cc-cat-head{display:flex;align-items:center;gap:11px;cursor:pointer}
.cc-switch{position:relative;display:block;width:25px;height:16px;flex:none}
.cc-switch input{position:absolute;inset:-6px;opacity:0;width:37px;height:28px;margin:0;cursor:pointer}
.cc-switch i{display:block;width:25px;height:16px;border-radius:16px;background:#fff;border:1px solid #cfd2d8;position:relative;transition:background .2s,border-color .2s}
.cc-switch i::after{content:"";position:absolute;top:2px;left:2px;width:10px;height:10px;border-radius:50%;background:#cfd2d8;transition:transform .2s,background .2s}
.cc-switch input:checked + i{background:var(--key);border-color:var(--key)}
.cc-switch input:checked + i::after{transform:translateX(9px);background:#fff}
.cc-switch input:disabled + i{opacity:.5}
.cc-cat-required .cc-cat-head{opacity:.6}
.cc-desc{margin-top:8px;color:rgba(0,0,0,.7)}
.cc-service{margin-top:12px;background:#f2f2f2;border-radius:4px}
.cc-service summary{display:flex;justify-content:space-between;align-items:center;list-style:none;font-weight:700;padding:12px 16px;cursor:pointer}
.cc-service summary::-webkit-details-marker{display:none}
.cc-service summary::after{content:"";border-style:solid;border-width:5px 7px 5px 0;border-color:transparent #777 transparent transparent;transition:transform .2s}
.cc-service[open] summary::after{transform:rotate(-90deg)}
.cc-service p{padding:0 16px 12px;font-size:13px;line-height:18.2px}
.cc-foot{display:flex;flex-wrap:wrap;gap:8px;padding:24px 32px;border-top:1px solid #e9e9eb}
.cc-foot .cc-btn{width:auto;min-height:42px}
.cc-foot [hidden]{display:none}

/* Desktop und Tablet */
@media(min-width:769px){
  .only-d{display:revert!important}
  .only-m{display:none!important}
  :root{--w:750px;--gutter:8px;--fs-big:48px;--fs-sub:20px}
  .wrap{width:min(var(--w),100% - var(--gutter)*2)}

  .s-pre{background:#000;padding:24px 0 27px;color:var(--key);font-size:48px;line-height:1.0824}
  .s-head{background:var(--dark);padding:45px 0 0}
  .s-head h1{font-size:32px;line-height:1.1;width:66.43%;margin:0 auto 16px}
  .step-line{font-size:20px}
  .s-hero{background:var(--dark);padding:9px 0 0}
  .video-d{position:relative;width:calc(var(--wrapw) / 3 - 32px);aspect-ratio:385/689;margin:15px auto -196px;border-radius:4px;overflow:hidden;box-shadow:rgba(0,0,0,.13) 0 35px 80px;background:rgba(255,255,255,.1)}
  .video-d img,.video-d video{width:100%;height:100%;object-fit:cover;display:block}
  .play{position:absolute;left:50%;top:50%;width:96px;height:96px;margin:-48px 0 0 -48px;border-radius:100px;background:rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;transition:background .3s}
  .play:hover{background:rgba(255,255,255,.2)}
  .play svg{width:38px;height:38px;fill:#fff}

  .s-book{padding:289px 0 46px}
  .s-book .free{margin-top:18px}
  .book-title{font-size:32px;line-height:1.1;margin-bottom:41px}
  .btn{width:80%;font-size:18px;line-height:27px}
  .btn-send{width:100%;font-size:15px;line-height:22.5px}

  .s-team{padding:20px 0 0}
  .team-box{display:grid;grid-template-columns:42.96% 1fr;grid-template-rows:auto 1fr;column-gap:9.29%;padding:56px 82px 88px 81px;text-align:left}
  .team-name{grid-column:2;grid-row:1;font-size:48px;margin:0 0 7px}
  .team-photo{grid-column:1;grid-row:1 / span 2;aspect-ratio:467/388;margin:0}
  .team-text{grid-column:2;grid-row:2}
  .team-role{font-size:16px;line-height:24px;margin:0 0 11px;max-width:82.66%}
  .team-claim{font-size:18px;line-height:27px;margin-bottom:8px}
  .team-note{margin-bottom:26px}
  .team-logo{margin:0}

  .s-steps{padding:41px 0 71px}
  .s-steps .big{text-align:center;margin-bottom:60px}
  .steps{display:grid;grid-template-columns:repeat(3,1fr);column-gap:32px}
  .step{display:flex;flex-direction:column;margin:0}
  .step img{order:-1;aspect-ratio:395/265;margin-bottom:30px}

  .s-cta-1{padding:53px 0 120px}
  .s-cta-2{padding:68px 0 120px}

  .s-faq{padding:48px 0 102px}
  .wrap-faq{width:min(1400px,100% - 64px)}
  .s-faq .big{margin-bottom:54px}
  .faq-cols{grid-template-columns:1fr 1fr;gap:24px}
  .faq-col{gap:16px}
  .faq-head{padding:23.87px 24px}
  .faq-head svg{margin-block:-2px}

  .s-dark{padding:100px 0 79px}
  .s-dark .big{margin:0 auto 30px;max-width:75%}
  .s-dark p{max-width:75%;margin-inline:auto}

  .s-foot{padding:51px 0 70px}
  .foot-links{flex-direction:row;justify-content:center;margin-bottom:22px}
  .disclaimer{max-width:62.5%;margin-inline:auto}

  .modal{align-items:center}
  .modal-sheet{width:min(862.5px,75%);max-height:calc(100dvh - 48px);border-radius:6px;padding:61px 98px 60px}
  .lead h2{margin-bottom:24px}
  .field-consent{margin-bottom:20px}
  .lead-done{padding-bottom:0}

  .cc-banner{left:50%;right:auto;width:min(900px,100%);transform:translateX(-50%);padding:16px}
  .cc-box{display:flex}
  .cc-main{flex:1;padding:14px 20px 19px}
  .cc-actions{width:169px;flex:none;border-top:0;padding:20px 20px 20px 8px;align-content:start}
  .cc-policy-d{display:block;padding-top:8px;line-height:20px;height:28px}
  .cc-policy-m{display:none}
  .cc-modal{align-items:center}
  .cc-sheet{width:min(640px,92%);max-height:calc(100dvh - 48px);border-radius:12px}
}
@media(min-width:769px){:root{--wrapw:min(var(--w),100vw - 15px - var(--gutter)*2)}}
@media(min-width:992px){:root{--w:970px;--gutter:32px}}
@media(min-width:1200px){:root{--w:1150px;--gutter:32px}}
@media(min-width:1366px){:root{--w:1250px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

/* Rechtstexte: wie im Original schlicht und mittig */
.legal{font-family:"Times New Roman",Times,serif;font-size:14px;line-height:24px;text-align:center;padding:64px 0 64px;color:var(--dark)}
.legal h1{font-size:2em;font-weight:700;margin:.67em 0}
.legal h2{font-size:1.5em;font-weight:700;margin:.83em 0}
.legal h3{font-size:1.17em;font-weight:700;margin:1em 0}
.legal h4{font-size:1em;font-weight:700;margin:1.33em 0}
.legal p{margin:1em 0}
.legal ul{margin:1em 0;padding-left:40px;list-style:disc}
.legal strong{font-weight:700}
.legal a{color:#00e}
.legal-plain{font-family:Inter,sans-serif;font-size:16px;line-height:24px;white-space:pre-line;margin-top:20px}
