/* Ibrahim Karakoc Design System. Tokens aus system/tokens, Schriften lokal. */
@font-face{font-family:'Archivo';font-style:normal;font-weight:400 900;font-display:swap;src:url(fonts/archivo.woff2) format('woff2')}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/jbmono-700.woff2) format('woff2')}
:root{
--navy-950:#0B111F;--navy-900:#131D33;--navy-800:#1C2946;--navy-700:#2A3A5E;--navy-300:#9AA5BF;
--black:#0A0B0E;--ink:#111317;--graphite:#24272D;--steel:#6B7079;--ash:#A9ADB4;--bone:#EDECE8;--paper:#F6F5F2;--white:#FFFFFF;
--blood:#D3261C;--blood-600:#A91C14;--gold:#C9A24A;
--bg:var(--black);--surface:var(--ink);
--fg-1:var(--white);--fg-2:#C9CCD2;--fg-3:var(--ash);
--accent:var(--blood);--accent-hover:#E8392E;--accent-press:var(--blood-600);
--border:rgba(255,255,255,.14);--border-strong:rgba(255,255,255,.4);--border-inverse:rgba(19,29,51,.18);--border-inverse-strong:rgba(19,29,51,.5);
--scrim-bottom:linear-gradient(180deg,rgba(10,11,14,.15) 0%,rgba(10,11,14,.55) 45%,rgba(10,11,14,.95) 100%);
--font-display:'Archivo',ui-sans-serif,system-ui,sans-serif;--font-mono:'JetBrains Mono',ui-monospace,monospace;
--fs-hero:clamp(40px,6vw,78px);--fs-h2:clamp(32px,4.6vw,56px);--fs-h3:clamp(22px,2.4vw,30px);--fs-lead:clamp(18px,2vw,22px);--fs-body:17px;--fs-small:14px;--fs-label:12px;
--lh-tight:.92;--lh-snug:1.08;--lh-body:1.55;--tracking-display:-0.03em;--tracking-label:0.14em;
--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:96px;--space-10:144px;
--ease-hit:cubic-bezier(.2,.9,.1,1);--dur-fast:120ms;--dur:220ms;
--wrap:1160px;--gutter:clamp(16px,4vw,48px);
--cut-4:polygon(4px 0,calc(100% - 4px) 0,100% 4px,100% calc(100% - 4px),calc(100% - 4px) 100%,4px 100%,0 calc(100% - 4px),0 4px);
--cut-6:polygon(6px 0,calc(100% - 6px) 0,100% 6px,100% calc(100% - 6px),calc(100% - 6px) 100%,6px 100%,0 calc(100% - 6px),0 6px);
--cut-8:polygon(8px 0,calc(100% - 8px) 0,100% 8px,100% calc(100% - 8px),calc(100% - 8px) 100%,8px 100%,0 calc(100% - 8px),0 8px);
--cut-16:polygon(16px 0,calc(100% - 16px) 0,100% 16px,100% calc(100% - 16px),calc(100% - 16px) 100%,16px 100%,0 calc(100% - 16px),0 16px);
}

/* Basis */
*,*::before,*::after{box-sizing:border-box;border-radius:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:80px}
body{margin:0;background:var(--bg);color:var(--fg-2);font-family:var(--font-display);font-size:var(--fs-body);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
a{color:var(--fg-1);text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:3px}
a:hover{color:var(--accent-hover)}
h1,h2,h3{font-weight:900;letter-spacing:var(--tracking-display);line-height:var(--lh-tight);color:var(--fg-1);margin:0;text-wrap:balance}
h2{font-size:var(--fs-h2)}h3{font-size:var(--fs-h3);line-height:var(--lh-snug)}
p{margin:0 0 1em}
ul,ol{margin:0;padding:0;list-style:none}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gutter)}
.label{font-family:var(--font-mono);font-size:var(--fs-label);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:700;color:var(--fg-3)}
.tag{display:inline-block;font-family:var(--font-mono);font-size:var(--fs-label);letter-spacing:var(--tracking-label);text-transform:uppercase;font-weight:700;color:var(--fg-1);padding:7px 12px;box-shadow:inset 0 0 0 1px var(--border-strong);clip-path:var(--cut-4)}
.red{color:var(--accent)}
.gold{color:var(--gold)}
.lead{font-size:var(--fs-lead);line-height:1.45;color:var(--fg-2)}
.big{font-size:clamp(24px,3vw,36px);font-weight:900;letter-spacing:var(--tracking-display);line-height:1.05;color:var(--fg-1)}
.hint{font-size:var(--fs-small);color:var(--fg-3);max-width:60ch;margin:var(--space-4) 0 0}
.actions{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-6)}
.skip{position:absolute;left:-9999px;top:0;background:var(--accent);color:var(--white);padding:12px 16px;z-index:100;text-decoration:none;font-weight:800}
.skip:focus{left:var(--space-4);top:var(--space-4)}

