
:root{--black:#000;--near:#070806;--charcoal:#11130f;--brown:#6d5940;--olive:#7b9474;--sage:#a9b8a3;--beige:#b8b290;--paper:#f7f4e8;--off:#fbfaf3;--line:#d9d3b8;--text:#11130f;--muted:#5e6457;--shadow:0 24px 70px rgba(0,0,0,.24);--container:min(1180px,calc(100vw - 48px));}
*{box-sizing:border-box}html{scroll-behavior:smooth}body.ai2-theme{margin:0;background:var(--paper);color:var(--text);font-family:Arial,Helvetica,sans-serif;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body:before{content:"";position:fixed;inset:0;background:radial-gradient(circle at 18% 10%,rgba(123,148,116,.16),transparent 30vw),radial-gradient(circle at 82% 0%,rgba(109,89,64,.18),transparent 34vw);pointer-events:none;z-index:-3}#ai2-bg-canvas{position:fixed;inset:0;width:100%;height:100%;z-index:-2;pointer-events:none;opacity:.38}.ai2-container{width:var(--container);margin:0 auto}.ai2-header{position:sticky;top:0;z-index:100;background:rgba(251,250,243,.92);backdrop-filter:blur(16px);border-bottom:1px solid rgba(109,89,64,.18)}.ai2-header__inner{height:76px;display:flex;align-items:center;justify-content:space-between}.ai2-brand{display:inline-flex;align-items:baseline;gap:9px;text-decoration:none;color:var(--text);letter-spacing:.02em}.ai2-brand__main{font-size:2.2rem;font-weight:900;line-height:1;color:var(--charcoal)}.ai2-brand__sub{font-size:.9rem;font-weight:800;color:var(--brown)}.ai2-nav{display:flex;align-items:center;gap:28px}.ai2-nav a{color:var(--charcoal);text-decoration:none;font-size:.9rem;font-weight:800;letter-spacing:.02em;position:relative}.ai2-nav a:after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:1px;background:var(--olive);transform:scaleX(0);transform-origin:left;transition:transform .24s ease}.ai2-nav a:hover:after{transform:scaleX(1)}.ai2-lang-toggle{border:0;background:transparent;display:flex;gap:8px;color:var(--brown);font-weight:900;cursor:pointer}.ai2-lang-toggle span+span:before{content:"|";margin-right:8px;color:#b9b1a0}.ai2-menu-button{display:none;background:transparent;border:0;padding:8px}.ai2-menu-button span:not(.screen-reader-text){display:block;width:26px;height:2px;background:var(--charcoal);margin:5px 0}.screen-reader-text{position:absolute;left:-10000px}.lang-en{display:none}body.ai2-lang-en .lang-de{display:none!important}body.ai2-lang-en .lang-en{display:initial!important}body.ai2-lang-en p.lang-en,body.ai2-lang-en h1.lang-en,body.ai2-lang-en h2.lang-en,body.ai2-lang-en h3.lang-en{display:block!important}.ai2-hero{background:linear-gradient(130deg,#050604 0%,#11130f 48%,#2a241d 100%);color:var(--off);border-bottom:1px solid rgba(184,178,144,.28);position:relative;overflow:hidden}.ai2-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(184,178,144,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(184,178,144,.045) 1px,transparent 1px);background-size:44px 44px;opacity:.5}.ai2-hero__grid{position:relative;z-index:1;display:grid;grid-template-columns:.88fr 1.12fr;gap:72px;align-items:center;min-height:570px;padding:70px 0}.ai2-eyebrow{margin:0 0 18px;color:var(--olive);font-size:.78rem;text-transform:uppercase;letter-spacing:.18em;font-weight:900}.ai2-hero h1,.ai2-section h2{font-size:clamp(2rem,4vw,4.2rem);line-height:1.05;margin:0 0 28px;letter-spacing:-.035em}.ai2-section h2{font-size:clamp(1.55rem,2.6vw,2.6rem);color:inherit}.ai2-lead{font-size:1.08rem;max-width:620px;color:#eee9db;margin:0 0 28px;text-align:justify}.ai2-hero__actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}.ai2-button{border:1px solid currentColor;border-radius:0;display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:13px 24px;text-decoration:none;font-weight:900;letter-spacing:.02em;transition:transform .2s ease,background .2s ease,border-color .2s ease}.ai2-button:hover{transform:translateY(-2px)}.ai2-button--primary{background:var(--beige);border-color:var(--beige);color:var(--black)}.ai2-button--ghost{background:transparent;color:var(--off);border-color:rgba(247,244,232,.7)}.ai2-hero__visual{margin:0;min-height:360px;border:1px solid rgba(184,178,144,.38);box-shadow:var(--shadow);background:rgba(0,0,0,.28);padding:18px}.ai2-hero__visual img{display:block;width:100%;height:auto}.ai2-section{padding:78px 0;position:relative}.ai2-section--light{background:linear-gradient(180deg,var(--off),var(--paper));}.ai2-section--band{background:linear-gradient(90deg,rgba(169,184,163,.36),rgba(247,244,232,.92));border-top:1px solid rgba(109,89,64,.14);border-bottom:1px solid rgba(109,89,64,.14)}.ai2-section--dark{background:linear-gradient(135deg,#11130f,#313027);color:var(--off);border-top:1px solid rgba(184,178,144,.25);border-bottom:1px solid rgba(184,178,144,.25)}.ai2-section-heading{text-align:center;max-width:760px;margin:0 auto 38px}.ai2-section-heading:after,.ai2-eyebrow:after{content:"";display:block;width:46px;height:2px;background:var(--olive);margin:14px auto 0}.ai2-eyebrow:after{margin:10px 0 0;width:34px}.ai2-section p,.ai2-card p,.ai2-feature-list p,.ai2-process p,.ai2-team-grid p,.ai2-footer p,.ai2-legal-content p{text-align:justify;hyphens:auto}.ai2-card-grid{display:grid;gap:18px}.ai2-card-grid--four{grid-template-columns:repeat(4,1fr)}.ai2-card{border:1px solid rgba(109,89,64,.22);background:rgba(255,255,255,.52);padding:30px 26px;box-shadow:0 12px 40px rgba(109,89,64,.08);transition:transform .28s ease,border-color .28s ease,background .28s ease}.ai2-card:hover{transform:translateY(-5px);border-color:var(--olive);background:#fff}.ai2-card h3{font-size:1.1rem;margin:8px 0 10px;color:var(--charcoal)}.ai2-card p{margin:0;color:var(--muted);font-size:.96rem}.ai2-icon{width:54px;height:54px;border:1px solid var(--olive);display:grid;place-items:center;margin-bottom:20px;background:rgba(169,184,163,.16)}.ai2-icon svg,.ai2-facts svg{width:30px;height:30px;fill:none;stroke:var(--olive);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.ai2-ki-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:58px;align-items:start}.ai2-ki-grid h2{margin-bottom:20px}.ai2-ki-grid p{color:var(--muted)}.ai2-feature-list{display:grid;gap:16px}.ai2-feature-list div{display:grid;grid-template-columns:28px 1fr;gap:14px;align-items:start;border-bottom:1px solid rgba(109,89,64,.18);padding-bottom:16px}.ai2-feature-list span{width:16px;height:16px;border:1px solid var(--brown);background:var(--olive);margin-top:8px}.ai2-feature-list strong{display:block;margin-bottom:2px;color:var(--charcoal)}.ai2-feature-list p{grid-column:2;margin:0}.ai2-tech-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.ai2-tech-grid span{border:1px solid rgba(109,89,64,.25);background:rgba(255,255,255,.54);padding:14px 10px;text-align:center;font-weight:900;color:var(--charcoal);letter-spacing:.01em}.ai2-process{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid rgba(184,178,144,.38)}.ai2-process article{padding:30px 25px;border-right:1px solid rgba(184,178,144,.32);min-height:210px}.ai2-process article:last-child{border-right:0}.ai2-process span{display:block;width:36px;height:36px;border:1px solid var(--beige);color:var(--beige);text-align:center;line-height:34px;font-weight:900;margin-bottom:20px}.ai2-process h3{margin:0 0 8px;font-size:1.08rem}.ai2-process p{margin:0;color:#e8e2d2}.ai2-team-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:54px;align-items:start}.ai2-team-grid p{color:var(--muted)}.ai2-facts{display:grid;grid-template-columns:repeat(2,1fr);border:1px solid rgba(109,89,64,.24)}.ai2-facts div{padding:26px;border-right:1px solid rgba(109,89,64,.20);border-bottom:1px solid rgba(109,89,64,.20);background:rgba(255,255,255,.42)}.ai2-facts div:nth-child(2n){border-right:0}.ai2-facts div:nth-last-child(-n+2){border-bottom:0}.ai2-facts i{display:block;font-style:normal;margin-bottom:12px}.ai2-facts strong{display:block;font-size:1.1rem;margin-bottom:4px;color:var(--charcoal)}.ai2-facts span{display:block;color:var(--muted);font-size:.94rem}.ai2-section--contact{background:linear-gradient(180deg,var(--paper),#e9e3d0)}.ai2-contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:44px;align-items:start}.ai2-contact-details{border-left:2px solid var(--olive);padding-left:22px;margin-top:22px}.ai2-contact-details a{color:var(--charcoal);font-weight:900;text-decoration:none}.ai2-contact-card{border:1px solid rgba(109,89,64,.24);background:rgba(255,255,255,.48);padding:28px;box-shadow:0 18px 46px rgba(109,89,64,.12)}.ai2-contact-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.ai2-contact-form label{display:grid;gap:6px;font-weight:800;color:var(--muted);font-size:.88rem}.ai2-wide{grid-column:1/-1}.ai2-contact-form input,.ai2-contact-form textarea{width:100%;border:1px solid rgba(109,89,64,.28);border-radius:0;background:rgba(255,255,255,.72);color:var(--text);padding:13px 14px;font:inherit;outline:none}.ai2-contact-form input:focus,.ai2-contact-form textarea:focus{border-color:var(--olive);box-shadow:inset 0 -2px 0 var(--olive)}.ai2-consent{grid-template-columns:20px 1fr!important;align-items:start;font-size:.82rem}.ai2-consent input{width:auto;margin-top:5px}.ai2-form-status{padding:14px 16px;border:1px solid var(--olive);margin-bottom:18px;font-weight:800;background:rgba(169,184,163,.2)}.ai2-form-status--error{border-color:#6d5940;background:rgba(109,89,64,.12)}.ai2-footer{background:#000;color:var(--paper);padding:50px 0 0}.ai2-footer__grid{display:grid;grid-template-columns:1.25fr .85fr .55fr;gap:40px}.ai2-footer h2{font-size:1rem;margin:0 0 12px;color:var(--beige)}.ai2-footer p{color:#d9d3c0;margin:0}.ai2-footer a{color:var(--paper);text-decoration:none}.ai2-brand--footer .ai2-brand__main{color:var(--paper)}.ai2-brand--footer .ai2-brand__sub{color:var(--beige)}.ai2-footer__bottom{margin-top:42px;border-top:1px solid rgba(247,244,232,.15);padding:16px 0;color:#b9b1a0;font-size:.88rem}.ai2-page-hero{padding:90px 0 50px;background:#11130f;color:var(--paper)}.ai2-legal-content{border:1px solid rgba(109,89,64,.22);background:rgba(255,255,255,.56);padding:36px;max-width:900px}.ai2-legal-content h2{margin:24px 0 8px}.ai2-legal-content a{color:var(--brown);font-weight:900}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.reveal.is-visible{opacity:1;transform:translateY(0)}@media(max-width:1000px){.ai2-hero__grid,.ai2-ki-grid,.ai2-team-grid,.ai2-contact-grid{grid-template-columns:1fr}.ai2-card-grid--four{grid-template-columns:repeat(2,1fr)}.ai2-tech-grid{grid-template-columns:repeat(3,1fr)}.ai2-process{grid-template-columns:1fr 1fr}.ai2-process article:nth-child(2){border-right:0}.ai2-process article{border-bottom:1px solid rgba(184,178,144,.32)}.ai2-header__inner{height:68px}.ai2-nav{position:absolute;display:none;flex-direction:column;align-items:stretch;top:68px;left:24px;right:24px;background:var(--off);border:1px solid rgba(109,89,64,.24);padding:22px}.ai2-nav.is-open{display:flex}.ai2-menu-button{display:block}.ai2-nav a{padding:8px 0}}@media(max-width:640px){:root{--container:min(100vw - 28px,1180px)}.ai2-card-grid--four,.ai2-tech-grid,.ai2-process,.ai2-facts,.ai2-contact-form{grid-template-columns:1fr}.ai2-facts div,.ai2-process article{border-right:0}.ai2-facts div:nth-last-child(-n+2){border-bottom:1px solid rgba(109,89,64,.20)}.ai2-facts div:last-child{border-bottom:0}.ai2-hero__grid{padding:48px 0;min-height:auto}.ai2-section{padding:56px 0}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}#ai2-bg-canvas{display:none}.reveal{opacity:1;transform:none}}

/* === AI2 Iceberg refinement: keeps Olive Tech colors/content, only enhances hero + motion === */
:root{--ai2-scroll:0;--ai2-section-flow:linear-gradient(90deg,transparent,rgba(184,178,144,.36),rgba(123,148,116,.55),rgba(109,89,64,.18),transparent)}
.ai2-hero{isolation:isolate}.ai2-hero:after{content:"";position:absolute;inset:auto 0 0 0;height:1px;background:linear-gradient(90deg,transparent,rgba(184,178,144,.48),rgba(123,148,116,.38),transparent);opacity:.8;z-index:0}.ai2-hero__content{position:relative}.ai2-hero__content:before{content:"";position:absolute;left:-32px;top:2px;width:1px;height:84%;background:linear-gradient(180deg,rgba(184,178,144,.0),rgba(184,178,144,.25),rgba(123,148,116,.18),rgba(184,178,144,.0));opacity:.65}.ai2-hero .ai2-eyebrow{color:var(--sage);letter-spacing:.2em}.ai2-hero .ai2-eyebrow:after{background:linear-gradient(90deg,var(--beige),rgba(123,148,116,.4));width:42px}.ai2-iceberg-visual{padding:0!important;min-height:430px;border-color:rgba(184,178,144,.35);background:radial-gradient(circle at 48% 28%,rgba(184,178,144,.10),transparent 34%),linear-gradient(135deg,rgba(7,8,6,.88),rgba(17,19,15,.76));overflow:hidden;position:relative;box-shadow:0 24px 70px rgba(0,0,0,.30),inset 0 0 0 1px rgba(247,244,232,.025)}.ai2-iceberg-frame{position:absolute;inset:0;overflow:hidden;background:linear-gradient(rgba(184,178,144,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(184,178,144,.035) 1px,transparent 1px);background-size:56px 56px}.ai2-iceberg-frame:before{content:"";position:absolute;left:4%;right:4%;top:47%;height:1px;background:linear-gradient(90deg,transparent,rgba(247,244,232,.52),rgba(184,178,144,.50),transparent);z-index:3;filter:drop-shadow(0 0 8px rgba(184,178,144,.2));animation:ai2-waterline-flow 7s ease-in-out infinite}.ai2-iceberg-frame:after{content:"";position:absolute;inset:46% 0 0;background:linear-gradient(180deg,rgba(169,184,163,.05),rgba(7,8,6,.10) 34%,rgba(0,0,0,.42));z-index:2;pointer-events:none}.ai2-iceberg-img{position:absolute;left:50%;top:50%;width:118%;height:114%;max-width:none!important;object-fit:cover;object-position:center center;transform:translate(-50%,-50%);filter:sepia(.22) saturate(.62) hue-rotate(20deg) brightness(.92) contrast(1.12);mix-blend-mode:screen;opacity:.78;animation:ai2-iceberg-rise .72s cubic-bezier(.16,.84,.22,1) 0s both,ai2-iceberg-float 8.5s ease-in-out 1.1s infinite;will-change:transform}.ai2-rise-trace{position:absolute;left:12%;right:12%;height:34%;border:1px solid rgba(184,178,144,.12);border-top:0;bottom:7%;opacity:0;transform:translateY(26px) scale(.96);z-index:1;animation:ai2-trace-rise 1.75s ease-out .12s both}.ai2-rise-trace--two{left:20%;right:20%;bottom:13%;animation-delay:.28s;opacity:0}.ai2-waterline{position:absolute;left:7%;right:7%;top:47%;height:18px;z-index:4;pointer-events:none}.ai2-waterline:before,.ai2-waterline:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(184,178,144,.20),transparent 18%,rgba(169,184,163,.16),transparent 52%,rgba(184,178,144,.18),transparent);transform:translateX(calc(var(--ai2-scroll)*-20px));animation:ai2-water-sheen 5.5s ease-in-out infinite}.ai2-waterline:after{opacity:.45;transform:translateX(calc(var(--ai2-scroll)*16px)) scaleY(.55);animation-duration:7.2s}.ai2-section{overflow:hidden}.ai2-section:before{content:"";position:absolute;top:0;left:50%;width:min(720px,80vw);height:1px;background:var(--ai2-section-flow);transform:translateX(-50%) scaleX(.28);transform-origin:center;opacity:.34;transition:transform 1.05s ease,opacity 1.05s ease}.ai2-section.is-section-visible:before{transform:translateX(-50%) scaleX(1);opacity:.78}.ai2-section--light:after,.ai2-section--band:after{content:"";position:absolute;right:-12vw;bottom:-120px;width:34vw;height:34vw;border:1px solid rgba(123,148,116,.10);transform:rotate(18deg) translateY(calc(var(--ai2-scroll)*-4px));pointer-events:none}.ai2-section--dark:after{content:"";position:absolute;left:-10vw;bottom:-80px;width:42vw;height:1px;background:linear-gradient(90deg,transparent,rgba(184,178,144,.18),transparent);transform:rotate(-8deg);pointer-events:none}.ai2-card,.ai2-tech-grid span,.ai2-facts div,.ai2-process article,.ai2-contact-card{position:relative}.ai2-card:after,.ai2-tech-grid span:after,.ai2-facts div:after,.ai2-process article:after{content:"";position:absolute;left:0;top:0;width:0;height:1px;background:var(--beige);opacity:.0;transition:width .75s ease var(--reveal-delay,0s),opacity .75s ease var(--reveal-delay,0s)}.is-visible .ai2-card:after,.ai2-card.is-visible:after,.is-visible .ai2-tech-grid span:after,.ai2-tech-grid.is-visible span:after,.ai2-facts.is-visible div:after,.ai2-process.is-visible article:after{width:100%;opacity:.42}.reveal{transition:opacity .78s ease var(--reveal-delay,0s),transform .78s cubic-bezier(.19,1,.22,1) var(--reveal-delay,0s),filter .78s ease var(--reveal-delay,0s);filter:blur(3px)}.reveal.is-visible{filter:blur(0)}.ai2-card-grid .reveal:nth-child(2){--reveal-delay:.08s}.ai2-card-grid .reveal:nth-child(3){--reveal-delay:.16s}.ai2-card-grid .reveal:nth-child(4){--reveal-delay:.24s}.ai2-process.is-visible article:nth-child(2),.ai2-tech-grid.is-visible span:nth-child(2n),.ai2-facts.is-visible div:nth-child(2){--reveal-delay:.07s}.ai2-process.is-visible article:nth-child(3),.ai2-tech-grid.is-visible span:nth-child(3n),.ai2-facts.is-visible div:nth-child(3){--reveal-delay:.14s}.ai2-process.is-visible article:nth-child(4),.ai2-tech-grid.is-visible span:nth-child(4n),.ai2-facts.is-visible div:nth-child(4){--reveal-delay:.21s}.ai2-feature-list div{transform:translateX(0);transition:transform .35s ease,border-color .35s ease}.ai2-feature-list div:hover{transform:translateX(6px);border-color:rgba(123,148,116,.45)}.ai2-process article{transition:background .35s ease,border-color .35s ease,transform .35s ease}.ai2-process article:hover{background:rgba(184,178,144,.055);transform:translateY(-3px)}
@keyframes ai2-iceberg-rise{0%{transform:translate(-50%,calc(-50% + 26px)) scale(.992);filter:sepia(.22) saturate(.60) hue-rotate(20deg) brightness(.86) contrast(1.10)}100%{transform:translate(-50%,-50%) scale(1);filter:sepia(.22) saturate(.62) hue-rotate(20deg) brightness(.92) contrast(1.12)}}@keyframes ai2-iceberg-float{0%,100%{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,calc(-50% - 8px)) scale(1.006)}}@keyframes ai2-waterline-flow{0%,100%{opacity:.58;transform:scaleX(.96)}50%{opacity:.92;transform:scaleX(1.02)}}@keyframes ai2-water-sheen{0%,100%{opacity:.2}50%{opacity:.62}}@keyframes ai2-trace-rise{0%{opacity:0;transform:translateY(54px) scale(.94)}42%{opacity:.22}100%{opacity:0;transform:translateY(0) scale(1)}}
@media(max-width:1000px){.ai2-iceberg-visual{min-height:360px}.ai2-iceberg-img{width:112%;height:112%}.ai2-hero__content:before{display:none}}@media(max-width:640px){.ai2-iceberg-visual{min-height:280px}.ai2-iceberg-img{width:130%;height:118%}.ai2-section:before{width:92vw}}
@media(prefers-reduced-motion:reduce){.ai2-iceberg-img,.ai2-iceberg-frame:before,.ai2-waterline:before,.ai2-waterline:after,.ai2-rise-trace{animation:none!important}.ai2-iceberg-img{opacity:.78;transform:translate(-50%,-50%)}}

