/*
Theme Name: NextStep
Author: Alexandra Schredl
Version: 3.2
License: GNU General Public License v2 or later
Text Domain: nextstep
*/


:root {
  --black: #080808;
  --deep: #0d0d10;
  /* Silver/diamond palette */
  --silver: #d8e6f0;
  --silver-light: #f0f6fc;
  --silver-bright: #f0f4f8;
  --silver-dim: rgba(200,212,224,0.12);
  --silver-border: rgba(200,212,224,0.2);
  --silver-mid: rgba(216,230,240,0.85);
  /* Crystal blue-white highlight */
  --crystal: #dde8f5;
  --crystal-glow: rgba(180,210,240,0.15);
  --white: #f7f5f0;
  --wonder: #3d2560;
  --wonder-mid: #6b4fa0;
  --wonder-light: #9b7fd4;
  --wonder-glow: rgba(107,79,160,0.18);
  --green-light: #4aad7a;
  --text-dim: rgba(247,245,240,0.88);
  --text-mid: rgba(247,245,240,0.95);
}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:'DM Sans',sans-serif;background:#080808 !important;color:#f7f5f0;overflow-x:hidden;}
::-webkit-scrollbar{width:3px;}
::-webkit-scrollbar-track{background:var(--black);}
::-webkit-scrollbar-thumb{background:var(--silver);}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:200;padding:14px 56px;display:flex;align-items:center;justify-content:space-between;background:rgba(8,8,8,0.92);backdrop-filter:blur(16px);border-bottom:1px solid var(--silver-border);}
.nav-brand{text-decoration:none;display:flex;align-items:center;gap:14px;}
.nav-logo{height:36px;width:auto;object-fit:contain;}
.nav-brand-text{display:flex;flex-direction:column;gap:1px;}
.nav-brand-main{font-family:'Syne',sans-serif;font-size:1rem;font-weight:800;letter-spacing:3px;text-transform:uppercase;color:var(--white);}
.nav-brand-main span{color:var(--silver-light);}
.nav-brand-sub{font-size:0.56rem;letter-spacing:2px;text-transform:uppercase;color:rgba(247,245,240,0.88);}
.nav-links{display:flex;gap:28px;list-style:none;align-items:center;}
.nav-links a{font-family:'Syne',sans-serif;font-size:0.67rem;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-mid);text-decoration:none;transition:color .3s;}
.nav-links a:hover{color:var(--silver-light);}
.nav-cta{background:linear-gradient(135deg,var(--silver) 0%,var(--silver-bright) 100%);color:var(--black);font-family:'Syne',sans-serif;font-size:0.63rem;font-weight:800;letter-spacing:2px;text-transform:uppercase;padding:10px 22px;text-decoration:none;transition:all .3s;}
.nav-cta:hover{background:var(--silver-bright);box-shadow:0 4px 20px rgba(200,212,224,0.25);}

/* HERO */
#hero{min-height:100vh;display:flex;align-items:center;padding:140px 56px 100px;position:relative;overflow:hidden;background:#080808;}
.hero-bg{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 60% 60% at 80% 20%,rgba(200,212,224,0.05) 0%,transparent 60%),radial-gradient(ellipse 50% 70% at 5% 90%,rgba(61,37,96,0.18) 0%,transparent 55%);}
.hero-grid{position:absolute;inset:0;pointer-events:none;
  background-image:linear-gradient(rgba(200,212,224,0.025) 1px,transparent 1px),linear-gradient(90deg,rgba(200,212,224,0.025) 1px,transparent 1px);
  background-size:60px 60px;}

/* Sparkle decorations */
.sparkle{display:none;}



@keyframes sparkle{0%,100%{opacity:0.2;transform:scale(1);}50%{opacity:1;transform:scale(1.3);}}

.hero-inner{position:relative;max-width:880px;}
.hero-badge{display:inline-flex;align-items:center;gap:10px;font-family:'Syne',sans-serif;font-size:0.62rem;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--silver);margin-bottom:26px;animation:up .9s ease both;}
.hero-badge::before{content:'';display:block;width:26px;height:1px;background:var(--silver);}
.badge-dot{width:5px;height:5px;border-radius:50%;background:var(--silver-light);animation:pulse 2s ease-in-out infinite;}