/* Knöpfe */
.btn{font-family:var(--font-display);font-weight:800;text-transform:uppercase;letter-spacing:.06em;line-height:1;display:inline-flex;align-items:center;gap:10px;border:0;cursor:pointer;text-decoration:none;font-size:15px;padding:14px 24px;clip-path:var(--cut-6);transition:background var(--dur-fast) var(--ease-hit),transform var(--dur-fast) var(--ease-hit);-webkit-tap-highlight-color:transparent;white-space:nowrap}
.btn:active{transform:translateY(1px) scale(.98)}
.btn-primary{background:var(--accent);color:var(--white)}.btn-primary:hover{background:var(--accent-hover);color:var(--white)}.btn-primary:active{background:var(--accent-press)}
.btn-brand,.paper .btn-brand{background:var(--navy-900);color:var(--white)}.btn-brand:hover,.paper .btn-brand:hover{background:var(--navy-800);color:var(--white)}
.btn-outline{background:transparent;color:var(--fg-1);box-shadow:inset 0 0 0 2px var(--border-strong)}.btn-outline:hover{background:rgba(255,255,255,.08);color:var(--fg-1)}
.btn-lg{font-size:17px;padding:19px 30px;clip-path:var(--cut-8)}
.btn-sm{font-size:13px;padding:11px 16px;clip-path:var(--cut-4)}

/* Fortschritt und Kopfleiste */
.progress{position:fixed;top:0;left:0;height:3px;width:0;background:var(--accent);z-index:30}
.topbar{position:sticky;top:0;z-index:20;background:rgba(10,11,14,.92);border-bottom:1px solid var(--border)}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;gap:var(--space-5);padding-top:14px;padding-bottom:14px}
.brand img{height:28px;width:auto}
.nav{display:none;gap:var(--space-5)}
.nav a{text-decoration:none;color:var(--fg-2);font-weight:600;font-size:15px;padding:6px 0;border-bottom:3px solid transparent}
.nav a:hover{color:var(--fg-1);border-bottom-color:var(--accent)}
@media(min-width:900px){.nav{display:flex}.brand img{height:32px}}

/* 1. Einstieg */
.hero{position:relative;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1fr;gap:0;min-height:calc(100svh - 61px)}
.hero-photo{margin:0;position:relative;order:-1;aspect-ratio:3/3.4;overflow:hidden}
.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center top}
.hero-photo::after{content:"";position:absolute;inset:0;background:var(--scrim-bottom)}
.hero-text{padding:var(--space-6) 0 var(--space-8);position:relative;z-index:1;margin-top:-120px}
.hero h1{font-size:var(--fs-hero);margin:var(--space-5) 0}
.hero .lead{max-width:44ch;color:var(--fg-1)}
.stats{display:grid;grid-template-columns:repeat(2,1fr);gap:0;margin-top:var(--space-7);border-top:1px solid var(--border)}
.stats li{padding:var(--space-5) var(--space-4) var(--space-5) 0;border-bottom:1px solid var(--border)}
.stats b{display:block;font-size:clamp(40px,5vw,64px);font-weight:900;letter-spacing:var(--tracking-display);line-height:1;color:var(--gold)}
.stats b i{font-style:normal;font-size:.55em;margin-left:2px}
.stats .label{display:block;margin-top:8px}
@media(min-width:900px){
  .hero{min-height:calc(100svh - 61px)}
  .hero-grid{grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:var(--space-8);align-items:center;padding-right:0}
  /* Ganzes Foto zeigen, nie beschneiden: festes Seitenverhältnis 2:3 wie die Datei */
  .hero-photo{order:2;aspect-ratio:auto;margin:0;align-self:center;justify-self:end;width:fit-content;max-width:100%;overflow:visible}
  .hero-photo img{width:auto;height:auto;max-width:100%;max-height:calc(100svh - 61px - 2*var(--space-7));min-height:480px;object-fit:contain;clip-path:var(--cut-16)}
  .hero-photo::after{clip-path:var(--cut-16)}
  .hero-photo::after{background:linear-gradient(180deg,rgba(10,11,14,0) 60%,rgba(10,11,14,.8) 100%)}
  .hero-text{margin-top:0;padding:var(--space-9) 0 var(--space-9);display:flex;flex-direction:column;justify-content:center}
  .stats{grid-template-columns:repeat(4,1fr)}
  .stats li{border-bottom:0;border-right:1px solid var(--border);padding-right:var(--space-5);margin-right:var(--space-5)}
  .stats li:last-child{border-right:0}
}

