@font-face{font-family:"Inter Tight";font-style:normal;font-weight:400;font-display:swap;src:url(assets/fonts/inter-tight-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Inter Tight";font-style:normal;font-weight:500;font-display:swap;src:url(assets/fonts/inter-tight-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Inter Tight";font-style:normal;font-weight:700;font-display:swap;src:url(assets/fonts/inter-tight-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"Inter Tight";font-style:normal;font-weight:800;font-display:swap;src:url(assets/fonts/inter-tight-latin-800-normal.woff2) format("woff2")}

:root{--bg:#090909;--fg:#f2f0eb;--red:#ff2b1b;--line:#323232;--muted:#b9b6b0;--muted-2:#9a9791}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--fg);font-family:"Inter Tight",Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
a{-webkit-tap-highlight-color:transparent}
::selection{background:var(--red);color:#fff}
:focus-visible{outline:2px solid var(--red);outline-offset:4px}

.nav{display:flex;align-items:center;justify-content:space-between;padding:24px 5%;border-bottom:1px solid var(--line);gap:20px}
.brand{font-size:clamp(18px,2vw,26px);font-weight:800;letter-spacing:-.05em;white-space:nowrap}
.brand span{font-weight:400}
.brand b,.red{color:var(--red)}
.nav nav{display:flex;gap:32px}
.nav nav a,.nav-cta,.eyebrow,.section-index,.hero-bottom,.visual-label,.project>span,footer{font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.nav nav a{padding:12px 0}
.nav nav a:hover,.text-link:hover{color:var(--red)}
.nav-cta{border:1px solid #777;padding:14px 20px;border-radius:30px;white-space:nowrap}
.nav-cta span{color:var(--red);margin-left:12px}
.nav-cta:hover{border-color:var(--red)}

.hero{min-height:740px;padding:55px 5% 25px;overflow:hidden}
.eyebrow{display:flex;align-items:center;gap:12px;color:var(--muted)}
.eyebrow i{width:27px;height:2px;background:var(--red)}
.hero-grid{display:grid;grid-template-columns:53% 47%;min-height:560px;align-items:center}
.hero-copy{position:relative;z-index:2}
.hero h1{font-size:clamp(70px,8.6vw,150px);line-height:.92;letter-spacing:-.045em;margin:40px 0 30px;font-weight:800}
.hero-copy p{font-size:clamp(18px,1.6vw,22px);line-height:1.5;color:var(--muted);max-width:470px;margin:0}
.actions{display:flex;align-items:center;gap:35px;margin-top:40px;flex-wrap:wrap}
.primary{background:var(--red);color:#fff;border-radius:50px;padding:18px 26px;display:inline-flex;gap:40px;align-items:center;font-size:15px;font-weight:700;min-height:52px}
.primary:hover{background:#fff;color:#111}
.text-link{font-size:14px;letter-spacing:.04em;border-bottom:1px solid #777;padding:12px 0 8px}
.visual{height:550px;position:relative;display:grid;place-items:center}
.planet{width:min(36vw,470px);height:min(36vw,470px);border-radius:50%;position:relative;transform:translate3d(0,0,0);background:radial-gradient(circle at 66% 33%,#252020 0%,#0b0b0b 38%,#000 60%,#ff210f 79%,#500500 85%,#080808 90%);box-shadow:20px 15px 90px #ff260d29,inset -15px -15px 45px #e9230a66,inset 16px 16px 50px #ffffff10;transition:transform .2s ease-out;animation:breathe 6s ease-in-out infinite alternate}
.planet:after{content:"";position:absolute;inset:4%;border-radius:50%;border-right:2px solid #ff3c26;transform:rotate(35deg);filter:drop-shadow(0 0 12px #ff321f)}
.planet-core{position:absolute;inset:7%;border-radius:50%;background:radial-gradient(circle at 30% 25%,#353535 0%,#101010 26%,transparent 60%)}
.planet-glow{position:absolute;inset:-10%;border-radius:50%;box-shadow:0 0 100px #f221141a}
.orbit{position:absolute;width:96%;height:70%;border:1px solid #ffffff22;border-radius:50%;transform:rotate(-32deg)}
.orbit-two{width:75%;height:92%;transform:rotate(39deg)}
.visual-label{position:absolute;right:0;bottom:14%;color:var(--muted-2);line-height:2;text-align:right}
.cross{position:absolute;top:8%;left:8%;color:var(--red)}
.hero-bottom{display:flex;justify-content:space-between;color:var(--muted-2);padding-top:30px;border-top:1px solid var(--line)}

.manifesto,.services,.process,.work,.pricing,.about,.faq,.contact{padding:110px 5%;border-top:1px solid var(--line)}
.section-index{color:var(--muted)}
.manifesto{position:relative;min-height:520px}
.manifesto h2,.section-heading h2,.contact h2,.about h2{font-size:clamp(52px,7vw,105px);line-height:1.02;letter-spacing:-.04em;margin:35px 0;font-weight:800}
.manifesto h2 em{font-style:normal;color:var(--red)}
.manifesto p,.about p{color:var(--muted);max-width:560px;line-height:1.7;font-size:18px}
.tiny-mark{position:absolute;right:12%;bottom:18%;width:70px;height:70px;border-radius:50%;background:var(--red);box-shadow:0 0 90px #f3222250}

.section-heading{display:flex;justify-content:space-between;gap:30px;align-items:start;margin-bottom:50px}
.section-heading h2{margin:0}
.section-heading h2 span,.contact h2 span,.about h2 span{color:var(--red)}
.service-row{display:grid;grid-template-columns:8% 32% 1fr 5%;align-items:center;gap:20px;border-top:1px solid var(--line);padding:30px 0;transition:padding .3s}
.service-row:last-of-type{border-bottom:1px solid var(--line)}
.service-row:hover{padding-left:14px}
.service-row:hover h3,.service-row:hover b{color:var(--red)}
.service-row>span{color:var(--red);font-size:14px}
.service-row h3{font-size:clamp(26px,3vw,42px);letter-spacing:-.04em;margin:0;font-weight:700;transition:color .2s}
.service-row p{max-width:440px;color:var(--muted);line-height:1.55;font-size:16px;margin:0}
.service-row b{font-size:26px;font-weight:400;transition:color .2s}

.projects{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.project{border:1px solid #333;padding:18px 18px 24px}
.project>span{color:var(--muted)}
.project-shot{margin-top:15px;overflow:hidden;border-radius:4px;aspect-ratio:16/10;background:#161616}
.project-shot img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.project:hover .project-shot img{transform:scale(1.04)}
.project h3{font-size:clamp(22px,2.2vw,30px);letter-spacing:-.03em;margin:22px 0 8px;font-weight:700}
.project p{font-size:16px;color:var(--muted);line-height:1.55;margin:0}

.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}
.about p{margin:35px 0 0}
.about p+p{margin-top:16px}
.facts{list-style:none;padding:0;margin:40px 0 0;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.facts li{padding:22px 16px 0 0;display:flex;flex-direction:column;gap:6px}
.facts b{font-size:42px;letter-spacing:-.05em;color:var(--red)}
.facts span{font-size:14px;color:var(--muted)}

.faq-list{margin-top:40px;max-width:900px;border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;padding:26px 40px 26px 0;font-size:clamp(20px,2vw,26px);font-weight:500;letter-spacing:-.02em;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);color:var(--red);font-size:30px;transition:transform .3s}
.faq details[open] summary:after{transform:translateY(-50%) rotate(45deg)}
.faq details p{color:var(--muted);line-height:1.7;font-size:17px;max-width:720px;margin:0 0 26px}

.contact{padding-bottom:130px}
.contact p{color:var(--muted);font-size:19px;margin:0 0 34px;max-width:560px;line-height:1.6}
.contact .mail{display:block;margin-top:30px;font-size:clamp(22px,3vw,40px);font-weight:700;letter-spacing:-.03em;width:max-content;max-width:100%;border-bottom:2px solid var(--red);padding-bottom:6px}
.contact .mail:hover{color:var(--red)}

footer{border-top:1px solid var(--line);padding:30px 5%;display:flex;justify-content:space-between;gap:20px;align-items:center;color:var(--muted-2)}
footer .brand{color:#fff;text-transform:none;letter-spacing:-.05em;font-size:22px}
.legal{display:flex;gap:24px}
.legal a{padding:10px 0}
.legal a:hover{color:var(--red)}

.cursor-dot{position:fixed;pointer-events:none;width:12px;height:12px;border-radius:50%;background:var(--red);z-index:20;top:0;left:0;transform:translate(-100px,-100px);mix-blend-mode:screen}
@keyframes breathe{to{filter:brightness(1.2);box-shadow:20px 15px 120px #ff260d44,inset -15px -15px 55px #e9230a88}}

/* Ablauf */
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}
.steps li{padding:30px 24px 10px 0;display:flex;flex-direction:column;gap:12px}
.steps span{color:var(--red);font-size:14px}
.steps h3{margin:0;font-size:clamp(26px,2.6vw,36px);letter-spacing:-.035em;font-weight:700}
.steps p{margin:0;color:var(--muted);line-height:1.55;font-size:16px}

/* Pakete */
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:40px}
.plan{border:1px solid #333;padding:32px;display:flex;flex-direction:column;gap:14px}
.plan>span{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.plan h3{margin:0;font-size:clamp(32px,3vw,44px);letter-spacing:-.04em;font-weight:800}
.plan p{margin:0;color:var(--muted);line-height:1.55;font-size:16px}
.plan ul{list-style:none;margin:10px 0 0;padding:18px 0 0;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:10px;font-size:15px}
.plan li:before{content:"·";color:var(--red);font-weight:800;margin-right:10px}
.plan-hot{border-color:var(--red);background:#140807}
.plan-hot>span{color:var(--red)}

/* Unterseiten (Impressum, Datenschutz) */
.legal-page{padding:80px 5% 120px;max-width:860px}
.legal-page h1{font-size:clamp(44px,6vw,80px);letter-spacing:-.05em;margin:30px 0 40px;font-weight:800}
.legal-page h2{font-size:22px;margin:40px 0 10px;letter-spacing:-.02em}
.legal-page p,.legal-page li{color:var(--muted);line-height:1.7;font-size:17px}
.legal-page a{border-bottom:1px solid var(--red)}

@media(max-width:800px){
  .nav{padding:18px 5%}
  .nav nav{display:none}
  .nav-cta{font-size:11px;padding:12px 14px}
  .hero{min-height:0;padding-top:35px}
  .hero-grid{display:flex;flex-direction:column;align-items:stretch}
  .hero h1{font-size:clamp(62px,17vw,110px)}
  .hero-copy p{font-size:18px}
  .visual{height:360px;order:2}
  .planet{width:280px;height:280px}
  .visual-label{right:0;bottom:3%}
  .hero-bottom{margin-top:10px}
  .manifesto,.services,.process,.work,.pricing,.about,.faq,.contact{padding:76px 5%}
  .steps,.plans{grid-template-columns:1fr}
  .manifesto h2,.section-heading h2,.contact h2,.about h2{font-size:clamp(44px,12vw,72px)}
  .tiny-mark{display:none}
  .section-heading{display:block}
  .section-heading h2{margin-top:25px}
  .service-row{grid-template-columns:30px 1fr 25px;gap:12px}
  .service-row p{grid-column:2;grid-row:2}
  .service-row b{grid-column:3;grid-row:1}
  .projects{grid-template-columns:1fr}
  .about-grid{grid-template-columns:1fr;gap:0}
  .contact .mail{width:auto;word-break:break-all}
  footer{flex-direction:column;align-items:start}
  .cursor-dot{display:none}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}

/* V2: Domain + Design */
.service-note{color:var(--muted);font-size:17px;margin:32px 0 0}.domain-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:start}.domain-grid p{color:var(--muted);font-size:18px;line-height:1.7}.domain-grid .lead{font-size:clamp(23px,2.5vw,36px);font-weight:700;line-height:1.3;color:var(--fg);letter-spacing:-.03em;margin-top:0}.domain-feature{border:1px solid #383838;padding:clamp(22px,3vw,45px);background:radial-gradient(circle at 100% 0%,#35100d,#101010 55%)}.domain-feature h3{font-size:clamp(35px,4vw,62px);letter-spacing:-.05em;line-height:1.05;margin:35px 0}.domain-feature h3 span{color:var(--red)}.domain-example{border-top:1px solid #444;padding-top:25px;margin-top:30px;display:flex;flex-direction:column;gap:12px}.domain-example strong{font-size:clamp(24px,2.5vw,38px);letter-spacing:-.04em;overflow-wrap:anywhere}.domain-example small{font-size:11px;letter-spacing:.07em;color:var(--muted)}.insights{padding:110px 5%;border-top:1px solid var(--line)}.insights-intro{font-size:18px;color:var(--muted);max-width:650px;line-height:1.6;margin-bottom:42px}.insight-list{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.insight-list article{border-top:1px solid #444;padding-top:24px}.insight-list article span{font-size:11px;color:var(--red);letter-spacing:.09em}.insight-list h3{font-size:clamp(24px,2.5vw,36px);line-height:1.15;letter-spacing:-.035em}.facts{grid-template-columns:repeat(3,minmax(0,1fr))}.facts b{font-size:clamp(25px,3vw,42px)}@media(max-width:800px){.domain-grid,.insight-list{grid-template-columns:1fr}.insights{padding:76px 5%}.domain-grid{gap:35px}.nav nav{display:none}.facts li{padding-right:8px}.facts span{font-size:12px}}

/* V3: two strengths, editorial statement */
.duo{padding:110px 5%;border-top:1px solid var(--line);overflow:hidden}
.duo-heading{display:flex;align-items:end;justify-content:space-between;gap:45px;margin:35px 0 50px}
.duo-heading h2{font-size:clamp(48px,6.3vw,96px);line-height:1.02;letter-spacing:-.055em;margin:0;font-weight:800}
.duo-heading h2 span,.duo-end strong span{color:var(--red)}
.duo-heading p{max-width:300px;color:var(--muted);font-size:17px;line-height:1.6;margin:0 0 7px}
.duo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.duo-card{min-height:390px;border:1px solid #414141;padding:clamp(24px,3.2vw,48px);display:flex;flex-direction:column;justify-content:space-between;position:relative;isolation:isolate;overflow:hidden;transition:border-color .3s,background .3s}
.duo-card:before{content:"";position:absolute;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,#ff2b1b24,transparent 70%);right:-95px;top:-95px;opacity:0;transition:opacity .35s;z-index:-1}
.duo-card:hover,.duo-card:focus-visible{border-color:var(--red);background:#140a09}.duo-card:hover:before,.duo-card:focus-visible:before{opacity:1}
.duo-top,.duo-foot{display:flex;align-items:center;justify-content:space-between;gap:20px}.duo-top{font-size:12px;letter-spacing:.15em;color:var(--muted)}
.duo-symbol{font-size:29px;color:var(--red);line-height:1}.duo-card h3{font-size:clamp(31px,3.5vw,57px);line-height:1.1;letter-spacing:-.05em;font-weight:800;margin:35px 0}.duo-card h3 span{color:var(--red)}
.duo-foot{border-top:1px solid #414141;padding-top:22px}.duo-foot p{color:var(--muted);font-size:16px;margin:0}.duo-foot>span{font-size:26px;color:var(--red)}
.duo-end{padding-top:35px;display:flex;align-items:center;justify-content:space-between;gap:20px}.duo-end strong{font-size:clamp(25px,3vw,43px);letter-spacing:-.045em}.duo-red-dot{height:16px;width:16px;flex:none;background:var(--red);border-radius:50%;box-shadow:0 0 35px #ff2b1b66}
@media(max-width:800px){.duo{padding:76px 5%}.duo-heading{display:block}.duo-heading p{margin-top:22px}.duo-grid{grid-template-columns:1fr}.duo-card{min-height:310px}.duo-card h3{font-size:clamp(32px,8vw,48px)}.duo-end{align-items:flex-start}}

/* V4 FULLIX — isolated widget */
.fullix{position:fixed;right:22px;bottom:22px;z-index:9999;font-family:inherit;color:#f7f4f1}.fullix *{box-sizing:border-box}.fullix [hidden]{display:none!important}.fullix button{font:inherit;cursor:pointer}.fullix-launch{position:relative;border:1px solid #ff392b;background:#090909;width:76px;height:76px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 0 24px #f22b2055;transition:transform .2s}.fullix-launch:hover{transform:translateY(-4px)}.fullix-launch:focus-visible,.fullix button:focus-visible,.fullix input:focus-visible{outline:2px solid white;outline-offset:3px}.fullix-launch-label{position:absolute;right:63px;top:-20px;white-space:nowrap;background:#fff;color:#141414;border-radius:25px 25px 3px 25px;padding:9px 13px;font-size:12px;font-weight:700}.fullix-launch-label b,.fullix-red{color:#ff3023}.fullix-launch-face{position:relative;width:45px;height:42px;border:2px solid #ff3a30;border-radius:16px;background:linear-gradient(140deg,#242424,#060606);box-shadow:0 0 13px #ff302366;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px}.fullix-antenna{position:absolute;left:50%;top:-12px;height:11px;width:2px;background:#ff392b;transform:translateX(-50%)}.fullix-antenna:before{content:"";position:absolute;width:6px;height:6px;background:#ff392b;border-radius:50%;left:-2px;top:-5px}.fullix-eyes{display:flex;gap:10px}.fullix-eyes i{width:7px;height:7px;border-top:3px solid #fff;border-radius:50%;animation:fullix-blink 5s infinite}.fullix-smile{height:6px;width:12px;border-bottom:2px solid #fff;border-radius:50%}@keyframes fullix-blink{0%,43%,47%,100%{transform:scaleY(1)}45%{transform:scaleY(.12)}}.fullix-panel{position:absolute;right:0;bottom:90px;width:min(390px,calc(100vw - 24px));height:min(580px,calc(100dvh - 125px));background:#0c0c0e;border:1px solid #ad2b25;border-radius:22px;box-shadow:0 20px 70px #000b,0 0 35px #a622201b;display:flex;flex-direction:column;overflow:hidden}.fullix-head{padding:15px 17px;display:flex;gap:12px;align-items:center;border-bottom:1px solid #333}.fullix-head strong{font-size:19px}.fullix-head small{display:block;color:#a7a7a7;font-size:11px;margin-top:2px}.fullix-mini{width:36px;height:36px;background:#141414;border:1px solid #ff3023;border-radius:13px;position:relative;display:flex;align-items:center;justify-content:center;flex:none}.fullix-mini .fullix-face{display:flex;gap:7px}.fullix-mini i{width:5px;height:5px;border-radius:50%;background:#fff}.fullix-close{margin-left:auto;color:#fff;background:none;border:0;font-size:28px;line-height:1;padding:5px}.fullix-messages{padding:18px 15px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:12px;overscroll-behavior:contain}.fullix-bubble{max-width:93%;padding:13px 15px;border-radius:16px;font-size:14px;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.fullix-bubble.bot{background:#222326;align-self:flex-start}.fullix-bubble.user{background:#62201c;align-self:flex-end}.fullix-options{display:flex;flex-direction:column;gap:7px;padding:0 15px 10px}.fullix-options button{border:1px solid #555;border-radius:30px;background:#121214;color:#f6f4f1;text-align:left;padding:10px 13px;font-size:12px}.fullix-options button:hover{border-color:#ff392b;background:#241311}.fullix-form{display:flex;align-items:center;border:1px solid #555;border-radius:35px;margin:0 15px 8px;padding:4px;background:#171719}.fullix-form input{width:100%;min-width:0;background:none;border:0;outline:none;color:#fff;padding:10px;font-size:13px}.fullix-form button{width:36px;height:36px;flex:none;border:0;border-radius:50%;background:#ff3023;color:white}.fullix-disclaimer{color:#888;font-size:10px;text-align:center;margin:0;padding:0 8px 10px}.fullix-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:600px){.fullix{right:12px;bottom:12px}.fullix-launch{width:64px;height:64px}.fullix-launch-label{right:55px}.fullix-panel{bottom:75px;height:min(550px,calc(100dvh - 100px))}}@media(prefers-reduced-motion:reduce){.fullix-eyes i{animation:none}}

/* Kontakt & Ansprechpartner */
.owner{display:flex;flex-direction:column;gap:4px;margin:30px 0 0!important}
.owner strong{font-size:24px;color:var(--fg,#f2f0eb);letter-spacing:-.02em}
.owner span{font-size:15px;color:#b9b6b0}
.contact-alt{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.contact-btn{display:inline-flex;align-items:center;min-height:48px;padding:0 22px;border:1px solid #777;border-radius:40px;font-size:15px;font-weight:600}
.contact-btn:hover{border-color:#ff2b1b;color:#ff2b1b}
.contact-person{margin-top:22px!important;font-size:15px!important;color:#9a9791!important}
.fullix-bubble.typing{opacity:.7;font-style:italic}