.hero-h1{font-family:'Cormorant Garamond',serif;font-size:clamp(4rem,9.5vw,8rem);font-weight:700;line-height:.93;animation:up .9s .1s ease both;}
.silver{background:linear-gradient(135deg,var(--silver) 0%,var(--silver-bright) 50%,var(--silver) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.italic{font-style:italic;}
.outline{-webkit-text-stroke:1.5px rgba(247,245,240,.28);color:transparent;}

.hero-desc{font-size:1rem;font-weight:300;color:var(--text-mid);line-height:1.8;max-width:490px;margin-top:24px;animation:up .9s .22s ease both;}
.hero-pills{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px;animation:up .9s .34s ease both;}
.pill{font-family:'Syne',sans-serif;font-size:0.58rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;padding:5px 12px;border:1px solid var(--silver-border);color:var(--silver);background:var(--silver-dim);}
.hero-actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:40px;animation:up .9s .46s ease both;}

.btn-silver{background:linear-gradient(135deg,var(--silver) 0%,var(--silver-bright) 100%);color:var(--black);font-family:'Syne',sans-serif;font-size:0.7rem;font-weight:800;letter-spacing:2px;text-transform:uppercase;padding:14px 32px;border:none;text-decoration:none;display:inline-block;transition:all .3s;cursor:pointer;}
.btn-silver:hover{background:var(--silver-bright);transform:translateY(-2px);box-shadow:0 8px 28px rgba(200,212,224,0.25);}
.btn-ghost{background:transparent;color:var(--white);font-family:'Syne',sans-serif;font-size:0.7rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:14px 32px;border:1px solid rgba(247,245,240,.2);text-decoration:none;display:inline-block;transition:all .3s;cursor:pointer;}
.btn-ghost:hover{border-color:var(--silver);color:var(--silver);}

.hero-cs{margin-top:48px;padding:16px 22px;border:1px solid var(--silver-border);background:var(--silver-dim);display:inline-flex;align-items:center;gap:16px;animation:up .9s .58s ease both;}
.hero-cs-logo{height:28px;width:auto;object-fit:contain;}
.hero-cs-text{font-size:0.79rem;color:var(--text-mid);line-height:1.5;}
.hero-cs-text a{color:var(--silver-light);text-decoration:none;}

/* SECTION SHARED */
section{padding:96px 56px;}
.sec-label{font-family:'Syne',sans-serif;font-size:0.59rem;font-weight:700;letter-spacing:4px;text-transform:uppercase;color:var(--silver);margin-bottom:12px;display:flex;align-items:center;gap:10px;}
.sec-label::before{content:'';display:block;width:20px;height:1px;background:var(--silver);}
.sec-h2{font-family:'Cormorant Garamond',serif;font-size:clamp(2.3rem,4.5vw,3.8rem);font-weight:700;line-height:1.05;margin-bottom:13px;}
.sec-h2 em{font-style:italic;color:var(--silver-light);}
.sec-h2 .outline{-webkit-text-stroke:1.5px rgba(247,245,240,.28);color:transparent;}
.sec-intro{font-size:.91rem;color:var(--text-mid);line-height:1.8;max-width:540px;margin-bottom:52px;}

/* PILLARS */
#leistungen{background:var(--black);}
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--silver-border);border:1px solid var(--silver-border);margin-top:52px;}
.pillar{background:var(--black);padding:46px 36px;position:relative;overflow:hidden;transition:background .4s;}
.pillar::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--silver),var(--silver-bright),var(--silver));transform:scaleX(0);transform-origin:left;transition:transform .5s;}
.pillar:hover{background:rgba(200,212,224,0.04);}
.pillar:hover::after{transform:scaleX(1);}
.pillar-num{font-family:'Cormorant Garamond',serif;font-size:5.5rem;font-weight:700;color:rgba(200,212,224,0.06);position:absolute;top:14px;right:18px;line-height:1;pointer-events:none;}
.pillar-icon{font-size:1.9rem;margin-bottom:16px;display:block;}
.pillar-name{font-family:'Syne',sans-serif;font-size:.92rem;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:var(--white);margin-bottom:4px;}
.pillar-claim{font-family:'Cormorant Garamond',serif;font-size:.92rem;font-style:italic;color:var(--silver);margin-bottom:14px;}
.pillar-desc{font-size:.83rem;color:rgba(247,245,240,0.88);line-height:1.75;}
.pillar-list{list-style:none;margin-top:14px;display:flex;flex-direction:column;gap:6px;}
.pillar-list li{font-size:.79rem;color:var(--text-mid);padding-left:13px;position:relative;}
.pillar-list li::before{content:'→';position:absolute;left:0;color:var(--silver);font-size:.66rem;}
.pillar-link{display:inline-flex;align-items:center;gap:7px;margin-top:24px;font-family:'Syne',sans-serif;font-size:.62rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--silver);text-decoration:none;transition:gap .3s;}
.pillar-link:hover{gap:13px;}
.pillar-link::after{content:'→';}

/* COACHING */
#coaching{padding:96px 56px;background:linear-gradient(180deg,var(--black) 0%,var(--deep) 100%);position:relative;overflow:hidden;}
.orb{position:absolute;border-radius:50%;pointer-events:none;}
.orb1{width:600px;height:600px;background:radial-gradient(circle,var(--wonder-glow) 0%,transparent 65%);top:-160px;right:-120px;}
.orb2{width:350px;height:350px;background:radial-gradient(circle,var(--crystal-glow) 0%,transparent 65%);bottom:-60px;left:-70px;}
.coaching-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:72px;align-items:start;margin-top:52px;}
.coaching-quote{font-family:'Cormorant Garamond',serif;font-size:1.25rem;font-style:italic;color:var(--wonder-light);border-left:2px solid var(--wonder-mid);padding-left:16px;margin:20px 0 17px;line-height:1.5;}
.coaching-body{font-size:.87rem;color:var(--text-mid);line-height:1.8;margin-bottom:13px;}
.wonder-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:20px;}
.wtag{font-family:'Syne',sans-serif;font-size:.57rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;padding:4px 10px;border:1px solid rgba(107,79,160,.25);color:var(--wonder-light);background:rgba(107,79,160,.07);}

/* Phases */
.phases{display:flex;flex-direction:column;gap:3px;}
.phase{border:1px solid rgba(107,79,160,.2);background:rgba(107,79,160,.03);overflow:hidden;transition:border-color .3s;}
.phase.open{border-color:rgba(107,79,160,.5);}
.phase-hd{padding:16px 20px;display:flex;align-items:center;gap:12px;cursor:pointer;transition:background .3s;user-select:none;}
.phase-hd:hover{background:rgba(107,79,160,.08);}
.ph-emoji{font-size:1.2rem;flex-shrink:0;width:26px;text-align:center;}
.ph-info{flex:1;}
.ph-title{font-family:'Syne',sans-serif;font-size:.77rem;font-weight:700;letter-spacing:.5px;}
.ph-sub{font-size:.66rem;color:var(--wonder-light);margin-top:2px;}
.ph-chev{color:var(--wonder-light);font-size:.72rem;transition:transform .3s;}
.phase.open .ph-chev{transform:rotate(180deg);}
.phase-bd{max-height:0;overflow:hidden;transition:max-height .4s ease;}
.phase.open .phase-bd{max-height:260px;}
.phase-content{padding:0 20px 15px 58px;font-size:.8rem;color:var(--text-mid);line-height:1.7;}
.phase-content ul{list-style:none;margin-top:7px;display:flex;flex-direction:column;gap:4px;}
.phase-content ul li{padding-left:13px;position:relative;}
.phase-content ul li::before{content:'✦';position:absolute;left:0;font-size:.48rem;color:var(--wonder-light);top:4px;}

