:root{--ink:#20302d;--muted:#5c655f;--accent:#b74219;--orange:#e65c2b;--paper:#f7f5ef;--light:#f0e9dd;--max:1120px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:35px}
body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.75 Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
::selection{background:#f4b89a;color:#20302d}
a{color:inherit;text-underline-offset:5px}a:hover{color:var(--accent)}
a:focus-visible,button:focus-visible{outline:3px solid var(--orange);outline-offset:5px}
.wrap{width:min(var(--max),calc(100% - 96px));margin-inline:auto}
.skip-link{position:absolute;top:-100px;left:20px;background:var(--paper);padding:12px;z-index:50}.skip-link:focus{top:10px}
.site-header{display:flex;align-items:center;justify-content:space-between;gap:32px;padding-block:30px;position:relative;z-index:2}
.wordmark{font-size:29px;font-weight:800;letter-spacing:-2px;text-decoration:none}.wordmark span,.accent{color:var(--orange)}
.site-header nav{display:flex;gap:28px;align-items:center;font-size:13px}.site-header nav a{text-decoration:none}.site-header nav a:last-child{font-weight:700}
main{overflow:clip;position:relative}
.hero{position:relative;min-height:660px;display:flex;align-items:center;padding-block:65px 60px}
.hero-copy{position:relative;z-index:1;width:70%;max-width:760px}
.eyebrow{font:700 11px/1.5 'SFMono-Regular',Consolas,'Liberation Mono',monospace;text-transform:uppercase;letter-spacing:1.6px;color:var(--accent);margin:0 0 25px}
h1{font-size:clamp(4rem,8.1vw,7.4rem);font-weight:700;line-height:1.04;letter-spacing:-.075em;margin:0 0 28px}
.hero-statement{font-size:clamp(1.8rem,3.1vw,2.7rem);line-height:1.25;letter-spacing:-.04em;margin:0 0 28px;font-weight:500}
.hero .intro{max-width:540px;color:var(--muted);font-size:17px;margin:0 0 32px}
.hero-geometry{position:absolute;width:610px;right:-130px;top:8px;pointer-events:none}
.hero-geometry img{display:block;width:100%;height:auto}.geometry-caption{position:absolute;bottom:62px;right:122px;font:12px/1.5 'SFMono-Regular',Consolas,monospace;letter-spacing:1px;color:#727d74}
.pdf-button{display:inline-flex;align-items:center;gap:22px;padding:12px 24px;border-radius:28px;background:var(--ink);color:var(--paper);text-decoration:none;font-size:13px;font-weight:700;margin:0 23px 12px 0;transition:background .2s,transform .2s}.pdf-button:hover{color:white;background:var(--accent);transform:translateY(-2px)}
.text-link{display:inline-flex;gap:16px;font-size:13px;text-decoration:none;padding-block:12px}.text-link span{color:var(--accent)}
.fact-strip{position:relative;display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:45px;padding-block:25px 5px;max-width:950px}
.fact-strip div{position:relative;padding-left:19px}.fact-strip div:before{content:'';position:absolute;width:6px;height:6px;left:0;top:14px;border-radius:50%;background:var(--orange)}
.fact-strip strong{display:block;font-size:19px;font-weight:600;letter-spacing:-.5px}.fact-strip span{font-size:13px;color:var(--muted)}
.flow-bridge{height:180px;background:url('assets/sine-flow.svg') center / 1400px 220px no-repeat;margin-top:10px;opacity:.7}
.section{position:relative;padding-block:50px 105px}
.split{display:grid;grid-template-columns:350px minmax(0,1fr);gap:95px}
h2{font-size:clamp(2.2rem,3.4vw,3rem);line-height:1.16;letter-spacing:-.055em;font-weight:500;margin:0 0 28px}
h3{font-size:20px;line-height:1.4;letter-spacing:-.4px;margin:0 0 12px}
p{margin:0 0 22px}.lead{font-size:22px;line-height:1.6;letter-spacing:-.35px}.section-body>p:not(.lead){color:var(--muted)}
#profil:before{content:'';position:absolute;left:-240px;top:100px;width:550px;height:550px;background:radial-gradient(ellipse,#efe2d2 0,transparent 68%);z-index:-1;pointer-events:none}
.perspective{margin:38px -26px;padding:30px 26px 32px;background:radial-gradient(ellipse at 25% 50%,#efdfcb 0,#f3ecdf 40%,transparent 75%);border-radius:45% 55% 40% 30% / 30% 40% 60% 50%}.perspective h3{color:var(--accent);font-weight:500}.perspective p{margin:0}
#werdegang{padding-top:85px}.timeline{position:relative}.timeline:before{content:'';position:absolute;top:5px;bottom:0;left:0;width:36px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='420' viewBox='0 0 36 420'%3E%3Cpath d='M18 0 C-4 70 -4 140 18 210 S40 350 18 420' fill='none' stroke='%23d4bca7' stroke-width='1'/%3E%3C/svg%3E") center top / 36px 420px repeat-y;pointer-events:none}
.job{position:relative;padding:0 0 55px 62px}.job:before{content:'';position:absolute;left:13px;top:7px;width:10px;height:10px;border:2px solid var(--orange);border-radius:50%;background:var(--paper)}.job:last-child{padding-bottom:0}.job h3{font-size:23px;font-weight:500;margin-bottom:6px}
.date{font:12px/1.7 'SFMono-Regular',Consolas,monospace;color:var(--accent);margin:0 0 12px}.company{font-size:15px;font-weight:700;margin:0 0 12px}.role-note{font-size:14px;color:var(--muted);margin:0 0 12px}
ul{margin:0;padding-left:18px;color:var(--muted);font-size:16px}li{padding-left:3px;margin-bottom:9px}li::marker{color:#b48367}
.skills-section{position:relative;padding:155px 0 140px;background:radial-gradient(ellipse at 50% 48%,#e8ebe2 0,transparent 68%)}
.skills-section:before{content:'';position:absolute;inset:0 0 auto;height:180px;background:url('assets/sine-flow.svg') center / 1600px 230px no-repeat;opacity:.45;transform:scaleY(-1);pointer-events:none}
.skills-section>.wrap{position:relative}.skills-section h2{max-width:580px;margin-bottom:65px}
.skills-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:55px}.skills-grid article:nth-child(2){padding-top:55px}.skills-grid article:nth-child(3){padding-top:110px}
.skill-number{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid #b5bfb1;border-radius:50%;font:12px/1 Consolas,monospace;color:#65775e;margin-bottom:25px}.skills-grid h3{font-size:22px;font-weight:500}.skills-grid p{font-size:16px;color:var(--muted);margin:0}
.qualifications article+article{margin-top:36px}.qualifications h3{font-weight:500}
.footer{position:relative;overflow:hidden;padding-block:95px 90px;background:radial-gradient(ellipse at 80% 100%,#e8cdb6,transparent 70%)}.footer:before{content:'';position:absolute;inset:0;pointer-events:none;background:url('assets/sine-flow.svg') center bottom -95px / 1500px 250px no-repeat;opacity:.5}.footer>.wrap{position:relative}
.footer-top{display:flex;justify-content:space-between;align-items:center;gap:30px}.footer h2{font-size:42px;margin-bottom:18px}.footer .eyebrow{margin-bottom:18px}address{font-style:normal;color:var(--muted);font-size:15px}.contact-links{display:flex;flex-direction:column;gap:13px}.contact-links a{font-size:19px;text-decoration:none;overflow-wrap:anywhere}.contact-links a:last-child{font-size:16px;color:var(--muted)}
@media(min-width:1100px){#werdegang .section-heading{position:sticky;top:55px;align-self:start}}
@media(max-width:1000px){.wrap{width:calc(100% - 64px)}.hero{min-height:600px}.hero-geometry{width:500px;right:-135px;top:35px;opacity:.7}.hero-copy{width:78%}.split{grid-template-columns:260px minmax(0,1fr);gap:50px}.fact-strip{gap:25px}.skills-grid{gap:28px}.job{padding-left:48px}.hero .intro{max-width:470px}}
@media(max-width:700px){body{font-size:16px}.wrap{width:calc(100% - 40px)}.site-header{padding-block:22px;gap:20px}.site-header nav{font-size:12px;gap:14px;flex-wrap:wrap;justify-content:flex-end}.wordmark{font-size:26px}.hero{min-height:0;padding:64px 0 45px}.hero-copy{width:100%}.hero h1{font-size:clamp(3.2rem,13.5vw,5.8rem);letter-spacing:-.07em}.hero .eyebrow{max-width:240px;line-height:1.9;font-size:10px}.hero-statement{font-size:29px}.hero .intro{max-width:100%;font-size:16px}.hero-geometry{width:440px;right:-240px;top:-55px;opacity:.2}.geometry-caption{display:none}.hero .pdf-button{margin-right:15px}.text-link{font-size:12px}.fact-strip{grid-template-columns:1fr;gap:20px;padding-top:10px}.fact-strip strong{font-size:18px}.flow-bridge{height:125px;background-size:850px 150px;margin-top:0}.split{grid-template-columns:1fr;gap:22px}.section{padding-block:30px 65px}.section-heading .eyebrow{margin-bottom:18px}h2{font-size:36px;max-width:470px}.lead{font-size:21px}.perspective{margin:30px -10px;padding:25px 10px}#werdegang{padding-top:35px}.job{padding-left:42px;padding-bottom:44px}.job h3{font-size:21px}.timeline:before{width:24px;background-size:24px 420px}.job:before{left:7px}.skills-section{padding:115px 0 85px}.skills-section h2{margin-bottom:42px}.skills-grid{grid-template-columns:1fr;gap:36px}.skills-grid article{max-width:480px}.skills-grid article:nth-child(2),.skills-grid article:nth-child(3){padding-top:0}.skills-grid article:nth-child(2){margin-left:24px}.skill-number{width:34px;height:34px;margin-bottom:18px}.footer{padding-block:65px 85px}.footer-top{align-items:flex-start;flex-direction:column;gap:28px}.contact-links a{font-size:17px}.footer h2{font-size:36px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.pdf-button{transition:none}}
@media print{@page{size:A4;margin:18mm}body{background:white;font-size:11pt;color:#191919}.wrap{width:100%}main{overflow:visible}.site-header,.skip-link,.hero-geometry,.flow-bridge,.pdf-button,.text-link{display:none}.hero{min-height:0;padding:0 0 22px}.hero-copy{width:100%;max-width:none}h1,.hero h1{font-size:40pt}.hero-statement{font-size:20pt}.hero .intro{font-size:11pt}.fact-strip{gap:20px;padding:10px 0 25px;grid-template-columns:repeat(3,1fr)}.fact-strip strong{font-size:12pt}.fact-strip span{font-size:10pt}.section,#werdegang{padding:22px 0}.split{grid-template-columns:1fr;gap:0}h2{font-size:24pt}#werdegang .section-heading{position:static}.job{padding:0 0 20px}.job:before,.timeline:before,.skills-section:before,.footer:before,#profil:before{display:none}.job,.qualifications article,.skills-grid article{break-inside:avoid}.perspective{background:none;margin:20px 0;padding:0}.skills-section{background:none;padding:25px 0}.skills-grid{display:block}.skills-grid article,.skills-grid article:nth-child(2),.skills-grid article:nth-child(3){padding:0;margin:0 0 20px}.skill-number{display:none}.footer{background:none;padding:25px 0}.footer-top{align-items:flex-start}h2,h3{break-after:avoid}}