/* Abschnitte */
.sec{padding:var(--space-9) 0}
@media(min-width:900px){.sec{padding:var(--space-10) 0}}
.sec-head{display:grid;gap:var(--space-4);margin-bottom:var(--space-7);max-width:820px}
.sec-head .lead{margin:0}
.num{display:block}
.paper{background:var(--paper);color:var(--navy-700)}
.paper h2,.paper h3,.paper .big{color:var(--navy-900)}
.paper .label,.paper .num{color:var(--navy-700)}
.paper a{color:var(--navy-900)}
.navy{background:var(--navy-900)}
.navy .label{color:var(--navy-300)}
.ink{background:var(--surface)}

/* 2. Die Wahrheit */
.truth{display:grid;grid-template-columns:1fr;gap:var(--space-7)}
.quote{border-left:4px solid var(--accent);padding:4px 0 4px var(--space-5);margin:0}
.quote p{font-size:clamp(28px,3.6vw,48px);font-weight:900;letter-spacing:var(--tracking-display);line-height:1.02;color:var(--navy-900);margin:0}
.truth-text .big{margin:var(--space-4) 0}
.truth-text p:last-child{max-width:52ch;margin:0}
@media(min-width:900px){.truth{grid-template-columns:1.2fr 1fr;gap:var(--space-9);align-items:start}}

/* 3. Wer ich bin */
.story{display:grid;grid-template-columns:1fr;gap:var(--space-7)}
.story-photo{margin:0;position:relative;max-width:420px}
.story-photo img{clip-path:var(--cut-16);width:100%}
.story-photo figcaption{margin-top:var(--space-3);color:var(--gold)}
.timeline{border-top:1px solid var(--border)}
.timeline li{display:grid;grid-template-columns:72px 1fr;gap:var(--space-4);padding:var(--space-5) 0;border-bottom:1px solid var(--border)}
.t-n{font-family:var(--font-mono);font-weight:700;font-size:clamp(22px,2.6vw,30px);letter-spacing:-0.02em;line-height:1;color:var(--steel);padding-top:4px}
.t-n.gold{color:var(--gold)}
.timeline h3{font-size:clamp(20px,2.2vw,26px);margin-bottom:var(--space-2)}
.timeline p{margin:0;max-width:56ch}
.story-end{margin:var(--space-8) 0 0;font-size:clamp(24px,3vw,40px);font-weight:900;letter-spacing:var(--tracking-display);line-height:1.05;color:var(--fg-1);max-width:22ch;border-left:4px solid var(--accent);padding-left:var(--space-5)}
@media(min-width:900px){.story{grid-template-columns:380px 1fr;gap:var(--space-9);align-items:start}.story-photo{position:sticky;top:96px}.timeline li{grid-template-columns:120px 1fr;gap:var(--space-6)}}

/* 4. Was ich mache */
.fields{display:grid;grid-template-columns:1fr;gap:0;border-top:1px solid var(--border)}
.field{padding:var(--space-6) 0;border-bottom:1px solid var(--border)}
.f-n{display:block;font-family:var(--font-mono);font-weight:700;font-size:clamp(56px,8vw,112px);line-height:.85;letter-spacing:-0.04em;color:var(--graphite);margin-bottom:var(--space-5)}
.field h3{margin-bottom:var(--space-3)}
.field p{margin:0;max-width:40ch}
@media(min-width:900px){.fields{grid-template-columns:repeat(3,1fr);border-top:0}.field{border-bottom:0;border-top:2px solid var(--border-strong);padding:var(--space-5) var(--space-6) 0 0;margin-right:var(--space-5)}.field:last-child{margin-right:0}}

/* 5. Newsletter */
.nl{display:grid;grid-template-columns:1fr;gap:var(--space-6)}
.nl .lead{color:var(--fg-1);max-width:46ch}
.nl .hint{color:var(--navy-300)}
@media(min-width:900px){.nl{grid-template-columns:1fr 1fr;gap:var(--space-9);align-items:start}}

/* 6. Werkzeuge */
.tools{display:grid;grid-template-columns:1fr;gap:var(--space-4)}
.tool{display:block;text-decoration:none;color:var(--fg-2);background:var(--surface);padding:var(--space-6);clip-path:var(--cut-8);box-shadow:inset 0 0 0 1px var(--border);transition:background var(--dur-fast) var(--ease-hit)}
.tool:hover{background:var(--graphite);color:var(--fg-2)}
.tool h3{margin:var(--space-4) 0 var(--space-3)}
.tool p{margin:0 0 var(--space-5);max-width:44ch}
.more{font-weight:800;text-transform:uppercase;letter-spacing:.06em;font-size:14px;color:var(--fg-1)}
.more i{font-style:normal;font-family:var(--font-mono);color:var(--accent);margin-left:4px}
@media(min-width:900px){.tools{grid-template-columns:1fr 1fr;gap:var(--space-5)}.tool{padding:var(--space-7)}}