/* Sessions */
.sessions-row{display:flex;gap:3px;overflow-x:auto;padding-bottom:6px;margin-top:26px;}
.sess{flex:0 0 150px;border:1px solid rgba(107,79,160,.2);background:rgba(107,79,160,.04);padding:20px 15px;transition:all .3s;}
.sess:hover{background:rgba(107,79,160,.1);border-color:rgba(107,79,160,.5);}
.sess-n{font-family:'Cormorant Garamond',serif;font-size:2.6rem;font-weight:700;color:rgba(107,79,160,.2);line-height:1;}
.sess-e{font-size:1.05rem;margin:4px 0;display:block;}
.sess-t{font-family:'Syne',sans-serif;font-size:.65rem;font-weight:700;letter-spacing:.5px;color:var(--white);line-height:1.3;}
.sess-d{font-size:.6rem;color:var(--wonder-light);margin-top:5px;}

/* Doug Ingrad */
.doug-box{margin-top:60px;padding:36px;border:1px solid rgba(107,79,160,.3);background:rgba(107,79,160,.05);position:relative;overflow:hidden;}
.doug-box::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--wonder-mid),transparent);}

/* LEVEL UP */
#levelup{padding:96px 56px;background:var(--deep);position:relative;overflow:hidden;}
.lu-glow{position:absolute;width:450px;height:450px;border-radius:50%;background:radial-gradient(circle,rgba(200,212,224,0.06) 0%,transparent 65%);bottom:-70px;right:-70px;pointer-events:none;}
.lu-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:72px;align-items:center;margin-top:52px;}
.steps{display:flex;flex-direction:column;gap:2px;}
.step{display:flex;align-items:center;gap:16px;padding:15px 18px;border:1px solid var(--silver-border);background:rgba(200,212,224,0.03);transition:all .3s;position:relative;overflow:hidden;}
.step::before{content:'';position:absolute;left:0;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,var(--silver),var(--silver-bright));transform:scaleY(0);transform-origin:top;transition:transform .4s;}
.step:hover{background:rgba(200,212,224,0.07);}
.step:hover::before{transform:scaleY(1);}
.step-n{font-family:'Cormorant Garamond',serif;font-size:1.8rem;font-weight:700;color:rgba(200,212,224,0.65);flex-shrink:0;width:26px;text-align:center;line-height:1;}
.step-t{font-family:'Syne',sans-serif;font-size:.75rem;font-weight:700;letter-spacing:.5px;color:var(--white);}
.step-arr{margin-left:auto;color:var(--silver);font-size:.68rem;}
.lu-dur{margin-top:16px;padding:13px 17px;border:1px solid var(--silver-border);background:var(--silver-dim);}
.lu-dur-l{font-family:'Syne',sans-serif;font-size:.57rem;font-weight:800;letter-spacing:3px;text-transform:uppercase;color:var(--silver);margin-bottom:4px;}
.lu-dur-v{font-family:'Cormorant Garamond',serif;font-size:1.25rem;font-weight:700;}
.lu-body{font-size:.86rem;color:var(--text-mid);line-height:1.8;margin-bottom:13px;}
.lu-features{display:flex;flex-direction:column;gap:12px;margin-top:22px;}
.lf{display:flex;gap:12px;align-items:flex-start;}
.lf-icon{width:32px;height:32px;flex-shrink:0;background:var(--silver-dim);border:1px solid var(--silver-border);display:flex;align-items:center;justify-content:center;font-size:.9rem;}
.lf-t{font-family:'Syne',sans-serif;font-size:.73rem;font-weight:700;letter-spacing:.5px;margin-bottom:2px;}
.lf-d{font-size:.76rem;color:rgba(247,245,240,0.88);}

/* RECRUITING */
#recruiting{padding:96px 56px;background:var(--black);border-top:1px solid var(--silver-border);}
.rec-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:72px;align-items:start;margin-top:52px;}
.rec-claim{font-family:'Cormorant Garamond',serif;font-size:1.28rem;font-style:italic;color:var(--silver-light);border-left:2px solid var(--silver);padding-left:17px;margin:20px 0;line-height:1.5;}
.rec-body{font-size:.86rem;color:var(--text-mid);line-height:1.8;margin-bottom:14px;}
.sectors{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:20px;}
.sector{padding:10px 14px;border:1px solid var(--silver-border);background:var(--silver-dim);font-family:'Syne',sans-serif;font-size:.65rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--silver);display:flex;align-items:center;gap:6px;}
.sector::before{content:'◆';font-size:.36rem;}
.neuro-box{margin-top:24px;padding:24px;border:1px solid rgba(74,173,122,.3);background:rgba(42,107,74,.07);position:relative;overflow:hidden;}
.neuro-box::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--green-light),transparent);}
.neuro-lbl{font-family:'Syne',sans-serif;font-size:.57rem;font-weight:800;letter-spacing:3px;text-transform:uppercase;color:var(--green-light);margin-bottom:7px;}
.neuro-t{font-family:'Cormorant Garamond',serif;font-size:1.1rem;font-weight:600;margin-bottom:7px;}
.neuro-b{font-size:.79rem;color:var(--text-mid);line-height:1.7;}
.phil-cards{display:flex;flex-direction:column;gap:3px;}
.phil{padding:19px 21px;border:1px solid var(--silver-border);background:rgba(200,212,224,0.03);display:flex;gap:15px;align-items:flex-start;transition:background .3s;}
.phil:hover{background:rgba(200,212,224,0.07);}
.phil-n{font-family:'Cormorant Garamond',serif;font-size:1.9rem;font-weight:700;color:rgba(200,212,224,0.2);flex-shrink:0;line-height:1;}
.phil-t{font-family:'Syne',sans-serif;font-size:.77rem;font-weight:700;letter-spacing:.5px;margin-bottom:4px;}
.phil-d{font-size:.77rem;color:rgba(247,245,240,0.88);line-height:1.6;}