/* Language visibility hardening: prevent nested span rules from showing both languages. */
body:not(.ai2-lang-en) .lang-en { display: none !important; }
body.ai2-lang-en .lang-de { display: none !important; }
body.ai2-lang-en .lang-en { display: initial !important; }
body.ai2-lang-en p.lang-en,
body.ai2-lang-en h1.lang-en,
body.ai2-lang-en h2.lang-en,
body.ai2-lang-en h3.lang-en,
body.ai2-lang-en .ai2-facts span.lang-en { display: block !important; }
body:not(.ai2-lang-en) .ai2-facts span.lang-de { display: block !important; }


/* Back-to-top and cookie notice */
.ai2-back-to-top{position:fixed;right:22px;bottom:22px;z-index:120;border:1px solid rgba(184,178,144,.62);background:rgba(17,19,15,.92);color:var(--beige);width:46px;height:46px;border-radius:0;font-size:1.35rem;font-weight:900;line-height:1;cursor:pointer;opacity:0;transform:translateY(10px);pointer-events:none;transition:opacity .25s ease,transform .25s ease,background .25s ease,border-color .25s ease}.ai2-back-to-top.is-visible{opacity:1;transform:translateY(0);pointer-events:auto}.ai2-back-to-top:hover{background:var(--beige);color:var(--black);border-color:var(--beige)}.ai2-cookie-banner{position:fixed;left:24px;right:24px;bottom:24px;z-index:140;background:rgba(17,19,15,.96);color:var(--paper);border:1px solid rgba(184,178,144,.58);box-shadow:0 28px 80px rgba(0,0,0,.34);backdrop-filter:blur(14px)}.ai2-cookie-banner[hidden]{display:none!important}.ai2-cookie-banner__inner{width:min(1120px,100%);margin:0 auto;padding:20px 22px;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center}.ai2-cookie-banner strong{display:block;margin:0 0 6px;color:var(--beige);letter-spacing:.03em;text-transform:uppercase}.ai2-cookie-banner p{margin:0;color:#e7e2cf;font-size:.94rem;line-height:1.55;text-align:justify}.ai2-cookie-banner__actions{display:flex;gap:14px;align-items:center;white-space:nowrap}.ai2-cookie-link{color:var(--paper);font-weight:900;text-decoration:none;border-bottom:1px solid rgba(184,178,144,.45)}.ai2-cookie-link:hover{color:var(--beige)}.ai2-cookie-accept{min-height:44px;padding:11px 18px;cursor:pointer}.ai2-consent a{color:var(--brown);font-weight:900;text-decoration:none;border-bottom:1px solid rgba(109,89,64,.35)}
@media(max-width:780px){.ai2-cookie-banner{left:14px;right:14px;bottom:14px}.ai2-cookie-banner__inner{grid-template-columns:1fr;gap:14px}.ai2-cookie-banner__actions{justify-content:space-between}.ai2-back-to-top{right:16px;bottom:16px;width:42px;height:42px}.ai2-cookie-banner:not([hidden])~.ai2-back-to-top{bottom:150px}}


/* === AI2 website service + local SEO landing pages === */
.ai2-card-grid--five{grid-template-columns:repeat(5,1fr)}
.ai2-card-link{display:inline-block;margin-top:16px;color:var(--brown);font-weight:900;text-decoration:none;border-bottom:1px solid rgba(109,89,64,.32)}
.ai2-card-link:hover{color:var(--charcoal);border-bottom-color:var(--olive)}
.ai2-content-page{display:grid;gap:28px;max-width:1100px;margin:0 auto}.ai2-content-page h2{font-size:clamp(1.55rem,2.35vw,2.55rem);line-height:1.12;margin:8px 0 4px;color:var(--charcoal)}.ai2-content-page h3{font-size:1.08rem;margin:0 0 8px;color:var(--charcoal)}.ai2-content-page p{text-align:justify;color:var(--muted);margin:0}.ai2-page-kicker{margin:0!important;color:var(--olive)!important;text-transform:uppercase;letter-spacing:.17em;font-weight:900;font-size:.82rem}.ai2-page-grid{display:grid;gap:18px}.ai2-page-grid--three{grid-template-columns:repeat(3,1fr)}.ai2-page-grid section,.ai2-package-grid section,.ai2-page-steps section{border:1px solid rgba(109,89,64,.22);background:rgba(255,255,255,.46);padding:24px;position:relative}.ai2-page-grid section:before,.ai2-package-grid section:before,.ai2-page-steps section:before{content:"";position:absolute;left:0;top:0;width:100%;height:1px;background:linear-gradient(90deg,var(--olive),transparent);opacity:.55}.ai2-package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.ai2-package-grid strong{font-size:1.35rem;color:var(--brown)}.ai2-page-list{margin:0;padding:0;display:grid;gap:12px;list-style:none}.ai2-page-list li{position:relative;padding-left:26px;text-align:justify;color:var(--muted)}.ai2-page-list li:before{content:"";position:absolute;left:0;top:.72em;width:10px;height:10px;background:var(--olive);border:1px solid var(--brown)}.ai2-page-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid rgba(109,89,64,.22)}.ai2-page-steps section{border:0;border-right:1px solid rgba(109,89,64,.18);background:rgba(255,255,255,.35)}.ai2-page-steps section:last-child{border-right:0}.ai2-page-steps strong{display:block;color:var(--olive);font-size:1.7rem;line-height:1;margin-bottom:14px}.ai2-page-cta{border:1px solid rgba(109,89,64,.24);background:linear-gradient(135deg,rgba(169,184,163,.18),rgba(247,244,232,.72));padding:28px}.ai2-page-cta .ai2-contact-form{margin-top:20px}.ai2-page-cta .ai2-button--primary,.ai2-content-page .ai2-button--primary{color:var(--black)!important}.ai2-page-shell .ai2-button--primary{margin-top:10px}
@media(max-width:1180px){.ai2-card-grid--five{grid-template-columns:repeat(3,1fr)}}@media(max-width:1000px){.ai2-card-grid--five{grid-template-columns:repeat(2,1fr)}.ai2-page-grid--three,.ai2-package-grid{grid-template-columns:1fr}.ai2-page-steps{grid-template-columns:1fr 1fr}.ai2-page-steps section:nth-child(2){border-right:0}.ai2-page-steps section{border-bottom:1px solid rgba(109,89,64,.18)}}@media(max-width:640px){.ai2-card-grid--five,.ai2-page-steps{grid-template-columns:1fr}.ai2-page-steps section{border-right:0}.ai2-page-steps section:last-child{border-bottom:0}}

