*{box-sizing:border-box;margin:0;padding:0}:root{--teal:#306060;--teal-light:#70a0a0;--bear:#c4d6b0;--bear-light:#e0ecd6}body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;line-height:1.6;color:#1a1a1a;background:#fafafa}section[id], a[id="top"]{scroll-margin-top:90px}.container{max-width:1100px;margin:0 auto;padding:0 24px}section{padding:50px 0;border-bottom:1px solid #e5e5e5}h1{font-size:2.8rem;line-height:1.15;margin-bottom:20px;font-weight:700}h2{font-size:2rem;margin-bottom:16px;font-weight:700}h3{font-size:1.3rem;margin-bottom:12px;font-weight:600}h4{font-size:1.05rem;margin-bottom:8px;font-weight:600}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}p{margin-bottom:14px}.lead{font-size:1.25rem;color:#555;max-width:750px}#architektur .lead{max-width:none}.muted{color:#777}.mono{font-family:ui-monospace,"SF Mono",Menlo,monospace;font-size:0.9rem}header{padding:20px 0;background:#fff;border-bottom:1px solid #e5e5e5;position:sticky;top:0;z-index:100;transition:padding 0.2s ease,box-shadow 0.2s ease}header.scrolled{padding:10px 0;box-shadow:0 2px 12px rgba(0,0,0,0.06)}header .container{display:flex;justify-content:space-between;align-items:center;gap:24px}.logo a{display:inline-block}.logo img{height:72px;width:auto;display:block;transition:height 0.2s ease}header.scrolled .logo img{height:56px}.header-tagline{flex:1;text-align:center;font-size:0.95rem;color:var(--teal);font-weight:500;letter-spacing:.015em;white-space:nowrap}nav a{margin-left:24px;color:#555;text-decoration:none;font-size:1.05rem;transition:color 0.15s ease}nav a:hover{color:var(--teal);text-shadow:0.4px 0 0 currentColor,-0.4px 0 0 currentColor}nav a[href$="#kontakt"]{color:var(--teal);font-weight:600;border:1.5px solid var(--teal);padding:6px 16px;border-radius:4px;transition:color 0.15s ease,background 0.15s ease,border-color 0.15s ease}nav a[href$="#kontakt"]:hover{color:#fff;background:var(--teal);text-shadow:none}.nav-toggle{display:none;width:40px;height:40px;border:none;background:transparent;cursor:pointer;padding:0;align-items:center;justify-content:center;color:var(--teal)}.nav-toggle svg{display:block}.nav-toggle .icon-close{display:none}nav.open~.nav-toggle .icon-burger, .nav-toggle[aria-expanded="true"] .icon-burger{display:none}.nav-toggle[aria-expanded="true"] .icon-close{display:block}.hero{padding:100px 0 30px;background:var(--teal)}.hero+section{padding-top:40px}.hero h1{max-width:900px;color:#fff}.hero .lead{margin-top:24px}.hero-subline{margin-top:20px;font-size:1.4rem;color:#fff;font-weight:400;letter-spacing:0.005em}.teal-bold{color:var(--teal);font-weight:600}.dim{color:#777;font-weight:400}.hero .teal-bold{color:#fff}.hero .dim{color:rgba(255,255,255,0.8)}.quote-block{font-style:italic;border-left:3px solid var(--teal);padding-left:18px}.eisbaer-block{display:flex;align-items:center;gap:28px;margin:12px 0 8px;padding:4px 0}.eisbaer-block-img{flex-shrink:0}.eisbaer-img{max-width:180px;width:100%;height:auto;opacity:0.9;display:block}.eisbaer-block-text{margin:0;flex:1;font-style:italic;border-left:3px solid var(--teal);padding-left:18px}.disqualifier{background:transparent;padding-top:24px}.team{border-bottom:none;padding-bottom:32px}.disqualifier ul{list-style:none;margin-top:20px}.disqualifier li{padding:10px 0 10px 32px;position:relative;font-size:1.05rem}.disqualifier li::before{content:"✗";position:absolute;left:0;color:var(--teal);font-weight:700}.gebote-more{overflow:hidden;max-height:50px;position:relative;transition:max-height 0.5s ease-in-out}.gebote-more::after{content:"";position:absolute;bottom:0;left:0;right:0;height:50px;background:linear-gradient(to bottom,rgba(250,250,250,0) 0,rgba(250,250,250,0.95) 80%,rgba(250,250,250,1) 100%);pointer-events:none;transition:opacity 0.3s}.gebote-more.open{max-height:2000px}.gebote-more.open::after{opacity:0}.gebote-toggle{display:flex;align-items:center;justify-content:center;gap:10px;margin:20px auto 0;padding:10px 22px;background:transparent;border:1.5px solid var(--teal);border-radius:999px;color:var(--teal);font-family:inherit;font-size:0.92rem;font-weight:600;cursor:pointer;transition:background 0.2s,color 0.2s}.gebote-toggle:hover{background:var(--teal);color:#fff}.gebote-toggle-arrow{transition:transform 0.3s ease}.gebote-toggle[aria-expanded="true"] .gebote-toggle-arrow{transform:rotate(180deg)}.wir-more{overflow:hidden;max-height:95px;position:relative;transition:max-height 0.5s ease-in-out}.wir-more::after{content:"";position:absolute;bottom:0;left:0;right:0;height:80px;background:linear-gradient(to bottom,rgba(255,255,255,0) 0,rgba(255,255,255,0.9) 70%,rgba(255,255,255,1) 100%);pointer-events:none;transition:opacity 0.3s}.wir-more.open{max-height:2000px}.wir-more.open::after{opacity:0}.wir-toggle{display:flex;align-items:center;justify-content:center;gap:10px;margin:20px auto 24px;padding:10px 22px;background:transparent;border:1.5px solid var(--teal);border-radius:999px;color:var(--teal);font-family:inherit;font-size:0.92rem;font-weight:600;cursor:pointer;transition:background 0.2s,color 0.2s}.wir-toggle:hover{background:var(--teal);color:#fff}.wir-toggle-arrow{transition:transform 0.3s ease}.wir-toggle[aria-expanded="true"] .wir-toggle-arrow{transform:rotate(180deg)}.setups{background:#fafafa}.setup-block{margin-top:50px}.setup-block h3{border-bottom:2px solid #1a1a1a;padding-bottom:8px;margin-bottom:24px}.setup-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}@media (hover:hover){}#architektur .setup-grid{grid-template-columns:repeat(2,1fr)}#architektur .setup-grid>.setup-card:first-child{grid-column:1 / -1}.arch-grid-pair{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:24px}.arch-more{overflow:hidden;max-height:0;opacity:0;transition:max-height 0.5s ease-in-out,opacity 0.4s ease-in-out}.arch-more.open{max-height:5000px;opacity:1}.arch-zones{margin:28px 16px 8px;padding-top:22px;border-top:1px dashed #d8d8d8}.arch-zone{display:grid;grid-template-columns:110px 1fr;gap:24px;padding:12px 16px;border-bottom:1px dashed #ececec}.arch-zone:last-child{border-bottom:none}.arch-zone-label{font-size:0.78rem;text-transform:uppercase;letter-spacing:0.15em;color:var(--teal);font-weight:700;padding-top:3px}.arch-zone-text{font-size:0.95rem;color:#555;line-height:1.6}@media (max-width:900px){.arch-zone{grid-template-columns:1fr;gap:4px}}.arch-zones-more{overflow:hidden;max-height:55px;position:relative;transition:max-height 0.5s ease-in-out}.arch-zones-more::after{content:"";position:absolute;bottom:0;left:0;right:0;height:55px;background:linear-gradient(to bottom,rgba(255,255,255,0) 0,rgba(255,255,255,0.95) 80%,rgba(255,255,255,1) 100%);pointer-events:none;transition:opacity 0.3s}.arch-zones-more.open{max-height:2000px}.arch-zones-more.open::after{opacity:0}.arch-zones-toggle{display:flex;align-items:center;justify-content:center;gap:10px;margin:20px auto 0;padding:10px 22px;background:transparent;border:1.5px solid var(--teal);border-radius:999px;color:var(--teal);font-family:inherit;font-size:0.92rem;font-weight:600;cursor:pointer;transition:background 0.2s,color 0.2s}.arch-zones-toggle:hover{background:var(--teal);color:#fff}.arch-zones-toggle-arrow{transition:transform 0.3s ease}.arch-zones-toggle[aria-expanded="true"] .arch-zones-toggle-arrow{transform:rotate(180deg)}.setup-card{background:#fff;border:1px solid #ddd;border-radius:6px;padding:24px}.setup-card h3{margin-bottom:14px}#architektur .setup-card{padding:0;overflow:hidden}#architektur .setup-card h3{font-size:1.15rem;font-weight:600;text-align:center;margin:0;padding:16px 24px;background:var(--teal);color:#fff;letter-spacing:0.02em}#architektur .setup-card>p{padding:16px 24px 0;margin-bottom:0}.flip-card{position:relative;transition:background-color 0.25s ease,border-color 0.25s ease}.flip-card .flip-default{display:none}.flip-card .flip-hover{position:static;opacity:1}@media (hover:hover){.flip-card{min-height:300px;overflow:hidden;cursor:default}#dienstleistungen .setup-card{min-height:300px}.flip-card .flip-default{display:flex;flex-direction:column;position:absolute;inset:0;align-items:center;justify-content:center;text-align:center;padding:28px;opacity:1;transition:opacity 0.2s ease}.flip-card .flip-default .card-icon{width:32px;height:32px;color:var(--teal);opacity:0.85;margin-bottom:14px;display:block}.flip-card .flip-default h3{font-size:1.7rem;font-weight:600;color:#1a1a1a;margin:0}.flip-card .flip-hover{position:absolute;inset:0;padding:24px;display:flex;flex-direction:column;opacity:0;pointer-events:none;transition:opacity 0.25s ease}.flip-card .flip-hover h3{font-size:1.1rem;color:#fff;margin-bottom:12px}.flip-card .flip-hover p{color:#fff}.flip-card:hover{background:var(--teal);border-color:var(--teal)}.flip-card:hover .flip-default{opacity:0}.flip-card:hover .flip-hover{opacity:1}.flip-card::before{content:"";position:absolute;top:0;right:0;border-style:solid;border-width:0 36px 36px 0;border-color:transparent var(--teal) transparent transparent;z-index:2;pointer-events:none;transition:opacity 0.25s ease}.flip-card::after{content:"";position:absolute;top:0;right:0;border-style:solid;border-width:0 32px 32px 0;border-color:transparent var(--teal) transparent transparent;z-index:3;pointer-events:none;transition:opacity 0.25s ease}.flip-card:hover::before, .flip-card:hover::after{opacity:0}}.preis-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.preis-card{padding:0;overflow:hidden}.preis-card h3{font-size:1.15rem;font-weight:600;text-align:center;margin:0;padding:16px 24px;background:var(--teal);color:#fff;letter-spacing:0.02em}.preis-section{padding:16px 24px;border-top:1px solid #e5e5e5;text-align:center}.preis-section:first-of-type{border-top:none}.preis-label{font-size:0.75rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--teal);font-weight:700;margin-bottom:6px}.preis-section p{font-size:0.95rem;margin-bottom:0}.preis-option{text-align:center;padding:4px 0}.preis-option-sub{font-size:0.8rem;color:#888;margin-top:2px}.preis-option-sub a{color:#2a8585;text-decoration:none;border-bottom:1px dotted #2a8585;transition:color 0.2s ease,border-bottom-color 0.2s ease}.preis-option-sub a:hover{color:#306060;border-bottom:1px solid #306060}.preis-konfig{font-size:0.7rem;color:#999;line-height:1.5;margin-top:14px;padding-top:10px;border-top:1px dashed #e0e8e8;text-align:left;font-style:italic}.preis-konfig strong{color:#666;font-weight:600}.preis-konfig em{color:#b0b0b0;font-style:italic}.preis-option-price, .preis-amount{font-weight:700;font-size:1.05rem;margin-top:8px;color:#1a1a1a}.preis-list{list-style:none;margin:0;padding:0;text-align:center}.preis-list li{padding:10px 0;border-bottom:1px dashed #eee}.preis-list li:last-child{border-bottom:none}.preis-list-title{font-weight:600;color:#1a1a1a;font-size:0.95rem}.preis-list-desc{font-size:0.85rem;color:#666;margin-top:2px}.preis-list-time{color:#888;font-size:0.85rem;margin-top:4px}.stack{background:#fff}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:32px}.team-card{text-align:center}.team-avatar-wrapper{width:140px;height:140px;border-radius:50%;position:relative;margin:0 auto;overflow:hidden;background:#f4f8f8}.team-avatar{width:100%;height:100%;object-fit:cover;display:block;transition:filter 0.3s ease;filter:grayscale(15%)}.team-name-overlay{position:absolute;inset:0;background:var(--teal);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.15rem;letter-spacing:0.02em;opacity:0;transition:opacity 0.3s ease}.team-avatar-wrapper:hover .team-name-overlay{opacity:1}.team-avatar-wrapper:hover .team-avatar{filter:grayscale(0%)}.kontakt{background:var(--teal);color:#fff;border-bottom:none}.kontakt h2{color:#fff}.kontakt-cta{margin:40px auto 0;text-align:center}.kontakt-line{font-family:'SF Mono',Menlo,Consolas,monospace;font-size:1.9rem;font-weight:500;letter-spacing:-0.01em;margin:22px 0;word-break:break-word}.kontakt-line a{color:#fff;text-decoration:none;display:inline-flex;align-items:center;gap:18px;transition:opacity 0.15s ease}.kontakt-line a:hover{opacity:0.85}.kontakt-icon{width:44px;height:44px;flex-shrink:0;color:#fff}.kontakt-value{color:#fff}.kontakt-hint{color:var(--bear-light);font-size:0.95rem;margin-top:18px;opacity:0.85}.kontakt p{color:var(--bear-light)}footer{background:#1a3838;color:#aaa;padding:24px 0;font-size:0.85rem}footer .container{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px}footer a{color:#ccc;text-decoration:none;margin-left:16px}@media (max-width:900px){.container{padding:0 16px}header{padding:12px 0}header.scrolled{padding:8px 0}.logo img{height:40px}header.scrolled .logo img{height:40px}.header-tagline{font-size:0.78rem;letter-spacing:.01em}.nav-toggle{display:flex}nav{display:none;position:absolute;top:100%;left:0;right:0;background:rgba(255,255,255,0.97);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);flex-direction:column;padding:8px 24px 20px;box-shadow:0 6px 16px rgba(0,0,0,0.08);border-top:1px solid #e5e5e5}nav.open{display:flex}nav a{margin-left:0;padding:14px 4px;font-size:1.05rem;border-bottom:1px solid #f0f0f0}nav a:last-child{border-bottom:none}nav a[href$="#kontakt"]{margin-top:12px;padding:12px 16px;text-align:center;border:1.5px solid var(--teal);border-radius:4px}h1{font-size:1.8rem;line-height:1.25}h2{font-size:1.5rem}h3{font-size:1.15rem}h4{font-size:1.05rem}.lead{font-size:1rem}section{padding:40px 0}.hero{padding:32px 0 40px}.hero-subline{font-size:1.1rem;margin-top:14px}.setup-grid, .preis-grid, .arch-grid-pair{grid-template-columns:1fr;gap:16px}.setup-card{padding:20px}.team-grid{grid-template-columns:repeat(3,1fr);gap:12px}.team-avatar-wrapper{width:90px;height:90px}.team-name-overlay{font-size:0.95rem}.disqualifier ul{padding-left:24px}.disqualifier li{font-size:0.95rem;line-height:1.5;margin-bottom:14px}.eisbaer-block{flex-direction:column;align-items:center;text-align:center;gap:12px}.eisbaer-img{max-width:160px}#scrollTop{right:16px;bottom:16px;width:40px;height:40px}.kontakt h2{font-size:1.6rem}.kontakt-line{font-size:1.25rem;margin:10px 0}.kontakt-cta{margin-top:28px}footer .container{flex-direction:column;gap:8px;text-align:center}}@media (max-width:480px){.container{padding:0 12px}h1{font-size:1.5rem}h2{font-size:1.3rem}.lead{font-size:0.95rem}.logo img{height:36px}section{padding:32px 0}.setup-card{padding:16px}}#scrollTop{position:fixed;right:24px;bottom:24px;width:44px;height:44px;border-radius:50%;border:none;background:var(--teal);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity 0.25s ease,transform 0.25s ease,visibility 0s linear 0.25s,background 0.2s ease;box-shadow:0 4px 12px rgba(48,96,96,0.25);z-index:999}#scrollTop.show{opacity:1;visibility:visible;transform:translateY(0);transition:opacity 0.25s ease,transform 0.25s ease,visibility 0s linear 0s,background 0.2s ease}#scrollTop:hover{background:#1f4040}#scrollTop.light{background:#fff;color:var(--teal);box-shadow:0 4px 12px rgba(0,0,0,0.15)}#scrollTop.light:hover{background:#f0f0f0}html{scroll-behavior:smooth}.diagram-clipped{position:relative;overflow:hidden;max-width:820px;width:100%;margin:28px auto 0}.diagram-clipped.bsp1{aspect-ratio:920 / 430}.diagram-clipped.bsp2{aspect-ratio:920 / 660}.diagram-clipped svg{width:100%;height:auto;display:block}.diagram-clipped::after{content:'';position:absolute;left:0;right:0;bottom:0;height:60px;background:linear-gradient(to bottom,rgba(255,255,255,0),rgba(255,255,255,1));pointer-events:none;transition:opacity 0.3s ease}.setup-card.expanded .diagram-clipped{aspect-ratio:auto;overflow:visible}.setup-card.expanded .diagram-clipped::after{opacity:0}.setup-card.expanded .arch-zones-more{max-height:5000px;opacity:1}.setup-card.expanded .arch-zones-more::after{display:none}body.page-fill{min-height:100vh;display:flex;flex-direction:column}body.page-fill>.error-section{flex:1 0 auto;display:flex;align-items:center}body.page-fill>.page-main{flex:1 0 auto;padding-top:40px;padding-bottom:60px;border-bottom:none}.page-main h1{color:var(--teal)}.page-main h2{color:var(--teal);padding-top:32px;border-top:1px solid #e0e0e0}.page-main h2[id]{scroll-margin-top:90px}.page-main h2:first-of-type{border-top:none;padding-top:0}.page-main h3{color:var(--teal)}.page-main a{color:var(--teal);text-decoration:none;border-bottom:1px dotted var(--teal);transition:border-bottom-color .15s ease}.page-main a:hover{border-bottom:1px solid var(--teal)}.page-main address{font-style:normal;margin-bottom:14px}.page-main p{line-height:1.7}.page-main ul{margin:14px 0 22px 28px;padding-left:0}.page-main li{margin-bottom:8px;line-height:1.55}.page-main ul+p, .page-main ol+p{margin-top:14px}.page-main .mono{color:var(--teal)}.page-main .toc{background:#f4f8f8;border-left:3px solid var(--teal);padding:14px 20px;margin:20px 0 32px;border-radius:0 4px 4px 0;font-size:0.95rem}.page-main .toc strong{color:var(--teal);text-transform:uppercase;letter-spacing:.1em;font-size:0.78rem;display:block;margin-bottom:8px}.page-main .toc ul{list-style:none;margin:0;padding-left:0;column-count:2;column-gap:32px}.page-main .toc li{margin-bottom:4px;line-height:1.45;break-inside:avoid}.page-main .toc a{border-bottom:none}.page-main .toc a:hover{border-bottom:1px solid var(--teal)}@media (max-width:700px){.page-main .toc{display:none}}.error-section{text-align:center}.error-section .container{width:100%}.error-code-wrap{display:flex;align-items:baseline;justify-content:center;gap:14px;flex-wrap:wrap;margin-bottom:16px}.error-code{font-size:clamp(5rem,14vw,8rem);line-height:1;font-weight:700;color:var(--teal);letter-spacing:-.04em}.error-label{font-size:clamp(1rem,2vw,1.4rem);color:#777;text-transform:uppercase;letter-spacing:.18em;font-weight:500}.error-lead{margin:0 auto 32px}.error-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}.btn{display:inline-block;padding:12px 26px;border-radius:4px;text-decoration:none;font-weight:600;font-size:1.05rem;transition:background .15s ease,color .15s ease,border-color .15s ease;border:1.5px solid transparent}.btn-primary{background:var(--teal);color:#fff}.btn-primary:hover{background:#244848}.btn-secondary{background:transparent;border-color:var(--teal);color:var(--teal)}.btn-secondary:hover{background:var(--teal);color:#fff}