/* ABOUT */
#about{padding:96px 56px;background:linear-gradient(135deg,var(--deep) 0%,var(--black) 100%);border-top:1px solid var(--silver-border);}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start;margin-top:52px;}
.about-intro{font-size:.88rem;color:var(--text-mid);line-height:1.8;margin-bottom:14px;}
.about-pitch{font-family:'Cormorant Garamond',serif;font-size:1.1rem;font-style:italic;color:var(--white);line-height:1.6;border-left:2px solid var(--silver);padding-left:15px;margin:20px 0;}
.exp-grid{display:grid;grid-template-columns:1fr 1fr;gap:3px;margin-top:24px;}
.exp{padding:15px 17px;border:1px solid var(--silver-border);background:var(--silver-dim);transition:background .3s;}
.exp:hover{background:rgba(200,212,224,0.1);}
.exp-icon{font-size:1.05rem;margin-bottom:6px;}
.exp-l{font-family:'Syne',sans-serif;font-size:.63rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--silver);margin-bottom:2px;}
.exp-v{font-size:.75rem;color:var(--text-mid);line-height:1.4;}
.brand-cards{display:flex;flex-direction:column;gap:3px;}
.brand-card{padding:17px 19px;border:1px solid var(--silver-border);background:rgba(255,255,255,.02);transition:all .3s;}
.brand-card:hover{background:var(--silver-dim);border-color:var(--silver);}
.bc-name{font-family:'Syne',sans-serif;font-size:.8rem;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:var(--silver-light);margin-bottom:4px;}
.bc-desc{font-size:.75rem;color:rgba(247,245,240,0.88);line-height:1.5;}
.contact-box{margin-top:20px;padding:17px 19px;border:1px solid var(--silver-border);background:var(--silver-dim);}
.contact-lbl{font-family:'Syne',sans-serif;font-size:.57rem;font-weight:800;letter-spacing:3px;text-transform:uppercase;color:var(--silver);margin-bottom:7px;}
.contact-box p{font-size:.8rem;color:var(--text-mid);line-height:1.85;}
.contact-box a{color:var(--silver-light);text-decoration:none;}

/* CTA */
#cta{padding:96px 56px;background:var(--black);border-top:1px solid var(--silver-border);text-align:center;position:relative;overflow:hidden;}
.cta-glow{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 55% 55% at 50% 50%,rgba(200,212,224,0.05) 0%,transparent 65%);}
.cta-ey{font-family:'Syne',sans-serif;font-size:.58rem;font-weight:700;letter-spacing:4px;text-transform:uppercase;color:var(--silver);margin-bottom:16px;}
.cta-h2{font-family:'Cormorant Garamond',serif;font-size:clamp(2.5rem,5vw,4.4rem);font-weight:700;line-height:1.05;max-width:660px;margin:0 auto 20px;}
.cta-h2 em{font-style:italic;color:var(--silver-light);}
.cta-sub{font-size:.94rem;color:var(--text-mid);max-width:420px;margin:0 auto 36px;line-height:1.7;}
.cta-acts{display:flex;justify-content:center;gap:13px;flex-wrap:wrap;}
.cta-trust{margin-top:28px;font-size:.75rem;color:rgba(247,245,240,0.88);display:flex;justify-content:center;gap:20px;flex-wrap:wrap;}
.cta-trust span{display:flex;align-items:center;gap:5px;}
.cta-trust span::before{content:'✓';color:var(--silver);font-size:.63rem;}

/* LOGO SECTION in hero */
.cs-logo-hero{height:22px;width:auto;object-fit:contain;opacity:0.85;}

/* FOOTER */
footer{padding:34px 56px;border-top:1px solid var(--silver-border);background:#030303;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;}
.ft-brand{display:flex;align-items:center;gap:10px;}
.ft-logo{height:22px;width:auto;object-fit:contain;opacity:0.8;}
.ft-name{font-family:'Syne',sans-serif;font-size:.68rem;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:var(--silver);}
.ft-legal{font-size:.67rem;color:rgba(247,245,240,0.88);line-height:1.6;}
.ft-legal a{color:rgba(247,245,240,0.88);text-decoration:none;}
.ft-legal a:hover{color:var(--silver);}
.ft-links{display:flex;gap:20px;}
.ft-links a{font-family:'Syne',sans-serif;font-size:.58rem;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:rgba(247,245,240,0.88);text-decoration:none;transition:color .3s;}
.ft-links a:hover{color:var(--silver);}

/* ANIMATIONS */
@keyframes up{from{opacity:0;transform:translateY(26px);}to{opacity:1;transform:translateY(0);}}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1);}50%{opacity:.4;transform:scale(.7);}}
.reveal{opacity:1;transform:translateY(0);transition:opacity .7s ease,transform .7s ease;}
.reveal.vis{opacity:1;transform:translateY(0);}


/* MODAL */
.modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.9);z-index:500;align-items:center;justify-content:center;padding:24px;}
.modal.show{display:flex;}
.modal-inner{background:#0e0e0e;border:1px solid var(--silver-border);max-width:510px;width:100%;padding:36px;position:relative;max-height:80vh;overflow-y:auto;}
.modal-close{position:absolute;top:13px;right:13px;background:none;border:none;color:rgba(247,245,240,0.88);font-size:1.1rem;cursor:pointer;}
.modal-lbl{font-family:'Syne',sans-serif;font-size:.57rem;font-weight:800;letter-spacing:3px;text-transform:uppercase;color:var(--silver);margin-bottom:13px;}
.modal-body{font-size:.8rem;color:var(--text-mid);line-height:1.85;}
.modal-body strong{color:var(--white);}


/* Detail grids */
.detail-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  margin-top: 48px;
}