/* WhatsApp contact option */
.ai2-whatsapp-inline{display:inline-block;margin-top:6px;color:var(--olive)!important;font-weight:900;text-decoration:none;border-bottom:1px solid rgba(123,148,116,.45)}
.ai2-whatsapp-inline:hover{color:var(--brown)!important;border-color:var(--brown)}
.ai2-whatsapp-float{position:fixed;right:22px;bottom:84px;z-index:121;display:flex;align-items:center;gap:9px;min-height:46px;padding:0 14px;border:1px solid rgba(184,178,144,.62);background:rgba(17,19,15,.94);color:var(--beige);text-decoration:none;font-weight:900;letter-spacing:.02em;box-shadow:0 18px 48px rgba(0,0,0,.24);transition:transform .25s ease,background .25s ease,border-color .25s ease,color .25s ease}
.ai2-whatsapp-float:hover{transform:translateY(-2px);background:var(--beige);color:var(--black);border-color:var(--beige)}
.ai2-whatsapp-float__icon{display:grid;place-items:center;width:28px;height:28px;border:1px solid currentColor;line-height:1}.ai2-whatsapp-float__icon svg{width:19px;height:19px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ai2-whatsapp-float__text{font-size:.9rem}
@media(max-width:780px){.ai2-whatsapp-float{right:16px;bottom:72px;min-height:42px;padding:0 11px}.ai2-whatsapp-float__text{display:none}.ai2-cookie-banner:not([hidden])~.ai2-whatsapp-float{bottom:202px}}


/* Performance v1.3.0: Above-the-fold content must not wait for IntersectionObserver. */
.ai2-hero .reveal{opacity:1!important;transform:none!important;transition:none!important}

/* Do not spend initial rendering time on below-the-fold sections. */
.ai2-section:not(.ai2-hero){content-visibility:auto;contain-intrinsic-size:700px}

.ai2-iceberg-frame picture{position:absolute;inset:0;display:block}
.ai2-iceberg-frame picture .ai2-iceberg-img{position:absolute}


/* AI2 Performance v1.4.0 */
#ai2-bg-canvas{display:none}
@media (min-width: 900px){#ai2-bg-canvas{display:block}}

/* Mobile: LCP wird durch Text-Hero bestimmt, nicht durch Bild/Animation. */
@media (max-width: 780px){
  .ai2-hero__grid{
    grid-template-columns:1fr!important;
    min-height:auto!important;
    padding:44px 0 46px!important;
    gap:0!important;
  }
  .ai2-hero__visual{
    display:none!important;
  }
  .ai2-hero h1{
    font-size:clamp(2.55rem,12vw,4.4rem)!important;
    margin-bottom:18px!important;
  }
  .ai2-lead{
    font-size:1rem!important;
    margin-bottom:20px!important;
  }
  .ai2-hero__actions{
    margin-top:20px!important;
  }
}

/* Reduziere teure Animationen auf schwächeren Geräten. */
@media (max-width: 780px), (prefers-reduced-motion: reduce){
  .ai2-rise-trace,
  .ai2-waterline,
  .ai2-iceberg-frame:before,
  .ai2-iceberg-frame:after{
    animation:none!important;
  }
}


/* AI2 Performance v1.4.1: mobile Eisberg-Grafik wieder sichtbar, aber sehr leichtgewichtig. */
@media (max-width: 780px){
  .ai2-hero__grid{
    grid-template-columns:1fr!important;
    min-height:auto!important;
    padding:42px 0 44px!important;
    gap:26px!important;
  }
  .ai2-hero__visual{
    display:block!important;
    min-height:235px!important;
    height:235px!important;
    width:100%!important;
    margin-top:4px!important;
    box-shadow:0 14px 38px rgba(0,0,0,.24)!important;
  }
  .ai2-iceberg-frame{
    background-size:42px 42px!important;
  }
  .ai2-iceberg-img{
    width:116%!important;
    height:112%!important;
    opacity:.74!important;
    animation:ai2-iceberg-rise .55s cubic-bezier(.16,.84,.22,1) 0s both!important;
  }
  .ai2-waterline:before,
  .ai2-waterline:after,
  .ai2-iceberg-frame:before{
    animation:none!important;
  }
}

@media (max-width: 520px){
  .ai2-hero__visual{
    min-height:205px!important;
    height:205px!important;
  }
}

/* UX refinement v1.4.2: icons better integrated, mobile consent fix */
.ai2-card{display:grid;grid-template-columns:54px 1fr;column-gap:16px;row-gap:10px;align-items:start}
.ai2-card .ai2-icon{grid-column:1;grid-row:1;margin:0}
.ai2-card h3{grid-column:2;grid-row:1;align-self:center;margin:0;color:var(--charcoal)}
.ai2-card p{grid-column:1 / -1}
.ai2-card p:last-child{margin-top:2px}
.ai2-card-link{display:inline-block;margin-top:2px}

.ai2-process article{display:grid;grid-template-columns:36px 1fr;column-gap:18px;row-gap:10px;align-content:start}
.ai2-process article>span{grid-column:1;grid-row:1;margin:0}
.ai2-process article>h3{grid-column:2;grid-row:1;align-self:center;margin:0}
.ai2-process article>p{grid-column:1 / -1;margin:0}

.ai2-facts div{display:grid;grid-template-columns:54px 1fr;column-gap:16px;row-gap:6px;align-items:start}
.ai2-facts i{grid-column:1;grid-row:1;margin:0;width:54px;height:54px;border:1px solid var(--olive);display:grid;place-items:center;background:rgba(169,184,163,.12)}
.ai2-facts strong{grid-column:2;grid-row:1;align-self:center;margin:0}
.ai2-facts span{grid-column:1 / -1}

.ai2-consent{display:grid!important;grid-template-columns:20px 1fr!important;gap:12px!important;align-items:start!important;line-height:1.55}
.ai2-consent input[type="checkbox"]{width:18px!important;height:18px!important;margin:2px 0 0 0!important;accent-color:var(--olive);justify-self:start;align-self:start}
.ai2-contact-form .ai2-button{margin-top:6px}

@media (max-width: 900px){
  .ai2-card-grid--five{grid-template-columns:1fr 1fr}
}

@media (max-width: 640px){
  .ai2-card{grid-template-columns:46px 1fr;column-gap:14px;padding:24px 20px}
  .ai2-icon,.ai2-facts i{width:46px;height:46px}
  .ai2-icon svg,.ai2-facts svg{width:24px;height:24px}
  .ai2-card h3{font-size:1.45rem;line-height:1.15}
  .ai2-card p{font-size:1rem;line-height:1.55}

  .ai2-process article{grid-template-columns:34px 1fr;column-gap:14px;padding:24px 20px;min-height:auto}
  .ai2-process article>span{width:34px;height:34px;line-height:32px}
  .ai2-process h3{font-size:1.28rem;line-height:1.15}
  .ai2-process p{font-size:1rem;line-height:1.55}

  .ai2-facts div{grid-template-columns:46px 1fr;column-gap:14px;padding:22px 18px}
  .ai2-facts strong{font-size:1.3rem;line-height:1.15}
  .ai2-facts span{font-size:1rem;line-height:1.5}

  .ai2-contact-form{gap:12px}
  .ai2-consent{font-size:.9rem!important;grid-template-columns:18px 1fr!important;gap:10px!important}
}

/* v1.4.3 Leistungen refinement */
#leistungen .ai2-card-grid--five{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
#leistungen .ai2-card{
  display:grid;
  grid-template-columns:44px 1fr;
  column-gap:16px;
  row-gap:14px;
  align-items:start;
  padding:28px 26px;
  min-height:100%;
}
#leistungen .ai2-card .ai2-icon{
  grid-column:1;
  grid-row:1;
  width:44px;
  height:44px;
  margin:0;
}
#leistungen .ai2-card .ai2-icon svg{width:22px;height:22px}
#leistungen .ai2-card h3{
  grid-column:2;
  grid-row:1;
  margin:0;
  align-self:center;
  font-size:1.02rem;
  line-height:1.35;
}
#leistungen .ai2-card p{grid-column:1 / -1}
#leistungen .ai2-card p + p{margin-top:4px}
#leistungen .ai2-card-link{display:inline-block;margin-top:6px}

