/* Brand, appearance switch and the company page. Dark is the original default. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.brand strong{display:inline;line-height:1}
.brand strong .brand-x{color:var(--text);display:inline-block;vertical-align:0;letter-spacing:normal;width:.68em;height:.54em;margin-left:.01em;position:relative}
.brand-x svg{width:100%;height:100%;display:block}
.brand strong .sr-only{color:inherit}
.header-inner{gap:24px}
.header nav{margin-left:auto;gap:24px}
.header-tools{display:flex;align-items:center;gap:10px;flex-shrink:0}
.theme-toggle{display:none;align-items:center;justify-content:center;width:62px;min-height:44px;padding:0;border:0;background:transparent;border-radius:4px}
.js .theme-toggle{display:flex}
.theme-track{position:relative;display:block;width:56px;height:28px;border:1px solid #5b565e;border-radius:20px;background:#262329}
.theme-track svg{position:absolute;top:6px;width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.theme-moon{left:6px;color:#1a171d;z-index:2}
.theme-sun{right:6px;color:#c4bec9}
.theme-thumb{position:absolute;top:2px;left:2px;width:22px;height:22px;background:#e3dfe5;border-radius:50%}
.theme-toggle:hover .theme-track{border-color:#a49aa8}
.theme-toggle[aria-checked=true] .theme-thumb{left:auto;right:2px;background:#fff}
.theme-toggle[aria-checked=true] .theme-moon{color:#68616d;z-index:auto}
.theme-toggle[aria-checked=true] .theme-sun{color:#1b181d;z-index:2}
.dragon-stage{aspect-ratio:2.8;max-height:none;background-image:url('dragon-desktop.png');background-size:cover;background-position:center}
.about-principles{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-top:55px;padding-bottom:55px;gap:9%;align-items:center}
.principles-title h2{font-size:clamp(52px,5.4vw,79px);line-height:1.06}
.principles-copy{max-width:505px}.principles-copy p:last-child{margin-bottom:0}
.location-tag{display:flex;align-items:center;gap:10px;margin-top:32px;font-size:11px;letter-spacing:.04em;color:var(--muted)}
.location-tag>span{width:6px;height:6px;border-radius:50%;background:var(--red);flex-shrink:0}
.values-grid .step-number{font-size:10px}.values-grid .info-card h3{font-size:30px;line-height:1.13}.values-grid .info-card p{margin-bottom:0}

/* Warm neutral surfaces retain the red brand accents and dark photographic cards. */
:root[data-theme=light]{--bg:#f5f3ef;--panel:#fffdfa;--line:#d6d0ca;--text:#211e22;--muted:#615b62;--red:#bf1737;color-scheme:light}
[data-theme=light] .header{background:rgba(245,243,239,.97);border-bottom-color:var(--line)}
[data-theme=light] .header nav a{color:#625b64}
[data-theme=light] .header nav a:hover,[data-theme=light] .header nav a[aria-current]{color:var(--text)}
[data-theme=light] .menu{border-color:#aaa2ab}
[data-theme=light] .theme-track{background:#ded8df;border-color:#a89eaa}
[data-theme=light] .theme-toggle:hover .theme-track{border-color:#625269}
[data-theme=light] .muted{color:#746c75}
[data-theme=light] .eyebrow{color:#675e67}
[data-theme=light] .lead{color:#403943}
[data-theme=light] .small-note,[data-theme=light] .tag,[data-theme=light] .footer-bottom,[data-theme=light] .project-meta .eyebrow,[data-theme=light] .project-meta>span,[data-theme=light] .concept-note,[data-theme=light] .breadcrumb{color:#665d67}
[data-theme=light] .discipline-bar .wrap{color:#625862}
[data-theme=light] .hero{background:#09090a;border-bottom-color:#29242c}
[data-theme=light] .hero-caption{color:#c2bcc7}
[data-theme=light] .service:hover{border-color:#8b7e8d}
[data-theme=light] .motion-service{color:#f5f3f0;border-color:#363039}
[data-theme=light] .motion-service:hover{color:#f5f3f0}
[data-theme=light] .motion-service .eyebrow{color:#d8cfdc}
[data-theme=light] .motion-service p{color:#ddd6e1}
[data-theme=light] .soft{background:#eae6e1;border-color:var(--line)}
[data-theme=light] .info-card{background:var(--panel)}
[data-theme=light] .feature-list article,[data-theme=light] .faq details,[data-theme=light] .steps article,[data-theme=light] .footer-bottom{border-color:var(--line)}
[data-theme=light] .text-link{border-color:#a69aa8}
[data-theme=light] .project-image,[data-theme=light] .detail-image{border-color:#bdb2bd}
[data-theme=light] .showcase{background:#ece7e2;border-color:var(--line)}
[data-theme=light] .showcase>div{color:#605660}
[data-theme=light] .filters button{border-color:#a399a6}
[data-theme=light] .filters button[aria-pressed=true]{background:#29232c;color:#fff;border-color:#29232c}
[data-theme=light] .filters button:hover{border-color:var(--red)}
[data-theme=light] .brand-statement{background:radial-gradient(ellipse at 90% 100%,#efd1d9 0%,#f3e5e8 50%,#eee8e5 100%);border-top-color:#dcbec7}
[data-theme=light] .brand-statement h2 span{color:#86616d}
[data-theme=light] .legal-notice{background:#fff0d7;border-color:#ad7938;color:#62400f}
[data-theme=light] .legal-notice p{color:#6c4c21}
[data-theme=light] .legal mark{background:#f1dfba;color:#674719}
[data-theme=light] .contact-form{background:var(--panel);border-color:var(--line)}
[data-theme=light] .contact-form label{color:#514654}
[data-theme=light] .contact-form input,[data-theme=light] .contact-form select,[data-theme=light] .contact-form textarea{background:#f6f3f0;border-color:#aca0ae;color:#211e22}
[data-theme=light] .contact-form input::placeholder,[data-theme=light] .contact-form textarea::placeholder{color:#746977}
[data-theme=light] .contact-privacy,[data-theme=light] .contact-next ol{color:#665b69}
[data-theme=light] .send-status{color:#513c55;border-color:#bbafc0}

@media(max-width:1100px){.header-inner{gap:15px}.header nav{gap:16px}.header nav a{font-size:12px}.header .brand{gap:9px}.header .brand-sub{font-size:14px}.values-grid .info-card h3{font-size:27px}}
@media(max-width:900px){.header-tools{margin-left:auto}.header nav{order:3;margin-left:0}.js .header nav.open{border-color:var(--line)}.js .header nav a[aria-current]{color:var(--red)}.about-principles{gap:7%}.principles-copy .lead{font-size:21px}}
@media(max-width:640px){.header-inner{gap:12px}.header-tools{gap:6px}.header .brand{gap:8px}.header .brand-sub{font-size:12px}.header .brand strong{font-size:31px}.theme-toggle{width:54px}.theme-track{width:50px}.menu{padding:7px 10px;gap:8px}.dragon-stage{aspect-ratio:1.15;background-size:cover;background-position:76% center}.about-principles{grid-template-columns:1fr;padding-top:35px;padding-bottom:35px;gap:35px}.principles-title h2{font-size:58px}.principles-copy .lead{font-size:22px}.values-grid .info-card h3{font-size:30px}.location-tag{font-size:10px}}

/* The image edge cuts into the page, following the original asymmetric shape. */
.hero,[data-theme=light] .hero{background:var(--bg);border:0}
.dragon-stage{background:none;overflow:hidden;isolation:isolate;clip-path:polygon(0 0,100% 0,100% 84%,65% 100%,0 84%)}
.dragon-stage:after{display:none}
.dragon-visual{position:absolute;inset:-8% -1.5%;background:url('dragon-desktop.png') center/cover no-repeat;transform-origin:center;will-change:transform,translate}
.hero-caption{min-height:90px;align-items:center;padding-top:16px;padding-bottom:16px;color:var(--muted)}
[data-theme=light] .hero-caption{color:var(--muted)}
.hero-scroll{display:flex;align-items:center;gap:16px;min-height:48px;font-size:10px;letter-spacing:.08em;text-transform:none;color:var(--text)}
.hero-scroll svg{width:22px;height:34px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.hero-scroll>span:before{display:none!important}
#leistungen{scroll-margin-top:110px}
.project-image img{transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.project-image:hover img{transform:scale(1.045)}
.project-image:focus-visible img{transform:scale(1.025)}
@media(max-width:640px){.dragon-visual{background-position:76% center;inset:-9% -2%}.dragon-stage{clip-path:polygon(0 0,100% 0,100% 89%,65% 100%,0 89%)}.hero-caption{min-height:75px}.hero-scroll{gap:9px;font-size:9px}.hero-scroll svg{width:18px;height:30px}#leistungen{scroll-margin-top:90px}}
@media(prefers-reduced-motion:reduce){.dragon-visual{will-change:auto}.project-image:hover img,.project-image:focus-visible img{transform:none}}

.feature-tags{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:20px 0 0}
.feature-tags li{font-size:11px;line-height:1.4;padding:8px 10px;border:1px solid var(--line);color:var(--muted);background:var(--panel)}
.detail-copy .feature-tags{margin-bottom:28px}
.ui-concept .project-image img{object-fit:contain}
.examples-intro{max-width:680px;margin-bottom:34px}
.below-gallery{margin-top:32px;margin-bottom:0}
.gallery-explainer{display:grid;grid-template-columns:1fr 1fr;gap:10%;border-top:1px solid var(--line);margin-top:65px;padding-top:60px}
.gallery-explainer h2{font-size:clamp(36px,4vw,56px)}
.gallery-explainer .button{margin-top:10px}
@media(max-width:640px){.feature-tags{gap:6px}.feature-tags li{font-size:10px;padding:7px 9px}.gallery-explainer{grid-template-columns:1fr;gap:28px;margin-top:45px;padding-top:40px}.examples-intro{font-size:15px}}