/* Photo section */
.photo-slot {
  aspect-ratio: 3/4;
  overflow: hidden;
  position: relative;
  background: #0e0e12;
  border: 1px solid rgba(200,212,224,0.1);
}
.photo-slot img {
  width: 100%; height: 100%;
  object-fit: cover; object-position: center top;
  display: block;
  transition: transform 0.5s ease;
}
.photo-slot:hover img { transform: scale(1.04); }
.photo-placeholder {
  width: 100%; height: 100%;
  display: flex; flex-direction: column;
  align-items: center; justify-content: center;
  gap: 12px;
  min-height: 320px;
}
.photo-icon { font-size: 2.5rem; opacity: 0.3; }
.photo-hint {
  font-family: 'Syne', sans-serif;
  font-size: .65rem; font-weight: 600;
  letter-spacing: 2px; text-transform: uppercase;
  color: rgba(200,212,224,0.25);
}


/* Detail sections */
.detail-grid { display:grid; grid-template-columns:1fr 1fr; gap:56px; margin-top:44px; }
.detail-box { padding:18px 20px; border:1px solid rgba(200,212,224,0.15); background:rgba(200,212,224,0.04); }
.detail-box-label { font-family:'Syne',sans-serif; font-size:.68rem; font-weight:800; letter-spacing:2px; text-transform:uppercase; color:var(--silver); margin-bottom:8px; }
.detail-box-text { font-size:.85rem; color:rgba(247,245,240,0.85); line-height:1.75; }



/* Koop cards */
.koop-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:3px; margin-top:44px; align-items:start; }
.koop-card { padding:28px 24px; border:1px solid rgba(200,212,224,0.15); background:rgba(200,212,224,0.03); transition:all .3s; position:relative; overflow:visible; display:flex; flex-direction:column; }
.koop-card::before { content:''; position:absolute; top:0; left:0; right:0; height:2px; background:linear-gradient(90deg,var(--silver),transparent); transform:scaleX(0); transform-origin:left; transition:transform .4s; }
.koop-card:hover { background:rgba(200,212,224,0.07); }
.koop-card:hover::before { transform:scaleX(1); }
.koop-icon { font-size:1.8rem; margin-bottom:14px; display:block; }
.koop-name { font-family:'Syne',sans-serif; font-size:.85rem; font-weight:800; letter-spacing:1.5px; text-transform:uppercase; color:var(--silver-light); margin-bottom:5px; }
.koop-role { font-size:.72rem; font-family:'Syne',sans-serif; font-weight:600; letter-spacing:1px; text-transform:uppercase; color:var(--silver-light); opacity:0.85; margin-bottom:12px; }
.koop-desc { font-size:.84rem; color:rgba(247,245,240,0.85); line-height:1.75; margin-top:4px; }
/* Photo grid */
.photo-grid { display:grid; grid-template-columns:1.2fr 1fr 1fr; gap:3px; margin-top:44px; }
.photo-frame { overflow:hidden; position:relative; }
.photo-frame.tall { aspect-ratio:3/4; }
.photo-frame.wide { aspect-ratio:3/4; }
.photo-frame img { width:100%; height:100%; object-fit:cover; object-position:center top; display:block; transition:transform .6s ease; }
.photo-frame:hover img { transform:scale(1.04); }
.photo-caption { position:absolute; bottom:0; left:0; right:0; padding:20px 18px 16px; background:linear-gradient(to top, rgba(8,8,8,0.85) 0%, transparent 100%); font-family:'Syne',sans-serif; font-size:.6rem; font-weight:700; letter-spacing:2px; text-transform:uppercase; color:rgba(200,212,224,0.8); }
/* About hero layout */
.about-hero { display:grid; grid-template-columns:320px 1fr; gap:56px; align-items:start; margin-top:44px; }
.about-portrait { position:relative; }
.about-portrait img { width:100%; aspect-ratio:3/4; object-fit:cover; object-position:center top; display:block; }
.about-portrait-label { position:absolute; bottom:0; left:0; right:0; padding:20px 18px; background:linear-gradient(to top, rgba(8,8,8,0.9), transparent); }
.about-portrait-name { font-family:'Cormorant Garamond',serif; font-size:1.4rem; font-weight:700; }
.about-portrait-title { font-size:.72rem; font-family:'Syne',sans-serif; letter-spacing:1.5px; text-transform:uppercase; color:var(--silver); margin-top:3px; }

/* ═══ NAV BYLINE ═══ */
.nav-byline {
  font-family: 'Syne', sans-serif;
  font-size: 0.6rem; font-weight: 600;
  letter-spacing: 2px; text-transform: uppercase;
  color: rgba(247,245,240,0.45); white-space: nowrap;
}

/* ═══ BUTTON PAIR - always side by side ═══ */
.btn-pair {
  display: flex; gap: 12px; flex-wrap: wrap;
  align-items: center; margin-top: 28px;
}