@media (max-width: 1180px){
  #leistungen .ai2-card-grid--five{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 680px){
  #leistungen .ai2-card-grid--five{grid-template-columns:1fr!important}
  #leistungen .ai2-card{padding:24px 20px}
  #leistungen .ai2-card h3{font-size:1.08rem}
}

/* v1.4.4 minor title alignment fix for Leistungen */
#leistungen .ai2-card h3{
  min-height:44px;
  display:flex;
  align-items:center;
}

/* v1.4.5 precise vertical alignment for Leistungen */
#leistungen .ai2-card{
  grid-template-columns:44px 1fr;
  grid-template-rows:44px auto;
  align-content:start;
}
#leistungen .ai2-card .ai2-icon{
  grid-column:1;
  grid-row:1;
  align-self:center;
  justify-self:start;
}
#leistungen .ai2-card h3{
  grid-column:2;
  grid-row:1;
  min-height:44px;
  display:flex;
  align-items:center;
  line-height:1.2;
  margin:0;
}
#leistungen .ai2-card p{
  grid-column:1 / -1;
  grid-row:2;
}

/* v1.4.6 fix CTA placement in Leistungen */
#leistungen .ai2-card p:last-of-type{
  grid-row:3;
  margin-top:8px;
}
#leistungen .ai2-card .ai2-card-link{
  display:inline-block;
  margin-top:0;
  vertical-align:top;
}

/* v1.4.7 mobile footer/contact cleanup */
.ai2-footer__grid p,
.ai2-footer__grid a{word-break:normal;overflow-wrap:break-word}
.ai2-footer__grid a[href^="tel:"]{white-space:nowrap}

@media(max-width:640px){
  .ai2-footer__grid{grid-template-columns:1fr;gap:26px}
  .ai2-footer__grid>div{min-width:0}
  .ai2-footer__grid p,
  .ai2-footer__grid a,
  .ai2-footer h2{
    text-align:left!important;
    hyphens:none!important;
    word-break:normal!important;
  }
  .ai2-footer__grid p{font-size:1.02rem;line-height:1.58}
  .ai2-footer__grid a{display:inline-block;max-width:100%}
  .ai2-footer__bottom{margin-top:28px}

  .ai2-consent{
    font-size:.86rem!important;
    line-height:1.45!important;
    align-items:start!important;
  }
}