/* 7. Mit mir arbeiten */
.ways{display:grid;grid-template-columns:1fr;gap:var(--space-7)}
.way{border-top:2px solid var(--border-strong);padding-top:var(--space-5)}
.way h3{margin:var(--space-3) 0}
.way p{max-width:46ch;margin-bottom:var(--space-5)}
@media(min-width:900px){.ways{grid-template-columns:1fr 1fr;gap:var(--space-8)}}

/* 8. Kanäle */
.channels{border-top:1px solid var(--border)}
.channels li{display:grid;grid-template-columns:1fr;grid-template-areas:"label" "name" "btn";gap:var(--space-3);align-items:center;padding:var(--space-5) 0;border-bottom:1px solid var(--border)}
.channels .label{grid-area:label}
.channels b{grid-area:name;font-size:clamp(24px,3vw,36px);font-weight:900;letter-spacing:var(--tracking-display);color:var(--fg-1);line-height:1}
.channels .btn{grid-area:btn;justify-self:start}
@media(min-width:900px){.channels li{grid-template-columns:200px 1fr auto;grid-template-areas:"label name btn";gap:var(--space-6)}.channels .btn{justify-self:end}}

/* 9. Seminare */
.seminar{display:grid;grid-template-columns:1fr;gap:var(--space-6)}
.seminar .big{margin-bottom:var(--space-4)}
.seminar p{max-width:56ch}
.seminar .btn{margin-top:var(--space-2)}
@media(min-width:900px){.seminar{grid-template-columns:1fr 1.4fr;gap:var(--space-9);align-items:start}}

/* 10. Abschluss */
.cta{position:relative;min-height:80svh;display:flex;align-items:flex-end;color:var(--fg-1);overflow:hidden}
.cta-bg{position:absolute;inset:0;background:url(img/sandsack.jpg) center 30%/cover no-repeat}
.cta::after{content:"";position:absolute;inset:0;background:var(--scrim-bottom)}
.cta .wrap{position:relative;z-index:1;padding-top:var(--space-10);padding-bottom:var(--space-9);width:100%}
.cta h2{font-size:clamp(40px,7vw,96px);max-width:12ch;margin:var(--space-5) 0}
.cta .lead{color:var(--fg-1);max-width:42ch}

/* Fußbereich */
footer{border-top:1px solid var(--border);padding:var(--space-8) 0 var(--space-7)}
.foot{display:grid;grid-template-columns:1fr;gap:var(--space-6)}
.foot-brand{display:flex;align-items:center;gap:var(--space-4)}
.foot-brand img{height:44px;width:auto}
.foot-brand b{display:block;color:var(--fg-1);font-weight:900;letter-spacing:var(--tracking-display);font-size:20px;line-height:1.1;margin-bottom:4px}
.foot-contact .label{display:block;margin-bottom:6px}
.foot-contact a{font-weight:600}
.foot-nav{display:flex;flex-wrap:wrap;gap:var(--space-4) var(--space-5)}
.foot-nav a{font-family:var(--font-mono);font-weight:700;font-size:var(--fs-label);letter-spacing:var(--tracking-label);text-transform:uppercase;text-decoration:none;color:var(--fg-3)}
.foot-nav a:hover{color:var(--fg-1)}
.copy{display:block}
@media(min-width:900px){.foot{grid-template-columns:1fr 1fr;align-items:center}.foot-nav,.copy{justify-self:end;text-align:right}}

/* Rechtstexte */
.legal{padding:var(--space-9) 0}
.legal .wrap{max-width:780px}
.legal h1{font-size:clamp(40px,6vw,72px);margin:var(--space-5) 0 var(--space-7)}
.legal h2{font-size:26px;line-height:1.1;margin:var(--space-7) 0 var(--space-3)}
.legal h3{font-size:19px;margin:var(--space-5) 0 var(--space-2)}
.legal ul{padding-left:20px;list-style:disc}
.legal-top{border-bottom:1px solid var(--border)}
.legal-top .wrap{display:flex;justify-content:space-between;align-items:center;padding-top:20px;padding-bottom:20px;max-width:var(--wrap)}
.legal-top img{height:30px;width:auto}
.legal-top .label{text-decoration:none}
footer.simple .wrap{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap}
footer.simple img{height:36px;width:auto}
footer.simple nav{display:flex;gap:var(--space-5)}
footer.simple nav a{font-family:var(--font-mono);font-weight:700;font-size:var(--fs-label);letter-spacing:var(--tracking-label);text-transform:uppercase;text-decoration:none;color:var(--fg-3)}
footer.simple nav a:hover{color:var(--fg-1)}

@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}html{scroll-behavior:auto}}