/* ═══ PREMIUM MOBILE UPGRADE ═══ */
@media (max-width: 600px) {
  /* Nav */
  nav { padding: 12px 16px; gap: 8px; }
  .nav-byline { display: none; }
  .hero-ns-logo { height: 60px !important; }
  .nav-brand { gap: 8px; }
  .nav-brand img { height: 32px; }
  .nav-cta { 
    font-size: .58rem; padding: 8px 14px;
    letter-spacing: 1.5px;
  }

  /* Hero */
  #hero { padding: 90px 20px 56px; }
  .hero-h1 { font-size: clamp(2.6rem, 11vw, 4rem); line-height: .95; }
  .hero-badge { font-size: .55rem; letter-spacing: 2px; margin-bottom: 20px; }
  .hero-desc { font-size: .9rem; line-height: 1.75; margin-top: 20px; }
  .hero-pills { gap: 6px; margin-top: 18px; }
  .pill { font-size: .55rem; padding: 4px 10px; }
  .hero-actions { 
    flex-direction: column; gap: 10px; margin-top: 28px;
  }
  .hero-actions .btn-silver,
  .hero-actions .btn-ghost { 
    width: 100%; text-align: center; padding: 14px 20px;
  }
  .hero-cs { 
    margin-top: 28px; padding: 14px 16px; gap: 10px;
    flex-direction: row; align-items: center;
  }
  .hero-cs img { height: 16px; }
  .hero-cs-text { font-size: .75rem; }

  /* Sections */
  #leistungen, #coaching, #levelup, #recruiting,
  #kooperationen, #fotos, #about, #cta, #connecters { 
    padding: 52px 20px; 
  }
  [style*="padding:90px 56px"] { padding: 52px 20px !important; }
  [style*="padding:96px 56px"] { padding: 52px 20px !important; }
  [style*="padding:80px 56px"] { padding: 48px 20px !important; }

  /* Typography */
  .sec-h2 { font-size: clamp(1.8rem, 6.5vw, 2.6rem); }
  .sec-intro { font-size: .88rem; margin-bottom: 36px; }
  .sec-label { font-size: .55rem; letter-spacing: 3px; }

  /* Pillars */
  .pillars { grid-template-columns: 1fr; gap: 1px; }
  .pillar { padding: 28px 20px; }
  .pillar-num { font-size: 4rem; top: 10px; right: 14px; }
  .pillar-icon { font-size: 1.6rem; margin-bottom: 12px; }
  .pillar-name { font-size: .85rem; }
  .pillar-claim { font-size: .85rem; }
  .pillar-desc { font-size: .82rem; }
  .pillar-list li { font-size: .78rem; }

  /* Detail grids */
  .detail-grid { grid-template-columns: 1fr; gap: 24px; }
  .detail-box { padding: 15px 16px; }
  .detail-box-label { font-size: .62rem; }
  .detail-box-text { font-size: .82rem; }

  /* Buttons in sections */
  .btn-silver, .btn-ghost { 
    width: 100%; text-align: center; 
    padding: 13px 20px; font-size: .65rem;
  }
  [style*="display:flex;gap:12px;flex-wrap:wrap"] {
    flex-direction: column !important;
  }

  /* Coaching */
  .coaching-grid { grid-template-columns: 1fr; gap: 32px; }
  .coaching-quote { font-size: 1.05rem; margin: 16px 0 14px; }
  .coaching-body { font-size: .86rem; }
  .wonder-tags { gap: 5px; margin-top: 16px; }
  .wtag { font-size: .55rem; padding: 4px 9px; }
  .phases { gap: 2px; }
  .phase-hd { padding: 14px 16px; gap: 10px; }
  .ph-title { font-size: .74rem; }
  .ph-sub { font-size: .62rem; }
  .phase-content { padding: 0 16px 14px 52px; font-size: .79rem; }
  .sessions-row { gap: 2px; }
  .sess { flex: 0 0 120px; padding: 16px 12px; }
  .sess-n { font-size: 2.2rem; }
  .sess-t { font-size: .6rem; }
  .doug-box { padding: 20px 16px; margin-top: 36px; }
  .doug-box > div { flex-direction: column; gap: 16px; }

  /* Level Up */
  .lu-grid { grid-template-columns: 1fr; gap: 28px; }
  .steps { gap: 2px; }
  .step { padding: 12px 16px; gap: 12px; }
  .step-n { font-size: 1.5rem; width: 22px; }
  .step-t { font-size: .73rem; }
  .lu-dur { padding: 12px 16px; margin-top: 12px; }
  .lu-features { gap: 10px; margin-top: 18px; }
  .lf-icon { width: 30px; height: 30px; font-size: .85rem; }
  .lf-t { font-size: .7rem; }
  .lf-d { font-size: .72rem; }

  /* Recruiting */
  .rec-layout { grid-template-columns: 1fr; gap: 28px; }
  .rec-claim { font-size: 1.05rem; padding-left: 14px; margin: 16px 0; }
  .rec-body { font-size: .86rem; }
  .sectors { grid-template-columns: 1fr 1fr; gap: 5px; margin-top: 16px; }
  .sector { padding: 8px 10px; font-size: .6rem; }
  .neuro-box { padding: 18px 16px; margin-top: 18px; }
  .neuro-t { font-size: 1rem; }
  .neuro-b { font-size: .79rem; }
  .phil-cards { gap: 2px; }
  .phil { padding: 15px 16px; gap: 12px; }
  .phil-n { font-size: 1.6rem; }
  .phil-t { font-size: .75rem; }
  .phil-d { font-size: .75rem; }

  /* Koops */
  .koop-grid { grid-template-columns: 1fr; gap: 2px; }
  .koop-card { padding: 20px 16px; }
  .koop-icon { font-size: 1.4rem; margin-bottom: 10px; }
  .koop-name { font-size: .78rem; letter-spacing: 1px; }
  .koop-role { font-size: .65rem; margin-bottom: 8px; }
  .koop-desc { font-size: .8rem; }

  /* Photos */
  .photo-grid-2col { grid-template-columns: 1fr !important; gap: 3px !important; max-width: 100% !important; }

  /* About */
  .about-hero { grid-template-columns: 1fr; gap: 28px; }
  .about-portrait img { aspect-ratio: 4/3; object-position: center 15%; }
  .about-portrait-name { font-size: 1.2rem; }
  .about-portrait-title { font-size: .6rem; }
  .about-intro { font-size: .88rem; line-height: 1.8; }
  .about-pitch { font-size: 1rem; padding-left: 14px; }
  .exp-grid { grid-template-columns: 1fr 1fr; gap: 3px; margin-top: 18px; }
  .exp { padding: 12px 14px; }
  .exp-icon { font-size: .95rem; margin-bottom: 5px; }
  .exp-l { font-size: .58rem; }
  .exp-v { font-size: .72rem; }
  .brand-cards { gap: 2px; }
  .brand-card { padding: 14px 16px; }
  .bc-name { font-size: .72rem; letter-spacing: 1.5px; }
  .bc-desc { font-size: .72rem; }
  .contact-box { padding: 14px 16px; margin-top: 16px; }
  .contact-box p { font-size: .78rem; line-height: 1.75; }

  /* CTA */
  #cta { padding: 56px 20px; }
  .cta-ey { font-size: .55rem; letter-spacing: 3px; }
  .cta-h2 { font-size: clamp(2rem, 8vw, 3rem); }
  .cta-sub { font-size: .88rem; margin-bottom: 28px; }
  .cta-acts { flex-direction: column; align-items: stretch; gap: 10px; }
  .cta-acts .btn-silver,
  .cta-acts .btn-ghost { text-align: center; padding: 14px 20px; }
  .cta-trust { flex-direction: column; align-items: center; gap: 8px; font-size: .72rem; }

  /* CONNECTER-S */
  #connecters { padding: 52px 20px; }
  [style*="grid-template-columns:1fr 1fr;gap:72px"] { 
    grid-template-columns: 1fr !important; gap: 28px !important; 
  }
  [style*="grid-template-columns:1fr 1fr;gap:56px"] { 
    grid-template-columns: 1fr !important; gap: 24px !important; 
  }
  [style*="grid-template-columns:repeat(3,1fr)"] { 
    grid-template-columns: 1fr !important; 
  }

  /* Footer */
  footer { 
    flex-direction: column; align-items: flex-start; 
    padding: 24px 20px; gap: 16px; 
  }
  .ft-brand { gap: 8px; }
  .ft-logo { height: 18px; }
  .ft-name { font-size: .62rem; letter-spacing: 1.5px; }
  .ft-legal { font-size: .63rem; line-height: 1.65; }
  .ft-links { gap: 16px; }
  .ft-links a { font-size: .55rem; }

  /* Modal */
  .modal-inner { padding: 28px 20px; margin: 0 12px; }
  .modal-lbl { font-size: .55rem; }
  .modal-body { font-size: .78rem; }
}

