/* GENERIERT aus spotlight.css (scripts/ds3-build.mjs) — nur, was die BlogLayout-Seiten nutzen. */
.heroB{position:relative;min-height:680px;display:flex;align-items:center;background:var(--green-900);color:var(--paper-0);overflow:hidden}
.heroB .inner{position:relative;padding:115px var(--gutter-page) 61px;display:grid;grid-template-columns:1fr 380px;gap:72px;align-items:center}
@media(max-width:900px){.heroB .inner{grid-template-columns:1fr}}
.heroB h1{font:var(--type-hero);font-size:clamp(38px,5vw,64px);letter-spacing:-.01em;margin:24px 0 0;max-width:none}
.heroB .sub{font:400 18px/1.6 var(--font-body);color:var(--text-on-dark-muted);max-width:50ch;margin:22px 0 0}
@keyframes spin{to{transform:rotate(360deg)}}
.est-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:24px;margin-top:34px;align-items:stretch}
@media(max-width:860px){.est-grid{grid-template-columns:1fr}}
.est-form{background:#fcfbf60d;border-radius:var(--radius-card);box-shadow:inset 0 0 0 1.5px var(--border-line-on-dark);padding:28px 30px;display:flex;flex-direction:column;gap:6px}
.est-qtext b{display:block;font:700 16px var(--font-body);color:var(--paper-0)}
.est-qtext span{display:block;font:400 13px/1.45 var(--font-body);color:var(--text-on-dark-muted);margin-top:3px}
.est-slider-wrap{padding-top:22px}
.est-slider-top{display:flex;align-items:baseline;justify-content:space-between;font:500 13px var(--font-body);color:var(--text-on-dark-muted)}
.est-slider-top b{color:var(--paper-0);font:700 16px var(--font-display)}
.est-slider{position:relative;height:5px;border-radius:3px;background:#fcfbf62e;margin:18px 0 8px;cursor:pointer;touch-action:none;transition:background var(--dur-micro) var(--ease)}
.est-slider .bf-fill{position:absolute;left:0;top:0;bottom:0;width:30%;border-radius:3px;background:var(--teal-400);transition:filter var(--dur-micro) var(--ease)}
.est-slider .bf-thumb{position:absolute;left:30%;top:50%;transform:translate(-50%,-50%);width:22px;height:22px;border-radius:50%;background:var(--yellow-500);box-shadow:0 0 0 6px #ffe26b2e;transition:transform var(--dur-micro) var(--ease)}
.est-slider .bf-thumb:after{content:"";position:absolute;inset:0;border-radius:50%;box-shadow:0 0 0 1.5px var(--yellow-500);opacity:0;pointer-events:none}
@media(prefers-reduced-motion:no-preference){.est-slider .bf-thumb:after{animation:est-thumb 2.4s var(--ease) infinite}}
@keyframes est-thumb{0%{opacity:.55;transform:scale(1)}65%{opacity:0;transform:scale(2.3)}to{opacity:0;transform:scale(2.3)}}
.est-slider:hover{background:#fcfbf657}
.est-slider:hover .bf-fill{filter:brightness(1.14)}
.est-slider:hover .bf-thumb{transform:translate(-50%,-50%) scale(1.3);box-shadow:0 0 0 10px #ffe26b3d}
.est-slider:hover .bf-thumb:after{animation-play-state:paused;opacity:0}
.est-slider:active .bf-thumb{transform:translate(-50%,-50%) scale(1.18)}
.est-slider-scale{display:flex;justify-content:space-between;font:500 10.5px var(--font-mono);color:var(--text-on-dark-muted)}
.est-result{background:var(--green-700);border-radius:var(--radius-card);box-shadow:inset 0 0 0 1.5px var(--border-line-on-dark);padding:30px 30px 26px;display:flex;flex-direction:column}
.est-result.is-off{opacity:.55}
.est-chat-bubble{position:relative;background:var(--paper-0);color:var(--green-900);border-radius:14px 14px 14px 4px;padding:11px 14px 9px;box-shadow:0 6px 18px #00000038;max-width:84%}
.est-chat-bubble p{font:400 13px/1.5 var(--font-body);color:var(--text-strong);margin:0}
body[data-warmth=warm]{--green-900:#16271b;--green-700:#294230;--yellow-500:#F2B33A;--teal-400:#5FB89A}
body[data-warmth=warmer]{--green-900:#1e2716;--green-700:#36401f;--yellow-500:#F0A638;--teal-400:#CE8C4C}
body[data-soft=soft]{--radius-card:28px;--radius-control:15px}
body[data-soft=soft] .prog-card,body[data-soft=soft] .est-form,body[data-soft=soft] .est-result,body[data-soft=soft] .stk-card,body[data-soft=soft] .case,body[data-soft=soft] .kn,body[data-soft=soft] .fz-card{border-radius:26px}
.bookm{position:fixed;inset:0;z-index:300;display:flex;align-items:center;justify-content:center;padding:24px}
.bookm[hidden]{display:none}
.bookm-backdrop{position:absolute;inset:0;background:#08120da8;backdrop-filter:blur(3px)}
.bookm-card{position:relative;z-index:1;display:grid;grid-template-columns:300px 1fr;width:min(960px,100%);max-height:92vh;background:var(--paper-0);border-radius:var(--radius-card);overflow:hidden;box-shadow:0 40px 100px #00000080}
.bookm-card::-webkit-scrollbar{width:10px}
.bookm-card::-webkit-scrollbar-thumb{background:var(--border-line);border-radius:999px}
.bookm-card::-webkit-scrollbar-track{background:transparent}
.bookm-x{position:absolute;top:14px;right:14px;z-index:3;width:34px;height:34px;border-radius:50%;border:none;cursor:pointer;background:var(--paper-0);color:var(--green-900);font-size:18px;line-height:1;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px #08160f47;transition:transform var(--dur-micro) var(--ease),background var(--dur-micro) var(--ease),color var(--dur-micro) var(--ease)}
.bookm-x:hover{background:var(--yellow-500);color:var(--green-900);transform:rotate(90deg)}
.bookm-side{position:relative;background:var(--green-900);color:var(--paper-0);display:flex;flex-direction:column}
.bookm-photo{width:100%;height:230px;object-fit:cover;object-position:center 4%;background:var(--green-900)}
.bookm-side-cap{padding:22px 24px 26px}
.bookm-side-cap h3{font:700 24px var(--font-display);margin:8px 0 0}
.bookm-side-cap p{font:400 13.5px/1.6 var(--font-body);color:var(--text-on-dark-muted);margin:10px 0 0}
.bookm-list{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-direction:column;gap:9px}
.bookm-list li{position:relative;padding-left:26px;font:500 13.5px/1.4 var(--font-body);color:var(--paper-0)}
.bookm-list li:before{content:"\2713";position:absolute;left:0;top:-1px;color:var(--yellow-500);font-weight:700}
.bookm-cal{min-height:660px;height:100%;overflow:hidden;background:var(--paper-0);display:flex;align-items:stretch;justify-content:stretch}
.bookm-cal .calendly-inline-widget,.bookm-cal iframe{min-width:320px;width:100%;height:100%!important}
.bookm-fallback{font:600 14px var(--font-body);color:var(--green-500)}
.gbn{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center;text-decoration:none;color:var(--paper-0);background:linear-gradient(140deg,#123a2b,#0b1c16);border-radius:var(--radius-card);box-shadow:inset 0 0 0 1.5px var(--border-line-on-dark);padding:44px 46px;transition:transform var(--dur-standard) var(--ease),box-shadow var(--dur-standard) var(--ease)}
.gbn:hover{transform:translateY(-4px);box-shadow:inset 0 0 0 1.5px #ffe26b66,0 30px 70px #0006}
@media(max-width:860px){.gbn{grid-template-columns:1fr;padding:32px}}
.indcard{flex:0 0 auto;width:240px}
.indcard{position:relative;height:320px;width:240px;flex:0 0 auto;border-radius:var(--radius-card);overflow:hidden;text-decoration:none;display:flex;align-items:flex-end;box-shadow:var(--border-card)}
.indcard img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease);filter:saturate(.55)}
.indcard:hover img{transform:scale(1.07)}
.indcard b{position:relative;z-index:1;padding:20px 22px;font:700 20px var(--font-display);color:var(--paper-0)}
.indcard:after{content:"";position:absolute;top:16px;right:16px;z-index:1;width:30px;height:30px;border-radius:50%;background:var(--yellow-500);opacity:0;transform:scale(.6);transition:opacity var(--dur-standard) var(--ease),transform var(--dur-standard) var(--ease);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230E241C' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 17 17 7M9 7h8v8'/%3E%3C/svg%3E");background-size:16px;background-position:center;background-repeat:no-repeat}
.indcard:hover:after{opacity:1;transform:scale(1)}
.csl-slide{position:absolute;inset:0;display:grid;grid-template-columns:1fr 1.1fr;opacity:0;visibility:hidden;transition:opacity .55s var(--ease),visibility .55s var(--ease)}
.csl-slide.on{opacity:1;visibility:visible}
.csl-dot{height:5px;width:24px;border-radius:3px;background:#fcfbf659;border:none;padding:0;cursor:pointer;position:relative;overflow:hidden;transition:width var(--dur-standard) var(--ease)}
.csl-dot:after{content:"";position:absolute;left:0;top:0;bottom:0;width:0;background:var(--paper-0);border-radius:3px}
.csl-dot.on{width:34px}
.csl-dot.on:after{width:100%;transition:width 4s linear}
ransform var(--dur-standard) var(--ease),box-shadow var(--dur-standard) var(--ease)} .rc-card:hover{transform:translateY(-4px);box-shadow:var(--border-card),var(--shadow-float)}
.tst-slide{position:absolute;inset:0;display:grid;grid-template-columns:1.05fr .95fr;opacity:0;visibility:hidden;transform:translate(38px);transition:opacity .6s var(--ease),transform .6s var(--ease),visibility .6s var(--ease)}
.tst-slide.on{opacity:1;visibility:visible;transform:none}
@media(prefers-reduced-motion:reduce){.tst-slide .tst-img,.tst-slide{transition:none;transform:none}}
.contact-wrap{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.contact-intro h2{font:var(--type-h2);color:var(--paper-0);margin:14px 0 0}
.contact-intro p{font:400 15px/1.6 var(--font-body);color:var(--text-on-dark-muted);margin:14px 0 0;max-width:42ch}
.contact-form{display:flex;flex-direction:column;gap:12px;background:#fcfbf60d;box-shadow:inset 0 0 0 1.5px var(--border-line-on-dark);border-radius:var(--radius-card);padding:26px}
.cf-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.contact-form input,.contact-form textarea{width:100%;background:var(--paper-0);border:none;border-radius:12px;padding:13px 15px;font:400 14px var(--font-body);color:var(--green-900);box-shadow:inset 0 0 0 1.5px transparent;transition:box-shadow var(--dur-standard) var(--ease)}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--text-muted)}
.contact-form input:focus,.contact-form textarea:focus{outline:none;box-shadow:inset 0 0 0 1.5px var(--green-900),0 0 0 3px #ffe26b99}
.contact-form textarea{resize:vertical;font-family:var(--font-body)}
.contact-form button{margin-top:4px;justify-content:center}
.contact-wrap .bf-btn .bf-arrow{color:var(--green-900)}
@media(max-width:760px){.contact-wrap{grid-template-columns:1fr;gap:28px}.cf-row{grid-template-columns:1fr}}
.tst-dot{height:5px;width:24px;border-radius:3px;background:#fcfbf647;border:none;padding:0;cursor:pointer;position:relative;overflow:hidden;transition:width var(--dur-standard) var(--ease)}
.tst-dot:after{content:"";position:absolute;left:0;top:0;bottom:0;width:0;background:var(--yellow-500);border-radius:3px}
.tst-dot.on{width:34px}
.tst-dot.on:after{width:100%;transition:width 3.5s linear}
.cta-spot{animation:cta-spot-move 10s ease-in-out infinite}
@keyframes cta-spot-move{0%{transform:scale(1.2) translate(0)}50%{transform:scale(1.3) translate(-5%,4%)}to{transform:scale(1.2) translate(0)}}
@media(prefers-reduced-motion:reduce){.cta-spot{animation:none}}
.tst-dot{background:#fcfbf680}
.tst-dot:after{background:var(--paper-0)}
@media(max-width:760px){.tst-slide.on{flex-direction:column!important}}
@media(max-width:760px){.tst-slide{position:relative;grid-template-columns:1fr;visibility:visible;opacity:1;display:none}.tst-slide.on{display:flex;flex-direction:column-reverse}}
@media(max-width:760px){.csl-slide{position:relative;grid-template-columns:1fr;visibility:visible;opacity:1;display:none}.csl-slide.on{display:grid}}
@media(max-width:760px){.bookm-card{grid-template-columns:1fr;max-height:94vh;overflow:auto}.bookm-photo{height:180px}.bookm-cal{min-height:560px}}
.heroB .bf-btn--ghost{color:var(--paper-0);box-shadow:inset 0 0 0 1.5px #fcfbf699}
.heroB .bf-btn--ghost:hover{box-shadow:inset 0 0 0 1.5px var(--paper-0);background:#fcfbf60f}
body[data-type=warm]{--font-display:"Bricolage Grotesque","Saira Condensed",sans-serif;--font-body:"Hanken Grotesk","Archivo",ui-sans-serif,sans-serif}
body[data-type=warm] h1,body[data-type=warm] h2,body[data-type=warm] h3{letter-spacing:-.015em}
.mega--programs{min-width:940px;padding:0;overflow:hidden;border:1.5px solid var(--border-line);border-radius:var(--radius-menu)}
.pm-grid{display:grid;grid-template-columns:1.3fr 1fr .82fr;align-items:stretch}
.pm-col{padding:24px 26px}
.pm-col+.pm-col{border-left:1.5px solid var(--border-line)}
.pm-col--g{background:transparent}
.pm-col h4{font:var(--type-meta);letter-spacing:.14em;text-transform:uppercase;color:var(--green-500);margin:0 0 14px}
.pm-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
.pm-col li a{display:block;padding:7px 10px;margin:0 -10px;border-radius:9px;font:500 14.5px var(--font-body);color:var(--text-strong-muted);text-decoration:none;transition:background var(--dur-micro) var(--ease),color var(--dur-micro) var(--ease)}
.pm-col li a:hover{background:var(--paper-1);color:var(--green-900)}
.pm-feat{position:relative;display:flex;align-items:flex-end;min-height:100%;text-decoration:none;color:#fff;overflow:hidden}
.pm-feat img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}
.pm-feat:hover img{transform:scale(1.05)}
.pm-feat:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0b1c1673,#0b1c16f5)}
.pm-feat-cap{position:relative;z-index:1;padding:26px 26px 30px}
.pm-feat:hover{filter:saturate(1.05)}
.pm-foot{margin-top:18px;padding-top:16px;border-top:1.5px solid var(--border-line)}
.pm-foot .bf-link{font-size:14px}
.pm-chip{display:inline-flex;align-items:center;background:var(--yellow-500);color:var(--green-900);border-radius:var(--radius-pill);padding:5px 12px;font:700 11px var(--font-mono);letter-spacing:.06em;text-transform:uppercase}
.pm-feat-cap b{display:block;font:700 27px/1.04 var(--font-display);margin:14px 0 0}
.pm-feat-cap .desc{display:block;font:400 13.5px/1.5 var(--font-body);color:var(--text-on-dark-muted);margin:8px 0 0;max-width:30ch}
.pm-go{display:inline-flex;align-items:center;gap:7px;font:600 13.5px var(--font-body);color:var(--yellow-500);margin-top:14px}
.pm-feat:hover .pm-go .bf-arrow{transform:translate(3px,-3px)}
.pm-go .bf-arrow{transition:transform var(--dur-micro) var(--ease);width:12px;height:12px}
.heroB .bf-marker{position:relative;white-space:nowrap;z-index:0}
.heroB .bf-marker:after{content:"";position:absolute;inset:auto 0 .22em;height:11px;z-index:-1;border-radius:0;transform-origin:left center;background:var(--yellow-500);clip-path:polygon(0 0,100% 38%,100% 100%,0 100%)}
.heroB .bf-marker.is-armed:after{transform:scaleX(0) rotate(-2deg)}
.heroB .bf-marker.is-drawn:after{animation:bf-uline-draw .8s var(--ease) both,bf-uline-pulse 3.4s var(--ease) 1s infinite}
@keyframes bf-uline-draw{0%{transform:scaleX(0) rotate(-2deg)}to{transform:scaleX(1) rotate(-2deg)}}
@keyframes bf-uline-pulse{0%,to{transform:scaleX(1) scaleY(1) rotate(-2deg)}50%{transform:scaleX(1) scaleY(1.22) rotate(-2deg)}}
@media(prefers-reduced-motion:reduce){.heroB .bf-marker.is-drawn:after{animation:none;transform:scaleX(1) rotate(-2deg)}}
@media(max-width:600px){.sec{padding:58px 0}.heroB{min-height:auto}.heroB .inner{padding:96px var(--gutter-page) 44px;gap:0}.heroB h1{font-size:clamp(30px,8.6vw,42px)}.heroB .sub{font-size:15.5px;margin-top:18px;max-width:none}.contact-form{padding:20px}}
@media(max-width:980px){.nav-in{gap:14px;height:64px}.lang-dd{display:none}.nav-cta{margin-left:auto;gap:10px}.nav-cta>.bf-btn{display:inline-flex!important}.mobile-menu .lang-dd{display:block;margin:2px 0 12px}.mobile-menu .lang-dd .lang-dd-btn{display:none}.mobile-menu .lang-dd .lang-dd-menu{position:static;opacity:1;visibility:visible;transform:none;background:none;box-shadow:none;border:none;padding:0;min-width:0;display:flex;gap:10px}.mobile-menu .lang-dd-opt{flex:1;justify-content:center;background:none;color:var(--paper-0);box-shadow:inset 0 0 0 1.5px var(--border-line-on-dark);border-radius:10px;padding:11px}.mobile-menu .lang-dd-opt:hover{background:#fcfbf60f}.mobile-menu .lang-dd-opt.is-on{color:var(--yellow-500);box-shadow:inset 0 0 0 1.5px var(--yellow-500);font-weight:700}body.menu-open .nav{background:var(--green-900)}body.menu-open .nav .logo img{filter:brightness(0) invert(1)}body.menu-open .mobile-toggle{box-shadow:inset 0 0 0 1.5px var(--border-line-on-dark)}body.menu-open .mobile-toggle span{background:var(--paper-0)}body.menu-open .mobile-menu a:not(.bf-btn){color:var(--paper-0);border-bottom-color:var(--border-line-on-dark)}.mm-group{border-bottom:1.5px solid var(--border-line-on-dark)}.mm-group summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:15px 0;font:700 17px var(--font-display);color:var(--paper-0)}.mm-group summary::-webkit-details-marker{display:none}.mm-group summary:after{content:"";width:9px;height:9px;border-right:2px solid var(--paper-0);border-bottom:2px solid var(--paper-0);transform:rotate(45deg);transition:transform var(--dur-standard) var(--ease)}.mm-group[open] summary:after{transform:rotate(-135deg)}.mm-sub{display:grid;grid-template-rows:0fr;transition:grid-template-rows .32s var(--ease)}.mm-group[open] .mm-sub{grid-template-rows:1fr}.mm-sub>*{overflow:hidden;min-height:0;display:flex;flex-direction:column}.mm-group .mm-sub a{padding:8px 0 8px 16px!important;font-size:14.5px!important;border-bottom:none!important;opacity:.82}.mm-group .mm-sub a:first-child{padding-top:2px!important}.mm-group .mm-sub a:last-child{padding-bottom:14px!important}}