/* ═══ TABLET ═══ */
@media (min-width: 601px) and (max-width: 1024px) {
  nav { padding: 14px 28px; }
  .nav-links { gap: 16px; }
  .nav-links a { font-size: .6rem; }
  .nav-byline { font-size: .55rem; letter-spacing: 1.5px; }
  #hero { padding: 120px 36px 80px; }
  section { padding: 72px 36px; }
  [style*="padding:96px 56px"] { padding: 68px 36px !important; }
  [style*="padding:90px 56px"] { padding: 64px 36px !important; }
  [style*="padding:80px 56px"] { padding: 56px 36px !important; }
  .pillars { grid-template-columns: 1fr 1fr; }
  .coaching-grid { grid-template-columns: 1fr; gap: 40px; }
  .lu-grid { grid-template-columns: 1fr 1fr; gap: 36px; }
  .rec-layout { grid-template-columns: 1fr; gap: 36px; }
  .detail-grid { grid-template-columns: 1fr; gap: 32px; }
  .about-hero { grid-template-columns: 260px 1fr; gap: 36px; }
  .koop-grid { grid-template-columns: 1fr 1fr; gap: 3px; }
  .photo-grid-2col { max-width: 100% !important; }
  [style*="grid-template-columns:1fr 1fr;gap:72px"] { 
    grid-template-columns: 1fr !important; gap: 40px !important; 
  }
  [style*="grid-template-columns:repeat(3,1fr)"] { 
    grid-template-columns: 1fr 1fr !important; 
  }
  footer { padding: 28px 36px; flex-wrap: wrap; gap: 16px; }
}

/* ═══ JOB CARDS ═══ */
.job-card {
  border: 1px solid rgba(216,230,240,0.15);
  background: rgba(216,230,240,0.03);
  overflow: hidden;
  transition: border-color .3s;
  cursor: pointer;
}
.job-card:hover { border-color: rgba(216,230,240,0.35); }
.job-card.open { border-color: rgba(216,230,240,0.4); background: rgba(216,230,240,0.06); }
.job-header {
  padding: 22px 26px;
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
}
.job-title {
  font-family: 'Syne', sans-serif;
  font-size: .95rem; font-weight: 800;
  letter-spacing: .5px; color: var(--white);
  margin-bottom: 8px;
}
.job-meta { display: flex; gap: 8px; flex-wrap: wrap; }
.job-tag {
  font-family: 'Syne', sans-serif;
  font-size: .6rem; font-weight: 600;
  letter-spacing: 1px;
  padding: 3px 10px;
  border: 1px solid rgba(216,230,240,0.2);
  color: rgba(216,230,240,0.8);
  background: rgba(216,230,240,0.05);
}
.job-toggle {
  font-size: 1.4rem; color: var(--silver);
  flex-shrink: 0; transition: transform .3s;
  width: 32px; height: 32px;
  display: flex; align-items: center; justify-content: center;
  border: 1px solid rgba(216,230,240,0.2);
}
.job-card.open .job-toggle { transform: rotate(45deg); }
.job-body {
  max-height: 0; overflow: hidden;
  transition: max-height .5s ease, padding .3s;
  padding: 0 26px;
}
.job-card.open .job-body { max-height: 600px; padding: 0 26px 26px; }
.job-intro {
  font-size: .9rem; color: rgba(247,245,240,0.9);
  line-height: 1.75; margin-bottom: 20px;
  padding-top: 4px;
  border-top: 1px solid rgba(216,230,240,0.1);
  padding-top: 16px;
}
.job-grid {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 24px; margin-bottom: 24px;
}
.job-section-title {
  font-family: 'Syne', sans-serif;
  font-size: .65rem; font-weight: 800;
  letter-spacing: 2px; text-transform: uppercase;
  color: var(--silver); margin-bottom: 10px;
}
.job-list {
  list-style: none; display: flex;
  flex-direction: column; gap: 6px;
}
.job-list li {
  font-size: .83rem; color: rgba(247,245,240,0.9);
  padding-left: 14px; position: relative; line-height: 1.6;
}
.job-list li::before {
  content: '→'; position: absolute; left: 0;
  color: var(--silver); font-size: .7rem;
}
.job-apply-btn {
  display: inline-flex; align-items: center;
  font-family: 'Syne', sans-serif;
  font-size: .72rem; font-weight: 800;
  letter-spacing: 2px; text-transform: uppercase;
  color: var(--black); background: var(--silver-light);
  padding: 12px 28px; text-decoration: none;
  transition: all .3s;
}
.job-apply-btn:hover { background: #fff; transform: translateY(-1px); }

@media (max-width: 600px) {
  #jobs { padding: 52px 20px; }
  .job-header { padding: 18px 16px; }
  .job-title { font-size: .85rem; }
  .job-body { padding: 0 16px; }
  .job-card.open .job-body { padding: 0 16px 20px; }
  .job-grid { grid-template-columns: 1fr; gap: 16px; }
  .job-tag { font-size: .55rem; padding: 2px 8px; }
}


/* ═══ JOBS ═══ */
.job-card { border:1px solid rgba(216,230,240,0.15); background:rgba(216,230,240,0.03); overflow:hidden; transition:border-color .3s; }
.job-card.open { border-color:rgba(216,230,240,0.35); }
.job-header { padding:22px 26px; display:flex; align-items:center; gap:16px; cursor:pointer; transition:background .3s; user-select:none; }
.job-header:hover { background:rgba(216,230,240,0.06); }
.job-info { flex:1; }
.job-title { font-family:'Syne',sans-serif; font-size:.95rem; font-weight:700; letter-spacing:.5px; color:var(--white); margin-bottom:8px; }
.job-meta { display:flex; flex-wrap:wrap; gap:6px; }
.job-tag { font-family:'Syne',sans-serif; font-size:.6rem; font-weight:600; letter-spacing:1px; padding:4px 10px; border:1px solid rgba(216,230,240,0.2); color:rgba(216,230,240,0.75); background:rgba(216,230,240,0.05); }
.job-chevron { color:rgba(216,230,240,0.5); font-size:.8rem; transition:transform .3s; flex-shrink:0; }
.job-card.open .job-chevron { transform:rotate(180deg); }
.job-body { max-height:0; overflow:hidden; transition:max-height .5s ease; }
.job-card.open .job-body { max-height:800px; }
.job-content { padding:0 26px 28px; }
.job-section-title { font-family:'Syne',sans-serif; font-size:.65rem; font-weight:800; letter-spacing:2.5px; text-transform:uppercase; color:var(--silver); margin-bottom:10px; margin-top:4px; }
.job-text { font-size:.88rem; color:rgba(247,245,240,0.9); line-height:1.75; margin-bottom:20px; }
.job-cols { display:grid; grid-template-columns:1fr 1fr; gap:24px; margin-bottom:24px; }
.job-list { list-style:none; display:flex; flex-direction:column; gap:6px; }
.job-list li { font-size:.84rem; color:rgba(247,245,240,0.88); line-height:1.6; padding-left:14px; position:relative; }
.job-list li::before { content:'→'; position:absolute; left:0; color:var(--silver); font-size:.68rem; top:2px; }
.job-cta { display:flex; gap:12px; flex-wrap:wrap; padding-top:20px; border-top:1px solid rgba(216,230,240,0.1); }
@media(max-width:600px){
  .job-header { padding:16px 18px; gap:12px; }
  .job-title { font-size:.82rem; }
  .job-tag { font-size:.55rem; }
  .job-content { padding:0 18px 22px; }
  .job-cols { grid-template-columns:1fr; gap:16px; }
  .job-cta { flex-direction:column; }
  .job-cta .btn-silver, .job-cta .btn-ghost { text-align:center; }
}


/* ═══ FORCE DARK ═══ */
body { background: #080808 !important; }
#hero { background: #080808 !important; }
.hero-bg { 
  background: 
    radial-gradient(ellipse 60% 60% at 80% 20%, rgba(216,230,240,0.04) 0%, transparent 60%),
    radial-gradient(ellipse 50% 70% at 5% 90%, rgba(61,37,96,0.18) 0%, transparent 55%) !important;
}
.hero-grid {
  background-image: 
    linear-gradient(rgba(216,230,240,0.02) 1px, transparent 1px),
    linear-gradient(90deg, rgba(216,230,240,0.02) 1px, transparent 1px) !important;
  background-size: 60px 60px !important;
}
/* Nav dark */
nav { background: rgba(8,8,8,0.95) !important; }
/* All text - force contrast */
body, p, li, div { color: inherit; }
.hero-h1 { color: #f7f5f0 !important; }
.hero-desc { color: rgba(247,245,240,0.92) !important; }
/* Silver text visible */
.sec-label, .sec-label * { color: #d8e6f0 !important; opacity: 1 !important; }
.hero-badge { color: #d8e6f0 !important; }
/* Pills border visible */
.pill { border-color: rgba(216,230,240,0.35) !important; color: #d8e6f0 !important; background: rgba(216,230,240,0.1) !important; }
/* Buttons */
.btn-silver { background: linear-gradient(135deg, #d8e6f0 0%, #f0f6fc 100%) !important; color: #080808 !important; }
.btn-ghost { border-color: rgba(247,245,240,0.3) !important; color: #f7f5f0 !important; }
.btn-ghost:hover { border-color: #d8e6f0 !important; color: #d8e6f0 !important; }

/* FORCE DARK */
html, body { background: #080808 !important; color: #f7f5f0 !important; }
#hero { background: #080808 !important; }
